mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-21 18:57:03 +02:00
exclude 0 item groups
This commit is contained in:
1 parent
632989087c
commit
231e4aad0e
4 files changed
+30
-9
No files matched your search
@@ -227,7 +227,8 @@
|
||||
"burst_size": "Burst size",
|
||||
"intra_burst": "Intra-burst",
|
||||
"penetration": "Penetration",
|
||||
"penetration_loss": "Penetration loss",
|
||||
"penetration_loss_by_distance": "Penetration loss by distance",
|
||||
"penetration_loss_after_ricochet": "Penetration loss after ricochet",
|
||||
"shell_velocity": "Shell velocity",
|
||||
"shell_range": "Shell range",
|
||||
"shell_capacity": "Shell capacity",
|
||||
|
||||
@@ -21,9 +21,16 @@ export function TankopediaCharacteristics({
|
||||
return (
|
||||
<div className={styles["characteristics-wrapper"]}>
|
||||
<div className={styles.characteristics}>
|
||||
{characteristicsOrder.map((group) => (
|
||||
<Group group={group} characteristics={characteristics} />
|
||||
))}
|
||||
{characteristicsOrder.map((group) => {
|
||||
const items = group.order.filter(
|
||||
(item) => "name" in item && characteristics[item.name] !== null,
|
||||
).length;
|
||||
const shouldRender = items > 0;
|
||||
|
||||
if (!shouldRender) return null;
|
||||
|
||||
return <Group group={group} characteristics={characteristics} />;
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { TankClass } from "@protos/blitz_static_tank_component";
|
||||
import {
|
||||
ModuleUpgrade_AttributeName,
|
||||
ShellUpgradeSingleChange_AttributeName,
|
||||
StageParameters,
|
||||
TankAttributeChange_AttributeName,
|
||||
@@ -8,7 +9,6 @@ import type { Tank } from "@protos/tank";
|
||||
import { radToDeg } from "three/src/math/MathUtils.js";
|
||||
import { applyPitchYawLimits } from "./applyPitchYawLimits";
|
||||
import { TerrainHardness, type TankState } from "./tankState";
|
||||
import { attribute } from "three/src/nodes/core/AttributeNode.js";
|
||||
|
||||
export type CharacteristicOutput = number | number[] | string | null;
|
||||
|
||||
@@ -458,7 +458,19 @@ export const characteristics = {
|
||||
return -Infinity;
|
||||
},
|
||||
|
||||
penetration_loss() {
|
||||
return -Infinity;
|
||||
penetration_loss_after_ricochet({ shell }) {
|
||||
const loss = shell(
|
||||
ShellUpgradeSingleChange_AttributeName.ATTRIBUTE_NAME_PIERCING_POWER_LOSS_AFTER_HIT,
|
||||
);
|
||||
|
||||
return loss;
|
||||
},
|
||||
|
||||
penetration_loss_by_distance({ attributeSafe }) {
|
||||
const loss = attributeSafe(
|
||||
TankAttributeChange_AttributeName.ATTRIBUTE_NAME_SHELLS_PIERCING_POWER_LOSS_REDUCTION,
|
||||
);
|
||||
|
||||
return loss ?? 0;
|
||||
},
|
||||
} satisfies Record<string, Characteristic>;
|
||||
@@ -143,13 +143,14 @@ export const characteristicsOrder: CharacteristicsGroup[] = [
|
||||
render: CharacteristicsGroupRender.Statistical,
|
||||
order: [
|
||||
{ name: "penetration", units: "mm" },
|
||||
{ name: "penetration_loss" },
|
||||
{ name: "penetration_loss_by_distance" },
|
||||
{ name: "penetration_loss_after_ricochet" },
|
||||
{ name: "shell_velocity", units: "m_s" },
|
||||
{ name: "shell_range", units: "m" },
|
||||
{ name: "shell_capacity" },
|
||||
{ name: "caliber", units: "mm" },
|
||||
{ name: "normalization", units: "deg" },
|
||||
{ name: "ricochet", units: "deg" },
|
||||
{ name: "normalization", units: "deg" },
|
||||
|
||||
{ toy: "ricochet" },
|
||||
],
|
||||
|
||||
Reference in new issue
Block a user