Explorar el Código

添加新的UI

DESKTOP-BGJIU14\ck hace 1 mes
padre
commit
4087c143a8
Se han modificado 43 ficheros con 3314 adiciones y 3754 borrados
  1. 2 2
      .run/Attach to Unity Editor.run.xml
  2. 719 2
      Assets/Res/UI/CombatPanel.prefab
  3. 313 610
      Assets/Res/UI/SkillSelectPanel.prefab
  4. 57 7
      Assets/Res/UI/ZhuanPanPanel.prefab
  5. 915 62
      Assets/Scenes/testCombat.scene
  6. 17 17
      Assets/Scripts/GameLogic/Bag/BagController.cs
  7. 15 0
      Assets/Scripts/GameLogic/Combat/CombatEvent/AddMagicWeaponHeroEntityEventData.cs
  8. 3 0
      Assets/Scripts/GameLogic/Combat/CombatEvent/AddMagicWeaponHeroEntityEventData.cs.meta
  9. 4 0
      Assets/Scripts/GameLogic/Combat/CombatEvent/CombatEventType.cs
  10. 32 32
      Assets/Scripts/GameLogic/Combat/CombatTool/CombatHeroController.cs
  11. 1 1
      Assets/Scripts/GameLogic/Combat/CombatType/TestCombatType.cs
  12. 4 3
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroEntity.cs
  13. 3 3
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroInfo.cs
  14. 119 59
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroSkillControl.cs
  15. 6 0
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroSkillControlBasic.cs
  16. 14 5
      Assets/Scripts/GameLogic/Combat/Hero/CombatMagicWeaponEntity.cs
  17. 13 2
      Assets/Scripts/GameLogic/Combat/Hero/MagicWeaponControl.cs
  18. 31 31
      Assets/Scripts/GameLogic/Equipment/EquipmentInfo.cs
  19. 97 97
      Assets/Scripts/GameLogic/Hero/HeroController.cs
  20. 73 73
      Assets/Scripts/GameLogic/Player/DropManager.cs
  21. 37 32
      Assets/Scripts/GameLogic/Player/PlayerManager.cs
  22. 21 0
      Assets/Scripts/GameUI/UI/CombatPanel/CombatPanel.cs
  23. 33 0
      Assets/Scripts/GameUI/UI/CombatPanel/CombatPanelData.cs
  24. 52 0
      Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidget.cs
  25. 11 0
      Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidget.cs.meta
  26. 51 0
      Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidgetData.cs
  27. 11 0
      Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidgetData.cs.meta
  28. 76 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidget.cs
  29. 11 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidget.cs.meta
  30. 51 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidgetData.cs
  31. 11 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidgetData.cs.meta
  32. 104 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillSelectPanel.cs
  33. 73 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillSelectPanelData.cs
  34. 11 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillSelectPanelData.cs.meta
  35. 41 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillWidget.cs
  36. 11 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillWidget.cs.meta
  37. 40 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillWidgetData.cs
  38. 11 0
      Assets/Scripts/GameUI/UI/CombatPanel/SkillWidgetData.cs.meta
  39. 7 1
      Assets/Scripts/GameUI/UI/CombatPanel/ZhuanPanPanel.cs
  40. 11 1
      Assets/Scripts/GameUI/UI/CombatPanel/ZhuanPanPanelData.cs
  41. 0 0
      Assets/StreamingAssets/assetConfig.txt
  42. 201 2714
      UserSettings/Layouts/default-2022.dwlt
  43. 1 0
      XiuXianGame.sln.DotSettings.user

+ 2 - 2
.run/Attach to Unity Editor.run.xml

@@ -1,8 +1,8 @@
 <component name="ProjectRunConfigurationManager">
-  <configuration default="false" name="Attach to Unity Editor" type="UNITY_DEBUG_RUN_CONFIGURATION" factoryName="Unity Debug" show_console_on_std_err="false" show_console_on_std_out="false" port="50000" address="localhost" ignored-value-for-modified-check="83320">
+  <configuration default="false" name="Attach to Unity Editor" type="UNITY_DEBUG_RUN_CONFIGURATION" factoryName="Unity Debug" show_console_on_std_err="false" show_console_on_std_out="false" port="50000" address="localhost" ignored-value-for-modified-check="106860">
     <option name="allowRunningInParallel" value="false" />
     <option name="listenPortForConnections" value="false" />
-    <option name="pid" value="83320" />
+    <option name="pid" value="106860" />
     <option name="projectPathOnTarget" />
     <option name="selectedOptions">
       <list />

+ 719 - 2
Assets/Res/UI/CombatPanel.prefab

@@ -84,6 +84,196 @@ MonoBehaviour:
     isList: 0
     ListCollectorDatas: []
   isAssetBundle: 1
+--- !u!1 &678450823949686045
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 4197360294442415998}
+  - component: {fileID: 6600941307632261174}
+  - component: {fileID: 6539911976127367467}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: MagicWeaponWidget
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &4197360294442415998
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 678450823949686045}
+  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:
+  - {fileID: 271634867267467130}
+  - {fileID: 6966436685152839904}
+  m_Father: {fileID: 1811249814091911294}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 1}
+  m_AnchorMax: {x: 0, y: 1}
+  m_AnchoredPosition: {x: 50, y: -50}
+  m_SizeDelta: {x: 100, y: 100}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &6600941307632261174
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 678450823949686045}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4810a0857c909354fa00c3aafdeac753, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data:
+  - key: icon
+    gameObject: {fileID: 6377344707678363892}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: cd
+    gameObject: {fileID: 1371450738590366279}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: myButton
+    gameObject: {fileID: 6539911976127367467}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  isAssetBundle: 1
+--- !u!114 &6539911976127367467
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 678450823949686045}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 0
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 0}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &750873150055080197
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 6383211429319453453}
+  - component: {fileID: 9072888345932556304}
+  - component: {fileID: 1670913371797132275}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: Background
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &6383211429319453453
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 750873150055080197}
+  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:
+  - {fileID: 2582662398739680966}
+  m_Father: {fileID: 6278296954147936113}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 1}
+  m_AnchorMax: {x: 0, y: 1}
+  m_AnchoredPosition: {x: 14.89, y: -14.7}
+  m_SizeDelta: {x: 29.79, y: 29.4}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &9072888345932556304
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 750873150055080197}
+  m_CullTransparentMesh: 1
+--- !u!114 &1670913371797132275
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 750873150055080197}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, 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: 10905, guid: 0000000000000000f000000000000000, type: 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
 --- !u!1 &1199651723240070270
 GameObject:
   m_ObjectHideFlags: 0
@@ -121,6 +311,93 @@ RectTransform:
   m_AnchoredPosition: {x: 0, y: 0}
   m_SizeDelta: {x: -20, y: 0}
   m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &1343676762713764609
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 6278296954147936113}
+  - component: {fileID: 6767260160117509061}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: AutoUse
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &6278296954147936113
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1343676762713764609}
+  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:
+  - {fileID: 6383211429319453453}
+  - {fileID: 6300211853622645150}
+  m_Father: {fileID: 3110366166440421900}
+  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: 26.5, y: 68.1}
+  m_SizeDelta: {x: 160, y: 30.4}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &6767260160117509061
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1343676762713764609}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 1670913371797132275}
+  toggleTransition: 1
+  graphic: {fileID: 1725020190088788415}
+  m_Group: {fileID: 0}
+  onValueChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_IsOn: 0
 --- !u!1 &1988293269573482859
 GameObject:
   m_ObjectHideFlags: 0
@@ -197,6 +474,44 @@ MonoBehaviour:
   m_FillOrigin: 0
   m_UseSpriteMesh: 0
   m_PixelsPerUnitMultiplier: 1
+--- !u!1 &2393867862268167949
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 3110366166440421900}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: MagicWeapon
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &3110366166440421900
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2393867862268167949}
+  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:
+  - {fileID: 1811249814091911294}
+  - {fileID: 6278296954147936113}
+  m_Father: {fileID: 9037135992368401232}
+  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: 233.69995, y: -566.7001}
+  m_SizeDelta: {x: 100, y: 100}
+  m_Pivot: {x: 0.5, y: 0.5}
 --- !u!1 &2397538506736819273
 GameObject:
   m_ObjectHideFlags: 0
@@ -259,6 +574,90 @@ MonoBehaviour:
   m_Spacing: {x: 0, y: -50.3}
   m_Constraint: 0
   m_ConstraintCount: 2
+--- !u!1 &2397889352047486654
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 6966436685152839904}
+  - component: {fileID: 8722334600143122962}
+  - component: {fileID: 1371450738590366279}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: cd
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &6966436685152839904
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2397889352047486654}
+  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: 4197360294442415998}
+  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, y: 0}
+  m_SizeDelta: {x: 80, y: 80}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &8722334600143122962
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2397889352047486654}
+  m_CullTransparentMesh: 1
+--- !u!114 &1371450738590366279
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2397889352047486654}
+  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: 0.46226418, g: 0.42955682, b: 0.42955682, 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: 3
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 0
+  m_FillClockwise: 0
+  m_FillOrigin: 2
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: icon_skill_10003
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: df05f928400d848c387e627e40486378, type: 3}
+  packInfo:
+    packName: skillIcon
+    packgJsonPath: /Art/UIAssets/TextrueJson/skillIcon.txt
+    packgSpritePath: Assets/Res/UIAtlas/skillIcon.spriteatlasv2
+    lasetJsonGUID: ba8dbdc12cfea95132d75e229eac99b8
 --- !u!1 &2935342725715976044
 GameObject:
   m_ObjectHideFlags: 0
@@ -1166,6 +1565,86 @@ MonoBehaviour:
     packgJsonPath: /Art/UIAssets/TextrueJson/all.txt
     packgSpritePath: Assets/Res/UIAtlas/all.spriteatlasv2
     lasetJsonGUID: 6c810ed1e00febb606e0f2b27d925fd9
+--- !u!1 &5077235548620880941
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 6300211853622645150}
+  - component: {fileID: 7046027853781459968}
+  - component: {fileID: 5126219221584669347}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: Label
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &6300211853622645150
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5077235548620880941}
+  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: 6278296954147936113}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 13.89, y: -0.5}
+  m_SizeDelta: {x: -37.79, y: -3}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &7046027853781459968
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5077235548620880941}
+  m_CullTransparentMesh: 1
+--- !u!114 &5126219221584669347
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5077235548620880941}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 20
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 0
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u81EA\u52A8\u91CA\u653E"
 --- !u!1 &5079625328724324194
 GameObject:
   m_ObjectHideFlags: 0
