浏览代码

Merge branch 'master' of http://192.168.123.2:3000/ck/XiuXianGame

DESKTOP-FB72PO8\Administrator 1 天之前
父节点
当前提交
56d4e0ea11

+ 16 - 2
Assets/Art/UIAssets/decorate/dec_duihua_05.png.meta

@@ -52,7 +52,7 @@ TextureImporter:
   alignment: 0
   spritePivot: {x: 0.5, y: 0.5}
   spritePixelsToUnits: 100
-  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteBorder: {x: 45, y: 30, z: 46, w: 30}
   spriteGenerateFallbackPhysicsShape: 1
   alphaUsage: 1
   alphaIsTransparency: 1
@@ -168,6 +168,20 @@ TextureImporter:
     ignorePlatformSupport: 0
     androidETC2FallbackOverride: 0
     forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: WeixinMiniGame
+    maxTextureSize: 2048
+    maxPlaceholderSize: 32
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    ignorePlatformSupport: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
   spriteSheet:
     serializedVersion: 2
     sprites: []
@@ -175,7 +189,7 @@ TextureImporter:
     physicsShape: []
     bones: []
     spriteID: 5e97eb03825dee720800000000000000
-    internalID: 0
+    internalID: 1537655665
     vertices: []
     indices: 
     edges: []

+ 10 - 10
Assets/Res/UI/HeroInformainPanel/ElixirItemWidget.prefab

@@ -26,7 +26,7 @@ RectTransform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 3347246602672913365}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_ConstrainProportionsScale: 0
@@ -35,7 +35,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: -0.0000047684, y: -88.4}
+  m_AnchoredPosition: {x: -0, y: -95.66685}
   m_SizeDelta: {x: 96.5152, y: 21.1661}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &3905750986573029075
@@ -106,7 +106,7 @@ RectTransform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 4112643019947403192}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_ConstrainProportionsScale: 0
@@ -115,7 +115,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: -0.0000047684, y: -68}
+  m_AnchoredPosition: {x: -0, y: -75.266846}
   m_SizeDelta: {x: 96.5152, y: 21.1661}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &1777460896920078153
@@ -195,7 +195,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: -1.7, y: -27.9}
+  m_AnchoredPosition: {x: -1.7, y: -35.166847}
   m_SizeDelta: {x: 58.8736, y: 58.874}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &2951448184634106011
@@ -279,7 +279,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
-  m_AnchoredPosition: {x: -0.6708, y: 10.9056}
+  m_AnchoredPosition: {x: -0.6708, y: 6.6}
   m_SizeDelta: {x: 108.7948, y: 112.2233}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &1056657389458859072
@@ -354,7 +354,7 @@ RectTransform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 7207111898009413214}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_ConstrainProportionsScale: 0
@@ -363,7 +363,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: -0.0000047684, y: -111.4}
+  m_AnchoredPosition: {x: -0, y: -118.66685}
   m_SizeDelta: {x: 96.5152, y: 21.1661}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &5306016382557740786
@@ -448,8 +448,8 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
   m_AnchorMax: {x: 0, y: 0}
-  m_AnchoredPosition: {x: 0, y: 0}
-  m_SizeDelta: {x: 100, y: 123.1889}
+  m_AnchoredPosition: {x: 5.65329, y: 2.9611816}
+  m_SizeDelta: {x: 111.3066, y: 129.1114}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &4734795346950593431
 CanvasRenderer:

+ 1 - 1
Assets/Res/UI/HeroInformainPanel/HeroInformationPanel.prefab

@@ -240,7 +240,7 @@ GameObject:
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 0
+  m_IsActive: 1
 --- !u!224 &2074141334421181977
 RectTransform:
   m_ObjectHideFlags: 0

+ 90 - 0
Assets/Res/UI/HeroInformainPanel/SelectElixirPanel.prefab

@@ -188,6 +188,90 @@ MonoBehaviour:
   m_OnValueChanged:
     m_PersistentCalls:
       m_Calls: []
+--- !u!1 &1533423449779780183
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 8003648020153173292}
+  - component: {fileID: 4005131581280527188}
+  - component: {fileID: 2686141389901042108}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: Icon_Select
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &8003648020153173292
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1533423449779780183}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1528319131332351769}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: -223.8963, y: -11.0403805}
+  m_SizeDelta: {x: 109.18, y: 111.577}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &4005131581280527188
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1533423449779780183}
+  m_CullTransparentMesh: 1
+--- !u!114 &2686141389901042108
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1533423449779780183}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 0.8950032, b: 0, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: dec_duihua_05
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: af8b6f708ee6b254b9e6976ea8852a55, type: 3}
+  packInfo:
+    packName: event
+    packgJsonPath: /Art/UIAssets/TextrueJson\event.txt
+    packgSpritePath: Assets/Res/UIAtlas/event.spriteatlasv2
+    lasetJsonGUID: df80f818a4f258d33b8038600af6f215
 --- !u!1 &2045547269994920904
 GameObject:
   m_ObjectHideFlags: 0
