Parcourir la source

Merge branch 'master' of http://192.168.123.2:3000/fort23/XY001

李桃 il y a 4 mois
Parent
commit
bc05b5f982
42 fichiers modifiés avec 2478 ajouts et 1914 suppressions
  1. 22 0
      Assets/Res/Config/DropConfig.json
  2. 7 0
      Assets/Res/Config/DropConfig.json.meta
  3. 184 0
      Assets/Res/Config/DropCountConfig.json
  4. 7 0
      Assets/Res/Config/DropCountConfig.json.meta
  5. 22 0
      Assets/Res/Config/DropGroupConfig.json
  6. 7 0
      Assets/Res/Config/DropGroupConfig.json.meta
  7. 31 0
      Assets/Res/Config/DropItemConfig.json
  8. 7 0
      Assets/Res/Config/DropItemConfig.json.meta
  9. 16 361
      Assets/Res/Config/HeroModelConfig.json
  10. 110 0
      Assets/Res/UI/HeroDetailPanel.prefab
  11. 1395 1115
      Assets/Scenes/UITest.scene
  12. 8 8
      Assets/Scenes/testCombat.scene
  13. 9 4
      Assets/Scripts/Core/Editor/PackgTool/UGUIPackgToolWindow.cs
  14. 8 0
      Assets/Scripts/Core/Event/Event/CustomEventType.cs
  15. 30 19
      Assets/Scripts/Core/Pool/GPool/GObjectPool.cs
  16. 39 0
      Assets/Scripts/GameData/ExcelConfig/DropConfig.cs
  17. 11 0
      Assets/Scripts/GameData/ExcelConfig/DropConfig.cs.meta
  18. 44 0
      Assets/Scripts/GameData/ExcelConfig/DropCountConfig.cs
  19. 11 0
      Assets/Scripts/GameData/ExcelConfig/DropCountConfig.cs.meta
  20. 33 0
      Assets/Scripts/GameData/ExcelConfig/DropGroupConfig.cs
  21. 11 0
      Assets/Scripts/GameData/ExcelConfig/DropGroupConfig.cs.meta
  22. 51 0
      Assets/Scripts/GameData/ExcelConfig/DropItemConfig.cs
  23. 11 0
      Assets/Scripts/GameData/ExcelConfig/DropItemConfig.cs.meta
  24. 9 0
      Assets/Scripts/GameLogic/Combat/CombatEvent/HeroLvUpgradeEventData.cs
  25. 3 0
      Assets/Scripts/GameLogic/Combat/CombatEvent/HeroLvUpgradeEventData.cs.meta
  26. 1 1
      Assets/Scripts/GameLogic/Combat/CombatTool/CombatCameraControllder.cs
  27. 1 0
      Assets/Scripts/GameLogic/Combat/CombatTool/CombatHeroController.cs
  28. 20 1
      Assets/Scripts/GameLogic/Combat/CombatType/LevelBattleCombatType.cs
  29. 9 2
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroEntity.cs
  30. 16 1
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroTimeLineControl.cs
  31. 7 6
      Assets/Scripts/GameLogic/Combat/Hero/State/CombatHeroDieState.cs
  32. 24 4
      Assets/Scripts/GameLogic/Combat/Hero/State/CombatResurrectionState.cs
  33. 3 1
      Assets/Scripts/GameLogic/Hero/HeroInfo.cs
  34. 7 2
      Assets/Scripts/GameLogic/Player/AccountFileInfo.cs
  35. 60 0
      Assets/Scripts/GameLogic/Player/PlayerManager.cs
  36. 1 0
      Assets/Scripts/GameUI/GameApplction.cs
  37. 27 1
      Assets/Scripts/GameUI/UI/Hero/HeroDetailPanel.cs
  38. 22 0
      Assets/Scripts/GameUI/UI/Hero/HeroDetailPanelData.cs
  39. 2 42
      Assets/Scripts/GameUI/UI/Hero/WidgetHero.cs
  40. 1 1
      Assets/Scripts/GameUI/UI/HeroHpWidget.cs
  41. BIN
      Excel2Json/Excel/HeroModel.xlsx
  42. 191 345
      UserSettings/Layouts/default-2022.dwlt

+ 22 - 0
Assets/Res/Config/DropConfig.json

@@ -0,0 +1,22 @@
+{
+  "configList": [
+    {
+      "ID": 10001,
+      "dropGroupID": [
+        10001
+      ]
+    },
+    {
+      "ID": 10002,
+      "dropGroupID": [
+        10002
+      ]
+    },
+    {
+      "ID": 10003,
+      "dropGroupID": [
+        10003
+      ]
+    }
+  ]
+}

+ 7 - 0
Assets/Res/Config/DropConfig.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: XS5NtSOqUCrVF8Pwakc7AieTArDKnjPABNp+LJnkiJUNxq+8cqnlql8=
+TextScriptImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 184 - 0
Assets/Res/Config/DropCountConfig.json

@@ -0,0 +1,184 @@
+{
+  "configList": [
+    {
+      "ID": 1,
+      "groupID": 1,
+      "proportion": 10,
+      "weight": 2
+    },
+    {
+      "ID": 2,
+      "groupID": 1,
+      "proportion": 20,
+      "weight": 4
+    },
+    {
+      "ID": 3,
+      "groupID": 1,
+      "proportion": 30,
+      "weight": 8
+    },
+    {
+      "ID": 4,
+      "groupID": 1,
+      "proportion": 40,
+      "weight": 16
+    },
+    {
+      "ID": 5,
+      "groupID": 1,
+      "proportion": 50,
+      "weight": 32
+    },
+    {
+      "ID": 6,
+      "groupID": 1,
+      "proportion": 60,
+      "weight": 16
+    },
+    {
+      "ID": 7,
+      "groupID": 1,
+      "proportion": 70,
+      "weight": 8
+    },
+    {
+      "ID": 8,
+      "groupID": 1,
+      "proportion": 80,
+      "weight": 4
+    },
+    {
+      "ID": 9,
+      "groupID": 1,
+      "proportion": 90,
+      "weight": 2
+    },
+    {
+      "ID": 10,
+      "groupID": 1,
+      "proportion": 100,
+      "weight": 1
+    },
+    {
+      "ID": 11,
+      "groupID": 2,
+      "proportion": 10,
+      "weight": 1
+    },
+    {
+      "ID": 12,
+      "groupID": 2,
+      "proportion": 20,
+      "weight": 2
+    },
+    {
+      "ID": 13,
+      "groupID": 2,
+      "proportion": 30,
+      "weight": 3
+    },
+    {
+      "ID": 14,
+      "groupID": 2,
+      "proportion": 40,
+      "weight": 5
+    },
+    {
+      "ID": 15,
+      "groupID": 2,
+      "proportion": 50,
+      "weight": 7
+    },
+    {
+      "ID": 16,
+      "groupID": 2,
+      "proportion": 60,
+      "weight": 9
+    },
+    {
+      "ID": 17,
+      "groupID": 2,
+      "proportion": 70,
+      "weight": 15
+    },
+    {
+      "ID": 18,
+      "groupID": 2,
+      "proportion": 80,
+      "weight": 16
+    },
+    {
+      "ID": 19,
+      "groupID": 2,
+      "proportion": 90,
+      "weight": 18
+    },
+    {
+      "ID": 20,
+      "groupID": 2,
+      "proportion": 100,
+      "weight": 20
+    },
+    {
+      "ID": 21,
+      "groupID": 3,
+      "proportion": 10,
+      "weight": 1024
+    },
+    {
+      "ID": 22,
+      "groupID": 3,
+      "proportion": 20,
+      "weight": 256
+    },
+    {
+      "ID": 23,
+      "groupID": 3,
+      "proportion": 30,
+      "weight": 128
+    },
+    {
+      "ID": 24,
+      "groupID": 3,
+      "proportion": 40,
+      "weight": 64
+    },
+    {
+      "ID": 25,
+      "groupID": 3,
+      "proportion": 50,
+      "weight": 32
+    },
+    {
+      "ID": 26,
+      "groupID": 3,
+      "proportion": 60,
+      "weight": 16
+    },
+    {
+      "ID": 27,
+      "groupID": 3,
+      "proportion": 70,
+      "weight": 8
+    },
+    {
+      "ID": 28,
+      "groupID": 3,
+      "proportion": 80,
+      "weight": 4
+    },
+    {
+      "ID": 29,
+      "groupID": 3,
+      "proportion": 90,
+      "weight": 2
+    },
+    {
+      "ID": 30,
+      "groupID": 3,
+      "proportion": 100,
+      "weight": 1
+    }
+  ]
+}

+ 7 - 0
Assets/Res/Config/DropCountConfig.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: Xn0b5y2uAnhXg7g5u3YeJfvU7b9uiVF7jxzflUHtuOGvDg/VHRQRYNU=
+TextScriptImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 22 - 0
Assets/Res/Config/DropGroupConfig.json

@@ -0,0 +1,22 @@
+{
+  "configList": [
+    {
+      "ID": 10001,
+      "dropItemID": [
+        10001
+      ]
+    },
+    {
+      "ID": 10002,
+      "dropItemID": [
+        10002
+      ]
+    },
+    {
+      "ID": 10003,
+      "dropItemID": [
+        10003
+      ]
+    }
+  ]
+}

+ 7 - 0
Assets/Res/Config/DropGroupConfig.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: DH5LsnutUSllxB6z3EWic/izfq1OyGVjeWNV5Z8F4KI4GkZ6Jpj8ILI=
+TextScriptImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 31 - 0
Assets/Res/Config/DropItemConfig.json

@@ -0,0 +1,31 @@
+{
+  "configList": [
+    {
+      "ID": 10001,
+      "itemID": [
+        20001
+      ],
+      "dropMinV": 1,
+      "dropMaxV": 1,
+      "dropCountGoupID": -1
+    },
+    {
+      "ID": 10002,
+      "itemID": [
+        20002
+      ],
+      "dropMinV": 1,
+      "dropMaxV": 1,
+      "dropCountGoupID": -1
+    },
+    {
+      "ID": 10003,
+      "itemID": [
+        20003
+      ],
+      "dropMinV": 1,
+      "dropMaxV": 1,
+      "dropCountGoupID": -1
+    }
+  ]
+}