@@ -1364,6 +1843,90 @@ RectTransform:
   m_AnchoredPosition: {x: 0, y: -6.6}
   m_SizeDelta: {x: 100, y: 100}
   m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &6266451616475677771
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 271634867267467130}
+  - component: {fileID: 2145238185196499948}
+  - component: {fileID: 6377344707678363892}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: icon
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &271634867267467130
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6266451616475677771}
+  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: 4197360294442415998}
+  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, y: 0}
+  m_SizeDelta: {x: 80, y: 80}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &2145238185196499948
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6266451616475677771}
+  m_CullTransparentMesh: 1
+--- !u!114 &6377344707678363892
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6266451616475677771}
+  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: 1, b: 1, 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: 0
+  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: icon_skill_10003
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: df05f928400d848c387e627e40486378, type: 3}
+  packInfo:
+    packName: skillIcon
+    packgJsonPath: /Art/UIAssets/TextrueJson/skillIcon.txt
+    packgSpritePath: Assets/Res/UIAtlas/skillIcon.spriteatlasv2
+    lasetJsonGUID: ba8dbdc12cfea95132d75e229eac99b8
 --- !u!1 &7272320765542434062
 GameObject:
   m_ObjectHideFlags: 0
@@ -1398,7 +1961,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: -38.9, y: 19.7}
+  m_AnchoredPosition: {x: -38.9, y: -28.8}
   m_SizeDelta: {x: 100, y: 100}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &1601245502264627568
@@ -1425,6 +1988,68 @@ MonoBehaviour:
   m_Spacing: {x: -67.4, y: 0}
   m_Constraint: 2
   m_ConstraintCount: 1
+--- !u!1 &7790788168690589102
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 1811249814091911294}
+  - component: {fileID: 1690331965541552026}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: MagicWeaponRoot
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1811249814091911294
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7790788168690589102}
+  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:
+  - {fileID: 4197360294442415998}
+  m_Father: {fileID: 3110366166440421900}
+  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.000061035156, y: 0.000061035156}
+  m_SizeDelta: {x: 100, y: 100}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &1690331965541552026
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7790788168690589102}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Padding:
+    m_Left: 0
+    m_Right: 0
+    m_Top: 0
+    m_Bottom: 0
+  m_ChildAlignment: 0
+  m_StartCorner: 0
+  m_StartAxis: 0
+  m_CellSize: {x: 100, y: 100}
+  m_Spacing: {x: -6.3, y: -13.17}
+  m_Constraint: 1
+  m_ConstraintCount: 2
 --- !u!1 &7968806299161662357
 GameObject:
   m_ObjectHideFlags: 0
@@ -1593,6 +2218,82 @@ MonoBehaviour:
     packgJsonPath: /Art/UIAssets/TextrueJson/all.txt
     packgSpritePath: Assets/Res/UIAtlas/all.spriteatlasv2
     lasetJsonGUID: 6c810ed1e00febb606e0f2b27d925fd9
+--- !u!1 &8055331460150000457
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 2582662398739680966}
+  - component: {fileID: 2170334742578310602}
+  - component: {fileID: 1725020190088788415}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: Checkmark
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2582662398739680966
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8055331460150000457}
+  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: 6383211429319453453}
+  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, y: 0}
+  m_SizeDelta: {x: 20, y: 20}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &2170334742578310602
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8055331460150000457}
+  m_CullTransparentMesh: 1
+--- !u!114 &1725020190088788415
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8055331460150000457}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, 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: 10901, guid: 0000000000000000f000000000000000, type: 0}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
 --- !u!1 &8261694126548634895
 GameObject:
   m_ObjectHideFlags: 0
@@ -1715,7 +2416,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: 292, y: -480}
+  m_AnchoredPosition: {x: -293.3, y: -620.7}
   m_SizeDelta: {x: 100, y: 100}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &2209750265195049357
@@ -1796,6 +2497,7 @@ RectTransform:
   - {fileID: 7814751738232836672}
   - {fileID: 6634741294730613967}
   - {fileID: 6474916107440211306}
+  - {fileID: 3110366166440421900}
   m_Father: {fileID: 0}
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 0.5}
@@ -1841,4 +2543,19 @@ MonoBehaviour:
     isAssetBundle: 0
     isList: 0
     ListCollectorDatas: []
+  - key: MagicWeaponWidget
+    gameObject: {fileID: 678450823949686045}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: MagicWeapon
+    gameObject: {fileID: 1811249814091911294}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: AutoUse
+    gameObject: {fileID: 6767260160117509061}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
   isAssetBundle: 1

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 313 - 610
Assets/Res/UI/SkillSelectPanel.prefab


+ 57 - 7
Assets/Res/UI/ZhuanPanPanel.prefab

@@ -38,7 +38,7 @@ RectTransform:
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
   m_AnchoredPosition: {x: -2, y: 95.8}
-  m_SizeDelta: {x: 160, y: 30}
+  m_SizeDelta: {x: 28.7, y: 30}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &3209261268768878472
 CanvasRenderer:
@@ -256,6 +256,11 @@ MonoBehaviour:
     isAssetBundle: 0
     isList: 0
     ListCollectorDatas: []
+  - key: lanLiang_button
+    gameObject: {fileID: 2423531039489521702}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
   isAssetBundle: 1
 --- !u!1 &2594436835147073106
 GameObject:
@@ -760,7 +765,7 @@ RectTransform:
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
   m_AnchoredPosition: {x: -84, y: 29.5}
-  m_SizeDelta: {x: 160, y: 30}
+  m_SizeDelta: {x: 28.7, y: 30}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &9066316208657124279
 CanvasRenderer:
@@ -1021,7 +1026,7 @@ RectTransform:
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
   m_AnchoredPosition: {x: -75.5, y: -70.2}
-  m_SizeDelta: {x: 160, y: 30}
+  m_SizeDelta: {x: 28.7, y: 30}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &284945356985338255
 CanvasRenderer:
@@ -1234,7 +1239,7 @@ RectTransform:
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
   m_AnchoredPosition: {x: 0, y: 0}
-  m_SizeDelta: {x: 100, y: 100}
+  m_SizeDelta: {x: 28.7, y: 100}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!1 &6632880850602830187
 GameObject:
@@ -1354,7 +1359,7 @@ RectTransform:
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
   m_AnchoredPosition: {x: 69.4, y: -68.8}
-  m_SizeDelta: {x: 160, y: 30}
+  m_SizeDelta: {x: 28.7, y: 30}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &7706194672437430238
 CanvasRenderer:
@@ -1574,7 +1579,7 @@ RectTransform:
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
   m_AnchoredPosition: {x: 91.3, y: 26.6}
-  m_SizeDelta: {x: 160, y: 30}
+  m_SizeDelta: {x: 28.7, y: 30}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &858544132487791049
 CanvasRenderer:
@@ -1771,6 +1776,7 @@ GameObject:
   - component: {fileID: 6731311925923818131}
   - component: {fileID: 832521873555878584}
   - component: {fileID: 2560936016900566509}
+  - component: {fileID: 2423531039489521702}
   m_Layer: 5
   m_HasEditorInfo: 1
   m_Name: lanLiang
@@ -1836,6 +1842,50 @@ MonoBehaviour:
   m_FillOrigin: 2
   m_UseSpriteMesh: 0
   m_PixelsPerUnitMultiplier: 1
+--- !u!114 &2423531039489521702
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7964504113151296646}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 0
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 2560936016900566509}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
 --- !u!1 &8035110115935516371
 GameObject:
   m_ObjectHideFlags: 0
@@ -1896,7 +1946,7 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
-  m_RaycastTarget: 1
+  m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 915 - 62
Assets/Scenes/testCombat.scene


+ 17 - 17
Assets/Scripts/GameLogic/Bag/BagController.cs

@@ -32,7 +32,7 @@ namespace GameLogic.Bag
                 // m_bagList.Add(itemInfo);
                 LogTool.Log(itemInfo.guid);
                 m_allBagDic.Add(itemInfo.guid, itemInfo);
-                PlayerManager.Instance.eqController.Init(itemInfo);
+                // PlayerManager.Instance.eqController.Init(itemInfo);
             }
         }
 
@@ -214,26 +214,26 @@ namespace GameLogic.Bag
             long count = item.count.Value;
             ItemInfo itemInfo = GetItemInfo(item);
             
-            if (itemInfo.IsEquipItem())
-            {
-                PlayerManager.Instance.eqController.AddEquipment(itemInfo);    
-            }
+            // if (itemInfo.IsEquipItem())
+            // {
+            //     PlayerManager.Instance.eqController.AddEquipment(itemInfo);    
+            // }
 
             AddItemCount(itemInfo, count);
         }
 
-        /// <summary>
-        /// 重新加载一次所有装备
-        /// 一般用于,分解装备之后
-        /// </summary>
-        public void ReInitAllEqItem()
-        {
-            PlayerManager.Instance.eqController.allZyEqDic.Clear();
-            foreach (KeyValuePair<string,ItemInfo> keyValuePair in m_allBagDic)
-            {
-                PlayerManager.Instance.eqController.AddEquipment(keyValuePair.Value);
-            }
-        }
+        // /// <summary>
+        // /// 重新加载一次所有装备
+        // /// 一般用于,分解装备之后
+        // /// </summary>
+        // public void ReInitAllEqItem()
+        // {
+        //     PlayerManager.Instance.eqController.allZyEqDic.Clear();
+        //     foreach (KeyValuePair<string,ItemInfo> keyValuePair in m_allBagDic)
+        //     {
+        //         PlayerManager.Instance.eqController.AddEquipment(keyValuePair.Value);
+        //     }
+        // }
 
         public void RemoveItem(ItemInfo itemInfo, bool saveNow, bool zeroDel)
         {

+ 15 - 0
Assets/Scripts/GameLogic/Combat/CombatEvent/AddMagicWeaponHeroEntityEventData.cs

@@ -0,0 +1,15 @@
+using Core.Utility.Event;
+using GameLogic.Combat.Hero;
+
+namespace Common.Utility.CombatEvent
+{
+    public class AddMagicWeaponHeroEntityEventData: EventDataBasic<AddMagicWeaponHeroEntityEventData>
+    {
+        public CombatMagicWeaponEntity CombatMagicWeaponEntity;
+        protected override void ProDispose()
+        {
+            CombatMagicWeaponEntity = null;
+        }
+        
+    }
+}

+ 3 - 0
Assets/Scripts/GameLogic/Combat/CombatEvent/AddMagicWeaponHeroEntityEventData.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 42ab448f58544ecc9f8f9528cb81eaa2
+timeCreated: 1743649261

+ 4 - 0
Assets/Scripts/GameLogic/Combat/CombatEvent/CombatEventType.cs

@@ -61,5 +61,9 @@
         /// 特效逻辑初始化
         /// </summary>
         TimelineFxLogicInit,
+        /// <summary>
+        /// 添加神器实例
+        /// </summary>
+        AddMagicWeaponHeroEntity,
     }
 }

+ 32 - 32
Assets/Scripts/GameLogic/Combat/CombatTool/CombatHeroController.cs

