44 lines
1.2 KiB
TypeScript
44 lines
1.2 KiB
TypeScript
import GameModel from "../core/GameModel";
|
|
import SKDataUtil from "../gear_2.3.4/util/SKDataUtil";
|
|
|
|
export default class Horse {
|
|
position: number;
|
|
name: string;
|
|
level: number;
|
|
exp: number;
|
|
race: number;
|
|
resId: number;
|
|
|
|
constructor(position: number, name: string, level: number, exp: number, race: number) {
|
|
this.position = position;
|
|
this.name = name;
|
|
this.level = level;
|
|
this.exp = exp;
|
|
this.race = 0;
|
|
this.resId = 0;
|
|
this.setRace(race);
|
|
}
|
|
// 設置種族
|
|
setRace(race: number) {
|
|
race = SKDataUtil.toNumber(race);
|
|
race = SKDataUtil.clamp(race, 1, 5);
|
|
if (this.race == race) {
|
|
return;
|
|
}
|
|
this.race = race;
|
|
let conf = GameModel.game_conf.horse[(this.race - 1) * 4 + this.position];
|
|
if (conf) {
|
|
if (SKDataUtil.isEmptyString(this.name)) {
|
|
this.name = conf.name;
|
|
}
|
|
this.resId = conf.resid;
|
|
}
|
|
}
|
|
|
|
parse(data: any, race: number) {
|
|
this.name = data.name;
|
|
this.level = data.level;
|
|
this.exp = data.exp;
|
|
this.setRace(race);
|
|
}
|
|
} |