| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278 |
- /*
- * @Author: mojunshou 1637302775@qq.com
- * @Date: 2025-04-11 10:16:41
- * @LastEditors: mojunshou 1637302775@qq.com
- * @LastEditTime: 2025-04-11 15:49:20
- * @Description:
- */
- // ServerHandler.ts
- import { smc } from '../SingletonModuleComp';
- import { GameEvent } from '../config/GameEvent';
- import { oops } from 'db://oops-framework/core/Oops';
- import { CocosHandler, CocosHandlerType } from './CocosHandler';
- import { ProtocolEvent } from './ProtocolEvent';
- export class ServerHandler {
- private static _inst: ServerHandler;
- public static get inst(): ServerHandler {
- if (!this._inst) {
- this._inst = new ServerHandler();
- }
- return this._inst;
- }
- private buildCallback(success: string, fail?: string) {
- const callback: any = { onSuccess: success };
- if (fail) callback.onFail = fail;
- return callback;
- }
- async sendMsgToServer(param: any) {
- const data: CocosHandlerType = {
- method: 'request.post',
- param: JSON.stringify(param)
- };
- return await CocosHandler.inst.sendMessageToAndroid(data, '服务器请求');
- }
- //微信登录
- wxLogin(code: string) {
- const param = {
- url: ProtocolEvent.WechatLogin,
- param: {
- code: code
- },
- callback: this.buildCallback('ServerHandler.inst.onWxLoginInfo', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- onWxLoginInfo(str: string) {
- console.log('[服务器] 微信登录返回', str);
- }
- getAccountInfo() {
- const param = {
- url: ProtocolEvent.AccountInfo,
- callback: this.buildCallback('ServerHandler.inst.onAccountInfo', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- onAccountInfo(str: string) {
- const data = JSON.parse(str);
- const account = smc.account.AccountModel;
- const game = smc.game.GameModel;
- account.uid = data.uid;
- account.accountName = data.nickname;
- account.headUrl = data.headImgUrl;
- account.isLogined = data.isBand;
- account.curLevel = data.currentLevelInfo.level;
- game.curScore = data.currentLevelInfo.score;
- game.targetScore = data.currentLevelConf.score;
- game.curLevelConfig = data.currentLevelConf;
- game.costInfo = data.handlingChargeConf;
- oops.message.dispatchEvent(GameEvent.UserLogin);
- }
- getDailyReward(level: number) {
- const param = {
- url: ProtocolEvent.GetDailyReward,
- param: { level },
- callback: this.buildCallback('ServerHandler.inst.onDailyReward', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- onDailyReward(str: string) {
- console.log('[服务器] 每日奖励返回', str);
- }
- //红包币-获取记录
- getDailyTaskReward() {
- this.getUserItemInfo();
- const param = {
- url: ProtocolEvent.GetDailyTask,
- callback: this.buildCallback('ServerHandler.inst.onDailyTaskReward', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- onDailyTaskReward(str: string) {
- console.log('[服务器] 红包任务数据返回', str);
- oops.message.dispatchEvent(GameEvent.openView, 'openRedBagView');
- }
- getUserItemInfo() {
- const param = {
- url: ProtocolEvent.UserItemInfo,
- callback: this.buildCallback('ServerHandler.inst.onUserItemInfo', 'ServerHandler.instonRequestFail')
- };
- this.sendMsgToServer(param);
- }
- onUserItemInfo(str: string) {
- const result = JSON.parse(str);
- const props = result.data.props;
- const account = smc.account.AccountModel;
- const game = smc.game.GameModel;
- account.gameCoin = props['1005'];
- account.cashCoin = props['1004'];
- account.goldCoin = props['1006'];
- game.handlingCharge = props['1009'];
- }
- //获取提现记录
- getRecordList() {
- const param = {
- url: ProtocolEvent.GetWithdrawRecord,
- param: {
- offset: 0,
- limit: 50
- },
- callback: this.buildCallback('ServerHandler.inst.onRecordList', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- //提现列表
- onRecordList(str: string) {
- const result = JSON.parse(str);
- if (result.count > 0) {
- smc.game.GameModel.recordList = result.data.list;
- }
- oops.message.dispatchEvent(GameEvent.openRecordView);
- }
- getGameAwardInfo() {
- const param = {
- url: ProtocolEvent.getGameAward,
- callback: this.buildCallback('ServerHandler.inst.onGameAwardInfo', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- onGameAwardInfo(str: string) {
- const result = JSON.parse(str);
- smc.game.GameModel.passViewInfo = result;
- oops.message.dispatchEvent(GameEvent.openView, 'openPassView');
- }
- getTxbfInfo() {
- const param = {
- url: ProtocolEvent.GetWithdrawReward,
- callback: this.buildCallback('ServerHandler.inst.onRebates', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- //提现返利
- onRebates(str: string) {
- console.log('[服务器] 提现返利信息', str);
- let result = JSON.parse(str);
- smc.game.GameModel.cashNum = result.props["1004"] / 100;
- oops.message.dispatchEvent(GameEvent.openView, "openRebateView")
- }
- //获取双倍奖励返回
- getDoubleSurprise() {
- const param = {
- url: ProtocolEvent.getDoubleAwardInfo,
- callback: this.buildCallback('ServerHandler.inst.onDoubleSurprise', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- //双倍惊喜返回
- onDoubleSurprise(str: string) {
- console.log('[服务器] 恭喜翻倍信息', str);
- oops.message.dispatchEvent(GameEvent.openView, "openDoubleSurprise");
- }
- //更新消除奖励
- updateEliminationReward(data: { level: number, score: number, count: number }) {
- const param = {
- url: ProtocolEvent.GetEliminationReward,
- param: {
- eliminationCount: data.count,
- level: data.level,
- score: data.score
- },
- callback: this.buildCallback('ServerHandler.inst.onEliminationSuccess', 'ServerHandler.inst.onRequestFail')
- };
- this.sendMsgToServer(param);
- }
- onEliminationSuccess(str: string) {
- console.log('[服务器] 消除成功返回', str);
- }
- getSign(price: number) {
- const param = {
- url: ProtocolEvent.AdVideoStart,
- param: { ecpm: price },
- callback: this.buildCallback('ServerHandler.inst.onSign')
- };
- this.sendMsgToServer(param);
- }
- onSign(str: string) {
- console.log('[服务器] 签名返回', str);
- let result = JSON.parse(str);
- smc.game.GameModel.sign = result?.sign || "";
- }
- //直接领取通关奖励
- getPassRewards() {
- const level = smc.account.AccountModel.curLevel;
- const param = {
- url: ProtocolEvent.GetPassReward,
- param: {
- level: level,
- },
- callback: this.buildCallback('ServerHandler.inst.onGetPassRewards', 'ServerHandler.inst.onRequestFail')
- }
- this.sendMsgToServer(param);
- }
- //直接领取通关奖励返回
- onGetPassRewards(str: string) {
- console.log('[服务器] 直接领取通关奖励成功返回', str);
- oops.message.dispatchEvent(GameEvent.showCoinAnimation);
- }
- //少量领取翻倍奖励
- getLittleRewards() {
- const level = smc.account.AccountModel.curLevel;
- const param = {
- url: ProtocolEvent.GetLittlePassReward,
- param: {
- level: level,
- },
- callback: this.buildCallback('ServerHandler.inst.onGetDoubleRewards', 'ServerHandler.inst.onRequestFail')
- }
- this.sendMsgToServer(param);
- }
- //少量领取翻倍奖励返回
- onGetDoubleRewards(str: string) {
- console.log('[服务器] 直接领取通关奖励成功返回', str);
- oops.message.dispatchEvent(GameEvent.showCoinAnimation);
- }
- onRequestFail(code: number, str: string) {
- console.log('[服务器] 请求失败', code, str);
- }
- }
- window["ServerHandler"] = ServerHandler;
|