+ 7 - 0
Assets/Res/Config/DropItemConfig.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: CSgdsi77BX4hfFOnpI+I2Z79KPWX1kKwPmBTxdYsn1uqoLTfWlJYnvA=
+TextScriptImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 16 - 361
Assets/Res/Config/HeroModelConfig.json

@@ -1,102 +1,5 @@
 {
   "configList": [
-    {
-      "ID": 101,
-      "nickName": -1,
-      "name": 1,
-      "headicon": "icon_tx101",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 1,
-      "hp": 100,
-      "def": 2,
-      "crit": null,
-      "attack": 10,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 2,
-      "skillID": [
-        70011
-      ],
-      "heroStory": 70091
-    },
-    {
-      "ID": 102,
-      "nickName": -1,
-      "name": 2,
-      "headicon": "icon_tx102",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 1,
-      "hp": 100,
-      "def": 3,
-      "crit": null,
-      "attack": 11,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 3,
-      "skillID": [
-        70012
-      ],
-      "heroStory": 70092
-    },
-    {
-      "ID": 103,
-      "nickName": -1,
-      "name": 3,
-      "headicon": "icon_tx103",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 1,
-      "hp": 100,
-      "def": 4,
-      "crit": null,
-      "attack": 12,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 4,
-      "skillID": [
-        70013
-      ],
-      "heroStory": 70093
-    },
-    {
-      "ID": 104,
-      "nickName": -1,
-      "name": 4,
-      "headicon": "icon_tx104",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 1,
-      "hp": 100,
-      "def": 2,
-      "crit": null,
-      "attack": 10,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 2,
-      "heroStory": null
-    },
     {
       "ID": 105,
       "nickName": -1,
@@ -117,28 +20,10 @@
       "move_speed": 8,
       "speed_atk": 1.0,
       "range_atk": 3,
-      "heroStory": null
-    },
-    {
-      "ID": 106,
-      "nickName": -1,
-      "name": 6,
-      "headicon": "icon_tx106",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 2,
-      "hp": 100,
-      "def": 4,
-      "crit": null,
-      "attack": 12,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 4,
+      "skillID": [
+        10011,
+        100011
+      ],
       "heroStory": null
     },
     {
@@ -161,116 +46,10 @@
       "move_speed": 8,
       "speed_atk": 1.0,
       "range_atk": 2,
-      "heroStory": null
-    },
-    {
-      "ID": 108,
-      "nickName": -1,
-      "name": 8,
-      "headicon": "icon_tx108",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 2,
-      "hp": 100,
-      "def": 3,
-      "crit": null,
-      "attack": 11,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 3,
-      "heroStory": null
-    },
-    {
-      "ID": 109,
-      "nickName": -1,
-      "name": 9,
-      "headicon": "icon_tx109",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 2,
-      "hp": 100,
-      "def": 4,
-      "crit": null,
-      "attack": 12,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 4,
-      "heroStory": null
-    },
-    {
-      "ID": 110,
-      "nickName": -1,
-      "name": 10,
-      "headicon": "icon_tx110",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 2,
-      "hp": 100,
-      "def": 2,
-      "crit": null,
-      "attack": 10,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 2,
-      "heroStory": null
-    },
-    {
-      "ID": 111,
-      "nickName": -1,
-      "name": 11,
-      "headicon": "icon_tx111",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 3,
-      "hp": 100,
-      "def": 3,
-      "crit": null,
-      "attack": 11,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 3,
-      "heroStory": null
-    },
-    {
-      "ID": 112,
-      "nickName": -1,
-      "name": 12,
-      "headicon": "icon_tx112",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 3,
-      "hp": 100,
-      "def": 4,
-      "crit": null,
-      "attack": 12,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 4,
+      "skillID": [
+        10011,
+        300011
+      ],
       "heroStory": null
     },
     {
@@ -293,50 +72,10 @@
       "move_speed": 8,
       "speed_atk": 1.0,
       "range_atk": 2,
-      "heroStory": null
-    },
-    {
-      "ID": 114,
-      "nickName": -1,
-      "name": 14,
-      "headicon": "icon_tx114",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 3,
-      "hp": 100,
-      "def": 3,
-      "crit": null,
-      "attack": 11,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 3,
-      "heroStory": null
-    },
-    {
-      "ID": 115,
-      "nickName": -1,
-      "name": 15,
-      "headicon": "icon_tx115",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 3,
-      "hp": 100,
-      "def": 4,
-      "crit": null,
-      "attack": 12,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 4,
+      "skillID": [
+        10011,
+        200011
+      ],
       "heroStory": null
     },
     {
@@ -359,94 +98,10 @@
       "move_speed": 8,
       "speed_atk": 1.0,
       "range_atk": 2,
-      "heroStory": null
-    },
-    {
-      "ID": 117,
-      "nickName": -1,
-      "name": 17,
-      "headicon": "icon_tx117",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 4,
-      "hp": 100,
-      "def": 3,
-      "crit": null,
-      "attack": 11,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 3,
-      "heroStory": null
-    },
-    {
-      "ID": 118,
-      "nickName": -1,
-      "name": 18,
-      "headicon": "icon_tx118",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 2,
-      "heroType": 1,
-      "profession": 4,
-      "hp": 100,
-      "def": 4,
-      "crit": null,
-      "attack": 12,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 4,
-      "heroStory": null
-    },
-    {
-      "ID": 119,
-      "nickName": -1,
-      "name": 19,
-      "headicon": "icon_tx119",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 4,
-      "hp": 100,
-      "def": 3,
-      "crit": null,
-      "attack": 11,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 3,
-      "heroStory": null
-    },
-    {
-      "ID": 120,
-      "nickName": -1,
-      "name": 20,
-      "headicon": "icon_tx120",
-      "model": "",
-      "isUseGpu": false,
-      "starGrade": 3,
-      "rarity": 1,
-      "heroType": 1,
-      "profession": 4,
-      "hp": 100,
-      "def": 4,
-      "crit": null,
-      "attack": 12,
-      "shanbi": 10,
-      "expGain": 100,
-      "move_speed": 8,
-      "speed_atk": 1.0,
-      "range_atk": 4,
+      "skillID": [
+        10011,
+        400011
+      ],
       "heroStory": null
     },
     {

+ 110 - 0
Assets/Res/UI/HeroDetailPanel.prefab

@@ -2804,6 +2804,7 @@ GameObject:
   - component: {fileID: 6450843375123603411}
   - component: {fileID: 3309520447706144299}
   - component: {fileID: 1966616225348447026}
+  - component: {fileID: 4704716257281283673}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: Button_Promote
@@ -2879,6 +2880,50 @@ MonoBehaviour:
     packgJsonPath: /Art/UIAssets/TextrueJson/all.txt
     packgSpritePath: Assets/Res/UIAtlas/all.spriteatlasv2
     lasetJsonGUID: ace5466faa841bb7b9046587aae54d38
+--- !u!114 &4704716257281283673
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2292960775602257974}
+  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: 1966616225348447026}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
 --- !u!1 &2348262451627925547
 GameObject:
   m_ObjectHideFlags: 0
@@ -8059,6 +8104,7 @@ GameObject:
   - component: {fileID: 5940546225354624192}
   - component: {fileID: 6920444595140807751}
   - component: {fileID: 6339542083778085456}
+  - component: {fileID: 2876329134272659471}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: Button_Upgrade
@@ -8134,6 +8180,50 @@ MonoBehaviour:
     packgJsonPath: /Art/UIAssets/TextrueJson/all.txt
     packgSpritePath: Assets/Res/UIAtlas/all.spriteatlasv2
     lasetJsonGUID: ace5466faa841bb7b9046587aae54d38
+--- !u!114 &2876329134272659471
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5664409606135363520}
+  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: 6339542083778085456}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
 --- !u!1 &5664635391068350170
 GameObject:
   m_ObjectHideFlags: 0
@@ -9085,6 +9175,26 @@ MonoBehaviour:
     - gameObject: {fileID: 2983232722897563720}
     - gameObject: {fileID: 7900421520403642917}
     - gameObject: {fileID: 1181932463234986561}
+  - key: btnUpgrade
+    gameObject: {fileID: 2876329134272659471}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas:
+    - gameObject: {fileID: 9043530873077291103}
+    - gameObject: {fileID: 7786295750093721047}
+    - gameObject: {fileID: 2983232722897563720}
+    - gameObject: {fileID: 7900421520403642917}
+    - gameObject: {fileID: 1181932463234986561}
+  - key: btnPromote
+    gameObject: {fileID: 4704716257281283673}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas:
+    - gameObject: {fileID: 9043530873077291103}
+    - gameObject: {fileID: 7786295750093721047}
+    - gameObject: {fileID: 2983232722897563720}
+    - gameObject: {fileID: 7900421520403642917}
+    - gameObject: {fileID: 1181932463234986561}
   isAssetBundle: 1
 --- !u!1 &6353668298983276286
 GameObject:

Fichier diff supprimé car celui-ci est trop grand
+ 1395 - 1115
Assets/Scenes/UITest.scene


+ 8 - 8
Assets/Scenes/testCombat.scene

@@ -676,29 +676,29 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   myHeroInfo:
   - modelName: Hero01
-    hp: 1000
-    att: 100
+    hp: 100
+    att: 1
     attSpeed: 1
     attDis: 2
     isGpu: 0
     skillId: 1b270000ab860100
   - modelName: Hero02
-    hp: 1000
-    att: 100
+    hp: 100
+    att: 1
     attSpeed: 1
     attDis: 4
     isGpu: 0
     skillId: 1b2700004b0d0300
   - modelName: Hero03
-    hp: 1000
-    att: 100
+    hp: 100
+    att: 1
     attSpeed: 1
     attDis: 5
     isGpu: 0
     skillId: 1b270000eb930400
   - modelName: Hero04
-    hp: 1000
-    att: 100
+    hp: 100
+    att: 1
     attSpeed: 1
     attDis: 6
     isGpu: 0

+ 9 - 4
Assets/Scripts/Core/Editor/PackgTool/UGUIPackgToolWindow.cs

@@ -460,7 +460,9 @@ namespace UnityEditor.UI
 
                 List<UnityEngine.Object> allAddAsset = new List<UnityEngine.Object>();
                 UnityEngine.Object[] currObject = spriteAtlas.GetPackables();
+                SpriteAtlasExtensions.Remove(spriteAtlas, currObject);
                 spriteAtlas.Remove(currObject);
