少年修仙传客户端代码仓库
client_linchunjie
2018-08-21 f83a2d658ae62e6a409496c8538ee9fd1e2de158
2564【前端】宗门试炼奖励支持配置数量绑定
5个文件已修改
43 ■■■■■ 已修改文件
Core/GameEngine/Model/Config/TrialRewardsConfig.cs 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/TrialRewardsConfig.cs.meta 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonEntranceWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonModel.cs 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialRewardsBehaviour.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/TrialRewardsConfig.cs
@@ -1,6 +1,6 @@
//--------------------------------------------------------
//    [Author]:            第二世界
//    [  Date ]:           Monday, August 20, 2018
//    [  Date ]:           Tuesday, August 21, 2018
//--------------------------------------------------------
using UnityEngine;
@@ -14,7 +14,7 @@
        public int id { get ; private set ; }
        public int lineId { get ; private set ; }
        public int grade { get ; private set ; }
        public int[] rewards;
        public string rewards { get ; private set; }
        public override string getKey()
        {
@@ -30,12 +30,7 @@
            
                grade=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0; 
            
                string[] rewardsStringArray = rawContents[3].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewards = new int[rewardsStringArray.Length];
                for (int i=0;i<rewardsStringArray.Length;i++)
                {
                     int.TryParse(rewardsStringArray[i],out rewards[i]);
                }
                rewards = rawContents[3].Trim();
            }
            catch (Exception ex)
            {
Core/GameEngine/Model/Config/TrialRewardsConfig.cs.meta
@@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: ee2212e198950744b9c7524b9d74d042
timeCreated: 1534748051
timeCreated: 1534819587
licenseType: Pro
MonoImporter:
  serializedVersion: 2
System/Dungeon/TrialDungeonEntranceWin.cs
@@ -192,7 +192,7 @@
            for (int i = 0; i < m_RewardBehaviours.Length; i++)
            {
                var behaviour = m_RewardBehaviours[i];
                int[] rewards = null;
                Item[] rewards = null;
                if (trialDungeonModel.TryGetTrialRewards(config.LineID, m_RewardBehaviours[i].grade, out rewards))
                {
                    behaviour.gameObject.SetActive(true);
System/Dungeon/TrialDungeonModel.cs
@@ -10,7 +10,7 @@
    {
        Dictionary<int, List<TrialExchangeConfig>> trialTokenExchangeDict = new Dictionary<int, List<TrialExchangeConfig>>();
        Dictionary<int, int> lineToTokenClassDict;
        Dictionary<int, Dictionary<int, int[]>> trialRewardDict = new Dictionary<int, Dictionary<int, int[]>>();
        Dictionary<int, Dictionary<int, Item[]>> trialRewardDict = new Dictionary<int, Dictionary<int, Item[]>>();
        public Dictionary<int, List<int>> trialClassTokens = new Dictionary<int, List<int>>();
        public List<int> trialTokens = new List<int>();
        PlayerPackModel packModel { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
@@ -83,13 +83,27 @@
            var trialRewards = ConfigManager.Instance.GetAllValues<TrialRewardsConfig>();
            for (int i = 0; i < trialRewards.Count; i++)
            {
                Dictionary<int, int[]> dict = null;
                Dictionary<int, Item[]> dict = null;
                if (!trialRewardDict.TryGetValue(trialRewards[i].lineId, out dict))
                {
                    dict = new Dictionary<int, int[]>();
                    dict = new Dictionary<int, Item[]>();
                    trialRewardDict.Add(trialRewards[i].lineId, dict);
                }
                dict.Add(trialRewards[i].grade, trialRewards[i].rewards);
                var itemsArray = LitJson.JsonMapper.ToObject<int[][]>(trialRewards[i].rewards);
                if (itemsArray != null && itemsArray.Length > 0)
                {
                    Item[] items = new Item[itemsArray.Length];
                    for (int k = 0; k < itemsArray.Length; k++)
                    {
                        items[k] = new Item()
                        {
                            id = itemsArray[k][0],
                            count = itemsArray[k][1],
                            bind = itemsArray[k][2] == 1
                        };
                    }
                    dict.Add(trialRewards[i].grade, items);
                }
            }
        }
@@ -153,7 +167,7 @@
            return trialTokenExchangeDict.TryGetValue(lv, out list);
        }
        public bool TryGetTrialRewards(int lineId, int grade, out int[] rewards)
        public bool TryGetTrialRewards(int lineId, int grade, out Item[] rewards)
        {
            rewards = null;
            if (trialRewardDict.ContainsKey(lineId))
System/Dungeon/TrialRewardsBehaviour.cs
@@ -10,7 +10,7 @@
        public int grade { get { return m_Grade; } }
        public void Display(int[] rewards)
        public void Display(Item[] rewards)
        {
            for (int i = 0; i < m_ItemBehaviours.Length; i++)
            {
@@ -18,7 +18,7 @@
                if (i < rewards.Length)
                {
                    behaviour.gameObject.SetActive(true);
                    behaviour.SetItem(rewards[i], 0);
                    behaviour.SetItem(rewards[i]);
                }
                else
                {