浏览代码

Merge branch 'master' of http://fort23.cn:3000/fort23/XY001

lzx 7 月之前
父节点
当前提交
f951f05059
共有 24 个文件被更改,包括 966 次插入1548 次删除
  1. 69 871
      Assets/Art/Chapter/Chapter01.prefab
  2. 401 438
      Assets/Art/Chapter/Chapter02.prefab
  3. 3 0
      Assets/Art/GuaiWuTimeline/GuaiwuBoss01.playable
  4. 66 0
      Assets/Res/CombatScenes/NavMeshTarget.prefab
  5. 7 0
      Assets/Res/CombatScenes/NavMeshTarget.prefab.meta
  6. 二进制
      Assets/Scenes/testCombat/NavMesh-NavMeshTarget.asset
  7. 8 0
      Assets/Scenes/testCombat/NavMesh-NavMeshTarget.asset.meta
  8. 29 31
      Assets/Scripts/Core/UI/UTool/ImageMove.cs
  9. 1 2
      Assets/Scripts/Core/UI/UTool/ImageMoveContainer.cs
  10. 1 0
      Assets/Scripts/GameLogic/Combat/CombatEvent/CombatItemShowEventData.cs
  11. 9 9
      Assets/Scripts/GameLogic/Combat/CombatTool/CombatController.cs
  12. 103 0
      Assets/Scripts/GameLogic/Combat/CombatTool/CombatSenceController.cs
  13. 11 0
      Assets/Scripts/GameLogic/Combat/CombatTool/CombatSenceController.cs.meta
  14. 22 9
      Assets/Scripts/GameLogic/Combat/CombatType/CombatTypeBasic.cs
  15. 16 14
      Assets/Scripts/GameLogic/Combat/CombatType/LevelBattleCombatType.cs
  16. 7 8
      Assets/Scripts/GameLogic/Combat/CombatType/TestCombatType.cs
  17. 4 4
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroEntity.cs
  18. 12 0
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroGameObjectPool.cs
  19. 3 0
      Assets/Scripts/GameLogic/Combat/Hero/CombatHeroGameObjectPool.cs.meta
  20. 12 5
      Assets/Scripts/GameLogic/Combat/Hero/State/CombatHeroMoveState.cs
  21. 7 0
      Assets/Scripts/GameUI/Combat/CombatEquipFallManager.cs
  22. 74 69
      Assets/Scripts/GameUI/UI/ShowItemMoveTarget/ShowItemMoveToTargetPanel.cs
  23. 0 0
      Assets/StreamingAssets/assetConfig.txt
  24. 101 88
      UserSettings/Layouts/default-2022.dwlt

文件差异内容过多而无法显示
+ 69 - 871
Assets/Art/Chapter/Chapter01.prefab


文件差异内容过多而无法显示
+ 401 - 438
Assets/Art/Chapter/Chapter02.prefab


+ 3 - 0
Assets/Art/GuaiWuTimeline/GuaiwuBoss01.playable

@@ -585,6 +585,7 @@ MonoBehaviour:
   isFindMyHero: 0
   angle: 0
   manualClose: 0
+  isNew: 0
 --- !u!114 &-4381110610845372254
 MonoBehaviour:
   m_ObjectHideFlags: 1
@@ -728,6 +729,7 @@ MonoBehaviour:
   isFindMyHero: 0
   angle: 0
   manualClose: 0
+  isNew: 0
 --- !u!114 &-2699148646001001778
 MonoBehaviour:
   m_ObjectHideFlags: 1
@@ -2843,6 +2845,7 @@ MonoBehaviour:
   isFindMyHero: 0
   angle: 0
   manualClose: 0
+  isNew: 0
 --- !u!114 &7714894456577681812
 MonoBehaviour:
   m_ObjectHideFlags: 1

+ 66 - 0
Assets/Res/CombatScenes/NavMeshTarget.prefab

@@ -0,0 +1,66 @@
+%YAML 1.1
+%TAG !u! tag:yousandi.cn,2023:
+--- !u!1 &6358096024552388196
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 1874478833208555005}
+  - component: {fileID: 8903864963971255426}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: NavMeshTarget
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1874478833208555005
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6358096024552388196}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 17.1}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &8903864963971255426
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6358096024552388196}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 7a5ac11cc976e418e8d13136b07e1f52, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_AgentTypeID: 0
+  m_CollectObjects: 1
+  m_Size: {x: 69.6, y: 10, z: 76.8}
+  m_Center: {x: 0, y: 2, z: 0}
+  m_LayerMask:
+    serializedVersion: 2
+    m_Bits: 128
+  m_UseGeometry: 1
+  m_DefaultArea: 0
+  m_GenerateLinks: 0
+  m_IgnoreNavMeshAgent: 1
+  m_IgnoreNavMeshObstacle: 1
+  m_OverrideTileSize: 0
+  m_TileSize: 256
+  m_OverrideVoxelSize: 0
+  m_VoxelSize: 0.16666667
+  m_MinRegionArea: 2
+  m_NavMeshData: {fileID: 23800000, guid: cb7f778af03b16442ba0d78f4985ca01, type: 2}
+  m_BuildHeightMesh: 0

+ 7 - 0
Assets/Res/CombatScenes/NavMeshTarget.prefab.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: XigevC3+Uy1mNc3J2WNkZ41Cci+rL8ZxpUZgUDz+b3I5VOFG7CPDcn0=
+PrefabImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
Assets/Scenes/testCombat/NavMesh-NavMeshTarget.asset


+ 8 - 0
Assets/Scenes/testCombat/NavMesh-NavMeshTarget.asset.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: XCgY4y2qWyrVpH5QGuzLeZobajfvgK+5BvtfxZfiVfZ9dbFq4dFCPl4=
+NativeFormatImporter:
+  externalObjects: {}
+  mainObjectFileID: 23800000
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 29 - 31
Assets/Scripts/Core/UI/UTool/ImageMove.cs

@@ -1,10 +1,11 @@
 using System.Collections;
 using System.Collections.Generic;
 using CombatLibrary.CombatLibrary.CombatCore.Utility;
+using Fort23.Core;
 using Fort23.UTool;
 using UnityEngine;
 
-public class ImageMove
+public class ImageMove: CObject
 {
     // public AnimationCurve ShowSizeCurve;
     public AnimationCurve SizeCurve;
@@ -16,14 +17,11 @@ public class ImageMove
     private float currTime;
 
     public float speed;
-
-    // public float showSizeSpeed;
-    public bool isShowSize = true;
-
-    public Vector3 moveTargetPos;
+    public bool isExp;
     public Vector3 moveStartPos;
-    public System.Action finishCallBack;
-
+    public int GroupIndex = 0;
+    public System.Action<ImageMove> finishCallBack;
+    public System.Action<ImageMove> targetPointSet;
     public bool Update()
     {
         if (currAcur.CurveInfos == null)
@@ -37,29 +35,9 @@ public class ImageMove
             return false;
         }
 
+        targetPointSet?.Invoke(this);
         GameObjectPool.own.gameObject.SetActive(true);
-        // if (isShowSize)
-        // {
-        //     currTime += Time.deltaTime * showSizeSpeed;
-        //     float ss = currTime;
-        //     if (ShowSizeCurve != null)
-        //     {
-        //         ss = ShowSizeCurve.Evaluate(currTime);
-        //         transform.localScale = Vector3.one * ss;
-        //     }
-        //
-        //
-        //     Vector3 p = Vector3.Lerp(moveStartPos, moveTargetPos, ss);
-        //     transform.anchoredPosition = p;
-        //     if (currTime >= 1)
-        //     {
-        //         isShowSize = false;
-        //         currTime = 0;
-        //     }
-        //
-        //     return false;
-        // }
-
+      
 
         currTime += Time.deltaTime * speed;
         float ms = currTime;
@@ -82,9 +60,29 @@ public class ImageMove
 
         {
             currAcur.CurveInfos = null;
-            finishCallBack?.Invoke();
+            finishCallBack?.Invoke(this);
+            CObjectPool.Instance.Recycle(this);
         }
 
         return false;
     }
