From 4811668832c93bfaee8d4590330942397463890c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com> Date: Fri, 16 Aug 2024 13:05:27 -0500 Subject: [PATCH] feat: numerical role ids --- scripts/buildAssets/definitions.ts | 16 +++++++++++++++- src/core/blitzkit/tankDefinitions/index.ts | 2 +- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/scripts/buildAssets/definitions.ts b/scripts/buildAssets/definitions.ts index c28b08627..a040c3839 100644 --- a/scripts/buildAssets/definitions.ts +++ b/scripts/buildAssets/definitions.ts @@ -410,6 +410,14 @@ export interface SquadBattleTypeStyles { }[]; } +type CombatRolesYaml = Record< + string, + { + id: number; + default_abilities: string[]; + } +>; + const blitzShellKindToBlitzkit: Record = { ARMOR_PIERCING: ShellType.AP, ARMOR_PIERCING_CR: ShellType.APCR, @@ -503,6 +511,9 @@ export async function definitions(production: boolean) { `${DATA}/UI/Screens/Lobby/Hangar/GameTypeSelector.yaml.dvpl`, ); const gameModeNativeNames: Record = {}; + const combatRoles = await readYAMLDVPL( + `${DATA}/XML/item_defs/vehicles/common/combat_roles.yaml.dvpl`, + ); for (const match of squadBattleTypeStyles.Prototypes[0].components.UIDataLocalBindingsComponent.data[1][2].matchAll( /"(\d+)" -> "(battleType\/([a-zA-Z]+))"/g, @@ -774,7 +785,9 @@ export async function definitions(production: boolean) { ); } - tankDefinitions[tankId].roles[id] = role; + console.log(combatRoles[role].id); + + tankDefinitions[tankId].roles[id] = combatRoles[role].id; }); } @@ -1367,6 +1380,7 @@ export async function definitions(production: boolean) { }; }); + return; await commitAssets( 'definitions', [ diff --git a/src/core/blitzkit/tankDefinitions/index.ts b/src/core/blitzkit/tankDefinitions/index.ts index ab70c86a8..a411f02b6 100644 --- a/src/core/blitzkit/tankDefinitions/index.ts +++ b/src/core/blitzkit/tankDefinitions/index.ts @@ -40,7 +40,7 @@ export type ModuleDefinition = | GunDefinition; export interface TankDefinition { id: number; - roles: Record; + roles: Record; description?: string; fixedCamouflage?: boolean; camouflages?: number[];