feat: 实现无限关卡 Boss 大招系统并重构关卡配置

This commit is contained in:
pan
2026-09-23 10:06:00 +08:00
parent c10e24709d
commit 8f89dd11fa
4 changed files with 301 additions and 439 deletions

View File

@@ -765,23 +765,20 @@ export class MissionComp extends CCComp {
// 失败:进度不变,结算窗走复活/再来一次/退出流程
this._settleType = "defeat";
} else {
// 通关(Boss 节胜利):结算窗显示通关标题,确认退出并存档进下一关
// 通关(Boss 回合胜利):无限关卡模式,存档永远推进到下一关第 1 节
// (仅写存档,内存进度保留用于本局结算显示)
this._settleType = "final";
this._settleTitle = this.currentStage >= 10 ? "本章通关" : "本关通关";
// 存档推进到下一关第 1 节(仅写存档,内存进度保留用于本局结算显示);
// 第 10 关通关即本章全通,存档停留等待后续章节扩展
if (this.currentStage < 10) {
smc.updateStageProgress({
chapter: this.currentChapter,
stage: this.currentStage + 1,
section: 1,
});
if ((smc as any).updateCloudData) {
(smc as any).updateCloudData();
}
mLogger.log(this.debugMode, 'MissionComp',
`[StageProgress] 本关通关,存档推进: ${this.currentChapter}-${this.currentStage + 1}-1`);
this._settleTitle = "本关通关";
smc.updateStageProgress({
chapter: this.currentChapter,
stage: this.currentStage + 1,
section: 1,
});
if ((smc as any).updateCloudData) {
(smc as any).updateCloudData();
}
mLogger.log(this.debugMode, 'MissionComp',
`[StageProgress] 本关通关,存档推进: ${this.currentStage + 1}-1`);
}
// 直接切入 BattleEnd,2s 后由 autoNextPhase 自动流转弹窗结算
this.changePhase(MissionPhase.BattleEnd);