@@ -47,40 +47,40 @@ namespace GameLogic.Combat.CombatTool
 
         private void HeroPowerUp(IEventData eventData)
         {
-            HeroPowerUpEventData heroPowerUpEventData = eventData as HeroPowerUpEventData;
-
-            // if (heroPowerUpEventData.upType == HeroUpType.BasicEquip)
+            // HeroPowerUpEventData heroPowerUpEventData = eventData as HeroPowerUpEventData;
+            //
+            // // if (heroPowerUpEventData.upType == HeroUpType.BasicEquip)
+            // // {
+            // //     return;
+            // // }
+            //
+            // int id = heroPowerUpEventData.heroModelID;
+            // CombatHeroEntity combatHeroEntity = null;
+            // for (int i = 0; i < myHero.Count; i++)
             // {
-            //     return;
+            //     if (myHero[i].CurrCombatHeroInfo.modelID == id)
+            //     {
+            //         combatHeroEntity = myHero[i];
+            //         break;
+            //     }
             // }
-
-            int id = heroPowerUpEventData.heroModelID;
-            CombatHeroEntity combatHeroEntity = null;
-            for (int i = 0; i < myHero.Count; i++)
-            {
-                if (myHero[i].CurrCombatHeroInfo.modelID == id)
-                {
-                    combatHeroEntity = myHero[i];
-                    break;
-                }
-            }
-
-            if (combatHeroEntity == null)
-            {
-                for (int i = 0; i < heroDie.Count; i++)
-                {
-                    if (heroDie[i].CurrCombatHeroInfo.modelID == id)
-                    {
-                        combatHeroEntity = heroDie[i];
-                        break;
-                    }
-                }
-            }
-
-            CombatHeroInfo combatHeroInfo = PlayerManager.Instance.heroController.GetHeroInfo(id);
-
-
-            UpLevelHero(heroPowerUpEventData.isSkillUp, combatHeroEntity, combatHeroInfo);
+            //
+            // if (combatHeroEntity == null)
+            // {
+            //     for (int i = 0; i < heroDie.Count; i++)
+            //     {
+            //         if (heroDie[i].CurrCombatHeroInfo.modelID == id)
+            //         {
+            //             combatHeroEntity = heroDie[i];
+            //             break;
+            //         }
+            //     }
+            // }
+            //
+            // CombatHeroInfo combatHeroInfo = PlayerManager.Instance.heroController.GetHeroInfo(id);
+            //
+            //
+            // UpLevelHero(heroPowerUpEventData.isSkillUp, combatHeroEntity, combatHeroInfo);
         }
 
 

+ 1 - 1
Assets/Scripts/GameLogic/Combat/CombatType/TestCombatType.cs

@@ -137,7 +137,7 @@ namespace GameLogic.Combat.CombatType
                             entity.CurrCombatHeroInfo.hp = (EncryptionLong)(20000);
                             entity.MaxCombatHeroInfo.hp = (EncryptionLong)(20000);
                             combatController.CombatHeroController.AddHero(entity);
-                        }));
+                        },isPlayer: true));
                 }
             }
         }

+ 4 - 3
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroEntity.cs

@@ -24,6 +24,7 @@ public class CombatHeroEntity : ShowBaiscEntity, ITimeLineAnimtion, ITimeLineGet
     /// </summary>
     public int heroDieNodeId;
 
+    public bool isPlayer;
     public string guidName
     {
         get { return CurrCombatHeroInfo.modelName; }
@@ -74,10 +75,10 @@ public class CombatHeroEntity : ShowBaiscEntity, ITimeLineAnimtion, ITimeLineGet
 
     public virtual async CTask<CombatHeroEntity> Init(CombatAIBasic combatAIBasic, CombatHeroInfo combatHeroInfo,
         Vector3 pos,
-        System.Action<CombatHeroEntity> callBack = null)
+        System.Action<CombatHeroEntity> callBack = null,bool isPlayer=false)
     {
         //后面记到检查战斗里面不要出现异步加载,也不要出现同步IO加载
-
+        this.isPlayer = isPlayer;
         string modelName = combatHeroInfo.modelName;
         if (combatHeroInfo.isGpu)
         {
@@ -168,7 +169,7 @@ public class CombatHeroEntity : ShowBaiscEntity, ITimeLineAnimtion, ITimeLineGet
             EventManager.Instance.Dispatch(CustomEventType.CreateHeroHp, createHeroHpEventData);
         }
 
-        await MagicWeaponControl.InitMagicWeapon(this);
+        await MagicWeaponControl.InitMagicWeapon(this,isPlayer);
 
         callBack?.Invoke(this);
 #endif

+ 3 - 3
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroInfo.cs

@@ -159,9 +159,9 @@ public class CombatHeroInfo
 
 
             //职业装备提供的属性
-            hp += PlayerManager.Instance.eqController.zyEqAddAttributeDic[modelConfig.profession].hp;
-            defense += PlayerManager.Instance.eqController.zyEqAddAttributeDic[modelConfig.profession].def;
-            attack += PlayerManager.Instance.eqController.zyEqAddAttributeDic[modelConfig.profession].atk;
+            // hp += PlayerManager.Instance.eqController.zyEqAddAttributeDic[modelConfig.profession].hp;
+            // defense += PlayerManager.Instance.eqController.zyEqAddAttributeDic[modelConfig.profession].def;
+            // attack += PlayerManager.Instance.eqController.zyEqAddAttributeDic[modelConfig.profession].atk;
         }
 
 

+ 119 - 59
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroSkillControl.cs

@@ -34,28 +34,91 @@ namespace GameLogic.Combat.Hero
 
 
         public BetterList<SkillBasic> _skillQueue = new BetterList<SkillBasic>();
-       
-    
 
-       
 
         protected override async CTask ProInit()
         {
+            if (_combatHeroEntity.IsEnemy)
+            {
+                await SetNewSkill(_combatHeroEntity.CurrCombatHeroInfo.unLockSkills.ToArray());
+            }
+            else
+            {
+                await SetNewSkill(PlayerManager.Instance.useSkillId);
+            }
             // NormalAttSpeedScale = 2;
-            CTaskAwaitBuffer cTaskAwaitBuffer = new CTaskAwaitBuffer();
+            // CTaskAwaitBuffer cTaskAwaitBuffer = new CTaskAwaitBuffer();
+            //
+            // List<int> skillId = _combatHeroEntity.CurrCombatHeroInfo.unLockSkills;
+            // if (skillId != null)
+            // {
+            //     for (int i = 0; i < skillId.Count; i++)
+            //     {
+            //         SkillConfig skillConfig = ConfigComponent.Instance.Get<SkillConfig>(skillId[i]);
+            //         SkillBasic skillBasic = AddSkill(skillConfig);
+            //         if (skillBasic == null)
+            //         {
+            //             continue;
+            //         }
+            //
+            //         skillBasic.index = i;
+            //         _skillQueue.Add(skillBasic);
+            //         if (!string.IsNullOrEmpty(skillConfig.scriptName))
+            //         {
+            //             cTaskAwaitBuffer.AddTask(AssetBundleLoadManager.Instance.LoadAssetAsyncTask<TextAsset>(
+            //                 skillConfig.timelineName + ".txt",
+            //                 delegate(AssetHandle handle)
+            //                 {
+            //                     if (handle != null)
+            //                     {
+            //                         TextAsset textAsset = handle.AssetObject<TextAsset>();
+            //                         TimeLienData timeLienData = JsonManager.FromJson<TimeLienData>(textAsset.text);
+            //                         timeLienData.DeserializeData();
+            //                         handle.Release();
+            //                         _combatHeroEntity.combatHeroTimeLineControl.AddTimeLienData(timeLienData);
+            //                     }
+            //                 }));
+            //         }
+            //     }
+            // }
+            //
+            // await cTaskAwaitBuffer.WaitAll();
+            // for (int i = 0; i < _skillQueue.Count; i++)
+            // {
+            //     SkillBasic skillBasic = _skillQueue[i];
+            //     skillBasic.ActiveSkill();
+            //     skillBasic.angle -= i * 36;
+            // }
+            //
+            // CombatEventManager.Instance.Dispatch(CombatEventType.ExercisesAlter, null);
+        }
 
