IEnumerator LotteryAnimationEffectCoroutine()
        {
            int i       = 0;
            float speed = 0.05f;

            while (i != LotteryIx)
            {
                i = (++i) % LotteryRewards.Count;
                LotteryCircle.localPosition = LotteryRewards[i].localPosition;
                if (-1 != LotteryIx)
                {
                    speed += 0.01f;
                }
                yield return(new WaitForSeconds(speed));
            }
            yield return(new WaitForSeconds(0.1f));

            if (-1 != RewardItemId && RewardItemCount > 0)
            {
                var dict = new Dictionary <int, int>();
                dict.Add(RewardItemId, RewardItemCount);
                var e1 = new ShowItemsArguments
                {
                    Items = dict
                };
                EventDispatcher.Instance.DispatchEvent(new Show_UI_Event(UIConfig.ShowItemsFrame, e1));
            }

            RefreshMask();
        }
    private IEnumerator ApplyBuyChagreItem()
    {
        using (new BlockingLayerHelper(0))
        {
            var msg = NetManager.Instance.BuyWingCharge(0);
            yield return(msg.SendAndWaitUntilDone());

            if (msg.State == MessageState.Reply && msg.ErrorCode == (int)ErrorCodes.OK)
            {
                EventDispatcher.Instance.DispatchEvent(new ShowUIHintBoard(431));

                if (DataModel != null && DataModel.WingChargeItems != null && DataModel.WingChargeItems.Count > 1)
                {
                    var tempDic = new Dictionary <int, int>();
                    tempDic.Add(DataModel.WingChargeItems[0].ItemId, DataModel.WingChargeItems[0].Count);
                    tempDic.Add(DataModel.WingChargeItems[1].ItemId, DataModel.WingChargeItems[1].Count);
                    var e = new ShowItemsArguments
                    {
                        Items = tempDic
                    };
                    EventDispatcher.Instance.DispatchEvent(new Show_UI_Event(UIConfig.ShowItemsFrame, e));
                }
            }
            else
            {
                GameUtils.ShowNetErrorHint(msg.ErrorCode);
            }
        }
    }
Beispiel #3
0
        private IEnumerator ApplyGainStartResponItem(int index)
        {
            using (new BlockingLayerHelper(0))
            {
                var _msg = NetManager.Instance.ApplyGetFirstChargeItem(index);
                yield return(_msg.SendAndWaitUntilDone());

                if (_msg.State == MessageState.Reply && _msg.ErrorCode == (int)ErrorCodes.OK)
                {
                    if (_msg.Response == 0) // 失敗
                    {
                    }
                    else if (_msg.Response == 1) // 成功
                    {
                        var _tempDic = new Dictionary <int, int>();
                        if (index == 0 && m_DataModel != null)
                        {
                            foreach (var _data in m_DataModel.RechargeItemsTab1)
                            {
                                _tempDic.Add(_data.ItemId, _data.Count);
                            }
                        }
                        else if (index == 1 && m_DataModel != null)
                        {
                            foreach (var _data in m_DataModel.RechargeItemsTab2)
                            {
                                _tempDic.Add(_data.ItemId, _data.Count);
                            }
                        }
                        else if (index == 2 && m_DataModel != null)
                        {
                            foreach (var _data in m_DataModel.RechargeItemsTab3)
                            {
                                _tempDic.Add(_data.ItemId, _data.Count);
                            }
                        }

                        var _e = new ShowItemsArguments
                        {
                            Items = _tempDic
                        };
                        EventDispatcher.Instance.DispatchEvent(new Show_UI_Event(UIConfig.ShowItemsFrame, _e));

                        var _iEvent = new FirstChargeGetItemSuccess_Event();
                        EventDispatcher.Instance.DispatchEvent(_iEvent);
                    }
                }
                else
                {
                    GameUtils.ShowNetErrorHint(_msg.ErrorCode);
                }
            }
        }