From 498ec5c5d03765bbd87c3f75cbe68dd0d413baf9 Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期一, 13 八月 2018 15:27:18 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/OpenServerActivity/OpenServerActivityWin.cs | 107 +++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 82 insertions(+), 25 deletions(-)
diff --git a/System/OpenServerActivity/OpenServerActivityWin.cs b/System/OpenServerActivity/OpenServerActivityWin.cs
index 07f3b95..1f3b9b8 100644
--- a/System/OpenServerActivity/OpenServerActivityWin.cs
+++ b/System/OpenServerActivity/OpenServerActivityWin.cs
@@ -47,8 +47,11 @@
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()
{
@@ -64,6 +67,7 @@
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;
@@ -71,6 +75,7 @@
impactRankModel.presentSelectType = impactRankModel.GetDefaultSelectType();
impactRankModel.gotoImpactRankType = 0;
envelopeModel.selectType = 1;
+ CheckAlreadyOpen();
UpdateFunctionBtns();
}
@@ -113,6 +118,7 @@
protected override void OnPreClose()
{
TimeUtility.OnServerOpenDayRefresh -= OnStepServerDayEvent;
+ OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
CloseOtherWin();
WindowCenter.Instance.Open<MainInterfaceWin>();
impactRankModel.gotoImpactRankType = 0;
@@ -135,7 +141,6 @@
activityReds.Add(3);
}
}
-
if (OpenServerActivityCenter.Instance.IsFlashSaleOpen())
{
openActivitys.Add(4);
@@ -144,7 +149,6 @@
activityReds.Add(4);
}
}
-
if (OpenServerActivityCenter.Instance.IsImpactRankOpen())
{
openActivitys.Add(0);
@@ -153,7 +157,6 @@
activityReds.Add(0);
}
}
-
if (OpenServerActivityCenter.Instance.IsRedEnvelopeOpen())
{
openActivitys.Add(2);
@@ -168,13 +171,20 @@
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);
}
}
@@ -187,6 +197,35 @@
{
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);
}
}
@@ -205,7 +244,19 @@
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);
@@ -253,13 +304,13 @@
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)
{
@@ -275,17 +326,9 @@
}
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])
{
@@ -295,17 +338,12 @@
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;
}
@@ -387,6 +425,16 @@
WindowCenter.Instance.Open<FlashSaleWin>(true);
}
break;
+ case 5:
+ if (windowState == WindowState.Opened)
+ {
+ WindowCenter.Instance.OpenWithoutAnimation<MultipleExpWin>();
+ }
+ else
+ {
+ WindowCenter.Instance.Open<MultipleExpWin>(true);
+ }
+ break;
}
}
@@ -413,6 +461,7 @@
WindowCenter.Instance.CloseImmediately<OSTimeLimitGiftWin>();
WindowCenter.Instance.CloseImmediately<FlashSaleWin>();
WindowCenter.Instance.CloseImmediately<ConsumeRebateWin>();
+ WindowCenter.Instance.CloseImmediately<MultipleExpWin>();
}
private int Compare(int x, int y)
@@ -421,6 +470,14 @@
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();
+ }
+ }
}
}
--
Gitblit v1.8.0