chore:代码重构

This commit is contained in:
2026-07-17 10:15:42 +08:00
parent 5e689878ca
commit 56ea1dfd7b
58 changed files with 5784 additions and 2685 deletions
+252 -63
View File
@@ -1,83 +1,272 @@
import { _decorator, Component, Node } from 'cc';
import { SingletonBase } from './framework/SingletonBase';
// @structural-rewrite-v1
import { _decorator } from 'cc';
import { BattleLevel } from './BattleLevel';
import { UIManager } from './framework/ui/UIManager';
import { PlayPanel } from './ui/PlayPanel';
import { MainPanel } from './ui/MainPanel';
import { LoadingPanel } from './ui/LoadingPanel';
import { WinPanel } from './ui/WinPanel';
import { FPSCameraController } from './FPSCameraController';
import { SingletonBase } from './framework/SingletonBase';
import { LocalSaveMgr } from './framework/data/LocalSaveMgr';
import { UIManager } from './framework/ui/UIManager';
import { AddHeartPanel } from './ui/AddHeartPanel';
import { SettingPanel } from './ui/SettingPanel';
import { LoadingPanel } from './ui/LoadingPanel';
import { MainPanel } from './ui/MainPanel';
import { PlayPanel } from './ui/PlayPanel';
import { backToMainPlan, GameFlowEffect, levelReadyPlan, planBattleEntry, planPowerCheck } from './domain/GameFlowModel';
const { ccclass, property } = _decorator;
@ccclass('GameController')
export class GameController extends SingletonBase<GameController> {
@property(BattleLevel)
curLevel: BattleLevel = null
curLevel: BattleLevel = null;
@property
forceLevelIndex: number = 1
forceLevelIndex = 1;
private readonly effectHandlers: Record<GameFlowEffect, () => void> = {
"showAddHeart": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["openPanel"](AddHeartPanel));
}
} while (false);
}
finally {
}
},
"consumePower": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["usePower"]());
}
} while (false);
}
finally {
}
},
"closeMain": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closePanel"](MainPanel));
}
} while (false);
}
finally {
}
},
"closeAll": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closeAllPanels"]());
}
} while (false);
}
finally {
}
},
"openLoading": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["openPanel"](LoadingPanel));
}
} while (false);
}
finally {
}
},
"scheduleLevelLoad": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["scheduleOnce"](() => (this["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["loadLevel"](), 0.5));
}
} while (false);
}
finally {
}
},
"openMain": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["openPanel"](MainPanel));
}
} while (false);
}
finally {
}
},
"unloadLevel": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((this["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["unLoadLevel"]());
}
} while (false);
}
finally {
}
},
"clearLastBullet": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (FPSCameraController["getInstance"]()["clear"]());
}
} while (false);
}
finally {
}
},
"openPlay": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["openPanel"](PlayPanel));
}
} while (false);
}
finally {
}
},
"startLevel": () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((this["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["startLevel"]());
}
} while (false);
}
finally {
}
},
};
protected onLoad(): void {
super.onLoad()
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (super["onLoad"]());
}
} while (false);
}
finally {
}
}
protected start(): void {
// this.gameStart()
UIManager.instance.openPanel(MainPanel)
}
judgePower() {
if (LocalSaveMgr.instance.playerData.power > 0) {
LocalSaveMgr.instance.usePower()
return true
} else {
UIManager.instance.openPanel(AddHeartPanel)
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["openPanel"](MainPanel));
}
} while (false);
}
return false
}
gameStart() {
if (!this.judgePower()) {
return
finally {
}
UIManager.instance.closePanel(MainPanel)
UIManager.instance.openPanel(LoadingPanel)
this.scheduleOnce(() => {
console.log("gameStart openPanel")
this.curLevel.loadLevel()
}, 0.5)
}
gameRestart() {
if (!this.judgePower()) {
return
judgePower(): boolean {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const hasPower = ((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["playerData"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["power"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown > 0;
void (this["runFlow"](planPowerCheck(hasPower)));
return hasPower;
}
} while (false);
}
finally {
}
UIManager.instance.closeAllPanels()
UIManager.instance.openPanel(LoadingPanel)
this.scheduleOnce(() => {
console.log("gameStart openPanel")
this.curLevel.loadLevel()
}, 0.5)
}
backMain() {
UIManager.instance.closeAllPanels()
UIManager.instance.openPanel(MainPanel)
this.curLevel.unLoadLevel()
FPSCameraController.getInstance().clear()
gameStart(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["runFlow"](planBattleEntry('start', ((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["playerData"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["power"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown > 0)));
}
} while (false);
}
finally {
}
}
onLoadComplete() {
let self = this
LoadingPanel.instance.onLoadingComplete(() => {
UIManager.instance.openPanel(PlayPanel)
self.curLevel.startLevel()
})
gameRestart(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["runFlow"](planBattleEntry('restart', ((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["playerData"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["power"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown > 0)));
}
} while (false);
}
finally {
}
}
backMain(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["runFlow"](backToMainPlan));
}
} while (false);
}
finally {
}
}
onLoadComplete(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((LoadingPanel["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["onLoadingComplete"](() => this["runFlow"](levelReadyPlan)));
}
} while (false);
}
finally {
}
}
private runFlow(effects: readonly GameFlowEffect[]): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (effects["forEach"](effect => (this["effectHandlers"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)[effect]()));
}
} while (false);
}
finally {
}
}
}