/// <summary> /// 初始化记录面板 /// </summary> /// <param name="recordsD"></param> /// <param name="recordsI"></param> /// <param name="scoresD"></param> public void InitHistory(int[] recordsD, int recordsI, int[] scoresD) { //Debug.LogError("recordsD.Length:" + recordsD.Length); //目前服務器上返的值为40,前端只有24个记录位置,ScoresD依然是8个 recordsD = recordsD.Skip(0).Take(24).ToArray(); //截取24个=>数组第一位对应的是最后出的奖 if (recordsI > 23) { recordsI = 23; } ScoresDatas = scoresD; RecordsDatas = recordsD; RecordsIndex = recordsI; PageIndex = 0; for (int i = 0; i < Wheel.GetInstance().ItemsValue.Length; i++) { Scores[i].transform.FindChild("Sprite").transform.GetComponent <UISprite>().spriteName = "car_" + (int)Wheel.GetInstance().ItemsValue[i]; Scores[i].transform.FindChild("Sprite").transform.GetComponent <UISprite>().MakePixelPerfect(); Scores[i].transform.FindChild("Sprite").transform.localScale = new Vector3(0.4f, 0.4f, 1f); Scores[i].transform.FindChild("Label").transform.GetComponent <UILabel>().text = ScoresDatas[i].ToString(); } for (int i = 0; i < RecordsDatas.Length; i++) { int index = i > RecordsIndex ? RecordsDatas.Length + RecordsIndex - i : RecordsIndex - i; Records[index].spriteName = "car_" + (RecordsDatas[i] % ScoresDatas.Length); Records[index].MakePixelPerfect(); Records[index].transform.localScale = new Vector3(0.4f, 0.4f, 1f); } RefreshPage(); }
/// <summary> /// 刷新界面 /// </summary> public void RefreshHistory() { for (int i = 0; i < Wheel.GetInstance().ItemsValue.Length; i++) { Scores[i].transform.FindChild("Label").transform.GetComponent <UILabel>().text = ScoresDatas[i].ToString(); } for (int i = 0; i < RecordsDatas.Length; i++) { int index = i > RecordsIndex ? RecordsDatas.Length + RecordsIndex - i : RecordsIndex - i; //YxDebug.Log("I == " + i + " Index == " + index); Records[index].spriteName = "car_" + (RecordsDatas[i] % ScoresDatas.Length); Records[index].MakePixelPerfect(); Records[index].transform.localScale = new Vector3(0.4f, 0.4f, 1f); } RefreshPage(); }
public void OnDrawFinish() { int betint = LuckIndex % Wheel.GetInstance().ItemsValue.Length; BetType betT = (BetType)betint; BetType doubleT = BetType.BMFP; if ((int)betT < 4) { doubleT = (BetType)8; } else { doubleT = (BetType)9; } RegionsDic[betT].PlayLuckAnim(); RegionsDic[doubleT].PlayLuckAnim(); }
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; } }