refactor(hero): 将is_atking状态从HeroViewComp移到HeroAttrsComp

将攻击状态is_atking从视图组件HeroViewComp移动到属性组件HeroAttrsComp,以保持状态管理的集中性
This commit is contained in:
2025-10-30 16:11:07 +08:00
parent 56f45a7bb4
commit bdcc606e02
3 changed files with 5 additions and 5 deletions

View File

@@ -227,7 +227,7 @@ export class SkillAutocastSystem extends ecs.ComblockSystem implements ecs.ISyst
if (heroModel.is_dead || heroModel.isStun() || heroModel.isFrost()) return;
// 检查是否正在攻击(只有攻击时才释放技能)
if (!heroView.is_atking) return;
if (!heroModel.is_atking) return;
// 获取所有可施放的技能
const readySkills = skillsData.getReadySkills(heroModel.mp);

View File

@@ -41,13 +41,13 @@ export class HeroAttrsComp extends ecs.Comp {
// ==================== 标记状态 ====================
is_dead: boolean = false;
is_count_dead: boolean = false;
is_atking: boolean = false; // 是否正在攻击
is_stop: boolean = false; // 是否正在停止
is_boss: boolean = false;
is_big_boss: boolean = false;
is_master: boolean = false;
is_friend: boolean = false;
is_kalami: boolean = false;
is_atking: boolean = false;
is_stop: boolean = false;
// ==================== 计数统计 ====================
atk_count: number = 0; // 攻击次数
atked_count: number = 0; // 被攻击次数
@@ -368,6 +368,8 @@ export class HeroAttrsComp extends ecs.Comp {
this.BUFFS_TEMP = {};
this.is_dead = false;
this.is_count_dead = false;
this.is_atking = false;
this.is_stop = false;
this.is_boss = false;
this.is_big_boss = false;
this.is_master = false;

View File

@@ -30,8 +30,6 @@ export class HeroViewComp extends CCComp {
status:String = "idle"
scale: number = 1; // 显示方向
box_group:number = BoxSet.HERO; // 碰撞组
is_atking:boolean = false; // 是否正在攻击
// ==================== UI 节点引用 ====================
private top_node: Node = null!;