mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 03:59:50 +02:00
feat: reactive armor
This commit is contained in:
1 parent
511151e101
commit
69040dc453
3 files changed
+16
-7
No files matched your search
@@ -75,15 +75,20 @@ export default function Page() {
|
|||||||
const crewSkills = useCompareTemporary((state) => state.crewSkills);
|
const crewSkills = useCompareTemporary((state) => state.crewSkills);
|
||||||
const stats = useMemo(
|
const stats = useMemo(
|
||||||
() =>
|
() =>
|
||||||
members.map((item) =>
|
members.map((thisMember) =>
|
||||||
tankCharacteristics(
|
tankCharacteristics(
|
||||||
{
|
{
|
||||||
...item,
|
...thisMember,
|
||||||
crewSkills,
|
crewSkills,
|
||||||
stockEngine: item.tank.engines[0],
|
stockEngine: thisMember.tank.engines[0],
|
||||||
stockGun: item.tank.turrets[0].guns[0],
|
stockGun: thisMember.tank.turrets[0].guns[0],
|
||||||
stockTrack: item.tank.tracks[0],
|
stockTrack: thisMember.tank.tracks[0],
|
||||||
stockTurret: item.tank.turrets[0],
|
stockTurret: thisMember.tank.turrets[0],
|
||||||
|
applyReactive: members.some(
|
||||||
|
(member) =>
|
||||||
|
member.key !== thisMember.key &&
|
||||||
|
member.consumables.includes(33),
|
||||||
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
equipmentDefinitions: awaitedEquipmentDefinitions,
|
equipmentDefinitions: awaitedEquipmentDefinitions,
|
||||||
|
|||||||
@@ -86,6 +86,7 @@ export function Characteristics() {
|
|||||||
stockGun,
|
stockGun,
|
||||||
stockTrack,
|
stockTrack,
|
||||||
stockTurret,
|
stockTurret,
|
||||||
|
applyReactive: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
equipmentDefinitions: awaitedEquipmentDefinitions,
|
equipmentDefinitions: awaitedEquipmentDefinitions,
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ export function tankCharacteristics(
|
|||||||
stockTrack,
|
stockTrack,
|
||||||
stockTurret,
|
stockTurret,
|
||||||
stockGun,
|
stockGun,
|
||||||
|
applyReactive,
|
||||||
}: {
|
}: {
|
||||||
tank: TankDefinition;
|
tank: TankDefinition;
|
||||||
turret: TurretDefinition;
|
turret: TurretDefinition;
|
||||||
@@ -55,6 +56,7 @@ export function tankCharacteristics(
|
|||||||
provisions: number[];
|
provisions: number[];
|
||||||
crewSkills: Record<string, number>;
|
crewSkills: Record<string, number>;
|
||||||
camouflage: boolean;
|
camouflage: boolean;
|
||||||
|
applyReactive: boolean;
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
modelDefinitions,
|
modelDefinitions,
|
||||||
@@ -132,7 +134,8 @@ export function tankCharacteristics(
|
|||||||
const crewMemberMastery = commanderMastery * 1.1;
|
const crewMemberMastery = commanderMastery * 1.1;
|
||||||
|
|
||||||
const intraClipCoefficient = coefficient([hasShellReloadBoost, -0.3]);
|
const intraClipCoefficient = coefficient([hasShellReloadBoost, -0.3]);
|
||||||
const damageCoefficient = coefficient([hasTungsten, 0.15]);
|
const damageCoefficient =
|
||||||
|
coefficient([hasTungsten, 0.15]) * coefficient([applyReactive, -0.2]);
|
||||||
const reloadCoefficient =
|
const reloadCoefficient =
|
||||||
(coefficient([hasRammer, -0.07]) *
|
(coefficient([hasRammer, -0.07]) *
|
||||||
coefficient([true, degressiveStat(crewMemberMastery)])) /
|
coefficient([true, degressiveStat(crewMemberMastery)])) /
|
||||||
|
|||||||
Reference in new issue
Block a user