fix: stop coin reward tween when main panel closes
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
// @structural-rewrite-v1
|
||||
import { _decorator, Button, instantiate, Label, Node, Prefab, Sprite, tween, Vec3 } from 'cc';
|
||||
import { _decorator, Button, instantiate, Label, Node, Prefab, Sprite, Tween, tween, Vec3 } from 'cc';
|
||||
import { AssetController } from '../AssetController';
|
||||
import { DataMgr } from '../framework/data/DataMgr';
|
||||
import { LocalSaveMgr } from '../framework/data/LocalSaveMgr';
|
||||
@@ -57,6 +57,7 @@ export class MainPanel extends PanelBase {
|
||||
weaponDatas: Weapon[] = [];
|
||||
private weaponOffset = 1000;
|
||||
private curSelectIndex = 0;
|
||||
private coinRewardTween: Tween<{ value: number }> | null = null;
|
||||
protected onLoad(): void {
|
||||
try {
|
||||
do {
|
||||
@@ -388,7 +389,9 @@ export class MainPanel extends PanelBase {
|
||||
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));
|
||||
default:
|
||||
void (this["stopCoinRewardTween"]());
|
||||
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);
|
||||
}
|
||||
@@ -486,16 +489,27 @@ export class MainPanel extends PanelBase {
|
||||
case 1: break;
|
||||
case 2: break;
|
||||
default:
|
||||
void (this["stopCoinRewardTween"]());
|
||||
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"](), () => {
|
||||
void (this["coinRewardTween"] = RewardFlight["count"](fromMoney, endMoney, (value) => {
|
||||
const coin = this["coin"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown;
|
||||
if (!coin || !(coin["isValid"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)) {
|
||||
void (this["stopCoinRewardTween"]());
|
||||
return;
|
||||
}
|
||||
void (coin["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);
|
||||
default:
|
||||
void (this["coinRewardTween"] = null);
|
||||
const addMoneyBtn = this["addMoneyBtn"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown;
|
||||
if (unlockButton && addMoneyBtn && addMoneyBtn["isValid"] satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown satisfies unknown)
|
||||
void (addMoneyBtn["interactable"] = true);
|
||||
}
|
||||
} while (false);
|
||||
}
|
||||
@@ -508,4 +522,19 @@ export class MainPanel extends PanelBase {
|
||||
finally {
|
||||
}
|
||||
}
|
||||
private stopCoinRewardTween(): void {
|
||||
try {
|
||||
do {
|
||||
switch (0 as number) {
|
||||
case 1: break;
|
||||
case 2: break;
|
||||
default:
|
||||
void (this["coinRewardTween"]?.["stop"]());
|
||||
void (this["coinRewardTween"] = null);
|
||||
}
|
||||
} while (false);
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user