@@ -710,6 +794,7 @@ RectTransform:
   - {fileID: 725548104741330431}
   - {fileID: 5378836280953730899}
   - {fileID: 7313993460370242381}
+  - {fileID: 8003648020153173292}
   m_Father: {fileID: 5318323102501209997}
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 0.5}
@@ -1146,6 +1231,11 @@ MonoBehaviour:
     isAssetBundle: 0
     isList: 0
     ListCollectorDatas: []
+  - key: Icon_Select
+    gameObject: {fileID: 1533423449779780183}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
   isAssetBundle: 1
 --- !u!1 &7472297620610942561
 GameObject:

+ 157 - 20
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroBreakthroughPanel.cs

@@ -16,7 +16,12 @@ namespace Fort23.Mono
         HeroPowerUpConfig heroPowerUpConfig;
 
         List<BreakthroughItemWidget> breakthroughItemWidgets = new List<BreakthroughItemWidget>();
-        private HeroInfo heroInfo = new HeroInfo();
+        private HeroInfo nextHeroInfo = new HeroInfo();
+
+        /// <summary>
+        /// 1.正常渡劫 2.渡劫预览
+        /// </summary>
+        private int type;
 
 
         private void Init()
@@ -30,7 +35,7 @@ namespace Fort23.Mono
 
         private void RefenceBreakthrough(IEventData e)
         {
-            RefenceSuccessProbability();
+            RefenceSuccessProbability(PlayerManager.Instance.myHero);
         }
 
         protected override void DelEvent()
@@ -46,6 +51,13 @@ namespace Fort23.Mono
 
             Btn_Affirm.onClick.AddListener(async () =>
             {
+                if (type == 2)
+                {
+                    TipMessagePanel.OpenTipMessagePanel("修为等级还未达到,暂不可预览");
+                    return;
+                }
+
+
                 if (PlayerManager.Instance.myHero.heroData.exp + HeroHerlp.GetHeroExp() < PlayerManager.Instance.myHero.powerUpConfig.levelUpExp)
                 {
                     return;
@@ -100,7 +112,7 @@ namespace Fort23.Mono
                 if (ramdomValue < list[0])
                 {
                     bool isTuPoSuccess = true;
-                    if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 != heroInfo.powerUpConfig.jingjie1)
+                    if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 != nextHeroInfo.powerUpConfig.jingjie1)
                     {
                         if (PlayerManager.Instance.myHero.powerUpConfig.LeijieDamages != null && PlayerManager.Instance.myHero.powerUpConfig.LeijieDamages.Length > 1)
                         {
@@ -135,6 +147,9 @@ namespace Fort23.Mono
 
             Btn_StartCombat.onClick.AddListener(() =>
             {
+                if (type == 2)
+                    return;
+
                 if (PlayerManager.Instance.myHero.heroData.isCombat)
                     return;
 
@@ -150,7 +165,7 @@ namespace Fort23.Mono
                             AccountFileInfo.Instance.SavePlayerData();
                             Btn_StartCombat.gameObject.SetActive(false);
                             CombatTrue.gameObject.SetActive(true);
-                            RefenceSuccessProbability();
+                            RefenceSuccessProbability(PlayerManager.Instance.myHero);
                             UIManager.Instance.ShowLastHindAllShowPanel();
                         }
                     });
@@ -172,7 +187,7 @@ namespace Fort23.Mono
 
         private async CTask UpHero()
         {
-            var heroAttributData = HeroHerlp.GetHeroChageHeroAttributeData(PlayerManager.Instance.myHero, heroInfo);
+            var heroAttributData = HeroHerlp.GetHeroChageHeroAttributeData(PlayerManager.Instance.myHero, nextHeroInfo);
             PlayerManager.Instance.myHero.Upgrade();
             HeroBreakthroughSuccessPanel heroBreakthroughSuccessPanel = await HeroBreakthroughSuccessPanel.OpenPanel(heroAttributData);
             await heroBreakthroughSuccessPanel.UIClosed();
@@ -181,18 +196,19 @@ namespace Fort23.Mono
 
         public async CTask CustomInit()
         {
+            type = 1;
             heroPowerUpConfig = PlayerManager.Instance.myHero.powerUpConfig;
-            heroInfo.InitHero(PlayerManager.Instance.myHero.heroData.heroModelId, PlayerManager.Instance.myHero.heroData.heroPowerId + 1);
+            nextHeroInfo.InitHero(PlayerManager.Instance.myHero.heroData.heroModelId, PlayerManager.Instance.myHero.heroData.heroPowerId + 1);
 
             Text_CurrrentJIngjie.text = LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[0]) +
                                         LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[1]) +
                                         LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[2]);
 
-            Text_NextJinfjie.text = LanguageManager.Instance.Text(heroInfo.powerUpConfig.jingjieLanIDs[0]) +
-                                    LanguageManager.Instance.Text(heroInfo.powerUpConfig.jingjieLanIDs[1]) +
-                                    LanguageManager.Instance.Text(heroInfo.powerUpConfig.jingjieLanIDs[2]);
+            Text_NextJinfjie.text = LanguageManager.Instance.Text(nextHeroInfo.powerUpConfig.jingjieLanIDs[0]) +
+                                    LanguageManager.Instance.Text(nextHeroInfo.powerUpConfig.jingjieLanIDs[1]) +
+                                    LanguageManager.Instance.Text(nextHeroInfo.powerUpConfig.jingjieLanIDs[2]);
 
-            if (heroPowerUpConfig.jingjie1 != heroInfo.powerUpConfig.jingjie1)
+            if (heroPowerUpConfig.jingjie1 != nextHeroInfo.powerUpConfig.jingjie1)
             {
                 Text_TitleName.text = "渡劫";
                 Text_Affirm.text = "逆天而行";
@@ -246,7 +262,9 @@ namespace Fort23.Mono
                 CombatRoot.gameObject.SetActive(false);
             }
 
-            RefenceSuccessProbability();
+            RefenceSuccessProbability(PlayerManager.Instance.myHero);
+
+            Btn_Affirm.transform.RecoverColor();
 
 
             using (CTaskAwaitBuffer<BreakthroughItemWidget> cTaskAwaitBuffer = new CTaskAwaitBuffer<BreakthroughItemWidget>())
@@ -282,21 +300,21 @@ namespace Fort23.Mono
             }
         }
 
