From f5fc680bde88e6cce73a3f153a52358dd9d8aa76 Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期三, 19 九月 2018 10:08:59 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/OpenServerActivity/OpenServerActivityWin.cs | 76 ++++++++++++++++++++++++++-----------
1 files changed, 53 insertions(+), 23 deletions(-)
diff --git a/System/OpenServerActivity/OpenServerActivityWin.cs b/System/OpenServerActivity/OpenServerActivityWin.cs
index 939d0b6..ee7fa88 100644
--- a/System/OpenServerActivity/OpenServerActivityWin.cs
+++ b/System/OpenServerActivity/OpenServerActivityWin.cs
@@ -12,7 +12,7 @@
[SerializeField] ScrollerController m_ActivityCtrl;
[SerializeField] Button m_BtnClose;
[SerializeField] Image m_TitleIcon;
- [SerializeField, Header("鎺掑簭")] List<int> m_SortArray;
+ [SerializeField] List<CustomActivityDisplay> m_CustomActivitys;
Dictionary<int, bool> m_ActivitySpreadDict = new Dictionary<int, bool>();
@@ -43,6 +43,7 @@
{
m_ActivityCtrl.OnRefreshCell += OnOpenServerActivityRefresh;
m_ActivityCtrl.OnGetDynamicSize += OnGetDynamicSize;
+ m_ActivityCtrl.lockType = EnhanceLockType.KeepVertical;
m_BtnClose.onClick.AddListener(CloseClick);
}
@@ -51,9 +52,9 @@
TimeUtility.OnServerOpenDayRefresh += OnStepServerDayEvent;
OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
OpenServerActivityCenter.Instance.openServerActivityStateChange += OpenServerActivityStateChange;
- for (int i = 0; i < m_SortArray.Count; i++)
+ for (int i = 0; i < m_CustomActivitys.Count; i++)
{
- m_ActivitySpreadDict[m_SortArray[i]] = false;
+ m_ActivitySpreadDict[(int)m_CustomActivitys[i].activityType] = false;
}
var impactDefaultType= impactRankModel.GetDefaultSelectType();
if (impactRankModel.IsLock(impactDefaultType))
@@ -137,18 +138,18 @@
openActivitys.Clear();
priorityActivitys.Clear();
- for (int i = 0; i < m_SortArray.Count; i++)
+ for (int i = 0; i < m_CustomActivitys.Count; i++)
{
- if (OpenServerActivityCenter.Instance.IsActivityOpen(m_SortArray[i]))
+ if (OpenServerActivityCenter.Instance.IsActivityOpen((int)m_CustomActivitys[i].activityType))
{
- openActivitys.Add(m_SortArray[i]);
- if (OpenServerActivityCenter.Instance.IsPriorityOpenOpen(m_SortArray[i]))
+ openActivitys.Add((int)m_CustomActivitys[i].activityType);
+ if (OpenServerActivityCenter.Instance.IsPriorityOpenOpen((int)m_CustomActivitys[i].activityType))
{
- priorityActivitys.Add(m_SortArray[i]);
+ priorityActivitys.Add((int)m_CustomActivitys[i].activityType);
- switch (m_SortArray[i])
+ switch (m_CustomActivitys[i].activityType)
{
- case 2:
+ case OpenServerActivityCenter.OSActivityType.OSRedpack:
envelopeModel.selectType = envelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple ? 1 : 2;
break;
}
@@ -170,11 +171,11 @@
void CheckAlreadyOpen()
{
alreadyOpenActivitys.Clear();
- for (int i = 0; i < m_SortArray.Count; i++)
+ for (int i = 0; i < m_CustomActivitys.Count; i++)
{
- if (OpenServerActivityCenter.Instance.IsActivityOpen(m_SortArray[i]))
+ if (OpenServerActivityCenter.Instance.IsActivityOpen((int)m_CustomActivitys[i].activityType))
{
- alreadyOpenActivitys.Add(m_SortArray[i]);
+ alreadyOpenActivitys.Add((int)m_CustomActivitys[i].activityType);
}
}
}
@@ -234,7 +235,22 @@
_cell.ChangeState(_cell.order == functionOrder ? TitleBtnState.Click : TitleBtnState.Normal);
_cell.downArrow.gameObject.SetActive(false);
_cell.upArrow.gameObject.SetActive(false);
- if(_cell.order == 0 || _cell.order == 2)
+
+ var customActivity = m_CustomActivitys.Find((x) =>
+ {
+ return (int)x.activityType == _cell.index;
+ });
+
+ bool customIcon = !string.IsNullOrEmpty(customActivity.titleIcon);
+ _cell.title.gameObject.SetActive(!customIcon);
+ _cell.titleImage.gameObject.SetActive(customIcon);
+ if (customIcon)
+ {
+ _cell.titleImage.SetSprite(customActivity.titleIcon);
+ _cell.titleImage.SetNativeSize();
+ }
+
+ if (_cell.order == 0 || _cell.order == 2)
{
_cell.downArrow.gameObject.SetActive(m_ActivitySpreadDict[_cell.order]);
_cell.upArrow.gameObject.SetActive(!m_ActivitySpreadDict[_cell.order]);
@@ -279,9 +295,9 @@
private void UpdateFunctionBtns()
{
m_ActivityCtrl.Refresh();
- for (int i = 0; i < m_SortArray.Count; i++)
+ for (int i = 0; i < m_CustomActivitys.Count; i++)
{
- var sort = m_SortArray[i];
+ var sort = (int)m_CustomActivitys[i].activityType;
if (!alreadyOpenActivitys.Contains(sort))
{
continue;
@@ -504,10 +520,16 @@
WindowCenter.Instance.CloseImmediately<VipInvestWin>();
}
- private int Compare(int x, int y)
+ private int Compare(int order_x, int order_y)
{
- var index_x = m_SortArray.IndexOf(x);
- var index_y = m_SortArray.IndexOf(y);
+ var index_x = m_CustomActivitys.FindIndex((x) =>
+ {
+ return order_x == (int)x.activityType;
+ });
+ var index_y = m_CustomActivitys.FindIndex((x) =>
+ {
+ return order_y == (int)x.activityType;
+ });
return index_x.CompareTo(index_y);
}
@@ -522,12 +544,12 @@
private void OpenServerActivityStateChange()
{
bool _update = false;
- for (int i = 0; i < m_SortArray.Count; i++)
+ for (int i = 0; i < m_CustomActivitys.Count; i++)
{
- if (OpenServerActivityCenter.Instance.IsActivityOpen(m_SortArray[i])
- && !alreadyOpenActivitys.Contains(m_SortArray[i]))
+ if (OpenServerActivityCenter.Instance.IsActivityOpen((int)m_CustomActivitys[i].activityType)
+ && !alreadyOpenActivitys.Contains((int)m_CustomActivitys[i].activityType))
{
- alreadyOpenActivitys.Add(m_SortArray[i]);
+ alreadyOpenActivitys.Add((int)m_CustomActivitys[i].activityType);
_update = true;
}
}
@@ -536,6 +558,14 @@
UpdateFunctionBtns();
}
}
+
+ [Serializable]
+ public struct CustomActivityDisplay
+ {
+ [Header("娲诲姩绫诲瀷"), EnumLabel(typeof(OpenServerActivityCenter.OSActivityType))]
+ public OpenServerActivityCenter.OSActivityType activityType;
+ public string titleIcon;
+ }
}
}
--
Gitblit v1.8.0