refactoring the dsa types, still a lot of information missing

This commit is contained in:
2025-06-21 18:42:54 +02:00
parent 2c58743dd2
commit 09f3e3d6ed
5 changed files with 59 additions and 1 deletions

0
src/types/abilities.ts Normal file
View File

View File

@@ -0,0 +1,8 @@
export interface BaseAbilities {
str: number;
dex: number;
con: number;
int: number;
wis: number;
cha: number;
}

11
src/types/baseEquiment.ts Normal file
View File

@@ -0,0 +1,11 @@
export interface DSABaseEquiment {
name: string;
weight: number;
}
export interface DSABaseWeapon {
equip: DSABaseEquiment;
technique: string;
tp: number;
range: number;
}

View File

@@ -1,4 +1,5 @@
import type {DSAAttributes, DSAHealth, DSAPersonalData, DSAResistances} from "./baseCharacter.ts";
import type {DSAArmor, DSAMeleeWeapon, DSARangedWeapon} from "./equiment.ts";
export interface DSASkill {
name: string;
@@ -12,7 +13,8 @@ export interface DSACombatValues {
dodge: number;
unarmedAttack: number;
unarmedParry: number;
weapons: Record<string, DSAWeapon>;
meleeWeapons: Record<string, DSAMeleeWeapon>;
rangedWeapons: Record<string, DSARangedWeapon>
armor: Record<string, DSAArmor>;
combatAbilities: Record<string, DSACombatAbilities>;
}

37
src/types/equiment.ts Normal file
View File

@@ -0,0 +1,37 @@
import type {DSABaseEquiment, DSABaseWeapon} from "./baseEquiment.ts";
import type {DSACalculatedValue} from "./baseDSA.ts";
export interface DSAAmmonution{
equip: DSABaseEquiment;
perUse: number;
count: number;
}
export interface DSAMeleeWeapon{
weapon: DSABaseWeapon;
atpamod: number;
damagebonus: number;
at: number;
pa: number;
}
export interface DSARangedWeapon{
weapon: DSABaseWeapon;
reloaddur: number;
ammo: DSAAmmonution;
rangedCombat: number;
}
export interface DSAArmor{
equip: DSABaseEquiment;
protection: number;
encumbrance: number;
penalties: number;
}
export interface DSAShield{
equip: DSABaseEquiment;
structure: DSACalculatedValue;
atpamod: number;
}