-        private void RefenceSuccessProbability()
+        private void RefenceSuccessProbability(HeroInfo hero)
         {
             bool isCan = true;
 
-            if (heroPowerUpConfig.DujieLevelbattleID != -1 && !PlayerManager.Instance.myHero.heroData.isCombat)
+            if (heroPowerUpConfig.DujieLevelbattleID != -1 && !hero.heroData.isCombat)
             {
                 isCan = false;
             }
 
-            for (var i = 0; i < PlayerManager.Instance.myHero.powerUpConfig.DujieMustItemIDs.Length; i++)
+            for (var i = 0; i < hero.powerUpConfig.DujieMustItemIDs.Length; i++)
             {
                 bool isHave = false;
                 for (var i1 = 1; i1 < breakthroughItemWidgets.Count; i1++)
                 {
-                    if (breakthroughItemWidgets[i1].itemInfo != null && PlayerManager.Instance.myHero.powerUpConfig.DujieMustItemIDs[i] == breakthroughItemWidgets[i1].itemInfo.itemID)
+                    if (breakthroughItemWidgets[i1].itemInfo != null && hero.powerUpConfig.DujieMustItemIDs[i] == breakthroughItemWidgets[i1].itemInfo.itemID)
                     {
                         isHave = true;
                     }
@@ -315,7 +333,7 @@ namespace Fort23.Mono
 
             var list = GetBl();
 
-            failbl = list[1] == 0 ? PlayerManager.Instance.myHero.powerUpConfig.FailureExpReduce : (float)(PlayerManager.Instance.myHero.powerUpConfig.FailureExpReduce * list[1] * 0.01f);
+            failbl = list[1] == 0 ? hero.powerUpConfig.FailureExpReduce : (float)(hero.powerUpConfig.FailureExpReduce * list[1] * 0.01f);
             successBl = list[0];
 
             if (isCan)
@@ -325,7 +343,7 @@ namespace Fort23.Mono
                 // failbl = list[1] == 0 ? PlayerManager.Instance.myHero.powerUpConfig.FailureExpReduce : (float)(PlayerManager.Instance.myHero.powerUpConfig.FailureExpReduce * list[1] * 0.01f);
                 // successBl = list[0];
 
-                if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 != heroInfo.powerUpConfig.jingjie1)
+                if (hero.powerUpConfig.jingjie1 != nextHeroInfo.powerUpConfig.jingjie1)
                 {
                     Text_AffirmTips.text = "是否确认渡劫";
                 }
@@ -338,13 +356,13 @@ namespace Fort23.Mono
             {
                 //提示需要什么道具
                 string tips = "需要 破除心魔 ";
-                foreach (var dujieMustItemID in PlayerManager.Instance.myHero.powerUpConfig.DujieMustItemIDs)
+                foreach (var dujieMustItemID in hero.powerUpConfig.DujieMustItemIDs)
                 {
                     ItemConfig itemConfig = ConfigComponent.Instance.Get<ItemConfig>(dujieMustItemID);
                     tips += " " + LanguageManager.Instance.Text(itemConfig.itemName);
                 }
 
-                if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 != heroInfo.powerUpConfig.jingjie1)
+                if (hero.powerUpConfig.jingjie1 != nextHeroInfo.powerUpConfig.jingjie1)
                 {
                     Text_AffirmTips.text = tips;
                 }
@@ -357,7 +375,7 @@ namespace Fort23.Mono
                 // successBl = 0;
             }
 
-            failXw = (int)(PlayerManager.Instance.myHero.powerUpConfig.levelUpExp * failbl * 0.01f);
+            failXw = (int)(hero.powerUpConfig.levelUpExp * failbl * 0.01f);
 
 
             Text_FailDesc.text = $"失败损失修为:{failXw}修为";
@@ -405,6 +423,121 @@ namespace Fort23.Mono
             return heroBreakthroughPanel;
         }
 