-            List<int> skillId = _combatHeroEntity.CurrCombatHeroInfo.unLockSkills;
+        public override async CTask SetNewSkill(int[] allSkill)
+        {
+            CTaskAwaitBuffer cTaskAwaitBuffer = new CTaskAwaitBuffer();
+            _skillQueue.Clear();
+            int[] skillId = allSkill;
+            int indexCount = 0;
             if (skillId != null)
             {
-                for (int i = 0; i < skillId.Count; i++)
+                for (int i = 0; i < skillId.Length; i++)
                 {
-                    SkillConfig skillConfig = ConfigComponent.Instance.Get<SkillConfig>(skillId[i]);
+                    int id = skillId[i];
+                    if (id == 0)
+                    {
+                        continue;
+                    }
+
+                    SkillConfig skillConfig = ConfigComponent.Instance.Get<SkillConfig>(id);
                     SkillBasic skillBasic = AddSkill(skillConfig);
                     if (skillBasic == null)
                     {
                         continue;
                     }
-                    skillBasic.index = i;
+
+                    skillBasic.index = indexCount;
+                    indexCount++;
+                    skillBasic.angle = i * 36;
                     _skillQueue.Add(skillBasic);
                     if (!string.IsNullOrEmpty(skillConfig.scriptName))
                     {
@@ -79,10 +142,8 @@ namespace GameLogic.Combat.Hero
             await cTaskAwaitBuffer.WaitAll();
             for (int i = 0; i < _skillQueue.Count; i++)
             {
-               SkillBasic skillBasic= _skillQueue[i];
-               skillBasic.ActiveSkill();
-               skillBasic.angle -= i * 36;
-             
+                SkillBasic skillBasic = _skillQueue[i];
+                skillBasic.ActiveSkill();
             }
 
             CombatEventManager.Instance.Dispatch(CombatEventType.ExercisesAlter, null);
@@ -90,7 +151,7 @@ namespace GameLogic.Combat.Hero
 
         public SkillBasic GetSkillQueueForIndex(int index)
         {
-            if (index<0||index >= _skillQueue.Count)
+            if (index < 0 || index >= _skillQueue.Count)
             {
                 return null;
             }
@@ -177,7 +238,6 @@ namespace GameLogic.Combat.Hero
         {
             if (CombatController.currActiveCombat.IsFightState)
             {
-
                 float speed = _combatHeroEntity.CurrCombatHeroInfo.GetAttSpeed;
                 for (int i = 0; i < _skillQueue.Count; i++)
                 {
@@ -206,76 +266,76 @@ namespace GameLogic.Combat.Hero
                         //     }
 
 
-                            if (skillBasic.wuXingType.HasFlag(WuXingType.Gold))
+                        if (skillBasic.wuXingType.HasFlag(WuXingType.Gold))
+                        {
+                            int odds = Random.Range(0, 100);
+                            if (odds < 50)
                             {
-                                int odds = Random.Range(0, 100);
-                                if (odds < 50)
+                                _combatHeroEntity.CurrCombatHeroInfo.Water_Injury -= Random.Range(2, 5);
+                                if (_combatHeroEntity.CurrCombatHeroInfo.Water_Injury < 0)
                                 {
-                                    _combatHeroEntity.CurrCombatHeroInfo.Water_Injury -= Random.Range(2, 5);
-                                    if (_combatHeroEntity.CurrCombatHeroInfo.Water_Injury < 0)
-                                    {
-                                        _combatHeroEntity.CurrCombatHeroInfo.Water_Injury = 0;
-                                    }
+                                    _combatHeroEntity.CurrCombatHeroInfo.Water_Injury = 0;
                                 }
                             }
+                        }
 
-                            if (skillBasic.wuXingType.HasFlag(WuXingType.Wood))
+                        if (skillBasic.wuXingType.HasFlag(WuXingType.Wood))
+                        {
+                            int odds = Random.Range(0, 100);
+                            if (odds < 50)
                             {
-                                int odds = Random.Range(0, 100);
-                                if (odds < 50)
+                                _combatHeroEntity.CurrCombatHeroInfo.Fire_Injury -= Random.Range(2, 5);
+                                if (_combatHeroEntity.CurrCombatHeroInfo.Fire_Injury < 0)
                                 {
-                                    _combatHeroEntity.CurrCombatHeroInfo.Fire_Injury -= Random.Range(2, 5);
-                                    if (_combatHeroEntity.CurrCombatHeroInfo.Fire_Injury < 0)
-                                    {
-                                        _combatHeroEntity.CurrCombatHeroInfo.Fire_Injury = 0;
-                                    }
+                                    _combatHeroEntity.CurrCombatHeroInfo.Fire_Injury = 0;
                                 }
                             }
+                        }
 
-                            if (skillBasic.wuXingType.HasFlag(WuXingType.Water))
+                        if (skillBasic.wuXingType.HasFlag(WuXingType.Water))
+                        {
+                            int odds = Random.Range(0, 100);
+                            if (odds < 50)
                             {
-                                int odds = Random.Range(0, 100);
-                                if (odds < 50)
+                                _combatHeroEntity.CurrCombatHeroInfo.Wood_Injury -= Random.Range(2, 5);
+                                if (_combatHeroEntity.CurrCombatHeroInfo.Wood_Injury < 0)
                                 {
-                                    _combatHeroEntity.CurrCombatHeroInfo.Wood_Injury -= Random.Range(2, 5);
-                                    if (_combatHeroEntity.CurrCombatHeroInfo.Wood_Injury < 0)
-                                    {
-                                        _combatHeroEntity.CurrCombatHeroInfo.Wood_Injury = 0;
-                                    }
+                                    _combatHeroEntity.CurrCombatHeroInfo.Wood_Injury = 0;
                                 }
                             }
+                        }
 
-                            if (skillBasic.wuXingType.HasFlag(WuXingType.Fire))
+                        if (skillBasic.wuXingType.HasFlag(WuXingType.Fire))
+                        {
+                            int odds = Random.Range(0, 100);
+                            if (odds < 50)
                             {
-                                int odds = Random.Range(0, 100);
-                                if (odds < 50)
+                                _combatHeroEntity.CurrCombatHeroInfo.Earth_Injury -= Random.Range(2, 5);
+                                if (_combatHeroEntity.CurrCombatHeroInfo.Earth_Injury < 0)
                                 {
-                                    _combatHeroEntity.CurrCombatHeroInfo.Earth_Injury -= Random.Range(2, 5);
-                                    if (_combatHeroEntity.CurrCombatHeroInfo.Earth_Injury < 0)
-                                    {
-                                        _combatHeroEntity.CurrCombatHeroInfo.Earth_Injury = 0;
-                                    }
+                                    _combatHeroEntity.CurrCombatHeroInfo.Earth_Injury = 0;
                                 }
                             }
+                        }
 
-                            if (skillBasic.wuXingType.HasFlag(WuXingType.Earth))
+                        if (skillBasic.wuXingType.HasFlag(WuXingType.Earth))
+                        {
+                            int odds = Random.Range(0, 100);
+                            if (odds < 50)
                             {
-                                int odds = Random.Range(0, 100);
-                                if (odds < 50)
+                                _combatHeroEntity.CurrCombatHeroInfo.Metal_Injury -= Random.Range(2, 5);
+                                if (_combatHeroEntity.CurrCombatHeroInfo.Metal_Injury < 0)
                                 {
-                                    _combatHeroEntity.CurrCombatHeroInfo.Metal_Injury -= Random.Range(2, 5);
-                                    if (_combatHeroEntity.CurrCombatHeroInfo.Metal_Injury < 0)
-                                    {
-                                        _combatHeroEntity.CurrCombatHeroInfo.Metal_Injury = 0;
-                                    }
+                                    _combatHeroEntity.CurrCombatHeroInfo.Metal_Injury = 0;
                                 }
                             }
+                        }
 
-                            AddCommandSkill(skillBasic);
-                            AddUseGongFaEventData addUseGongFaEventData = AddUseGongFaEventData.Create();
-                            addUseGongFaEventData.SkillBasic = skillBasic;
-                            CombatEventManager.Instance.Dispatch(CombatEventType.AddUseGongFa, addUseGongFaEventData);
-                            // Debug.Log("旋转一圈");
+                        AddCommandSkill(skillBasic);
+                        AddUseGongFaEventData addUseGongFaEventData = AddUseGongFaEventData.Create();
+                        addUseGongFaEventData.SkillBasic = skillBasic;
+                        CombatEventManager.Instance.Dispatch(CombatEventType.AddUseGongFa, addUseGongFaEventData);
+                        // Debug.Log("旋转一圈");
                         // }
                     }
                 }

+ 6 - 0
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroSkillControlBasic.cs

@@ -27,6 +27,7 @@ namespace GameLogic.Combat.Hero
         {
             return this as T;
         }
+        
 
         public async CTask Init(CombatHeroEntity combatHeroEntity)
         {
@@ -52,6 +53,11 @@ namespace GameLogic.Combat.Hero
             return null;
         }
 
+        public virtual async CTask SetNewSkill(int[] allSkill)
+        {
+            
+        }
+
         public SkillBasic AddSkill(SkillConfig skillConfig)
         {
             if (string.IsNullOrEmpty(skillConfig.scriptName))

+ 14 - 5
Assets/Scripts/GameLogic/Combat/Hero/CombatMagicWeaponEntity.cs

@@ -154,6 +154,18 @@ namespace GameLogic.Combat.Hero
             return 1;
         }
 
+        public void UseMagicWeapon()
+        {
+            if (cd > 0 || _magicWeaponControl.combatHeroEntity.CombatAIBasic.currFocusTarget == null)
+            {
+               return;
+            }
+            _HpBl = 100;
+            cd = magicWeaponConfig.cd;
+            CollidingTarget = null;
+            _magicWeaponControl.UseMagicWeapon(this);
+        }
+
         public override void Update(float t)
         {
             combatHeroTimeLineControl.Update(t);
@@ -163,12 +175,9 @@ namespace GameLogic.Combat.Hero
             {
                 cd -= t;
 
-                if (cd <= 0 && _magicWeaponControl.combatHeroEntity.CombatAIBasic.currFocusTarget != null)
+                if (_magicWeaponControl.isAutoUse)
                 {
-                    _HpBl = 100;
-                    cd = magicWeaponConfig.cd;
-                    CollidingTarget = null;
-                    _magicWeaponControl.UseMagicWeapon(this);
+                    UseMagicWeapon();
                 }
             }
         }

+ 13 - 2
Assets/Scripts/GameLogic/Combat/Hero/MagicWeaponControl.cs

@@ -13,6 +13,7 @@ namespace GameLogic.Combat.Hero
     /// </summary>
     public class MagicWeaponControl
     {
+        public bool isAutoUse;
         private BetterList<CombatMagicWeaponEntity> _allMagicWeapon = new BetterList<CombatMagicWeaponEntity>();
 
         // private CombatMagicWeaponEntity _currUserMagicWeapon;
@@ -21,6 +22,15 @@ namespace GameLogic.Combat.Hero
 
         public void AddMagicWeapon(CombatMagicWeaponEntity combatMagicWeaponEntity)
         {
+            if (combatHeroEntity.isPlayer)
+            {
+                AddMagicWeaponHeroEntityEventData addMagicWeaponHeroEntityEventData =
+                    AddMagicWeaponHeroEntityEventData.Create();
+                addMagicWeaponHeroEntityEventData.CombatMagicWeaponEntity = combatMagicWeaponEntity;
+                CombatEventManager.Instance.Dispatch(CombatEventType.AddMagicWeaponHeroEntity,
+                    addMagicWeaponHeroEntityEventData);
+            }
+
             _allMagicWeapon.Add(combatMagicWeaponEntity);
         }
 
@@ -29,8 +39,9 @@ namespace GameLogic.Combat.Hero
             _allMagicWeapon.Remove(combatMagicWeaponEntity);
         }
 
-        public async CTask InitMagicWeapon(CombatHeroEntity combatHeroEntity)
+        public async CTask InitMagicWeapon(CombatHeroEntity combatHeroEntity, bool isPlayer)
         {
+            isAutoUse = !isPlayer;
             this.combatHeroEntity = combatHeroEntity;
             CTaskAwaitBuffer cTaskAwaitBuffer = new CTaskAwaitBuffer();
             List<int> MagicWeaponID = combatHeroEntity.CurrCombatHeroInfo.MagicWeaponID;
@@ -56,7 +67,7 @@ namespace GameLogic.Combat.Hero
             for (int i = 0; i < _allMagicWeapon.Count; i++)
             {
                 CombatMagicWeaponEntity combatMagicWeaponEntity = _allMagicWeapon[i];
-                float v = combatMagicWeaponEntity.MaxCd * cdBl*0.01f;
+                float v = combatMagicWeaponEntity.MaxCd * cdBl * 0.01f;
                 combatMagicWeaponEntity.cd -= v;
             }
         }

+ 31 - 31
Assets/Scripts/GameLogic/Equipment/EquipmentInfo.cs

@@ -48,7 +48,7 @@ namespace GameLogic.Equipment
             level = basicEquipConfig.lv;
             quality = eqData.quality;
 
-            CalAtt();
+            // CalAtt();
         }
 
         public EquipmentInfo()
@@ -89,12 +89,12 @@ namespace GameLogic.Equipment
 
             // int equipmentConfigID = itemConfig.itemParam[0] * 10000 + itemConfig.itemParam[1] * 1000 + eLv;
             
-            int equipmentConfigID =
-                GlobalParam.GenerateEquipmentID(itemConfig.itemParam[0], itemConfig.itemParam[1], dropLv,
-                    PlayerManager.Instance.heroController.mainLevel);
+            // int equipmentConfigID =
+            //     GlobalParam.GenerateEquipmentID(itemConfig.itemParam[0], itemConfig.itemParam[1], dropLv,
+            //         PlayerManager.Instance.heroController.mainLevel);
+            //
             
-            
-            basicEquipConfig = ConfigComponent.Instance.Get<HeroBasicEquipConfig>(equipmentConfigID);
+            // basicEquipConfig = ConfigComponent.Instance.Get<HeroBasicEquipConfig>(equipmentConfigID);
             level = basicEquipConfig.lv;
             // guid = GlobalParam.GenerateGUID();
             myItemInfo.guid = itemConfig.ID.ToString() + basicEquipConfig.lv + quality;
@@ -103,34 +103,34 @@ namespace GameLogic.Equipment
             //             "-装备位置:" + basicEquipConfig.Type + 
             //             "-装备品质:" + quality +
             //             "-装备等级:" + basicEquipConfig.lv);
-            CalAtt();
+            // CalAtt();
         }
         
 
-        public void CalAtt()
-        {
-            // m_Attack = basicEquipConfig.att
-            // foreach (int attTyp in basicEquipConfig.AttType)
-            for(int i=0; i < basicEquipConfig.AttType.Length; i++)
-            {
-                int attTyp = basicEquipConfig.AttType[i];
-                int value =  Mathf.RoundToInt( basicEquipConfig.AttValue[i] *
-                                               PlayerManager.Instance.eqController.
-                                                   GetEquipmentRarityAttributeFactor(quality));
-                switch (attTyp)
-                {
-                    case 1:
-                        m_HP = value;
-                        break;
-                    case 2:
-                        m_Attack = value;
-                        break;
-                    case 3:
-                        m_Defense = value;
-                        break;
-                }
-            }
-        }
+        // public void CalAtt()
+        // {
+        //     // m_Attack = basicEquipConfig.att
+        //     // foreach (int attTyp in basicEquipConfig.AttType)
+        //     for(int i=0; i < basicEquipConfig.AttType.Length; i++)
+        //     {
+        //         int attTyp = basicEquipConfig.AttType[i];
+        //         int value =  Mathf.RoundToInt( basicEquipConfig.AttValue[i] *
+        //                                        PlayerManager.Instance.eqController.
+        //                                            GetEquipmentRarityAttributeFactor(quality));
+        //         switch (attTyp)
+        //         {
+        //             case 1:
+        //                 m_HP = value;
+        //                 break;
+        //             case 2:
+        //                 m_Attack = value;
+        //                 break;
+        //             case 3:
+        //                 m_Defense = value;
+        //                 break;
+        //         }
+        //     }
+        // }
         
         
 

+ 97 - 97
Assets/Scripts/GameLogic/Hero/HeroController.cs

@@ -111,7 +111,7 @@ namespace GameLogic.Hero
             {
                 CalMainLevel();
             }
-            SendEvent(HeroUpType.Level, heroInfo, HeroUpResultType.Success);
+            // SendEvent(HeroUpType.Level, heroInfo, HeroUpResultType.Success);
         }
 
 
@@ -130,7 +130,7 @@ namespace GameLogic.Hero
                     {
                         heroInfo.Promote();
                         PlayerManager.Instance.SaveHeroData(heroInfo);
-                        SendEvent(HeroUpType.Promote, heroInfo, resultType);
+                        // SendEvent(HeroUpType.Promote, heroInfo, resultType);
                     }
                 }
             }
@@ -170,53 +170,53 @@ namespace GameLogic.Hero
             return resultType;
         }
         
