feat(英雄): 为主角添加天赋组件支持
只有主角角色会初始化天赋组件,用于管理角色的天赋系统
This commit is contained in:
@@ -12,6 +12,7 @@ import { time } from "console";
|
|||||||
import { getNeAttrs, getAttrs ,Attrs} from "../common/config/HeroAttrs";
|
import { getNeAttrs, getAttrs ,Attrs} from "../common/config/HeroAttrs";
|
||||||
import { HeroSkillsComp } from "./HeroSkills";
|
import { HeroSkillsComp } from "./HeroSkills";
|
||||||
import { HeroMoveComp } from "./HeroMove";
|
import { HeroMoveComp } from "./HeroMove";
|
||||||
|
import { TalComp } from "./TalComp";
|
||||||
/** 角色实体 */
|
/** 角色实体 */
|
||||||
@ecs.register(`Hero`)
|
@ecs.register(`Hero`)
|
||||||
|
|
||||||
@@ -20,6 +21,7 @@ export class Hero extends ecs.Entity {
|
|||||||
HeroSkills!: HeroSkillsComp;
|
HeroSkills!: HeroSkillsComp;
|
||||||
View!: HeroViewComp;
|
View!: HeroViewComp;
|
||||||
HeroMove!: HeroMoveComp;
|
HeroMove!: HeroMoveComp;
|
||||||
|
TalComp!: TalComp;
|
||||||
protected init() {
|
protected init() {
|
||||||
this.addComponents<ecs.Comp>(
|
this.addComponents<ecs.Comp>(
|
||||||
HeroMoveComp,
|
HeroMoveComp,
|
||||||
@@ -38,6 +40,7 @@ export class Hero extends ecs.Entity {
|
|||||||
this.remove(HeroViewComp);
|
this.remove(HeroViewComp);
|
||||||
this.remove(HeroAttrsComp);
|
this.remove(HeroAttrsComp);
|
||||||
this.remove(HeroSkillsComp);
|
this.remove(HeroSkillsComp);
|
||||||
|
this.remove(TalComp);
|
||||||
super.destroy();
|
super.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -80,6 +83,15 @@ export class Hero extends ecs.Entity {
|
|||||||
model.fac = FacSet.HERO;
|
model.fac = FacSet.HERO;
|
||||||
model.is_master = is_master;
|
model.is_master = is_master;
|
||||||
|
|
||||||
|
// 只有主角才挂载天赋组件
|
||||||
|
if (is_master) {
|
||||||
|
this.add(TalComp);
|
||||||
|
const talComp = this.get(TalComp);
|
||||||
|
if (talComp) {
|
||||||
|
talComp.init(uuid);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ✅ 初始化技能数据(迁移到 HeroSkillsComp)
|
// ✅ 初始化技能数据(迁移到 HeroSkillsComp)
|
||||||
skillsComp.initSkills(hero.skills, uuid, this);
|
skillsComp.initSkills(hero.skills, uuid, this);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user