+
+    public override void ActiveObj()
+    {
+      
+    }
+
+    public override void DormancyObj()
+    {
+        GObjectPool.Instance.Recycle(GameObjectPool);
+        GameObjectPool = null;
+        finishCallBack = null;
+        yanChi = 0;
+        currTime = 0;
+        transform = null;
+        moveSpeed = null;
+        SizeCurve = null;
+        currAcur.CurveInfos = null;
+        targetPointSet = null;
+    }
 }

+ 1 - 2
Assets/Scripts/Core/UI/UTool/ImageMoveContainer.cs

@@ -51,7 +51,7 @@ public class ImageMoveContainer
         // gameObjectPool.own.GetComponent<Image>().icon_name = itemConfig.icon;
         currImageMove.transform = gameObjectPool.own.GetComponent<RectTransform>();
         currImageMove.moveStartPos = startPos;
-        currImageMove.moveTargetPos = moveTargetPos;
+      
         // currImageMove.transform.SetParent(root);
         currImageMove.transform.anchoredPosition = currImageMove.moveStartPos;
         currImageMove.yanChi = delay;
@@ -68,7 +68,6 @@ public class ImageMoveContainer
             ImageMove imageMove = allImageMove[i];
             if (imageMove.Update())
             {
-                GObjectPool.Instance.Recycle(imageMove.GameObjectPool);
                 allImageMove.RemoveAt(i);
                 i--;
             }

+ 1 - 0
Assets/Scripts/GameLogic/Combat/CombatEvent/CombatItemShowEventData.cs

@@ -12,5 +12,6 @@ namespace Common.Utility.CombatEvent
         public Vector3 startPos_WorldPos;
         public string showName;
         public bool isExp;
+        public int addValue;
     }
 }

+ 9 - 9
Assets/Scripts/GameLogic/Combat/CombatTool/CombatController.cs

@@ -21,16 +21,18 @@ namespace GameLogic.Combat.CombatTool
         public CombatCameraControllder CombatCameraControllder;
         public CombatTypeBasic CombatTypeBasic;
         protected StateControl stateControl;
-        private AssetHandle scenesHandle;
-        public GameObject gameObject;
+        public CombatSenceController CombatSenceController;
+
         public GameTimeLineParticleFactory GameTimeLineParticleFactory;
         public bool isUpdate;
+
         /// <summary>
         /// 涨停游戏英雄AI行为
         /// </summary>
         public bool isStopAi;
 
-        public float speed=1;
+        public float speed = 1;
+
         public CombatStateBasic CurrState
         {
             get { return stateControl.CurrIState as CombatStateBasic; }
@@ -45,11 +47,9 @@ namespace GameLogic.Combat.CombatTool
             stateControl = new StateControl();
             stateControl.AddState("idle", new CombatIdleState(this));
             stateControl.AddState("update", new CombatUpdateState(this));
-            scenesHandle =
-                await AssetBundleLoadManager.Instance.LoadAssetAsyncTask<GameObject>("Chapter01.prefab");
-            gameObject = scenesHandle.AssetObject<GameObject>();
-            gameObject.SetActive(true);
 
+            CombatSenceController = new CombatSenceController();
+            await CombatSenceController.InitScenes();
 
             Camera camera = Camera.main;
             CombatCameraControllder = new CombatCameraControllder();
@@ -67,8 +67,8 @@ namespace GameLogic.Combat.CombatTool
                     CombatTypeBasic = new LevelBattleCombatType();
                     break;
             }
-          
-            CombatTypeBasic.Init(this,startCombatInfo);
+
+            CombatTypeBasic.Init(this, startCombatInfo);
             await CombatTypeBasic.StartGame();
             ChangeState("update");
             isUpdate = true;

+ 103 - 0
Assets/Scripts/GameLogic/Combat/CombatTool/CombatSenceController.cs