+                // spriteAtl = 0;
                 for (int i = 0; i < textrueJson.newTextureJson.Count; i++)
                 {
                     string textrueName = textrueJson.newTextureJson[i].textrueName;
@@ -513,18 +515,21 @@ namespace UnityEditor.UI
 
                 spriteAtlas.SetIncludeInBuild(false);
                 SpriteAtlasAsset spriteAtlasAsset = SpriteAtlasAsset.Load(packInfo.packgSpritePath);
-                UnityEngine.Object[] sprites = spriteAtlas.GetPackables();
-                for (int i = 0; i < spriteAtlas.spriteCount * 2; i++)
+                MethodInfo methodInfo = spriteAtlasAsset.GetType()
+                    .GetMethod("RemoveAt", BindingFlags.Instance | BindingFlags.NonPublic);
+
+                for (int i = 0; i < spriteAtlas.spriteCount * 3; i++)
                 {
+                    methodInfo.Invoke(spriteAtlasAsset, new object[] { 0 });
                 }
 
-                spriteAtlasAsset.Remove(sprites);
+                // spriteAtlasAsset.Remove(sprites);
                 spriteAtlasAsset.Add(allAddAsset.ToArray());
                 SpriteAtlasAsset.Save(spriteAtlasAsset, packInfo.packgSpritePath);
                 // spriteAtlasAsset.
                 EditorUtility.SetDirty(spriteAtlas);
                 AssetDatabase.SaveAssets();
-                SpriteAtlasUtility.PackAtlases(new SpriteAtlas[] { spriteAtlas }, BuildTarget.Android);
+                SpriteAtlasUtility.PackAtlases(new SpriteAtlas[] { spriteAtlas }, BuildTarget.NoTarget);
                 AssetDatabase.Refresh();
                 packInfo.lasetJsonGUID = GetFileMD5(Application.dataPath + packInfo.packgJsonPath);
                 packInfo.isUpdate = false;

+ 8 - 0
Assets/Scripts/Core/Event/Event/CustomEventType.cs

@@ -12,5 +12,13 @@ namespace Fort23.Core
       /// 战斗道具飞行
       /// </summary>
       Combat_EquipFall,
+      /// <summary>
+      /// 英雄升级
+      /// </summary>
+      HeroUpgrade,
+      /// <summary>
+      /// 英雄升星
+      /// </summary>
+      HeroPromote,
     }
 }

+ 30 - 19
Assets/Scripts/Core/Pool/GPool/GObjectPool.cs

@@ -128,7 +128,7 @@ namespace Fort23.UTool
             // _usePool.Clear();
         }
 
-        public async CTask Preset<T>(Clock clock,bool isUseSynchronous) where T : IGObjectPoolInterface
+        public async CTask Preset<T>(Clock clock, bool isUseSynchronous) where T : IGObjectPoolInterface
         {
             DormancyPool();
 
@@ -153,16 +153,17 @@ namespace Fort23.UTool
 
 
             _destroyPool.Clear();
-            T OBJ = await Dequeue<T>(true, clock,isUseSynchronous);
+            T OBJ = await Dequeue<T>(true, clock, isUseSynchronous);
             Enqueue(OBJ, true);
         }
 
-        private async CTask<AssetHandle> LoadAsset(Clock clock,bool isUseSynchronous)
+        private async CTask<AssetHandle> LoadAsset(Clock clock, bool isUseSynchronous)
         {
             if (AssetBundleLoadManager.Instance != null)
             {
                 CTask<AssetHandle> cTask =
-                    AssetBundleLoadManager.Instance.LoadAssetAsyncTask<GameObject>(_prefabName, clock: clock,isUseSynchronous:isUseSynchronous);
+                    AssetBundleLoadManager.Instance.LoadAssetAsyncTask<GameObject>(_prefabName, clock: clock,
+                        isUseSynchronous: isUseSynchronous);
                 AssetHandle assetHandle = await cTask;
                 return assetHandle;
             }
@@ -210,7 +211,8 @@ namespace Fort23.UTool
             return CreateInstance<T>(isActive, gameObject);
         }
 
-        public async CTask<T> Dequeue<T>(bool isActive, Clock clock,bool isUseSynchronous) where T : IGObjectPoolInterface
+        public async CTask<T> Dequeue<T>(bool isActive, Clock clock, bool isUseSynchronous)
+            where T : IGObjectPoolInterface
         {
             for (int i = 0; i < _queue.Count; i++)
             {
@@ -239,8 +241,14 @@ namespace Fort23.UTool
             bool isUsePoolObject = false;
             if ((_PoolObjectFather == null || _PoolObjectFather.IsNull()) && !string.IsNullOrEmpty(_prefabName))
             {
-                _PoolObjectFather = await LoadAsset(clock,isUseSynchronous);
-                isUsePoolObject = true;
+                using (await CoroutineLockComponent.Instance.Wait(poolName, 20000))
+                {
+                    if (_PoolObjectFather == null)
+                    {
+                        _PoolObjectFather = await LoadAsset(clock, isUseSynchronous);
+                        isUsePoolObject = true;
+                    }
+                }
             }
 
             // if (clock != null && clock.isBreak)
@@ -257,11 +265,11 @@ namespace Fort23.UTool
                 AssetHandle assetHandle = _PoolObjectFather;
                 if (!isUsePoolObject)
                 {
-                    assetHandle= await _PoolObjectFather.InstantiateSync(isUseSynchronous);
+                    assetHandle = await _PoolObjectFather.InstantiateSync(isUseSynchronous);
                 }
 
                 // AssetHandle assetHandle = isUsePoolObject ? _PoolObjectFather : _PoolObjectFather;
-             
+
                 return CreateInstance<T>(isActive, assetHandle);
             }
 
@@ -279,9 +287,10 @@ namespace Fort23.UTool
             AssetHandle assetHandle2 = _PoolObjectFather;
             if (!isUsePoolObject)
             {
-                assetHandle2= await _PoolObjectFather.InstantiateSync(isUseSynchronous);
+                assetHandle2 = await _PoolObjectFather.InstantiateSync(isUseSynchronous);
             }
-            assetHandle2= await assetHandle2.InstantiateSync(isUseSynchronous);
+
+            assetHandle2 = await assetHandle2.InstantiateSync(isUseSynchronous);
             return CreateInstance<T>(isActive, assetHandle2);
         }
 
