feat(map): 添加任务阶段名称的UI显示
在MissionComp中添加阶段名称映射表,并在阶段切换时更新UI显示。
This commit is contained in:
@@ -100,6 +100,18 @@ export class MissionComp extends CCComp {
|
|||||||
@property(Node)
|
@property(Node)
|
||||||
time_node:Node = null!
|
time_node:Node = null!
|
||||||
|
|
||||||
|
/** 阶段名称映射表(用于 UI 显示) */
|
||||||
|
private static readonly PhaseNameMap: Record<MissionPhase, string> = {
|
||||||
|
[MissionPhase.None]: "未开始",
|
||||||
|
[MissionPhase.PrepareStart]: "准备开始",
|
||||||
|
[MissionPhase.Prepare]: "准备阶段",
|
||||||
|
[MissionPhase.PrepareEnd]: "准备结束",
|
||||||
|
[MissionPhase.BattleStart]: "战斗开始",
|
||||||
|
[MissionPhase.Battle]: "战斗中",
|
||||||
|
[MissionPhase.BattleEnd]: "战斗结束",
|
||||||
|
[MissionPhase.Settle]: "结算阶段"
|
||||||
|
};
|
||||||
|
|
||||||
// ======================== 运行时状态 ========================
|
// ======================== 运行时状态 ========================
|
||||||
|
|
||||||
/** 战斗倒计时(秒) */
|
/** 战斗倒计时(秒) */
|
||||||
@@ -279,6 +291,17 @@ export class MissionComp extends CCComp {
|
|||||||
const oldPhase = this.currentPhase;
|
const oldPhase = this.currentPhase;
|
||||||
this.currentPhase = targetPhase;
|
this.currentPhase = targetPhase;
|
||||||
|
|
||||||
|
// 更新阶段显示 UI
|
||||||
|
if (this.time_node && this.time_node.isValid) {
|
||||||
|
const phaseNode = this.time_node.getChildByPath("Phase/Label");
|
||||||
|
if (phaseNode) {
|
||||||
|
const label = phaseNode.getComponent(Label);
|
||||||
|
if (label) {
|
||||||
|
label.string = MissionComp.PhaseNameMap[targetPhase] || "未知";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 重置状态机的计时器
|
// 重置状态机的计时器
|
||||||
this.PhaseTime.reset();
|
this.PhaseTime.reset();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user