@@ -0,0 +1,103 @@
+using System.Collections.Generic;
+using Fort23.Core;
+using GameLogic.CombatScenesTool;
+using Unity.AI.Navigation;
+using UnityEngine;
+
+namespace GameLogic.Combat.CombatTool
+{
+    public class CombatSenceController
+    {
+        private AssetHandle scenesHandle;
+        private AssetHandle scenesHandle2;
+        public GameObject scenes1;
+        public GameObject scenes2;
+        private NavMeshSurface _navMeshSurface;
+
+        private float zoff;
+
+        private int index = 0;
+        private List<CombatScenesConfig> _allCombatScenesConfigs = new List<CombatScenesConfig>();
+
+        public CombatScenesConfig _currConfig;
+
+        private int nextConfigIndex;
+
+        public async CTask InitScenes()
+        {
+            CTaskAwaitBuffer cTaskAwaitBuffer = new CTaskAwaitBuffer();
+            cTaskAwaitBuffer.AddTask(AssetBundleLoadManager.Instance.LoadAssetAsyncTask<GameObject>("Chapter01.prefab",
+                delegate(AssetHandle handle)
+                {
+                    scenesHandle = handle;
+                    scenes1 = scenesHandle.AssetObject<GameObject>();
+                    scenes1.SetActive(true);
+                    CombatScenesConfig combatScenesConfig = scenes1.GetComponent<CombatScenesConfig>();
+                    _allCombatScenesConfigs.Add(combatScenesConfig);
+                }));
+            cTaskAwaitBuffer.AddTask(AssetBundleLoadManager.Instance.LoadAssetAsyncTask<GameObject>("Chapter02.prefab",
+                delegate(AssetHandle handle)
+                {
+                    scenesHandle2 = handle;
+                    scenes2 = scenesHandle2.AssetObject<GameObject>();
+                    scenes2.SetActive(true);
+                    CombatScenesConfig combatScenesConfig = scenes2.GetComponent<CombatScenesConfig>();
+                    _allCombatScenesConfigs.Add(combatScenesConfig);
+                }));
+            cTaskAwaitBuffer.AddTask(AssetBundleLoadManager.Instance.LoadAssetAsyncTask<GameObject>(
+                "NavMeshTarget.prefab",
+                delegate(AssetHandle handle)
+                {
+                    GameObject go = handle.AssetObject<GameObject>();
+                    _navMeshSurface = go.GetComponent<NavMeshSurface>();
+                }));
+
+            await cTaskAwaitBuffer.WaitAll();
+            for (int i = 0; i < _allCombatScenesConfigs.Count; i++)
+            {
+                zoff = -i * 54;
+                // index = i;
+                _allCombatScenesConfigs[i].transform.position = new Vector3(0, 0, zoff);
+            }
+
+            zoff = 0;
+            index = 0;
+            nextConfigIndex = 0;
+            _currConfig = _allCombatScenesConfigs[0];
+            Vector3 pos = _allCombatScenesConfigs[0].heroPoint[0].position;
+            // _navMeshSurface.transform.position = pos;
+            UpdateNavMesh(pos);
+
+            // 
+        }
+
+
+        public CombatScenesConfig MoveToNextConfig()
+        {
+            nextConfigIndex++;
+            nextConfigIndex %= _allCombatScenesConfigs.Count;
+            return _currConfig=_allCombatScenesConfigs[nextConfigIndex];
+        }
+
+        public void NextScenesShow()
+        {
+            index++;
+            index %= _allCombatScenesConfigs.Count;
+            zoff -= 54;
+            _allCombatScenesConfigs[index].transform.position = new Vector3(0, 0, zoff);
+        }
+
+        public void UpdateNavMesh(Vector3 pos)
+        {
+            if (_navMeshSurface == null)
+            {
+                Debug.LogError("没有导航网格");
+                return;
+            }
+
+            _navMeshSurface.transform.position = pos;
+
+            _navMeshSurface.BuildNavMesh();
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/GameLogic/Combat/CombatTool/CombatSenceController.cs.meta

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

+ 22 - 9
Assets/Scripts/GameLogic/Combat/CombatType/CombatTypeBasic.cs

@@ -15,6 +15,7 @@ namespace GameLogic.Combat.CombatType
         /// 全部胜利的节点数量
         /// </summary>
         public int allWinNodeCount;
+
         protected CombatController combatController;
         protected int _currIndex = 0;
         protected CombatScenesConfig _combatScenesConfig;
@@ -26,12 +27,13 @@ namespace GameLogic.Combat.CombatType
 
         protected IUnRegister _unRegister;
         protected StartCombatInfo _startCombatInfo;
-        public void Init(CombatController combatController,StartCombatInfo startCombatInfo)
+
+        public void Init(CombatController combatController, StartCombatInfo startCombatInfo)
         {
             CombatEventManager.Instance.AddEventListener(CombatEventType.HeroDie, HeroDieEventData);
             this.combatController = combatController;
-            this._startCombatInfo= startCombatInfo;
-            _combatScenesConfig = combatController.gameObject.GetComponent<CombatScenesConfig>();
+            this._startCombatInfo = startCombatInfo;
+            _combatScenesConfig = combatController.CombatSenceController._currConfig;
             FindNextConfig();
             ProInit();
         }
@@ -42,10 +44,10 @@ namespace GameLogic.Combat.CombatType
             HeroDieEventData data = iEventData as HeroDieEventData;
             combatController.CombatHeroController.RemoveHero(data.combatHeroEntity);
             combatController.CombatHeroController.AddHeroDie(data.combatHeroEntity);
-            ProHeroDie(data.combatHeroEntity,data.HarmReturnInfo);
+            ProHeroDie(data.combatHeroEntity, data.HarmReturnInfo);
         }
 
-        protected virtual void ProHeroDie(CombatHeroEntity combatHeroEntity,HarmReturnInfo harmReturnInfo)
+        protected virtual void ProHeroDie(CombatHeroEntity combatHeroEntity, HarmReturnInfo harmReturnInfo)
         {
         }
 
@@ -53,8 +55,19 @@ namespace GameLogic.Combat.CombatType
         {
             allWinNodeCount++;
             isActiveCombat = false;
-            _currIndex %= _combatScenesConfig.allNodeConfig.Length;
+            if (_currIndex >= _combatScenesConfig.allNodeConfig.Length)
+            {
+                _combatScenesConfig= combatController.CombatSenceController.MoveToNextConfig();
+                _currIndex = 0;
+                // _combatScenesConfig = combatController.CombatSenceController._currConfig;
+            }
+
             nextConfig = _combatScenesConfig.allNodeConfig[_currIndex];
+            if (_currIndex == _combatScenesConfig.allNodeConfig.Length - 1)
+            {
+                combatController.CombatSenceController.NextScenesShow();
+            }
+
             if (currBannerHero == null)
             {
                 currBannerHero = new BannerHero();
@@ -65,9 +78,9 @@ namespace GameLogic.Combat.CombatType
                 _unRegister.UnRegister();
             }
 
-            _unRegister=  nextConfig.targetMoveStartPoint.gameObject.OnTriggerEnterEvent(OnTriggerEnterEvent);
+            _unRegister = nextConfig.targetMoveStartPoint.gameObject.OnTriggerEnterEvent(OnTriggerEnterEvent);
             currBannerHero.GetThis<BannerHero>().Init(nextConfig.targetMoveStartPoint.gameObject);
-
+            combatController.CombatSenceController.UpdateNavMesh(nextConfig.targetMoveStartPoint.position);
             _currIndex++;
         }
 
@@ -78,7 +91,7 @@ namespace GameLogic.Combat.CombatType
                 return;
             }
 
-            HeroEntityMono heroEntityMono=   collider.GetComponent<HeroEntityMono>();
+            HeroEntityMono heroEntityMono = collider.GetComponent<HeroEntityMono>();
             if (heroEntityMono != null && !heroEntityMono.combatHeroEntity.IsEnemy)
             {
                 CombatEventManager.Instance.Dispatch(CombatEventType.ActiveCombat, null);

+ 16 - 14
Assets/Scripts/GameLogic/Combat/CombatType/LevelBattleCombatType.cs

@@ -10,6 +10,7 @@ using GameLogic.Bag;
 using GameLogic.Combat.CombatTool;
 using GameLogic.CombatScenesTool;
 using GameLogic.Hero;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
 using UnityEngine;
 
 namespace GameLogic.Combat.CombatType
@@ -122,6 +123,10 @@ namespace GameLogic.Combat.CombatType
             _isAwaitResurrection = false;
             _currLevelBattleNodeIndex = 0;
             InitNewMonsterConfig();
+            isBossCombat = false;
+            exp = 0;
+            _currLevelBattleNodeIndex = 0;
+            EventManager.Instance.Dispatch(CustomEventType.ShowBattleExp, null);
             isActiveCombat = true;
         }
 
@@ -137,10 +142,11 @@ namespace GameLogic.Combat.CombatType
             combatItemShowEventData.startPos_WorldPos = combatHeroEntity.combatHeroGameObject.position;
             combatItemShowEventData.showName = "icon_Coin";
             combatItemShowEventData.isExp = false;
+            combatItemShowEventData.addValue = 5;
             EventManager.Instance.Dispatch(CustomEventType.Combat_ItemShow, combatItemShowEventData);
 
 
-            BagController.Instance.AddCoin(5);
+            
             List<string> allEquip = new List<string>();
             for (int i = 0; i < 3; i++)
             {
@@ -162,13 +168,14 @@ namespace GameLogic.Combat.CombatType
             showTextEventData.worldPos = combatHeroEntity.combatHeroGameObject.position;
             EventManager.Instance.Dispatch(CustomEventType.ShowText, showTextEventData);
 
-            exp += 5;
+            
             BagController.Instance.AddHeroExp(10);
             CombatItemShowEventData expItemShow = CombatItemShowEventData.Create();
             expItemShow.count = Random.Range(3, 5);
             expItemShow.startPos_WorldPos = combatHeroEntity.combatHeroGameObject.position;
             expItemShow.showName = "icon_Energy";
             expItemShow.isExp = true;
+            expItemShow.addValue= 5;
             EventManager.Instance.Dispatch(CustomEventType.Combat_ItemShow, combatItemShowEventData);
             if (exp >= _levelBattleConfig.exp) // 到达目标值,开始打boss
             {
@@ -345,14 +352,13 @@ namespace GameLogic.Combat.CombatType
             heroEntity.IsEnemy = true;
             CombatHeroInfo combatHeroInfo = new CombatHeroInfo();
             combatHeroInfo.InitMonster(monsterId, level, star);
-            cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), combatHeroInfo,
+            index %= nextConfig.monsterPoint.Length;
+            Vector3 pos = nextConfig.monsterPoint[index].position + new Vector3(
+                CombatCalculateTool.Instance.GetOdd(-4, 4), 0, CombatCalculateTool.Instance.GetOdd(-4, 4));
+            cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), combatHeroInfo, pos,
                 delegate(CombatHeroEntity entity)
                 {
                     combatController.CombatHeroController.AddHero(entity);
-                    index %= nextConfig.monsterPoint.Length;
-                    Vector3 pos = nextConfig.monsterPoint[index].position + new Vector3(
-                        CombatCalculateTool.Instance.GetOdd(-4, 4), 0, CombatCalculateTool.Instance.GetOdd(-4, 4));
-                    heroEntity.combatHeroGameObject.SetPosition(pos);
                     callBack?.Invoke(entity);
                 }));
         }
