瀏覽代碼

道友修改

lzx 1 天之前
父節點
當前提交
011f200cdf
共有 28 個文件被更改,包括 1991 次插入217 次删除
  1. 191 0
      Assets/Res/UI/DaoYouPanel/DaoLvSkillWidget.prefab
  2. 7 0
      Assets/Res/UI/DaoYouPanel/DaoLvSkillWidget.prefab.meta
  3. 456 1
      Assets/Res/UI/DaoYouPanel/DaoYouInfoPanel.prefab
  4. 8 3
      Assets/Res/UI/DaoYouPanel/DaoYouWidget.prefab
  5. 196 1
      Assets/Res/UI/DaoYouPanel/DaoYouaaFfixWidget.prefab
  6. 41 1
      Assets/Res/UI/HeroInformainPanel/ImmortalBondPanel.prefab
  7. 11 0
      Assets/Scripts/GameData/ExcelConfig/emotionConfig.cs.meta
  8. 47 3
      Assets/Scripts/GameLogic/Hero/HeroInfo.cs
  9. 10 0
      Assets/Scripts/GameLogic/Player/AccountFileInfo.cs
  10. 26 0
      Assets/Scripts/GameLogic/Player/PlayerManager.cs
  11. 3 0
      Assets/Scripts/GameUI/EventManager/DialogueManager.cs
  12. 56 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidget.cs
  13. 11 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidget.cs.meta
  14. 29 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidgetData.cs
  15. 11 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidgetData.cs.meta
  16. 56 2
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouInfoPanel.cs
  17. 33 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouInfoPanelData.cs
  18. 13 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouWidget.cs
  19. 11 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouWidgetData.cs
  20. 35 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidget.cs
  21. 11 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidget.cs.meta
  22. 40 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidgetData.cs
  23. 11 0
      Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidgetData.cs.meta
  24. 9 1
      Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroInformationPanel.cs
  25. 116 4
      Assets/Scripts/GameUI/UI/HeroInformationPanel/ImmortalBondPanel.cs
  26. 0 0
      Assets/StreamingAssets/assetConfig.txt
  27. 二進制
      Excel2Json/Excel/DaoyouConfig.xlsx
  28. 553 201
      UserSettings/Layouts/default-2022.dwlt

+ 191 - 0
Assets/Res/UI/DaoYouPanel/DaoLvSkillWidget.prefab

@@ -0,0 +1,191 @@
+%YAML 1.1
+%TAG !u! tag:yousandi.cn,2023:
+--- !u!1 &3054950519963356202
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 8036854340509240906}
+  - component: {fileID: 7869838569737806745}
+  - component: {fileID: 7982240772326421710}
+  - component: {fileID: 6374737024246323474}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: DaoLvSkillWidget
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &8036854340509240906
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3054950519963356202}
+  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: 3842451843961448138}
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 68.29999, y: 53.716675}
+  m_SizeDelta: {x: 156.4461, y: 49.7815}
+  m_Pivot: {x: 0, y: 0}
+--- !u!222 &7869838569737806745
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3054950519963356202}
+  m_CullTransparentMesh: 1
+--- !u!114 &7982240772326421710
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3054950519963356202}
+  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.8980393, g: 0.86274517, b: 0.7803922, 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: 
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 0}
+  packInfo:
+    packName: 
+    packgJsonPath: 
+    packgSpritePath: 
+    lasetJsonGUID: 
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!114 &6374737024246323474
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3054950519963356202}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4810a0857c909354fa00c3aafdeac753, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data:
+  - key: Text_Name
+    gameObject: {fileID: 3374884498737619846}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  isAssetBundle: 1
+--- !u!1 &7287078772942502701
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 3842451843961448138}
+  - component: {fileID: 830836338151563331}
+  - component: {fileID: 3374884498737619846}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Text_Name
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &3842451843961448138
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7287078772942502701}
+  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: 8036854340509240906}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &830836338151563331
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7287078772942502701}
+  m_CullTransparentMesh: 1
+--- !u!114 &3374884498737619846
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7287078772942502701}
+  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: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
+    m_FontSize: 20
+    m_FontStyle: 1
+    m_BestFit: 0
+    m_MinSize: 10
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u73A9\u5BB6\u751F\u547D+{0}%(+20%)"

+ 7 - 0
Assets/Res/UI/DaoYouPanel/DaoLvSkillWidget.prefab.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: B3IZs3v5VnhG5rfna5390ILATQgh6nB3B0vmuSrOXY6/t6QLk1huvu8knQG9
+PrefabImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 456 - 1
Assets/Res/UI/DaoYouPanel/DaoYouInfoPanel.prefab

@@ -1010,6 +1010,122 @@ MonoBehaviour:
     m_VerticalOverflow: 0
     m_LineSpacing: 1
   m_Text: "\u7384\u7389"
+--- !u!1 &969770706250192743
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 4560208317817494006}
+  - component: {fileID: 8219955351092879517}
+  - component: {fileID: 4945709730114540800}
+  - component: {fileID: 2485191496078184997}
+  - component: {fileID: 8357003429036196541}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: Text_message
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &4560208317817494006
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 969770706250192743}
+  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: 9121436571226514222}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 1}
+  m_AnchorMax: {x: 0, y: 1}
+  m_AnchoredPosition: {x: 129, y: -70}
+  m_SizeDelta: {x: 230, y: 50}
+  m_Pivot: {x: 0.5, y: 0}
+--- !u!222 &8219955351092879517
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 969770706250192743}
+  m_CullTransparentMesh: 1
+--- !u!114 &4945709730114540800
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 969770706250192743}
+  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: 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_FontData:
+    m_Font: {fileID: 12800000, guid: bb5b55cc5861a4951990bcc1caccc50e, type: 3}
+    m_FontSize: 22
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 1
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 1
+    m_LineSpacing: 1
+  m_Text: "\u5FC3\u60C5\u5F88\u597D\uFF0C\u9001\u4ED6\u793C\u7269\u53EF\u83B7\u5F97\u66F4\u591A\u597D\u611F\u5EA6"
+--- !u!114 &2485191496078184997
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 969770706250192743}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_HorizontalFit: 0
+  m_VerticalFit: 2
+--- !u!114 &8357003429036196541
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 969770706250192743}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreLayout: 0
+  m_MinWidth: -1
+  m_MinHeight: -1
+  m_PreferredWidth: 230
+  m_PreferredHeight: -1
+  m_FlexibleWidth: -1
+  m_FlexibleHeight: -1
+  m_LayoutPriority: 1
 --- !u!1 &1345709599746255313
 GameObject:
   m_ObjectHideFlags: 0
