From f3fb1aa143be2b56ff3ed5c8bc6bc1bf7c1c5e0c Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 16 十月 2019 14:09:27 +0800
Subject: [PATCH] 0312 BOSS首杀
---
System/OpenServerActivity/OpenServerActivityRankWin.cs | 62 ++++++++++++++++++++++++++++---
1 files changed, 56 insertions(+), 6 deletions(-)
diff --git a/System/OpenServerActivity/OpenServerActivityRankWin.cs b/System/OpenServerActivity/OpenServerActivityRankWin.cs
index 490e896..77f1680 100644
--- a/System/OpenServerActivity/OpenServerActivityRankWin.cs
+++ b/System/OpenServerActivity/OpenServerActivityRankWin.cs
@@ -26,6 +26,7 @@
protected override void BindController()
{
+ m_OpenServerActivities.Add(100);
m_OpenServerActivities.Add(0);
}
@@ -65,8 +66,10 @@
functionOrder = GetDefaultSelect();
UpdateFunctionBtns();
}
-
- WindowCenter.Instance.Open("ImpactRankWin", true);
+ if (functionOrder != 0)
+ WindowCenter.Instance.Open<BossFirstBloodWin>();
+ else
+ WindowCenter.Instance.Open<ImpactRankWin>();
var index = alreadyOpenActivitys.IndexOf(functionOrder);
@@ -83,7 +86,7 @@
TimeUtility.OnServerOpenDayRefresh -= OnStepServerDayEvent;
OpenServerActivityCenter.Instance.openServerActivityStateChange -= OpenServerActivityStateChange;
impactRankModel.gotoImpactRankType = 0;
- WindowCenter.Instance.Close("ImpactRankWin");
+ CloseOtherWin();
}
protected override void OnAfterClose()
@@ -190,14 +193,58 @@
_cell.redpoint.redpointId = MainRedDot.REDPOINT_OPENRANK * 100 + activityType;
_cell.SetSelect(_cell.activityType == functionOrder);
- _cell.icon.SetSprite("OpenServerActivty_QMCB");
-
+ if (_cell.activityType == 0)
+ _cell.icon.SetSprite("OpenServerActivty_QMCB");
+ else
+ _cell.icon.SetSprite("OpenServerActivty_BOSSFK");
_cell.downArrow.gameObject.SetActive(false);
_cell.upArrow.gameObject.SetActive(false);
_cell.funcBtn.onClick.RemoveAllListeners();
-
+ _cell.funcBtn.onClick.AddListener(() =>
+ {
+ OnActivityClick(_cell.activityType);
+ });
+
+ }
+
+ private void CloseOtherWin()
+ {
+ var children = WindowConfig.GetChildWindows("OpenServerActivityRankWin");
+ foreach (var window in children)
+ {
+ WindowCenter.Instance.Close(window);
+ }
+ }
+
+ private void OnActivityClick(int _order)
+ {
+
+ if (functionOrder != _order)
+ {
+ functionOrder = _order;
+ OnOpenActivity(functionOrder);
+ }
+
+
+ UpdateFunctionBtns();
+ }
+
+ private void OnOpenActivity(int _order)
+ {
+ CloseOtherWin();
+
+ var functionInfos = WindowConfig.GetWindowFunctionInfos("OpenServerActivityRankWin");
+ var index = functionInfos.FindIndex((x) =>
+ {
+ return x.order == _order;
+ });
+
+ if (index != -1)
+ {
+ WindowCenter.Instance.Open(functionInfos[index].window, true);
+ }
}
private void OnStepServerDayEvent()
@@ -258,6 +305,7 @@
break;
default:
+ m_ActivityCtrl.AddCell(ScrollerDataType.Header, activityId);
break;
}
}
@@ -268,6 +316,8 @@
private void OnActivityType(int _index)
{
+ if (!WindowCenter.Instance.IsOpen<ImpactRankWin>())
+ OnActivityClick(0);
var _order = _index / 100;
var _type = _index % 100;
if (impactRankModel.IsLock(_type))
--
Gitblit v1.8.0