@@ -509,14 +518,16 @@ namespace Fort23.UTool
         /// <typeparam name="T"></typeparam>
         /// <returns></returns>
         public async CTask<T> FetchAsync<T>(string prefabName, System.Action<T> callBack = null, Clock clock = null,
-            bool Prestore = false, string poolName = null,bool isUseSynchronous=false) where T : IGObjectPoolInterface
+            bool Prestore = false, string poolName = null, bool isUseSynchronous = false)
+            where T : IGObjectPoolInterface
         {
             if (!prefabName.Contains(".prefab"))
             {
                 prefabName += ".prefab";
             }
 
-            T poolInerface = await FetchObjectAsync<T>(prefabName, clock, Prestore, poolName,isUseSynchronous:isUseSynchronous);
+            T poolInerface = await FetchObjectAsync<T>(prefabName, clock, Prestore, poolName,
+                isUseSynchronous: isUseSynchronous);
             if (Prestore)
             {
                 return default;
@@ -570,7 +581,7 @@ namespace Fort23.UTool
 
 #endif
         private async CTask<T> FetchObjectAsync<T>(string prefabName, Clock clock, bool Prestore, string poolName,
-            bool isActive = true,bool isUseSynchronous=false) where T : IGObjectPoolInterface
+            bool isActive = true, bool isUseSynchronous = false) where T : IGObjectPoolInterface
         {
 #if !COMBAT_SERVER
             try
@@ -581,7 +592,7 @@ namespace Fort23.UTool
 
 
                 // 加一个协程锁,让同时加载资源的时候lock住
-                using (await CoroutineLockComponent.Instance.Wait(poolName,20000))
+                // using (await CoroutineLockComponent.Instance.Wait(poolName,20000))
                 {
                     if (clock != null && clock.isBreak)
                     {
@@ -592,11 +603,11 @@ namespace Fort23.UTool
                     {
                         if (Prestore)
                         {
-                            await gameObjectQueue.Preset<T>(clock,isUseSynchronous);
+                            await gameObjectQueue.Preset<T>(clock, isUseSynchronous);
                             return default;
                         }
 
-                        return await gameObjectQueue.Dequeue<T>(isActive, clock,isUseSynchronous);
+                        return await gameObjectQueue.Dequeue<T>(isActive, clock, isUseSynchronous);
                     }
 
                     if (!this._dictionary.TryGetValue(poolName, out gameObjectQueue))
@@ -611,11 +622,11 @@ namespace Fort23.UTool
 
                     if (Prestore)
                     {
-                        await gameObjectQueue.Preset<T>(clock,isUseSynchronous);
+                        await gameObjectQueue.Preset<T>(clock, isUseSynchronous);
                         return default;
                     }
 
-                    return await gameObjectQueue.Dequeue<T>(isActive, clock,isUseSynchronous);
+                    return await gameObjectQueue.Dequeue<T>(isActive, clock, isUseSynchronous);
                 }
             }
             catch (Exception e)

+ 39 - 0
Assets/Scripts/GameData/ExcelConfig/DropConfig.cs

@@ -0,0 +1,39 @@
+// Auto Generated Code By excel2json
+// Generate From Excel\ChouKa.xlsx. SheetName: DropConfig
+
+using System;
+using Fort23.GameData;
+
+namespace Excel2Json
+{
+	[Config(prefab = "DropConfig.json")]
+	public partial class DropConfigHolder : ConfigHolder<DropConfig>
	{
+	}
+
+
+	[Serializable]
+	public struct DropConfig : IConfig
	{
+		public int GetID() {return ID;} 
+		/// <summary>
+		///掉落ID
+		/// </summary>
+public int ID;
+
+
+		/// <summary>
+		///掉落组ID
+		/// </summary>
+public int[] dropGroupID;
+
+
+
+		/// <summary>
+		///显示ID -99:通过工厂表决定显示
+		/// </summary>
+public int[] showItemId;
+
+
+	}
+
+}
+// End of Auto Generated Code

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

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: Xi9LvC2vVC34Cmfo/f+z84R16Bx65KHI6Qw9QPjfU/Cs/upWVd3xLGc=
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 44 - 0
Assets/Scripts/GameData/ExcelConfig/DropCountConfig.cs

@@ -0,0 +1,44 @@
+// Auto Generated Code By excel2json
+// Generate From Excel\ChouKa.xlsx. SheetName: DropCountConfig
+
+using System;
+using Fort23.GameData;
+
+namespace Excel2Json
+{
+	[Config(prefab = "DropCountConfig.json")]
+	public partial class DropCountConfigHolder : ConfigHolder<DropCountConfig>
	{
+	}
+
+
+	[Serializable]
+	public struct DropCountConfig : IConfig
	{
+		public int GetID() {return ID;} 
+		/// <summary>
+		///
+		/// </summary>
+public int ID;
+
+
+		/// <summary>
+		///
+		/// </summary>
+public int groupID;
+
+
+		/// <summary>
+		///最高比例
+		/// </summary>
+public int proportion;
+
+
+		/// <summary>
+		///权重
+		/// </summary>
+public int weight;
+
+
+	}
+
+}
+// End of Auto Generated Code

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

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

+ 33 - 0
Assets/Scripts/GameData/ExcelConfig/DropGroupConfig.cs

@@ -0,0 +1,33 @@
+// Auto Generated Code By excel2json
+// Generate From Excel\ChouKa.xlsx. SheetName: DropGroupConfig
+
+using System;
+using Fort23.GameData;
+
+namespace Excel2Json
+{
+	[Config(prefab = "DropGroupConfig.json")]
+	public partial class DropGroupConfigHolder : ConfigHolder<DropGroupConfig>
	{
+	}
+
+
+	[Serializable]
+	public struct DropGroupConfig : IConfig
	{
+		public int GetID() {return ID;} 
+		/// <summary>
+		///掉落组ID
+		/// </summary>
+public int ID;
+
+
+
+		/// <summary>
+		///
+		/// </summary>
+public int[] dropItemID;
+
+
+	}
+
+}
+// End of Auto Generated Code

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

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: DCge5H+lUXsgfUr+RrClj+nTs3ieux22dJwlXkA7P/PWlRP+6S/75Z4=
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 51 - 0
Assets/Scripts/GameData/ExcelConfig/DropItemConfig.cs

@@ -0,0 +1,51 @@
+// Auto Generated Code By excel2json
+// Generate From Excel\ChouKa.xlsx. SheetName: DropItemConfig
+
+using System;
+using Fort23.GameData;
+
+namespace Excel2Json
+{
+	[Config(prefab = "DropItemConfig.json")]
+	public partial class DropItemConfigHolder : ConfigHolder<DropItemConfig>
	{
+	}
+
+
+	[Serializable]
+	public struct DropItemConfig : IConfig
	{
+		public int GetID() {return ID;} 
+		/// <summary>
+		///ID号
+		/// </summary>
+public int ID;
+
+
+
+		/// <summary>
+		///道具ID
+		/// </summary>
+public int[] itemID;
+
+
+		/// <summary>
+		///掉落最小数量
+		/// </summary>
+public int dropMinV;
+
+
+		/// <summary>
+		///掉落最大数量
+		/// </summary>
+public int dropMaxV;
+
+
+		/// <summary>
+		///掉落数量使用哪种分布方式 对应DropCountConfig的GroupID 默认-1,平均分布
+		/// </summary>
+public int dropCountGoupID;
+
+
+	}
+
+}
+// End of Auto Generated Code

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

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: BntNsy2rAC+cBhFVKicNa6iusEwPne+Dcz4F89XaxyrimeAUR8zSl/U=
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 9 - 0
Assets/Scripts/GameLogic/Combat/CombatEvent/HeroLvUpgradeEventData.cs

@@ -0,0 +1,9 @@
+using Core.Utility.Event;
+
+namespace Common.Utility.CombatEvent
+{
+    public class HeroLvUpgradeEventData : EventDataBasic<HeroLvUpgradeEventData>
+    {
+        public int heroModelID;
+    }
+}

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

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 0402f8e7dca441fdace61cb0c172ffcf
+timeCreated: 1732699300

+ 1 - 1
Assets/Scripts/GameLogic/Combat/CombatTool/CombatCameraControllder.cs

@@ -49,7 +49,7 @@ namespace GameLogic.Combat.CombatTool
 
                 p /= combatHeroEntities.Length;
                 // Vector3 tp = root.TransformVector(new Vector3(0, 0, -20));
-                root.position = Vector3.Lerp(root.position, new Vector3(p.x, root.position.y,  p.z+13), 0.3f);
+                root.position = Vector3.Lerp(root.position, new Vector3(p.x, root.position.y,  p.z+13), 0.1f);
             }
         }
 

+ 1 - 0
Assets/Scripts/GameLogic/Combat/CombatTool/CombatHeroController.cs

@@ -52,6 +52,7 @@ namespace GameLogic.Combat.CombatTool
             heroDie.Remove(combatHeroEntity);
             combatHeroEntity.CurrCombatHeroInfo.hp = combatHeroEntity.MaxCombatHeroInfo.hp;
             AddHero(combatHeroEntity);
+            combatHeroEntity.HeroResurrection();
         }
 
         public void Update(float t)

+ 20 - 1
Assets/Scripts/GameLogic/Combat/CombatType/LevelBattleCombatType.cs

@@ -197,7 +197,8 @@ namespace GameLogic.Combat.CombatType
         protected override async CTask ProStartGame()
         {
             CTaskAwaitBuffer cTaskAwaitBuffer = new CTaskAwaitBuffer();
-            TestCombat(cTaskAwaitBuffer);
+            // TestCombat(cTaskAwaitBuffer);
+            InitPlayerHero(cTaskAwaitBuffer);
             InitTestCombatBoChi();
             CreateEnemy(cTaskAwaitBuffer);
             await cTaskAwaitBuffer.WaitAll();
@@ -338,6 +339,24 @@ namespace GameLogic.Combat.CombatType
             }
         }
 
+        private void InitPlayerHero(CTaskAwaitBuffer cTaskAwaitBuffer)
+        {
+            for (int i = 0; i < PlayerManager.Instance.heroListInLead.Count; i++)
+            {
+                int index = i;
+                CombatHeroEntity heroEntity = new CombatHeroEntity();
+                heroEntity.IsEnemy = false;
+                heroEntity.number = i;
+             
+                cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), PlayerManager.Instance.heroListInLead[i],
+                    delegate(CombatHeroEntity entity)
+                    {
+                        combatController.CombatHeroController.AddHero(entity);
+                        heroEntity.combatHeroGameObject.SetPosition(_combatScenesConfig.heroPoint[index].position);
+                    }));
+            }
+        }
+
         private void TestCombat(CTaskAwaitBuffer cTaskAwaitBuffer)
         {
             testCombatHeroConfig = GameObject.FindObjectOfType<TestCombatHeroConfig>();

+ 9 - 2
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroEntity.cs

@@ -80,7 +80,7 @@ public class CombatHeroEntity : ITimeLineSpecialDotPos, ILifeCycle, ITimeLineAni
         timeLienData.DeserializeData();
         assetHandle.Release();
         combatHeroTimeLineControl = new CombatHeroTimeLineControl();
-        combatHeroTimeLineControl.Init(timeLienData);
+        combatHeroTimeLineControl.Init(this,timeLienData);
 
         combatHeroGameObject = new CombatHeroGameObject();
         combatHeroGameObject.Init(this, poolInterface);
@@ -167,7 +167,14 @@ public class CombatHeroEntity : ITimeLineSpecialDotPos, ILifeCycle, ITimeLineAni
     {
         return CombatHeroSkillControl.NormalAttSpeedScale;
     }
-
+    public void HeroResurrection()
+    {
+        isDie = false;
+        CombatAIBasic.ChangeState(CombatHeroStateType.idle);
+        HeroHpUpdateEventData heroHpUpdateEventData = HeroHpUpdateEventData.Create();
+        heroHpUpdateEventData.combatHeroEntity = this;
+        CombatEventManager.Instance.Dispatch(CombatEventType.HeroHpUpdate, heroHpUpdateEventData);
+    }
     public void HeroDie(HarmReturnInfo harmReturnInfo)
     {
         heroDieNodeId = CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount;

+ 16 - 1
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroTimeLineControl.cs

@@ -15,11 +15,26 @@ namespace GameLogic.Combat.Hero
         private BetterList<TimeLineEventLogicGroupBasic> _currRunEventLogicGroupList =
             new BetterList<TimeLineEventLogicGroupBasic>();
 
-        public void Init(TimeLienData timeLienData)
+        private CombatHeroEntity combatHeroEntity;
+        public void Init(CombatHeroEntity combatHeroEntity, TimeLienData timeLienData)
         {
+            this.combatHeroEntity = combatHeroEntity;
             _timeLineData = timeLienData;
         }
 
+        public TimeLineEventLogicGroupBasic AddEventLogicGroup(string groupName)
+        {
+            TimeLineEventLogicGroupBasic timeLineEventLogicGroup =
+                combatHeroEntity.combatHeroTimeLineControl.TimeLineData
+                    .GetTimeLineEventLogicGroup<TimeLineEventLogicGroupBasic>(groupName, null);
+            if (timeLineEventLogicGroup != null)
+            {
+                timeLineEventLogicGroup.SetCombatInfo(combatHeroEntity, null, null, new TriggerData(), null);
+                combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup(timeLineEventLogicGroup);
+            }
+            return timeLineEventLogicGroup;
+        }
+
         public void AddEventLogicGroup(TimeLineEventLogicGroupBasic eventLogicGroup)
         {
             _currRunEventLogicGroupList.Add(eventLogicGroup);

+ 7 - 6
Assets/Scripts/GameLogic/Combat/Hero/State/CombatHeroDieState.cs

@@ -20,17 +20,17 @@ namespace GameLogic.Combat.Hero.State
             return isSwitch;
         }
 
+        
+        
         protected override void ProEnter()
         {
 
             isSwitch = false;
             resurrectionTime = 0;
-            TimeLineEventLogicGroupBasic timeLineEventLogicGroup =
-                combatHeroEntity.combatHeroTimeLineControl.TimeLineData
-                    .GetTimeLineEventLogicGroup<TimeLineEventLogicGroupBasic>("die", null);
+            TimeLineEventLogicGroupBasic timeLineEventLogicGroup=combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("die");
+          
             if (timeLineEventLogicGroup != null)
             {
-                timeLineEventLogicGroup.SetCombatInfo(combatHeroEntity, null, null, new TriggerData(), null);
                 timeLineEventLogicGroup.TimeLineUpdateEnd = delegate
                 {
                     if (combatHeroEntity.IsEnemy)
@@ -40,10 +40,10 @@ namespace GameLogic.Combat.Hero.State
                     else
                     {
                         isStartResurrection = true;
+                        combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("die_idle");
                     }
-
                 };
-                combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup(timeLineEventLogicGroup);
+               
             }
             else
             {
@@ -54,6 +54,7 @@ namespace GameLogic.Combat.Hero.State
                 else
                 {
                     isStartResurrection = true;
+                    combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("die_idle");
                 }
             }
 

+ 24 - 4
Assets/Scripts/GameLogic/Combat/Hero/State/CombatResurrectionState.cs

@@ -16,13 +16,33 @@ namespace GameLogic.Combat.Hero.State
 
         protected override void ProEnter()
         {
-            if (combatHeroEntity.heroDieNodeId != CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount&&CombatController.currActiveCombat.CombatHeroController.followTarget!=null)
+            TimeLineEventLogicGroupBasic timeLineEventLogicGroupBasic=  combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("die_up");
+
+            if (timeLineEventLogicGroupBasic != null)
+            {
+                timeLineEventLogicGroupBasic.TimeLineUpdateEnd= delegate
+                {
+                    if (combatHeroEntity.heroDieNodeId != CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount&&CombatController.currActiveCombat.CombatHeroController.followTarget!=null)
+                    {
+                        combatHeroEntity.combatHeroGameObject.SetPosition(CombatController.currActiveCombat.CombatHeroController.followTarget.dotPos+new Vector3(1,0,0));
+                    }
+
+                    CombatController.currActiveCombat.CombatHeroController.ResurrectionDieHero(combatHeroEntity);
+                    combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
+                };
+            }
+            else
             {
-                combatHeroEntity.combatHeroGameObject.SetPosition(CombatController.currActiveCombat.CombatHeroController.followTarget.dotPos+new Vector3(1,0,0));
+                if (combatHeroEntity.heroDieNodeId != CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount&&CombatController.currActiveCombat.CombatHeroController.followTarget!=null)
+                {
+                    combatHeroEntity.combatHeroGameObject.SetPosition(CombatController.currActiveCombat.CombatHeroController.followTarget.dotPos+new Vector3(1,0,0));
+                }
+
+                CombatController.currActiveCombat.CombatHeroController.ResurrectionDieHero(combatHeroEntity);
+                combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
             }
 
-            CombatController.currActiveCombat.CombatHeroController.ResurrectionDieHero(combatHeroEntity);
-            combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
+
         }
 
         protected override void ProUpdate(float t)

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

@@ -50,13 +50,15 @@ namespace GameLogic.Hero
             CalAttribute();
         }
 
-        public void Upgrade()
+        public HeroInfo Upgrade()
         {
             level.Value++;
             powerUpConfig = ConfigComponent.Instance.Get<HeroPowerUpConfig>(level.Value);
             CalFactor();
             CalBasicAttribute();
             PlayerManager.Instance.SaveHeroData(this);
+
+            return this;
         }
 
         public void Promote()

+ 7 - 2
Assets/Scripts/GameLogic/Player/AccountFileInfo.cs

@@ -83,11 +83,16 @@ public class AccountFileInfo : Singleton<AccountFileInfo>
             heroPowerId = 1,
             heroPromoteId = 3
         };
-
+        HeroData heroData4 = new HeroData
+        {
+            heroModelId = 113,
+            heroPowerId = 1,
+            heroPromoteId = 3
+        };
         playerData.HeroListInLeadDatas.Add(heroData1);
         playerData.HeroListInLeadDatas.Add(heroData2);
         playerData.HeroListInLeadDatas.Add(heroData3);
-        
+        playerData.HeroListInLeadDatas.Add(heroData4);
         SavePlayerData();
     }
     

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