@@ -3104,9 +3220,10 @@ GameObject:
   - component: {fileID: 3191291446307660072}
   - component: {fileID: 701284727440214038}
   - component: {fileID: 1740163407950700331}
+  - component: {fileID: 7885634955855565568}
   m_Layer: 0
   m_HasEditorInfo: 1
-  m_Name: myImage
+  m_Name: Btn_Emotion
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -3181,6 +3298,50 @@ MonoBehaviour:
   topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
   bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
   direction: 0
+--- !u!114 &7885634955855565568
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3641049731285540800}
+  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: 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: 1740163407950700331}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
 --- !u!1 &3658090733194261787
 GameObject:
   m_ObjectHideFlags: 0
@@ -3619,6 +3780,7 @@ RectTransform:
   - {fileID: 1947956645310402617}
   - {fileID: 3191291446307660072}
   - {fileID: 5052515334330413285}
+  - {fileID: 6015065027993439653}
   m_Father: {fileID: 9037135992368401232}
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
@@ -4741,6 +4903,115 @@ RectTransform:
   m_AnchoredPosition: {x: 3.649994, y: 0}
   m_SizeDelta: {x: -7.3, y: 0}
   m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &4911805686391507111
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 7680586247297127725}
+  - component: {fileID: 951175187380648186}
+  - component: {fileID: 5140255132133073716}
+  - component: {fileID: 7100364969677446673}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: dec_arrow
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &7680586247297127725
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4911805686391507111}
+  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: 6015065027993439653}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0}
+  m_AnchorMax: {x: 0.5, y: 0}
+  m_AnchoredPosition: {x: -0.016830444, y: -0.00048828125}
+  m_SizeDelta: {x: 38, y: 28}
+  m_Pivot: {x: 0.5, y: 0}
+--- !u!222 &951175187380648186
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4911805686391507111}
+  m_CullTransparentMesh: 1
+--- !u!114 &5140255132133073716
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4911805686391507111}
+  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: dec_Arrow_Down
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: 23f1ff3af41427347a63b9cc35608247, type: 3}
+  packInfo:
+    packName: all
+    packgJsonPath: /Art/UIAssets/TextrueJson/all.txt
+    packgSpritePath: Assets/Res/UIAtlas/all.spriteatlasv2
+    lasetJsonGUID: 9ac47f5fba5fc4d9c019e3c208c4513e
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!114 &7100364969677446673
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4911805686391507111}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreLayout: 1
+  m_MinWidth: -1
+  m_MinHeight: -1
+  m_PreferredWidth: -1
+  m_PreferredHeight: -1
+  m_FlexibleWidth: -1
+  m_FlexibleHeight: -1
+  m_LayoutPriority: 1
 --- !u!1 &5099322193779763339
 GameObject:
   m_ObjectHideFlags: 0
@@ -4901,6 +5172,44 @@ MonoBehaviour:
     m_VerticalOverflow: 0
     m_LineSpacing: 1
   m_Text: 1
+--- !u!1 &5432237188488368165
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 6015065027993439653}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: dotPoint
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &6015065027993439653
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5432237188488368165}
+  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: 7680586247297127725}
+  - {fileID: 9121436571226514222}
+  m_Father: {fileID: 5372183047762724418}
+  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: -103.3, y: -172.9}
+  m_SizeDelta: {x: 272.8918, y: 76.393}
+  m_Pivot: {x: 0.5, y: 0.5}
 --- !u!1 &5475174839614059240
 GameObject:
   m_ObjectHideFlags: 0
@@ -7150,6 +7459,137 @@ MonoBehaviour:
   topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
   bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
   direction: 0
+--- !u!1 &8658862277210987375
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 9121436571226514222}
+  - component: {fileID: 5052373889030611783}
+  - component: {fileID: 4626524454384784257}
+  - component: {fileID: 3742390284059820995}
+  - component: {fileID: 4731241785780937657}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: bg_icon
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &9121436571226514222
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8658862277210987375}
+  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: 4560208317817494006}
+  m_Father: {fileID: 6015065027993439653}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 1}
+  m_AnchorMax: {x: 0.5, y: 1}
+  m_AnchoredPosition: {x: 0.000015258789, y: 0}
+  m_SizeDelta: {x: 265.63, y: 84}
+  m_Pivot: {x: 0.5, y: 1}
+--- !u!222 &5052373889030611783
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8658862277210987375}
+  m_CullTransparentMesh: 1
+--- !u!114 &4626524454384784257
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8658862277210987375}
+  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: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: dec_duihua_04
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: af8b6f708ee6b254b9e6976ea8852a55, type: 3}
+  packInfo:
+    packName: event
+    packgJsonPath: /Art/UIAssets/TextrueJson\event.txt
+    packgSpritePath: Assets/Res/UIAtlas/event.spriteatlasv2
+    lasetJsonGUID: df80f818a4f258d33b8038600af6f215
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!114 &3742390284059820995
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8658862277210987375}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_HorizontalFit: 0
+  m_VerticalFit: 2
+--- !u!114 &4731241785780937657
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8658862277210987375}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Padding:
+    m_Left: 14
+    m_Right: 14
+    m_Top: 20
+    m_Bottom: 14
+  m_ChildAlignment: 0
+  m_Spacing: 0
+  m_ChildForceExpandWidth: 1
+  m_ChildForceExpandHeight: 1
+  m_ChildControlWidth: 0
+  m_ChildControlHeight: 0
+  m_ChildScaleWidth: 0
+  m_ChildScaleHeight: 0
+  m_ReverseArrangement: 0
 --- !u!1 &8669165658553886847
 GameObject:
   m_ObjectHideFlags: 0
