refactor(hero): 优化护盾系统日志与显示逻辑
1. 新增多处护盾相关调试日志,方便追踪护盾数值变化 2. 重构HeroAttrsComp的add_shield方法,统一日志输出格式 3. 重写HeroTopBarComp的护盾显示逻辑,改为直接显示数值而非按上限比例 4. 为HeroViewComp新增护盾特效管理,实现护盾状态自动显隐 5. 清理hk1.prefab中冗余的预制体覆盖配置
This commit is contained in:
@@ -4,7 +4,7 @@ import { CCComp } from "../../../../extensions/oops-plugin-framework/assets/modu
|
||||
import { HeroAttrsComp } from "./HeroAttrsComp";
|
||||
import { BuffComp } from "./BuffComp";
|
||||
import { BuffList, BuffCategory, DEBUFF_ICON_MAP } from "../common/config/BuffSet";
|
||||
import { FacSet, FightSet } from "../common/config/GameSet";
|
||||
import { FacSet } from "../common/config/GameSet";
|
||||
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
@@ -135,13 +135,18 @@ export class HeroTopBarComp extends CCComp {
|
||||
}
|
||||
}
|
||||
|
||||
/** 更新护盾数值条(百分比 = shield / SHIELD_MAX) */
|
||||
/** 更新护盾数值条(显示具体数值,无上限) */
|
||||
public shieldShow(shield: number = 0): void {
|
||||
if (!this.shieldProgressBar) return;
|
||||
const progress = FightSet.SHIELD_MAX > 0 ? shield / FightSet.SHIELD_MAX : 0;
|
||||
this.shieldProgressBar.progress = clamp(progress, 0, 1);
|
||||
if (!this.shieldProgressBar) {
|
||||
console.log('[HeroTopBarComp] shieldShow: shieldProgressBar is null');
|
||||
return;
|
||||
}
|
||||
// 护盾条直接显示具体数值,progress 固定为 1(满条显示)
|
||||
this.shieldProgressBar.progress = 1;
|
||||
// 护盾节点显隐
|
||||
this.shieldProgressBar.node.active = shield > 0;
|
||||
const shouldActive = shield > 0;
|
||||
console.log(`[HeroTopBarComp] shieldShow: shield=${shield}, active=${shouldActive}, node=${this.shieldProgressBar.node.name}`);
|
||||
this.shieldProgressBar.node.active = shouldActive;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user