Pārlūkot izejas kodu

英雄技能UI的显示bug

lcn 4 mēneši atpakaļ
vecāks
revīzija
652f9aeacd

+ 18 - 5
Assets/Scripts/GameLogic/Hero/HeroController.cs

@@ -122,7 +122,13 @@ namespace GameLogic.Hero
                 SkillUpConfig upConfig = PlayerManager.Instance.heroController
                     .IsLevelUpGetNewSkill(heroInfo.level.Value);
                 
-                data.isSkillUp = upConfig.ID > 0;
+                
+                if (upConfig.ID > 0)
+                {
+                    heroInfo.SkillData.UpdateSkills();
+                    data.isSkillUp = true;
+                }
+                
                 EventManager.Instance.Dispatch(CustomEventType.HeroLvUp, data);
             }
             else if (upType == HeroUpType.Promote)
@@ -130,7 +136,14 @@ namespace GameLogic.Hero
                 SkillUpConfig upConfig = PlayerManager.Instance.heroController
                     .IsStarUpGetNewSkill(heroInfo.star.Value);
                 
-                data.isSkillUp = upConfig.ID > 0;
+                // data.isSkillUp = upConfig.ID > 0;
+                
+                if (upConfig.ID > 0)
+                {
+                    heroInfo.SkillData.UpdateSkills();
+                    data.isSkillUp = true;
+                }
+                
                 EventManager.Instance.Dispatch(CustomEventType.HeroPromote, data);
             }
         }
@@ -268,9 +281,9 @@ namespace GameLogic.Hero
             SkillConfig skillConfig = new SkillConfig();
             
             int lv = 0;