@@ -7434,4 +7874,19 @@ MonoBehaviour:
     isAssetBundle: 0
     isList: 0
     ListCollectorDatas: []
+  - key: Text_message
+    gameObject: {fileID: 4945709730114540800}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Btn_Emotion
+    gameObject: {fileID: 7885634955855565568}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: dotPoint
+    gameObject: {fileID: 5432237188488368165}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
   isAssetBundle: 0

+ 8 - 3
Assets/Res/UI/DaoYouPanel/DaoYouWidget.prefab

@@ -276,6 +276,11 @@ MonoBehaviour:
     isAssetBundle: 0
     isList: 0
     ListCollectorDatas: []
+  - key: Icon_Emotion
+    gameObject: {fileID: 1482432661415294061}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
   isAssetBundle: 1
 --- !u!1 &4195260018294081106
 GameObject:
@@ -370,12 +375,12 @@ GameObject:
   - component: {fileID: 1482432661415294061}
   m_Layer: 0
   m_HasEditorInfo: 1
-  m_Name: Icon_Daoyou (1)
+  m_Name: Icon_Emotion
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 1
+  m_IsActive: 0
 --- !u!224 &9093301904999720884
 RectTransform:
   m_ObjectHideFlags: 0
@@ -434,7 +439,7 @@ MonoBehaviour:
   m_UseSpriteMesh: 0
   m_PixelsPerUnitMultiplier: 1
   _icon_name: btn_24
-  isNotLoadDeftIcon: 1
+  isNotLoadDeftIcon: 0
   CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
   packInfo:
     packName: tongyong

+ 196 - 1
Assets/Res/UI/DaoYouPanel/DaoYouaaFfixWidget.prefab

@@ -1,5 +1,94 @@
 %YAML 1.1
 %TAG !u! tag:yousandi.cn,2023:
+--- !u!1 &2006152637895404028
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 8324606934617864038}
+  - component: {fileID: 7032916734997450052}
+  - component: {fileID: 7539449011376817947}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Icon_Weiyi
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &8324606934617864038
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2006152637895404028}
+  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: 1827195075350715290}
+  m_Father: {fileID: 8036854340509240906}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 1, y: 1}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 34.0654, y: 17.2402}
+  m_Pivot: {x: 1, y: 1}
+--- !u!222 &7032916734997450052
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2006152637895404028}
+  m_CullTransparentMesh: 1
+--- !u!114 &7539449011376817947
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2006152637895404028}
+  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.8000001, g: 0.8000001, b: 0.8000001, 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: 
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 0}
+  packInfo:
+    packName: 
+    packgJsonPath: 
+    packgSpritePath: 
+    lasetJsonGUID: 
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
 --- !u!1 &3054950519963356202
 GameObject:
   m_ObjectHideFlags: 0
@@ -11,6 +100,7 @@ GameObject:
   - component: {fileID: 8036854340509240906}
   - component: {fileID: 7869838569737806745}
   - component: {fileID: 7982240772326421710}
+  - component: {fileID: 6374737024246323474}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: DaoYouaaFfixWidget
@@ -33,6 +123,7 @@ RectTransform:
   m_Children:
   - {fileID: 3842451843961448138}
   - {fileID: 921936592623468442}
+  - {fileID: 8324606934617864038}
   m_Father: {fileID: 0}
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
@@ -90,6 +181,30 @@ MonoBehaviour:
   topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
   bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
   direction: 0
+--- !u!114 &6374737024246323474
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3054950519963356202}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4810a0857c909354fa00c3aafdeac753, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data:
+  - key: Text_Name
+    gameObject: {fileID: 3374884498737619846}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Icon_Weiyi
+    gameObject: {fileID: 7539449011376817947}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  isAssetBundle: 1
 --- !u!1 &5638203944769267356
 GameObject:
   m_ObjectHideFlags: 0
@@ -178,6 +293,86 @@ MonoBehaviour:
   topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
   bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
   direction: 0
+--- !u!1 &6885714226077270068
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 1827195075350715290}
+  - component: {fileID: 5907946535677470009}
+  - component: {fileID: 6201743716698413022}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Text (Legacy)
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1827195075350715290
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6885714226077270068}
+  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: 8324606934617864038}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: -0.000019073486, y: -0.0000076293945}
+  m_SizeDelta: {x: -0.00005722, y: -0.000019073}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &5907946535677470009
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6885714226077270068}
+  m_CullTransparentMesh: 1
+--- !u!114 &6201743716698413022
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6885714226077270068}
+  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, g: 0, b: 0, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
+    m_FontSize: 15
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 0
+    m_MaxSize: 254
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u552F\u4E00"
 --- !u!1 &7287078772942502701
 GameObject:
   m_ObjectHideFlags: 0
@@ -191,7 +386,7 @@ GameObject:
   - component: {fileID: 3374884498737619846}
   m_Layer: 0
   m_HasEditorInfo: 1
-  m_Name: Text (Legacy) (3)
+  m_Name: Text_Name
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0

+ 41 - 1
Assets/Res/UI/HeroInformainPanel/ImmortalBondPanel.prefab

@@ -326,6 +326,8 @@ GameObject:
   serializedVersion: 7
   m_Component:
   - component: {fileID: 3230630177281992838}
+  - component: {fileID: 5231537055786168271}
+  - component: {fileID: 6132917718355824375}
   m_Layer: 5
   m_HasEditorInfo: 1
   m_Name: JiachengContent
@@ -351,8 +353,46 @@ RectTransform:
   m_AnchorMin: {x: 0, y: 1}
   m_AnchorMax: {x: 1, y: 1}
   m_AnchoredPosition: {x: 0, y: 0}
