少年修仙传客户端代码仓库
client_Wu Xijin
2018-11-15 45f66abd791b77e6424a9f00002e94b568c39a26
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
3个文件已修改
103 ■■■■ 已修改文件
Core/GameEngine/Model/TelPartialConfig/tagStoreConfig.cs 65 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DemonTreasureDungeonVictoryWin.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TreasureDungeonMissionHintWin.cs 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/TelPartialConfig/tagStoreConfig.cs
@@ -8,12 +8,16 @@
    {
        private static Dictionary<StoreItem, StoreConfig> s_StoreItemDict = new Dictionary<StoreItem, StoreConfig>();
        private static Dictionary<int, List<StoreConfig>> storeConfigs = new Dictionary<int, List<StoreConfig>>();
        static readonly int[] shop1Types = new int[] { 2, 3 };
        static readonly int[] shop2Types = new int[] { 4 };
        public void OnConfigParseCompleted()
        {
            if (ShopType == 0) return;
            var _storeItem = new StoreItem()
            {
                shopType = this.ShopType,
                item = this.ItemID,
                type = this.MoneyType,
            };
@@ -31,16 +35,60 @@
            list.Add(this);
        }
        public static StoreConfig GetStoreCfg(int _item, int _moneyType)
        public static StoreConfig GetStoreCfg(int _item, int _moneyType, int shopType = 0)
        {
            var _storeItem = new StoreItem()
            if (shopType != 0)
            {
                item = _item,
                type = _moneyType,
            };
            if (s_StoreItemDict.ContainsKey(_storeItem))
                var storeItem = new StoreItem()
                {
                    item = _item,
                    type = _moneyType,
                    shopType = shopType,
                };
                if (s_StoreItemDict.ContainsKey(storeItem))
                {
                    return s_StoreItemDict[storeItem];
                }
            }
            else
            {
                return s_StoreItemDict[_storeItem];
                switch (_moneyType)
                {
                    case 1:
                        {
                            for (int i = 0; i < shop1Types.Length; i++)
                            {
                                var storeItem = new StoreItem()
                                {
                                    item = _item,
                                    type = _moneyType,
                                    shopType = shop1Types[i],
                                };
                                if (s_StoreItemDict.ContainsKey(storeItem))
                                {
                                    return s_StoreItemDict[storeItem];
                                }
                            }
                        }
                        break;
                    case 2:
                        {
                            for (int i = 0; i < shop2Types.Length; i++)
                            {
                                var storeItem = new StoreItem()
                                {
                                    item = _item,
                                    type = _moneyType,
                                    shopType = shop2Types[i],
                                };
                                if (s_StoreItemDict.ContainsKey(storeItem))
                                {
                                    return s_StoreItemDict[storeItem];
                                }
                            }
                        }
                        break;
                }
            }
            return null;
        }
@@ -52,13 +100,14 @@
        public struct StoreItem
        {
            public int shopType;
            public int item;
            public int type;
            public override bool Equals(object x)
            {
                StoreItem _storeItem = (StoreItem)x;
                return this.item == _storeItem.item && this.type == _storeItem.type;
                return this.item == _storeItem.item && this.type == _storeItem.type && this.shopType == _storeItem.shopType;
            }
            public override int GetHashCode()
System/Dungeon/DemonTreasureDungeonVictoryWin.cs
@@ -17,6 +17,8 @@
        [SerializeField] PropertyBehaviour[] m_Propertys;
        [SerializeField] Button m_ChallengeNextLevel;
        public static event Action challengeNextEvent;
        TreasureModel model
        {
            get { return ModelCenter.Instance.GetModel<TreasureModel>(); }
@@ -63,6 +65,7 @@
                    {
                        m_Propertys[index].gameObject.SetActive(true);
                        m_Propertys[index].Display(key, propertyDict[key]);
                        index++;
                    }
                }
            }
@@ -84,6 +87,13 @@
                    pak.ActionType = 0;
                    pak.ActionInfo = 0;
                    GameNetSystem.Instance.SendInfo(pak);
                    dungeonModel.UpdateCoolDown(DungeonCoolDownType.LeaveMap, 0);
                    dungeonModel.UpdateCoolDown(DungeonCoolDownType.TowerTake, 0);
                    CloseClick();
                    if (challengeNextEvent != null)
                    {
                        challengeNextEvent();
                    }
                }
            }
        }
System/Dungeon/TreasureDungeonMissionHintWin.cs
@@ -48,6 +48,7 @@
            m_ScreenMoveTo.gameObject.SetActive(false);
            BossNotify.OnNotifyStateEvent += OnNotifyStateEvent;
            BossShowModel.Instance.bossShowCompletedEvent += BossShowCompletedEvent;
            DemonTreasureDungeonVictoryWin.challengeNextEvent += ChallengeNextEvent;
            var allConfigs = Config.Instance.GetAllValues<TreasureConfig>();
            foreach (var value in allConfigs)
@@ -70,6 +71,7 @@
        {
            BossNotify.OnNotifyStateEvent -= OnNotifyStateEvent;
            BossShowModel.Instance.bossShowCompletedEvent -= BossShowCompletedEvent;
            DemonTreasureDungeonVictoryWin.challengeNextEvent -= ChallengeNextEvent;
            m_ContainerDisplay.gameObject.SetActive(true);
        }
@@ -134,6 +136,14 @@
            }
        }
        private void ChallengeNextEvent()
        {
            if (demonTreasureDungeon)
            {
                DisplayDemonTreasureDungeon();
            }
        }
        void DisplayNormalTreasureDungeon()
        {
            var config = Config.Instance.Get<TreasureConfig>(treasureId);
@@ -187,22 +197,12 @@
            demonTreasureDungeon = false;
            if (mapId == 41110)
            {
                var list = model.GetTreasureCategory(TreasureCategory.Demon);
                for (int i = 0; i < list.Count; i++)
                TreasureDungeon treasureDungeon;
                if (model.TryGetTreasureDungeon(mapId, lineId, out treasureDungeon))
                {
                    TreasureDungeon treasureDungeon;
                    if (model.TryGetTreasureDungeon(list[i], out treasureDungeon))
                    if (treasureDungeon.currentLevel < treasureDungeon.maxLevel - 1)
                    {
                        var count = treasureDungeon.dungeonInfos.Count;
                        if (count > 0 && treasureDungeon.dungeonInfos[0].lineId == lineId)
                        {
                            var maxLevel = treasureDungeon.dungeonInfos[count - 1].level;
                            if (treasureDungeon.currentLevel < maxLevel - 1)
                            {
                                demonTreasureDungeon = true;
                                break;
                            }
                        }
                        demonTreasureDungeon = true;
                    }
                }
            }