lawless/client/assets/scripts/data/CharacterData.ts

35 行
1.2 KiB
TypeScript

/**
* CharacterData 角色数据模型(内存/本地缓存使用)。
*/
export class CharacterData {
public characterId: string = '';
public name: string = '';
public raceId: string = '';
public worldTier: number = 1;
public realmTier: number = 1;
public minorRealm: number = 1;
public level: number = 1;
public exp: number = 0;
public baseStats: Record<string, number> = {};
public battleStats: Record<string, number> = {};
public sanCurrent: number = 100;
public sanMax: number = 100;
public static fromServer(resp: any): CharacterData {
const data = new CharacterData();
data.characterId = resp.character_id ?? '';
data.name = resp.name ?? '';
data.raceId = resp.race_id ?? '';
data.worldTier = resp.world_tier ?? 1;
data.realmTier = resp.realm_tier ?? 1;
data.minorRealm = resp.minor_realm ?? 1;
data.level = resp.level ?? 1;
data.exp = resp.exp ?? 0;
data.baseStats = resp.base_stats ?? {};
data.battleStats = resp.battle_stats ?? {};
data.sanCurrent = resp.san_current ?? 100;
data.sanMax = resp.san_max ?? 100;
return data;
}
}