diff --git a/assets/script/game/hero/Hero.ts b/assets/script/game/hero/Hero.ts index f141c112..2790a39a 100644 --- a/assets/script/game/hero/Hero.ts +++ b/assets/script/game/hero/Hero.ts @@ -93,6 +93,7 @@ export class Hero extends ecs.Entity { if (talComp) { talComp.init(uuid); } + model.initEvent(); } // ✅ 初始化技能数据(迁移到 HeroSkillsComp) diff --git a/assets/script/game/hero/HeroAttrsComp.ts b/assets/script/game/hero/HeroAttrsComp.ts index 13566fa5..fbd52f8d 100644 --- a/assets/script/game/hero/HeroAttrsComp.ts +++ b/assets/script/game/hero/HeroAttrsComp.ts @@ -82,7 +82,7 @@ export class HeroAttrsComp extends ecs.Comp { killed_count:number=0; // 注意:技能数据已迁移到 HeroSkillsComp,不再存储在这里 - onLoad() { + initEvent() { // 监听升级事件 mLogger.log(this.debugMode, 'HeroAttrs', `[HeroAttrs] 注册升级事件监听`); oops.message.on(GameEvent.CanUpdateLv, this.onLevelUp, this); @@ -91,7 +91,7 @@ export class HeroAttrsComp extends ecs.Comp { // oops.message.on(GameEvent.UseAttrCard, this.onUseAttrCard, this); } - onDestroy() { + removeEvent() { mLogger.log(this.debugMode, 'HeroAttrs', `[HeroAttrs] 移除升级事件监听`); oops.message.off(GameEvent.CanUpdateLv, this.onLevelUp, this); // oops.message.off(GameEvent.UseItemCard, this.onUseItemCard, this); @@ -681,6 +681,7 @@ export class HeroAttrsComp extends ecs.Comp { } reset() { + this.removeEvent(); // 重置为初始状态 this.hero_uuid = 1001; this.hero_name = "hero";