-  m_SizeDelta: {x: 0, y: 300}
+  m_SizeDelta: {x: 0, y: 0}
   m_Pivot: {x: 0, y: 1}
+--- !u!114 &5231537055786168271
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2944761824636411112}
+  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: 156.4461, y: 47}
+  m_Spacing: {x: 10, y: 10}
+  m_Constraint: 1
+  m_ConstraintCount: 3
+--- !u!114 &6132917718355824375
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2944761824636411112}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_HorizontalFit: 2
+  m_VerticalFit: 2
 --- !u!1 &3066255450812507737
 GameObject:
   m_ObjectHideFlags: 0

+ 11 - 0
Assets/Scripts/GameData/ExcelConfig/emotionConfig.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: DHpN5yr+W3xOgDZLII/PzgfT/RuPnrbi8HoH4f37w9DiLtF/i6Zt4m5WrMvw
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 47 - 3
Assets/Scripts/GameLogic/Hero/HeroInfo.cs

@@ -15,7 +15,9 @@ namespace GameLogic.Hero
         private string _iconZhiYe;
 
         private Map<HeroAttributeType, float> attributeBlValue = new Map<HeroAttributeType, float>();
-        
+
+        public Map<int, float> daolvBlMap = new Map<int, float>();
+
         // public List<int> ImmortalBond = new List<int>();
 
 
@@ -52,16 +54,50 @@ namespace GameLogic.Hero
             heroData.heroPowerId++;
             InitHero(heroData);
             PlayerManager.Instance.SaveHeroData(this);
-            EventManager.Instance.Dispatch(CustomEventType.JingJieUpgrade,null);
+            EventManager.Instance.Dispatch(CustomEventType.JingJieUpgrade, null);
             return this;
         }
 
+        public void GetDaoLvBl()
+        {
+            daolvBlMap.Clear();
+            foreach (var i in heroData?.ImmortalBond)
+            {
+                DaoyouModelConfig daoyouModelConfig = ConfigComponent.Instance.Get<DaoyouModelConfig>(i);
+                foreach (var i1 in daoyouModelConfig.daolvSkillID)
+                {
+                    daolvSkill daolvSkill = ConfigComponent.Instance.Get<daolvSkill>(i1);
+                    //唯一只加一次
+                    if (daolvSkill.type == 1)
+                    {
+                        if (!daolvBlMap.ContainsKey(i1))
+                        {
+                            daolvBlMap.Add(i1, daolvSkill.para[0]);
+                        }
+                    }
+                    else
+                    {
+                        if (!daolvBlMap.ContainsKey(i1))
+                        {
+                            daolvBlMap.Add(i1, daolvSkill.para[0]);
+                        }
+                        else
+                        {
+                            daolvBlMap[i1] += daolvSkill.para[0];
+                        }
+                    }
+                }
+            }
+        }
+
 
         public void ComputeHeroInfo()
         {
             attributeBlValue.Clear();
             CalAttribute();
-         
+
+            GetDaoLvBl();
+
 
             if (!PlayerManager.Instance.isTest)
             {
@@ -78,6 +114,7 @@ namespace GameLogic.Hero
                         }
                     }
                 }
+
                 ///功法加被动属性
                 List<SkillInfo> allSkill = PlayerManager.Instance.GongFaControl.allSkill;
                 for (int j = 0; j < allSkill.Count; j++)
@@ -114,6 +151,13 @@ namespace GameLogic.Hero
                 }
             }
 
+            //道侣带来的属性加成
+            foreach (var keyValuePair in daolvBlMap)
+            {
+                daolvSkill daolvSkill = ConfigComponent.Instance.Get<daolvSkill>(keyValuePair.Key);
+                ComputeHeroAttributeType(daolvSkill.AttrID, keyValuePair.Value);
+            }
+
             if (CombatController.currActiveCombat != null && CombatController.currActiveCombat.playerHeroEntity != null)
             {
                 CombatController.currActiveCombat.playerHeroEntity.CurrCombatHeroInfo = this.Copy();

+ 10 - 0
Assets/Scripts/GameLogic/Player/AccountFileInfo.cs

@@ -131,6 +131,16 @@ public class AccountFileInfo : Singleton<AccountFileInfo>
         /// 已经领取奖励的好感等级
         /// </summary>
         public List<int> awardLevels = new List<int>();
+
+        /// <summary>
+        /// 心情
+        /// </summary>
+        public int emotion;
+
+        /// <summary>
+        /// 心情刷新时间
+        /// </summary>
+        public long emotionTime;
     }
 
     //地图区域数据

+ 26 - 0
Assets/Scripts/GameLogic/Player/PlayerManager.cs

@@ -22,6 +22,8 @@ public class PlayerManager : Singleton<PlayerManager>
     public FaBaoControl FaBaoControl;
     public BagController BagController;
 
+    public List<AccountFileInfo.DaoYouData> GuaijiDaoYou = new List<AccountFileInfo.DaoYouData>();
+
     public bool isTest;
 
     /// <summary>
@@ -40,6 +42,7 @@ public class PlayerManager : Singleton<PlayerManager>
 
     public float PlacesBl => GetMapBl(CurrentPlaces.id);
 
+    private TimerEntity _timerEntity;
 
     public void Init()
     {
@@ -47,6 +50,28 @@ public class PlayerManager : Singleton<PlayerManager>
         SetConfigs();
 
         InitGameData();
+
+        int m = Random.Range(0, 4 * 60 * 1000);
+        RandownDaoYou(m);
+    }
+
+    public void RandownDaoYou(int m)
+    {
+        _timerEntity?.Dispose();
+        _timerEntity = null;
+        _timerEntity = TimerComponent.Instance.AddTimer(m, () =>
+        {
+            int count = Random.Range(0, AccountFileInfo.Instance.playerData.daoYouDatas.Count);
+            List<AccountFileInfo.DaoYouData> daoYouDatas = AccountFileInfo.Instance.playerData.daoYouDatas.ToList();
+            for (int i = 0; i < count; i++)
+            {
+                int index = Random.Range(0, daoYouDatas.Count);
+                GuaijiDaoYou.Add(daoYouDatas[index]);
+                daoYouDatas.RemoveAt(index);
+                _timerEntity?.Dispose();
+                _timerEntity = null;
+            }
+        });
     }
 
     private void SetConfigs()
