| Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/GameEngine/Model/Player/PlayerDatas.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/CrossServerOneVsOne/CrossServerOneVsOneHonorShopCell.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/CrossServerOneVsOne/CrossServerOneVsOneHonorStoreWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/CrossServerOneVsOne/CrossServerOneVsOneModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/CrossServerOneVsOne/CrossServerOneVsOneWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/CrossServerOneVsOne/SeasonRewardCell.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/CrossServerOneVsOne/SeasonRewardWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Store/StoreModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Utility/EnumHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Utility/UIHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs
@@ -62,4 +62,5 @@ public uint soulDust;//聚魂-魂尘 196 public uint soulSplinters;//聚魂-碎片 197 public uint soulCore;//聚魂-核心环 198 public int honorValue; //荣誉值 199 } Core/GameEngine/Model/Player/PlayerDatas.cs
@@ -808,6 +808,9 @@ case PlayerDataRefresh.CDBPlayerRefresh_SoulCore: extersion.soulCore = value; break; case PlayerDataRefresh.CDBPlayerRefresh_Honor: extersion.honorValue = (int)value; break; } } System/CrossServerOneVsOne/CrossServerOneVsOneHonorShopCell.cs
@@ -67,6 +67,7 @@ } vipText.gameObject.SetActive(!isShowBuyPrice); refreshTimeText.gameObject.SetActive(false); moneyIcon.gameObject.SetActive(isShowBuyPrice); if (canBuyCnt > 0) { @@ -88,6 +89,12 @@ sellImg.gameObject.SetActive(true); itemCell.countText.text = StringUtility.Contact(UIHelper.AppendStringColor(TextColType.Red, remainNum.ToString()), "/" + canBuyCnt.ToString()); string refreshDes = m_storeModel.GetStoreRefreshTimeByType(storeConfig.RefreshType); if(!string.IsNullOrEmpty(refreshDes)) { refreshTimeText.gameObject.SetActive(true); refreshTimeText.text = refreshDes; } } } else @@ -100,7 +107,7 @@ { m_storeModel.OnClickShopCell(storeConfig); }); refreshTimeText.gameObject.SetActive(false); } private void UpdateRefreshTime() System/CrossServerOneVsOne/CrossServerOneVsOneHonorStoreWin.cs
@@ -32,7 +32,8 @@ protected override void OnPreOpen() { m_storeModel.storeFuncType = StoreFunc.XBEquipStore; m_storeModel.RefreshBuyShopLimitEvent += CreateShopCell; m_storeModel.storeFuncType = StoreFunc.CrossOneVsOneHonor; CreateShopCell(); } protected override void OnAfterOpen() @@ -42,7 +43,7 @@ protected override void OnPreClose() { m_storeModel.RefreshBuyShopLimitEvent -= CreateShopCell; } protected override void OnAfterClose() { System/CrossServerOneVsOne/CrossServerOneVsOneModel.cs
@@ -324,6 +324,8 @@ /// <param name="type"></param> public void SendCrossMatch(int type) { if (type == 1 && TryGetMatchTip()) return; CC101_tagCMCrossRealmPKMatch match = new CC101_tagCMCrossRealmPKMatch(); match.Type = (byte)type; GameNetSystem.Instance.SendInfo(match); @@ -334,6 +336,36 @@ CC102_tagCMCrossRealmPKBuy pKBuy = new CC102_tagCMCrossRealmPKBuy(); GameNetSystem.Instance.SendInfo(pKBuy); } public bool TryGetMatchTip() { int mapId = PlayerDatas.Instance.baseData.MapID; int dataMapId = dungeonModel.GetDataMapIdByMapId(mapId); bool isCrossDungeon = dataMapId == CrossServerDataMapId; if(isCrossDungeon) { SysNotifyMgr.Instance.ShowTip("CrossMatching3"); return true; } var mapConfig = Config.Instance.Get<MapConfig>(mapId); bool isDungeon = mapConfig != null && mapConfig.MapFBType != 0 ? true : false; if (isDungeon) { SysNotifyMgr.Instance.ShowTip("CrossMatching4"); return true; } var deadModel = ModelCenter.Instance.GetModel<PlayerDeadModel>(); if(deadModel.playerIsDie) { SysNotifyMgr.Instance.ShowTip("CrossMatching5"); return true; } return false; } #endregion #region 历史记录 System/CrossServerOneVsOne/CrossServerOneVsOneWin.cs
@@ -43,6 +43,7 @@ protected override void OnPreOpen() { SetDisplay(); PlayerDatas.Instance.PlayerDataRefreshInfoEvent += UpdatePlayerData; CrossServerOneVsOnePlayerInfo.Instance.UpdatePlayerInfoEvent += UpdatePlayerInfo; } @@ -54,6 +55,7 @@ protected override void OnPreClose() { CloseSubWindows(); PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= UpdatePlayerData; CrossServerOneVsOnePlayerInfo.Instance.UpdatePlayerInfoEvent -= UpdatePlayerInfo; } protected override void OnAfterClose() @@ -68,6 +70,13 @@ UpdateRank(); } private void UpdatePlayerData(PlayerDataRefresh type) { if (type != PlayerDataRefresh.CDBPlayerRefresh_Honor) return; UpdateHonor(); } private void SetDisplay() { crossServerWin = WindowCenter.Instance.Get<CrossServerWin>(); @@ -80,6 +89,7 @@ scoreSlider.maxValue = 1; UpdateScore(); UpdateRank(); UpdateHonor(); ClickArena(); } @@ -90,6 +100,11 @@ rankImg.SetSprite(arenaConfig.IconKey); } private void UpdateHonor() { honorText.text = UIHelper.GetMoneyCnt(18).ToString(); } private void UpdateScore() { curScoreText.text = playerInfo.Score.ToString(); System/CrossServerOneVsOne/SeasonRewardCell.cs
@@ -6,11 +6,14 @@ using System.Collections; using UnityEngine.UI; using System.Linq; using TableConfig; namespace Snxxz.UI { namespace Snxxz.UI { //赛季奖励的奖励条 [XLua.Hotfix] public class SeasonRewardCell:MonoBehaviour { public class SeasonRewardCell : MonoBehaviour { [SerializeField] Text m_Text_Ranking; [SerializeField] Transform m_Itemlist; [SerializeField] Button m_ReceiveBtn; @@ -29,42 +32,69 @@ set { m_ReceiveBtn = value; } } public void ScrollerDataTypAndId(ScrollerDataType type,int id) public void ScrollerDataTypAndId(ScrollerDataType type, int id) { switch (type) { case ScrollerDataType.Header: SetReceive(id); case ScrollerDataType.Header: SetReceiveH(id); break; case ScrollerDataType.Normal: SetReceiveN(id); break; } } private void SetReceive(int id) private void SetReceiveH(int id) { if (!crossServerRewardModel.SeasonRewardDic.AwardDic.ContainsKey(id)) { return; } m_Text_Ranking.gameObject.SetActive(true); m_Segmenttext.gameObject.SetActive(false); m_ImageColor.gameObject.SetActive(true); m_ImageWorld.gameObject.SetActive(true); var keyList = crossServerRewardModel.SeasonRewardDic.AwardDic.Keys.ToList(); int Index = keyList.IndexOf(id); if (Index == 0) { m_Text_Ranking.text = "1-" + id+"名"; m_Text_Ranking.text = "1-" + id + "名"; } else { int Number = keyList[(Index - 1)]; m_Text_Ranking.text = Number+"-"+ id+"名"; m_Text_Ranking.text = (Number+1) + "-" + id + "名"; } ReceiveItem(id); switch (Index) { case 0: m_ImageColor.SetSprite("CrossServer_1"); m_ImageWorld.SetSprite("CrossServer_6"); break; case 1: m_ImageColor.SetSprite("CrossServer_2"); m_ImageWorld.SetSprite("CrossServer_7"); break; case 2: m_ImageColor.SetSprite("CrossServer_3"); m_ImageWorld.SetSprite("CrossServer_8"); break; } if (CrossServerOneVsOnePKSeason.Instance.SeasonState != 2) { m_ReceiveBtn.gameObject.SetActive(false); m_IsDrawImage.gameObject.SetActive(false); m_IsReachImage.gameObject.SetActive(false); } else { } ReceiveItemH(id); } private void ReceiveItem(int Id) private void ReceiveItemH(int Id) { var List = crossServerRewardModel.SeasonRewardDic.GetAwardItem(Id); for (int i = 0; i < m_Itemlist.childCount; i++) @@ -78,8 +108,8 @@ _ItemCell.Init(cellModel); int type = i; _ItemCell.cellBtn.SetListener(() => { ItemAttrData attrData = new ItemAttrData(List[type].item.id, false, (ulong)List[type].item.count,-1, List[type].isBind); { ItemAttrData attrData = new ItemAttrData(List[type].item.id, false, (ulong)List[type].item.count, -1, List[type].isBind); itemTipsModel.SetItemTipsModel(attrData); }); } @@ -89,8 +119,60 @@ } } } private void SetReceiveN(int Id) { if (!crossServerRewardModel.SeasonRewardConfigDic.ContainsKey(Id)) { return; } m_Text_Ranking.gameObject.SetActive(false); m_Segmenttext.gameObject.SetActive(true); m_ImageColor.gameObject.SetActive(true); m_ImageColor.SetSprite("CrossServer_4"); m_ImageWorld.gameObject.SetActive(false); var config = Config.Instance.Get<CrossServerArenaConfig>(Id); if (config != null) { m_Segmenttext.text = config.Name; } if (CrossServerOneVsOnePKSeason.Instance.SeasonState != 2) { m_ReceiveBtn.gameObject.SetActive(false); m_IsDrawImage.gameObject.SetActive(false); m_IsReachImage.gameObject.SetActive(false); } else { } ReceiveItemN(Id); } private void ReceiveItemN(int Id) { var List = crossServerRewardModel.SeasonRewardConfigDic[Id]; for (int i = 0; i < m_Itemlist.childCount; i++) { GameObject ObjChild = m_Itemlist.GetChild(i).gameObject; if (i < List.Count) { ObjChild.SetActive(true); ItemCell _ItemCell = ObjChild.GetComponent<ItemCell>(); ItemCellModel cellModel = new ItemCellModel(List[i].ItemId, true, (ulong)List[i].ItemNumber, List[i].Isbind); _ItemCell.Init(cellModel); int type = i; _ItemCell.cellBtn.SetListener(() => { ItemAttrData attrData = new ItemAttrData(List[type].ItemId, false, (ulong)List[type].ItemNumber, -1, List[type].Isbind); itemTipsModel.SetItemTipsModel(attrData); }); } else { ObjChild.SetActive(false); } } } } System/CrossServerOneVsOne/SeasonRewardWin.cs
@@ -18,11 +18,17 @@ { [SerializeField] ScrollerController m_ScrollerController; CrossServerRewardModel m_CrossServerRewardModel; CrossServerRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerRewardModel>()); } } CrossServerRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerRewardModel>()); } } List<int> SortList = new List<int>(); #region Built-in protected override void BindController() { m_ScrollerController.OnRefreshCell += OnRefreshGridCell; m_ScrollerController.OnRefreshCell += OnRefreshGridCell; SortList.Clear(); foreach (var key in crossServerRewardModel.SeasonRewardConfigDic.Keys) { SortList.Add(key); } } protected override void AddListeners() @@ -31,6 +37,7 @@ protected override void OnPreOpen() { IsInquireReward(); OnCreateGridLineCell(m_ScrollerController); } @@ -67,9 +74,9 @@ { gridCtrl.AddCell(ScrollerDataType.Header, key); } foreach (var key in crossServerRewardModel.SeasonRewardConfigDic.Keys) { gridCtrl.AddCell(ScrollerDataType.Normal, key); for (int i = SortList.Count - 1; i >= 0; i--) { gridCtrl.AddCell(ScrollerDataType.Normal, SortList[i]); } gridCtrl.Restart(); } @@ -79,6 +86,15 @@ SeasonRewardCell seasonRewardCell = cell.GetComponent<SeasonRewardCell>(); seasonRewardCell.ScrollerDataTypAndId(type, Index); } private void IsInquireReward() { bool isbool = crossServerRewardModel.IsAwardState(CrossRealmPKAwardStateEnum.SeasonAwardState,-1); if (CrossServerOneVsOnePKSeason.Instance.SeasonState == 2 && !isbool) { crossServerRewardModel.ViewCrossPKBillboard(CrossServerOneVsOnePKSeason.Instance.ZoneID, CrossServerOneVsOnePKSeason.Instance.SeasonID); } } } } System/Store/StoreModel.cs
@@ -1807,6 +1807,7 @@ XBToolStore = 13, //寻宝道具商店 OSGift = 14,//开服礼包 OSTimeLimitGift = 15,//限时特惠 CrossOneVsOneHonor = 17,//荣誉商店 DanDrugStore = 30, //丹药回收商店 } Utility/EnumHelper.cs
@@ -582,6 +582,7 @@ CDBPlayerRefresh_SoulDust = 196,//聚魂-魂尘 CDBPlayerRefresh_SoulSplinters = 197,//聚魂-碎片 CDBPlayerRefresh_SoulCore = 198,//聚魂-核心环 CDBPlayerRefresh_Honor = 199, //# 荣誉值 }; /** 物品加成类型 */ Utility/UIHelper.cs
@@ -754,6 +754,10 @@ { return PlayerDatas.Instance.baseData.allSliver; } case 18: { return (ulong)PlayerDatas.Instance.extersion.honorValue; } case 25: { return (ulong)ModelCenter.Instance.GetModel<StoreModel>().GetTCBPlayerData(PlayerDataRefresh.CDBPlayerRefresh_TreasureScore);