feat: dynamic model defs

This commit is contained in:
TrèsAbhi committed 2024-07-30 13:24:55 -05:00
1 parent 3889c0f75d
commit 8ba56069c4
18 files changed
+127 -57

No files matched your search

+1 -1
View File
@@ -13,7 +13,7 @@ export interface BoundingBox {
min: Vector3Tuple;
max: Vector3Tuple;
}
interface ModelDefinition {
export interface ModelDefinition {
armor: ModelArmor;
turretOrigin: Vector3Tuple;
turretRotation?: InitialTurretRotation;
+6
View File
@@ -0,0 +1,6 @@
const pattern = /\d+$/;
export function resolveArmorIndex(name: string) {
const match = name.match(pattern)?.[0];
return match ? parseInt(match) : undefined;
}
+4 -5
View File
@@ -5,7 +5,7 @@ import { resolvePenetrationCoefficient } from '../blitz/resolvePenetrationCoeffi
import { coefficient } from './coefficient';
import { degressiveStat } from './degressiveStat';
import { EquipmentDefinitions } from './equipmentDefinitions';
import { ModelDefinitions } from './modelDefinitions';
import { ModelDefinition, ModelDefinitions } from './modelDefinitions';
import { normalizeBoundingBox } from './normalizeBoundingBox';
import { progressiveStat } from './progressiveStat';
import { ProvisionDefinitions } from './provisionDefinitions';
@@ -66,17 +66,16 @@ export function tankCharacteristics(
applySpallLiner: boolean;
},
{
modelDefinitions,
tankModelDefinition,
equipmentDefinitions,
provisionDefinitions,
}: {
modelDefinitions: ModelDefinitions;
tankModelDefinition: ModelDefinition;
equipmentDefinitions: EquipmentDefinitions;
provisionDefinitions: ProvisionDefinitions;
},
) {
const presetRows = equipmentDefinitions.presets[tank.equipment];
const tankModelDefinition = modelDefinitions[tank.id];
const presetRows = equipmentDefinitions.presets[tank.equipment];
const turretModelDefinition = tankModelDefinition.turrets[turret.id];
const gunModelDefinition = turretModelDefinition.guns[gun.id];