| | |
| | |
|
| | | ConsumeRebateModel consumeRebateModel { get { return ModelCenter.Instance.GetModel<ConsumeRebateModel>(); } }
|
| | |
|
| | | MultipleExpModel multipleExpModel { get { return ModelCenter.Instance.GetModel<MultipleExpModel>(); } }
|
| | |
|
| | | List<int> openActivitys = new List<int>();
|
| | | List<int> activityReds = new List<int>();
|
| | | List<int> alreadyOpenActivitys = new List<int>();
|
| | |
|
| | | protected override void BindController()
|
| | | {
|
| | |
| | | protected override void OnPreOpen()
|
| | | {
|
| | | TimeUtility.OnServerOpenDayRefresh += OnStepServerDayEvent;
|
| | | OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
|
| | | for (int i = 0; i < m_SortArray.Count; i++)
|
| | | {
|
| | | m_ActivitySpreadDict[m_SortArray[i]] = false;
|
| | |
| | | impactRankModel.presentSelectType = impactRankModel.GetDefaultSelectType();
|
| | | impactRankModel.gotoImpactRankType = 0;
|
| | | envelopeModel.selectType = 1;
|
| | | CheckAlreadyOpen();
|
| | | UpdateFunctionBtns();
|
| | | }
|
| | |
|
| | |
| | | protected override void OnPreClose()
|
| | | {
|
| | | TimeUtility.OnServerOpenDayRefresh -= OnStepServerDayEvent;
|
| | | OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
|
| | | CloseOtherWin();
|
| | | WindowCenter.Instance.Open<MainInterfaceWin>();
|
| | | impactRankModel.gotoImpactRankType = 0;
|
| | |
| | | activityReds.Add(3);
|
| | | }
|
| | | }
|
| | |
|
| | | if (OpenServerActivityCenter.Instance.IsFlashSaleOpen())
|
| | | {
|
| | | openActivitys.Add(4);
|
| | |
| | | activityReds.Add(4);
|
| | | }
|
| | | }
|
| | |
|
| | | if (OpenServerActivityCenter.Instance.IsImpactRankOpen())
|
| | | {
|
| | | openActivitys.Add(0);
|
| | |
| | | activityReds.Add(0);
|
| | | }
|
| | | }
|
| | |
|
| | | if (OpenServerActivityCenter.Instance.IsRedEnvelopeOpen())
|
| | | {
|
| | | openActivitys.Add(2);
|
| | |
| | | envelopeModel.selectType = 2;
|
| | | }
|
| | | }
|
| | |
|
| | | if (OpenServerActivityCenter.Instance.IsConsumeRebateOpen())
|
| | | {
|
| | | openActivitys.Add(1);
|
| | | if (consumeRebateModel.consumeRebateRedpoint.state == RedPointState.Simple)
|
| | | {
|
| | | activityReds.Add(1);
|
| | | }
|
| | | }
|
| | | if (OpenServerActivityCenter.Instance.IsMultipleExpOpen())
|
| | | {
|
| | | openActivitys.Add(5);
|
| | | if (multipleExpModel.multipleExpRedpoint.state == RedPointState.Simple)
|
| | | {
|
| | | activityReds.Add(5);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | {
|
| | | openActivitys.Sort(Compare);
|
| | | return openActivitys[0];
|
| | | }
|
| | | }
|
| | |
|
| | | void CheckAlreadyOpen()
|
| | | {
|
| | | alreadyOpenActivitys.Clear();
|
| | | if (OpenServerActivityCenter.Instance.IsTimeLimitGiftOpen())
|
| | | {
|
| | | alreadyOpenActivitys.Add(3);
|
| | | }
|
| | | if (OpenServerActivityCenter.Instance.IsFlashSaleOpen())
|
| | | {
|
| | | alreadyOpenActivitys.Add(4);
|
| | | }
|
| | | if (OpenServerActivityCenter.Instance.IsImpactRankOpen())
|
| | | {
|
| | | alreadyOpenActivitys.Add(0);
|
| | | }
|
| | | if (OpenServerActivityCenter.Instance.IsRedEnvelopeOpen())
|
| | | {
|
| | | alreadyOpenActivitys.Add(2);
|
| | | }
|
| | | if (OpenServerActivityCenter.Instance.IsConsumeRebateOpen())
|
| | | {
|
| | | alreadyOpenActivitys.Add(1);
|
| | | }
|
| | | if (OpenServerActivityCenter.Instance.IsMultipleExpOpen())
|
| | | {
|
| | | alreadyOpenActivitys.Add(5);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | |
|
| | | private void RefreshOpenActivityCell(OpenServerActivityCell _cell)
|
| | | {
|
| | | _cell.title.text = Language.Get(StringUtility.Contact("OSActivityTitle_", _cell.index));
|
| | | switch (_cell.index)
|
| | | {
|
| | | case 5:
|
| | | OperationBase operationBase;
|
| | | if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.MultipleExp, out operationBase))
|
| | | {
|
| | | _cell.title.text = Language.Get("ExpActivity_Text5", (operationBase as OperationMultiExp).GetMultipleCHS());
|
| | | }
|
| | | break;
|
| | | default:
|
| | | _cell.title.text = Language.Get(StringUtility.Contact("OSActivityTitle_", _cell.index));
|
| | | break;
|
| | | }
|
| | | _cell.order = _cell.index;
|
| | | _cell.redpoint.redpointId = MainRedDot.REDPOINT_OPENSERVER * 100 + _cell.index;
|
| | | _cell.ChangeState(_cell.order == functionOrder ? TitleBtnState.Click : TitleBtnState.Normal);
|
| | |
| | | for (int i = 0; i < m_SortArray.Count; i++)
|
| | | {
|
| | | var sort = m_SortArray[i];
|
| | | if (!alreadyOpenActivitys.Contains(sort))
|
| | | {
|
| | | continue;
|
| | | }
|
| | | switch (sort)
|
| | | {
|
| | | case 0:
|
| | | if (!OpenServerActivityCenter.Instance.IsImpactRankOpen())
|
| | | {
|
| | | continue;
|
| | | }
|
| | | m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
|
| | | if (functionOrder != sort)
|
| | | {
|
| | |
| | | }
|
| | | break;
|
| | | case 1:
|
| | | if (!OpenServerActivityCenter.Instance.IsConsumeRebateOpen())
|
| | | {
|
| | | continue;
|
| | | }
|
| | | m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
|
| | | continue;
|
| | | case 2:
|
| | | if (!OpenServerActivityCenter.Instance.IsRedEnvelopeOpen())
|
| | | {
|
| | | continue;
|
| | | }
|
| | | m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
|
| | | if (!m_ActivitySpreadDict[sort])
|
| | | {
|
| | |
| | | m_ActivityCtrl.AddCell(ScrollerDataType.Normal, sort * 100 + 2);
|
| | | break;
|
| | | case 3:
|
| | | if (!OpenServerActivityCenter.Instance.IsTimeLimitGiftOpen())
|
| | | {
|
| | | continue;
|
| | | }
|
| | | m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
|
| | | break;
|
| | | case 4:
|
| | | if (!OpenServerActivityCenter.Instance.IsFlashSaleOpen())
|
| | | {
|
| | | continue;
|
| | | }
|
| | | m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
|
| | | break;
|
| | | case 5:
|
| | | m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
|
| | | break;
|
| | | }
|
| | |
| | | WindowCenter.Instance.Open<FlashSaleWin>(true);
|
| | | }
|
| | | break;
|
| | | case 5:
|
| | | if (windowState == WindowState.Opened)
|
| | | {
|
| | | WindowCenter.Instance.OpenWithoutAnimation<MultipleExpWin>();
|
| | | }
|
| | | else
|
| | | {
|
| | | WindowCenter.Instance.Open<MultipleExpWin>(true);
|
| | | }
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | WindowCenter.Instance.CloseImmediately<OSTimeLimitGiftWin>();
|
| | | WindowCenter.Instance.CloseImmediately<FlashSaleWin>();
|
| | | WindowCenter.Instance.CloseImmediately<ConsumeRebateWin>();
|
| | | WindowCenter.Instance.CloseImmediately<MultipleExpWin>();
|
| | | }
|
| | |
|
| | | private int Compare(int x, int y)
|
| | |
| | | var index_y = m_SortArray.IndexOf(y);
|
| | | return index_x.CompareTo(index_y);
|
| | | }
|
| | |
|
| | | private void OperationTimeUpdateEvent(Operation type)
|
| | | {
|
| | | if (type == Operation.MultipleExp)
|
| | | {
|
| | | m_ActivityCtrl.m_Scorller.RefreshActiveCellViews();
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
|