From b82d1347f6b6e44b9824f0b4d456a9245d07af5a Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期一, 12 十一月 2018 21:07:10 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/Dungeon/DungeonModel.cs | 90 ++++++++++++++++++++++++---------------------
1 files changed, 48 insertions(+), 42 deletions(-)
diff --git a/System/Dungeon/DungeonModel.cs b/System/Dungeon/DungeonModel.cs
index 7df7e0a..32ed825 100644
--- a/System/Dungeon/DungeonModel.cs
+++ b/System/Dungeon/DungeonModel.cs
@@ -17,7 +17,7 @@
Dictionary<int, DungeonRecord> dungeonRecords = new Dictionary<int, DungeonRecord>();
Dictionary<int, DailyQuestOpenTime> dungeonOpenTimes = new Dictionary<int, DailyQuestOpenTime>();
Dictionary<int, int[]> dungeonGradeRewardRate = new Dictionary<int, int[]>();
- Dictionary<int, DungeonEnterCD> dungeonEnterDic = new Dictionary<int, DungeonEnterCD>();
+ Dictionary<int, DungeonEnterCoolDown> dungeonEnterDict = new Dictionary<int, DungeonEnterCoolDown>();
Dictionary<int, string> dungeonBuyCntFormulaDic = new Dictionary<int, string>();
Dictionary<int, int> mapIdToDataMapId = new Dictionary<int, int>();
Dictionary<int, DateTime> dungeonCountRemainTimes = new Dictionary<int, DateTime>();
@@ -29,7 +29,7 @@
public event Action updateMissionEvent;
public event Action<int> dungeonStageChangeEvent;
public event Action getDungeonResultEvent;
- public event Action updateDungeonEnterCD;
+ public event Action dungeonEnterCoolDownUpdate;
public event Action updateDungeonBuyCnt;
public event Action dungeonFairyLandChangeEvent;
public event Action dungeonInspireLvEvent;
@@ -319,7 +319,7 @@
var dungeonId = GetDungeonId(_dungeon);
var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
- if (IsEnterCountDowning(_dungeon.mapId))
+ if (IsEnterCountDown(_dungeon.mapId))
{
_error = 1;
return false;
@@ -654,50 +654,51 @@
}
}
- public DungeonEnterCD GetEnterCD(int _mapID)
+ public DungeonEnterCoolDown GetEnterCoolDown(int _mapID)
{
- if (dungeonEnterDic.ContainsKey(_mapID))
+ if (dungeonEnterDict.ContainsKey(_mapID))
{
- return dungeonEnterDic[_mapID];
+ return dungeonEnterDict[_mapID];
}
return null;
}
- public bool HasEnterCD(int _mapID)
+ public bool ContainsDungeonEnter(int _mapID)
{
- return dungeonEnterDic.ContainsKey(_mapID);
+ return dungeonEnterDict.ContainsKey(_mapID);
}
- public bool IsEnterCountDowning(int _mapID)
+ public bool IsEnterCountDown(int _mapID)
{
- var cd = GetEnterCD(_mapID);
- if (cd == null)
+ var dungeonEnterInfo = GetEnterCoolDown(_mapID);
+ if (dungeonEnterInfo == null)
{
return false;
}
- if (cd.dungeonSurplusTime == 0)
+ if (dungeonEnterInfo.level != 0
+ && PlayerDatas.Instance.baseData.LV >= dungeonEnterInfo.level)
{
return false;
}
- return (cd.overdueTime - DateTime.Now).TotalSeconds > 0;
+ return (dungeonEnterInfo.endCoolDownTime - TimeUtility.ServerNow).TotalSeconds > 0;
}
- public void UpdateEnterCD(HA703_tagMCFBEnterTickList.tagMCFBEnterTick[] vNetDatas)
+ public void UpdateEnterCoolDown(HA703_tagMCFBEnterTickList.tagMCFBEnterTick[] vNetDatas)
{
for (int i = 0; i < vNetDatas.Length; i++)
{
var data = vNetDatas[i];
- if (dungeonEnterDic.ContainsKey((int)data.MapID))
+ if (dungeonEnterDict.ContainsKey((int)data.MapID))
{
- dungeonEnterDic[(int)data.MapID].SetEnterTime(data.LastEnterTick);
+ dungeonEnterDict[(int)data.MapID].SetEnterTime(data.LastEnterTick);
}
}
- if (updateDungeonEnterCD != null)
+ if (dungeonEnterCoolDownUpdate != null)
{
- updateDungeonEnterCD();
+ dungeonEnterCoolDownUpdate();
}
}
@@ -1350,45 +1351,50 @@
}
}
- FuncConfigConfig funcCfg = Config.Instance.Get<FuncConfigConfig>("FBEnterCD");
- if (funcCfg != null)
+ var funcConfig = Config.Instance.Get<FuncConfigConfig>("FBEnterCD");
+ if (funcConfig != null)
{
- Dictionary<int, uint> dic = ConfigParse.GetDic<int, uint>(funcCfg.Numerical1);
- foreach (var key in dic.Keys)
+ Dictionary<int, int> dict = ConfigParse.GetDic<int, int>(funcConfig.Numerical1);
+ foreach (var key in dict.Keys)
{
- DungeonEnterCD data = new DungeonEnterCD();
+ DungeonEnterCoolDown data = new DungeonEnterCoolDown();
data.mapId = key;
- data.enterCd = dic[key];
- dungeonEnterDic.Add(key, data);
+ data.duration = dict[key];
+ dungeonEnterDict.Add(key, data);
}
- dic = ConfigParse.GetDic<int, uint>(funcCfg.Numerical2);
- foreach (var key in dic.Keys)
+ dict = ConfigParse.GetDic<int, int>(funcConfig.Numerical2);
+ foreach (var key in dict.Keys)
{
- dungeonEnterDic[key].SetCost(dic[key]);
+ dungeonEnterDict[key].clearCoolDownCost = dict[key];
+ }
+ dict = ConfigParse.GetDic<int, int>(funcConfig.Numerical3);
+ foreach (var key in dict.Keys)
+ {
+ dungeonEnterDict[key].level = dict[key];
}
}
- funcCfg = Config.Instance.Get<FuncConfigConfig>("BuyFBCntCost");
- if (funcCfg != null)
+ funcConfig = Config.Instance.Get<FuncConfigConfig>("BuyFBCntCost");
+ if (funcConfig != null)
{
- JsonData jsonData = JsonMapper.ToObject(funcCfg.Numerical1);
+ JsonData jsonData = JsonMapper.ToObject(funcConfig.Numerical1);
foreach (var key in jsonData.Keys)
{
int _mapId = int.Parse(key);
dungeonBuyCntFormulaDic.Add(_mapId, jsonData[key].ToString());
}
}
- funcCfg = Config.Instance.Get<FuncConfigConfig>("MunekadoMapID");
- if (funcCfg != null)
+ funcConfig = Config.Instance.Get<FuncConfigConfig>("MunekadoMapID");
+ if (funcConfig != null)
{
- trialDungeonMapList.AddRange(ConfigParse.GetMultipleStr<int>(funcCfg.Numerical1));
+ trialDungeonMapList.AddRange(ConfigParse.GetMultipleStr<int>(funcConfig.Numerical1));
}
- funcCfg = Config.Instance.Get<FuncConfigConfig>("FBEncourageBuff");
- if (funcCfg != null)
+ funcConfig = Config.Instance.Get<FuncConfigConfig>("FBEncourageBuff");
+ if (funcConfig != null)
{
- dungeonMaxInspireCountDict = ConfigParse.GetDic<int, int>(funcCfg.Numerical2);
- dungeonInspireUpperDict = ConfigParse.GetDic<int, int>(funcCfg.Numerical3);
+ dungeonMaxInspireCountDict = ConfigParse.GetDic<int, int>(funcConfig.Numerical2);
+ dungeonInspireUpperDict = ConfigParse.GetDic<int, int>(funcConfig.Numerical3);
}
foreach (var _cfg in Config.Instance.GetAllValues<DungeonInspireConfig>())
@@ -1402,11 +1408,11 @@
_list.Add(_cfg);
}
- funcCfg = Config.Instance.Get<FuncConfigConfig>("FamilyInvadeCfg");
- if (funcCfg != null)
+ funcConfig = Config.Instance.Get<FuncConfigConfig>("FamilyInvadeCfg");
+ if (funcConfig != null)
{
- guardSkyBuffIds = JsonMapper.ToObject<int[]>(funcCfg.Numerical4);
- guardSkyGuardNpcs = JsonMapper.ToObject<int[]>(funcCfg.Numerical5);
+ guardSkyBuffIds = JsonMapper.ToObject<int[]>(funcConfig.Numerical4);
+ guardSkyGuardNpcs = JsonMapper.ToObject<int[]>(funcConfig.Numerical5);
}
}
--
Gitblit v1.8.0