Core/GameEngine/Model/Config/NewAllPeoplePartyAwardConfig.cs
New file @@ -0,0 +1,50 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, January 28, 2019 //-------------------------------------------------------- using UnityEngine; using System; namespace TableConfig { public partial class NewAllPeoplePartyAwardConfig : ConfigBase { public int ID { get ; private set ; } public int WorldLvNum { get ; private set ; } public int Index { get ; private set ; } public int NeedPoint { get ; private set ; } public string Award { get ; private set; } public override string getKey() { return ID.ToString(); } public override void Parse() { try { ID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; WorldLvNum=IsNumeric(rawContents[1]) ? int.Parse(rawContents[1]):0; Index=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0; NeedPoint=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0; Award = rawContents[4].Trim(); } catch (Exception ex) { DebugEx.Log(ex); } } } } Core/GameEngine/Model/Config/NewAllPeoplePartyAwardConfig.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: dc45dc5c333241a4aa6a86d6582345d4 timeCreated: 1548641231 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: Core/GameEngine/Model/Config/NewAllPeoplePartyConfig.cs
New file @@ -0,0 +1,56 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, January 28, 2019 //-------------------------------------------------------- using UnityEngine; using System; namespace TableConfig { public partial class NewAllPeoplePartyConfig : ConfigBase { public int ID { get ; private set ; } public int TotalTimes { get ; private set ; } public int AddPoint { get ; private set ; } public string TaskDes { get ; private set; } public int FuncID { get ; private set ; } public int JumpId { get ; private set ; } public string IconKey { get ; private set; } public override string getKey() { return ID.ToString(); } public override void Parse() { try { ID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; TotalTimes=IsNumeric(rawContents[1]) ? int.Parse(rawContents[1]):0; AddPoint=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0; TaskDes = rawContents[3].Trim(); FuncID=IsNumeric(rawContents[4]) ? int.Parse(rawContents[4]):0; JumpId=IsNumeric(rawContents[5]) ? int.Parse(rawContents[5]):0; IconKey = rawContents[6].Trim(); } catch (Exception ex) { DebugEx.Log(ex); } } } } Core/GameEngine/Model/Config/NewAllPeoplePartyConfig.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 01085571ea414574ab820a603c95a7e4 timeCreated: 1548641216 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: Core/GameEngine/Model/Config/NewUniquenessArriveConfig.cs
New file @@ -0,0 +1,47 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, January 28, 2019 //-------------------------------------------------------- using UnityEngine; using System; namespace TableConfig { public partial class NewUniquenessArriveConfig : ConfigBase { public int ID { get ; private set ; } public int WorldLvNum { get ; private set ; } public int Rank { get ; private set ; } public string Award { get ; private set; } public override string getKey() { return ID.ToString(); } public override void Parse() { try { ID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; WorldLvNum=IsNumeric(rawContents[1]) ? int.Parse(rawContents[1]):0; Rank=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0; Award = rawContents[3].Trim(); } catch (Exception ex) { DebugEx.Log(ex); } } } } Core/GameEngine/Model/Config/NewUniquenessArriveConfig.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 87366e89b63cd3342857f3a053af847d timeCreated: 1548641281 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: Core/GameEngine/Model/ConfigManager.cs
@@ -192,6 +192,9 @@ AddAsyncTask<UniquenessArriveConfig>(); AddAsyncTask<AllPeoplePartyConfig>(); AddAsyncTask<AllPeoplePartyAwardConfig>(); AddAsyncTask<NewUniquenessArriveConfig>(); AddAsyncTask<NewAllPeoplePartyConfig>(); AddAsyncTask<NewAllPeoplePartyAwardConfig>(); AddAsyncTask<OrderInfoConfig>(); AddAsyncTask<TrialExchangeConfig>(); AddAsyncTask<DogzDungeonConfig>(); System/NewYearFairylandCeremony/NewYearCeremonyCoolTime.cs
@@ -21,7 +21,7 @@ private void RefreshSecond() { int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.FairyCeremony); int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.NewYearFairyCeremony); if (seconds > 0) { m_Time.text = StringUtility.Contact("<color=#8DDC11FF>", TimeUtility.SecondsToHMS(seconds), "</color>"); System/NewYearFairylandCeremony/NewYearCeremonyFirepartyWin.cs
@@ -14,9 +14,9 @@ [SerializeField] CommonItemBaisc fireItem; [SerializeField] List<CommonItemBaisc> itemBaiscs = new List<CommonItemBaisc>(); List<FairylandCeremonyModel.AwardItem> itemlist; List<NewYearFairylandCeremonyModel.AwardItem> itemlist; ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } } NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } } PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } } StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } } @@ -73,7 +73,7 @@ if (i < itemlist.Count) { itemBaiscs[i].gameObject.SetActive(true); FairylandCeremonyModel.AwardItem itemData = itemlist[i]; NewYearFairylandCeremonyModel.AwardItem itemData = itemlist[i]; ItemCellModel cellModel = new ItemCellModel(itemData.itemId, true,(ulong)itemData.itemCount,itemData.isBind); itemBaiscs[i].Init(cellModel); itemBaiscs[i].cellBtn.RemoveAllListeners(); @@ -94,7 +94,7 @@ private void RefreshSecond() { int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.FairyCeremony); int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.NewYearFairyCeremony); if (seconds > 0) { remainTimeText.text = StringUtility.Contact("<color=#8DDC11FF>", TimeUtility.SecondsToHMS(seconds), "</color>"); System/NewYearFairylandCeremony/NewYearCeremonyOutOfPrintWin.cs
@@ -18,7 +18,7 @@ [SerializeField] List<CommonItemBaisc> thirdItemlist = new List<CommonItemBaisc>(); ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } } NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } } KingFairyModel kingFairyModel { get { return ModelCenter.Instance.GetModel<KingFairyModel>(); } } protected override void BindController() { @@ -123,7 +123,7 @@ private void RefreshSecond() { int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.FairyCeremony); int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.NewYearFairyCeremony); if(seconds > 0) { remainTimeText.text = StringUtility.Contact("<color=#8DDC11FF>", TimeUtility.SecondsToHMS(seconds), "</color>"); @@ -135,7 +135,7 @@ } private void SetRankAward(List<CommonItemBaisc> baiscs,List<FairylandCeremonyModel.AwardItem> list) private void SetRankAward(List<CommonItemBaisc> baiscs,List<NewYearFairylandCeremonyModel.AwardItem> list) { if (list == null) return; @@ -144,7 +144,7 @@ if (i < list.Count) { baiscs[i].gameObject.SetActive(true); FairylandCeremonyModel.AwardItem itemData = list[i]; NewYearFairylandCeremonyModel.AwardItem itemData = list[i]; ItemCellModel cellModel = new ItemCellModel(itemData.itemId, true,(ulong)itemData.itemCount,itemData.isBind); baiscs[i].Init(cellModel); baiscs[i].cellBtn.RemoveAllListeners(); System/NewYearFairylandCeremony/NewYearCeremonyPeopleToHiWin.cs
@@ -12,9 +12,9 @@ [SerializeField] ScrollerController taskCtrl; [SerializeField] Text hiPointText; List<AllPeoplePartyConfig> taskConfigs; List<AllPeoplePartyAwardConfig> awardConfigs; FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } } List<NewAllPeoplePartyConfig> taskConfigs; List<NewAllPeoplePartyAwardConfig> awardConfigs; NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } } int presentAwardIndex = 0; @@ -80,7 +80,7 @@ private void RefreshTaskCell(ScrollerDataType type, CellView cell) { ToHiTaskCell taskCell = cell.GetComponent<ToHiTaskCell>(); NewYearToHiTaskCell taskCell = cell.GetComponent<NewYearToHiTaskCell>(); if (taskCell == null) return; taskCell.Init(taskConfigs[cell.index]); @@ -105,7 +105,7 @@ private void RefreshAwardCell(ScrollerDataType type, CellView cell) { ToHiAwardCell awardCell = cell.GetComponent<ToHiAwardCell>(); NewYearToHiAwardCell awardCell = cell.GetComponent<NewYearToHiAwardCell>(); if (awardCell == null) return; awardCell.Init(awardConfigs[cell.index]); System/NewYearFairylandCeremony/NewYearCeremonyRechargeGiftWin.cs
@@ -15,9 +15,9 @@ [SerializeField] Text remainTimeText; [SerializeField] List<CommonItemBaisc> itemBaiscs = new List<CommonItemBaisc>(); List<FairylandCeremonyModel.AwardItem> itemlist; List<NewYearFairylandCeremonyModel.AwardItem> itemlist; ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } } NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } } PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } } protected override void BindController() @@ -64,7 +64,7 @@ if(i < itemlist.Count) { itemBaiscs[i].gameObject.SetActive(true); FairylandCeremonyModel.AwardItem itemData = itemlist[i]; NewYearFairylandCeremonyModel.AwardItem itemData = itemlist[i]; ItemCellModel cellModel = new ItemCellModel(itemData.itemId,true, (ulong)itemData.itemCount, itemData.isBind); itemBaiscs[i].Init(cellModel); itemBaiscs[i].cellBtn.RemoveAllListeners(); @@ -86,7 +86,7 @@ private void RefreshSecond() { int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.FairyCeremony); int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.NewYearFairyCeremony); if (seconds > 0) { remainTimeText.text = StringUtility.Contact("<color=#8DDC11FF>", TimeUtility.SecondsToHMS(seconds), "</color>"); @@ -101,15 +101,15 @@ { switch (ceremonyModel.receiveState) { case FairylandCeremonyModel.ReceiveState.NoReach: case NewYearFairylandCeremonyModel.ReceiveState.NoReach: receiveBtnImg.material = MaterialUtility.GetDefaultSpriteGrayMaterial(); receiveBtnText.text = "领取礼包"; break; case FairylandCeremonyModel.ReceiveState.Reach: case NewYearFairylandCeremonyModel.ReceiveState.Reach: receiveBtnImg.material = MaterialUtility.GetUIDefaultGraphicMaterial(); receiveBtnText.text = "领取礼包"; break; case FairylandCeremonyModel.ReceiveState.Already: case NewYearFairylandCeremonyModel.ReceiveState.Already: receiveBtnImg.material = MaterialUtility.GetDefaultSpriteGrayMaterial(); receiveBtnText.text = "已领取"; break; @@ -122,10 +122,10 @@ switch (ceremonyModel.receiveState) { case FairylandCeremonyModel.ReceiveState.NoReach: case NewYearFairylandCeremonyModel.ReceiveState.NoReach: SysNotifyMgr.Instance.ShowTip("FairylandCermonyRecharge1"); break; case FairylandCeremonyModel.ReceiveState.Reach: case NewYearFairylandCeremonyModel.ReceiveState.Reach: bool isGrid = playerPack.GetReaminGridCount(PackType.rptItem) - itemlist.Count >= 0 ? true : false; if (isGrid) { @@ -136,7 +136,7 @@ SysNotifyMgr.Instance.ShowTip("BagFull"); } break; case FairylandCeremonyModel.ReceiveState.Already: case NewYearFairylandCeremonyModel.ReceiveState.Already: SysNotifyMgr.Instance.ShowTip("FairylandCermonyRecharge2"); break; } System/NewYearFairylandCeremony/NewYearFairylandCeremonyModel.cs
@@ -9,132 +9,12 @@ public class NewYearFairylandCeremonyModel : Model,IBeforePlayerDataInitialize,IAfterPlayerDataInitialize,IPlayerLoginOk { public ReceiveState receiveState { get; private set; } Dictionary<CeremonyType, Dictionary<int, List<int>>> typeLvDict = new Dictionary<CeremonyType, Dictionary<int, List<int>>>(); Dictionary<int, List<AwardItem>> rechargeAwardDict = new Dictionary<int, List<AwardItem>>(); public Dictionary<int, int> fireDict = new Dictionary<int, int>(); List<AllPeoplePartyConfig> allPeoples = new List<AllPeoplePartyConfig>(); List<AllPeoplePartyAwardConfig> allPeopleAwards = new List<AllPeoplePartyAwardConfig>(); Dictionary<int, Dictionary<int, List<AwardItem>>> jobToHiAwardDict = new Dictionary<int, Dictionary<int, List<AwardItem>>>(); Dictionary<string, Dictionary<int, List<AwardItem>>> rankAwardDict = new Dictionary<string, Dictionary<int, List<AwardItem>>>(); Dictionary<int,Dictionary<int,List<AwardItem>>> fireGiftsDict = new Dictionary<int, Dictionary<int, List<AwardItem>>>(); public override void Init() { FuncConfigConfig lvConfig = Config.Instance.Get<FuncConfigConfig>("CeremonyWorldLv"); JsonData lvData = JsonMapper.ToObject(lvConfig.Numerical1); foreach (var type in lvData.Keys) { Dictionary<int, List<int>> lvDict = new Dictionary<int, List<int>>(); typeLvDict.Add((CeremonyType)int.Parse(type),lvDict); if(lvData[type].IsArray) { for(int i = 0; i < lvData[type].Count; i++) { JsonData rangeData = lvData[type][i]; List<int> lvlist = new List<int>(); lvDict.Add(i,lvlist); lvlist.Add(int.Parse(rangeData[0].ToString())); lvlist.Add(int.Parse(rangeData[1].ToString())); } } } FuncConfigConfig rechargeConfig = Config.Instance.Get<FuncConfigConfig>("CeremonyRecharge"); JsonData rechargeData = JsonMapper.ToObject(rechargeConfig.Numerical1); foreach(var index in rechargeData.Keys) { List<AwardItem> awardItems = new List<AwardItem>(); rechargeAwardDict.Add(int.Parse(index),awardItems); if(rechargeData[index].IsArray) { for(int i = 0; i < rechargeData[index].Count; i++) { JsonData itemData = rechargeData[index][i]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } FuncConfigConfig fireConfig = Config.Instance.Get<FuncConfigConfig>("CeremonyFireParty"); JsonData fireData = JsonMapper.ToObject(fireConfig.Numerical1); foreach(var index in fireData.Keys) { fireDict.Add(int.Parse(index),int.Parse(fireData[index].ToString())); } FuncConfigConfig fireAwardConfig = Config.Instance.Get<FuncConfigConfig>("CeremonyFireAward"); JsonData fireAwardData = JsonMapper.ToObject(fireAwardConfig.Numerical1); foreach (var index in fireAwardData.Keys) { Dictionary<int, List<AwardItem>> jobFireAwardDict = new Dictionary<int, List<AwardItem>>(); fireGiftsDict.Add(int.Parse(index),jobFireAwardDict); foreach(var job in fireAwardData[index].Keys) { List<AwardItem> awardItems = new List<AwardItem>(); jobFireAwardDict.Add(int.Parse(job),awardItems); if (fireAwardData[index][job].IsArray) { for (int i = 0; i < fireAwardData[index][job].Count; i++) { JsonData itemData = fireAwardData[index][job][i]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } } allPeoples = Config.Instance.GetAllValues<AllPeoplePartyConfig>(); allPeopleAwards = Config.Instance.GetAllValues<AllPeoplePartyAwardConfig>(); for(int i = 0; i < allPeopleAwards.Count; i++) { Dictionary<int, List<AwardItem>> awardKeyDict = new Dictionary<int, List<AwardItem>>(); jobToHiAwardDict.Add(allPeopleAwards[i].ID,awardKeyDict); JsonData awardData = JsonMapper.ToObject(allPeopleAwards[i].Award); foreach(var job in awardData.Keys) { List<AwardItem> awardItems = new List<AwardItem>(); awardKeyDict.Add(int.Parse(job),awardItems); if(awardData[job].IsArray) { for(int j = 0; j < awardData[job].Count;j++) { JsonData itemData = awardData[job][j]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } } List<UniquenessArriveConfig> arriveConfigs = Config.Instance.GetAllValues<UniquenessArriveConfig>(); for(int i = 0; i < arriveConfigs.Count; i++) { string key = StringUtility.Contact(arriveConfigs[i].WorldLvNum,arriveConfigs[i].Rank); Dictionary<int, List<AwardItem>> awardKeyDict = new Dictionary<int, List<AwardItem>>(); rankAwardDict.Add(key,awardKeyDict); JsonData awardData = JsonMapper.ToObject(arriveConfigs[i].Award); foreach (var job in awardData.Keys) { List<AwardItem> awardItems = new List<AwardItem>(); awardKeyDict.Add(int.Parse(job), awardItems); if (awardData[job].IsArray) { for (int j = 0; j < awardData[job].Count; j++) { JsonData itemData = awardData[job][j]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } } ParseFuncConfig(); ParseAllPeoplePartyConfig(); ParseUniquenessArriveConfig(); //OperationTimeHepler.Instance.operationEndEvent += OnActiveEnd; } @@ -257,7 +137,7 @@ private void OnActiveEnd(Operation type, int arg2) { if (type != Operation.FairyCeremony) return; if (type != Operation.NewYearFairyCeremony) return; peopleTaskRecordDict.Clear(); sumHiPoint = 0; @@ -283,6 +163,149 @@ #endregion #region 处理本地数据 #region 解析功能配置表 Dictionary<CeremonyType, Dictionary<int, List<int>>> typeLvDict = new Dictionary<CeremonyType, Dictionary<int, List<int>>>(); Dictionary<int, List<AwardItem>> rechargeAwardDict = new Dictionary<int, List<AwardItem>>(); public Dictionary<int, int> fireDict = new Dictionary<int, int>(); Dictionary<int, Dictionary<int, List<AwardItem>>> fireGiftsDict = new Dictionary<int, Dictionary<int, List<AwardItem>>>(); private void ParseFuncConfig() { FuncConfigConfig lvConfig = Config.Instance.Get<FuncConfigConfig>("NewCeremonyWorldLv"); JsonData lvData = JsonMapper.ToObject(lvConfig.Numerical1); foreach (var type in lvData.Keys) { Dictionary<int, List<int>> lvDict = new Dictionary<int, List<int>>(); typeLvDict.Add((CeremonyType)int.Parse(type), lvDict); if (lvData[type].IsArray) { for (int i = 0; i < lvData[type].Count; i++) { JsonData rangeData = lvData[type][i]; List<int> lvlist = new List<int>(); lvDict.Add(i, lvlist); lvlist.Add(int.Parse(rangeData[0].ToString())); lvlist.Add(int.Parse(rangeData[1].ToString())); } } } FuncConfigConfig rechargeConfig = Config.Instance.Get<FuncConfigConfig>("NewCeremonyRecharge"); JsonData rechargeData = JsonMapper.ToObject(rechargeConfig.Numerical1); foreach (var index in rechargeData.Keys) { List<AwardItem> awardItems = new List<AwardItem>(); rechargeAwardDict.Add(int.Parse(index), awardItems); if (rechargeData[index].IsArray) { for (int i = 0; i < rechargeData[index].Count; i++) { JsonData itemData = rechargeData[index][i]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } FuncConfigConfig fireConfig = Config.Instance.Get<FuncConfigConfig>("NewCeremonyFireParty"); JsonData fireData = JsonMapper.ToObject(fireConfig.Numerical1); foreach (var index in fireData.Keys) { fireDict.Add(int.Parse(index), int.Parse(fireData[index].ToString())); } FuncConfigConfig fireAwardConfig = Config.Instance.Get<FuncConfigConfig>("NewCeremonyFireAward"); JsonData fireAwardData = JsonMapper.ToObject(fireAwardConfig.Numerical1); foreach (var index in fireAwardData.Keys) { Dictionary<int, List<AwardItem>> jobFireAwardDict = new Dictionary<int, List<AwardItem>>(); fireGiftsDict.Add(int.Parse(index), jobFireAwardDict); foreach (var job in fireAwardData[index].Keys) { List<AwardItem> awardItems = new List<AwardItem>(); jobFireAwardDict.Add(int.Parse(job), awardItems); if (fireAwardData[index][job].IsArray) { for (int i = 0; i < fireAwardData[index][job].Count; i++) { JsonData itemData = fireAwardData[index][job][i]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } } } #endregion #region 解析全民来嗨 List<NewAllPeoplePartyConfig> allPeoples = new List<NewAllPeoplePartyConfig>(); List<NewAllPeoplePartyAwardConfig> allPeopleAwards = new List<NewAllPeoplePartyAwardConfig>(); Dictionary<int, Dictionary<int, List<AwardItem>>> jobToHiAwardDict = new Dictionary<int, Dictionary<int, List<AwardItem>>>(); private void ParseAllPeoplePartyConfig() { allPeoples = Config.Instance.GetAllValues<NewAllPeoplePartyConfig>(); allPeopleAwards = Config.Instance.GetAllValues<NewAllPeoplePartyAwardConfig>(); for (int i = 0; i < allPeopleAwards.Count; i++) { Dictionary<int, List<AwardItem>> awardKeyDict = new Dictionary<int, List<AwardItem>>(); jobToHiAwardDict.Add(allPeopleAwards[i].ID, awardKeyDict); JsonData awardData = JsonMapper.ToObject(allPeopleAwards[i].Award); foreach (var job in awardData.Keys) { List<AwardItem> awardItems = new List<AwardItem>(); awardKeyDict.Add(int.Parse(job), awardItems); if (awardData[job].IsArray) { for (int j = 0; j < awardData[job].Count; j++) { JsonData itemData = awardData[job][j]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } } } #endregion #region 解析绝版降临 Dictionary<string, Dictionary<int, List<AwardItem>>> rankAwardDict = new Dictionary<string, Dictionary<int, List<AwardItem>>>(); private void ParseUniquenessArriveConfig() { List<NewUniquenessArriveConfig> arriveConfigs = Config.Instance.GetAllValues<NewUniquenessArriveConfig>(); for (int i = 0; i < arriveConfigs.Count; i++) { string key = StringUtility.Contact(arriveConfigs[i].WorldLvNum, arriveConfigs[i].Rank); Dictionary<int, List<AwardItem>> awardKeyDict = new Dictionary<int, List<AwardItem>>(); rankAwardDict.Add(key, awardKeyDict); JsonData awardData = JsonMapper.ToObject(arriveConfigs[i].Award); foreach (var job in awardData.Keys) { List<AwardItem> awardItems = new List<AwardItem>(); awardKeyDict.Add(int.Parse(job), awardItems); if (awardData[job].IsArray) { for (int j = 0; j < awardData[job].Count; j++) { JsonData itemData = awardData[job][j]; AwardItem item = new AwardItem(int.Parse(itemData[0].ToString()), int.Parse(itemData[1].ToString()), int.Parse(itemData[2].ToString())); awardItems.Add(item); } } } } } #endregion public int GetWorldLvIndex(CeremonyType type) { if(typeLvDict.ContainsKey(type)) @@ -338,8 +361,8 @@ return false; } List<AllPeoplePartyConfig> openTasklist = new List<AllPeoplePartyConfig>(); public List<AllPeoplePartyConfig> GetPeoplePartTasklist() List<NewAllPeoplePartyConfig> openTasklist = new List<NewAllPeoplePartyConfig>(); public List<NewAllPeoplePartyConfig> GetPeoplePartTasklist() { openTasklist.Clear(); for(int i = 0; i < allPeoples.Count; i++) @@ -353,7 +376,7 @@ return openTasklist; } private int CompareByTimes(AllPeoplePartyConfig start,AllPeoplePartyConfig end) private int CompareByTimes(NewAllPeoplePartyConfig start, NewAllPeoplePartyConfig end) { bool startIsComplte = PeopleTaskComplete(start); bool endIsComplte = PeopleTaskComplete(end); @@ -366,7 +389,7 @@ return 0; } public bool PeopleTaskComplete(AllPeoplePartyConfig partyConfig) public bool PeopleTaskComplete(NewAllPeoplePartyConfig partyConfig) { if (GetPeopleTaskTimesById(partyConfig.ID) >= partyConfig.TotalTimes) { @@ -375,8 +398,8 @@ return false; } List<AllPeoplePartyAwardConfig> worldAwardlist = new List<AllPeoplePartyAwardConfig>(); public List<AllPeoplePartyAwardConfig> GetPeoplePartAwardlist() List<NewAllPeoplePartyAwardConfig> worldAwardlist = new List<NewAllPeoplePartyAwardConfig>(); public List<NewAllPeoplePartyAwardConfig> GetPeoplePartAwardlist() { worldAwardlist.Clear(); int index = GetWorldLvIndex(CeremonyType.WholePeople); @@ -391,7 +414,7 @@ return worldAwardlist; } public int CompareByIndex(AllPeoplePartyAwardConfig start,AllPeoplePartyAwardConfig end) public int CompareByIndex(NewAllPeoplePartyAwardConfig start, NewAllPeoplePartyAwardConfig end) { int startIndex = start.Index; int endIndex = end.Index; @@ -434,16 +457,16 @@ #endregion #region 红点逻辑处理 public const int FairyCeremony_RedKey = 212; public const int FairyCeremony_RedKey = 216; public Redpoint fairyCeremonyRedp = new Redpoint(MainRedDot.RedPoint_UpFuncBase,FairyCeremony_RedKey); public const int CeremonyRecharge_RedKey = 21201; public const int CeremonyRecharge_RedKey = 21601; public Redpoint rechargeRedp = new Redpoint(FairyCeremony_RedKey,CeremonyRecharge_RedKey); public const int RechargeReceiveBtn_RedKey = 2120101; public const int RechargeReceiveBtn_RedKey = 2160101; public Redpoint receiveBtnRedp = new Redpoint(CeremonyRecharge_RedKey, RechargeReceiveBtn_RedKey); public void CheckRechargeRed() { if (!OperationTimeHepler.Instance.SatisfyOpenCondition(Operation.FairyCeremony)) return; if (!OperationTimeHepler.Instance.SatisfyOpenCondition(Operation.NewYearFairyCeremony)) return; if(receiveState == ReceiveState.Reach) { @@ -455,12 +478,12 @@ } } public const int CeremonyPeople_RedKey = 21203; public const int CeremonyPeople_RedKey = 21603; public Redpoint peopleRedp = new Redpoint(FairyCeremony_RedKey, CeremonyPeople_RedKey); public void CheckPeoplePartyRed() { if (!OperationTimeHepler.Instance.SatisfyOpenCondition(Operation.FairyCeremony)) return; if (!OperationTimeHepler.Instance.SatisfyOpenCondition(Operation.NewYearFairyCeremony)) return; int index = 0; if(IsPeopleAwardRecive(out index)) System/NewYearFairylandCeremony/NewYearFairylandCeremonyWin.cs
@@ -15,7 +15,7 @@ [SerializeField] Button rightBtn; [SerializeField] Button closeBtn; FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } } NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } } protected override void BindController() { @@ -87,11 +87,11 @@ CloseChildWin(); if (windowState == WindowState.Opened) { WindowCenter.Instance.OpenWithoutAnimation<CeremonyOutOfPrintWin>(); WindowCenter.Instance.OpenWithoutAnimation<NewYearCeremonyOutOfPrintWin>(); } else { WindowCenter.Instance.Open<CeremonyOutOfPrintWin>(); WindowCenter.Instance.Open<NewYearCeremonyOutOfPrintWin>(); } functionOrder = 3; } @@ -101,11 +101,11 @@ CloseChildWin(); if (windowState == WindowState.Opened) { WindowCenter.Instance.OpenWithoutAnimation<CeremonyPeopleToHiWin>(); WindowCenter.Instance.OpenWithoutAnimation<NewYearCeremonyPeopleToHiWin>(); } else { WindowCenter.Instance.Open<CeremonyPeopleToHiWin>(); WindowCenter.Instance.Open<NewYearCeremonyPeopleToHiWin>(); } functionOrder = 2; } @@ -115,11 +115,11 @@ CloseChildWin(); if (windowState == WindowState.Opened) { WindowCenter.Instance.OpenWithoutAnimation<CeremonyFirepartyWin>(); WindowCenter.Instance.OpenWithoutAnimation<NewYearCeremonyFirepartyWin>(); } else { WindowCenter.Instance.Open<CeremonyFirepartyWin>(); WindowCenter.Instance.Open<NewYearCeremonyFirepartyWin>(); } functionOrder = 1; } @@ -129,18 +129,18 @@ CloseChildWin(); if (windowState == WindowState.Opened) { WindowCenter.Instance.OpenWithoutAnimation<CeremonyRechargeGiftWin>(); WindowCenter.Instance.OpenWithoutAnimation<NewYearCeremonyRechargeGiftWin>(); } else { WindowCenter.Instance.Open<CeremonyRechargeGiftWin>(); WindowCenter.Instance.Open<NewYearCeremonyRechargeGiftWin>(); } functionOrder = 0; } private void CloseChildWin() { var children = WindowConfig.Get().FindChildWindows("FairylandCeremonyWin"); var children = WindowConfig.Get().FindChildWindows(this.GetType().Name); foreach (var window in children) { WindowCenter.Instance.Close(window); System/NewYearFairylandCeremony/NewYearToHiAwardCell.cs
@@ -15,12 +15,12 @@ [SerializeField] GameObject alreadyImg; [SerializeField] List<CommonItemBaisc> itemBaiscs = new List<CommonItemBaisc>(); List<FairylandCeremonyModel.AwardItem> itemlist; List<NewYearFairylandCeremonyModel.AwardItem> itemlist; ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } FairylandCeremonyModel.ReceiveState receiveState = FairylandCeremonyModel.ReceiveState.NoReach; NewYearFairylandCeremonyModel.ReceiveState receiveState = NewYearFairylandCeremonyModel.ReceiveState.NoReach; PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } } FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } } AllPeoplePartyAwardConfig awardConfig; NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } } NewAllPeoplePartyAwardConfig awardConfig; private void OnEnable() { @@ -31,7 +31,7 @@ { ceremonyModel.RefreshHiAwardStateAct -= SetAwardState; } public void Init(AllPeoplePartyAwardConfig awardConfig) public void Init(NewAllPeoplePartyAwardConfig awardConfig) { this.awardConfig = awardConfig; titleText.text = Language.Get("CeremoneyToHiAward", awardConfig.NeedPoint); @@ -41,7 +41,7 @@ if (i < itemlist.Count) { itemBaiscs[i].gameObject.SetActive(true); FairylandCeremonyModel.AwardItem itemData = itemlist[i]; NewYearFairylandCeremonyModel.AwardItem itemData = itemlist[i]; ItemCellModel cellModel = new ItemCellModel(itemData.itemId, true,(ulong)itemData.itemCount, itemData.isBind); itemBaiscs[i].Init(cellModel); itemBaiscs[i].cellBtn.RemoveAllListeners(); @@ -66,17 +66,17 @@ if(ceremonyModel.GetPeopleAwardRecordByIndex(awardConfig.Index)) { receiveState = FairylandCeremonyModel.ReceiveState.Already; receiveState = NewYearFairylandCeremonyModel.ReceiveState.Already; } else { if(ceremonyModel.sumHiPoint >= awardConfig.NeedPoint) { receiveState = FairylandCeremonyModel.ReceiveState.Reach; receiveState = NewYearFairylandCeremonyModel.ReceiveState.Reach; } else { receiveState = FairylandCeremonyModel.ReceiveState.NoReach; receiveState = NewYearFairylandCeremonyModel.ReceiveState.NoReach; } } RefreshAwardStateUI(); @@ -87,18 +87,18 @@ receiveBtn.RemoveAllListeners(); switch (receiveState) { case FairylandCeremonyModel.ReceiveState.NoReach: case NewYearFairylandCeremonyModel.ReceiveState.NoReach: noReachImg.SetActive(true); alreadyImg.SetActive(false); receiveBtn.gameObject.SetActive(false); break; case FairylandCeremonyModel.ReceiveState.Reach: case NewYearFairylandCeremonyModel.ReceiveState.Reach: noReachImg.SetActive(false); alreadyImg.SetActive(false); receiveBtn.gameObject.SetActive(true); receiveBtn.AddListener(OnReceiveGift); break; case FairylandCeremonyModel.ReceiveState.Already: case NewYearFairylandCeremonyModel.ReceiveState.Already: noReachImg.SetActive(false); alreadyImg.SetActive(true); receiveBtn.gameObject.SetActive(false); System/NewYearFairylandCeremony/NewYearToHiTaskCell.cs
@@ -14,8 +14,8 @@ [SerializeField] Button gobtn; [SerializeField] GameObject completeImg; AllPeoplePartyConfig taskConfig; FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } } NewAllPeoplePartyConfig taskConfig; NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } } private void OnEnable() { @@ -27,7 +27,7 @@ ceremonyModel.RefreshHiPointAct -= OnRefreshProgress; } public void Init(AllPeoplePartyConfig taskConfig) public void Init(NewAllPeoplePartyConfig taskConfig) { activeNameText.gameObject.SetActive(false); this.taskConfig = taskConfig; System/Welfare/OperationTimeHepler.cs
@@ -426,6 +426,37 @@ } /// <summary> /// 春节仙界盛典 /// </summary> /// <param name="info"></param> public void RefreshNewYearFairyCeremonyInfo(HAC09_tagGCFairyCeremonyInfo package) { OperationBase operation = null; operationDict.TryGetValue(Operation.NewYearFairyCeremony, out operation); if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate)) { ForceStopOperation(Operation.NewYearFairyCeremony); } else { if (operation == null) { operation = new OperationBase(); operationDict.Add(Operation.NewYearFairyCeremony, operation); } operation.Reset(); operation.startDate = ParseOperationDate(package.StartDate); operation.endDate = ParseOperationDate(package.EndtDate); operation.limitLv = package.LimitLV; operation.resetType = package.ResetType; if (operationTimeUpdateEvent != null) { operationTimeUpdateEvent(Operation.NewYearFairyCeremony); } } } /// <summary> /// N倍修行点 /// </summary> /// <param name="package"></param> @@ -760,6 +791,7 @@ FlashRushToBuy, //限时抢购 WishingWellInfo, //许愿池 AccumulateRecharge,//累计充值 NewYearFairyCeremony, //春节仙界盛典 max, } } System/WindowBase/ModelCenter.cs
@@ -225,6 +225,7 @@ RegisterModel<JadeDynastyDecomposeModel>(); RegisterModel<JadeDynastyTowerModel>(); RegisterModel<JadeDynastyEquipModel>(); RegisterModel<NewYearFairylandCeremonyModel>(); inited = true; }