refactor(hero): 将is_atking状态从HeroViewComp移到HeroAttrsComp
将攻击状态is_atking从视图组件HeroViewComp移动到属性组件HeroAttrsComp,以保持状态管理的集中性
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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!;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user