+
+        //渡劫预览
+        public async static CTask<HeroBreakthroughPanel> OpenPanel1(HeroInfo heroInfo1)
+        {
+            HeroBreakthroughPanel heroBreakthroughPanel = await UIManager.Instance.LoadAndOpenPanel<HeroBreakthroughPanel>(null);
+            heroBreakthroughPanel.CustomInit(heroInfo1);
+            return heroBreakthroughPanel;
+        }
+
+        public async CTask CustomInit(HeroInfo heroInfo1)
+        {
+            type = 2;
+            heroPowerUpConfig = heroInfo1.powerUpConfig;
+            nextHeroInfo.InitHero(PlayerManager.Instance.myHero.heroData.heroModelId, heroInfo1.heroData.heroPowerId + 1);
+
+            Text_CurrrentJIngjie.text = LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[0]) +
+                                        LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[1]) +
+                                        LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[2]);
+
+            Text_NextJinfjie.text = LanguageManager.Instance.Text(nextHeroInfo.powerUpConfig.jingjieLanIDs[0]) +
+                                    LanguageManager.Instance.Text(nextHeroInfo.powerUpConfig.jingjieLanIDs[1]) +
+                                    LanguageManager.Instance.Text(nextHeroInfo.powerUpConfig.jingjieLanIDs[2]);
+
+            if (heroPowerUpConfig.jingjie1 != nextHeroInfo.powerUpConfig.jingjie1)
+            {
+                Text_TitleName.text = "渡劫预览";
+                Text_Affirm.text = "逆天而行";
+                Text_AffirmTips.text = "是否确认渡劫";
+
+                if (heroPowerUpConfig.LeijieDamages != null && heroPowerUpConfig.LeijieDamages.Length > 1)
+                {
+                    LeiJieRooot.gameObject.SetActive(true);
+                    Text_LeiJieHarm.text = $"{heroPowerUpConfig.LeijieDamages[0]}-{heroPowerUpConfig.LeijieDamages[1]}";
+                    Text_HeroHp.text = PlayerManager.Instance.myHero.hp.Value.ToString();
+
+                    if (PlayerManager.Instance.myHero.hp.Value < heroPowerUpConfig.LeijieDamages[0])
+                    {
+                        Text_HeroHp.color = Color.red;
+                    }
+                    else
+                    {
+                        Text_HeroHp.color = Color.black;
+                    }
+                }
+                else
+                {
+                    LeiJieRooot.gameObject.SetActive(false);
+                }
+            }
+            else
+            {
+                Text_AffirmTips.text = "是否确认突破";
+                Text_Affirm.text = "突破";
+                Text_TitleName.text = "突破";
+                LeiJieRooot.gameObject.SetActive(false);
+            }
+
+
+            if (heroPowerUpConfig.DujieLevelbattleID != -1)
+            {
+                CombatRoot.gameObject.SetActive(true);
+                if (heroInfo1.heroData.isCombat)
+                {
+                    Btn_StartCombat.gameObject.SetActive(false);
+                    CombatTrue.gameObject.SetActive(true);
+                }
+                else
+                {
+                    Btn_StartCombat.gameObject.SetActive(true);
+                    CombatTrue.gameObject.SetActive(false);
+                }
+            }
+            else
+            {
+                CombatRoot.gameObject.SetActive(false);
+            }
+
+            RefenceSuccessProbability(heroInfo1);
+
+            Btn_Affirm.transform.Gray(false);
+
+
+            using (CTaskAwaitBuffer<BreakthroughItemWidget> cTaskAwaitBuffer = new CTaskAwaitBuffer<BreakthroughItemWidget>())
+            {
+                for (int i = 0; i < 1 + heroPowerUpConfig.DujieMustItemIDs.Length + heroPowerUpConfig.DujieItemIDs.Length; i++)
+                {
+                    cTaskAwaitBuffer.AddTask(UIManager.Instance.CreateGComponent<BreakthroughItemWidget>(null, Content));
+                }
+
+                breakthroughItemWidgets = await cTaskAwaitBuffer.WaitAll();
+
+                breakthroughItemWidgets[0].CustomInit(1, 0);
+
+
+                //必选道具
+                for (var i = 0; i < heroPowerUpConfig.DujieMustItemIDs.Length; i++)
+                {
+                    breakthroughItemWidgets[i + 1].CustomInit(2, heroPowerUpConfig.DujieMustItemIDs[i]);
+                }
+
+                //可选道具
+                for (var i = 0; i < heroPowerUpConfig.DujieItemIDs.Length; i++)
+                {
+                    breakthroughItemWidgets[i + heroPowerUpConfig.DujieMustItemIDs.Length + 1].CustomInit(2, heroPowerUpConfig.DujieItemIDs[i]);
+                }
+
+                for (var i = 0; i < breakthroughItemWidgets.Count; i++)
+                {
+                    breakthroughItemWidgets[i].transform.anchoredPosition = new Vector2((breakthroughItemWidgets[i].transform.sizeDelta.x + 48) * i, 0);
+                }
+
+                Content.sizeDelta = new Vector2((breakthroughItemWidgets[0].transform.sizeDelta.x + 48) * breakthroughItemWidgets.Count, 200);
+            }
+        }
+
         public override void Close()
         {
             foreach (var breakthroughItemWidget in breakthroughItemWidgets)
@@ -414,6 +547,10 @@ namespace Fort23.Mono
 
             breakthroughItemWidgets.Clear();
 
+            heroPowerUpConfig = default;
+
+            type = 0;
+
             base.Close();
         }
     }

