少年修仙传客户端代码仓库
client_Zxw
2018-12-13 b0513251e8e107348382c9fb79899985b987b183
5398 子 【开发】【1.4】跨服竞技场 / 【前端】【1.4】跨服竞技场开发
4个文件已修改
91 ■■■■ 已修改文件
System/CrossServerOneVsOne/CrossServerRewardModel.cs 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/CrossServerOneVsOne/SeasonRewardCell.cs 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/CrossServerOneVsOne/SeasonRewardWin.cs 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/ImpactRankModel.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/CrossServerOneVsOne/CrossServerRewardModel.cs
@@ -24,24 +24,26 @@
public class CrossServerRewardModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk
{
    public Dictionary<int, SeasonAwardClass> SegmentRewardDic = new Dictionary<int, SeasonAwardClass>();
    public  ImpactRankModel.RankAwardItem SeasonRewardDic = new ImpactRankModel.RankAwardItem();
    public override void Init()
    {
        GetSeasonAward();
        GetSegmentReward();
    }
    public void OnBeforePlayerDataInitialize()
    {
    }
    public void OnPlayerLoginOk()
    {
    }
    public override void UnInit()
    {
    }
    private void GetSeasonAward()
@@ -61,7 +63,7 @@
                for (int j = 0; j < _jsonData.Count; j++)
                {
                    Item_Class itemClass = new Item_Class();
                    itemClass.ItemId= int.Parse((_jsonData[j][0]).ToString());
                    itemClass.ItemId = int.Parse((_jsonData[j][0]).ToString());
                    itemClass.ItemNumber = int.Parse((_jsonData[j][1]).ToString());
                    itemClass.Isbind = int.Parse((_jsonData[j][2]).ToString());
                    itemClassList.Add(itemClass);
@@ -71,6 +73,26 @@
            }
        }
    }
    private void GetSegmentReward()
    {
        var CrossRealmPKAward = Config.Instance.Get<FuncConfigConfig>("CrossRealmPKAward");
        ImpactRankModel.RankAwardItem _award = new ImpactRankModel.RankAwardItem();
        var _jsonData = LitJson.JsonMapper.ToObject(CrossRealmPKAward.Numerical3);
        foreach (string key in _jsonData.Keys)
        {
            var _ranking = int.Parse(key);
            var _itemArray = LitJson.JsonMapper.ToObject<int[][]>(_jsonData[key].ToJson());
            for (int j = 0; j < _itemArray.Length; j++)
            {
                _award.Add(_ranking, new AwardItem()
                {
                    item = new Item(_itemArray[j][0], _itemArray[j][1]),
                    isBind = _itemArray[j][2],
                });
            }
        }
        SeasonRewardDic = _award;
    }
}
System/CrossServerOneVsOne/SeasonRewardCell.cs
@@ -5,7 +5,8 @@
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System.Linq;
namespace Snxxz.UI {
    //赛季奖励的奖励条
    [XLua.Hotfix]
@@ -17,7 +18,9 @@
        [SerializeField] GameObject m_IsReachImage;//未达成
        [SerializeField] GameObject m_IsMissImage;//已错过
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>()); } }
        ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>()); } }
        CrossServerRewardModel m_CrossServerRewardModel;
        CrossServerRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerRewardModel>()); } }
        public Button ReceiveBtn
        {
            get { return m_ReceiveBtn; }
@@ -26,25 +29,41 @@
        }
        public void SetReceive(int id)
        {
            if (!crossServerRewardModel.SeasonRewardDic.AwardDic.ContainsKey(id))
            {
                return;
            }
            var keyList = crossServerRewardModel.SeasonRewardDic.AwardDic.Keys.ToList();
            int Index = keyList.IndexOf(id);
            if (Index == 0)
            {
                m_Text_Ranking.text = "1-" + id+"名";
            }
            else
            {
                int Number = keyList[(Index - 1)];
                m_Text_Ranking.text = Number+"-"+ id+"名";
            }
            ReceiveItem(id);
        }
        private void ReceiveItem(int Id)
        {
            int type = 3;
            var List = crossServerRewardModel.SeasonRewardDic.GetAwardItem(Id);
            for (int i = 0; i < m_Itemlist.childCount; i++)
            {
                GameObject ObjChild = m_Itemlist.GetChild(i).gameObject;
                if (i < type)
                if (i < List.Count)
                {
                    ObjChild.SetActive(true);
                    ItemCell _ItemCell = ObjChild.GetComponent<ItemCell>();
                    ItemCellModel cellModel = new ItemCellModel(191, true, (ulong)1);
                    ItemCellModel cellModel = new ItemCellModel(List[i].item.id, true, (ulong)List[i].item.count, List[i].isBind);
                    _ItemCell.Init(cellModel);
                    int type = i;
                    _ItemCell.cellBtn.SetListener(() =>
                    {
                        ItemAttrData attrData = new ItemAttrData(191, false, (ulong)1);
                    {
                        ItemAttrData attrData = new ItemAttrData(List[type].item.id, false, (ulong)List[type].item.count,-1, List[type].isBind);
                        itemTipsModel.SetItemTipsModel(attrData);
                    });
                }
System/CrossServerOneVsOne/SeasonRewardWin.cs
@@ -17,6 +17,8 @@
    public class SeasonRewardWin : Window
    {
        [SerializeField] ScrollerController m_ScrollerController;
        CrossServerRewardModel m_CrossServerRewardModel;
        CrossServerRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerRewardModel>()); } }
        #region Built-in
        protected override void BindController()
        {
@@ -47,10 +49,11 @@
        void OnCreateGridLineCell(ScrollerController gridCtrl)
        {
            gridCtrl.Refresh();
            for (int i = 0; i < 10; i++)
            foreach (var key in crossServerRewardModel.SeasonRewardDic.AwardDic.Keys)
            {
                gridCtrl.AddCell(ScrollerDataType.Header, i);
                gridCtrl.AddCell(ScrollerDataType.Header, key);
            }
            gridCtrl.Restart();
        }
        private void OnRefreshGridCell(ScrollerDataType type, CellView cell)
System/OpenServerActivity/ImpactRankModel.cs
@@ -8,7 +8,7 @@
namespace Snxxz.UI
{
    [XLua.LuaCallCSharp]
    public class ImpactRankModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk, IOpenServerActivity
    public class ImpactRankModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk, IOpenServerActivity
    {
        public override void Init()
        {
@@ -389,9 +389,11 @@
        #endregion
        public event Action OnSelectRankTypeEvent;
        private int m_PresentSelectType = 0;
        public int presentSelectType {
        public int presentSelectType
        {
            get { return m_PresentSelectType; }
            set {
            set
            {
                m_PresentSelectType = value;
                if (OnSelectRankTypeEvent != null)
                {
@@ -409,7 +411,10 @@
        public class RankAwardItem
        {
            private Dictionary<int, List<AwardItem>> m_AwardDict = new Dictionary<int, List<AwardItem>>();
            public Dictionary<int, List<AwardItem>> AwardDic
            {
                get { return m_AwardDict; }
            }
            public List<AwardItem> GetAwardItem(int _job)
            {
                List<AwardItem> _items = null;
@@ -430,9 +435,11 @@
        }
        private PlayerRankData.RankType m_PresentBillRankType = PlayerRankData.RankType.OpenServerMount;
        public PlayerRankData.RankType presentBillRankType {
        public PlayerRankData.RankType presentBillRankType
        {
            get { return m_PresentBillRankType; }
            set {
            set
            {
                m_PresentBillRankType = value;
                if (CoroutineMgr.Instance.CanBegRank((int)m_PresentBillRankType))
                {
@@ -706,7 +713,7 @@
    }
    [XLua.LuaCallCSharp]
public class OpenServerActivityCenter : Singleton<OpenServerActivityCenter>
    public class OpenServerActivityCenter : Singleton<OpenServerActivityCenter>
    {
        public event Action openServerActivityStateChange;