-        /// <summary>
-        /// 发送英雄提升的事件
-        /// </summary>
-        /// <param name="upType">提升类型:升级、升星等.</param>
-        public void SendEvent(HeroUpType upType, HeroInfo heroInfo, HeroUpResultType resultType = HeroUpResultType.None)
-        {
-            HeroPowerUpEventData data = new HeroPowerUpEventData();
-            data.heroModelID = heroInfo.modelID;
-            data.upType = upType;
-            data.ResultType = resultType;
-            
-            PlayerManager.Instance.lastHeroInfo = heroInfo;
-         
-            if (upType == HeroUpType.Level)
-            {
-                SkillUpConfig upConfig = PlayerManager.Instance.heroController
-                    .GetSkillUpConfig4Lv(heroInfo.level.Value);
-                
-                
-                if (upConfig.ID > 0)
-                {
-                    heroInfo.SkillData.UpdateSkills();
-                    data.isSkillUp = true;
-                }
-                
-                EventManager.Instance.Dispatch(CustomEventType.HeroLvUp, data);
-            }
-            else if (upType == HeroUpType.Promote)
-            {
-                // SkillUpConfig upConfig = PlayerManager.Instance.heroController
-                //     .IsStarUpGetNewSkill(heroInfo.star.Value);
-                
-                // data.isSkillUp = upConfig.ID > 0;
-                
-                // SkillUpConfig upConfig = PlayerManager.Instance.heroController.GetSkillUpConfig4Star(heroInfo.star.Value);
-                //
-                // if (upConfig.ID > 0)
-                // {
-                //     heroInfo.SkillData.UpdateSkills();
-                //     data.isSkillUp = true;
-                // }
-                
-                EventManager.Instance.Dispatch(CustomEventType.HeroPromote, data);
-            }
-            EventManager.Instance.Dispatch(CustomEventType.HeroPowerUp, data);
-        }
-        
+        // /// <summary>
+        // /// 发送英雄提升的事件
+        // /// </summary>
+        // /// <param name="upType">提升类型:升级、升星等.</param>
+        // public void SendEvent(HeroUpType upType, HeroInfo heroInfo, HeroUpResultType resultType = HeroUpResultType.None)
+        // {
+        //     HeroPowerUpEventData data = new HeroPowerUpEventData();
+        //     data.heroModelID = heroInfo.modelID;
+        //     data.upType = upType;
+        //     data.ResultType = resultType;
+        //     
+        //     PlayerManager.Instance.lastHeroInfo = heroInfo;
+        //  
+        //     if (upType == HeroUpType.Level)
+        //     {
+        //         SkillUpConfig upConfig = PlayerManager.Instance.heroController
+        //             .GetSkillUpConfig4Lv(heroInfo.level.Value);
+        //         
+        //         
+        //         if (upConfig.ID > 0)
+        //         {
+        //             heroInfo.SkillData.UpdateSkills();
+        //             data.isSkillUp = true;
+        //         }
+        //         
+        //         EventManager.Instance.Dispatch(CustomEventType.HeroLvUp, data);
+        //     }
+        //     else if (upType == HeroUpType.Promote)
+        //     {
+        //         // SkillUpConfig upConfig = PlayerManager.Instance.heroController
+        //         //     .IsStarUpGetNewSkill(heroInfo.star.Value);
+        //         
+        //         // data.isSkillUp = upConfig.ID > 0;
+        //         
+        //         // SkillUpConfig upConfig = PlayerManager.Instance.heroController.GetSkillUpConfig4Star(heroInfo.star.Value);
+        //         //
+        //         // if (upConfig.ID > 0)
+        //         // {
+        //         //     heroInfo.SkillData.UpdateSkills();
+        //         //     data.isSkillUp = true;
+        //         // }
+        //         
+        //         EventManager.Instance.Dispatch(CustomEventType.HeroPromote, data);
+        //     }
+        //     EventManager.Instance.Dispatch(CustomEventType.HeroPowerUp, data);
+        // }
+        //
         public void InitHeroes()
         {
         
@@ -338,30 +338,30 @@ namespace GameLogic.Hero
         /// <param name="star">英雄星级</param>
         /// <param name="onlyUnLock">ture=只返回解锁的</param>
         /// <returns></returns>
-        public SkillConfig GetHighestLevelOr1(int groupID, int level, int star, bool onlyUnLock = false,bool isMonster=false)
-        {
-            SkillConfig skillConfig = new SkillConfig();
-            
-            int lv = 0;
-            for(int i = 0; i <  PlayerManager.Instance.groupSkillDic[groupID].Count; i++)
-            {
-                SkillConfig config = PlayerManager.Instance.groupSkillDic[groupID][i];
-
-                if (i == 0 && !onlyUnLock)
-                {
-                    skillConfig = config;
-                }
-                
-                // if (config.isUnLock && config.skillConfig.level > lv)
-                if(IsUnLockSkill(level, star, config.ID,isMonster) && config.level > lv)
-                {
-                    lv = config.level;
-                    skillConfig = config;
-                }
-            }
-            return skillConfig;
-        }
-        
+        // public SkillConfig GetHighestLevelOr1(int groupID, int level, int star, bool onlyUnLock = false,bool isMonster=false)
+        // {
+        //     SkillConfig skillConfig = new SkillConfig();
+        //     
+        //     int lv = 0;
+        //     for(int i = 0; i <  PlayerManager.Instance.groupSkillDic[groupID].Count; i++)
+        //     {
+        //         SkillConfig config = PlayerManager.Instance.groupSkillDic[groupID][i];
+        //
+        //         if (i == 0 && !onlyUnLock)
+        //         {
+        //             skillConfig = config;
+        //         }
+        //         
+        //         // if (config.isUnLock && config.skillConfig.level > lv)
+        //         if(IsUnLockSkill(level, star, config.ID,isMonster) && config.level > lv)
+        //         {
+        //             lv = config.level;
+        //             skillConfig = config;
+        //         }
+        //     }
+        //     return skillConfig;
+        // }
+        //
         /// <summary>
         /// 技能是否解锁
         /// </summary>
@@ -442,18 +442,18 @@ namespace GameLogic.Hero
         /// </summary>
         /// <param name="level">英雄等级</param>
         /// <returns></returns>
-        public SkillUpConfig GetSkillUpConfig4Lv(int level)
-        {
-            SkillUpConfig upConfig = new SkillUpConfig();
-            foreach (SkillUpConfig skillUpConfig in PlayerManager.Instance.skillUpConfigs)
-            {
-                if (skillUpConfig.upType == 1 && level == skillUpConfig.upValue)
-                {
-                    return skillUpConfig;
-                }
-            }
-            return upConfig;
-        }
+        // public SkillUpConfig GetSkillUpConfig4Lv(int level)
+        // {
+        //     SkillUpConfig upConfig = new SkillUpConfig();
+        //     foreach (SkillUpConfig skillUpConfig in PlayerManager.Instance.skillUpConfigs)
+        //     {
+        //         if (skillUpConfig.upType == 1 && level == skillUpConfig.upValue)
+        //         {
+        //             return skillUpConfig;
+        //         }
+        //     }
+        //     return upConfig;
+        // }
         
         
         /// <summary>
@@ -461,18 +461,18 @@ namespace GameLogic.Hero
         /// </summary>
         /// <param name="level">英雄等级</param>
         /// <returns></returns>
-        public SkillUpConfig GetSkillUpConfig4Star(int star)
-        {
-            SkillUpConfig upConfig = new SkillUpConfig();
-            foreach (SkillUpConfig skillUpConfig in PlayerManager.Instance.skillUpConfigs)
-            {
-                if (skillUpConfig.upType == 2 && star == skillUpConfig.upValue)
-                {
-                    return skillUpConfig;
-                }
-            }
-            return upConfig;
-        }
+        // public SkillUpConfig GetSkillUpConfig4Star(int star)
+        // {
+        //     SkillUpConfig upConfig = new SkillUpConfig();
+        //     foreach (SkillUpConfig skillUpConfig in PlayerManager.Instance.skillUpConfigs)
+        //     {
+        //         if (skillUpConfig.upType == 2 && star == skillUpConfig.upValue)
+        //         {
+        //             return skillUpConfig;
+        //         }
+        //     }
+        //     return upConfig;
+        // }
         
         // /// <summary>
         // /// 判断【星级】是否可以解锁新技能

+ 73 - 73
Assets/Scripts/GameLogic/Player/DropManager.cs

@@ -37,70 +37,70 @@ namespace GameLogic.Player
             }
         }
 