@@ -395,13 +401,9 @@ namespace GameLogic.Combat.CombatType
                 CombatHeroEntity heroEntity = new CombatHeroEntity();
                 heroEntity.IsEnemy = false;
                 heroEntity.number = i;
-
-                cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), keyValuePair.Value,
-                    delegate(CombatHeroEntity entity)
-                    {
-                        combatController.CombatHeroController.AddHero(entity);
-                        heroEntity.combatHeroGameObject.SetPosition(_combatScenesConfig.heroPoint[index].position);
-                    }));
+                Vector3 pos = _combatScenesConfig.heroPoint[index].position;
+                cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), keyValuePair.Value, pos,
+                    delegate(CombatHeroEntity entity) { combatController.CombatHeroController.AddHero(entity); }));
 
                 i++;
             }

+ 7 - 8
Assets/Scripts/GameLogic/Combat/CombatType/TestCombatType.cs

@@ -108,15 +108,14 @@ namespace GameLogic.Combat.CombatType
                 heroEntity.IsEnemy = true;
                 CombatHeroInfo combatHeroInfo = new CombatHeroInfo();
                 testHeroInfoConfig.CopyToCombatHeroInfo((combatHeroInfo));
-                cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), combatHeroInfo,
+                index %= nextConfig.monsterPoint.Length;
+                Vector3 pos = nextConfig.monsterPoint[index].position + new Vector3(
+                    CombatCalculateTool.Instance.GetOdd(-4, 4), 0, CombatCalculateTool.Instance.GetOdd(-4, 4));
+
+                cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), combatHeroInfo,pos,
                     delegate(CombatHeroEntity entity)
                     {
                         combatController.CombatHeroController.AddHero(entity);
-                        index %= nextConfig.monsterPoint.Length;
-                        Vector3 pos = nextConfig.monsterPoint[index].position + new Vector3(
-                            CombatCalculateTool.Instance.GetOdd(-4, 4), 0, CombatCalculateTool.Instance.GetOdd(-4, 4));
-
-                        heroEntity.combatHeroGameObject.SetPosition(pos);
                     }));
             }
         }
@@ -153,11 +152,11 @@ namespace GameLogic.Combat.CombatType
                     heroEntity.number = i;
                     CombatHeroInfo combatHeroInfo = new CombatHeroInfo();
                     testHeroInfoConfig.CopyToCombatHeroInfo((combatHeroInfo));
-                    cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), combatHeroInfo,
+                    Vector3 pos = _combatScenesConfig.heroPoint[index].position;
+                    cTaskAwaitBuffer.AddTask(heroEntity.Init(new CombatAIBasic(), combatHeroInfo,pos,
                         delegate(CombatHeroEntity entity)
                         {
                             combatController.CombatHeroController.AddHero(entity);
-                            heroEntity.combatHeroGameObject.SetPosition(_combatScenesConfig.heroPoint[index].position);
                         }));
                 }
             }

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

@@ -66,7 +66,7 @@ public class CombatHeroEntity : ITimeLineSpecialDotPos, ILifeCycle, ITimeLineAni
         get { return combatHeroGameObject.transform.forward; }
     }
 
