template/packages-user/data-state/src/enemy/legacy.ts

20 lines
689 B
TypeScript

import { IEnemyLegacyBridge } from '@user/data-base';
import { IEnemyAttr } from '@user/data-common';
export class EnemyLegacyBridge implements IEnemyLegacyBridge<IEnemyAttr> {
fromLegacyEnemy(
enemy: Enemy,
defaultAttr: Partial<IEnemyAttr>
): IEnemyAttr {
return {
hp: enemy.hp ?? defaultAttr.hp ?? 0,
atk: enemy.atk ?? defaultAttr.atk ?? 0,
def: enemy.def ?? defaultAttr.def ?? 0,
money: enemy.money ?? defaultAttr.money ?? 0,
exp: enemy.exp ?? defaultAttr.exp ?? 0,
point: enemy.point ?? defaultAttr.point ?? 0,
guard: defaultAttr.guard ?? new Set()
};
}
}