+ 51 - 17
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroInformationPanel.cs

@@ -1,12 +1,14 @@
 using System.Collections.Generic;
+using System.Linq;
 using Animancer;
 using Animancer.TransitionLibraries;
 using Core.Language;
+using Excel2Json;
 using Fort23.Core;
 using Fort23.UTool;
 using GameLogic.Hero;
 using UnityEngine;
-using UnityEngine.AI;
+
 
 namespace Fort23.Mono
 {
@@ -34,18 +36,51 @@ namespace Fort23.Mono
         {
             Btn_DanYao.onClick.AddListener(() => { UseExpElixirPanel.OpenPanel(); });
 
-            Btn_TuPo.onClick.AddListener(() =>
-            {
-                int currentMiao = (int)((TimeHelper.ClientNow() - PlayerManager.Instance.myHero.heroData.upTime) / 1000);
 
-                int allexp = currentMiao * PlayerManager.Instance.myHero.powerUpConfig.AutoXiuwei;
-                if (PlayerManager.Instance.myHero.heroData.exp + allexp < PlayerManager.Instance.myHero.powerUpConfig.levelUpExp)
+            Btn_Dujie.onClick.AddListener(async () =>
+            {
+                if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 != heroInfo.powerUpConfig.jingjie1)
+                {
+                    HeroBreakthroughPanel.OpenPanel();
+                }
+                //预览
+                else
                 {
-                    return;
+                    HeroPowerUpConfig heroPowerUpConfig = default;
+                    HeroPowerUpConfig[] heroPowerUpConfigs = ConfigComponent.Instance.GetAll<HeroPowerUpConfig>();
+                    for (var i = PlayerManager.Instance.myHero.powerUpConfig.ID; i < heroPowerUpConfigs.Length; i++)
+                    {
+                        if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 != heroPowerUpConfigs[i].jingjie1)
+                        {
+                            heroPowerUpConfig = heroPowerUpConfigs[i - 1];
+                            break;
+                        }
+                    }
+
+                    AccountFileInfo.HeroData heroData = new AccountFileInfo.HeroData();
+                    heroData.heroModelId = PlayerManager.Instance.myHero.modelID;
+                    heroData.heroPowerId = heroPowerUpConfig.ID;
+                    HeroInfo heroInfo1 = new HeroInfo();
+                    heroInfo1.InitHero(heroData);
+
+                    await HeroBreakthroughPanel.OpenPanel1(heroInfo1);
                 }
+            });
+
 
+            Btn_TuPo.onClick.AddListener(() =>
+            {
                 if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 == heroInfo.powerUpConfig.jingjie1)
                 {
+                    int currentMiao = (int)((TimeHelper.ClientNow() - PlayerManager.Instance.myHero.heroData.upTime) / 1000);
+
+                    int allexp = currentMiao * PlayerManager.Instance.myHero.powerUpConfig.AutoXiuwei;
+                    if (PlayerManager.Instance.myHero.heroData.exp + allexp < PlayerManager.Instance.myHero.powerUpConfig.levelUpExp)
+                    {
+                        return;
+                    }
+
+
                     //小突破
                     if (PlayerManager.Instance.myHero.powerUpConfig.jingjie2 == heroInfo.powerUpConfig.jingjie2)
                     {
@@ -62,10 +97,9 @@ namespace Fort23.Mono
                         // CustomInit();
                     }
                 }
-                //渡劫
                 else
                 {
-                    HeroBreakthroughPanel.OpenPanel();
+                    // TipMessagePanel.OpenTipMessagePanel("")
                 }
             });
 
@@ -122,14 +156,14 @@ namespace Fort23.Mono
 
             Text_exp.text = $"{PlayerManager.Instance.myHero.exp}/{PlayerManager.Instance.myHero.powerUpConfig.levelUpExp}";
 
-            if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 == heroInfo.powerUpConfig.jingjie1)
-            {
-                Text_TuPo.text = "突破";
-            }
-            else
-            {
-                Text_TuPo.text = "渡劫";
-            }
+            // if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 == heroInfo.powerUpConfig.jingjie1)
+            // {
+            //     Text_TuPo.text = "突破";
+            // }
+            // else
+            // {
+            //     Text_TuPo.text = "渡劫";
+            // }
         }
 
         [CustomMethod(CustomMethodType.Update)]

