From b40605ecf3ed374f208d985c4c141a4b01b1fdf1 Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期三, 10 十月 2018 20:48:15 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/DailyQuest/DailyQuestData.cs | 46 +++++++++++++++++++++--
System/Treasure/UI3DTreasureSelectStage.cs | 30 ++++++++++----
System/Rank/RankPanel.cs | 4 ++
System/FairyAu/FairyGrabBossModel.cs | 14 +++++++
4 files changed, 81 insertions(+), 13 deletions(-)
diff --git a/System/DailyQuest/DailyQuestData.cs b/System/DailyQuest/DailyQuestData.cs
index 3da5b1e..8b45358 100644
--- a/System/DailyQuest/DailyQuestData.cs
+++ b/System/DailyQuest/DailyQuestData.cs
@@ -291,7 +291,7 @@
for (int i = 0; i < hourMinutes.Count; i++)
{
var hourMinute = hourMinutes[i];
- if (hour <= hourMinute.hourEnd && minute <= hourMinute.minuteEnd)
+ if (hour < hourMinute.hourEnd || (hour == hourMinute.hourEnd && minute <= hourMinute.minuteEnd))
{
_hourMinute = hourMinute;
break;
@@ -322,7 +322,7 @@
for (int i = 0; i < hourMinutes.Count; i++)
{
var hourMinute = hourMinutes[i];
- if (hour <= hourMinute.hourEnd && minute <= hourMinute.minuteEnd)
+ if (hour < hourMinute.hourEnd || (hour == hourMinute.hourEnd && minute <= hourMinute.minuteEnd))
{
_hourMinute = hourMinute;
break;
@@ -343,7 +343,26 @@
var openDayWeek = (int)TimeUtility.openServerDayOfWeek;
var dayIndex = TimeUtility.OpenDay + 1;
var maxDays = 15 - openDayWeek == 0 ? 7 : openDayWeek;
- for (int i = dayIndex; i <= maxDays; i++)
+ var startDay = dayIndex;
+ var createRoleTime = TimeUtility.createRoleTime;
+ if (dayIndex == 1 && specialOpenTimes.ContainsKey(openDayWeek) && specialOpenTimes[openDayWeek].ContainsKey(dayIndex))
+ {
+ var openServerDay = TimeUtility.ServerNow.AddTicks(-TimeUtility.OpenDay * TimeSpan.TicksPerDay);
+ if (createRoleTime.Year == openServerDay.Year && createRoleTime.Month == openServerDay.Month
+ && createRoleTime.Day == openServerDay.Day)
+ {
+ var hourMinutes = specialOpenTimes[openDayWeek][1];
+ var hourMinute = hourMinutes[hourMinutes.Count - 1];
+ var hour = createRoleTime.Hour;
+ var minute = createRoleTime.Minute;
+ if (hour > hourMinute.hourEnd ||
+ (hour == hourMinute.hourEnd && minute >= hourMinute.minuteEnd))
+ {
+ startDay++;
+ }
+ }
+ }
+ for (int i = startDay; i <= maxDays; i++)
{
if (specialOpenTimes.ContainsKey(openDayWeek) && specialOpenTimes[openDayWeek].ContainsKey(dayIndex))
{
@@ -370,7 +389,26 @@
var openDayWeek = (int)TimeUtility.openServerDayOfWeek;
var dayIndex = TimeUtility.OpenDay + 1;
var maxDays = 15 - openDayWeek == 0 ? 7 : openDayWeek;
- for (int i = 1; i <= maxDays; i++)
+ var startDay = 1;
+ var createRoleTime = TimeUtility.createRoleTime;
+ if (specialOpenTimes.ContainsKey(openDayWeek) && specialOpenTimes[openDayWeek].ContainsKey(1))
+ {
+ var openServerDay = TimeUtility.ServerNow.AddTicks(-TimeUtility.OpenDay * TimeSpan.TicksPerDay);
+ if (createRoleTime.Year == openServerDay.Year && createRoleTime.Month == openServerDay.Month
+ && createRoleTime.Day == openServerDay.Day)
+ {
+ var hourMinutes = specialOpenTimes[openDayWeek][1];
+ var hourMinute = hourMinutes[hourMinutes.Count - 1];
+ var hour = createRoleTime.Hour;
+ var minute = createRoleTime.Minute;
+ if (hour > hourMinute.hourEnd ||
+ (hour == hourMinute.hourEnd && minute >= hourMinute.minuteEnd))
+ {
+ startDay = 2;
+ }
+ }
+ }
+ for (int i = startDay; i <= maxDays; i++)
{
if (specialOpenTimes.ContainsKey(openDayWeek) && specialOpenTimes[openDayWeek].ContainsKey(dayIndex))
{
diff --git a/System/FairyAu/FairyGrabBossModel.cs b/System/FairyAu/FairyGrabBossModel.cs
index 170bae3..2450ebb 100644
--- a/System/FairyAu/FairyGrabBossModel.cs
+++ b/System/FairyAu/FairyGrabBossModel.cs
@@ -107,6 +107,7 @@
SysNotifyMgr.Instance.sysNotifyEvent += SystemNotifyEvent;
GlobalTimeEvent.Instance.secondEvent += SecondEvent;
TimeMgr.Instance.OnMinuteEvent += MinuteEvent;
+ TimeUtility.OnServerOpenDayRefresh += OnServerOpenDayRefresh;
OpenServerActivityCenter.Instance.Register(13, this);
}
@@ -135,6 +136,19 @@
SysNotifyMgr.Instance.sysNotifyEvent -= SystemNotifyEvent;
GlobalTimeEvent.Instance.secondEvent -= SecondEvent;
TimeMgr.Instance.OnMinuteEvent -= MinuteEvent;
+ TimeUtility.OnServerOpenDayRefresh -= OnServerOpenDayRefresh;
+ }
+
+ private void OnServerOpenDayRefresh()
+ {
+ if (cacheNoticeOpen != IsOpen)
+ {
+ cacheNoticeOpen = !cacheNoticeOpen;
+ if (onStateUpate != null)
+ {
+ onStateUpate((int)OpenServerActivityCenter.OSActivityType.FairyGrabBossNotice);
+ }
+ }
}
private void MinuteEvent()
diff --git a/System/Rank/RankPanel.cs b/System/Rank/RankPanel.cs
index a062ae9..1121846 100644
--- a/System/Rank/RankPanel.cs
+++ b/System/Rank/RankPanel.cs
@@ -278,6 +278,10 @@
private void OnRankListClick(CellView cell)
{
int index = cell.index;
+ if (model.rankList == null)
+ {
+ return;
+ }
if (index < model.rankList.Count)
{
if (model.rankList[index].ID == PlayerDatas.Instance.baseData.PlayerID)
diff --git a/System/Treasure/UI3DTreasureSelectStage.cs b/System/Treasure/UI3DTreasureSelectStage.cs
index 2ac024b..00ea3a4 100644
--- a/System/Treasure/UI3DTreasureSelectStage.cs
+++ b/System/Treasure/UI3DTreasureSelectStage.cs
@@ -219,6 +219,7 @@
private Dictionary<TreasureCategory, List<TreasureComponent>> m_Treasures = new Dictionary<TreasureCategory, List<TreasureComponent>>();
private Dictionary<TreasureCategory, bool> m_PreloadDict = new Dictionary<TreasureCategory, bool>();
+ Coroutine preloadCoroutine = null;
private void InitTreasure()
{
Load(TreasureCategory.Human);
@@ -417,6 +418,12 @@
HideAllTreasure();
InitScene();
+ if (preloadCoroutine != null)
+ {
+ StopCoroutine(preloadCoroutine);
+ preloadCoroutine = null;
+ }
+
if (!m_PreloadDict.ContainsKey(currentCategory) && !_closer)
{
Preloading = true;
@@ -424,15 +431,16 @@
current_angle = 0;
before_angle = 0;
before_drag_angle = current_angle;
- StartCoroutine(Co_PreLoad(currentCategory, () =>
- {
- if (!m_PreloadDict.ContainsKey(currentCategory))
- {
- m_PreloadDict.Add(currentCategory, true);
- }
- GoTreasureFromHeader(_index);
- Preloading = false;
- }));
+ preloadCoroutine = StartCoroutine(Co_PreLoad(currentCategory, () =>
+ {
+ if (!m_PreloadDict.ContainsKey(currentCategory))
+ {
+ m_PreloadDict.Add(currentCategory, true);
+ }
+ GoTreasureFromHeader(_index);
+ Preloading = false;
+ preloadCoroutine = null;
+ }));
}
else
{
@@ -596,6 +604,10 @@
public void Goto(int _index, bool _force = false)
{
var _list = m_Treasures[currentCategory];
+ if (_index < 0 || _index >= _list.Count)
+ {
+ _index = 0;
+ }
jumpTreasure = _list[_index].treasureId;
if (!_force && _index == presentSelectIndex)
{
--
Gitblit v1.8.0