public override void GameResponseStatus(int type, ISFSObject response) { YxDebug.Log("Request == " + (RequestType)type); if (response.ContainsKey("playerlist")) { BankerMgr.RefreshPlayerList(response.GetUtfStringArray("playerlist")); } switch ((RequestType)type) { case RequestType.Bet: if (response.ContainsKey("golds")) // -- 统一走else逻辑 { YxDebug.Log("收到重复上轮"); var golds = response.GetIntArray("golds"); var seat = response.GetInt("seat"); if (seat == App.GameData.SelfSeat) { RightBottomMgr.LastTime.isEnabled = true; } for (int i = 0; i < golds.Length; i++) { AddBet(golds[i], i, seat, true); } } else { int p = response.GetInt("p"); int gold = response.GetInt("gold"); int seat = response.GetInt("seat"); AddBet(gold, p, seat); } break; case RequestType.Reward: break; case RequestType.ApplyBanker: break; case RequestType.ApplyQuit: break; case RequestType.BeginBet: CanQuit = true; Loading.SetActive(false); RightBottomMgr.CurNum++; ResultManager.GetInstance().CloseResult(); ClearAllBet(); BetManager.GetInstance().IsBeginBet = true; StartCountNum(); Wheel.GetInstance().Selected.GetComponent <TweenAlpha>().enabled = false; Wheel.GetInstance().Selected.GetComponent <TweenAlpha>().value = Wheel.GetInstance().Selected.GetComponent <TweenAlpha>().from; break; case RequestType.EndBet: Loading.SetActive(false); BetManager.GetInstance().IsBeginBet = false; //开始摇奖 Wheel.GetInstance().StartTrun(); RefreshRepeatData(RightBottomMgr.UpBetValue.ToArray()); break; case RequestType.GiveCards: int carIndex = response.GetInt("carInx"); //针对超过20的服务器反馈进行处理 if (carIndex >= 20 && Wheel.GetInstance().Items.Length <= 20) //=>条件2考虑兼容问题 { carIndex = carIndex % 8; } LuckIndex = carIndex; Wheel.GetInstance().StopTrun(carIndex, OnDrawFinish); break; case RequestType.Result: CanQuit = true; Loading.SetActive(false); RightBottomMgr.RefreshLastTimeBtn(); if (!BankerMgr.IsBanker(-1)) { BankerMgr.Banker.WinTotalCoin += response.GetInt("bankWin"); var bankerCoin = "¥" + YxUtiles.ReduceNumber(BankerMgr.Banker.WinTotalCoin); BankerMgr.Banker.WinTotalCoinLabel.Text(bankerCoin); } var self = App.GameData.GetPlayer(); self.Coin = response.GetLong("total"); self.WinTotalCoin += response.GetInt("win"); YxDebug.Log("---------结算-----------"); ResultManager.GetInstance().OpenResult(response); HistoryRecord.GetInstance().RefreshData(response.GetInt("carInx"), 1); //YxDebug.Log("result"); break; case RequestType.BankerList: //UserManager.GetInstance().BankerSeat = response.GetInt("banker"); if (response.GetInt("banker") == -1) { BankerMgr.SetBankerInfo(null); } BankerMgr.RefreshBankerList(response.GetSFSArray("bankers"), response.GetInt("banker")); break; default: YxDebug.Log("不存在的服务器交互!"); break; } }
void Awake() { _instance = this; }