-            for(int i = 0; i <  PlayerManager.Instance.groupSkillDIc[groupID].Count; i++)
+            for(int i = 0; i <  PlayerManager.Instance.groupSkillDic[groupID].Count; i++)
             {
-                SkillConfig config = PlayerManager.Instance.groupSkillDIc[groupID][i];
+                SkillConfig config = PlayerManager.Instance.groupSkillDic[groupID][i];
 
                 if (i == 0 && !onlyUnLock)
                 {
@@ -374,7 +387,7 @@ namespace GameLogic.Hero
             {
                 if (skillUpConfig.upType == 1 && level == skillUpConfig.upValue)
                 {
-                    return upConfig;
+                    return skillUpConfig;
                 }
             }
             return upConfig;

+ 27 - 11
Assets/Scripts/GameLogic/Hero/SkillData.cs

@@ -7,22 +7,22 @@ namespace GameLogic.Hero
 {
     public class SkillData
     {
-        public SkillConfig skillConfig;
+        // public SkillConfig skillConfig;
 
         /// <summary>
         /// 所有技能
         /// </summary>
-        public List<SkillInfo> allSkills = new List<SkillInfo>();
+        // public List<SkillInfo> allSkills = new List<SkillInfo>();
 
         /// <summary>
         /// 已解锁的技能
         /// </summary>
-        public List<SkillInfo> allUnLockSkill = new List<SkillInfo>();
+        // public List<SkillInfo> allUnLockSkill = new List<SkillInfo>();
         
         /// <summary>
         /// 战斗中的技能数据
         /// </summary>
-        public List<SkillInfo> allSkill4Combat = new List<SkillInfo>();
+        // public List<SkillInfo> allSkill4Combat = new List<SkillInfo>();
         
         public Dictionary<int, List<SkillInfo>> mySkillDic = new Dictionary<int, List<SkillInfo>>();
 
@@ -64,6 +64,22 @@ namespace GameLogic.Hero
         // {
         //     this.heroInfo = heroInfo;
         // }
+
+
+        public void UpdateSkills()
+        {
+            // foreach (SkillInfo skillInfo in mySkillDic[groupID])
+            // {
+            //     skillInfo.UpdateInfo();
+            // }
+            foreach (KeyValuePair<int,List<SkillInfo>> keyValuePair in mySkillDic)
+            {
+                foreach (SkillInfo skillInfo in keyValuePair.Value)
+                {
+                    skillInfo.UpdateInfo();
+                }
+            }
+        }
         
         public void InitSkills()
         {
@@ -71,16 +87,16 @@ namespace GameLogic.Hero
             {
                 int skillGroup = heroInfo.modelConfig.skillID[i];
 
-                foreach (SkillConfig config in PlayerManager.Instance.groupSkillDIc[skillGroup])
+                foreach (SkillConfig config in PlayerManager.Instance.groupSkillDic[skillGroup])
                 {
                     SkillInfo skillInfo = new SkillInfo();
                     skillInfo.Init(this, config);
-                    allSkills.Add(skillInfo);
-
-                    if (skillInfo.isUnLock)
-                    {
-                        allUnLockSkill.Add(skillInfo);
-                    }
+                    // allSkills.Add(skillInfo);
+                    //
+                    // if (skillInfo.isUnLock)
+                    // {
+                    //     allUnLockSkill.Add(skillInfo);
+                    // }
 
                     if (mySkillDic.ContainsKey(skillGroup))
                     { 

+ 6 - 0
Assets/Scripts/GameLogic/Hero/SkillInfo.cs

@@ -16,6 +16,12 @@ namespace GameLogic.Hero
         // public SkillUpConfig skillUpConfig;
 
         // private SkillData _skillData;
+
+        public void UpdateInfo()
+        {
+            isUnLock = PlayerManager.Instance.heroController.IsUnLockSkill(heroInfo.level.Value, heroInfo.star.Value, skillConfig.ID);
+        }
+        
         public void Init(SkillData skillData, SkillConfig skillConfig)
         {
             // this._skillData = skillData;

+ 1 - 1
Assets/Scripts/GameLogic/Player/AccountFileInfo.cs

@@ -160,7 +160,7 @@ public class AccountFileInfo : Singleton<AccountFileInfo>
         ItemData heroExp = new ItemData()
         {
             itemId = GlobalParam.Item_HeroExp_ID,
-            itemCount = 100000,
+            itemCount = 99000000,
         };
 
         playerData.ItemListData.Add(coin);

+ 4 - 4
Assets/Scripts/GameLogic/Player/PlayerManager.cs

@@ -18,7 +18,7 @@ public class PlayerManager : Singleton<PlayerManager>
     public SkillUpConfig[] skillUpConfigs;
     public SkillConfig[] SkillConfigs;
     
-    public Dictionary<int, List<SkillConfig>> groupSkillDIc = new Dictionary<int, List<SkillConfig>>();
+    public Dictionary<int, List<SkillConfig>> groupSkillDic = new Dictionary<int, List<SkillConfig>>();
 
     public long coin;
     public long diamond;
@@ -44,13 +44,13 @@ public class PlayerManager : Singleton<PlayerManager>
 
         foreach (var skillConfig in SkillConfigs)
         {
-            if (groupSkillDIc.ContainsKey(skillConfig.IDGroup))
+            if (groupSkillDic.ContainsKey(skillConfig.IDGroup))
             {
-                groupSkillDIc[skillConfig.IDGroup].Add(skillConfig);
+                groupSkillDic[skillConfig.IDGroup].Add(skillConfig);
             }
             else
             {
-                groupSkillDIc.Add(skillConfig.IDGroup, new List<SkillConfig> { skillConfig });
+                groupSkillDic.Add(skillConfig.IDGroup, new List<SkillConfig> { skillConfig });
             }
         }
     }

+ 9 - 9
美术/工具/imgui.ini

@@ -5,32 +5,32 @@ Collapsed=0
 
 [Window][art_UI]
 Pos=0,0
-Size=400,721
+Size=400,720
 Collapsed=0
 
 [Window][Tool]
 Pos=400,0
-Size=649,100
+Size=715,100
 Collapsed=0
 
 [Window][unity_art]
-Pos=1049,0
-Size=400,721
+Pos=1115,0
+Size=400,720
 Collapsed=0
 
 [Window][console]
-Pos=400,521
-Size=649,70
+Pos=400,520
+Size=715,70
 Collapsed=0
 
 [Window][控制台]
-Pos=400,591
-Size=649,130
+Pos=400,590
+Size=715,130
 Collapsed=0
 
 [Window][scence]
 Pos=400,100
-Size=649,421
+Size=715,420
 Collapsed=0
 
 [Docking][Data]