@@ -34,6 +34,66 @@ public class PlayerManager : Singleton<PlayerManager>
         }
     }
 
+    public void InitTestHero()
+    {
+        heroListInLead.Clear();
+        // AccountFileInfo.Instance.LoadPlayerData();
+        
+        AccountFileInfo.HeroData heroData1 = new AccountFileInfo.HeroData
+        {
+            heroModelId = 105,
+            heroPowerId = 1,
+            heroPromoteId = 3
+        };
+        
+        AccountFileInfo.HeroData heroData2 = new AccountFileInfo.HeroData
+        {
+            heroModelId = 107,
+            heroPowerId = 1,
+            heroPromoteId = 3
+        };
+        
+        AccountFileInfo.HeroData heroData3 = new AccountFileInfo.HeroData
+        {
+            heroModelId = 116,
+            heroPowerId = 1,
+            heroPromoteId = 3
+        };
+        AccountFileInfo.HeroData heroData4 = new AccountFileInfo.HeroData
+        {
+            heroModelId = 113,
+            heroPowerId = 1,
+            heroPromoteId = 3
+        };
+        AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Clear();
+        AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Add(heroData1);
+        AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Add(heroData2);
+        AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Add(heroData3);
+        AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Add(heroData4);
+        
+        for (int i = 0; i < AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Count; i++)
+        {
+            AccountFileInfo.HeroData heroData = AccountFileInfo.Instance.playerData.HeroListInLeadDatas[i];
+            HeroInfo heroInfo = new HeroInfo();
+            heroInfo.InitHero(heroData);
+            heroListInLead.Add(heroInfo);
+        }
+    }
+
+    public HeroInfo GetHeroInfo(int modelID)
+    {
+        for (int i = 0; i < heroListInLead.Count; i++)
+        {
+            HeroInfo info = heroListInLead[i];
+            if (info.modelID == modelID)
+            {
+                return info;
+            }
+        }
+
+        return null;
+    }
+
     private int leadHeroIdx = 0;
 
     /// <summary>

+ 1 - 0
Assets/Scripts/GameUI/GameApplction.cs

@@ -53,6 +53,7 @@ public class GameApplction : MonoBehaviour
         CustomTweenManager.Init();
 
         PlayerManager.Instance.Init();
+        PlayerManager.Instance.InitTestHero();
         //主UI加载
         MainSceneController.Instance.Init();
 

+ 27 - 1
Assets/Scripts/GameUI/UI/Hero/HeroDetailPanel.cs

@@ -1,5 +1,7 @@
+using Common.Utility.CombatEvent;
 using Core.Language;
 using Excel2Json;
+using Fort23.Core;
 using Fort23.UTool;
 using GameLogic.Hero;
 using UnityEngine.UI;
@@ -9,6 +11,9 @@ namespace Fort23.Mono
     [UIBinding(prefab = "HeroDetailPanel"  )]
     public partial class HeroDetailPanel : UIPanel
     {
+        
+        private HeroInfo heroInfo;
+        
         private void Init()
         {
             // InitHeroDetailPanel();
@@ -22,8 +27,24 @@ namespace Fort23.Mono
         public override void AddButtonEvent()
         {
             btnBack.onClick.AddListener(OnClickClose);
+            btnUpgrade.onClick.AddListener(OnClickUpgrade);
+            btnPromote.onClick.AddListener(OnClickPromote);
         }
 
+
+        private void OnClickPromote()
+        {
+            
+        }
+        
+        private void OnClickUpgrade()
+        {
+            heroInfo = heroInfo.Upgrade();
+            UpdateAttributeUI();
+            HeroLvUpgradeEventData data = new HeroLvUpgradeEventData();
+            data.heroModelID = heroInfo.modelID;
+            EventManager.Instance.Dispatch(CustomEventType.HeroUpgrade, data);
+        }
         private void OnClickClose()
         {
             UIManager.Instance.HideUIUIPanel(this);
@@ -31,6 +52,7 @@ namespace Fort23.Mono
 
         public void InitHeroDetailPanel(HeroInfo heroInfo)
         {
+            this.heroInfo = heroInfo;
             iconZhiYe.icon_name = heroInfo.iconZhiYe;
             heroName.text = LanguageManager.Instance.Text(heroInfo.modelConfig.name);
             HeroUITools.SetStarShow(stars, heroInfo.star.Value);
@@ -51,11 +73,15 @@ namespace Fort23.Mono
                     break;
             }
 
+            UpdateAttributeUI();
+        }
+
+        public void UpdateAttributeUI()
+        {
             txtHP.text = heroInfo.hp.Value.ToString();
             txtATK.text = heroInfo.attack.Value.ToString();
             txtDEF.text = heroInfo.defense.Value.ToString();
             txtSHANBI.text = heroInfo.shanbi.Value.ToString();
-
             txtLv.text = heroInfo.level.Value.ToString();
             txtExpGain.text = heroInfo.expGain.Value.ToString();
         }

+ 22 - 0
Assets/Scripts/GameUI/UI/Hero/HeroDetailPanelData.cs

@@ -208,6 +208,28 @@ namespace Fort23.Mono
 	      return _lockObj;
 	     }
 	   }
+	  private Button _btnUpgrade;
+	  public Button btnUpgrade
+	   {
+	   get{
+	      if (_btnUpgrade == null)
+	       {
+	         _btnUpgrade  = GetUIUnit<Button>("btnUpgrade"); 
+	       }
+	      return _btnUpgrade;
+	     }
+	   }
+	  private Button _btnPromote;
+	  public Button btnPromote
+	   {
+	   get{
+	      if (_btnPromote == null)
+	       {
+	         _btnPromote  = GetUIUnit<Button>("btnPromote"); 
+	       }
+	      return _btnPromote;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{

+ 2 - 42
Assets/Scripts/GameUI/UI/Hero/WidgetHero.cs

@@ -63,48 +63,8 @@ namespace Fort23.Mono
             
             HeroUITools.SetStarShow(stars, heroInfo.star.Value);
             
-            // 最大星级展示个数(6星,只显示一颗星星,换颜色)
-            // int maxShowStar = 5;
-            //
-            // // 计算 当前星级 应该用什么星星的表现
-            // int group = (heroInfo.star - 1) / maxShowStar;
-            //
-            // int i = 1;
-            // foreach (GameObject star in stars)
-            // {
-            //     // Image image = star.GetComponent<Image>();
-            //
-            //     SetStarImg(group, star);
-            //     
-            //     if (heroInfo.star >= i)
-            //     {
-            //         star.SetActive(true);
-            //     }
-            //     else
-            //     {
-            //         star.SetActive(false);
-            //     }
-            //     i++;
-            // }
+            
         }
-
-        // private void SetStarImg(int group, GameObject starObj)
-        // {
-        //     Image image = starObj.GetComponent<Image>();
-        //     // 执行对应的逻辑  (0)GradeIcon_Star_s_Yellow  (1)GradeIcon_Star_s_Premium
-        //     switch (group)
-        //     {
-        //         case 0: // n = 1~5
-        //             image.name = "GradeIcon_Star_s_Yellow";
-        //             break;
-        //         case 1: // n = 6~10
-        //             image.name = "GradeIcon_Star_s_Premium";    
-        //             break;
-        //         default: // 其他情况
-        //             image.name = "GradeIcon_Star_s_Yellow";
-        //             break;
-        //     }
-        // }
-
+        
     }
 }