-    public async CTask<CombatHeroEntity> Init(CombatAIBasic combatAIBasic, CombatHeroInfo combatHeroInfo,
+    public async CTask<CombatHeroEntity> Init(CombatAIBasic combatAIBasic, CombatHeroInfo combatHeroInfo,Vector3 pos,
         System.Action<CombatHeroEntity> callBack = null)
     {
         //后面记到检查战斗里面不要出现异步加载,也不要出现同步IO加载
@@ -80,14 +80,14 @@ public class CombatHeroEntity : ITimeLineSpecialDotPos, ILifeCycle, ITimeLineAni
         CurrCombatHeroInfo = combatHeroInfo.Copy();
         MaxCombatHeroInfo = combatHeroInfo.Copy();
         // GameTimeLineParticleFactory
-        GameObjectPool poolInterface =
-            await GObjectPool.Instance.FetchAsync<GameObjectPool>(modelName + ".prefab", null);
+        CombatHeroGameObjectPool poolInterface =
+            await GObjectPool.Instance.FetchAsync<CombatHeroGameObjectPool>(modelName + ".prefab", null);
 #if !COMBAT_SERVER
         if (poolInterface == null || poolInterface.own == null)
         {
             return null;
         }
-
+        poolInterface.own.transform.position= pos;
         if (!IsEnemy)
         {
             GameObjectPool fx_hero_quan =

+ 12 - 0
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroGameObjectPool.cs

@@ -0,0 +1,12 @@
+using Fort23.UTool;
+
+namespace GameLogic.Combat.Hero
+{
+    public class CombatHeroGameObjectPool: GameObjectPool
+    {
+        public override void ActiveObj()
+        {
+          
+        }
+    }
+}

+ 3 - 0
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroGameObjectPool.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: f6ab3fa19c27488eabc33f936be11e99
+timeCreated: 1733207793

+ 12 - 5
Assets/Scripts/GameLogic/Combat/Hero/State/CombatHeroMoveState.cs

@@ -17,12 +17,18 @@ namespace GameLogic.Combat.Hero.State
 
         protected override void ProEnter()
         {
+            combatHeroEntity.CombatAIBasic.NavMeshAgent.Warp(combatHeroEntity.dotPos);
             lasetTaregtPoint = new Vector3(999999, 99999, 99999);
             _transitionAsset = combatHeroEntity.combatHeroAnimtion.Play("run");
             combatHeroEntity.CombatAIBasic.NavMeshAgent.updateRotation = false;
+            if ( combatHeroEntity.CombatAIBasic.NavMeshAgent.isOnNavMesh == false)
+            {
+                Debug.LogError("对象错误");
+            }
+
             combatHeroEntity.CombatAIBasic.NavMeshAgent.isStopped = true;
-            combatHeroEntity.CombatAIBasic.NavMeshAgent.obstacleAvoidanceType =
-                ObstacleAvoidanceType.HighQualityObstacleAvoidance;
+            // combatHeroEntity.CombatAIBasic.NavMeshAgent.obstacleAvoidanceType =
+            //     ObstacleAvoidanceType.HighQualityObstacleAvoidance;
             combatHeroEntity.CombatAIBasic.NavMeshAgent.avoidancePriority = 40;
         }
 
@@ -77,13 +83,14 @@ namespace GameLogic.Combat.Hero.State
             if (_transitionAsset != null)
             {
                 float v = combatHeroEntity.CombatAIBasic.NavMeshAgent.velocity.sqrMagnitude;
-                float v2 = v / 36;
+                
+                float v2 = v / (combatHeroEntity.IsEnemy?9:36);
 
                 _transitionAsset.SetSpeed(Mathf.Clamp(v2, 0.2f, 1.5f));
             }
 
-
-            if (!combatHeroEntity.CombatAIBasic.NavMeshAgent.isStopped)
+           
+            if ( combatHeroEntity.CombatAIBasic.NavMeshAgent.isOnNavMesh&&!combatHeroEntity.CombatAIBasic.NavMeshAgent.isStopped)
             {
                 Vector3 nextPos = myPos;
                 Vector3 p = nextPos - lastMovePoint;

+ 7 - 0
Assets/Scripts/GameUI/Combat/CombatEquipFallManager.cs

@@ -14,6 +14,7 @@ namespace GameLogic.CombatScenesTool
 
     {
         private Transform herobagTran;
+        public Animator BagAnimator;
         public BetterList<EquipFallObject> allEquipFall = new BetterList<EquipFallObject>();
 
         public class EquipFallObject : CObject
@@ -91,6 +92,11 @@ namespace GameLogic.CombatScenesTool
                     GameObjectPool.own.transform.position = position;
                     if (d < 0.3f)
                     {
+                        if (Instance.BagAnimator != null)
+                        {
+                            Instance.BagAnimator.Play("HeroBags_pick");
+                        }
+
                         CombatEquipFallManager.Instance.allEquipFall.Remove(this);
                         CObjectPool.Instance.Recycle(this);
                     }
@@ -106,6 +112,7 @@ namespace GameLogic.CombatScenesTool
                 MainUIPanel mainUIPanel = UIManager.Instance.GetComponent<MainUIPanel>();
 
                 herobagTran = mainUIPanel.herobag.transform;
+                BagAnimator = mainUIPanel.herobag.GetComponent<Animator>();
             }
 
             Vector3 pos = UIManager.Instance.UIWorldToWorld(herobagTran.position);

+ 74 - 69
Assets/Scripts/GameUI/UI/ShowItemMoveTarget/ShowItemMoveToTargetPanel.cs

@@ -3,6 +3,9 @@ using CombatLibrary.CombatLibrary.CombatCore.Utility;
 using Common.Utility.CombatEvent;
 using Fort23.Core;
 using Fort23.UTool;
+using GameLogic.Bag;
+using GameLogic.Combat.CombatTool;
+using GameLogic.Combat.CombatType;
 using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
 using UnityEngine;
 using UnityEngine.UI;
@@ -22,40 +25,6 @@ namespace Fort23.Mono
                     isFocus: false);
         }
 
-        public static async void OpenShowItemMoveToTargetPanel(Vector2 startPos, Vector2 target,
-            bool isStartPosUseWorld, bool isEndPosUseWorld,
-            List<string> allItem)
-        {
-            ShowItemMoveToTargetPanel showItemMoveToTargetPanel =
-                await UIManager.Instance.LoadAndOpenPanel<ShowItemMoveToTargetPanel>(null, UILayer.Top, isFocus: false);
-            if (isStartPosUseWorld)
-            {
-                startPos = showItemMoveToTargetPanel.transform.worldToLocalMatrix * startPos;
-            }
-
-            if (isEndPosUseWorld)
-            {
-                target = showItemMoveToTargetPanel.transform.worldToLocalMatrix * target;
-            }
-
-            showItemMoveToTargetPanel.ShowPanel(startPos, target, allItem.Count, "");
-        }
-
-        public static async void OpenShowItemMoveToTargetPanel(List<string> allItem)
-        {
-            ShowItemMoveToTargetPanel showItemMoveToTargetPanel =
-                await UIManager.Instance.LoadAndOpenPanel<ShowItemMoveToTargetPanel>(null, UILayer.Top, isFocus: false);
-            Vector2 target = showItemMoveToTargetPanel.moveTarget.GetComponent<RectTransform>().anchoredPosition;
-            showItemMoveToTargetPanel.moveTarget.gameObject.SetActive(true);
-            showItemMoveToTargetPanel.ShowPanel(new Vector2(), target, allItem.Count, "");
-        }
-
-        public static async void OpenShowItemMoveToTargetPanel(Vector2 startPos, Vector2 target, List<string> allItem)
-        {
-            ShowItemMoveToTargetPanel showItemMoveToTargetPanel =
-                await UIManager.Instance.LoadAndOpenPanel<ShowItemMoveToTargetPanel>(null, UILayer.Top, isFocus: false);
-            showItemMoveToTargetPanel.ShowPanel(startPos, target, allItem.Count, "");
-        }
 
         private void Init()
         {
@@ -93,41 +62,73 @@ namespace Fort23.Mono
                 combatItemShowEventData.startPos_WorldPos);
             Vector3 p2 = UIManager.Instance.UICamera.ScreenToWorldPoint(p);
             Vector3 startPos = transform.worldToLocalMatrix * p2;
-            ShowPanel(startPos, target, combatItemShowEventData.count, combatItemShowEventData.showName, delegate
-            {
-                MainUIPanel mainUIPanel = UIManager.Instance.GetComponent<MainUIPanel>();
-                if (mainUIPanel == null)
-                {
-                    return;
-                }
+            int maxCount = combatItemShowEventData.count;
+            int addValue = combatItemShowEventData.addValue / maxCount;
+            int finishVale = combatItemShowEventData.addValue % maxCount;
 
-                if (isExp)
+            ShowPanel(startPos, target, maxCount, combatItemShowEventData.showName, isExp,
+                delegate(ImageMove imageMove)
                 {
-                    if (mainUIPanel != null)
+                    MainUIPanel mainUIPanel = UIManager.Instance.GetComponent<MainUIPanel>();
+                    if (mainUIPanel == null)
                     {
-                        ParticleSystemPool particleSystemPool =
-                            GObjectPool.Instance.FetchAsyncForGameObject<ParticleSystemPool>(mainUIPanel.fx_ui_exp,
-                                "fx_ui_exp");
-                        particleSystemPool.transform.SetParent(mainUIPanel.expPoint.transform);
-                        particleSystemPool.transform.localPosition = Vector3.zero;
-                        particleSystemPool.transform.localScale = Vector3.one;
-                        // particleSystemPool.transform.
+                        return;
                     }
-                }
-                else
-                {
-                    if (mainUIPanel != null)
+
+                    int currAddValue = addValue;
+                    if (imageMove.GroupIndex == maxCount - 1)
                     {
-                        ParticleSystemPool particleSystemPool =
-                            GObjectPool.Instance.FetchAsyncForGameObject<ParticleSystemPool>(mainUIPanel.fx_ui_coin,
-                                "fx_ui_coin");
-                        particleSystemPool.transform.SetParent(mainUIPanel.Icon_Coin.transform);
-                        particleSystemPool.transform.localPosition = Vector3.zero;
-                        particleSystemPool.transform.localScale = Vector3.one;
-                        // particleSystemPool.transform.
+                        currAddValue += finishVale;
                     }
-                }
-            });
+
+                    if (isExp)
+                    {
+                        if (mainUIPanel != null)
+                        {
+                            ParticleSystemPool particleSystemPool =
+                                GObjectPool.Instance.FetchAsyncForGameObject<ParticleSystemPool>(mainUIPanel.fx_ui_exp,
+                                    "fx_ui_exp");
+                            particleSystemPool.transform.SetParent(mainUIPanel.expPoint.transform);
+                            particleSystemPool.transform.localPosition = Vector3.zero;
+                            particleSystemPool.transform.localScale = Vector3.one;
+                            LevelBattleCombatType levelBattleCombatType =
+                                CombatController.currActiveCombat.CombatTypeBasic as LevelBattleCombatType;
+                            if (levelBattleCombatType != null)
+                            {
+                                levelBattleCombatType.exp += currAddValue;
+                            }
+                            // particleSystemPool.transform.
+                        }
+                    }
+                    else
+                    {
+                        if (mainUIPanel != null)
+                        {
+                            ParticleSystemPool particleSystemPool =
+                                GObjectPool.Instance.FetchAsyncForGameObject<ParticleSystemPool>(mainUIPanel.fx_ui_coin,
+                                    "fx_ui_coin");
+                            particleSystemPool.transform.SetParent(mainUIPanel.Icon_Coin.transform);
+                            particleSystemPool.transform.localPosition = Vector3.zero;
+                            particleSystemPool.transform.localScale = Vector3.one;
+                            BagController.Instance.AddCoin(currAddValue);
+                            // particleSystemPool.transform.
+                        }
+                    }
+                }, SetTargetPoint);
+        }
+
+        private void SetTargetPoint(ImageMove imageMove)
+        {
+            if (imageMove.isExp)
+            {
+                MainUIPanel mainUIPanel = UIManager.Instance.GetComponent<MainUIPanel>();
+                Vector3 pos = mainUIPanel.expPoint.position;
+                Vector3 target = transform.worldToLocalMatrix * pos;
+                CurveInfo curveInfo = imageMove.currAcur.CurveInfos[1];
+                curveInfo.t = target.x;
+                curveInfo.v = target.y;
+                imageMove.currAcur.CurveInfos[1] = curveInfo;
+            }
         }
 
         protected void RenderUpdateCallBack()