@@ -99,6 +124,7 @@ public class PlayerManager : Singleton<PlayerManager>
         {
             return 0;
         }
+
         return ((float)placesData.progress / placesConfig.TotalScore) * 100;
         // AccountFileInfo.Instance.playerData.completeEvents.Where(ce =>placesConfig.MainTaskID.Contains(ce.eventID) || placesConfig.ZhixianID.Contains(ce.eventID) || placesConfig.ZhixianID.Contains(ce.1001
         // ))

+ 3 - 0
Assets/Scripts/GameUI/EventManager/DialogueManager.cs

@@ -13,6 +13,7 @@ using GameLogic.Combat.CombatTool;
 using GameLogic.Player;
 using UnityEngine;
 using Utility;
+using Random = UnityEngine.Random;
 
 public class DialogueManager : Singleton<DialogueManager>
 {
@@ -84,6 +85,8 @@ public class DialogueManager : Singleton<DialogueManager>
                     AccountFileInfo.DaoYouData daoYouData = new AccountFileInfo.DaoYouData();
                     daoYouData.id =eventNpc.DaoyouID;
                     daoYouData.favorabilityLv = 1;
+                    daoYouData.emotion = Random.Range(1, 4);
+                    daoYouData.emotionTime = TimeHelper.ClientNow();
                     AccountFileInfo.Instance.playerData.daoYouDatas.Add(daoYouData);
                     AccountFileInfo.Instance.SavePlayerData();
                 }

+ 56 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidget.cs