+ 1 - 1
Assets/Scripts/GameUI/UI/HeroHpWidget.cs

@@ -61,7 +61,7 @@ namespace Fort23.Mono
         private void HeroDie(IEventData iEventData)
         {
             HeroDieEventData heroDieEventData = iEventData as HeroDieEventData;
-            if (heroDieEventData.combatHeroEntity == combatHeroEntity)
+            if (heroDieEventData.combatHeroEntity == combatHeroEntity&&combatHeroEntity.IsEnemy)
             {
                 GObjectPool.Instance.Recycle(this);
             }

BIN
Excel2Json/Excel/HeroModel.xlsx


+ 191 - 345
UserSettings/Layouts/default-2022.dwlt

@@ -1,54 +1,6 @@
 %YAML 1.1
 %TAG !u! tag:yousandi.cn,2023:
 --- !u!114 &1
-MonoBehaviour:
-  m_ObjectHideFlags: 52
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_PixelRect:
-    serializedVersion: 2
-    x: -284
-    y: -1312
-    width: 478
-    height: 1032
-  m_ShowMode: 0
-  m_Title: Simulator
-  m_RootView: {fileID: 5}
-  m_MinSize: {x: 200, y: 221}
-  m_MaxSize: {x: 4000, y: 4021}
-  m_Maximized: 0
---- !u!114 &2
-MonoBehaviour:
-  m_ObjectHideFlags: 52
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_PixelRect:
-    serializedVersion: 2
-    x: 578
-    y: 298
-    width: 641
-    height: 603
-  m_ShowMode: 0
-  m_Title: Build Settings
-  m_RootView: {fileID: 7}
-  m_MinSize: {x: 640, y: 601}
-  m_MaxSize: {x: 4000, y: 4021}
-  m_Maximized: 0
---- !u!114 &3
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -62,17 +14,17 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   m_PixelRect:
     serializedVersion: 2
-    x: 112
-    y: 66
-    width: 1546
-    height: 971
+    x: 9
+    y: 51
+    width: 2543
+    height: 1333
   m_ShowMode: 4
-  m_Title: Hierarchy
-  m_RootView: {fileID: 8}
-  m_MinSize: {x: 875, y: 300}
+  m_Title: Inspector
+  m_RootView: {fileID: 4}
+  m_MinSize: {x: 875, y: 321}
   m_MaxSize: {x: 10000, y: 10000}
   m_Maximized: 0
---- !u!114 &4
+--- !u!114 &2
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -87,69 +39,18 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 0
+    x: 819
     y: 0
-    width: 478
-    height: 1032
-  m_MinSize: {x: 200, y: 221}
-  m_MaxSize: {x: 4000, y: 4021}
-  m_ActualView: {fileID: 24}
-  m_Panes:
-  - {fileID: 24}
-  m_Selected: 0
-  m_LastSelected: 0
---- !u!114 &5
-MonoBehaviour:
-  m_ObjectHideFlags: 52
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_Children:
-  - {fileID: 4}
-  m_Position:
-    serializedVersion: 2
-    x: 0
-    y: 0
-    width: 478
-    height: 1032
-  m_MinSize: {x: 200, y: 221}
-  m_MaxSize: {x: 4000, y: 4021}
-  vertical: 0
-  controlID: 218186
-  draggingID: 0
---- !u!114 &6
-MonoBehaviour:
-  m_ObjectHideFlags: 52
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
-  m_Name: BuildPlayerWindow
-  m_EditorClassIdentifier: 
-  m_Children: []
-  m_Position:
-    serializedVersion: 2
-    x: 0
-    y: 0
-    width: 641
-    height: 603
-  m_MinSize: {x: 640, y: 601}
-  m_MaxSize: {x: 4000, y: 4021}
-  m_ActualView: {fileID: 18}
+    width: 411
+    height: 919
+  m_MinSize: {x: 202, y: 221}
+  m_MaxSize: {x: 4002, y: 4021}
+  m_ActualView: {fileID: 14}
   m_Panes:
-  - {fileID: 18}
+  - {fileID: 14}
   m_Selected: 0
   m_LastSelected: 0
---- !u!114 &7
+--- !u!114 &3
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -162,19 +63,20 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   m_Children:
-  - {fileID: 6}
+  - {fileID: 9}
+  - {fileID: 2}
   m_Position:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 641
-    height: 603
-  m_MinSize: {x: 640, y: 601}
-  m_MaxSize: {x: 4000, y: 4021}
+    width: 1230
+    height: 919
+  m_MinSize: {x: 200, y: 50}
+  m_MaxSize: {x: 16192, y: 8096}
   vertical: 0
-  controlID: 215509
+  controlID: 34
   draggingID: 0
---- !u!114 &8
+--- !u!114 &4
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -187,22 +89,22 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   m_Children:
-  - {fileID: 9}
-  - {fileID: 11}
-  - {fileID: 10}
+  - {fileID: 5}
+  - {fileID: 7}
+  - {fileID: 6}
   m_Position:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 1546
-    height: 971
+    width: 2543
+    height: 1333
   m_MinSize: {x: 875, y: 300}
   m_MaxSize: {x: 10000, y: 10000}
   m_UseTopView: 1
   m_TopViewHeight: 30
   m_UseBottomView: 1
   m_BottomViewHeight: 20
---- !u!114 &9
+--- !u!114 &5
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -219,12 +121,12 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 1546
+    width: 2543
     height: 30
   m_MinSize: {x: 0, y: 0}
   m_MaxSize: {x: 0, y: 0}
   m_LastLoadedLayoutName: 
---- !u!114 &10
+--- !u!114 &6
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -240,12 +142,12 @@ MonoBehaviour:
   m_Position:
     serializedVersion: 2
     x: 0
-    y: 951
-    width: 1546
+    y: 1313
+    width: 2543
     height: 20
   m_MinSize: {x: 0, y: 0}
   m_MaxSize: {x: 0, y: 0}
---- !u!114 &11
+--- !u!114 &7
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -258,22 +160,22 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   m_Children:
+  - {fileID: 8}
+  - {fileID: 11}
   - {fileID: 12}
-  - {fileID: 15}
-  - {fileID: 16}
-  - {fileID: 17}
+  - {fileID: 13}
   m_Position:
     serializedVersion: 2
     x: 0
     y: 30
-    width: 1546
-    height: 921
-  m_MinSize: {x: 400, y: 100}
-  m_MaxSize: {x: 32384, y: 16192}
+    width: 2543
+    height: 1283
+  m_MinSize: {x: 500, y: 100}
+  m_MaxSize: {x: 40480, y: 16192}
   vertical: 0
-  controlID: 198560
+  controlID: 484
   draggingID: 0
---- !u!114 &12
+--- !u!114 &8
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -286,20 +188,20 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   m_Children:
-  - {fileID: 13}
-  - {fileID: 14}
+  - {fileID: 3}
+  - {fileID: 10}
   m_Position:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 466.5
-    height: 921
-  m_MinSize: {x: 100, y: 100}
-  m_MaxSize: {x: 8096, y: 16192}
+    width: 1230
+    height: 1283
+  m_MinSize: {x: 200, y: 100}
+  m_MaxSize: {x: 16192, y: 16192}
   vertical: 1
-  controlID: 198561
+  controlID: 33
   draggingID: 0
---- !u!114 &13
+--- !u!114 &9
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -316,16 +218,16 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 466.5
-    height: 366
+    width: 819
+    height: 919
   m_MinSize: {x: 201, y: 221}
   m_MaxSize: {x: 4001, y: 4021}
-  m_ActualView: {fileID: 19}
+  m_ActualView: {fileID: 15}
   m_Panes:
-  - {fileID: 19}
+  - {fileID: 15}
   m_Selected: 0
   m_LastSelected: 0
---- !u!114 &14
+--- !u!114 &10
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -341,17 +243,17 @@ MonoBehaviour:
   m_Position:
     serializedVersion: 2
     x: 0
-    y: 366
-    width: 466.5
-    height: 555
+    y: 919
+    width: 1230
+    height: 364
   m_MinSize: {x: 101, y: 121}
   m_MaxSize: {x: 4001, y: 4021}
-  m_ActualView: {fileID: 20}
+  m_ActualView: {fileID: 16}
   m_Panes:
-  - {fileID: 20}
+  - {fileID: 16}
   m_Selected: 0
   m_LastSelected: 0
---- !u!114 &15
+--- !u!114 &11
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -366,18 +268,18 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 466.5
+    x: 1230
     y: 0
-    width: 266
-    height: 921
-  m_MinSize: {x: 202, y: 221}
-  m_MaxSize: {x: 4002, y: 4021}
-  m_ActualView: {fileID: 21}
+    width: 388
+    height: 1283
+  m_MinSize: {x: 200, y: 200}
+  m_MaxSize: {x: 4000, y: 4000}
+  m_ActualView: {fileID: 17}
   m_Panes:
-  - {fileID: 21}
+  - {fileID: 17}
   m_Selected: 0
   m_LastSelected: 0
---- !u!114 &16
+--- !u!114 &12
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -392,18 +294,18 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 732.5
+    x: 1618
     y: 0
-    width: 379
-    height: 921
+    width: 371
+    height: 1283
   m_MinSize: {x: 232, y: 271}
   m_MaxSize: {x: 10002, y: 10021}
-  m_ActualView: {fileID: 22}
+  m_ActualView: {fileID: 18}
   m_Panes:
-  - {fileID: 22}
+  - {fileID: 18}
   m_Selected: 0
   m_LastSelected: 0
---- !u!114 &17
+--- !u!114 &13
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -418,18 +320,18 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 1111.5
+    x: 1989
     y: 0
-    width: 434.5
-    height: 921
+    width: 554
+    height: 1283
   m_MinSize: {x: 276, y: 71}
   m_MaxSize: {x: 4001, y: 4021}
-  m_ActualView: {fileID: 23}
+  m_ActualView: {fileID: 19}
   m_Panes:
-  - {fileID: 23}
+  - {fileID: 19}
   m_Selected: 0
   m_LastSelected: 0
---- !u!114 &18
+--- !u!114 &14
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -438,21 +340,21 @@ MonoBehaviour:
   m_GameObject: {fileID: 0}
   m_Enabled: 1
   m_EditorHideFlags: 0
-  m_Script: {fileID: 12043, guid: 0000000000000000e000000000000000, type: 0}
+  m_Script: {fileID: 13974, guid: 0000000000000000e000000000000000, type: 0}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_MinSize: {x: 640, y: 580}
+  m_MinSize: {x: 200, y: 200}
   m_MaxSize: {x: 4000, y: 4000}
   m_TitleContent:
-    m_Text: Build Settings
-    m_Image: {fileID: 0}
+    m_Text: Simulator
+    m_Image: {fileID: 8720083202187608617, guid: 0000000000000000d000000000000000, type: 0}
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 578
-    y: 298
-    width: 641
-    height: 582
+    x: 828
+    y: 81
+    width: 409
+    height: 898
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -463,29 +365,39 @@ MonoBehaviour:
     m_LastAppliedPresetName: Default
     m_SaveData: []
     m_OverlaysVisible: 1
-  m_TreeViewState:
-    scrollPos: {x: 0, y: 0}
-    m_SelectedIDs: 
-    m_LastClickedID: 0
-    m_ExpandedIDs: 
-    m_RenameOverlay:
-      m_UserAcceptedRename: 0
-      m_Name: 
-      m_OriginalName: 
-      m_EditFieldRect:
-        serializedVersion: 2
-        x: 0
-        y: 0
-        width: 0
-        height: 0
-      m_UserData: 0
-      m_IsWaitingForDelay: 0
-      m_IsRenaming: 0
-      m_OriginalEventType: 11
-      m_IsRenamingFilename: 0
-      m_ClientGUIView: {fileID: 0}
-    m_SearchString: 
---- !u!114 &19
+  m_SerializedViewNames:
+  - UnityEditor.GameView
+  m_SerializedViewValues:
+  - /Users/lcn/0Fort23Projects/XY001/Library/PlayModeViewStates/d60d5cdcd558546949e78131da8dbfc9
+  m_PlayModeViewName: Device Simulator
+  m_ShowGizmos: 0
+  m_TargetDisplay: 0
+  m_ClearColor: {r: 0, g: 0, b: 0, a: 1}
+  m_TargetSize: {x: 1125, y: 2436}
+  m_TextureFilterMode: 0
+  m_TextureHideFlags: 61
+  m_RenderIMGUI: 1
+  m_EnterPlayModeBehavior: 2
+  m_UseMipMap: 0
+  m_SimulatorState:
+    controlPanelVisible: 0
+    controlPanelWidth: 0
+    controlPanelFoldoutKeys:
+    - UnityEditor.DeviceSimulation.ApplicationSettingsPlugin
+    controlPanelFoldoutValues: 00
+    pluginNames:
+    - UnityEditor.DeviceSimulation.ApplicationSettingsPlugin
+    pluginStates:
+    - '{}'
+    scale: 33
+    fitToScreenEnabled: 1
+    rotationDegree: 0
+    highlightSafeAreaEnabled: 0
+    friendlyName: Apple iPhone XS
+    screenIndex: 0
+    networkReachability: 1
+    systemLanguage: 10
+--- !u!114 &15
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -501,14 +413,14 @@ MonoBehaviour:
   m_MaxSize: {x: 4000, y: 4000}
   m_TitleContent:
     m_Text: Scene
-    m_Image: {fileID: 8634526014445323508, guid: 0000000000000000d000000000000000, type: 0}
+    m_Image: {fileID: 2593428753322112591, guid: 0000000000000000d000000000000000, type: 0}
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 112
-    y: 96
-    width: 465.5
-    height: 345
+    x: 9
+    y: 81
+    width: 818
+    height: 898
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -875,14 +787,14 @@ MonoBehaviour:
   m_OverrideSceneCullingMask: 6917529027641081856
   m_SceneIsLit: 1
   m_SceneLighting: 1
-  m_2DMode: 1
+  m_2DMode: 0
   m_isRotationLocked: 0
   m_PlayAudio: 0
   m_AudioPlay: 0
   m_Position:
-    m_Target: {x: -0.3829853, y: -0.030267246, z: -0.022057882}
+    m_Target: {x: -11.307561, y: 0.13942158, z: -9.3319645}
     speed: 2
-    m_Value: {x: -0.3829853, y: -0.030267246, z: -0.022057882}
+    m_Value: {x: -11.307561, y: 0.13942158, z: -9.3319645}
   m_RenderMode: 0
   m_CameraMode:
     drawMode: 0
@@ -910,9 +822,9 @@ MonoBehaviour:
       m_Size: {x: 0, y: 0}
     yGrid:
       m_Fade:
-        m_Target: 0
+        m_Target: 1
         speed: 2
-        m_Value: 0
+        m_Value: 1
       m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4}
       m_Pivot: {x: 0, y: 0, z: 0}
       m_Size: {x: 1, y: 1}