@@ -149,7 +150,8 @@ namespace Fort23.Mono
             }
         }
 
-        public void AddACurve(Vector2 startPos, Vector2 target, string itemConfig, System.Action finishCallBack)
+        public ImageMove AddACurve(Vector2 startPos, Vector2 target, string itemConfig, bool isExp,
+            System.Action<ImageMove> finishCallBack, System.Action<ImageMove> targetPointSet)
         {
             ACurve aCurve = new ACurve();
             CurveInfo curveInfo = new CurveInfo();
@@ -181,8 +183,10 @@ namespace Fort23.Mono
             aCurve.CurveInfos.Add(curveInfo);
             aCurve.CurveInfos.Add(curveInfo2);
             aCurve.CurveType = CurveType.BSL;
-            ImageMove currImageMove = new ImageMove();
+            ImageMove currImageMove = CObjectPool.Instance.Fetch<ImageMove>();
             currImageMove.finishCallBack = finishCallBack;
+            currImageMove.targetPointSet = targetPointSet;
+            currImageMove.isExp = isExp;
             currImageMove.SizeCurve = AnimationCurveManager.Instance.AnimationCurveLibrary.ui_moveSize;
             currImageMove.moveSpeed = AnimationCurveManager.Instance.AnimationCurveLibrary.ui_moveSpped;
             // currImageMove.ShowSizeCurve = AnimationCurveManager.Instance.AnimationCurveLibrary.ui_showSize;
@@ -199,16 +203,16 @@ namespace Fort23.Mono
             currImageMove.transform = gameObjectPool.own.GetComponent<RectTransform>();
             // currImageMove.transform.sizeDelta = new Vector2(35, 35);
             currImageMove.moveStartPos = startPos;
-            currImageMove.moveTargetPos = moveTargetPos;
             currImageMove.transform.anchoredPosition = currImageMove.moveStartPos;
             currImageMove.yanChi = Random.Range(0, 0.5f);
             currImageMove.speed = AnimationCurveManager.Instance.AnimationCurveLibrary.uiMoveSpeed;
             currImageMove.currAcur = aCurve;
             allImageMove.Add(currImageMove);
+            return currImageMove;
         }
 
-        public void ShowPanel(Vector2 startPos, Vector2 target, int count, string showName,
-            System.Action finishCallBack = null)
+        public void ShowPanel(Vector2 startPos, Vector2 target, int count, string showName, bool isExp,
+            System.Action<ImageMove> finishCallBack = null, System.Action<ImageMove> targetPointSet = null)
         {
             if (target.x == -5000)
             {
@@ -217,7 +221,8 @@ namespace Fort23.Mono
 
             for (int i = 0; i < count; i++)
             {
-                AddACurve(startPos, target, showName, finishCallBack);
+                ImageMove imageMove = AddACurve(startPos, target, showName, isExp, finishCallBack, targetPointSet);
+                imageMove.GroupIndex = i;
             }
         }
     }

文件差异内容过多而无法显示
+ 0 - 0
Assets/StreamingAssets/assetConfig.txt


+ 101 - 88
UserSettings/Layouts/default-2022.dwlt

@@ -19,7 +19,7 @@ MonoBehaviour:
     width: 2560
     height: 1349
   m_ShowMode: 4
-  m_Title: Project
+  m_Title: Game
   m_RootView: {fileID: 7}
   m_MinSize: {x: 875, y: 300}
   m_MaxSize: {x: 10000, y: 10000}
@@ -40,9 +40,9 @@ MonoBehaviour:
   m_Position:
     serializedVersion: 2
     x: 0
-    y: 637
-    width: 640
-    height: 119
+    y: 558
+    width: 605
+    height: 214
   m_MinSize: {x: 102, y: 121}
   m_MaxSize: {x: 4002, y: 4021}
   m_ActualView: {fileID: 17}
@@ -67,14 +67,14 @@ MonoBehaviour:
   - {fileID: 2}
   m_Position:
     serializedVersion: 2
-    x: 721
+    x: 584
     y: 0
-    width: 640
-    height: 756
+    width: 605
+    height: 772
   m_MinSize: {x: 100, y: 100}
   m_MaxSize: {x: 8096, y: 16192}
   vertical: 1
-  controlID: 71
+  controlID: 93
   draggingID: 0
 --- !u!114 &4
 MonoBehaviour:
@@ -93,8 +93,8 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 721
-    height: 756
+    width: 584
+    height: 772
   m_MinSize: {x: 101, y: 121}
   m_MaxSize: {x: 4001, y: 4021}
   m_ActualView: {fileID: 18}
