refactor(hero): 移除多余的日志输出并简化代码逻辑

本次提交清理了多个英雄相关组件中的调试日志,同时简化了条件判断写法:
1.  将多行if判断简化为单行return形式
2.  删除HeroViewComp中护盾特效相关的冗余日志和节点查找逻辑
3.  优化absorbShield和add_shield等方法的代码可读性
This commit is contained in:
panFD
2026-09-04 00:07:36 +08:00
parent 0a3efafbd5
commit 539c30b366
5 changed files with 9 additions and 40 deletions

View File

@@ -140,11 +140,9 @@ export class HeroViewComp extends CCComp {
if (this.model.dirty_shield) {
mLogger.log(this.debugMode, 'HeroViewComp', `update dirty_shield: shield=${this.model.shield}, calling shieldShow`);
this.topBar.shieldShow(this.model.shield);
// 护盾耗尽时隐藏护盾特效
if (this.model.shield <= 0) {
mLogger.log(this.debugMode, 'HeroViewComp', `update dirty_shield: shield <= 0, hiding shield fx`);
this.hideShieldFx();
}
this.model.dirty_shield = false;
@@ -319,39 +317,25 @@ export class HeroViewComp extends CCComp {
private shieldFxNode: Node | null = null;
add_shield(shield: number) {
mLogger.log(this.debugMode, 'HeroViewComp', `add_shield called, shield=${shield}, model.shield=${this.model?.shield}, model exists=${!!this.model}`);
// 护盾数据更新由 Model 层处理,这里只负责视图表现
if (this.model && this.model.shield > 0) {
this.topBar.shieldShow(this.model.shield);
this.showShieldFx();
mLogger.log(this.debugMode, 'HeroViewComp', `add_shield: showing shield fx, model.shield=${this.model.shield}`);
} else {
mLogger.log(this.debugMode, 'HeroViewComp', `add_shield: skipped, model.shield=${this.model?.shield}`);
}
}
/** 显示护盾常驻特效(使用 this.node 下已放置的 shielded 节点) */
/** 显示护盾常驻特效(动态加载并挂载到 this.node 下) */
private showShieldFx() {
if (!this.shieldFxNode) {
this.shieldFxNode = this.node.getChildByName("shielded");
mLogger.log(this.debugMode, 'HeroViewComp', `showShieldFx: found shielded node=${!!this.shieldFxNode}`);
}
if (this.shieldFxNode && !this.shieldFxNode.active) {
this.shieldFxNode.active = true;
mLogger.log(this.debugMode, 'HeroViewComp', `showShieldFx: activated shielded node`);
} else {
mLogger.log(this.debugMode, 'HeroViewComp', `showShieldFx: shielded node already active or not found, active=${this.shieldFxNode?.active}`);
}
if (this.shieldFxNode && this.shieldFxNode.isValid) return;
this.shieldFxNode = this.createFxNode("game/skill/buff/shielded", this.node, undefined);
}
/** 隐藏护盾常驻特效 */
private hideShieldFx() {
if (this.shieldFxNode && this.shieldFxNode.active) {
this.shieldFxNode.active = false;
mLogger.log(this.debugMode, 'HeroViewComp', `hideShieldFx: deactivated shielded node`);
} else {
mLogger.log(this.debugMode, 'HeroViewComp', `hideShieldFx: shielded node not active or not found, active=${this.shieldFxNode?.active}`);
if (this.shieldFxNode && this.shieldFxNode.isValid) {
this.shieldFxNode.destroy();
}
this.shieldFxNode = null;
}
health(hp: number = 0) {