diff --git a/assets/resources/gui/element/mission.prefab b/assets/resources/gui/element/mission.prefab index 5ac5f74c..37c7423d 100644 --- a/assets/resources/gui/element/mission.prefab +++ b/assets/resources/gui/element/mission.prefab @@ -5746,10 +5746,10 @@ "b": 255, "a": 255 }, - "_string": "第 {{0}}-{{1}}关", + "_string": "第 {{0}} - {{1}}关 {{2}}回合", "_horizontalAlign": 1, "_verticalAlign": 1, - "_actualFontSize": 26, + "_actualFontSize": 17, "_fontSize": 25, "_fontFamily": "Arial", "_lineHeight": 40, @@ -5809,7 +5809,8 @@ "labelType": "cc.Label", "watchPathArr": [ "data.stage_progress.chapter ", - "data.stage_progress.stage" + "data.stage_progress.stage", + "data.stage_progress.section" ], "_id": "" }, diff --git a/assets/script/game/map/MissionComp.ts b/assets/script/game/map/MissionComp.ts index db02787c..6c5d3320 100644 --- a/assets/script/game/map/MissionComp.ts +++ b/assets/script/game/map/MissionComp.ts @@ -457,9 +457,12 @@ export class MissionComp extends CCComp { const phaseName = MissionComp.PhaseNameMap[targetPhase] || "未知"; - // 播放状态切换提示栏动效(过滤掉 None、Prepare 准备阶段、Battle 战斗中阶段) + // 播放状态切换提示栏动效(过滤掉 None、Prepare/PrepareStart/PrepareEnd 准备阶段、Battle 战斗中阶段; + // 回合提示统一由 BattleStart 的"第 X 回合开始"承担,准备相关阶段不弹提示) if (targetPhase !== MissionPhase.None && targetPhase !== MissionPhase.Prepare && + targetPhase !== MissionPhase.PrepareStart && + targetPhase !== MissionPhase.PrepareEnd && targetPhase !== MissionPhase.Battle) { this.playTooltipAnim(phaseName); } @@ -502,6 +505,8 @@ export class MissionComp extends CCComp { case MissionPhase.BattleStart: // 触发战斗开始技能(fstart) this.triggerHeroBattleSkills(); + // 回合开始提示:"第 X 回合开始"(准备阶段不显示,战斗开始才播) + this.playTooltipAnim(`第 ${this.currentWave} 回合开始`); // Boss 预警:Boss 同步场立即登场(eta=0) if (this.isBossWave) { oops.message.dispatchEvent(GameEvent.BossWarning, { @@ -924,12 +929,12 @@ export class MissionComp extends CCComp { // ======================== 回合管理 ======================== /** - * 新一节事件回调(SectionStart 时由 MissionMonComp 派发,wave = 小节号): - * 1. 更新当前节号与 HUD 进度。 - * 2. 按节配置判定是否含 Boss(驱动 Boss 预警)。 - * 3. 首回合延迟播放回合提示。 + * 新一回合事件回调(SectionStart 时由 MissionMonComp 派发,wave = 回合号): + * 1. 更新当前回合号与 HUD 进度。 + * 2. 按回合配置判定是否含 Boss(驱动 Boss 预警)。 * - * 注意:节间推进在 autoNextPhase(PrepareStart) 完成,此处仅同步显示与 Boss 预警。 + * 注意:回合推进在 autoNextPhase(PrepareStart) 完成,此处仅同步显示与 Boss 预警; + * "第 X 回合开始"提示改在 BattleStart(战斗开始)时播放,准备阶段不显示。 * * @param event 事件名 * @param data { wave: number, bossWave?: boolean } @@ -938,18 +943,9 @@ export class MissionComp extends CCComp { const wave = Number(data?.wave ?? 0); if (wave <= 0) return; - // Boss 预警:本节怪物列表含 Boss 时置位(Boss 节 Boss 延迟登场,BattleStart 时发预警) + // Boss 预警:本回合怪物列表含 Boss 时置位(Boss 回合 Boss 延迟登场,BattleStart 时发预警) this.isBossWave = !!data?.bossWave; - if (this.currentPhase === MissionPhase.Prepare) { - // 首回合:延迟一点播放提示,避免被开始游戏的 loading 遮挡 - this.scheduleOnce(() => { - if (this.currentPhase === MissionPhase.Prepare) { - this.playTooltipAnim(`第 ${wave} 节`); - } - }, 0.5); - } - this.currentWave = wave; smc.vmdata.mission_data.level = wave; // 金币改为怪物死亡掉落(见 HeroAtkSystem),不再每回合固定发放