// @structural-rewrite-v1 import { _decorator, Button, Label, Node, Prefab, Tween, Vec3 } from 'cc'; import { AssetController } from '../AssetController'; import { BattleResult } from '../BattleLevel'; import { RewardSettlementModel } from '../domain/RewardSettlementModel'; import { GameController } from '../GameController'; import { AudioMgr } from '../framework/audio/AudioMgr'; import { LocalSaveMgr } from '../framework/data/LocalSaveMgr'; import { SdkMgr } from '../framework/sdk/SdkMgr'; import { PanelBase } from '../framework/ui/PanelBase'; import { connectPanelButtons, playPanelClick, runPanelAction } from '../framework/ui/PanelInteraction'; import { RewardFlight } from '../framework/ui/RewardFlight'; const { ccclass, property } = _decorator; @ccclass('WinPanel') export class WinPanel extends PanelBase { static instance: WinPanel; @property(Node) pointer: Node = null; @property amplitude = 450; @property speed = 2; @property(Button) rewardBtn: Button = null; @property(Button) continueBtn: Button = null; @property(Label) remainTimer: Label = null; @property(Label) killEnemyCount: Label = null; @property(Prefab) flyMoneyPrefab: Prefab = null; @property(Label) coinCount: Label = null; @property(Label) rewardCoin: Label = null; @property(Label) rewardTimerCoin: Label = null; @property(Label) rewardKillCoin: Label = null; @property(Node) flyMoneyContent: Node = null; @property(Label) coinLabel: Label = null; @property(Label) continueCoinLabel: Label = null; curResult: BattleResult; pointPos: number; private time = 0; private runingPoint = false; private readonly scoreTweens: Tween<{ value: number; }>[] = []; private readonly settlement = new RewardSettlementModel(); protected onLoad(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (WinPanel["instance"] = this); void (connectPanelButtons(this, [ [this["rewardBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["onClickRewardBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown], [this["continueBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["onClickContinueBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown], ])); } } while (false); } finally { } } onClickRewardBtn(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (playPanelClick()); const rewardCoin = (this["settlement"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["select"]('claim', Math["abs"](this["pointPos"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (this["runingPoint"] = false); void ((SdkMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["requestReward"](() => { try { do { switch (0 as number) { case 1: break; case 2: break; default: const fromMoney = ((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)["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown; void ((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["addCoin"](rewardCoin)); void (this["flyMoney"](fromMoney, ((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)["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); } } while (false); } finally { } })); } } while (false); } finally { } } onClickContinueBtn(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (runPanelAction(() => GameController["getInstance"]()["backMain"]())); } } while (false); } finally { } } backMain(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (runPanelAction(() => GameController["getInstance"]()["backMain"]())); } } while (false); } finally { } } protected start(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (this["time"] = 0); } } while (false); } finally { } } refresh(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (this["curResult"] = (GameController["getInstance"]()["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["levelResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown); void ((this["settlement"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["load"]((this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["coinCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void ((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["addCoin"]((this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["coinCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (this["setLabelStrings"]([ [this["killEnemyCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, (this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["enemyCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown], [this["remainTimer"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, (this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["timer"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown], [this["coinLabel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, ((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)["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown], [this["continueCoinLabel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, (this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["coinCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown], [this["coinCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, 0], ])); void (this["stopScoreTweens"]()); void (this["animateValue"](this["coinCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, (this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["coinCount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (this["animateValue"](this["rewardTimerCoin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, (this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["timerCoin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (this["animateValue"](this["rewardKillCoin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, (this["curResult"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["enemyCoin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (this["runPoint"]()); } } while (false); } finally { } } flyMoney(fromMoney: number, endMoney: number): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void ((this["rewardBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["interactable"] = false); void ((this["continueBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["interactable"] = false); void ((AudioMgr["inst"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["playOneShot"]((AssetController["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["getCoin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (RewardFlight["launch"](this["flyMoneyPrefab"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["flyMoneyContent"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, ((this["rewardBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["node"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["getPosition"](), (this["coinLabel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["node"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (RewardFlight["count"](fromMoney, endMoney, (value) => (this["coinLabel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["string"] = value["toString"](), () => this["backMain"](), 0.9)); } } while (false); } finally { } } runPoint(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (this["runingPoint"] = true); } } while (false); } finally { } } protected update(dt: number): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: if (!(this["runingPoint"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)) return; void (this["time"] += dt * (this["speed"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (this["pointPos"] = (this["amplitude"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown) * Math["sin"](this["time"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void ((this["pointer"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["setPosition"](new Vec3(this["pointPos"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, 65, 0))); void ((this["rewardCoin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["string"] = (this["settlement"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["select"]('pointer', Math["abs"](this["pointPos"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown))["toString"]()); } } while (false); } finally { } } protected onDestroy(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void (this["stopScoreTweens"]()); } } while (false); } finally { } } protected onOpen(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void ((AudioMgr["inst"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["playOneShot"]((AssetController["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["win"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)); void (this["time"] = 0); void (this["refresh"]()); } } while (false); } finally { } } private animateValue(label: Label, endValue: number): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: const scoreTween = new Tween<{ value: number; }>({ "value": 0 })["to"](1, { "value": endValue }, { "onUpdate": (target) => label["string"] = Math["floor"]((target as { value: number; })["value"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["toString"](), })["start"](); void ((this["scoreTweens"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["push"](scoreTween)); } } while (false); } finally { } } private stopScoreTweens(): void { try { do { switch (0 as number) { case 1: break; case 2: break; default: void ((this["scoreTweens"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["forEach"]((scoreTween) => scoreTween["stop"]())); void ((this["scoreTweens"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["length"] = 0); } } while (false); } finally { } } }