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
+73 -35
View File
@@ -1,48 +1,86 @@
import { _decorator, Button, Component, Label, Node, Tween, tween, Vec3 } from 'cc';
// @structural-rewrite-v1
import { _decorator, Button } from 'cc';
import { LocalSaveMgr } from '../framework/data/LocalSaveMgr';
import { UIManager } from '../framework/ui/UIManager';
import { UISwitcher } from '../framework/ui/UISwitcher';
import { AudioMgr } from '../framework/audio/AudioMgr';
import { PanelBase } from '../framework/ui/PanelBase';
import { AssetController } from '../AssetController';
import { GameController } from '../GameController';
import { SdkMgr } from '../framework/sdk/SdkMgr';
import { connectPanelButtons, runPanelAction, runRewardedPanelAction } from '../framework/ui/PanelInteraction';
import { UIManager } from '../framework/ui/UIManager';
const { ccclass, property } = _decorator;
@ccclass('AddHeartPanel')
export class AddHeartPanel extends PanelBase {
static instance: AddHeartPanel;
@property({ type: Button })
@property({ "type": Button })
addPower: Button = null;
@property({ type: Button })
@property({ "type": Button })
closeBtn: Button = null;
onLoad() {
AddHeartPanel.instance = this;
this.closeBtn.node.on(Button.EventType.CLICK, this.closeBtnCallBack, this);
this.addPower.node.on(Button.EventType.CLICK, this.addPowerCallBack, this);
protected onLoad(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (AddHeartPanel["instance"] = this);
void (connectPanelButtons(this, [
[this["closeBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["closeBtnCallBack"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["addPower"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["addPowerCallBack"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
]));
}
} while (false);
}
finally {
}
}
addPowerCallBack() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
SdkMgr.instance.requestReward(() => {
LocalSaveMgr.instance.adsAddPower()
UIManager.instance.closePanel(AddHeartPanel)
})
addPowerCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runRewardedPanelAction(() => {
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)["adsAddPower"]());
void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closePanel"](AddHeartPanel));
}
} while (false);
}
finally {
}
}));
}
} while (false);
}
finally {
}
}
closeBtnCallBack(button: Button) {
AudioMgr.inst.playOneShot(AssetController.instance.click)
UIManager.instance.closePanel(AddHeartPanel)
closeBtnCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => (UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closePanel"](AddHeartPanel)));
}
} while (false);
}
finally {
}
}
start() {
protected start(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
}
} while (false);
}
finally {
}
}
}
+142 -55
View File
@@ -1,71 +1,158 @@
import { _decorator, Button, Component, Label, Node, Sprite, Tween, tween, Vec3 } from 'cc';
import { LocalSaveMgr } from '../framework/data/LocalSaveMgr';
import { UIManager } from '../framework/ui/UIManager';
import { UISwitcher } from '../framework/ui/UISwitcher';
import { AudioMgr } from '../framework/audio/AudioMgr';
// @structural-rewrite-v1
import { _decorator, Sprite } from 'cc';
import { PanelBase } from '../framework/ui/PanelBase';
import { AssetController } from '../AssetController';
import { GameController } from '../GameController';
import { UIManager } from '../framework/ui/UIManager';
const { ccclass, property } = _decorator;
@ccclass('LoadingPanel')
export class LoadingPanel extends PanelBase {
static instance: LoadingPanel;
@property({ type: Sprite })
@property({ "type": Sprite })
loadingSprite: Sprite = null;
@property
fillDuration: number = 5; // 填充持续时间,单位为秒
private fillAmount: number = 0; // 当前填充量
startFill() {
this.schedule(this.updateFill, 0.01); // 每0.01秒更新一次填充量
fillDuration = 5;
loadingComplete = false;
completeCallback: () => void = null;
private fillAmount = 0;
protected onLoad(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (LoadingPanel["instance"] = this);
}
} while (false);
}
finally {
}
}
protected onOpen(): void {
LoadingPanel.instance.startFill()
}
loadingComplete: boolean = false
completeCallback = null
onLoadingComplete(callBack) {
this.completeCallback = callBack
this.loadingComplete = true
if (this.fillAmount < 1) {
this.fillDuration = 1
} else {
UIManager.instance.closePanel(LoadingPanel)
callBack()
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["startFill"]());
}
} while (false);
}
finally {
}
}
protected onDestroy(): void {
this.unschedule(this.updateFill);
}
updateFill() {
if (this.fillAmount < 1) {
this.fillAmount += 0.01 / this.fillDuration; // 根据持续时间逐步增加填充量
this.loadingSprite.fillRange = this.fillAmount; // 更新 Sprite 的填充量
} else {
this.unschedule(this.updateFill); // 填充完成后停止更新
if (this.loadingComplete) {
UIManager.instance.closePanel(LoadingPanel)
this.completeCallback()
}
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["unschedule"](this["updateFill"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown));
}
} while (false);
}
finally {
}
}
onLoad() {
LoadingPanel.instance = this;
startFill(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["schedule"](this["updateFill"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, 0.01));
}
} while (false);
}
finally {
}
}
onLoadingComplete(callBack: () => void): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (this["completeCallback"] = callBack);
void (this["loadingComplete"] = true);
void ((this["isFilled"]()
? () => this["finishLoading"]()
: () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["fillDuration"] = 1);
}
} while (false);
}
finally {
}
})());
}
} while (false);
}
finally {
}
}
updateFill(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((this["isFilled"]() ? this["finishLoading"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown : this["advanceFill"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["call"](this));
}
} while (false);
}
finally {
}
}
private advanceFill(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (this["fillAmount"] += 0.01 / (this["fillDuration"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown));
void ((this["loadingSprite"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["fillRange"] = this["fillAmount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown);
}
} while (false);
}
finally {
}
}
private isFilled(): boolean {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: return this["fillAmount"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown >= 1;
}
} while (false);
}
finally {
}
}
private finishLoading(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (this["unschedule"](this["updateFill"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown));
if (!(this["loadingComplete"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown))
return;
const callback = this["completeCallback"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown;
void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closePanel"](LoadingPanel));
void (callback?.());
}
} while (false);
}
finally {
}
}
}
+89 -44
View File
@@ -1,61 +1,106 @@
import { _decorator, Button, Component, EventTouch, Input, input, instantiate, Label, Node, Prefab } from 'cc';
import { PanelBase } from '../framework/ui/PanelBase';
import { FPSCameraController } from '../FPSCameraController';
// @structural-rewrite-v1
import { _decorator, Button, Label } from 'cc';
import { GameController } from '../GameController';
import { TargetIconItem } from './TargetIconItem';
import { EventCenter } from '../EventCenter';
import { PanelBase } from '../framework/ui/PanelBase';
import { connectPanelButtons, runPanelAction, runRewardedPanelAction } from '../framework/ui/PanelInteraction';
import { UIManager } from '../framework/ui/UIManager';
import { SdkMgr } from '../framework/sdk/SdkMgr';
import { AudioMgr } from '../framework/audio/AudioMgr';
import { AssetController } from '../AssetController';
const { ccclass, property } = _decorator;
@ccclass('LosePanel')
export class LosePanel extends PanelBase {
static instance: LosePanel = null
static instance: LosePanel = null;
@property(Button)
closeBtn: Button = null;
@property(Button)
replayBtn: Button = null;
@property(Button)
addTimeBtn: Button = null;
@property(Label)
remainLabel: Label = null;
onLoad() {
LosePanel.instance = this
this.closeBtn.node.on(Button.EventType.CLICK, this.onClickClose, this);
this.replayBtn.node.on(Button.EventType.CLICK, this.onClickReplay, this);
this.addTimeBtn.node.on(Button.EventType.CLICK, this.onClickAddTime, this);
protected onLoad(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (LosePanel["instance"] = this);
void (connectPanelButtons(this, [
[this["closeBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["onClickClose"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["replayBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["onClickReplay"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["addTimeBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["onClickAddTime"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
]));
}
} while (false);
}
finally {
}
}
onClickClose() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
GameController.getInstance().backMain()
}
onClickReplay() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
GameController.getInstance().gameRestart()
}
onClickAddTime() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
SdkMgr.instance.requestReward(() => {
GameController.getInstance().curLevel.addTimer()
GameController.getInstance().curLevel.ContinueRun()
UIManager.instance.closePanel(LosePanel)
})
}
protected onOpen(): void {
LosePanel.instance.remainLabel.string = "剩余: " + GameController.getInstance().curLevel.getAliveEnemeyCount().toString()
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((this["remainLabel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["string"] = `剩余: ${(GameController["getInstance"]()["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["getAliveEnemeyCount"]()}`);
}
} while (false);
}
finally {
}
}
onClickClose(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => GameController["getInstance"]()["backMain"]()));
}
} while (false);
}
finally {
}
}
onClickReplay(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => GameController["getInstance"]()["gameRestart"]()));
}
} while (false);
}
finally {
}
}
onClickAddTime(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runRewardedPanelAction(() => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const level = GameController["getInstance"]()["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown;
void (level["addTimer"]());
void (level["ContinueRun"]());
void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closePanel"](LosePanel));
}
} while (false);
}
finally {
}
}));
}
} while (false);
}
finally {
}
}
}
+470 -302
View File
@@ -1,343 +1,511 @@
import { _decorator, Asset, Button, Component, debug, instantiate, Label, Node, Prefab, randomRange, Sprite, Tween, tween, Vec3 } from 'cc';
import { LocalSaveMgr } from '../framework/data/LocalSaveMgr';
import { UIManager } from '../framework/ui/UIManager';
import { UISwitcher } from '../framework/ui/UISwitcher';
import { AudioMgr } from '../framework/audio/AudioMgr';
import { PanelBase } from '../framework/ui/PanelBase';
// @structural-rewrite-v1
import { _decorator, Button, instantiate, Label, Node, Prefab, Sprite, tween, Vec3 } from 'cc';
import { AssetController } from '../AssetController';
import { GameController } from '../GameController';
import { DataMgr } from '../framework/data/DataMgr';
import { Weapon } from '../data/ConfigData';
import { LocalSaveMgr } from '../framework/data/LocalSaveMgr';
import { PanelBase } from '../framework/ui/PanelBase';
import { connectPanelButtons, playPanelClick, runPanelAction, runRewardedPanelAction } from '../framework/ui/PanelInteraction';
import { UIManager } from '../framework/ui/UIManager';
import { RewardFlight } from '../framework/ui/RewardFlight';
import { AudioMgr } from '../framework/audio/AudioMgr';
import { AddHeartPanel } from './AddHeartPanel';
import { SdkMgr } from '../framework/sdk/SdkMgr';
import { GameController } from '../GameController';
import { Weapon } from '../data/ConfigData';
import { EventCenter } from '../EventCenter';
const { ccclass, property } = _decorator;
@ccclass('MainPanel')
export class MainPanel extends PanelBase {
static instance: MainPanel;
@property({ type: Button })
@property({ "type": Button })
startBtn: Button = null;
@property({ type: Button })
@property({ "type": Button })
leftBtn: Button = null;
@property({ type: Button })
@property({ "type": Button })
right: Button = null;
@property({ type: Button })
@property({ "type": Button })
equip: Button = null;
@property({ type: Button })
@property({ "type": Button })
clear: Button = null;
@property({ type: Button })
@property({ "type": Button })
addMoneyBtn: Button = null;
@property({ type: Button })
@property({ "type": Button })
buy: Button = null;
@property({ type: Node })
@property({ "type": Node })
equiped: Node = null;
@property({ type: Label })
@property({ "type": Label })
weaponName: Label = null;
@property({ type: Label })
@property({ "type": Label })
gunPrice: Label = null;
@property({ type: Label })
@property({ "type": Label })
heart: Label = null;
@property({ type: Label })
@property({ "type": Label })
heartTimer: Label = null;
@property({ type: Label })
@property({ "type": Label })
coin: Label = null;
@property({ type: Button })
@property({ "type": Button })
addHeartBtn: Button = null;
@property({ type: Prefab })
@property({ "type": Prefab })
weaponSelectPrefab: Prefab = null;
@property(Prefab)
flyMoneyPrefab: Prefab = null;
@property(Node)
flyMoneyContent: Node = null;
@property(Node)
fingerNode: Node = null;
weaponDatas: Array<Weapon> = []
private weaponOffset: number = 1000
private curSelectIndex: number = 0
@property({ type: Node })
@property({ "type": Node })
weaponContent: Node = null;
weaponDatas: Weapon[] = [];
private weaponOffset = 1000;
private curSelectIndex = 0;
protected onLoad(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (MainPanel["instance"] = this);
void (this["bindButtons"]());
void ((EventCenter["coinCountChange"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["on"]('coinCountChange', this["onCoinCountChange"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this));
}
} while (false);
}
finally {
}
}
protected onOpen(): void {
MainPanel.instance.refresh()
}
refresh() {
var weapons = DataMgr.getInstance().GetDatas(Weapon)
this.weaponDatas = weapons
let equipedIndex: number = 0
for (let index = 0; index < weapons.length; index++) {
let data = weapons[index]
var item = instantiate(this.weaponSelectPrefab)
item.setParent(this.weaponContent)
let sprite = item.getChildByPath("Sprite").getComponent(Sprite)
AssetController.instance.loadSetSprite(`weaponSprite/${data.spriteName}`, sprite);
item.getChildByPath("Label").getComponent(Label).string = data.gunName
if (data.id == LocalSaveMgr.instance.playerData.equipedWeapon) {
equipedIndex = index
}
}
this.fingerNode.active = !LocalSaveMgr.instance.playerData.haveTutorial
this.heart.string = LocalSaveMgr.instance.playerData.power.toString()
this.coin.string = LocalSaveMgr.instance.playerData.coin.toString()
this.setToIndex(equipedIndex, false)
}
protected update(dt: number): void {
if (LocalSaveMgr.instance.playerData.isOnTimerRun) {
const totalSeconds = Math.max(0, Math.ceil(LocalSaveMgr.instance.getPowerCD()))
let minutes = Math.floor(totalSeconds / 60);
let seconds = totalSeconds % 60;
// 将分钟和秒格式化为两位数
let formattedMinutes = minutes < 10 ? `0${minutes}` : `${minutes}`;
let formattedSeconds = seconds < 10 ? `0${seconds}` : `${seconds}`;
// 组合成 00:00 的格式
let formattedTime = `${formattedMinutes}:${formattedSeconds}`;
this.heartTimer.string = formattedTime
} else {
this.heartTimer.string = "已满"
}
this.heart.string = LocalSaveMgr.instance.playerData.power.toString()
}
setToIndex(index: number, widthAim: boolean) {
this.curSelectIndex = index
if (!widthAim) {
this.weaponContent.setPosition(-this.weaponOffset * index, 0, 0)
} else {
let newPos = new Vec3(-this.weaponOffset * index, 0, 0)
tween(this.weaponContent)
.to(0.3, { position: newPos })
.start()
}
this.refreshToIndex()
}
refreshToIndex() {
let ownedWeapons = LocalSaveMgr.instance.playerData.ownWeapon
let owned: boolean = false
for (let index = 0; index < ownedWeapons.length; index++) {
let element = ownedWeapons[index];
console.log("刷新", this.weaponDatas[this.curSelectIndex].id, element, ownedWeapons.length, index)
if (element == this.weaponDatas[this.curSelectIndex].id) {
owned = true
break
}
}
let equiped: boolean = LocalSaveMgr.instance.playerData.equipedWeapon == this.weaponDatas[this.curSelectIndex].id
// this.weaponName.string = this.weaponDatas[this.curSelectIndex].gunName
this.gunPrice.string = this.weaponDatas[this.curSelectIndex].coin.toString()
this.equiped.active = false
this.buy.node.active = false
this.equip.node.active = false
if (equiped) {
this.equiped.active = true
} else if (owned) {
this.equip.node.active = true
} else {
this.buy.node.active = true
if (LocalSaveMgr.instance.playerData.coin >= this.weaponDatas[this.curSelectIndex].coin) {
this.buy.interactable = true;
this.buy.getComponent(Sprite).grayscale = false
} else {
this.buy.interactable = false;
this.buy.getComponent(Sprite).grayscale = true
}
}
if (this.curSelectIndex == 0) {
this.leftBtn.node.active = false
} else {
this.leftBtn.node.active = true
}
if (this.curSelectIndex == this.weaponDatas.length - 1) {
this.right.node.active = false
} else {
this.right.node.active = true
}
}
clickLeft() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
if (this.curSelectIndex > 0) {
this.setToIndex(this.curSelectIndex - 1, true)
}
}
clickRight() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
if (this.curSelectIndex < this.weaponDatas.length - 1) {
this.setToIndex(this.curSelectIndex + 1, true)
}
}
clickEquipBtn() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
LocalSaveMgr.instance.equipWeapon(this.weaponDatas[this.curSelectIndex].id)
this.refreshToIndex()
}
clickBuyBtn() {
LocalSaveMgr.instance.addCoin(-this.weaponDatas[this.curSelectIndex].coin)
AudioMgr.inst.playOneShot(AssetController.instance.click)
LocalSaveMgr.instance.buyWeapon(this.weaponDatas[this.curSelectIndex].id)
this.refreshToIndex()
}
clickClear() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
LocalSaveMgr.instance.clearData()
}
clickAddHeartBtn() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
UIManager.instance.openPanel(AddHeartPanel)
}
clickAddMoneyBtn() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
SdkMgr.instance.requestReward(() => {
let addPoint = 200
let fromeMoney = LocalSaveMgr.instance.playerData.coin
LocalSaveMgr.instance.addCoin(addPoint)
let endMoney = LocalSaveMgr.instance.playerData.coin
this.flyMoney(fromeMoney, endMoney)
})
}
flyRewardMoney(fromMoney: number, endMoney: number) {
AudioMgr.inst.playOneShot(AssetController.instance.getCoin)
for (let index = 0; index < 10; index++) {
let item = instantiate(this.flyMoneyPrefab)
item.setParent(this.flyMoneyContent)
item.setPosition(new Vec3(0, 0, 0))
let delay = index * 0.1
tween(item)
.by(0.3, { position: new Vec3(randomRange(-150, 150), randomRange(-150, 150), 0) })
.delay(delay)
.to(0.6, { worldPosition: this.coin.node.getWorldPosition() })
.call(() => {
item.destroy()
})
.start()
}
new Tween({ value: fromMoney })
.delay(0.9)
.to(1, { value: endMoney }, {
onUpdate: (target, ratio) => {
// 在每一帧更新时调用
let currentValue = Math.floor(target.value);
if (this.coin != null)
this.coin.string = currentValue.toString();
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["refresh"]());
}
}).call(() => {
if (this.addMoneyBtn != null)
this.addMoneyBtn.interactable = true
})
.start();
}
flyMoney(fromMoney: number, endMoney: number) {
this.addMoneyBtn.interactable = false
AudioMgr.inst.playOneShot(AssetController.instance.getCoin)
for (let index = 0; index < 10; index++) {
let item = instantiate(this.flyMoneyPrefab)
item.setParent(this.flyMoneyContent)
item.setPosition(this.addMoneyBtn.node.getPosition())
let delay = index * 0.1
tween(item)
.by(0.3, { position: new Vec3(randomRange(-150, 150), randomRange(-150, 150), 0) })
.delay(delay)
.to(0.6, { worldPosition: this.coin.node.getWorldPosition() })
.call(() => {
item.destroy()
})
.start()
} while (false);
}
new Tween({ value: fromMoney })
.delay(0.9)
.to(1, { value: endMoney }, {
onUpdate: (target, ratio) => {
// 在每一帧更新时调用
let currentValue = Math.floor(target.value);
if (this.coin != null)
this.coin.string = currentValue.toString();
finally {
}
}
refresh(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (this["weaponDatas"] = DataMgr["getInstance"]()["GetDatas"](Weapon));
void (this["rebuildWeaponList"]());
void ((this["fingerNode"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["active"] = !(((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)["haveTutorial"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown));
void (this["refreshCurrency"]());
void (this["setToIndex"](this["findEquippedWeaponIndex"](), false));
}
}).call(() => {
if (this.addMoneyBtn != null)
this.addMoneyBtn.interactable = true
})
.start();
} while (false);
}
finally {
}
}
onCoinCountChange() {
MainPanel.instance.coin.string = LocalSaveMgr.instance.playerData.coin.toString()
MainPanel.instance.refreshToIndex()
protected update(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const playerData = (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;
void (this["setLabelStrings"]([
[this["heart"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, playerData["power"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["heartTimer"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, playerData["isOnTimerRun"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown ? this["formatTime"](Math["max"](0, Math["ceil"]((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["getPowerCD"]())))
: '已满'],
]));
}
} while (false);
}
finally {
}
}
setToIndex(index: number, widthAim: boolean): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (this["curSelectIndex"] = index);
const position = new Vec3(-(this["weaponOffset"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown) * index, 0, 0);
if (widthAim) {
void (tween(this["weaponContent"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["to"](0.3, { position })["start"]());
}
else {
void ((this["weaponContent"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["setPosition"](position));
}
void (this["refreshToIndex"]());
}
} while (false);
}
finally {
}
}
refreshToIndex(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const selectedWeapon = (this["weaponDatas"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)[this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown];
if (!selectedWeapon)
return;
const playerData = (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;
const isOwned = (playerData["ownWeapon"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["indexOf"](selectedWeapon["id"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown) >= 0;
const isEquipped = playerData["equipedWeapon"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown === selectedWeapon["id"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown;
const canBuy = playerData["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown >= (selectedWeapon["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown);
void ((this["gunPrice"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["string"] = (selectedWeapon["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["toString"]());
void (this["setNodesActive"]([
[this["equiped"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, isEquipped],
[(this["equip"] 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, !isEquipped && isOwned],
[(this["buy"] 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, !isEquipped && !isOwned],
[(this["leftBtn"] 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, this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown > 0],
[(this["right"] 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, this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown < ((this["weaponDatas"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["length"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown) - 1],
]));
void ((this["buy"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["interactable"] = canBuy);
void ((this["buy"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["getComponent"](Sprite)["grayscale"] = !canBuy);
}
} while (false);
}
finally {
}
}
clickLeft(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: if (this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown > 0)
void (this["setToIndex"]((this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown) - 1, true));
}
} while (false);
}
finally {
}
}));
}
} while (false);
}
finally {
}
}
clickRight(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: if (this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown < ((this["weaponDatas"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["length"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown) - 1)
void (this["setToIndex"]((this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown) + 1, true));
}
} while (false);
}
finally {
}
}));
}
} while (false);
}
finally {
}
}
clickEquipBtn(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => {
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)["equipWeapon"]((this["weaponDatas"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)[this["curSelectIndex"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown]["id"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown));
void (this["refreshToIndex"]());
}
} while (false);
}
finally {
}
}));
}
} while (false);
}
finally {
}
}
clickBuyBtn(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const selectedWeapon = (this["weaponDatas"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)[this["curSelectIndex"] 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"](-(selectedWeapon["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)));
void (playPanelClick());
void ((LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["buyWeapon"](selectedWeapon["id"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown));
void (this["refreshToIndex"]());
}
} while (false);
}
finally {
}
}
clickClear(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => (LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["clearData"]()));
}
} while (false);
}
finally {
}
}
clickAddHeartBtn(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => (UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["openPanel"](AddHeartPanel)));
}
} while (false);
}
finally {
}
}
clickAddMoneyBtn(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runRewardedPanelAction(() => {
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"](200));
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 {
}
}
flyRewardMoney(fromMoney: number, endMoney: number): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["playCoinReward"](new Vec3(), fromMoney, endMoney, true));
}
} while (false);
}
finally {
}
}
flyMoney(fromMoney: number, endMoney: number): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void ((this["addMoneyBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["interactable"] = false);
void (this["playCoinReward"](((this["addMoneyBtn"] 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"](), fromMoney, endMoney, true));
}
} while (false);
}
finally {
}
}
onCoinCountChange(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (this["refreshCurrency"]());
void (this["refreshToIndex"]());
}
} while (false);
}
finally {
}
}
startBtnCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (GameController["getInstance"]()["gameStart"]());
}
} while (false);
}
finally {
}
}
protected onDestroy(): void {
EventCenter.coinCountChange.off("coinCountChange", this.onCoinCountChange)
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((EventCenter["coinCountChange"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["off"]('coinCountChange', this["onCoinCountChange"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this));
}
} while (false);
}
finally {
}
}
onLoad() {
MainPanel.instance = this;
this.startBtn.node.on(Button.EventType.CLICK, this.startBtnCallBack, this);
this.leftBtn.node.on(Button.EventType.CLICK, this.clickLeft, this);
this.right.node.on(Button.EventType.CLICK, this.clickRight, this);
this.equip.node.on(Button.EventType.CLICK, this.clickEquipBtn, this);
this.buy.node.on(Button.EventType.CLICK, this.clickBuyBtn, this);
this.clear.node.on(Button.EventType.CLICK, this.clickClear, this);
this.addHeartBtn.node.on(Button.EventType.CLICK, this.clickAddHeartBtn, this);
this.addMoneyBtn.node.on(Button.EventType.CLICK, this.clickAddMoneyBtn, this);
EventCenter.coinCountChange.on("coinCountChange", this.onCoinCountChange).bind(this)
private bindButtons(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (connectPanelButtons(this, [
[this["startBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["startBtnCallBack"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["leftBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["clickLeft"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["right"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["clickRight"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["equip"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["clickEquipBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["buy"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["clickBuyBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["clear"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["clickClear"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["addHeartBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["clickAddHeartBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["addMoneyBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["clickAddMoneyBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
]));
}
} while (false);
}
finally {
}
}
startBtnCallBack() {
GameController.getInstance().gameStart()
private rebuildWeaponList(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void ((this["weaponContent"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["destroyAllChildren"]());
void ((this["weaponDatas"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["forEach"]((weapon) => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const item = instantiate(this["weaponSelectPrefab"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown);
void (item["parent"] = this["weaponContent"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown);
void ((AssetController["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["loadSetSprite"](`weaponSprite/${weapon["spriteName"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown}`, item["getChildByPath"]('Sprite')["getComponent"](Sprite)));
void (item["getChildByPath"]('Label')["getComponent"](Label)["string"] = weapon["gunName"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown);
}
} while (false);
}
finally {
}
}));
}
} while (false);
}
finally {
}
}
private findEquippedWeaponIndex(): number {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const equippedWeapon = ((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)["equipedWeapon"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown;
return Math["max"](0, (this["weaponDatas"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["findIndex"]((weapon) => weapon["id"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown === equippedWeapon));
}
} while (false);
}
finally {
}
}
private refreshCurrency(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["setLabelStrings"]([
[this["heart"] 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)["power"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["coin"] 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],
]));
}
} while (false);
}
finally {
}
}
private playCoinReward(startPosition: Vec3, fromMoney: number, endMoney: number, unlockButton: boolean): 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)["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, startPosition, (this["coin"] 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["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["string"] = value["toString"](), () => {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: if (unlockButton && this["addMoneyBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)
void ((this["addMoneyBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["interactable"] = true);
}
} while (false);
}
finally {
}
}, 0.9));
}
} while (false);
}
finally {
}
}
}
File diff suppressed because it is too large Load Diff
+69 -27
View File
@@ -1,40 +1,82 @@
import { _decorator, Button, Component, EventTouch, Input, input, instantiate, Node, Prefab } from 'cc';
import { PanelBase } from '../framework/ui/PanelBase';
// @structural-rewrite-v1
import { _decorator, Button } from 'cc';
import { FPSCameraController } from '../FPSCameraController';
import { GameController } from '../GameController';
import { TargetIconItem } from './TargetIconItem';
import { EventCenter } from '../EventCenter';
import { PanelBase } from '../framework/ui/PanelBase';
import { connectPanelButtons, runPanelAction } from '../framework/ui/PanelInteraction';
import { UIManager } from '../framework/ui/UIManager';
import { AudioMgr } from '../framework/audio/AudioMgr';
import { AssetController } from '../AssetController';
import { PlayPanel } from './PlayPanel';
const { ccclass, property } = _decorator;
@ccclass('QingBaoPanel')
export class QingBaoPanel extends PanelBase {
static instance: QingBaoPanel = null
static instance: QingBaoPanel = null;
@property(Button)
closeBtn: Button = null;
onLoad() {
QingBaoPanel.instance = this
this.closeBtn.node.on(Button.EventType.CLICK, this.onClickClose, this);
protected onLoad(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (QingBaoPanel["instance"] = this);
void (connectPanelButtons(this, [[this["closeBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["onClickClose"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown]]));
}
} while (false);
}
finally {
}
}
onClickClose() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
UIManager.instance.closePanel(QingBaoPanel)
}
protected onOpen(): void {
FPSCameraController.getInstance().showQingBao()
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["setIntelCamera"](true));
}
} while (false);
}
finally {
}
}
protected onClose(): void {
FPSCameraController.getInstance().closeQingBao()
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["setIntelCamera"](false));
}
} while (false);
}
finally {
}
}
onClickClose(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => (UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closePanel"](QingBaoPanel)));
}
} while (false);
}
finally {
}
}
private setIntelCamera(visible: boolean): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
const controller = FPSCameraController["getInstance"]();
void (visible ? controller["showQingBao"]() : controller["closeQingBao"]());
}
} while (false);
}
finally {
}
}
}
+140 -75
View File
@@ -1,95 +1,160 @@
import { _decorator, Button, Component, Label, Node, Tween, tween, Vec3 } from 'cc';
// @structural-rewrite-v1
import { _decorator, Button, Node } from 'cc';
import { GameController } from '../GameController';
import { LocalSaveMgr } from '../framework/data/LocalSaveMgr';
import { PanelBase } from '../framework/ui/PanelBase';
import { connectPanelButtons, playPanelClick, runPanelAction } from '../framework/ui/PanelInteraction';
import { UIManager } from '../framework/ui/UIManager';
import { UISwitcher } from '../framework/ui/UISwitcher';
import { AudioMgr } from '../framework/audio/AudioMgr';
import { PanelBase } from '../framework/ui/PanelBase';
import { AssetController } from '../AssetController';
import { GameController } from '../GameController';
const { ccclass, property } = _decorator;
@ccclass('SettingPanel')
export class SettingPanel extends PanelBase {
static instance: SettingPanel;
@property({ type: Button })
@property({ "type": Button })
restartBtn: Button = null;
@property({ type: Button })
@property({ "type": Button })
closeBtn: Button = null;
@property({ type: Button })
@property({ "type": Button })
toMainBtn: Button = null;
@property({ type: UISwitcher })
@property({ "type": UISwitcher })
soundSwitcher: UISwitcher = null;
@property({ type: UISwitcher })
@property({ "type": UISwitcher })
musicSwitcher: UISwitcher = null;
@property({ type: Node })
@property({ "type": Node })
music: Node = null;
@property({ type: Node })
@property({ "type": Node })
sound: Node = null;
onLoad() {
SettingPanel.instance = this;
this.closeBtn.node.on(Button.EventType.CLICK, this.closeBtnCallBack, this);
this.restartBtn.node.on(Button.EventType.CLICK, this.restartCallBack, this);
this.toMainBtn.node.on(Button.EventType.CLICK, this.toMainCallBack, this);
this.node.active = false;
this.soundSwitcher.addCallBack(this.soundCallBack)
this.musicSwitcher.addCallBack(this.musicCallBack)
protected onLoad(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (SettingPanel["instance"] = this);
void (connectPanelButtons(this, [
[this["closeBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["closeBtnCallBack"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["restartBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["restartCallBack"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
[this["toMainBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown, this["toMainCallBack"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown],
]));
void ((this["node"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["active"] = false);
void ((this["soundSwitcher"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["addCallBack"](() => this["soundCallBack"]()));
void ((this["musicSwitcher"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["addCallBack"](() => this["musicCallBack"]()));
}
} while (false);
}
finally {
}
}
restartCallBack() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
GameController.getInstance().gameRestart()
}
toMainCallBack() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
GameController.getInstance().backMain()
}
soundCallBack() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
LocalSaveMgr.instance.activeSound(SettingPanel.instance.soundSwitcher.value)
}
musicCallBack() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
console.log("musicCallBack")
LocalSaveMgr.instance.activeMusic(SettingPanel.instance.musicSwitcher.value)
}
refresh() {
GameController.getInstance().curLevel.pause()
}
protected onOpen(): void {
SettingPanel.instance.refresh()
SettingPanel.instance.soundSwitcher.SetValue(!LocalSaveMgr.instance.playerData.muteSound)
SettingPanel.instance.musicSwitcher.SetValue(!LocalSaveMgr.instance.playerData.muteMusic)
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void (this["refresh"]());
const playerData = (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;
void ((this["soundSwitcher"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["SetValue"](!(playerData["muteSound"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)));
void ((this["musicSwitcher"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["SetValue"](!(playerData["muteMusic"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)));
}
} while (false);
}
finally {
}
}
closeBtnCallBack(button: Button) {
GameController.getInstance().curLevel.ContinueRun()
AudioMgr.inst.playOneShot(AssetController.instance.click)
// AudioMgr.inst.playOneShot(AssetController.instance.click)
UIManager.instance.closePanel(SettingPanel)
restartCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => GameController["getInstance"]()["gameRestart"]()));
}
} while (false);
}
finally {
}
}
start() {
toMainCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => GameController["getInstance"]()["backMain"]()));
}
} while (false);
}
finally {
}
}
soundCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => (LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["activeSound"]((this["soundSwitcher"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["value"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)));
}
} while (false);
}
finally {
}
}
musicCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (runPanelAction(() => (LocalSaveMgr["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["activeMusic"]((this["musicSwitcher"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["value"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)));
}
} while (false);
}
finally {
}
}
refresh(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((GameController["getInstance"]()["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["pause"]());
}
} while (false);
}
finally {
}
}
closeBtnCallBack(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
void ((GameController["getInstance"]()["curLevel"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["ContinueRun"]());
void (playPanelClick());
void ((UIManager["instance"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["closePanel"](SettingPanel));
}
} while (false);
}
finally {
}
}
protected start(): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default:
}
} while (false);
}
finally {
}
}
}
+13 -14
View File
@@ -1,26 +1,25 @@
import { _decorator, color, Component, Node, Sprite, SpriteFrame } from 'cc';
// @structural-rewrite-v1
import { _decorator, Component, Sprite, SpriteFrame } from 'cc';
const { ccclass, property } = _decorator;
@ccclass('TargetIconItem')
export class TargetIconItem extends Component {
@property(Sprite)
sprite: Sprite = null;
@property(SpriteFrame)
activeFrame: SpriteFrame = null;
@property(SpriteFrame)
dieFrame: SpriteFrame = null;
switchActive(active: boolean) {
if (active) {
this.sprite.spriteFrame = this.activeFrame
} else {
this.sprite.spriteFrame = this.dieFrame
switchActive(active: boolean): void {
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void ((this["sprite"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)["spriteFrame"] = active ? this["activeFrame"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown : this["dieFrame"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown);
}
} while (false);
}
finally {
}
}
}
+243 -211
View File
@@ -1,255 +1,287 @@
import { _decorator, Button, Component, instantiate, Label, math, Node, Prefab, randomRange, Sprite, Tween, tween, Vec3 } from 'cc';
import { LocalSaveMgr } from '../framework/data/LocalSaveMgr';
import { UIManager } from '../framework/ui/UIManager';
import { UISwitcher } from '../framework/ui/UISwitcher';
import { AudioMgr } from '../framework/audio/AudioMgr';
import { PanelBase } from '../framework/ui/PanelBase';
// @structural-rewrite-v1
import { _decorator, Button, Label, Node, Prefab, Tween, Vec3 } from 'cc';
import { AssetController } from '../AssetController';
import { GameController } from '../GameController';
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; // 指针节点
pointer: Node = null;
@property
amplitude: number = 450; // 运动幅度
amplitude = 450;
@property
speed: number = 2; // 运动速度
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;
private time: number = 0;
runingPoint: boolean = false;
rewardDouble: number = 1;
onLoad() {
WinPanel.instance = this;
this.rewardBtn.node.on(Button.EventType.CLICK, this.onClickRewardBtn, this);
this.continueBtn.node.on(Button.EventType.CLICK, this.onClickContinueBtn, this);
}
onClickRewardBtn() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
if (Math.abs(this.pointPos) < 50) {
this.rewardDouble = 5
} else if (Math.abs(this.pointPos) < 150) {
this.rewardDouble = 4
} else if (Math.abs(this.pointPos) < 250) {
this.rewardDouble = 3
} else if (Math.abs(this.pointPos) < 350) {
this.rewardDouble = 2
} else if (Math.abs(this.pointPos) < 450) {
this.rewardDouble = 1
}
this.runingPoint = false
SdkMgr.instance.requestReward(() => {
let addPoint = Math.ceil((this.curResult.coinCount * this.rewardDouble))
let fromeMoney = LocalSaveMgr.instance.playerData.coin
LocalSaveMgr.instance.addCoin(addPoint)
let endMoney = LocalSaveMgr.instance.playerData.coin
this.flyMoney(fromeMoney, endMoney)
})
}
onClickContinueBtn() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
GameController.getInstance().backMain()
}
backMain() {
AudioMgr.inst.playOneShot(AssetController.instance.click)
GameController.getInstance().backMain()
}
start() {
this.time = 0;
}
curResult: BattleResult;
winTween1 = null
winTween2 = null
winTween3 = null
refresh() {
let result = GameController.getInstance().curLevel.levelResult
this.curResult = result
LocalSaveMgr.instance.addCoin(result.coinCount)
this.killEnemyCount.string = result.enemyCount.toString()
this.remainTimer.string = result.timer.toString()
this.coinLabel.string = LocalSaveMgr.instance.playerData.coin.toString()
this.coinCount.string = "0"
let startValue = 0;
let endValue = result.coinCount;
let duration = 1; // 1秒
let startValue2 = 0;
let endValue2 = result.timerCoin;
let startValue3 = 0;
let endValue3 = result.enemyCoin;
this.continueCoinLabel.string = result.coinCount.toString()
this.winTween1 = new Tween({ value: startValue })
.to(duration, { value: endValue }, {
onUpdate: (target, ratio) => {
// 在每一帧更新时调用
let currentValue = Math.floor(target.value);
this.coinCount.string = currentValue.toString();
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],
]));
}
})
.start();
this.winTween2 = new Tween({ value: startValue2 })
.to(duration, { value: endValue2 }, {
onUpdate: (target, ratio) => {
// 在每一帧更新时调用
let currentValue = Math.floor(target.value);
this.rewardTimerCoin.string = currentValue.toString();
}
})
.start();
this.winTween3 = new Tween({ value: startValue3 })
.to(duration, { value: endValue3 }, {
onUpdate: (target, ratio) => {
// 在每一帧更新时调用
let currentValue = Math.floor(target.value);
this.rewardKillCoin.string = currentValue.toString();
}
})
.start();
this.runPoint()
}
flyMoney(fromMoney: number, endMoney: number) {
this.rewardBtn.interactable = false
this.continueBtn.interactable = false
AudioMgr.inst.playOneShot(AssetController.instance.getCoin)
for (let index = 0; index < 10; index++) {
let item = instantiate(this.flyMoneyPrefab)
item.setParent(this.flyMoneyContent)
item.setPosition(this.rewardBtn.node.getPosition())
let delay = index * 0.1
tween(item)
.by(0.3, { position: new Vec3(randomRange(-150, 150), randomRange(-150, 150), 0) })
.delay(delay)
.to(0.6, { worldPosition: this.coinLabel.node.getWorldPosition() })
.call(() => {
item.destroy()
})
.start()
} while (false);
}
new Tween({ value: fromMoney })
.delay(0.9)
.to(1, { value: endMoney }, {
onUpdate: (target, ratio) => {
// 在每一帧更新时调用
let currentValue = Math.floor(target.value);
this.coinLabel.string = currentValue.toString();
}
}).call(() => {
// this.rewardBtn.node.active = false
// this.continueBtn.interactable = true
this.backMain()
})
.start()
}
runPoint() {
this.runingPoint = true
}
pointPos: number
update(dt: number) {
if (!this.runingPoint) return
// 更新时间
this.time += dt * this.speed;
// 使用正弦函数计算指针的位置
const x = this.amplitude * Math.sin(this.time);
this.pointPos = x
// 设置指针的位置
this.pointer.setPosition(new Vec3(x, 65, 0))
if (Math.abs(x) < 93.079) {
this.rewardDouble = 5
} else if (Math.abs(x) < 224.786) {
this.rewardDouble = 4
} else if (Math.abs(x) < 341.818) {
this.rewardDouble = 3
} else if (Math.abs(x) < 430) {
this.rewardDouble = 2
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 {
}
this.rewardCoin.string = Math.ceil((this.curResult.coinCount * this.rewardDouble)).toString()
}
protected onDestroy(): void {
this.winTween1.stop()
this.winTween2.stop()
this.winTween3.stop()
try {
do {
switch (0 as number) {
case 1: break;
case 2: break;
default: void (this["stopScoreTweens"]());
}
} while (false);
}
finally {
}
}
protected onOpen(): void {
AudioMgr.inst.playOneShot(AssetController.instance.win)
WinPanel.instance.time = 0;
WinPanel.instance.refresh()
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 {
}
}
}