/// <summary> /// 获取转盘数据 /// </summary> /// <param name="_pt"></param> protected void S2C_GetLotteryInfo(Pt _pt) { pt_lucky_wheel_info_d961 pt = _pt as pt_lucky_wheel_info_d961; if (pt != null) { if (pt.rest_time <= 0) { lotteryData = null; //if (ServerData == null) //{ // GameCenter.wdfActiveMng.isGiftOpen = false; // GameCenter.mainPlayerMng.SetServerActiveOpen(FunctionType.OPENSERVER, false); // if (GameCenter.uIMng.CurOpenType == GUIType.OPENSERVER) // { // GameCenter.uIMng.SwitchToUI(GUIType.NONE); // } // GameCenter.messageMng.AddClientMsg(427); //} } else { //Debug.Log("获取转盘数据 "); GameCenter.wdfActiveMng.isGiftOpen = true; if (lotteryData == null) { lotteryData = new WdfLotteryData(pt); } else { lotteryData.Update(pt); } } SetOpenServerOpenState(); if (OnLotteryDataUpdate != null) { OnLotteryDataUpdate(); } } }
// Use this for initialization void Start() { if (loterryOnceUseDiamond != null) { UIEventListener.Get(loterryOnceUseDiamond.gameObject).onClick = LoterryOnceUseDiamond; } if (loterryTenTimes != null) { UIEventListener.Get(loterryTenTimes.gameObject).onClick = LoterryTenTimes; } if (recordLoterry != null) { UIEventListener.Get(recordLoterry.gameObject).onClick = OnClickRecordLoterry; } if (closeRecord != null) { UIEventListener.Get(closeRecord.gameObject).onClick = delegate { recordGo.SetActive(false); } } ; } #endregion #region 事件 /// <summary> /// 奖池数量刷新 /// </summary> void RefreshRewardCount() { if (loteryInfo != null && curAllCount != null) { curAllCount.text = loteryInfo.allRewarCount.ToString(); } if (price2 != null) { price2.text = loteryInfo.price2.ToString(); } if (firstprice != null) { firstprice.text = ((loteryInfo.price2) / 2).ToString(); } if (firstRecharge != null) { firstRecharge.SetActive(!loteryInfo.isLotteriedTenTimes); } } void Refresh() { loteryInfo = GameCenter.openServerRewardMng.lotteryData; if (this == null) { return; } if (loteryInfo == null) { return; } this.gameObject.SetActive(true); if (basicLotteryResult != null) { basicLotteryResult.gameObject.SetActive(false); } if (advanceLotteryResult != null) { advanceLotteryResult.gameObject.SetActive(false); } if (remainTime != null) { remainTime.StartIntervalTimer(loteryInfo.restTime); remainTime.onTimeOut = (x) => { GameCenter.openServerRewardMng.C2S_AskLotteryInfo(); }; } if (price1 != null) { price1.text = loteryInfo.price1.ToString(); } RefreshRewardCount(); if (loteryInfo.basicReward.Count > 0) { if (basisUi != null) { basisUi.ResetData(); basisUi.SetReward(loteryInfo.basicReward); } } if (loteryInfo.advanceReward.Count > 0) { if (advanceUi != null) { advanceUi.ResetData(); advanceUi.SetReward(loteryInfo.advanceReward, true); } } } void RefreshResult() { if (advanceUi != null) { advanceUi.ResetData(); } if (basisUi != null) { basisUi.ResetData(); } List <lucky_wheel_reward_info> lottryResult = GameCenter.openServerRewardMng.lottryResult; if (lottryResult.Count > 1)//十抽结果 { if (advanceLotteryResult != null) { GameCenter.openServerRewardMng.isRotate = false; advanceLotteryResult.gameObject.SetActive(true); advanceLotteryResult.SetData(lottryResult); } } else//一抽结果 { if (basisUi != null) { basisUi.ResetData(); if (lottryResult.Count > 0) { basisUi.BegainRotate(lottryResult[0], lottryResult[0].wheel_type == 2); } } } } /// <summary> /// 抽一次转完后打开结果 /// </summary> void AfterRotateOpenResult() { if (GameCenter.openServerRewardMng.IsRotateOver) { if (GameCenter.openServerRewardMng.lottryResult.Count > 0) { if (GameCenter.openServerRewardMng.lottryResult[0].wheel_type == 2)//奖励一次进阶转盘 { if (advanceUi != null) { advanceUi.BegainRotate(GameCenter.openServerRewardMng.lottryResult[0]); GameCenter.openServerRewardMng.ReSetResult(); } } else//获得普通转盘奖励 { if (basicLotteryResult != null) { GameCenter.openServerRewardMng.isRotate = false; basicLotteryResult.gameObject.SetActive(true); basicLotteryResult.SetData(GameCenter.openServerRewardMng.lottryResult); } } } else { if (basicLotteryResult != null) { basicLotteryResult.gameObject.SetActive(true); basicLotteryResult.SetData(GameCenter.openServerRewardMng.lottryResultOne); } } } } /// <summary> /// 销毁预制 /// </summary> void Destroyitem() { if (rewardDrid != null) { rewardDrid.transform.DestroyChildren(); } } /// <summary> /// 刷新抽奖记录 /// </summary> void RefreshReWardRecord() { RewardRecordList.Clear(); Destroyitem(); List <lucky_wheel_record> recordList = GameCenter.openServerRewardMng.lottryRecord; if (item != null) { for (int i = 0, max = recordList.Count; i < max; i++) { EquipmentInfo info = new EquipmentInfo((int)recordList[i].item_type, (int)recordList[i].amount, EquipmentBelongTo.PREVIEW); GameObject go = GameObject.Instantiate(item); go.transform.parent = rewardDrid.transform; go.transform.localPosition = new Vector3(0, 40 * i, 0); go.transform.localScale = Vector3.one; go.gameObject.SetActive(true); RewardRecord record = go.GetComponent <RewardRecord>(); string str1 = recordList[i].name; string str2 = info.ItemStrColor + info.ItemName + "x" + recordList[i].amount; int[] arrayId = { i, info.EID }; //Debug.Log("玩家的名字:= " + GameCenter.treasureHouseMng.playerName[i]); //string str2 = ConfigMng.Instance.GetUItext(22) if (arrayId != null && !string.IsNullOrEmpty(str1) && !string.IsNullOrEmpty(str2)) { record.FillInfo(str1, str2, arrayId); RewardRecordList.Add(record); } } } else { Debug.LogError("名为 item 的预制为空"); } //rewardDrid.repositionNow = true; } void LoterryOnceUseDiamond(GameObject _go) { if (GameCenter.openServerRewardMng.isRotate) { return; } if (advanceUi != null) { advanceUi.ResetData(); } if (basisUi != null) { basisUi.ResetData(); } GameCenter.openServerRewardMng.C2S_AskLottery(1); } void LoterryTenTimes(GameObject _go) { if (GameCenter.openServerRewardMng.isRotate) { return; } if (advanceUi != null) { advanceUi.ResetData(); } if (basisUi != null) { basisUi.ResetData(); } GameCenter.openServerRewardMng.C2S_AskLottery(2); } void OnClickRecordLoterry(GameObject _go) { GameCenter.openServerRewardMng.C2S_AskLotteryRecord(); recordGo.SetActive(true); } #endregion }