From 2f723e5320ef618985cc9ea8f71deafd3e4bec36 Mon Sep 17 00:00:00 2001
From: client_Hale <339726288@qq.com>
Date: 星期二, 16 四月 2019 11:35:50 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/DailyQuest/DailyQuestModel.cs | 75 ++++++++++++++++++++++++++++++-------
1 files changed, 61 insertions(+), 14 deletions(-)
diff --git a/System/DailyQuest/DailyQuestModel.cs b/System/DailyQuest/DailyQuestModel.cs
index 37332d5..be931c8 100644
--- a/System/DailyQuest/DailyQuestModel.cs
+++ b/System/DailyQuest/DailyQuestModel.cs
@@ -64,7 +64,7 @@
Dictionary<int, int> dungeonToDailyQuestTable = new Dictionary<int, int>();
Dictionary<int, int> dailyActionToDailyQuestTable = new Dictionary<int, int>();
List<DailyQuestActiveValueReward> dailyQuestActiveValueRewards = new List<DailyQuestActiveValueReward>();
- Dictionary<int, int> dailyQuestCompletedTimes = new Dictionary<int, int>();//闄や簡鍓湰鐨勫叾浠栦换鍔℃斁鍦ㄨ繖閲�
+ Dictionary<int, DailyQuestTimes> dailyQuestTimes = new Dictionary<int, DailyQuestTimes>();//闄や簡鍓湰鐨勫叾浠栦换鍔℃斁鍦ㄨ繖閲�
Dictionary<int, DailyQuestOpenTime> dailyQuestOpenTimes = new Dictionary<int, DailyQuestOpenTime>();
Dictionary<int, Dictionary<int, List<int>>> questCalendar = new Dictionary<int, Dictionary<int, List<int>>>();
@@ -197,6 +197,20 @@
return false;
}
+ public bool TryGetDailyQuestTimes(int _id, out DailyQuestTimes _dailyQuestTime)
+ {
+ _dailyQuestTime = default(DailyQuestTimes);
+ var config = DailyQuestConfig.Get(_id);
+ if (config != null && config.RelatedType == 1)
+ {
+ return dailyQuestTimes.TryGetValue(config.RelatedID, out _dailyQuestTime);
+ }
+ else
+ {
+ return false;
+ }
+ }
+
public bool IsDailyQuestUnLock(int _dailyQuestId)
{
var config = DailyQuestConfig.Get(_dailyQuestId);
@@ -249,6 +263,16 @@
{
case 11:
return Math.Max(dailyQuestOpenTime.DayTimes, GetDailyQuestCompletedTimes(_dailyQuestId));
+ case 25:
+ if (dailyQuestTimes.ContainsKey(config.RelatedID))
+ {
+ return dailyQuestOpenTime.DayTimes + dailyQuestTimes[config.RelatedID].dayBuyTimes
+ + dailyQuestTimes[config.RelatedID].dayUseItemTimes;
+ }
+ else
+ {
+ return dailyQuestOpenTime.DayTimes;
+ }
default:
return dailyQuestOpenTime.DayReKind > 0 ? dailyQuestOpenTime.DayTimes : dailyQuestOpenTime.WeekTimes;
}
@@ -270,9 +294,9 @@
switch (config.RelatedType)
{
case 1:
- if (dailyQuestCompletedTimes.ContainsKey(config.RelatedID))
+ if (dailyQuestTimes.ContainsKey(config.RelatedID))
{
- return dailyQuestCompletedTimes[config.RelatedID];
+ return dailyQuestTimes[config.RelatedID].completeTimes;
}
else
{
@@ -295,9 +319,9 @@
public int GetDailyQuestCompletedNums(int relatedID)
{
- if (dailyQuestCompletedTimes.ContainsKey(relatedID))
+ if (dailyQuestTimes.ContainsKey(relatedID))
{
- return dailyQuestCompletedTimes[relatedID];
+ return dailyQuestTimes[relatedID].completeTimes;
}
else
{
@@ -337,11 +361,19 @@
var dailyAction = _serverInfo.ActionInfo[i];
if (dailyAction.DayFinishCnt > 0)
{
- dailyQuestCompletedTimes[(int)dailyAction.ActionID] = dailyAction.DayFinishCnt;
+ dailyQuestTimes[(int)dailyAction.ActionID] = new DailyQuestTimes()
+ {
+ completeTimes = dailyAction.DayFinishCnt,
+ dayBuyTimes = dailyAction.DayBuyTimes,
+ dayUseItemTimes = dailyAction.DayItemTimes,
+ };
}
else
{
- dailyQuestCompletedTimes[(int)dailyAction.ActionID] = (int)dailyAction.WeekFinishCnt;
+ dailyQuestTimes[(int)dailyAction.ActionID] = new DailyQuestTimes()
+ {
+ completeTimes = (int)dailyAction.WeekFinishCnt,
+ };
}
if (dailyActionToDailyQuestTable.ContainsKey((int)dailyAction.ActionID))
@@ -835,17 +867,32 @@
switch (config.RelatedID)
{
case 11:
- var dailyQuestOpenTime = DailyQuestOpenTimeConfig.Get(config.RelatedID);
- if (completedTimes >= dailyQuestOpenTime.DayTimes + GeneralDefine.runeTowerSweepBuyTimes)
{
- return DailyQuestState.Completed;
- }
- else
- {
- return DailyQuestState.CanBuyTimes;
+ var dailyQuestOpenTime = DailyQuestOpenTimeConfig.Get(config.RelatedID);
+ if (completedTimes >= dailyQuestOpenTime.DayTimes + GeneralDefine.runeTowerSweepBuyTimes)
+ {
+ return DailyQuestState.Completed;
+ }
+ else
+ {
+ return DailyQuestState.CanBuyTimes;
+ }
}
case 19:
return DailyQuestState.Normal;
+ case 25:
+ {
+ var dailyQuestOpenTime = DailyQuestOpenTimeConfig.Get(config.RelatedID);
+ if (completedTimes >= dailyQuestOpenTime.DayTimes +
+ dailyQuestOpenTime.DayBuyTimes + dailyQuestOpenTime.DayItemAddTimes)
+ {
+ return DailyQuestState.Completed;
+ }
+ else
+ {
+ return DailyQuestState.CanBuyTimes;
+ }
+ }
default:
return DailyQuestState.Completed;
}
--
Gitblit v1.8.0