@@ -924,21 +836,21 @@ MonoBehaviour:
       m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4}
       m_Pivot: {x: 0, y: 0, z: 0}
       m_Size: {x: 1, y: 1}
-    m_ShowGrid: 0
+    m_ShowGrid: 1
     m_GridAxis: 1
     m_gridOpacity: 0.5
   m_Rotation:
-    m_Target: {x: 0, y: 0, z: 0, w: 1}
+    m_Target: {x: -0.21685494, y: 0.78297204, z: -0.42146724, w: -0.4028579}
     speed: 2
-    m_Value: {x: 0, y: 0, z: 0, w: 1}
+    m_Value: {x: -0.21685492, y: 0.7829719, z: -0.42146719, w: -0.40285784}
   m_Size:
-    m_Target: 2.9594293
+    m_Target: 21.888878
     speed: 2
-    m_Value: 2.9594293
+    m_Value: 22.92029
   m_Ortho:
-    m_Target: 1
+    m_Target: 0
     speed: 2
-    m_Value: 1
+    m_Value: 0
   m_CameraSettings:
     m_Speed: 1
     m_SpeedNormalized: 0.5
@@ -954,14 +866,14 @@ MonoBehaviour:
     m_OcclusionCulling: 0
     m_EnableGDRP: 1
     m_BackfaceCulling: 0
-  m_LastSceneViewRotation: {x: -0.15547842, y: 0.59475, z: -0.11858795, w: -0.77976775}
+  m_LastSceneViewRotation: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226}
   m_LastSceneViewOrtho: 0
   m_ReplacementShader: {fileID: 0}
   m_ReplacementString: 
   m_SceneVisActive: 1
   m_LastLockedObject: {fileID: 0}
   m_ViewIsLockedToObject: 0
---- !u!114 &20
+--- !u!114 &16
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -977,14 +889,14 @@ MonoBehaviour:
   m_MaxSize: {x: 4000, y: 4000}
   m_TitleContent:
     m_Text: Console
-    m_Image: {fileID: -4950941429401207979, guid: 0000000000000000d000000000000000, type: 0}
+    m_Image: {fileID: -4327648978806127646, guid: 0000000000000000d000000000000000, type: 0}
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 112
-    y: 462
-    width: 465.5
-    height: 534
+    x: 9
+    y: 1000
+    width: 1229
+    height: 343
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -995,7 +907,7 @@ MonoBehaviour:
     m_LastAppliedPresetName: Default
     m_SaveData: []
     m_OverlaysVisible: 1
---- !u!114 &21
+--- !u!114 &17
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -1011,14 +923,14 @@ MonoBehaviour:
   m_MaxSize: {x: 4000, y: 4000}
   m_TitleContent:
     m_Text: Hierarchy
-    m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000, type: 0}
+    m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, type: 0}
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 578.5
-    y: 96
-    width: 264
-    height: 900
+    x: 1239
+    y: 81
+    width: 386
+    height: 1262
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -1032,9 +944,9 @@ MonoBehaviour:
   m_SceneHierarchy:
     m_TreeViewState:
       scrollPos: {x: 0, y: 0}
-      m_SelectedIDs: 
-      m_LastClickedID: 0
-      m_ExpandedIDs: f619f1ff9838f1ffa638f1ff344af1ff304bf1ff9a74f3ffa874f3ffa87cf3ff787ef3ffa27ef3ffcc7ef3fff67ef3fffc7ef3ffaa7ff3ffac7ff3ff7480f3ffdab2f3ff4cb3f3ff64b3f3ff68b3f3ff84b3f3ffb8b6f3ffc6b6f3ff24bef3fff4bef3ffb8dbf3ffc6dbf3ffdee6f3ff30e7f3ff32eaf3ff34eaf3ff3e19f5ff9c23f5ffee23f5ff7024f5ff8424f5ff9425f5ff4626f5fff026f5ff6e2af5ff7c2af5ffea2ff5ff98c3f5ffeac3f5ffeec6f5ff90f8f5ff94f8f5ffa2f8f5ffd613f7ffdc13f7ffe013f7ff5214f7ff6a14f7ff6e14f7ff8c14f7ff8439f7ff8839f7ff9639f7ff2887f7ff4087f7ff4487f7ff6287f7ff08d3f7ff0cd3f7ff1ad3f7fffad5f7ff94e4f7fface4f7ffb0e4f7ff3cecf7ff4aecf7ff4cecf7ffdc35f8fff435f8fff835f8ff1636f8ff025df8ff065df8ff145df8fff45ff8ff1464f8ff2264f8ff6473f8ff5423f9ff463ff9ff2040f9ff2840f9ffea40f9ff0841f9ff0c41f9ff1a41f9ffb0f8f9ffb60bfaff9c30fbff6a43fbfffc9ffbff0aa0fbff84aafbff78aefbff20bdfbff0e32feff9694feffbc94feffc094feffc894fefff894feff7c95feff8495feff6296feff6c96feff8896feffa496feffbe96fefff696feff2a97feff3297feff5097feff6097feff3499feff5e99feff8899feffb299feffbc99feff2a9afeff409afeff449afeff749afeff769afeff829afefff29cfeff749efeff96a1feff4ad9feff7ad9feff82d9feffdee5feffcce6feffd0e6feff54e7feff58e7feff5ee7feff62e7feff66e7feff78e7feff84e7feffa8e8feffc0e8feffc4e8feffe0e8fefff4e8fefff6e8feff02e9feff04e9feff40c3ffff46f7ffffa0f7ffffb4faffffc2faffffc4faffff0ee20100baee01004ef40100
+      m_SelectedIDs: 709e0000
+      m_LastClickedID: 40560
+      m_ExpandedIDs: c4faffff
       m_RenameOverlay:
         m_UserAcceptedRename: 0
         m_Name: 