@@ -0,0 +1,56 @@
+using Core.Language;
+using Excel2Json;
+using Fort23.UTool;
+using Utility;
+
+namespace Fort23.Mono
+{
+    [UIBinding(prefab = "DaoLvSkillWidget")]
+    public partial class DaoLvSkillWidget : UIComponent
+    {
+        public daolvSkill _daolvSkill;
+        private float value;
+
+        private void Init()
+        {
+        }
+
+        public override void AddEvent()
+        {
+        }
+
+        public override void DelEvent()
+        {
+        }
+
+        public override void AddButtonEvent()
+        {
+        }
+
+        public void CustomInit(int configId, float value)
+        {
+            _daolvSkill = ConfigComponent.Instance.Get<daolvSkill>(configId);
+            this.value = value;
+            Text_Name.text = LanguageManager.Instance.Text(_daolvSkill.des, value);
+        }
+
+        public void UpdateBl(Map<int, float> bl)
+        {
+            float updateValue = 0;
+
+            if (bl.ContainsKey(_daolvSkill.ID))
+            {
+                updateValue = bl[_daolvSkill.ID];
+            }
+
+            if (updateValue > value)
+            {
+                Text_Name.text = LanguageManager.Instance.Text(_daolvSkill.des, value) + "(+" + (updateValue - value) + ")";
+            }
+            else if (updateValue < value)
+            {
+                Text_Name.text = LanguageManager.Instance.Text(_daolvSkill.des, value) + "(" + (updateValue - value) + ")";
+            }
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidget.cs.meta

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

+ 29 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidgetData.cs

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

+ 11 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoLvSkillWidgetData.cs.meta

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

+ 56 - 2
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouInfoPanel.cs

@@ -20,6 +20,9 @@ namespace Fort23.Mono
         List<WidgetItem> giveWidgetItems = new List<WidgetItem>();
         List<DaoYouLevelWidget> _daoYouLevelWidgets = new List<DaoYouLevelWidget>();
         List<DaoYouIdleEarningsWidget> _daoYouIdleEarningsWidgets = new List<DaoYouIdleEarningsWidget>();
+        List<DaoYouaaFfixWidget> daoYouaaFfixWidgets = new List<DaoYouaaFfixWidget>();
+
+        private TimerEntity _timerEntity = null;
 
         private DaoyouGiftConfig[] daoyouGiftConfigs;
 
@@ -39,6 +42,8 @@ namespace Fort23.Mono
 
         public override void AddButtonEvent()
         {
+            Btn_Emotion.onClick.AddListener((() => { ShowMessage(); }));
+
             Btn_Facorability.onClick.AddListener(() =>
             {
                 Info.SetActive(false);
@@ -130,7 +135,14 @@ namespace Fort23.Mono
 
                 PlayerManager.Instance.BagController.DeductItem(daoyouGiftConfig.ItemID, count);
 
-                daoYouData.exp += daoyouGiftConfig.emotionValue * count;
+                emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(daoYouData.emotion);
+
+                for (int i = 0; i < count; i++)
+                {
+                    int bl = Random.Range(emotionConfig.hanganUpRate[0], emotionConfig.hanganUpRate[1] + 1);
+                    daoYouData.exp += (int)(daoyouGiftConfig.emotionValue * bl * 0.001f);
+                }
+
 
                 DaoyouLevelupConfig[] configs = ConfigComponent.Instance.GetAll<DaoyouLevelupConfig>();
 
@@ -154,10 +166,26 @@ namespace Fort23.Mono
             daoYouData = uiData[0] as AccountFileInfo.DaoYouData;
             _daoyouModelConfig = ConfigComponent.Instance.Get<DaoyouModelConfig>(daoYouData.id);
             daoyouGiftConfigs = ConfigComponent.Instance.GetAll<DaoyouGiftConfig>();
+            emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(daoYouData.emotion);
+            Text_message.text = LanguageManager.Instance.Text(emotionConfig.des);
+            ShowMessage();
             await UpdateUI();
             return await base.AsyncInit(uiData);
         }
 
+        private void ShowMessage()
+        {
+            dotPoint.SetActive(true);
+            _timerEntity?.Dispose();
+            _timerEntity = null;
+            _timerEntity = TimerComponent.Instance.AddTimer(5000, () =>
+            {
+                dotPoint.SetActive(false);
+                _timerEntity?.Dispose();
+                _timerEntity = null;
+            });
+        }
+
         public async CTask UpdateUI()
         {
             foreach (var widgetItem in widgetItems)
@@ -180,6 +208,14 @@ namespace Fort23.Mono
 
             _daoYouIdleEarningsWidgets.Clear();
 
+
+            foreach (var daoYouaaFfixWidget in daoYouaaFfixWidgets)
+            {
+                UIManager.Instance.DormancyGComponent(daoYouaaFfixWidget);
+            }
+
+            daoYouaaFfixWidgets.Clear();
+
             if (daoYouData.favorabilityLv >= _daoyouModelConfig.EmotionLvforQuest
                 && !EventSystemManager.Instance.BagIsEvent(_daoyouModelConfig.QuestID)
                 && !EventSystemManager.Instance.IsEventTrigger(_daoyouModelConfig.QuestID))
@@ -238,6 +274,16 @@ namespace Fort23.Mono
                 }
             }
 
+            if (_daoyouModelConfig.daolvSkillID != null)
+            {
+                foreach (var i in _daoyouModelConfig.daolvSkillID)
+                {
+                    DaoYouaaFfixWidget daoYouaaFfixWidge = await UIManager.Instance.CreateGComponent<DaoYouaaFfixWidget>(null, DaoLvContent);
+                    daoYouaaFfixWidge.CustomInit(i);
+                    daoYouaaFfixWidgets.Add(daoYouaaFfixWidge);
+                }
+            }
+
 
             DaoyouLevelupConfig[] configs = ConfigComponent.Instance.GetAll<DaoyouLevelupConfig>();
             foreach (var daoyouLevelupConfig in configs)
@@ -370,8 +416,9 @@ namespace Fort23.Mono
 
         private void UpdateGiveItemCount()
         {
+            emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(daoYouData.emotion);
             Text_Count.text = $"当前选择数量{count}";
-            Text_GiveGiftDesc.text = $"好感度+{daoyouGiftConfig.emotionValue * count}";
+            Text_GiveGiftDesc.text = $"好感度+{daoyouGiftConfig.emotionValue} ({daoyouGiftConfig.emotionValue * emotionConfig.hanganUpRate[0] * 0.001} - {daoyouGiftConfig.emotionValue * emotionConfig.hanganUpRate[1] * 0.001})";
         }
 
         public override CTask GetFocus()
@@ -422,6 +469,13 @@ namespace Fort23.Mono
 
             _daoYouLevelWidgets.Clear();
 
+            foreach (var daoYouaaFfixWidget in daoYouaaFfixWidgets)
+            {
+                UIManager.Instance.DormancyGComponent(daoYouaaFfixWidget);
+            }
+
+            daoYouaaFfixWidgets.Clear();
+
             foreach (var daoYouIdleEarningsWidget in _daoYouIdleEarningsWidgets)
             {
                 UIManager.Instance.DormancyGComponent(daoYouIdleEarningsWidget);

+ 33 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouInfoPanelData.cs

@@ -338,6 +338,39 @@ namespace Fort23.Mono
 	      return _Btn_Tongyong;
 	     }
 	   }
+	  private Text _Text_message;
+	  public Text Text_message
+	   {
+	   get{
+	      if (_Text_message == null)
+	       {
+	         _Text_message  = GetUIUnit<Text>("Text_message"); 
+	       }
+	      return _Text_message;
+	     }
+	   }
+	  private Button _Btn_Emotion;
+	  public Button Btn_Emotion
+	   {
+	   get{
+	      if (_Btn_Emotion == null)
+	       {
+	         _Btn_Emotion  = GetUIUnit<Button>("Btn_Emotion"); 
+	       }
+	      return _Btn_Emotion;
+	     }
+	   }
+	  private GameObject _dotPoint;
+	  public GameObject dotPoint
+	   {
+	   get{
+	      if (_dotPoint == null)
+	       {
+	         _dotPoint  = GetUIUnit<GameObject>("dotPoint"); 
+	       }
+	      return _dotPoint;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{

+ 13 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouWidget.cs

@@ -1,7 +1,9 @@
 using System.Linq;
 using Core.Language;
 using Excel2Json;
+using Fort23.Core;
 using Fort23.UTool;
+using UnityEngine;
 
 namespace Fort23.Mono
 {
@@ -40,9 +42,20 @@ namespace Fort23.Mono
             {
                 transform.Gray();
                 Btn_Event.gameObject.SetActive(false);
+                Icon_Emotion.gameObject.SetActive(false);
             }
             else
             {
+                if (TimeHelper.ClientNow() - _daoYouData.emotionTime >= 60 * 60 * 1000)
+                {
+                    _daoYouData.emotion = Random.Range(1, 4);
+                    _daoYouData.emotionTime = TimeHelper.ClientNow();
+                }
+
+                emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(_daoYouData.emotion);
+
+                Icon_Emotion.gameObject.SetActive(false);
+
                 DaoyouLevelupConfig daoyouLevelupConfig = ConfigComponent.Instance.Get<DaoyouLevelupConfig>(_daoYouData.favorabilityLv);
                 Text_DaoyouLvName.text = LanguageManager.Instance.Text(daoyouLevelupConfig.name);
                 if (_daoYouData.favorabilityLv >= _daoyouModelConfig.EmotionLvforQuest

+ 11 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouWidgetData.cs

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

+ 35 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidget.cs

@@ -0,0 +1,35 @@
+using Core.Language;
+using Excel2Json;
+using Fort23.UTool;
+
+namespace Fort23.Mono
+{
+	[UIBinding(prefab = "DaoYouaaFfixWidget"  )]
+	public partial class DaoYouaaFfixWidget : UIComponent
+	{
+		private void Init()
+		{
+
+		}
+		public override void AddEvent()
+		{
+
+		}
+		public override void DelEvent()
+		{
+
+		}
+		public override void AddButtonEvent()
+		{
+
+		}
+
+		public void CustomInit(int configId)
+		{
+			daolvSkill daolvSkill = ConfigComponent.Instance.Get<daolvSkill>(configId);
+			Text_Name.text = LanguageManager.Instance.Text(daolvSkill.name);
+			Icon_Weiyi.gameObject.SetActive(daolvSkill.type == 1);
+		}
+
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidget.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: DCga4yr+UHI/W3ba65+RWx60TvrV6DoIQXtLz7nAj//kTviPj/b5Y97tt7Ni
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 40 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidgetData.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 DaoYouaaFfixWidget 
+	{
+	  #region 自定义数据 
+	  private Text _Text_Name;
+	  public Text Text_Name
+	   {
+	   get{
+	      if (_Text_Name == null)
+	       {
+	         _Text_Name  = GetUIUnit<Text>("Text_Name"); 
+	       }
+	      return _Text_Name;
+	     }
+	   }
+	  private MyImage _Icon_Weiyi;
+	  public MyImage Icon_Weiyi
+	   {
+	   get{
+	      if (_Icon_Weiyi == null)
+	       {
+	         _Icon_Weiyi  = GetUIUnit<MyImage>("Icon_Weiyi"); 
+	       }
+	      return _Icon_Weiyi;
+	     }
+	   }
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/DaoYouPanel/DaoYouaaFfixWidgetData.cs.meta

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

+ 9 - 1
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroInformationPanel.cs

@@ -129,8 +129,16 @@ namespace Fort23.Mono
 
             await CreatHero();
 
+            AccountFileInfo.HeroData heroData = new AccountFileInfo.HeroData();
+            heroData.heroModelId = PlayerManager.Instance.myHero.heroData.heroModelId;
+            heroData.heroPowerId = PlayerManager.Instance.myHero.heroData.heroPowerId+1;
+            heroData.exp = PlayerManager.Instance.myHero.heroData.exp;
+            heroData.upTime = PlayerManager.Instance.myHero.heroData.upTime;
+            heroData.isCombat = PlayerManager.Instance.myHero.heroData.isCombat;
+            heroData.TaoismSkillId = PlayerManager.Instance.myHero.heroData.TaoismSkillId;
+            heroData.ImmortalBond = PlayerManager.Instance.myHero.heroData.ImmortalBond.ToList();
             heroInfo = new HeroInfo();
-            heroInfo.InitHero(PlayerManager.Instance.myHero.heroData.heroModelId, PlayerManager.Instance.myHero.heroData.heroPowerId + 1);
+            heroInfo.InitHero(heroData);
 
             HeroAttributeWidget heroAttributeWidget = await UIManager.Instance.CreateGComponent<HeroAttributeWidget>(null, AttributeRoot);
             heroAttributeWidget.CustomInit(new HeroAttributeData("生命", PlayerManager.Instance.myHero.hp.Value.ToString(), "+" + (heroInfo.hp.Value - PlayerManager.Instance.myHero.hp.Value).ToString()));

+ 116 - 4
Assets/Scripts/GameUI/UI/HeroInformationPanel/ImmortalBondPanel.cs

@@ -1,5 +1,11 @@
+using System.Collections.Generic;
+using System.Linq;
+using Excel2Json;
 using Fort23.Core;
+using Fort23.UTool;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
 using UnityEngine;
+using Utility;
 
 namespace Fort23.Mono
 {
@@ -8,6 +14,7 @@ namespace Fort23.Mono
     {
         private DaoYouWidget addDaoYouWidget;
         private DaoYouWidget removeDaoYouWidget;
+        List<DaoLvSkillWidget> _daoLvSkillWidgets = new List<DaoLvSkillWidget>();
 
         private void Init()
         {
@@ -42,6 +49,7 @@ namespace Fort23.Mono
                 if (!PlayerManager.Instance.myHero.heroData.ImmortalBond.Contains(addDaoYouWidget._daoYouData.id))
                 {
                     PlayerManager.Instance.myHero.heroData.ImmortalBond.Add(addDaoYouWidget._daoYouData.id);
+                    PlayerManager.Instance.myHero.ComputeHeroInfo();
                     AccountFileInfo.Instance.SavePlayerData();
                     addDaoYouWidget = null;
                     Btn_Add.gameObject.SetActive(false);
@@ -60,6 +68,7 @@ namespace Fort23.Mono
                 if (PlayerManager.Instance.myHero.heroData.ImmortalBond.Contains(removeDaoYouWidget._daoYouData.id))
                 {
                     PlayerManager.Instance.myHero.heroData.ImmortalBond.Remove(removeDaoYouWidget._daoYouData.id);
+                    PlayerManager.Instance.myHero.ComputeHeroInfo();
                     AccountFileInfo.Instance.SavePlayerData();
                     removeDaoYouWidget = null;
                     Btn_Remove.gameObject.SetActive(false);
@@ -80,6 +89,13 @@ namespace Fort23.Mono
 
         private async CTask UpdateUi()
         {
+            foreach (var daoLvSkillWidget in _daoLvSkillWidgets)
+            {
+                UIManager.Instance.DormancyGComponent(daoLvSkillWidget);
+            }
+
+            _daoLvSkillWidgets.Clear();
+
             UIManager.Instance.DormancyAllGComponent<DaoYouWidget>();
 
             //已经邀请的道侣
@@ -100,19 +116,50 @@ namespace Fort23.Mono
                     daoYouWidget.OnClick = OnClick2;
                 }
             }
+
+            foreach (var i in PlayerManager.Instance.myHero.daolvBlMap)
+            {
+                DaoLvSkillWidget daoLvSkillWidget = await UIManager.Instance.CreateGComponent<DaoLvSkillWidget>(null, JiachengContent);
+                daoLvSkillWidget.CustomInit(i.Key, i.Value);
+                _daoLvSkillWidgets.Add(daoLvSkillWidget);
+            }
         }
 
-        private void OnClick1(ItemWidgetBasic obj)
+        private async void OnClick1(ItemWidgetBasic obj)
         {
             DaoYouWidget daoYouWidget = obj as DaoYouWidget;
             removeDaoYouWidget = daoYouWidget;
-            Vector3 pos = transform.InverseTransformPoint(daoYouWidget.transform.position);
+            Vector3 pos = transform.InverseTransformPoint(removeDaoYouWidget.transform.position);
             pos.y -= 180;
             Btn_Remove.gameObject.GetComponent<RectTransform>().anchoredPosition = pos;
             Btn_Remove.gameObject.SetActive(true);
+
+            if (PlayerManager.Instance.myHero.heroData.ImmortalBond.Contains(removeDaoYouWidget._daoYouData.id))
+            {
+                List<int> ImmortalBond = PlayerManager.Instance.myHero.heroData.ImmortalBond.ToList();
+                ImmortalBond.Remove(removeDaoYouWidget._daoYouData.id);
+
+                Map<int, float> daolvBlMap = GetDaoLvBl(ImmortalBond);
+                foreach (var daoLvSkillWidget in _daoLvSkillWidgets)
+                {
+                    daoLvSkillWidget.UpdateBl(daolvBlMap);
+                }
+
+                foreach (var keyValuePair in daolvBlMap)
+                {
+                    DaoLvSkillWidget daoLvSkillWidget = _daoLvSkillWidgets.FirstOrDefault(ds => ds._daolvSkill.ID == keyValuePair.Key);
+                    if (daoLvSkillWidget == null)
+                    {
+                        DaoLvSkillWidget daoLvSkillWidget1 = await UIManager.Instance.CreateGComponent<DaoLvSkillWidget>(null, JiachengContent);
+                        daoLvSkillWidget1.CustomInit(keyValuePair.Key, 0);
+                        _daoLvSkillWidgets.Add(daoLvSkillWidget1);
+                        daoLvSkillWidget1.UpdateBl(daolvBlMap);
+                    }
+                }
+            }
         }
 
-        private void OnClick2(ItemWidgetBasic obj)
+        private async void OnClick2(ItemWidgetBasic obj)
         {
             DaoYouWidget daoYouWidget = obj as DaoYouWidget;
             addDaoYouWidget = daoYouWidget;
@@ -120,7 +167,65 @@ namespace Fort23.Mono
             pos.y -= 180;
             Btn_Add.gameObject.GetComponent<RectTransform>().anchoredPosition = pos;
             Btn_Add.gameObject.SetActive(true);
-            // UIManager.Instance.DormancyGComponent();
+
+
+            if (!PlayerManager.Instance.myHero.heroData.ImmortalBond.Contains(addDaoYouWidget._daoYouData.id))
+            {
+                List<int> ImmortalBond = PlayerManager.Instance.myHero.heroData.ImmortalBond.ToList();
+                ImmortalBond.Add(addDaoYouWidget._daoYouData.id);
+
+                Map<int, float> daolvBlMap = GetDaoLvBl(ImmortalBond);
+                foreach (var daoLvSkillWidget in _daoLvSkillWidgets)
+                {
+                    daoLvSkillWidget.UpdateBl(daolvBlMap);
+                }
+
+                foreach (var keyValuePair in daolvBlMap)
+                {
+                    DaoLvSkillWidget daoLvSkillWidget = _daoLvSkillWidgets.FirstOrDefault(ds => ds._daolvSkill.ID == keyValuePair.Key);
+                    if (daoLvSkillWidget == null)
+                    {
+                        DaoLvSkillWidget daoLvSkillWidget1 = await UIManager.Instance.CreateGComponent<DaoLvSkillWidget>(null, JiachengContent);
+                        daoLvSkillWidget1.CustomInit(keyValuePair.Key, 0);
+                        _daoLvSkillWidgets.Add(daoLvSkillWidget1);
+                        daoLvSkillWidget1.UpdateBl(daolvBlMap);
+                    }
+                }
+            }
+        }
+
+        public Map<int, float> GetDaoLvBl(List<int> ImmortalBond)
+        {
+            Map<int, float> daolvBlMap = new Map<int, float>();
+            foreach (var i in ImmortalBond)
+            {
+                DaoyouModelConfig daoyouModelConfig = ConfigComponent.Instance.Get<DaoyouModelConfig>(i);
+                foreach (var i1 in daoyouModelConfig.daolvSkillID)
+                {
+                    daolvSkill daolvSkill = ConfigComponent.Instance.Get<daolvSkill>(i1);
+                    //唯一只加一次
+                    if (daolvSkill.type == 1)
+                    {
+                        if (!daolvBlMap.ContainsKey(i1))
+                        {
+                            daolvBlMap.Add(i1, daolvSkill.para[0]);
+                        }
+                    }
+                    else
+                    {
+                        if (!daolvBlMap.ContainsKey(i1))
+                        {
+                            daolvBlMap.Add(i1, daolvSkill.para[0]);
+                        }
+                        else
+                        {
+                            daolvBlMap[i1] += daolvSkill.para[0];
+                        }
+                    }
+                }
+            }
+
+            return daolvBlMap;
         }
 
         public async static CTask OpenPanel()
@@ -130,6 +235,13 @@ namespace Fort23.Mono
 
         public override void Close()
         {
+            foreach (var daoLvSkillWidget in _daoLvSkillWidgets)
+            {
+                UIManager.Instance.DormancyGComponent(daoLvSkillWidget);
+            }
+
+            _daoLvSkillWidgets.Clear();
+
             UIManager.Instance.DormancyAllGComponent<DaoYouWidget>();
             Btn_Add.gameObject.SetActive(true);
             Btn_Remove.gameObject.SetActive(true);

文件差異過大導致無法顯示
+ 0 - 0
Assets/StreamingAssets/assetConfig.txt


二進制
Excel2Json/Excel/DaoyouConfig.xlsx


文件差異過大導致無法顯示
+ 553 - 201
UserSettings/Layouts/default-2022.dwlt


部分文件因文件數量過多而無法顯示