diff --git a/assets/Game/scripts/SlotBar.ts b/assets/Game/scripts/SlotBar.ts index ba77577..473e4cd 100644 --- a/assets/Game/scripts/SlotBar.ts +++ b/assets/Game/scripts/SlotBar.ts @@ -441,6 +441,19 @@ export class SlotBar extends Component { } } + async onConfirmErr2(): Promise { + try { + let balacneData = await callGameBalanceApi({ GameId: getGameId() }); + this.setBalance(balacneData.Balance) + return balacneData.Balance; + } catch (err) { + console.log('获取余额失败') + return null; + } finally { + this.isGetBalance = false; + } + } + private currentTipTween: Tween = null; private hideTimer: number = null; diff --git a/assets/Game/scripts/SlotScene.ts b/assets/Game/scripts/SlotScene.ts index 34417b6..613cc2c 100644 --- a/assets/Game/scripts/SlotScene.ts +++ b/assets/Game/scripts/SlotScene.ts @@ -12,7 +12,7 @@ import { SlotBar } from "./SlotBar"; import { SlotGame } from "./SlotGame"; import { BigWinUI } from "./game/BigWinUI"; import { GameDataManager } from "../../Loading/scripts/manager/GameDataManager"; -import { callGameApi, getFromUrl } from "../../Loading/scripts/comm"; +import { callGameApi, callGameBalanceApi, getFromUrl, getGameId } from "../../Loading/scripts/comm"; import { TipPanel } from "./game/TipPanel"; import { I18nManager } from "../../Loading/scripts/manager/I18nManager"; import { TotalWin } from "./game/TotalWin"; @@ -88,6 +88,8 @@ export class SlotScene extends Component { private lastSpinInfo: any = null; private spinData: any = null; private isReceiveMsg: boolean = false; + private isErr2: boolean = false; + private objectId: string[] = []; @@ -125,6 +127,11 @@ export class SlotScene extends Component { // this.FreeSpinEnter.show(8) // this.FreeSpinAdd.show(5) // this.BigWinUI.show(800000, WIN_TYPE.SUPER_MEGA_WIN, 10000) + if (!this.gameInfo.CloseBuyGame) { + this.slotGame.showFeatureBuy( + this.slotBar.getBet() * this.gameInfo.BuyMul > this.gameInfo.MaxBuyBet + ); + } } private async init() { @@ -295,10 +302,16 @@ export class SlotScene extends Component { if (!isFreeSpin) { this.slotBar.setWin(0); } - if (this.slotBar.getBalance() < (isFeatureBuy ? this.slotBar.getBet() * this.gameInfo.BuyMul : this.slotBar.getBet()) && !isFreeSpin && !GameDataManager.instance.frb.Ongoing) { + let curBalanceData = await callGameBalanceApi({ GameId: getGameId() }) + let curBalance = curBalanceData.Balance + if (!curBalance) { + curBalance = this.slotBar.getBalance() + } + if (curBalance < (isFeatureBuy ? this.slotBar.getBet() * this.gameInfo.BuyMul : this.slotBar.getBet()) && !isFreeSpin && !GameDataManager.instance.frb.Ongoing) { //余额不足不经过服务器,在客户端拦截 - this.showErrorTip(2, () => { this.slotBar.onClickBalance() }); + this.showErrorTip(2, () => { this.slotBar.onConfirmErr2() }); this.handleErrSpin(); + this.isErr2 = true; return } try { @@ -408,7 +421,7 @@ export class SlotScene extends Component { } - private handleErrSpin() { + private handleErrSpin(isErr2 = false) { this.spinInfo = this.lastSpinInfo; this.spinData = this.spinInfo.Data; this.slotGame.setRollerIconRule( @@ -417,8 +430,8 @@ export class SlotScene extends Component { this.gameState.isAutoSpin = false; this.spinData.AllScore = 0; this.slotGame.stopScroll(this.spinData, false, null); - this.slotGame.manualStop(); - this.slotBar.setBalance(this.spinInfo.Balance); + // this.slotGame.manualStop(); + this.slotBar.setBalance(isErr2 ? this.slotBar.getBalance() : this.spinInfo.Balance); this.slotBar.closeAutoSpin(); } @@ -736,7 +749,14 @@ export class SlotScene extends Component { } private async normalStop(isReconnect: boolean = false) { - this.slotBar.setBalance(this.spinData.Balance); + + if (this.isErr2) { + this.isErr2 = false; + this.slotBar.setBalance(this.slotBar.getBalance()); + } else { + this.slotBar.setBalance(this.spinData.Balance); + + } let winType = this.slotGame.checkWinType(this.spinData.AllScore); await this.handleWinResult(winType, isReconnect, false, () => { diff --git a/assets/Loading/scripts/comm.ts b/assets/Loading/scripts/comm.ts index 564a204..72e3577 100644 --- a/assets/Loading/scripts/comm.ts +++ b/assets/Loading/scripts/comm.ts @@ -7,7 +7,7 @@ import { PREVIEW } from "cc/env" const gameId = "rp_11001"; // let apiaddr = "https://rpgames-api.rpfafafahkdev.com"; let apiaddr = ""; -let token = "eyJQIjoxMDAwMDEsIkUiOjE3ODExMTY3MjUsIlMiOjEwMDMsIkQiOiJycF8xMTAwMSJ9.RlUvhgdSk7EljKfAHUreLckvUQQ43PGQrtvgeDIk1Bg"; +let token = "eyJQIjoxMDA5NDksIkUiOjE3ODExODU1MzgsIlMiOjEwMDIsIkQiOiJycF8xMTAwMSJ9.MEuOw7xQRgnH1-0hQFXTspVZbXMEsvPBF2BbUFq3wBg"; let language = "en" let currency = "THB"