// @structural-rewrite-v1 import { _decorator } from 'cc'; import { BattleLevel } from './BattleLevel'; 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 { 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 { @property(BattleLevel) curLevel: BattleLevel = null; @property forceLevelIndex = 1; private readonly effectHandlers: Record 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 { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (super["onLoad"]()); } } while (false); } finally { } } protected start(): void { 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 { } } 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 { } } 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 { } } 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 { } } }