-        public ItemInfo DropEquipment(int equipModelDropID, int qualityDropID, int lvDropID)
-        {
-            // string[] eqDropData = eqDropDataStr.Split(',');
-            //
-            // if (eqDropData.Length != 3)
-            // {
-            //     LogTool.Error("装备掉落格式错误:" + eqDropDataStr);
-            //     return null;
-            // }
-
-            ItemInfo eqItemInfo = PlayerManager.Instance.eqController.BuildEquipment(
-                equipModelDropID,
-                qualityDropID,
-                lvDropID);
-
-            return eqItemInfo;
-        }
-
-        /// <summary>
-        /// 关卡掉装备
-        /// 配的是一个string数组,每个string可以被分成3个掉落ID(装备模版、品质、等级)
-        /// </summary>
-        /// <param name="levelBattleConfig">关卡表</param>
-        /// <param name="monsterType">怪物类型</param>
-        /// <returns></returns>
-        public List<ItemInfo> DropEquipment(LevelBattleConfig levelBattleConfig, int monsterType)
-        {
-            List<ItemInfo> equipmentList = new List<ItemInfo>();
-            ItemInfo itemInfo = null;
-
-            if (monsterType == 2)
-            {
-                for (int i = 0; i < levelBattleConfig.miniMonsterItem.Length; i++)
-                {
-                    itemInfo = DropEquipment( levelBattleConfig.miniMonsterItem[0], levelBattleConfig.miniMonsterItem[1], levelBattleConfig.miniMonsterItem[2]);
-                    i += 2;
-                }
-            }
-            else if (monsterType == 3)
-            {
-                for (int i = 0; i < levelBattleConfig.eliteMonsterItem.Length; i++)
-                {
-                    itemInfo = DropEquipment( levelBattleConfig.eliteMonsterItem[0], levelBattleConfig.eliteMonsterItem[1], levelBattleConfig.eliteMonsterItem[2]);
-                    i += 2;
-                }
-               
-            }
-            else if (monsterType == 4)
-            {
-                for (int i = 0; i < levelBattleConfig.bossItem.Length; i++)
-                {
-                    itemInfo = DropEquipment( levelBattleConfig.bossItem[0], levelBattleConfig.bossItem[1], levelBattleConfig.bossItem[2]);
-                    i += 2;
-                }
-            }
-
-            if (itemInfo != null && itemInfo.eqInfo != null)
-            {
-                equipmentList.Add(itemInfo);
-            }
-            
-            BagController.Instance.AddItem(equipmentList);
-            return equipmentList;
-        }
+        // public ItemInfo DropEquipment(int equipModelDropID, int qualityDropID, int lvDropID)
+        // {
+        //     // string[] eqDropData = eqDropDataStr.Split(',');
+        //     //
+        //     // if (eqDropData.Length != 3)
+        //     // {
+        //     //     LogTool.Error("装备掉落格式错误:" + eqDropDataStr);
+        //     //     return null;
+        //     // }
+        //
+        //     ItemInfo eqItemInfo = PlayerManager.Instance.eqController.BuildEquipment(
+        //         equipModelDropID,
+        //         qualityDropID,
+        //         lvDropID);
+        //
+        //     return eqItemInfo;
+        // }
+
+        // /// <summary>
+        // /// 关卡掉装备
+        // /// 配的是一个string数组,每个string可以被分成3个掉落ID(装备模版、品质、等级)
+        // /// </summary>
+        // /// <param name="levelBattleConfig">关卡表</param>
+        // /// <param name="monsterType">怪物类型</param>
+        // /// <returns></returns>
+        // public List<ItemInfo> DropEquipment(LevelBattleConfig levelBattleConfig, int monsterType)
+        // {
+        //     List<ItemInfo> equipmentList = new List<ItemInfo>();
+        //     ItemInfo itemInfo = null;
+        //
+        //     if (monsterType == 2)
+        //     {
+        //         for (int i = 0; i < levelBattleConfig.miniMonsterItem.Length; i++)
+        //         {
+        //             itemInfo = DropEquipment( levelBattleConfig.miniMonsterItem[0], levelBattleConfig.miniMonsterItem[1], levelBattleConfig.miniMonsterItem[2]);
+        //             i += 2;
+        //         }
+        //     }
+        //     else if (monsterType == 3)
+        //     {
+        //         for (int i = 0; i < levelBattleConfig.eliteMonsterItem.Length; i++)
+        //         {
+        //             itemInfo = DropEquipment( levelBattleConfig.eliteMonsterItem[0], levelBattleConfig.eliteMonsterItem[1], levelBattleConfig.eliteMonsterItem[2]);
+        //             i += 2;
+        //         }
+        //        
+        //     }
+        //     else if (monsterType == 4)
+        //     {
+        //         for (int i = 0; i < levelBattleConfig.bossItem.Length; i++)
+        //         {
+        //             itemInfo = DropEquipment( levelBattleConfig.bossItem[0], levelBattleConfig.bossItem[1], levelBattleConfig.bossItem[2]);
+        //             i += 2;
+        //         }
+        //     }
+        //
+        //     if (itemInfo != null && itemInfo.eqInfo != null)
+        //     {
+        //         equipmentList.Add(itemInfo);
+        //     }
+        //     
+        //     BagController.Instance.AddItem(equipmentList);
+        //     return equipmentList;
+        // }
 
         public List<ItemInfo> DropItem(int dropId)
         {
@@ -168,15 +168,15 @@ namespace GameLogic.Player
                 {
                     itemInfo = new ItemInfo(dropItemConfig.itemID[j], c);
                 }
-                else if (dropItemConfig.dropItemType == 4)
-                {
-                    itemInfo = PlayerManager.Instance.eqController.BuildEquipmentForItemId(dropItemConfig.itemID[0],
-                        dropItemConfig.itemID[1],
-                        dropItemConfig.itemID[2]);
-                    
-                    j += 2;
-                    // itemInfo = DropEquipment(dropItemConfig.itemID[j]);
-                }
+                // else if (dropItemConfig.dropItemType == 4)
+                // {
+                //     itemInfo = PlayerManager.Instance.eqController.BuildEquipmentForItemId(dropItemConfig.itemID[0],
+                //         dropItemConfig.itemID[1],
+                //         dropItemConfig.itemID[2]);
+                //     
+                //     j += 2;
+                //     // itemInfo = DropEquipment(dropItemConfig.itemID[j]);
+                // }
                 else
                 {
                     itemInfo = new ItemInfo(dropItemConfig);

+ 37 - 32
Assets/Scripts/GameLogic/Player/PlayerManager.cs

@@ -3,6 +3,7 @@ using System.Collections.Generic;
 using Excel2Json;
 using Fort23.UTool;
 using GameLogic.Bag;
+using GameLogic.Combat.CombatTool;
 using GameLogic.Equipment;
 using GameLogic.Hero;
 using UnityEngine;
@@ -13,24 +14,30 @@ public class PlayerManager : Singleton<PlayerManager>
     /// <summary>
     /// 英雄管理
     /// </summary>
-    public HeroController heroController = new HeroController();
-
-    public EquipmentController eqController = new EquipmentController();
+    // public HeroController heroController = new HeroController();
 
+    // public EquipmentController eqController = new EquipmentController();
     public GameConstantConfig gameConstantConfig;
-    public SkillUpConfig[] skillUpConfigs;
-    public SkillConfig[] SkillConfigs;
+    // 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 int[] useSkillId = new int[10] { 0, 10011, 0, 0, 0, 0, 0, 0, 0, 0 };
     public long coin;
     public long diamond;
     public long heroExp;
 
-    /// <summary>
-    /// 上一个强化的英雄
-    /// </summary>
-    public HeroInfo lastHeroInfo;
+    // /// <summary>
+    // /// 上一个强化的英雄
+    // /// </summary>
+    // public HeroInfo lastHeroInfo;
+
+    public void SaveUseSkill()
+    {
+        CombatHeroEntity combatHeroEntity = CombatController.currActiveCombat.CombatHeroController.playerHeroEntity;
+        combatHeroEntity.CombatHeroSkillControl.SetNewSkill(useSkillId);
+    }
 
     public void Init()
     {
@@ -42,31 +49,31 @@ public class PlayerManager : Singleton<PlayerManager>
     private void SetConfigs()
     {
         gameConstantConfig = ConfigComponent.Instance.Get<GameConstantConfig>(1);
-        skillUpConfigs = ConfigComponent.Instance.GetAll<SkillUpConfig>();
-        SkillConfigs = ConfigComponent.Instance.GetAll<SkillConfig>();
-
-        foreach (var skillConfig in SkillConfigs)
-        {
-            if (groupSkillDic.ContainsKey(skillConfig.IDGroup))
-            {
-                groupSkillDic[skillConfig.IDGroup].Add(skillConfig);
-            }
-            else
-            {
-                groupSkillDic.Add(skillConfig.IDGroup, new List<SkillConfig> { skillConfig });
-            }
-        }
+        // skillUpConfigs = ConfigComponent.Instance.GetAll<SkillUpConfig>();
+        // SkillConfigs = ConfigComponent.Instance.GetAll<SkillConfig>();
+        //
+        // foreach (var skillConfig in SkillConfigs)
+        // {
+        //     if (groupSkillDic.ContainsKey(skillConfig.IDGroup))
+        //     {
+        //         groupSkillDic[skillConfig.IDGroup].Add(skillConfig);
+        //     }
+        //     else
+        //     {
+        //         groupSkillDic.Add(skillConfig.IDGroup, new List<SkillConfig> { skillConfig });
+        //     }
+        // }
     }
 
     private void InitGameData()
     {
         InitBags();
-        heroController.InitHeroes();
-        Dictionary<string, string> gameInfo = new Dictionary<string, string>();
-        gameInfo.Add("battleLevel", AccountFileInfo.Instance.playerData.levelBattle.ToString());
-        gameInfo.Add("userlevel", heroController.mainLevel.ToString());
-        // gameInfo.Add("battleLevel",  AccountFileInfo.Instance.playerData.levelBattle.ToString());
-        PottingMobile._YouLoftGameInfo(gameInfo);
+        // heroController.InitHeroes();
+        // Dictionary<string, string> gameInfo = new Dictionary<string, string>();
+        // gameInfo.Add("battleLevel", AccountFileInfo.Instance.playerData.levelBattle.ToString());
+        // gameInfo.Add("userlevel", heroController.mainLevel.ToString());
+        // // gameInfo.Add("battleLevel",  AccountFileInfo.Instance.playerData.levelBattle.ToString());
+        // PottingMobile._YouLoftGameInfo(gameInfo);
         // InitHeroes();
     }
 
@@ -148,8 +155,6 @@ public class PlayerManager : Singleton<PlayerManager>
     /// <param name="heroInfo"></param>
     public void SaveHeroData(HeroInfo heroInfo)
     {
-        
-
         // if (!QuickSaveHeroData(heroInfo))
         // {
         //     for (int i = 0; i < AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Count; i++)

+ 21 - 0
Assets/Scripts/GameUI/UI/CombatPanel/CombatPanel.cs

@@ -26,10 +26,24 @@ namespace Fort23.Mono
         {
             CombatEventManager.Instance.AddEventListener(CombatEventType.AddRandomEvent, AddRandomEventEventData);
             CombatEventManager.Instance.AddEventListener(CombatEventType.GameStart, GameStart);
+            CombatEventManager.Instance.AddEventListener(CombatEventType.AddMagicWeaponHeroEntity,
+                AddMagicWeaponHeroEntity);
             StaticUpdater.Instance.AddLateUpdateCallBack(Update);
             CameraSelect.value = 0.7f;
         }
 
+        private async void AddMagicWeaponHeroEntity(IEventData ieveData)
+        {
+            AddMagicWeaponHeroEntityEventData eventData = ieveData as AddMagicWeaponHeroEntityEventData;
+
+            MagicWeaponWidget shengShiEventWidget =
+                await UIManager.Instance.CreateGComponentForObject<MagicWeaponWidget>(MagicWeaponWidget, null,
+                    MagicWeapon,
+                    isInstance: true);
+            shengShiEventWidget.InitWidget(eventData.CombatMagicWeaponEntity);
+            // shengShiEventWidget.InitShengShiEventWidget(configId);
+        }
+
         private async void AddRandomEventEventData(IEventData ieveData)
         {
             AddRandomEventEventData eventData = ieveData as AddRandomEventEventData;
@@ -55,6 +69,8 @@ namespace Fort23.Mono
         {
             CombatEventManager.Instance.RemoveEventListener(CombatEventType.AddRandomEvent, AddRandomEventEventData);
             CombatEventManager.Instance.RemoveEventListener(CombatEventType.GameStart, GameStart);
+            CombatEventManager.Instance.RemoveEventListener(CombatEventType.AddMagicWeaponHeroEntity,
+                AddMagicWeaponHeroEntity);
             StaticUpdater.Instance.RemoveLateUpdateCallBack(Update);
         }
 
@@ -62,6 +78,11 @@ namespace Fort23.Mono
         {
             bnt_shengShi.onClick.AddListener(Bnt_shengShi_onClick);
             CameraSelect.onValueChanged.AddListener(CameraSelect_onValueChanged);
+            AutoUse.onValueChanged.AddListener((x) =>
+            {
+                CombatController.currActiveCombat.CombatHeroController.playerHeroEntity.MagicWeaponControl.isAutoUse =
+                    x;
+            });
         }
 
 

+ 33 - 0
Assets/Scripts/GameUI/UI/CombatPanel/CombatPanelData.cs

@@ -63,6 +63,39 @@ namespace Fort23.Mono
 	      return _ShengShiEventWidget;
 	     }
 	   }
+	  private GameObject _MagicWeaponWidget;
+	  public GameObject MagicWeaponWidget
+	   {
+	   get{
+	      if (_MagicWeaponWidget == null)
+	       {
+	         _MagicWeaponWidget  = GetUIUnit<GameObject>("MagicWeaponWidget"); 
+	       }
+	      return _MagicWeaponWidget;
+	     }
+	   }
+	  private RectTransform _MagicWeapon;
+	  public RectTransform MagicWeapon
+	   {
+	   get{
+	      if (_MagicWeapon == null)
+	       {
+	         _MagicWeapon  = GetUIUnit<RectTransform>("MagicWeapon"); 
+	       }
+	      return _MagicWeapon;
+	     }
+	   }
+	  private Toggle _AutoUse;
+	  public Toggle AutoUse
+	   {
+	   get{
+	      if (_AutoUse == null)
+	       {
+	         _AutoUse  = GetUIUnit<Toggle>("AutoUse"); 
+	       }
+	      return _AutoUse;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{

+ 52 - 0
Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidget.cs

@@ -0,0 +1,52 @@
+using GameLogic.Combat.Hero;
+
+namespace Fort23.Mono
+{
+    [UIBinding(prefab = "MagicWeaponWidget")]
+    public partial class MagicWeaponWidget : UIComponent
+    {
+        private CombatMagicWeaponEntity combatMagicWeaponEntity;
+
+        private void Init()
+        {
+        }
+
+        public override void AddEvent()
+        {
+            StaticUpdater.Instance.AddLateUpdateCallBack(Update);
+        }
+
+        public override void DelEvent()
+        {
+            StaticUpdater.Instance.RemoveRenderUpdateCallBack(Update);
+        }
+
+        public override void AddButtonEvent()
+        {
+            myButton.onClick.AddListener(() =>
+            {
+                if (combatMagicWeaponEntity == null || combatMagicWeaponEntity.cd > 0)
+                {
+                    return;
+                }
+                combatMagicWeaponEntity.UseMagicWeapon();
+            });
+        }
+
+        public void InitWidget(CombatMagicWeaponEntity combatMagicWeaponEntity)
+        {
+            this.combatMagicWeaponEntity = combatMagicWeaponEntity;
+        }
+
+        private void Update()
+        {
+            if (combatMagicWeaponEntity == null)
+            {
+                return;
+            }
+
+            float d = combatMagicWeaponEntity.cd / combatMagicWeaponEntity.MaxCd;
+            cd.fillAmount = d;
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidget.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: DCsd5HmtVSq/00Tr1MJ/jCsGS9Oie95H7zysgIR6iGFCTleOTJiLUa/iTYtH
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 51 - 0
Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidgetData.cs

@@ -0,0 +1,51 @@
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine.UI;
+using UnityEngine;
+using System.Collections.Generic;
+namespace Fort23.Mono
+{
+	public partial class MagicWeaponWidget 
+	{
+	  #region 自定义数据 
+	  private MyImage _icon;
+	  public MyImage icon
+	   {
+	   get{
+	      if (_icon == null)
+	       {
+	         _icon  = GetUIUnit<MyImage>("icon"); 
+	       }
+	      return _icon;
+	     }
+	   }
+	  private MyImage _cd;
+	  public MyImage cd
+	   {
+	   get{
+	      if (_cd == null)
+	       {
+	         _cd  = GetUIUnit<MyImage>("cd"); 
+	       }
+	      return _cd;
+	     }
+	   }
+	  private Button _myButton;
+	  public Button myButton
+	   {
+	   get{
+	      if (_myButton == null)
+	       {
+	         _myButton  = GetUIUnit<Button>("myButton"); 
+	       }
+	      return _myButton;
+	     }
+	   }
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/CombatPanel/MagicWeaponWidgetData.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: XX4bvX78WnxWjAWZqNm+AbQ+FqomKZYcNhWYO2P0Nc/f2jUXEL5+IXiuMKg8
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 76 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidget.cs

@@ -0,0 +1,76 @@
+
+using Excel2Json;
+using Fort23.UTool;
+using UnityEngine;
+
+namespace Fort23.Mono
+{
+    [UIBinding(prefab = "SkillKongWidget")]
+    public partial class SkillKongWidget : UIComponent
+    {
+        public int index;
+        private SkillSelectPanel skillSelectPanel;
+
+        public int skillId;
+        protected bool _isSelect;
+
+        private void Init()
+        {
+        }
+
+        public override void AddEvent()
+        {
+        }
+
+        public override void DelEvent()
+        {
+        }
+
+        public override void AddButtonEvent()
+        {
+            myButton.onClick = delegate
+            {
+                skillSelectPanel.SelectKongSkill(this);
+            };
+            myButton.OnPressAndHold = delegate { };
+        }
+
+        public void SelectState(bool isSelect)
+        {
+            _isSelect = isSelect;
+            myBg.color = _isSelect ? Color.green : Color.white;
+        }
+
+        public override void DormancyObj()
+        {
+            base.DormancyObj();
+            Cleared();
+        }
+
+        public void Cleared()
+        {
+            this.skillId = 0;
+            icon.gameObject.SetActive(false);
+        }
+
+        public void SetSKill(int skillId)
+        {
+            if (skillId == 0)
+            {
+                return;
+            }
+
+            this.skillId = skillId;
+            icon.gameObject.SetActive(true);
+            SkillConfig skillConfig = ConfigComponent.Instance.Get<SkillConfig>(skillId);
+            icon.icon_name = skillConfig.icon;
+        }
+
+        public void InitWidget(int index, SkillSelectPanel skillSelectPanel)
+        {
+            this.skillSelectPanel = skillSelectPanel;
+            this.index = index;
+            icon.gameObject.SetActive(false);
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidget.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: CS8Z5HmvUy7yAb5FRocp/TtrwknE4jgtxeLPzxeZmjgESohalSu7om8ZjS+E
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 51 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidgetData.cs

@@ -0,0 +1,51 @@
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine.UI;
+using UnityEngine;
+using System.Collections.Generic;
+namespace Fort23.Mono
+{
+	public partial class SkillKongWidget 
+	{
+	  #region 自定义数据 
+	  private MyImage _icon;
+	  public MyImage icon
+	   {
+	   get{
+	      if (_icon == null)
+	       {
+	         _icon  = GetUIUnit<MyImage>("icon"); 
+	       }
+	      return _icon;
+	     }
+	   }
+	  private Image _myBg;
+	  public Image myBg
+	   {
+	   get{
+	      if (_myBg == null)
+	       {
+	         _myBg  = GetUIUnit<Image>("myBg"); 
+	       }
+	      return _myBg;
+	     }
+	   }
+	  private MyUIButton _myButton;
+	  public MyUIButton myButton
+	   {
+	   get{
+	      if (_myButton == null)
+	       {
+	         _myButton  = GetUIUnit<MyUIButton>("myButton"); 
+	       }
+	      return _myButton;
+	     }
+	   }
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillKongWidgetData.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: DShMt3z8U3Jtmh3RMhCj37XRhzFdAfwwEOT2l07nBMikZ12my9NW0pvtbGUC
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 104 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillSelectPanel.cs

@@ -1,8 +1,23 @@
+using System;
+using System.Collections.Generic;
+using Fort23.Core;
+using UnityEngine;
+
 namespace Fort23.Mono
 {
     [UIBinding(prefab = "SkillSelectPanel")]
     public partial class SkillSelectPanel : UIPanel
     {
+        private bool _isSelectSkill;
+        private List<SkillKongWidget> allKongSkill = new List<SkillKongWidget>();
+        private int selectSkillConfig;
+        private bool isAlter;
+
+        public static async CTask OpenSkillSelectPanel()
+        {
+            await UIManager.Instance.LoadAndOpenPanel<SkillSelectPanel>(null, UILayer.Middle);
+        }
+
         private void Init()
         {
         }
@@ -17,6 +32,95 @@ namespace Fort23.Mono
 
         public override void AddButtonEvent()
         {
+            guanbi.onClick.AddListener(() => { UIManager.Instance.HideUIUIPanel(this); });
+        }
+
+        public override async CTask Open()
+        {
+            await base.Open();
+            allKongSkill.Clear();
+            UIManager.Instance.DormancyAllGComponent<SkillKongWidget>();
+            UIManager.Instance.DormancyAllGComponent<SkillWidget>();
+            int[] allSkill = new[] { 10011, 20011, 11011, 12011, 13011, 5010011, 5011011, 5012011, 5013011, 5014011 };
+            for (int i = 0; i < allSkill.Length; i++)
+            {
+                int id = allSkill[i];
+                SkillWidget skillWidget = await UIManager.Instance.CreateGComponentForObject<SkillWidget>(SkillWidget,
+                    null, SkillWidgetRoot,
+                    isInstance: true);
+                skillWidget.InitSkillWidget(id, this);
+            }
+
+
+            Vector2 dir = new Vector2(0, 1);
+            for (int i = 0; i < 10; i++)
+            {
+                int index = i;
+                double hd = (36 * i) * Math.PI / 180f;
+                double a = Math.Cos(hd);
+                double b = -Math.Sin(hd);
+                double c = Math.Sin(hd);
+                double d = a;
+                double x = a * 0 + b * 114;
+                double y = c * 0 + d * 114;
+                Vector2 pos = new Vector2((float)x, (float)y);
+                SkillKongWidget skillKongWidget = await UIManager.Instance.CreateGComponentForObject<SkillKongWidget>(
+                    kongdongs.gameObject,
+                    null, SkillKongWeiRoot,
+                    isInstance: true);
+                skillKongWidget.InitWidget(index, this);
+                skillKongWidget.SetSKill(PlayerManager.Instance.useSkillId[index]);
+                skillKongWidget.transform.anchoredPosition = pos;
+                allKongSkill.Add(skillKongWidget);
+            }
+        }
+
+
+        public void SelectSkill(int skillConfig)
+        {
+            selectSkillConfig = skillConfig;
+            _isSelectSkill = true;
+            for (int i = 0; i < allKongSkill.Count; i++)
+            {
+                allKongSkill[i].SelectState(true);
+            }
+        }
+
+        private void CloseSelect()
+        {
+            _isSelectSkill = false;
+            selectSkillConfig = 0;
+            for (int i = 0; i < allKongSkill.Count; i++)
+            {
+                allKongSkill[i].SelectState(false);
+            }
+        }
+
+        public void SelectKongSkill(SkillKongWidget skillKongWidget)
+        {
+            isAlter = true;
+            if (!_isSelectSkill || selectSkillConfig == 0)
+            {
+                PlayerManager.Instance.useSkillId[skillKongWidget.index] = 0;
+                skillKongWidget.Cleared();
+                return;
+            }
+
+        
+            skillKongWidget.SetSKill(selectSkillConfig);
+            PlayerManager.Instance.useSkillId[skillKongWidget.index] = selectSkillConfig;
+            CloseSelect();
+        }
+
+        public override void Hide()
+        {
+            base.Hide();
+            if (isAlter)
+            {
+                PlayerManager.Instance.SaveUseSkill();
+            }
+
+            isAlter = false;
         }
     }
 }

+ 73 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillSelectPanelData.cs

@@ -0,0 +1,73 @@
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine.UI;
+using UnityEngine;
+using System.Collections.Generic;
+namespace Fort23.Mono
+{
+	public partial class SkillSelectPanel 
+	{
+	  #region 自定义数据 
+	  private RectTransform _kongdongs;
+	  public RectTransform kongdongs
+	   {
+	   get{
+	      if (_kongdongs == null)
+	       {
+	         _kongdongs  = GetUIUnit<RectTransform>("kongdongs"); 
+	       }
+	      return _kongdongs;
+	     }
+	   }
+	  private RectTransform _SkillWidgetRoot;
+	  public RectTransform SkillWidgetRoot
+	   {
+	   get{
+	      if (_SkillWidgetRoot == null)
+	       {
+	         _SkillWidgetRoot  = GetUIUnit<RectTransform>("SkillWidgetRoot"); 
+	       }
+	      return _SkillWidgetRoot;
+	     }
+	   }
+	  private GameObject _SkillWidget;
+	  public GameObject SkillWidget
+	   {
+	   get{
+	      if (_SkillWidget == null)
+	       {
+	         _SkillWidget  = GetUIUnit<GameObject>("SkillWidget"); 
+	       }
+	      return _SkillWidget;
+	     }
+	   }
+	  private RectTransform _SkillKongWeiRoot;
+	  public RectTransform SkillKongWeiRoot
+	   {
+	   get{
+	      if (_SkillKongWeiRoot == null)
+	       {
+	         _SkillKongWeiRoot  = GetUIUnit<RectTransform>("SkillKongWeiRoot"); 
+	       }
+	      return _SkillKongWeiRoot;
+	     }
+	   }
+	  private Button _guanbi;
+	  public Button guanbi
+	   {
+	   get{
+	      if (_guanbi == null)
+	       {
+	         _guanbi  = GetUIUnit<Button>("guanbi"); 
+	       }
+	      return _guanbi;
+	     }
+	   }
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillSelectPanelData.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: D3oWtC2uAXn9AbyVvMmkdPKn5iJe82Uc050UE4HuNq1KS3h/dV4BJ1QFcOjW
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 41 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillWidget.cs

@@ -0,0 +1,41 @@
+using Excel2Json;
+using Fort23.UTool;
+
+namespace Fort23.Mono
+{
+    [UIBinding(prefab = "SkillWidget")]
+    public partial class SkillWidget : UIComponent
+    {
+        private int skillConfigId;
+        private SkillSelectPanel skillSelectPanel;
+        private void Init()
+        {
+        }
+
+        public override void AddEvent()
+        {
+        }
+
+        public override void DelEvent()
+        {
+        }
+
+        public override void AddButtonEvent()
+        {
+            myButton.onClick=delegate {
+                skillSelectPanel.SelectSkill(skillConfigId);
+            };
+            myButton.OnPressAndHold=delegate {
+                
+            };
+        }
+
+        public void InitSkillWidget(int skillId,SkillSelectPanel skillSelectPanel)
+        {
+            this.skillSelectPanel = skillSelectPanel;
+            skillConfigId=skillId;
+            SkillConfig skillConfig=  ConfigComponent.Instance.Get<SkillConfig>(skillId);
+            icon.icon_name= skillConfig.icon;
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillWidget.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: XSlM5y2oASnPnn+CeOlpI4c8ZkagHVoYtyWFoCi/pHy7lMkMfdidB8Wkd6AK
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 40 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillWidgetData.cs

@@ -0,0 +1,40 @@
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine.UI;
+using UnityEngine;
+using System.Collections.Generic;
+namespace Fort23.Mono
+{
+	public partial class SkillWidget 
+	{
+	  #region 自定义数据 
+	  private MyUIButton _myButton;
+	  public MyUIButton myButton
+	   {
+	   get{
+	      if (_myButton == null)
+	       {
+	         _myButton  = GetUIUnit<MyUIButton>("myButton"); 
+	       }
+	      return _myButton;
+	     }
+	   }
+	  private MyImage _icon;
+	  public MyImage icon
+	   {
+	   get{
+	      if (_icon == null)
+	       {
+	         _icon  = GetUIUnit<MyImage>("icon"); 
+	       }
+	      return _icon;
+	     }
+	   }
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/CombatPanel/SkillWidgetData.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: Bi4e5yP8Vn4nIVpayQAirZqayJLYlYOUfIGS/AQq++uSUZ/Sc3rnNBEbaMzb
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 7 - 1
Assets/Scripts/GameUI/UI/CombatPanel/ZhuanPanPanel.cs

@@ -41,6 +41,10 @@ namespace Fort23.Mono
 
         public override void AddButtonEvent()
         {
+            lanLiang_button.onClick.AddListener(() =>
+            {
+                SkillSelectPanel.OpenSkillSelectPanel();
+            });
         }
 
         private void AddUseGongFa(IEventData iEventData)
@@ -67,6 +71,8 @@ namespace Fort23.Mono
 
         private async void ExercisesAlter(IEventData iEventData)
         {
+            _gfWidgets.Clear();
+            UIManager.Instance.DormancyAllGComponent<gf_widget>();
             CombatHeroSkillControl combatHeroSkillControl = CombatController.currActiveCombat.CombatHeroController
                 .playerHeroEntity.CombatHeroSkillControl
                 .This<CombatHeroSkillControl>();
@@ -74,7 +80,7 @@ namespace Fort23.Mono
             {
                 SkillBasic skillBasic = combatHeroSkillControl._skillQueue[i];
                 gf_widget gfWidget = await UIManager.Instance.CreateGComponentForObject<gf_widget>(this.gf_widget, null,
-                    Gf_root, isInstance: true, poolName: "gf_widget");
+                    Gf_root, isInstance: true);
                 gfWidget.SkillBasic = skillBasic;
                 gfWidget.InitWidget(skillBasic);
                 _gfWidgets.Add(gfWidget);

+ 11 - 1
Assets/Scripts/GameUI/UI/CombatPanel/ZhuanPanPanelData.cs

@@ -33,7 +33,6 @@ namespace Fort23.Mono
 	     }
 	   }
 	  private UITweenController _jin;
-	  
 	  public UITweenController jin
 	   {
 	   get{
@@ -154,6 +153,17 @@ namespace Fort23.Mono
 	      return _tu_shangshi;
 	     }
 	   }
+	  private Button _lanLiang_button;
+	  public Button lanLiang_button
+	   {
+	   get{
+	      if (_lanLiang_button == null)
+	       {
+	         _lanLiang_button  = GetUIUnit<Button>("lanLiang_button"); 
+	       }
+	      return _lanLiang_button;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
Assets/StreamingAssets/assetConfig.txt


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 201 - 2714
UserSettings/Layouts/default-2022.dwlt


+ 1 - 0
XiuXianGame.sln.DotSettings.user

@@ -6,6 +6,7 @@
 	<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AObject_002Ecs_002Fl_003AC_0021_003FUsers_003FAdministrator_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F5c4a01f363eb46748231fc41bd9bdd8517e000_003F78_003F5e834fc5_003FObject_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
 	<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AQuaternion_002Ecs_002Fl_003AC_0021_003FUsers_003Fck_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E2_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F2008d2d6093f4149aaeafd5f414aa7a517c400_003Fe8_003F196a10dc_003FQuaternion_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
 	<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ARandom_002Ecs_002Fl_003AC_0021_003FUsers_003FAdministrator_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fb18a8b3398e74bca86895881dd02956c573648_003F4c_003Fb5eddf34_003FRandom_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
+	<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ASingle_002Ecs_002Fl_003AC_0021_003FUsers_003Fck_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E2_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fb18a8b3398e74bca86895881dd02956c573648_003F16_003F2be7d3ed_003FSingle_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
 	<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AThrowHelper_002Ecs_002Fl_003AC_0021_003FUsers_003Fck_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E2_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fe4df6db7850b4c40b72002ff5da8188846ac00_003F3b_003F1a234af4_003FThrowHelper_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
 	<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ATrailRenderer_002Ecs_002Fl_003AC_0021_003FUsers_003Fck_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E2_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F5c4a01f363eb46748231fc41bd9bdd8517e000_003Fe4_003F6073d988_003FTrailRenderer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
 	<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ATransform_002Ecs_002Fl_003AC_0021_003FUsers_003FAdministrator_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F5c4a01f363eb46748231fc41bd9bdd8517e000_003F66_003F966ef437_003FTransform_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio