From 379663dd5e7c0da4025fc6867dfb13f11a3bc946 Mon Sep 17 00:00:00 2001
From: Client_PangDeRong <593317293@qq.com>
Date: 星期六, 01 九月 2018 11:35:42 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/FairyAu/FairyModel.cs | 47 +++++++++++++++++++++++
System/WindowJump/WindowJumpMgr.cs | 8 +++
System/FairyAu/PlayerMethodData.cs | 5 ++
System/FairyAu/BasicFunction.cs | 11 +++++
System/Activity/ActivityNotifyBehaviour.cs | 14 ++++++
System/DailyQuest/DailyQuestWin.cs | 8 +++
System/DailyQuest/DailyQuestModel.cs | 13 ++++++
7 files changed, 102 insertions(+), 4 deletions(-)
diff --git a/System/Activity/ActivityNotifyBehaviour.cs b/System/Activity/ActivityNotifyBehaviour.cs
index 93c1378..96b65be 100644
--- a/System/Activity/ActivityNotifyBehaviour.cs
+++ b/System/Activity/ActivityNotifyBehaviour.cs
@@ -84,7 +84,19 @@
WindowCenter.Instance.Open<NormalDungeonEntranceWin>();
break;
case DailyQuestType.GuardSky:
- if (ModelCenter.Instance.GetModel<FairyModel>().completeGuardSky)
+ var fairyData = PlayerDatas.Instance.fairyData;
+ if (!fairyData.HasFairy)
+ {
+ break;
+ }
+ var fairyModel = ModelCenter.Instance.GetModel<FairyModel>();
+ if (fairyData.fairy == null
+ || fairyData.fairy.FamilyLV < fairyModel.guardSkyOpenFairyLv)
+ {
+ SysNotifyMgr.Instance.ShowTip("GuardSkyOpenLvError", fairyModel.guardSkyOpenFairyLv);
+ break;
+ }
+ if (fairyModel.completeGuardSky)
{
SysNotifyMgr.Instance.ShowTip("TheEmperor1");
break;
diff --git a/System/DailyQuest/DailyQuestModel.cs b/System/DailyQuest/DailyQuestModel.cs
index b4ef82f..749564a 100644
--- a/System/DailyQuest/DailyQuestModel.cs
+++ b/System/DailyQuest/DailyQuestModel.cs
@@ -122,6 +122,8 @@
FuncOpen.Instance.OnFuncStateChangeEvent += OnFunctionStateChange;
PlayerDatas.Instance.PlayerDataRefreshEvent += OnPlayerDataRefresh;
fairyModel.guardSkyCompleteEvent += GuardSkyCompleteEvent;
+ PlayerDatas.Instance.fairyData.OnRefreshFairyInfo += OnRefreshFairyInfo;
+ PlayerDatas.Instance.fairyData.OnRefreshFairyMine += OnRefreshFairyInfo;
}
public override void UnInit()
@@ -131,6 +133,8 @@
FuncOpen.Instance.OnFuncStateChangeEvent -= OnFunctionStateChange;
PlayerDatas.Instance.PlayerDataRefreshEvent -= OnPlayerDataRefresh;
fairyModel.guardSkyCompleteEvent -= GuardSkyCompleteEvent;
+ PlayerDatas.Instance.fairyData.OnRefreshFairyInfo -= OnRefreshFairyInfo;
+ PlayerDatas.Instance.fairyData.OnRefreshFairyMine -= OnRefreshFairyInfo;
}
public void OnPlayerLoginOk()
@@ -219,6 +223,10 @@
(_dailyConfig.UnLockFuncID == 0 || FuncOpen.Instance.IsFuncOpen(_dailyConfig.UnLockFuncID));
case DailyQuestType.RuneTowerSweep:
return ModelCenter.Instance.GetModel<RuneTowerModel>().yesterdayPassFloor > 0;
+ case DailyQuestType.GuardSky:
+ var _dailyGuardSkyConfig = Config.Instance.Get<DailyQuestConfig>(_dailyQuestId);
+ bool _isOpen = _dailyGuardSkyConfig.UnLockFuncID == 0 || FuncOpen.Instance.IsFuncOpen(_dailyGuardSkyConfig.UnLockFuncID);
+ return fairyModel.SatisfyGuardSkyFairyLv() && _isOpen;
default:
var dailyConfig = Config.Instance.Get<DailyQuestConfig>(_dailyQuestId);
return dailyConfig.UnLockFuncID == 0 || FuncOpen.Instance.IsFuncOpen(dailyConfig.UnLockFuncID);
@@ -490,6 +498,11 @@
UpdateDailyActionRedpoint((int)DailyQuestType.GuardSky);
}
+ private void OnRefreshFairyInfo()
+ {
+ UpdateDailyActionRedpoint((int)DailyQuestType.GuardSky);
+ }
+
private void OnPlayerDataRefresh(PlayerDataRefresh _refreshType, int _value)
{
switch (_refreshType)
diff --git a/System/DailyQuest/DailyQuestWin.cs b/System/DailyQuest/DailyQuestWin.cs
index d9f8db4..0ddb6b5 100644
--- a/System/DailyQuest/DailyQuestWin.cs
+++ b/System/DailyQuest/DailyQuestWin.cs
@@ -195,7 +195,13 @@
GotoNormalDungeon(_id);
break;
case DailyQuestType.GuardSky:
- if (ModelCenter.Instance.GetModel<FairyModel>().completeGuardSky)
+ var _fairyModel = ModelCenter.Instance.GetModel<FairyModel>();
+ if (!_fairyModel.SatisfyGuardSkyFairyLv())
+ {
+ SysNotifyMgr.Instance.ShowTip("GuardSkyOpenLvError", _fairyModel.guardSkyOpenFairyLv);
+ break;
+ }
+ if (_fairyModel.completeGuardSky)
{
SysNotifyMgr.Instance.ShowTip("TheEmperor1");
break;
diff --git a/System/FairyAu/BasicFunction.cs b/System/FairyAu/BasicFunction.cs
index 7c0efa8..3a28b57 100644
--- a/System/FairyAu/BasicFunction.cs
+++ b/System/FairyAu/BasicFunction.cs
@@ -67,6 +67,7 @@
m_FairyRankTxt.text = fairy.WarRank == 0 ? Language.Get("UnDetermind") : GetGrade((int)fairy.WarRank);
}
CheckFairyStoreOpen();
+ CheckFairyMethodToOpen();
}
void CheckFairyStoreOpen()
@@ -74,8 +75,18 @@
_fairyStoreBtn.image.color = _fairyStoreBtn.image.color.SetA(model.fairyStoreOpen ? 1 : 0.5f);
}
+ void CheckFairyMethodToOpen()
+ {
+ SkillBtn.image.color = SkillBtn.image.color.SetA(model.fairyMethodToOpen ? 1 : 0.5f);
+ }
+
void SkillBtna()
{
+ if (!model.fairyMethodToOpen)
+ {
+ model.ProcessMethodToErrorTip();
+ return;
+ }
WindowCenter.Instance.Open<MethodToWin>();
}
diff --git a/System/FairyAu/FairyModel.cs b/System/FairyAu/FairyModel.cs
index 92f9fd4..d1b46a3 100644
--- a/System/FairyAu/FairyModel.cs
+++ b/System/FairyAu/FairyModel.cs
@@ -184,6 +184,10 @@
fairyStoreLimit = int.Parse(config.Numerical2);
config = Config.Instance.Get<FuncConfigConfig>("FamilyPartyDeskNpcID");
fairyFeastDeskNpc = int.Parse(config.Numerical1);
+ config = Config.Instance.Get<FuncConfigConfig>("SWRHFamilyLV");
+ guardSkyOpenFairyLv = int.Parse(config.Numerical1);
+ config = Config.Instance.Get<FuncConfigConfig>("TechFamilyLV");
+ fairyMethodToLimit = int.Parse(config.Numerical1);
}
#endregion
@@ -498,6 +502,18 @@
get;private set;
}
+ public int guardSkyOpenFairyLv { get; private set; }
+
+ public bool SatisfyGuardSkyFairyLv()
+ {
+ var fairyData = PlayerDatas.Instance.fairyData;
+ if (!fairyData.HasFairy || fairyData.fairy == null)
+ {
+ return false;
+ }
+ return fairyData.fairy.FamilyLV >= guardSkyOpenFairyLv;
+ }
+
public event Action guardSkyCompleteEvent;
public void UpdateGuardSky(bool _hasJoin)
{
@@ -652,6 +668,37 @@
}
#endregion
+ #region 浠欑洘蹇冩硶寮�鍚�
+ public int fairyMethodToLimit { get; private set; }
+ public bool fairyMethodToOpen
+ {
+ get
+ {
+ if (PlayerDatas.Instance.fairyData.HasFairy)
+ {
+ var fairy = PlayerDatas.Instance.fairyData.fairy;
+ if (fairy != null && fairy.FamilyLV >= fairyMethodToLimit)
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+ }
+
+ public void ProcessMethodToErrorTip()
+ {
+ if (!PlayerDatas.Instance.fairyData.HasFairy)
+ {
+ SysNotifyMgr.Instance.ShowTip("DailyQuestwinUnionLimit");
+ }
+ else if (PlayerDatas.Instance.fairyData.fairy.FamilyLV < fairyMethodToLimit)
+ {
+ SysNotifyMgr.Instance.ShowTip("FairyMethodToLimit", fairyMethodToLimit);
+ }
+ }
+ #endregion
+
public bool InFairyLeagueDungeon
{
get
diff --git a/System/FairyAu/PlayerMethodData.cs b/System/FairyAu/PlayerMethodData.cs
index 8ccbea3..e303133 100644
--- a/System/FairyAu/PlayerMethodData.cs
+++ b/System/FairyAu/PlayerMethodData.cs
@@ -26,6 +26,8 @@
public int _ContributionNumber = 0;//浠欑洘璐$尞搴�
public Dictionary<int, int> MethodDataNeedLVDic = new Dictionary<int, int>();//蹇冩硶涓嬭〃瀵瑰簲鐨勬墍闇�瀛︿範绛夌骇
+
+ FairyModel fairyModel { get { return ModelCenter.Instance.GetModel<FairyModel>(); } }
public override void Init()
{
string str = Config.Instance.Get<FuncConfigConfig>("FamilyTechNeedLV").Numerical1;
@@ -59,6 +61,7 @@
{
FairyAuHallRedPoint();
FairyAuMethodDic();
+ FairyAuMethodRedPoint();
}
private void OnRefreshFairyMine()//閫�鍑轰粰鐩�
@@ -97,7 +100,7 @@
}
private void FairyAuMethodRedPoint()//浠欑洘蹇冩硶绾㈢偣
{
- if (!PlayerDatas.Instance.fairyData.HasFairy || MethodRedPointBtnDic.Count==0)
+ if (!fairyModel.fairyMethodToOpen || MethodRedPointBtnDic.Count == 0)
{
return;
}
diff --git a/System/WindowJump/WindowJumpMgr.cs b/System/WindowJump/WindowJumpMgr.cs
index 88187c0..c5e8e44 100644
--- a/System/WindowJump/WindowJumpMgr.cs
+++ b/System/WindowJump/WindowJumpMgr.cs
@@ -102,7 +102,6 @@
case JumpUIType.UnionFunc2:
case JumpUIType.UnionWarehouse:
case JumpUIType.UnionHall:
- case JumpUIType.UnionMethod:
case JumpUIType.UnionTask:
case JumpUIType.UnionTask2:
case JumpUIType.UnionActive1:
@@ -113,6 +112,13 @@
return;
}
break;
+ case JumpUIType.UnionMethod:
+ if (!fairyModel.fairyMethodToOpen)
+ {
+ fairyModel.ProcessMethodToErrorTip();
+ return;
+ }
+ break;
case JumpUIType.UnionStore:
if(!fairyModel.fairyStoreOpen)
{
--
Gitblit v1.8.0