@@ -1050,7 +962,7 @@ MonoBehaviour:
         m_IsRenaming: 0
         m_OriginalEventType: 11
         m_IsRenamingFilename: 0
-        m_ClientGUIView: {fileID: 15}
+        m_ClientGUIView: {fileID: 11}
       m_SearchString: 
     m_ExpandedScenes: []
     m_CurrenRootInstanceID: 0
@@ -1058,7 +970,7 @@ MonoBehaviour:
       m_IsLocked: 0
     m_CurrentSortingName: TransformSorting
   m_WindowGUID: d52fa66f7ca074a00968d8c52b6fc68f
---- !u!114 &22
+--- !u!114 &18
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -1074,14 +986,14 @@ MonoBehaviour:
   m_MaxSize: {x: 10000, y: 10000}
   m_TitleContent:
     m_Text: Project
-    m_Image: {fileID: -5179483145760003458, guid: 0000000000000000d000000000000000, type: 0}
+    m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, type: 0}
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 844.5
-    y: 96
-    width: 377
-    height: 900
+    x: 1627
+    y: 81
+    width: 369
+    height: 1262
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -1103,7 +1015,7 @@ MonoBehaviour:
     m_SkipHidden: 0
     m_SearchArea: 1
     m_Folders:
-    - Assets/Res/UIAtlas
+    - Assets/Scripts/GameUI
     m_Globs: []
     m_OriginalText: 
     m_ImportLogFlags: 0
@@ -1111,32 +1023,32 @@ MonoBehaviour:
   m_ViewMode: 1
   m_StartGridSize: 16
   m_LastFolders:
-  - Assets/Res/UIAtlas
+  - Assets/Scripts/GameUI
   m_LastFoldersGridSize: 16
-  m_LastProjectPath: /Users/lcn/0Fort23Projects/XY001
+  m_LastProjectPath: D:\unityProject\XY001
   m_LockTracker:
     m_IsLocked: 0
   m_FolderTreeState:
-    scrollPos: {x: 0, y: 48}
-    m_SelectedIDs: e2ea0000
-    m_LastClickedID: 60130
-    m_ExpandedIDs: 0000000000b3000002b3000004b3000006b3000008b300000cb300000eb3000010b3000012b3000014b3000016b300002cb3000034b3000056b3000060b3000066e8000068e800006ae800004ce9000086ed000088fb00009a820100b0820100b682010000ca9a3b
+    scrollPos: {x: 0, y: 406}
+    m_SelectedIDs: 749f0000
+    m_LastClickedID: 40820
+    m_ExpandedIDs: 00000000569f0000589f00005a9f00005c9f00005e9f0000609f0000629f0000649f0000669f0000689f00006a9f00006c9f00006e9f0000709f0000729f0000749f0000769f000000ca9a3bffffff7f
     m_RenameOverlay:
       m_UserAcceptedRename: 0
-      m_Name: icon
-      m_OriginalName: icon
+      m_Name: 
+      m_OriginalName: 
       m_EditFieldRect:
         serializedVersion: 2
         x: 0
         y: 0
         width: 0
         height: 0
-      m_UserData: 64390
+      m_UserData: 0
       m_IsWaitingForDelay: 0
       m_IsRenaming: 0
-      m_OriginalEventType: 0
+      m_OriginalEventType: 11
       m_IsRenamingFilename: 1
-      m_ClientGUIView: {fileID: 16}
+      m_ClientGUIView: {fileID: 12}
     m_SearchString: 
     m_CreateAssetUtility:
       m_EndAction: {fileID: 0}
@@ -1148,7 +1060,7 @@ MonoBehaviour:
     scrollPos: {x: 0, y: 0}
     m_SelectedIDs: 
     m_LastClickedID: 0
-    m_ExpandedIDs: 0000000000b3000002b3000004b3000006b3000008b300000cb300000eb3000010b3000012b3000014b3000016b300004cb3000060b3000066e8000068e800006ae8000086ed000000ca9a3b
+    m_ExpandedIDs: 00000000569f0000589f00005a9f00005c9f00005e9f0000609f0000629f0000649f0000669f0000689f00006a9f00006c9f00006e9f0000709f0000729f0000749f0000769f0000
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -1176,23 +1088,23 @@ MonoBehaviour:
     m_SelectedInstanceIDs: 
     m_LastClickedInstanceID: 0
     m_HadKeyboardFocusLastEvent: 1
-    m_ExpandedInstanceIDs: 929701000000000096ba0200f41802008618020048180200ae180200d4180200e01702003ac30a004c1a02000c1a02007e17020058190200c4890000641b0200e4180200caa1000066d5000052fb00003aa1000086a000006ca1000076a100000807010028a100007ca1000062a1000078a1000068a100003ca100006ea100002aa100002ea1000090a000006c1001008aa000003ea1000038a1000092a000008ea0000082a1000086a1000074a100004407010026070100
+    m_ExpandedInstanceIDs: 929701000000000096ba0200f41802008618020048180200ae180200d4180200e01702003ac30a004c1a02000c1a02007e17020058190200c4890000641b0200e4180200caa1000066d500006c960000
     m_RenameOverlay:
       m_UserAcceptedRename: 0
-      m_Name: all
-      m_OriginalName: all
+      m_Name: 
+      m_OriginalName: 
       m_EditFieldRect:
         serializedVersion: 2
         x: 0
         y: 0
         width: 0
         height: 0
-      m_UserData: 120760
+      m_UserData: 0
       m_IsWaitingForDelay: 0
       m_IsRenaming: 0
-      m_OriginalEventType: 0
+      m_OriginalEventType: 11
       m_IsRenamingFilename: 1
-      m_ClientGUIView: {fileID: 16}
+      m_ClientGUIView: {fileID: 12}
     m_CreateAssetUtility:
       m_EndAction: {fileID: 0}
       m_InstanceID: 0
@@ -1203,8 +1115,8 @@ MonoBehaviour:
     m_ScrollPosition: {x: 0, y: 0}
     m_GridSize: 16
   m_SkipHiddenPackages: 0
-  m_DirectoriesAreaWidth: 207
---- !u!114 &23
+  m_DirectoriesAreaWidth: 160
+--- !u!114 &19
 MonoBehaviour:
   m_ObjectHideFlags: 52
   m_CorrespondingSourceObject: {fileID: 0}
@@ -1220,14 +1132,14 @@ MonoBehaviour:
   m_MaxSize: {x: 4000, y: 4000}
   m_TitleContent:
     m_Text: Inspector
-    m_Image: {fileID: -440750813802333266, guid: 0000000000000000d000000000000000, type: 0}
+    m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, type: 0}
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 1223.5
-    y: 96
-    width: 433.5
-    height: 900
+    x: 1998
+    y: 81
+    width: 553
+    height: 1262
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -1241,7 +1153,7 @@ MonoBehaviour:
   m_ObjectsLockedBeforeSerialization: []
   m_InstanceIDsLockedBeforeSerialization: 
   m_PreviewResizer:
-    m_CachedPref: 225
+    m_CachedPref: 484
     m_ControlHash: -371814159
     m_PrefName: Preview_InspectorPreview
   m_LastInspectedObjectInstanceID: -1
@@ -1251,69 +1163,3 @@ MonoBehaviour:
   m_LockTracker:
     m_IsLocked: 0
   m_PreviewWindow: {fileID: 0}
---- !u!114 &24
-MonoBehaviour:
-  m_ObjectHideFlags: 52
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 13974, guid: 0000000000000000e000000000000000, type: 0}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_MinSize: {x: 200, y: 200}
-  m_MaxSize: {x: 4000, y: 4000}
-  m_TitleContent:
-    m_Text: Simulator
-    m_Image: {fileID: 3038311277492192215, guid: 0000000000000000d000000000000000, type: 0}
-    m_Tooltip: 
-  m_Pos:
-    serializedVersion: 2
-    x: -284
-    y: -1312
-    width: 478
-    height: 1011
-  m_SerializedDataModeController:
-    m_DataMode: 0
-    m_PreferredDataMode: 0
-    m_SupportedDataModes: 
-    isAutomatic: 1
-  m_ViewDataDictionary: {fileID: 0}
-  m_OverlayCanvas:
-    m_LastAppliedPresetName: Default
-    m_SaveData: []
-    m_OverlaysVisible: 1
-  m_SerializedViewNames:
-  - UnityEditor.GameView
-  m_SerializedViewValues:
-  - /Users/lcn/0Fort23Projects/XY001/Library/PlayModeViewStates/fcb172f76445941df86237e2028b0cb2
-  m_PlayModeViewName: Device Simulator
-  m_ShowGizmos: 0
-  m_TargetDisplay: 0
-  m_ClearColor: {r: 0, g: 0, b: 0, a: 1}
-  m_TargetSize: {x: 1284, y: 2778}
-  m_TextureFilterMode: 0
-  m_TextureHideFlags: 61
-  m_RenderIMGUI: 1
-  m_EnterPlayModeBehavior: 2
-  m_UseMipMap: 0
-  m_SimulatorState:
-    controlPanelVisible: 0
-    controlPanelWidth: 0
-    controlPanelFoldoutKeys:
-    - UnityEditor.DeviceSimulation.ApplicationSettingsPlugin
-    controlPanelFoldoutValues: 00
-    pluginNames:
-    - UnityEditor.DeviceSimulation.ApplicationSettingsPlugin
-    pluginStates:
-    - '{}'
-    scale: 32
-    fitToScreenEnabled: 0
-    rotationDegree: 0
-    highlightSafeAreaEnabled: 0
-    friendlyName: Apple iPhone 13 Pro Max
-    screenIndex: 0
-    networkReachability: 1
-    systemLanguage: 10

Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff