From d29efe9bfbfe8b89a9f7206d2f510de4af2f8e95 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期二, 09 四月 2019 10:29:23 +0800
Subject: [PATCH] 3335 缥缈仙域
---
System/HazyRegion/HazyRegionIncidentPanel.cs | 2
System/HazyRegion/HazyRegionModel.cs | 37 ++++++++++++++++++
System/HazyRegion/HazyRegionWin.cs | 2 +
System/HazyRegion/HazyRegionBuyTimesWin.cs | 14 ++++++
System/HazyRegion/HazyRegionIncidentBehaviour.cs | 14 +++---
Utility/ConfigInitiator.cs | 3 +
System/HazyRegion/HazyRegionEntrancePanel.cs | 17 +++++++-
System/DailyQuest/DailyQuestWin.cs | 4 ++
8 files changed, 80 insertions(+), 13 deletions(-)
diff --git a/System/DailyQuest/DailyQuestWin.cs b/System/DailyQuest/DailyQuestWin.cs
index 14c6b7b..893f3b9 100644
--- a/System/DailyQuest/DailyQuestWin.cs
+++ b/System/DailyQuest/DailyQuestWin.cs
@@ -317,6 +317,10 @@
case DailyQuestType.AllianceBoss2:
GotoAllianceBoss(_id, 1);
break;
+ case DailyQuestType.HazyRegion:
+ WindowCenter.Instance.Close<DailyQuestWin>();
+ WindowCenter.Instance.Open<CrossServerWin>(false, 2);
+ break;
//case DailyQuestType.JadeDynastyBoss:
// WindowCenter.Instance.Close<DailyQuestWin>();
// WindowCenter.Instance.Open<LootPreciousFrameWin>(false, 3);
diff --git a/System/HazyRegion/HazyRegionBuyTimesWin.cs b/System/HazyRegion/HazyRegionBuyTimesWin.cs
index 0572b0a..f6b6540 100644
--- a/System/HazyRegion/HazyRegionBuyTimesWin.cs
+++ b/System/HazyRegion/HazyRegionBuyTimesWin.cs
@@ -24,6 +24,7 @@
[SerializeField] Button m_Close;
+ HazyRegionModel model { get { return ModelCenter.Instance.GetModel<HazyRegionModel>(); } }
PackModel packModel { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
#region Built-in
@@ -110,7 +111,8 @@
private void DailyQuestProgressUpdateEvent(int id)
{
- if (id == (int)DailyQuestType.HazyRegion)
+ var config = DailyQuestConfig.Get((int)DailyQuestType.HazyRegion);
+ if (config != null && id == config.RelatedID)
{
DisplayTimes();
}
@@ -150,6 +152,11 @@
return;
}
+ if (!model.TryAddTimes())
+ {
+ return;
+ }
+
var itemCount = packModel.GetItemCountByID(PackType.Item, dailyQuestOpenTime.DayItemID);
if (itemCount <= 0)
{
@@ -181,6 +188,11 @@
return;
}
+ if (!model.TryAddTimes())
+ {
+ return;
+ }
+
if (PlayerDatas.Instance.baseData.diamond < dailyQuestOpenTime.BuyNeedMoney)
{
WindowCenter.Instance.Open<RechargeTipWin>();
diff --git a/System/HazyRegion/HazyRegionEntrancePanel.cs b/System/HazyRegion/HazyRegionEntrancePanel.cs
index 551ad55..edac010 100644
--- a/System/HazyRegion/HazyRegionEntrancePanel.cs
+++ b/System/HazyRegion/HazyRegionEntrancePanel.cs
@@ -32,10 +32,14 @@
void DisplayTimes()
{
+ var config = DailyQuestConfig.Get((int)DailyQuestType.HazyRegion);
+ var dailyQuestOpenTime = DailyQuestOpenTimeConfig.Get(config.RelatedID);
+ var limitTimes = dailyQuestOpenTime.DayTimes;
+
var totalTimes = dailyQuestModel.GetDailyQuestTotalTimes((int)DailyQuestType.HazyRegion);
var completedTimes = dailyQuestModel.GetDailyQuestCompletedTimes((int)DailyQuestType.HazyRegion);
- var times = Mathf.Clamp(totalTimes - completedTimes, 0, totalTimes);
- m_Times.text = StringUtility.Contact(times, "/", totalTimes);
+ var times = Mathf.Clamp(totalTimes - completedTimes, 0, limitTimes);
+ m_Times.text = StringUtility.Contact(times, "/", limitTimes);
}
void DisplayOpenTime()
@@ -73,6 +77,12 @@
{
return;
}
+
+ if (!model.TryAddTimes())
+ {
+ return;
+ }
+
WindowCenter.Instance.Open<HazyRegionBuyTimesWin>();
}
@@ -119,7 +129,8 @@
private void DailyQuestProgressUpdateEvent(int id)
{
- if (id == (int)DailyQuestType.HazyRegion)
+ var config = DailyQuestConfig.Get((int)DailyQuestType.HazyRegion);
+ if (config != null && id == config.RelatedID)
{
DisplayTimes();
}
diff --git a/System/HazyRegion/HazyRegionIncidentBehaviour.cs b/System/HazyRegion/HazyRegionIncidentBehaviour.cs
index bee0116..44722ea 100644
--- a/System/HazyRegion/HazyRegionIncidentBehaviour.cs
+++ b/System/HazyRegion/HazyRegionIncidentBehaviour.cs
@@ -56,11 +56,11 @@
var config = HazyRegionConfig.Get(incidentId);
incidentType = (HazyRegionIncidentType)config.incidentType;
- DisplayBase();
- DisplayItems();
- DisplayState();
- DisplaySelect();
- DisplayBoss();
+ //DisplayBase();
+ //DisplayItems();
+ //DisplayState();
+ //DisplaySelect();
+ //DisplayBoss();
model.selectIncidentRefresh -= SelectIncidentRefresh;
model.selectIncidentRefresh += SelectIncidentRefresh;
@@ -127,12 +127,12 @@
private void SelectIncidentRefresh()
{
- DisplaySelect();
+ //DisplaySelect();
}
private void OnHazyRegionIncidentRefresh()
{
- DisplayState();
+ //DisplayState();
}
private void OnSelect()
diff --git a/System/HazyRegion/HazyRegionIncidentPanel.cs b/System/HazyRegion/HazyRegionIncidentPanel.cs
index 8cf3acd..ed24bb2 100644
--- a/System/HazyRegion/HazyRegionIncidentPanel.cs
+++ b/System/HazyRegion/HazyRegionIncidentPanel.cs
@@ -26,7 +26,7 @@
public void Display()
{
- DisplayPoint();
+ //DisplayPoint();
DisplayIncidents();
}
diff --git a/System/HazyRegion/HazyRegionModel.cs b/System/HazyRegion/HazyRegionModel.cs
index 208e2a6..0084604 100644
--- a/System/HazyRegion/HazyRegionModel.cs
+++ b/System/HazyRegion/HazyRegionModel.cs
@@ -34,6 +34,9 @@
public event Action<int> onHazyRegionStateRefresh; //0-缁撴潫鎷滆 1-寮�濮嬫嫓璁� 2-寮哄埗鍒锋柊
public event Action onHazyRegionIncidentRefresh;
+ DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
+ DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
+
public override void Init()
{
ParseConfig();
@@ -59,6 +62,8 @@
void ParseConfig()
{
+ var funcConfig = FuncConfigConfig.Get("ImmortalDomainStrength");
+ limitPoint = int.Parse(funcConfig.Numerical1);
}
public bool TryGetIncident(int id, out Incident incident)
@@ -118,9 +123,40 @@
return true;
}
+ public bool TryAddTimes()
+ {
+ var config = DailyQuestConfig.Get((int)DailyQuestType.HazyRegion);
+ var dailyQuestOpenTime = DailyQuestOpenTimeConfig.Get(config.RelatedID);
+ var limitTimes = dailyQuestOpenTime.DayTimes;
+
+ var totalTimes = dailyQuestModel.GetDailyQuestTotalTimes((int)DailyQuestType.HazyRegion);
+ var completedTimes = dailyQuestModel.GetDailyQuestCompletedTimes((int)DailyQuestType.HazyRegion);
+ var times = Mathf.Clamp(totalTimes - completedTimes, 0, limitTimes);
+
+ if (times >= limitTimes)
+ {
+ return false;
+ }
+
+ return true;
+ }
+
public ICollection<int> GetAllIncidents()
{
return m_Incidents.Keys;
+ }
+
+ public int GetIncidentId(int mapId, int lineId)
+ {
+ var configs = HazyRegionConfig.GetValues();
+ foreach (var config in configs)
+ {
+ if (config.dungeonId == mapId && config.lineId == lineId)
+ {
+ return config.id;
+ }
+ }
+ return 0;
}
public void DisplayErrorRemind(int error)
@@ -143,6 +179,7 @@
case HazyRegionIncidentType.FairyGrass:
case HazyRegionIncidentType.ReikiGrass:
case HazyRegionIncidentType.Precious:
+ dungeonModel.SingleChallenge(config.dungeonId, config.lineId);
break;
}
}
diff --git a/System/HazyRegion/HazyRegionWin.cs b/System/HazyRegion/HazyRegionWin.cs
index dc6d881..cf4842f 100644
--- a/System/HazyRegion/HazyRegionWin.cs
+++ b/System/HazyRegion/HazyRegionWin.cs
@@ -126,11 +126,13 @@
void CloseHazyRegionIncident()
{
m_IncidentPanel.Dispose();
+ m_IncidentPanel.gameObject.SetActive(false);
}
void CloseHazyRegionEntrance()
{
m_EntrancePanel.Dispose();
+ m_EntrancePanel.gameObject.SetActive(false);
}
private void OnHazyRegionStateRefresh(int state)
diff --git a/Utility/ConfigInitiator.cs b/Utility/ConfigInitiator.cs
index f52ff63..4c5adc6 100644
--- a/Utility/ConfigInitiator.cs
+++ b/Utility/ConfigInitiator.cs
@@ -288,7 +288,8 @@
normalTasks.Add(new ConfigInitTask("LegendPropertyValueConfig", () => { LegendPropertyValueConfig.Init(); }, () => { return LegendPropertyValueConfig.inited; }));
normalTasks.Add(new ConfigInitTask("LegendPropertyConfig", () => { LegendPropertyConfig.Init(); }, () => { return LegendPropertyConfig.inited; }));
normalTasks.Add(new ConfigInitTask("EquipSuitNameConfig", () => { EquipSuitNameConfig.Init(); }, () => { return EquipSuitNameConfig.inited; }));
- normalTasks.Add(new ConfigInitTask("ReikiRootConfig", () => { ReikiRootConfig.Init(); }, () => { return ReikiRootConfig.inited; }));
+ normalTasks.Add(new ConfigInitTask("ReikiRootConfig", () => { ReikiRootConfig.Init(); }, () => { return ReikiRootConfig.inited; }));
+ normalTasks.Add(new ConfigInitTask("HazyRegionConfig", () => { HazyRegionConfig.Init(); }, () => { return HazyRegionConfig.inited; }));
}
static List<ConfigInitTask> doingTasks = new List<ConfigInitTask>();
--
Gitblit v1.8.0