@@ -120,13 +120,13 @@ MonoBehaviour:
   m_Position:
     serializedVersion: 2
     x: 0
-    y: 543
-    width: 1361
-    height: 756
+    y: 527
+    width: 1189
+    height: 772
   m_MinSize: {x: 200, y: 100}
   m_MaxSize: {x: 16192, y: 16192}
   vertical: 0
-  controlID: 70
+  controlID: 92
   draggingID: 0
 --- !u!114 &6
 MonoBehaviour:
@@ -145,8 +145,8 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 640
-    height: 637
+    width: 605
+    height: 558
   m_MinSize: {x: 202, y: 221}
   m_MaxSize: {x: 4002, y: 4021}
   m_ActualView: {fileID: 22}
@@ -230,7 +230,7 @@ MonoBehaviour:
   m_MinSize: {x: 500, y: 150}
   m_MaxSize: {x: 40480, y: 24288}
   vertical: 0
-  controlID: 240
+  controlID: 134
   draggingID: 0
 --- !u!114 &10
 MonoBehaviour:
@@ -272,12 +272,12 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 1361
+    width: 1189
     height: 1299
   m_MinSize: {x: 200, y: 150}
   m_MaxSize: {x: 16192, y: 24288}
   vertical: 1
-  controlID: 69
+  controlID: 24
   draggingID: 0
 --- !u!114 &12
 MonoBehaviour:
@@ -294,9 +294,9 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 1361
+    x: 1189
     y: 0
-    width: 260
+    width: 431
     height: 1299
   m_MinSize: {x: 202, y: 221}
   m_MaxSize: {x: 4002, y: 4021}
@@ -320,9 +320,9 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 1621
+    x: 1620
     y: 0
-    width: 453
+    width: 452
     height: 1299
   m_MinSize: {x: 232, y: 271}
   m_MaxSize: {x: 10002, y: 10021}
@@ -346,9 +346,9 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 2074
+    x: 2072
     y: 0
-    width: 486
+    width: 488
     height: 1299
   m_MinSize: {x: 276, y: 71}
   m_MaxSize: {x: 4001, y: 4021}
@@ -374,8 +374,8 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 1361
-    height: 543
+    width: 1189
+    height: 527
   m_MinSize: {x: 201, y: 221}
   m_MaxSize: {x: 4001, y: 4021}
   m_ActualView: {fileID: 23}
@@ -542,10 +542,10 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 721
-    y: 1253
-    width: 638
-    height: 98
+    x: 584
+    y: 1158
+    width: 603
+    height: 193
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -586,9 +586,9 @@ MonoBehaviour:
   m_Pos:
     serializedVersion: 2
     x: 0
-    y: 616
-    width: 720
-    height: 735
+    y: 600
+    width: 583
+    height: 751
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -619,9 +619,9 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 1361
+    x: 1189
     y: 73
-    width: 258
+    width: 429
     height: 1278
   m_SerializedDataModeController:
     m_DataMode: 0
@@ -636,23 +636,23 @@ MonoBehaviour:
   m_SceneHierarchy:
     m_TreeViewState:
       scrollPos: {x: 0, y: 0}
-      m_SelectedIDs: 
-      m_LastClickedID: 0
-      m_ExpandedIDs: 4422fdff9a22fdff6673fdffbc73fdfffab8ffff
+      m_SelectedIDs: f65affff
+      m_LastClickedID: -42250
+      m_ExpandedIDs: d2f9ffff
       m_RenameOverlay:
         m_UserAcceptedRename: 0
-        m_Name: water
-        m_OriginalName: water
+        m_Name: 
+        m_OriginalName: 
         m_EditFieldRect:
           serializedVersion: 2
           x: 0
           y: 0
           width: 0
           height: 0
-        m_UserData: -187888
+        m_UserData: 0
         m_IsWaitingForDelay: 0
         m_IsRenaming: 0
-        m_OriginalEventType: 0
+        m_OriginalEventType: 11
         m_IsRenamingFilename: 0
         m_ClientGUIView: {fileID: 12}
       m_SearchString: 
@@ -682,9 +682,9 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 2074
+    x: 2072
     y: 73
-    width: 485
+    width: 487
     height: 1278
   m_SerializedDataModeController:
     m_DataMode: 0
@@ -729,9 +729,9 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 1621
+    x: 1620
     y: 73
-    width: 451
+    width: 450
     height: 1278
   m_SerializedDataModeController:
     m_DataMode: 0
@@ -754,7 +754,7 @@ MonoBehaviour:
     m_SkipHidden: 0
     m_SearchArea: 1
     m_Folders:
-    - Assets/Art/Chapter
+    - Assets/Scripts/GameLogic/Combat/CombatTool
     m_Globs: []
     m_OriginalText: 
     m_ImportLogFlags: 0
@@ -762,30 +762,30 @@ MonoBehaviour:
   m_ViewMode: 1
   m_StartGridSize: 16
   m_LastFolders:
-  - Assets/Art/Chapter
+  - Assets/Scripts/GameLogic/Combat/CombatTool
   m_LastFoldersGridSize: 16
   m_LastProjectPath: D:\unityProject\XY001
   m_LockTracker:
     m_IsLocked: 0
   m_FolderTreeState:
-    scrollPos: {x: 0, y: 0}
-    m_SelectedIDs: 5cbe0000
-    m_LastClickedID: 48732
-    m_ExpandedIDs: 00000000babb0000bcbb0000bebb0000c0bb0000c2bb0000c4bb0000c6bb0000c8bb0000cabb0000ccbb0000cebb0000d0bb0000d2bb0000d4bb0000d6bb0000d8bb0000dabb0000dcbb0000debb0000e0bb0000e2bb0000e4bb0000e6bb0000e8bb0000eabb0000ecbb0000eebb0000f0bb0000f2bb0000f4bb0000f6bb0000f8bb0000fabb0000fcbb0000febb000000bc000002bc000004bc00008abe000000ca9a3bffffff7f
+    scrollPos: {x: 0, y: 452}
+    m_SelectedIDs: ecd60000
+    m_LastClickedID: 55020
+    m_ExpandedIDs: 00000000a4d30000a6d30000a8d30000aad30000acd30000aed30000b0d30000b2d30000b4d30000b6d30000b8d30000bad30000bcd30000bed30000c0d30000c2d30000c4d30000c6d30000c8d30000cad30000ccd30000ced30000d0d30000d2d30000d4d30000d6d30000d8d30000dad30000dcd30000ded30000e0d30000e2d30000e4d30000e6d30000e8d30000ead30000ecd30000eed30000f0d3000084d6000000ca9a3bffffff7f
     m_RenameOverlay:
       m_UserAcceptedRename: 0
-      m_Name: BakedAssets
-      m_OriginalName: BakedAssets
+      m_Name: 
+      m_OriginalName: 
       m_EditFieldRect:
         serializedVersion: 2
         x: 0
         y: 0
         width: 0
         height: 0
-      m_UserData: 48730
+      m_UserData: 0
       m_IsWaitingForDelay: 0
       m_IsRenaming: 0
-      m_OriginalEventType: 0
+      m_OriginalEventType: 11
       m_IsRenamingFilename: 1
       m_ClientGUIView: {fileID: 13}
     m_SearchString: 