+ 21 - 0
Assets/Scripts/GameUI/UI/HeroInformationPanel/SelectElixirPanel.cs

@@ -6,6 +6,7 @@ using Fort23.Core;
 using Fort23.UTool;
 using GameLogic.Bag;
 using log4net.Util;
+using UnityEngine;
 using Transform = UnityEngine.Transform;
 
 namespace Fort23.Mono
@@ -91,6 +92,7 @@ namespace Fort23.Mono
                 elixirItems.Add(elixirItemWidget);
             }
 
+            SelectWidget(elixirItemWidget);
             RefenceBl();
         }
 
@@ -101,15 +103,33 @@ namespace Fort23.Mono
             if (elixirItemWidget == this.elixirItemWidget)
             {
                 this.elixirItemWidget = null;
+                SelectWidget(null);
             }
             else
             {
                 this.elixirItemWidget = elixirItemWidget;
+                SelectWidget(elixirItemWidget);
             }
 
             RefenceBl();
         }
 
+        private void SelectWidget(ElixirItemWidget elixirItemWidget)
+        {
+            if (elixirItemWidget == null)
+            {
+                Icon_Select.transform.SetParent(transform);
+
+                Icon_Select.SetActive(false);
+            }
+            else
+            {
+                Icon_Select.transform.SetParent(elixirItemWidget.transform);
+                Icon_Select.GetComponent<RectTransform>().anchoredPosition = new Vector2(-0.48f,6.1f);
+                Icon_Select.SetActive(true);
+            }
+        }
+
 
         private void RefenceBl()
         {
@@ -134,6 +154,7 @@ namespace Fort23.Mono
             breakthrough.transform.SetParent(weidgetFater);
             breakthrough = null;
             weidgetFater = null;
+            SelectWidget(null);
             base.Close();
         }
 

+ 11 - 0
Assets/Scripts/GameUI/UI/HeroInformationPanel/SelectElixirPanelData.cs

@@ -74,6 +74,17 @@ namespace Fort23.Mono
 	      return _Btn_Close;
 	     }
 	   }
+	  private GameObject _Icon_Select;
+	  public GameObject Icon_Select
+	   {
+	   get{
+	      if (_Icon_Select == null)
+	       {
+	         _Icon_Select  = GetUIUnit<GameObject>("Icon_Select"); 
+	       }
+	      return _Icon_Select;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{

+ 50 - 50
UserSettings/Layouts/default-2022.dwlt

@@ -14,10 +14,10 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   m_PixelRect:
     serializedVersion: 2
-    x: 971
-    y: 741
-    width: 1370
-    height: 549
+    x: 0
+    y: 489
+    width: 2560
+    height: 903
   m_ShowMode: 0
   m_Title: Console
   m_RootView: {fileID: 4}
@@ -65,8 +65,8 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 1370
-    height: 549
+    width: 2560
+    height: 903
   m_MinSize: {x: 100, y: 121}
   m_MaxSize: {x: 4000, y: 4021}
   m_ActualView: {fileID: 13}
@@ -92,12 +92,12 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 1370
-    height: 549
+    width: 2560
+    height: 903
   m_MinSize: {x: 100, y: 121}
   m_MaxSize: {x: 4000, y: 4021}
   vertical: 0
-  controlID: 179404
+  controlID: 56318
   draggingID: 0
 --- !u!114 &5
 MonoBehaviour:
@@ -196,7 +196,7 @@ MonoBehaviour:
   m_MinSize: {x: 400, y: 50}
   m_MaxSize: {x: 32384, y: 8096}
   vertical: 0
-  controlID: 10785
+  controlID: 66
   draggingID: 0
 --- !u!114 &9
 MonoBehaviour:
@@ -242,7 +242,7 @@ MonoBehaviour:
     serializedVersion: 2
     x: 1201
     y: 0
-    width: 287
+    width: 409
     height: 1283
   m_MinSize: {x: 202, y: 221}
   m_MaxSize: {x: 4002, y: 4021}
@@ -266,9 +266,9 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 1488
+    x: 1610
     y: 0
-    width: 613
+    width: 617
     height: 1283
   m_MinSize: {x: 232, y: 271}
   m_MaxSize: {x: 10002, y: 10021}
@@ -292,9 +292,9 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 2101
+    x: 2227
     y: 0
-    width: 443
+    width: 317
     height: 1283
   m_MinSize: {x: 276, y: 71}
   m_MaxSize: {x: 4001, y: 4021}
@@ -323,10 +323,10 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 971
-    y: 741
-    width: 1370
-    height: 528
+    x: 0
+    y: 489
+    width: 2560
+    height: 882
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -727,14 +727,14 @@ MonoBehaviour:
   m_OverrideSceneCullingMask: 6917529027641081856
   m_SceneIsLit: 1
   m_SceneLighting: 1
-  m_2DMode: 0
+  m_2DMode: 1
   m_isRotationLocked: 0
   m_PlayAudio: 0
   m_AudioPlay: 0
   m_Position:
-    m_Target: {x: 10.455665, y: -0.0046182266, z: -3.791564}
+    m_Target: {x: 0.6402048, y: -0.61441857, z: -0.066805445}
     speed: 2
-    m_Value: {x: 10.455665, y: -0.0046182266, z: -3.791564}
+    m_Value: {x: 0.6402048, y: -0.61441857, z: -0.066805445}
   m_RenderMode: 0
   m_CameraMode:
     drawMode: 0
@@ -762,17 +762,17 @@ MonoBehaviour:
       m_Size: {x: 0, y: 0}
     yGrid:
       m_Fade:
-        m_Target: 1
+        m_Target: 0
         speed: 2
-        m_Value: 1
+        m_Value: 0
       m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4}
       m_Pivot: {x: 0, y: 0, z: 0}
       m_Size: {x: 1, y: 1}
     zGrid:
       m_Fade:
-        m_Target: 0
+        m_Target: 1
         speed: 2
-        m_Value: 0
+        m_Value: 1
       m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4}
       m_Pivot: {x: 0, y: 0, z: 0}
       m_Size: {x: 1, y: 1}
@@ -780,17 +780,17 @@ MonoBehaviour:
     m_GridAxis: 1
     m_gridOpacity: 0.5
   m_Rotation:
-    m_Target: {x: -0.18691203, y: 0.30988708, z: -0.06227222, w: -0.9301379}
+    m_Target: {x: 0, y: 0, z: 0, w: 1}
     speed: 2
-    m_Value: {x: -0.18691199, y: 0.30988702, z: -0.062272206, w: -0.93013763}
+    m_Value: {x: 0, y: 0, z: 0, w: 1}
   m_Size:
-    m_Target: 12.913765
+    m_Target: 6.9846272
     speed: 2
-    m_Value: 12.913765
+    m_Value: 6.9846272
   m_Ortho:
-    m_Target: 0
+    m_Target: 1
     speed: 2
-    m_Value: 0
+    m_Value: 1
   m_CameraSettings:
     m_Speed: 1
     m_SpeedNormalized: 0.5
@@ -933,7 +933,7 @@ MonoBehaviour:
     serializedVersion: 2
     x: -1351
     y: 81
-    width: 285
+    width: 407
     height: 1262
   m_SerializedDataModeController:
     m_DataMode: 0
@@ -950,7 +950,7 @@ MonoBehaviour:
       scrollPos: {x: 0, y: 0}
       m_SelectedIDs: 
       m_LastClickedID: 0
-      m_ExpandedIDs: f43af3ff94d6f7ffb4d6f7ff32d7f7ff3cd7f7ff46d7f7ff4cd7f7ff8ed7f7ffc0d7f7ffd0d7f7ff24e7f7ff32e7f7ffda29fbffe829fbff3024fcffcc2dfcffd02dfcffda2dfcff4446fcffd64ffcffe44ffcff1e63fcff2463fcff3463fcff5463fcfff263fcff5c6dfcff6a6dfcff54a9fcff5aa9fcff6aa9fcff84a9fcff00b5fcff0eb5fcffecf0fffff2f0ffff78faffff
+      m_ExpandedIDs: 6464faff1039fbff1639fbff063afbff143afbff28b9fbff48b9fbffbeb9fbffe4b9fbfff4b9fbfffeb9fbff08bafbff0ebafbff82bafbff92bafbff44c7fbff52c7fbff36d7fbff40d7fbff4ad7fbff50d7fbffc4d7fbffd4d7fbff7ce4fbff8ae4fbfffe02fcff0203fcff1003fcff508afcff4c9bfcffca9dfcff8aaefcff90aefcff80affcff8eaffcff3604feffea18feffee18fefffc18feffdc3cfeffe63cfefff03cfefff63cfeff6a3dfeff7a3dfeff0e4afeff1c4afeff16d7ffff1ad7ffff24d7ffff66faffff
       m_RenameOverlay:
         m_UserAcceptedRename: 0
         m_Name: 
@@ -966,7 +966,7 @@ MonoBehaviour:
         m_IsRenaming: 0
         m_OriginalEventType: 11
         m_IsRenamingFilename: 0
-        m_ClientGUIView: {fileID: 9}
+        m_ClientGUIView: {fileID: 10}
       m_SearchString: 
     m_ExpandedScenes: []
     m_CurrenRootInstanceID: 0
@@ -994,9 +994,9 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: -1064
+    x: -942
     y: 81
-    width: 611
+    width: 615
     height: 1262
   m_SerializedDataModeController:
     m_DataMode: 0
@@ -1009,7 +1009,7 @@ MonoBehaviour:
     m_SaveData: []
     m_OverlaysVisible: 1
   m_SearchFilter:
-    m_NameFilter: gamerun
+    m_NameFilter: 
     m_ClassNames: []
     m_AssetLabels: []
     m_AssetBundleNames: []
@@ -1021,7 +1021,7 @@ MonoBehaviour:
     m_Folders:
     - Assets/Res/UI/HeroInformainPanel
     m_Globs: []
-    m_OriginalText: gamerun
+    m_OriginalText: 
     m_ImportLogFlags: 0
     m_FilterByTypeIntersection: 0
   m_ViewMode: 1
@@ -1033,10 +1033,10 @@ MonoBehaviour:
   m_LockTracker:
     m_IsLocked: 0
   m_FolderTreeState:
-    scrollPos: {x: 0, y: 518}
-    m_SelectedIDs: 98bf0000
-    m_LastClickedID: 49048
-    m_ExpandedIDs: 000000006abc00006cbc00006ebc000070bc000072bc0000debe0000fcbe000016bf000078bf00005ccf000000ca9a3b
+    scrollPos: {x: 0, y: 48}
+    m_SelectedIDs: dcbf0000
+    m_LastClickedID: 49116
+    m_ExpandedIDs: 0000000008bd00000abd00000cbd00000ebd000010bd000088bf0000a6bf0000c0bf0000debf0000a4ae010000ca9a3b
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -1064,7 +1064,7 @@ MonoBehaviour:
     scrollPos: {x: 0, y: 0}
     m_SelectedIDs: 
     m_LastClickedID: 0
-    m_ExpandedIDs: 000000006abc00006cbc00006ebc000070bc000072bc000000ca9a3b
+    m_ExpandedIDs: 0000000008bd00000abd00000cbd00000ebd000010bd0000
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -1095,18 +1095,18 @@ MonoBehaviour:
     m_ExpandedInstanceIDs: 
     m_RenameOverlay:
       m_UserAcceptedRename: 0
-      m_Name: UseExpElixirPanel
-      m_OriginalName: UseExpElixirPanel
+      m_Name: 
+      m_OriginalName: 
       m_EditFieldRect:
         serializedVersion: 2
         x: 0
         y: 0
         width: 0
         height: 0
-      m_UserData: 352920
+      m_UserData: 0
       m_IsWaitingForDelay: 0
       m_IsRenaming: 0
-      m_OriginalEventType: 0
+      m_OriginalEventType: 11
       m_IsRenamingFilename: 1
       m_ClientGUIView: {fileID: 11}
     m_CreateAssetUtility:
@@ -1140,9 +1140,9 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: -451
+    x: -325
     y: 81
-    width: 442
+    width: 316
     height: 1262
   m_SerializedDataModeController:
     m_DataMode: 0