From 0012445c0109fa67987800a1bac8f32e989b2d19 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期三, 15 八月 2018 15:16:01 +0800
Subject: [PATCH] Merge branch 'master' into leonard
---
System/OpenServerActivity/OpenServerActivityWin.cs | 250 +++++++++++++------------------------------------
1 files changed, 68 insertions(+), 182 deletions(-)
diff --git a/System/OpenServerActivity/OpenServerActivityWin.cs b/System/OpenServerActivity/OpenServerActivityWin.cs
index c102975..4908f59 100644
--- a/System/OpenServerActivity/OpenServerActivityWin.cs
+++ b/System/OpenServerActivity/OpenServerActivityWin.cs
@@ -30,24 +30,8 @@
}
}
- OSTimeLimitGiftModel m_OSTimeLimitGiftModel;
- OSTimeLimitGiftModel timeLimitGiftModel {
- get {
- return m_OSTimeLimitGiftModel ?? (m_OSTimeLimitGiftModel = ModelCenter.Instance.GetModel<OSTimeLimitGiftModel>());
- }
- }
-
- FlashSaleModel flashSaleModel { get { return ModelCenter.Instance.GetModel<FlashSaleModel>(); } }
-
- ConsumeRebateModel consumeRebateModel { get { return ModelCenter.Instance.GetModel<ConsumeRebateModel>(); } }
-
- MultipleExpModel multipleExpModel { get { return ModelCenter.Instance.GetModel<MultipleExpModel>(); } }
-
- MultipleRealmPointModel multipleRealmPointModel { get { return ModelCenter.Instance.GetModel<MultipleRealmPointModel>(); } }
- BossRebornModel bossRebornModel { get { return ModelCenter.Instance.GetModel<BossRebornModel>(); } }
-
List<int> openActivitys = new List<int>();
- List<int> activityReds = new List<int>();
+ List<int> priorityActivitys = new List<int>();
List<int> alreadyOpenActivitys = new List<int>();
protected override void BindController()
@@ -66,8 +50,7 @@
{
TimeUtility.OnServerOpenDayRefresh += OnStepServerDayEvent;
OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
- OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
- OperationTimeHepler.Instance.operationAdvanceEvent += OperationAdvanceEvent;
+ OpenServerActivityCenter.Instance.openServerActivityStateChange += OpenServerActivityStateChange;
for (int i = 0; i < m_SortArray.Count; i++)
{
m_ActivitySpreadDict[m_SortArray[i]] = false;
@@ -81,9 +64,10 @@
protected override void OnActived()
{
- if (functionOrder == 1)
+ if (alreadyOpenActivitys.Count == 0)
{
- functionOrder = 0;
+ CloseImmediately();
+ return;
}
if (functionOrder == 0 && !WindowJumpMgr.Instance.IsJumpState)
{
@@ -96,6 +80,10 @@
}
else
{
+ if (!alreadyOpenActivitys.Contains(functionOrder))
+ {
+ functionOrder = GetDefaultSelect();
+ }
for (int i = 0; i < m_SortArray.Count; i++)
{
m_ActivitySpreadDict[m_SortArray[i]] = m_SortArray[i] == functionOrder;
@@ -119,8 +107,7 @@
{
TimeUtility.OnServerOpenDayRefresh -= OnStepServerDayEvent;
OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
- OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
- OperationTimeHepler.Instance.operationAdvanceEvent -= OperationAdvanceEvent;
+ OpenServerActivityCenter.Instance.openServerActivityStateChange -= OpenServerActivityStateChange;
CloseOtherWin();
WindowCenter.Instance.Open<MainInterfaceWin>();
impactRankModel.gotoImpactRankType = 0;
@@ -134,82 +121,30 @@
int GetDefaultSelect()
{
openActivitys.Clear();
- activityReds.Clear();
- if (OpenServerActivityCenter.Instance.IsTimeLimitGiftOpen())
- {
- openActivitys.Add(3);
- if (timeLimitGiftModel.redpoint.state == RedPointState.Simple)
- {
- activityReds.Add(3);
- }
- }
- if (OpenServerActivityCenter.Instance.IsFlashSaleOpen())
- {
- openActivitys.Add(4);
- if (flashSaleModel.flashSaleRedpoint.state == RedPointState.Simple)
- {
- activityReds.Add(4);
- }
- }
- if (OpenServerActivityCenter.Instance.IsImpactRankOpen())
- {
- openActivitys.Add(0);
- if (impactRankModel.HasRedpoint())
- {
- activityReds.Add(0);
- }
- }
- if (OpenServerActivityCenter.Instance.IsRedEnvelopeOpen())
- {
- openActivitys.Add(2);
- if (envelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple)
- {
- activityReds.Add(2);
- envelopeModel.selectType = 1;
- }
- else if (envelopeModel.m_OpenServerGetRedpin.state == RedPointState.Simple)
- {
- activityReds.Add(2);
- envelopeModel.selectType = 2;
- }
- }
- if (OpenServerActivityCenter.Instance.IsConsumeRebateOpen())
- {
- openActivitys.Add(1);
- if (consumeRebateModel.consumeRebateRedpoint.state == RedPointState.Simple)
- {
- activityReds.Add(1);
- }
- }
- if (OpenServerActivityCenter.Instance.IsBossRebornOpen())
- {
- openActivitys.Add(9);
- if (bossRebornModel.bossRebornPoint.state == RedPointState.Simple)
- {
- activityReds.Add(9);
- }
- }
+ priorityActivitys.Clear();
- if (OpenServerActivityCenter.Instance.IsMultipleExpOpen())
+ for (int i = 0; i < m_SortArray.Count; i++)
{
- openActivitys.Add(5);
- if (multipleExpModel.multipleExpRedpoint.state == RedPointState.Simple)
+ if (OpenServerActivityCenter.Instance.IsActivityOpen(m_SortArray[i]))
{
- activityReds.Add(5);
+ openActivitys.Add(m_SortArray[i]);
+ if (OpenServerActivityCenter.Instance.IsPriorityOpenOpen(m_SortArray[i]))
+ {
+ priorityActivitys.Add(m_SortArray[i]);
+
+ switch (m_SortArray[i])
+ {
+ case 2:
+ envelopeModel.selectType = envelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple ? 1 : 2;
+ break;
+ }
+ }
}
}
- if (OpenServerActivityCenter.Instance.IsMultipleRealmOpen())
+ if (priorityActivitys.Count > 0)
{
- openActivitys.Add(8);
- if (multipleRealmPointModel.multipleRed.state == RedPointState.Simple)
- {
- activityReds.Add(8);
- }
- }
- if (activityReds.Count > 0)
- {
- activityReds.Sort(Compare);
- return activityReds[0];
+ priorityActivitys.Sort(Compare);
+ return priorityActivitys[0];
}
else
{
@@ -221,38 +156,12 @@
void CheckAlreadyOpen()
{
alreadyOpenActivitys.Clear();
- if (OpenServerActivityCenter.Instance.IsTimeLimitGiftOpen())
+ for (int i = 0; i < m_SortArray.Count; i++)
{
- 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);
- }
- if (OpenServerActivityCenter.Instance.IsMultipleRealmOpen())
- {
- alreadyOpenActivitys.Add(8);
- }
-
- if (OpenServerActivityCenter.Instance.IsBossRebornOpen())
- {
- alreadyOpenActivitys.Add(9);
+ if (OpenServerActivityCenter.Instance.IsActivityOpen(m_SortArray[i]))
+ {
+ alreadyOpenActivitys.Add(m_SortArray[i]);
+ }
}
}
@@ -379,9 +288,6 @@
m_ActivityCtrl.AddCell(ScrollerDataType.Normal, sort * 100 + _type);
}
break;
- case 1:
- m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
- continue;
case 2:
m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
if (!m_ActivitySpreadDict[sort])
@@ -391,11 +297,7 @@
m_ActivityCtrl.AddCell(ScrollerDataType.Normal, sort * 100 + 1);
m_ActivityCtrl.AddCell(ScrollerDataType.Normal, sort * 100 + 2);
break;
- case 3:
- case 4:
- case 5:
- case 8:
- case 9:
+ default:
m_ActivityCtrl.AddCell(ScrollerDataType.Header, sort);
break;
}
@@ -487,6 +389,26 @@
WindowCenter.Instance.Open<MultipleExpWin>(true);
}
break;
+ case 6:
+ if (windowState == WindowState.Opened)
+ {
+ WindowCenter.Instance.OpenWithoutAnimation<OpenServerGiftWin>();
+ }
+ else
+ {
+ WindowCenter.Instance.Open<OpenServerGiftWin>(true);
+ }
+ break;
+ case 7:
+ if (windowState == WindowState.Opened)
+ {
+ WindowCenter.Instance.OpenWithoutAnimation<LimitedTimePackageWin>();
+ }
+ else
+ {
+ WindowCenter.Instance.Open<LimitedTimePackageWin>(true);
+ }
+ break;
case 8:
if (windowState == WindowState.Opened)
{
@@ -537,6 +459,8 @@
WindowCenter.Instance.CloseImmediately<MultipleExpWin>();
WindowCenter.Instance.CloseImmediately<NPracticePointWin>();
WindowCenter.Instance.CloseImmediately<BossRebornWin>();
+ WindowCenter.Instance.CloseImmediately<OpenServerGiftWin>();
+ WindowCenter.Instance.CloseImmediately<LimitedTimePackageWin>();
}
private int Compare(int x, int y)
@@ -548,66 +472,28 @@
private void OperationTimeUpdateEvent(Operation type)
{
- if (type == Operation.MultipleExp)
+ if (type == Operation.MultipleExp || type == Operation.MultipRealmPoint)
{
m_ActivityCtrl.m_Scorller.RefreshActiveCellViews();
}
}
- private void OperationStartEvent(Operation type, int state)
+ private void OpenServerActivityStateChange()
{
- switch (type)
+ bool _update = false;
+ for (int i = 0; i < m_SortArray.Count; i++)
{
- case Operation.MultipleExp:
- if (state == 1 && !alreadyOpenActivitys.Contains(5))
- {
- alreadyOpenActivitys.Add(5);
- UpdateFunctionBtns();
- }
- break;
- case Operation.ConsumeRebate:
- if (state == 0 && !alreadyOpenActivitys.Contains(1))
- {
- alreadyOpenActivitys.Add(1);
- UpdateFunctionBtns();
- }
- break;
- case Operation.FlashSale:
- if (state == 0 && !alreadyOpenActivitys.Contains(4))
- {
- alreadyOpenActivitys.Add(4);
- UpdateFunctionBtns();
- }
- break;
- case Operation.BossReborn:
- if (state == 0 && !alreadyOpenActivitys.Contains(9))
- {
- alreadyOpenActivitys.Add(9);
- UpdateFunctionBtns();
- }
- break;
- case Operation.GiftPackage:
- break;
- case Operation.MultipRealmPoint:
- if (state == 0 && !alreadyOpenActivitys.Contains(8))
- {
- alreadyOpenActivitys.Add(8);
- UpdateFunctionBtns();
- }
- break;
- }
- }
-
- private void OperationAdvanceEvent(Operation type)
- {
- if (type == Operation.FlashSale)
- {
- if (!alreadyOpenActivitys.Contains(4))
+ if (OpenServerActivityCenter.Instance.IsActivityOpen(m_SortArray[i])
+ && !alreadyOpenActivitys.Contains(m_SortArray[i]))
{
- alreadyOpenActivitys.Add(4);
- UpdateFunctionBtns();
+ alreadyOpenActivitys.Add(m_SortArray[i]);
+ _update = true;
}
}
+ if (_update)
+ {
+ UpdateFunctionBtns();
+ }
}
}
}
--
Gitblit v1.8.0