@@ -799,7 +799,7 @@ MonoBehaviour:
     scrollPos: {x: 0, y: 0}
     m_SelectedIDs: 
     m_LastClickedID: 0
-    m_ExpandedIDs: 00000000babb0000bcbb0000bebb0000c0bb0000c2bb0000c4bb0000c6bb0000c8bb0000cabb0000ccbb0000cebb0000d0bb0000d2bb0000d4bb0000d6bb0000d8bb0000dabb0000dcbb0000debb0000e0bb0000e2bb0000e4bb0000e6bb0000e8bb0000eabb0000ecbb0000eebb0000f0bb0000f2bb0000f4bb0000f6bb0000f8bb0000fabb0000fcbb0000febb000000bc000002bc000004bc0000
+    m_ExpandedIDs: 00000000a4d30000a6d30000a8d30000aad30000acd30000aed30000b0d30000b2d30000b4d30000b6d30000b8d30000bad30000bcd30000bed30000c0d30000c2d30000c4d30000c6d30000c8d30000cad30000ccd30000ced30000d0d30000d2d30000d4d30000d6d30000d8d30000dad30000dcd30000ded30000e0d30000e2d30000e4d30000e6d30000e8d30000ead30000ecd30000eed30000f0d30000
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -826,7 +826,7 @@ MonoBehaviour:
   m_ListAreaState:
     m_SelectedInstanceIDs: 
     m_LastClickedInstanceID: 0
-    m_HadKeyboardFocusLastEvent: 1
+    m_HadKeyboardFocusLastEvent: 0
     m_ExpandedInstanceIDs: d02e01001ef900002afc000092f80000f0f70000d8fa000046fa0000f0f80000dc5b0100d05b0100c85b0100cc5b01004a0b0100de0b0100de0a01009e0b0100220b0100
     m_RenameOverlay:
       m_UserAcceptedRename: 0
@@ -854,7 +854,7 @@ MonoBehaviour:
     m_ScrollPosition: {x: 0, y: 0}
     m_GridSize: 16
   m_SkipHiddenPackages: 0
-  m_DirectoriesAreaWidth: 257
+  m_DirectoriesAreaWidth: 207
 --- !u!114 &22
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -875,10 +875,10 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 721
-    y: 616
-    width: 638
-    height: 616
+    x: 584
+    y: 600
+    width: 603
+    height: 537
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -920,7 +920,7 @@ MonoBehaviour:
     m_VAllowExceedBaseRangeMax: 1
     m_ScaleWithWindow: 0
     m_HSlider: 0
-    m_VSlider: 0
+    m_VSlider: 1
     m_IgnoreScrollWheelUntilClicked: 0
     m_EnableMouseInput: 1
     m_EnableSliderZoomHorizontal: 0
@@ -931,23 +931,23 @@ MonoBehaviour:
       serializedVersion: 2
       x: 0
       y: 21
-      width: 638
-      height: 595
-    m_Scale: {x: 0.36637932, y: 0.36637932}
-    m_Translation: {x: 319, y: 297.5}
+      width: 603
+      height: 516
+    m_Scale: {x: 0.317734, y: 0.317734}
+    m_Translation: {x: 301.5, y: 257.99997}
     m_MarginLeft: 0
     m_MarginRight: 0
     m_MarginTop: 0
     m_MarginBottom: 0
     m_LastShownAreaInsideMargins:
       serializedVersion: 2
-      x: -870.6823
-      y: -812
-      width: 1741.3646
-      height: 1624
+      x: -948.9069
+      y: -811.9999
+      width: 1897.8138
+      height: 1623.9999
     m_MinimalGUI: 1
-  m_defaultScale: 0.36637932
-  m_LastWindowPixelSize: {x: 638, y: 616}
+  m_defaultScale: 0.317734
+  m_LastWindowPixelSize: {x: 603, y: 537}
   m_ClearInEditMode: 1
   m_NoCameraWarning: 1
   m_LowResolutionForAspectRatios: 01000000000000000000
@@ -975,8 +975,8 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 73
-    width: 1360
-    height: 522
+    width: 1188
+    height: 506
   m_SerializedDataModeController:
     m_DataMode: 0
     m_PreferredDataMode: 0
@@ -1069,9 +1069,9 @@ MonoBehaviour:
       floating: 0
       collapsed: 0
       displayed: 1
-      snapOffset: {x: 67.5, y: -123}
+      snapOffset: {x: 67.5, y: 0}
       snapOffsetDelta: {x: 0, y: 0}
-      snapCorner: 2
+      snapCorner: 0
       id: Orientation
       index: 0
       layout: 4
@@ -1277,9 +1277,9 @@ MonoBehaviour:
       floating: 0
       collapsed: 0
       displayed: 1
-      snapOffset: {x: 48, y: -172}
-      snapOffsetDelta: {x: 0, y: -70}
-      snapCorner: 2
+      snapOffset: {x: 48, y: 0}
+      snapOffsetDelta: {x: 0, y: 0}
+      snapCorner: 0
       id: AINavigationOverlay
       index: 9
       layout: 4
@@ -1324,6 +1324,19 @@ MonoBehaviour:
       layout: 4
       size: {x: 0, y: 0}
       sizeOverriden: 0
+    - dockPosition: 1
+      containerId: overlay-container--right
+      floating: 0
+      collapsed: 0
+      displayed: 1
+      snapOffset: {x: 48, y: 48}
+      snapOffsetDelta: {x: 0, y: 0}
+      snapCorner: 0
+      id: UnityEditor.SceneViewCameraOverlay
+      index: 13
+      layout: 4
+      size: {x: 0, y: 0}
+      sizeOverriden: 0
     m_OverlaysVisible: 1
   m_WindowGUID: 6ec4b650245f86f4b853159290a53aa0
   m_Gizmos: 1
@@ -1335,9 +1348,9 @@ MonoBehaviour:
   m_PlayAudio: 0
   m_AudioPlay: 0
   m_Position:
-    m_Target: {x: 3.281315, y: 5.2639074, z: -1.1020046}
+    m_Target: {x: -8.23, y: 0.7833333, z: -71.119995}
     speed: 2
-    m_Value: {x: 3.281315, y: 5.2639074, z: -1.1020046}
+    m_Value: {x: -5.66141, y: 0.7833333, z: -69.04968}
   m_RenderMode: 0
   m_CameraMode:
     drawMode: 0
@@ -1383,13 +1396,13 @@ MonoBehaviour:
     m_GridAxis: 1
     m_gridOpacity: 0.5
   m_Rotation:
-    m_Target: {x: -0.14116073, y: -0.32993627, z: 0.049978696, w: -0.93207264}
+    m_Target: {x: -0.08632583, y: -0.8646282, z: 0.46877205, w: -0.15918438}
     speed: 2
-    m_Value: {x: -0.13983363, y: -0.32860526, z: 0.049272977, w: -0.932758}
+    m_Value: {x: -0.08632062, y: -0.8645759, z: 0.4687437, w: -0.15917476}
   m_Size:
-    m_Target: 23.085087
+    m_Target: 30.832464
     speed: 2
-    m_Value: 22.090992
+    m_Value: 29.504751
   m_Ortho:
     m_Target: 0
     speed: 2

部分文件因为文件数量过多而无法显示