DESKTOP-FB72PO8\Administrator vor 5 Monaten
Ursprung
Commit
03f682b3d3
22 geänderte Dateien mit 394 neuen und 50 gelöschten Zeilen
  1. 14 0
      Assets/Art/VFX/FXPrefabs/fx_guaiwu01_at_hit.prefab
  2. 14 0
      Assets/Art/VFX/FXPrefabs/fx_guaiwu01_die.prefab
  3. 14 0
      Assets/Art/VFX/FXPrefabs/fx_guaiwu01_sk_hit.prefab
  4. 14 0
      Assets/Art/VFX/FXPrefabs/fx_hero01_dg_hit.prefab
  5. 14 0
      Assets/Art/VFX/FXPrefabs/fx_hero02_zd_hit.prefab
  6. 14 0
      Assets/Art/VFX/FXPrefabs/fx_hero03_sk1_hit.prefab
  7. 14 0
      Assets/Art/VFX/FXPrefabs/fx_hero03_sk1_lv4_hit.prefab
  8. 14 0
      Assets/Art/VFX/FXPrefabs/fx_hero03_sk_hit.prefab
  9. 14 0
      Assets/Art/VFX/FXPrefabs/fx_hero03_zd_hit.prefab
  10. 14 0
      Assets/Art/VFX/FXPrefabs/fx_hero04_zd_hit.prefab
  11. 130 23
      Assets/Art/VFX/HeroFXprefab/fx_603_sk3_hit.prefab
  12. 14 0
      Assets/Art/VFX/HeroFXprefab/fx_gongjian_sk_zd_hit.prefab
  13. 26 3
      Assets/Res/UI/UIanima/HeroBags.controller
  14. 21 0
      Assets/Scripts/Core/Pool/GPool/GObjectPool.cs
  15. 9 0
      Assets/Scripts/Core/Pool/GPool/GObjectPoolMaxConfig.cs
  16. 3 0
      Assets/Scripts/Core/Pool/GPool/GObjectPoolMaxConfig.cs.meta
  17. 5 6
      Assets/Scripts/Core/Pool/GPool/IGObjectPoolInterface.cs
  18. 14 8
      Assets/Scripts/GameLogic/Combat/CombatType/LevelBattleCombatType.cs
  19. 1 0
      Assets/Scripts/GameLogic/Combat/Hero/CombatAIBasic.cs
  20. 1 0
      Assets/Scripts/GameLogic/Combat/Hero/State/CombatHeroDieState.cs
  21. 29 9
      Assets/Scripts/GameLogic/Combat/Hero/State/CombatResurrectionState.cs
  22. 1 1
      Assets/Scripts/GameTimeLine/CustomizeTimeLogic/FxLogic/TimeLineEventLogic/TimeLineEventParticleLogicBasic.cs

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_guaiwu01_at_hit.prefab

@@ -4842,6 +4842,7 @@ GameObject:
   - component: {fileID: 2391214139712508477}
   - component: {fileID: 8263143887051439792}
   - component: {fileID: 627297391547389430}
+  - component: {fileID: -2970091474297192461}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_guaiwu01_at_hit
@@ -9665,6 +9666,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &-2970091474297192461
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5934731247804677356}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &8728017481521943938
 GameObject:
   m_ObjectHideFlags: 0

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_guaiwu01_die.prefab

@@ -9724,6 +9724,7 @@ GameObject:
   - component: {fileID: 1677558181679218354}
   - component: {fileID: 258334299678822200}
   - component: {fileID: 7879689738200876198}
+  - component: {fileID: 4418200018231440400}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_guaiwu01_die
@@ -14548,3 +14549,16 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &4418200018231440400
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5039080371210214037}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_guaiwu01_sk_hit.prefab

@@ -11,6 +11,7 @@ GameObject:
   - component: {fileID: 920010866107276418}
   - component: {fileID: 7931281332945229807}
   - component: {fileID: 1677333060598168878}
+  - component: {fileID: 194973405716336527}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_guaiwu01_sk_hit
@@ -4834,6 +4835,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &194973405716336527
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1282417441053168607}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &3591957272826175228
 GameObject:
   m_ObjectHideFlags: 0

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_hero01_dg_hit.prefab

@@ -11,6 +11,7 @@ GameObject:
   - component: {fileID: 7589859027026631610}
   - component: {fileID: 7405869792437613338}
   - component: {fileID: 6545904413646209674}
+  - component: {fileID: -7717697507252797586}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_hero01_dg_hit
@@ -4834,6 +4835,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &-7717697507252797586
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 309758237762270697}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &2493403089779468578
 GameObject:
   m_ObjectHideFlags: 0

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_hero02_zd_hit.prefab

@@ -11,6 +11,7 @@ GameObject:
   - component: {fileID: 7852710725707347800}
   - component: {fileID: 7759154678907205045}
   - component: {fileID: 2747605091316404910}
+  - component: {fileID: 4961394467945857936}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_hero02_zd_hit
@@ -4834,6 +4835,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &4961394467945857936
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2828168807183939834}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &5229186407457714707
 GameObject:
   m_ObjectHideFlags: 0

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_hero03_sk1_hit.prefab

@@ -9742,6 +9742,7 @@ GameObject:
   - component: {fileID: 449570336107981196}
   - component: {fileID: 4398123368722598120}
   - component: {fileID: 2328962847138424401}
+  - component: {fileID: -8261708872414008055}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_hero03_sk1_hit
@@ -14566,3 +14567,16 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &-8261708872414008055
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7483982782013190016}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_hero03_sk1_lv4_hit.prefab

@@ -14711,6 +14711,7 @@ GameObject:
   - component: {fileID: 5968623437188924878}
   - component: {fileID: 139716026876664832}
   - component: {fileID: 266506664101592619}
+  - component: {fileID: 876276133456894281}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_hero03_sk1_lv4_hit
@@ -19538,6 +19539,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &876276133456894281
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2753842670328632815}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &2848531061900182149
 GameObject:
   m_ObjectHideFlags: 0

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_hero03_sk_hit.prefab

@@ -11,6 +11,7 @@ GameObject:
   - component: {fileID: 6828286202281684576}
   - component: {fileID: 2764550553641739945}
   - component: {fileID: 1763058724041857425}
+  - component: {fileID: -5862399702487565788}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_hero03_sk_hit
@@ -4834,6 +4835,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &-5862399702487565788
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1965611350837255418}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &4954060659195869804
 GameObject:
   m_ObjectHideFlags: 0

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_hero03_zd_hit.prefab

@@ -11,6 +11,7 @@ GameObject:
   - component: {fileID: 766331252454752534}
   - component: {fileID: 3820164377198207087}
   - component: {fileID: 5822543777148649353}
+  - component: {fileID: -8574037464018196363}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_hero03_zd_hit
@@ -4835,6 +4836,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &-8574037464018196363
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 530877514752568608}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &2659719916122660210
 GameObject:
   m_ObjectHideFlags: 0

+ 14 - 0
Assets/Art/VFX/FXPrefabs/fx_hero04_zd_hit.prefab

@@ -4842,6 +4842,7 @@ GameObject:
   - component: {fileID: 4880644387494166673}
   - component: {fileID: 8119259997021687905}
   - component: {fileID: 495837272966600090}
+  - component: {fileID: -466613625417137047}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_hero04_zd_hit
@@ -9665,6 +9666,19 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &-466613625417137047
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2985535366709086718}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10
 --- !u!1 &7452705930984504615
 GameObject:
   m_ObjectHideFlags: 0

Datei-Diff unterdrückt, da er zu groß ist
+ 130 - 23
Assets/Art/VFX/HeroFXprefab/fx_603_sk3_hit.prefab


+ 14 - 0
Assets/Art/VFX/HeroFXprefab/fx_gongjian_sk_zd_hit.prefab

@@ -19584,6 +19584,7 @@ GameObject:
   - component: {fileID: 1924386443425533460}
   - component: {fileID: 8681056568617177554}
   - component: {fileID: 5453167009125460367}
+  - component: {fileID: -6333424664959680132}
   m_Layer: 0
   m_HasEditorInfo: 1
   m_Name: fx_gongjian_sk_zd_hit
@@ -24410,3 +24411,16 @@ ParticleSystemRenderer:
   m_MeshWeighting2: 1
   m_MeshWeighting3: 1
   m_MaskInteraction: 0
+--- !u!114 &-6333424664959680132
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7136859062725401072}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  maxCount: 10

+ 26 - 3
Assets/Res/UI/UIanima/HeroBags.controller

@@ -48,6 +48,28 @@ AnimatorController:
     m_IKPass: 0
     m_SyncedLayerAffectsTiming: 0
     m_Controller: {fileID: 9100000}
+--- !u!1101 &3907886702218848114
+AnimatorStateTransition:
+  m_ObjectHideFlags: 1
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: 
+  m_Conditions: []
+  m_DstStateMachine: {fileID: 0}
+  m_DstState: {fileID: -5766007136486252394}
+  m_Solo: 0
+  m_Mute: 0
+  m_IsExit: 0
+  serializedVersion: 3
+  m_TransitionDuration: 0.02006507
+  m_TransitionOffset: 0
+  m_ExitTime: 0.9754611
+  m_HasExitTime: 1
+  m_HasFixedDuration: 1
+  m_InterruptionSource: 0
+  m_OrderedInterruption: 1
+  m_CanTransitionToSelf: 1
 --- !u!1102 &5755886802506238653
 AnimatorState:
   serializedVersion: 6
@@ -58,7 +80,8 @@ AnimatorState:
   m_Name: HeroBags_pick
   m_Speed: 1
   m_CycleOffset: 0
-  m_Transitions: []
+  m_Transitions:
+  - {fileID: 3907886702218848114}
   m_StateMachineBehaviours: []
   m_Position: {x: 50, y: 50, z: 0}
   m_IKOnFeet: 0
@@ -85,10 +108,10 @@ AnimatorStateMachine:
   m_ChildStates:
   - serializedVersion: 1
     m_State: {fileID: -5766007136486252394}
-    m_Position: {x: 200, y: 0, z: 0}
+    m_Position: {x: 270, y: 50, z: 0}
   - serializedVersion: 1
     m_State: {fileID: 5755886802506238653}
-    m_Position: {x: 190, y: 180, z: 0}
+    m_Position: {x: 280, y: 190, z: 0}
   m_ChildStateMachines: []
   m_AnyStateTransitions: []
   m_EntryTransitions: []

+ 21 - 0
Assets/Scripts/Core/Pool/GPool/GObjectPool.cs

@@ -4,6 +4,7 @@ using System.Reflection;
 using CombatLibrary.CombatLibrary.CombatCore.Utility;
 using Fort23.Core;
 #if !COMBAT_SERVER
+using Core.Pool.GPool;
 using UnityEngine;
 using Object = UnityEngine.Object;
 #endif
@@ -20,6 +21,7 @@ namespace Fort23.UTool
         private bool _isDis;
         private string _poolName;
         private string _prefabName;
+        private int maxCount = -1;
 #if !COMBAT_SERVER
         /// <summary>
         /// 池子的父亲
@@ -34,6 +36,7 @@ namespace Fort23.UTool
         private readonly List<IGObjectPoolInterface> _delayHide = new List<IGObjectPoolInterface>();
 
         public int initCopunt;
+        private bool _isSetMaxCount;
 
         public void Init(string poolName, string prefabName)
         {
@@ -214,6 +217,11 @@ namespace Fort23.UTool
         public async CTask<T> Dequeue<T>(bool isActive, Clock clock, bool isUseSynchronous)
             where T : IGObjectPoolInterface
         {
+            if (maxCount > 0 && _usePool.Count > maxCount)
+            {
+                return default;
+            }
+
             for (int i = 0; i < _queue.Count; i++)
             {
                 if (_queue[i].own == null)
@@ -379,6 +387,17 @@ namespace Fort23.UTool
 
         private void UseObject(IGObjectPoolInterface objectPoolInterface, bool isActive)
         {
+            if (!_isSetMaxCount)
+            {
+                _isSetMaxCount = true;
+                GObjectPoolMaxConfig gObjectPoolMaxConfig =
+                    objectPoolInterface.own.GetComponent<GObjectPoolMaxConfig>();
+                if (gObjectPoolMaxConfig != null)
+                {
+                    maxCount = gObjectPoolMaxConfig.maxCount;
+                }
+            }
+
             _usePool.Add(objectPoolInterface);
             DisposePoolEntity(objectPoolInterface);
             // TimerComponent.Instance.Remove(objectPoolInterface.DestroyTimer);
@@ -580,6 +599,8 @@ 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
         {

+ 9 - 0
Assets/Scripts/Core/Pool/GPool/GObjectPoolMaxConfig.cs

@@ -0,0 +1,9 @@
+using UnityEngine;
+
+namespace Core.Pool.GPool
+{
+    public class GObjectPoolMaxConfig: MonoBehaviour
+    {
+        public int maxCount;
+    }
+}

+ 3 - 0
Assets/Scripts/Core/Pool/GPool/GObjectPoolMaxConfig.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 3d6f7fa7f2c941ecb8d90677af7ad1b1
+timeCreated: 1733216748

+ 5 - 6
Assets/Scripts/Core/Pool/GPool/IGObjectPoolInterface.cs

@@ -17,13 +17,13 @@ namespace Fort23.UTool
         string poolObjName { get; set; }
         bool isUse { get; set; }
         bool isDestroy { get; }
-     
+
 #if !COMBAT_SERVER
-         AssetHandle AssetHandle { get; set; }
+        AssetHandle AssetHandle { get; set; }
         GameObject own { get; }
-               TimerEntity DestroyTimer { get; set; }
+        TimerEntity DestroyTimer { get; set; }
 #endif
-     
+
 
         void SetPosition(Vector3 pos);
         void SetScale(Vector3 scale);
@@ -39,7 +39,7 @@ namespace Fort23.UTool
         /// </summary>
         /// <returns></returns>
         CTask DelayHide();
-        
+
         /// <summary>
         /// 重置数据
         /// </summary>
@@ -63,6 +63,5 @@ namespace Fort23.UTool
         void SetGameObject(GameObject gameObject);
 #endif
         void Preset();
-        
     }
 }

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

@@ -48,11 +48,17 @@ namespace GameLogic.Combat.CombatType
             {
                 _exp = value;
                 CombatEventManager.Instance.Dispatch(CombatEventType.CombatExpAlter, null);
+                if (!isBossCombat&&exp >= _levelBattleConfig.exp) // 到达目标值,开始打boss
+                {
+                    StartBossCombat();
+                }
             }
         }
 
         private int _exp;
 
+        private int _simulatedExp;
+
         public int CurrMaxExp
         {
             get { return _levelBattleConfig.exp; }
@@ -75,6 +81,7 @@ namespace GameLogic.Combat.CombatType
             _levelBattleConfig = ConfigComponent.Instance.Get<LevelBattleConfig>(_startCombatInfo.levelBattleId);
             _currLevelBattleNodeIndex = 0;
             exp = 0;
+            _simulatedExp = 0;
         }
 
         protected override void ProHeroDie(CombatHeroEntity combatHeroEntity, HarmReturnInfo harmReturnInfo)
@@ -125,6 +132,7 @@ namespace GameLogic.Combat.CombatType
             InitNewMonsterConfig();
             isBossCombat = false;
             exp = 0;
+            _simulatedExp = 0;
             _currLevelBattleNodeIndex = 0;
             EventManager.Instance.Dispatch(CustomEventType.ShowBattleExp, null);
             isActiveCombat = true;
@@ -146,7 +154,6 @@ namespace GameLogic.Combat.CombatType
             EventManager.Instance.Dispatch(CustomEventType.Combat_ItemShow, combatItemShowEventData);
 
 
-            
             List<string> allEquip = new List<string>();
             for (int i = 0; i < 3; i++)
             {
@@ -168,20 +175,18 @@ namespace GameLogic.Combat.CombatType
             showTextEventData.worldPos = combatHeroEntity.combatHeroGameObject.position;
             EventManager.Instance.Dispatch(CustomEventType.ShowText, showTextEventData);
 
-            
+
             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;
+            expItemShow.addValue = 5;
+            _simulatedExp = 5;
             EventManager.Instance.Dispatch(CustomEventType.Combat_ItemShow, combatItemShowEventData);
-            if (exp >= _levelBattleConfig.exp) // 到达目标值,开始打boss
-            {
-                StartBossCombat();
-            }
-            else
+            
+            if (_simulatedExp < _levelBattleConfig.exp)
             {
                 CombatHeroEntity[] allHero = combatController.CombatHeroController.GetHero(true);
                 if (allHero == null || allHero.Length <= 0)
@@ -247,6 +252,7 @@ namespace GameLogic.Combat.CombatType
             }
 
             exp = 0;
+            _simulatedExp = 0;
             _currLevelBattleNodeIndex = 0;
             InitNewMonsterConfig();
             EventManager.Instance.Dispatch(CustomEventType.ShowBattleExp, null);

+ 1 - 0
Assets/Scripts/GameLogic/Combat/Hero/CombatAIBasic.cs

@@ -52,6 +52,7 @@ public class CombatAIBasic : IDisposable
         _combatHeroEntity = combatHeroEntity;
         stateControl = new StateControl();
         NavMeshAgent = navMeshAgent;
+        NavMeshAgent.enabled = true;
         // WeChatWASM.File
         // NavMeshAgent.enabled = false;
         // NavMeshObstacle=   navMeshAgent.gameObject.GetComponent<NavMeshObstacle>();

+ 1 - 0
Assets/Scripts/GameLogic/Combat/Hero/State/CombatHeroDieState.cs

@@ -25,6 +25,7 @@ namespace GameLogic.Combat.Hero.State
         protected override void ProEnter()
         {
 
+       
             isSwitch = false;
             resurrectionTime = 0;
             TimeLineEventLogicGroupBasic timeLineEventLogicGroup=combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("die");

+ 29 - 9
Assets/Scripts/GameLogic/Combat/Hero/State/CombatResurrectionState.cs

@@ -1,5 +1,6 @@
 using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
 using GameLogic.Combat.CombatTool;
+using GameLogic.Combat.CombatType;
 using UnityEngine;
 
 namespace GameLogic.Combat.Hero.State
@@ -11,20 +12,31 @@ namespace GameLogic.Combat.Hero.State
     {
         public CombatResurrectionState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity)
         {
-            
         }
 
         protected override void ProEnter()
         {
-            TimeLineEventLogicGroupBasic timeLineEventLogicGroupBasic=  combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("die_up");
+            
+            TimeLineEventLogicGroupBasic timeLineEventLogicGroupBasic =
+                combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("die_up");
 
             if (timeLineEventLogicGroupBasic != null)
             {
-                timeLineEventLogicGroupBasic.TimeLineUpdateEnd= delegate
+                timeLineEventLogicGroupBasic.TimeLineUpdateEnd = delegate
                 {
-                    if (combatHeroEntity.heroDieNodeId != CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount&&CombatController.currActiveCombat.CombatHeroController.followTarget!=null)
+                    combatHeroEntity.CombatAIBasic.NavMeshAgent.enabled = true;
+                    if (combatHeroEntity.heroDieNodeId !=
+                        CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount)
                     {
-                        combatHeroEntity.combatHeroGameObject.SetPosition(CombatController.currActiveCombat.CombatHeroController.followTarget.dotPos+new Vector3(1,0,0));
+                        Vector3 pos = CombatController.currActiveCombat.CombatTypeBasic.currBannerHero.dotPos;
+                        if (CombatController.currActiveCombat.CombatHeroController.followTarget != null)
+                        {
+                            pos = CombatController.currActiveCombat.CombatHeroController.followTarget.dotPos +
+                                  new Vector3(1, 0, 0);
+                        }
+
+                        combatHeroEntity.combatHeroGameObject.SetPosition(pos);
+                        combatHeroEntity.CombatAIBasic.NavMeshAgent.Warp(pos);
                     }
 
                     CombatController.currActiveCombat.CombatHeroController.ResurrectionDieHero(combatHeroEntity);
@@ -33,16 +45,24 @@ namespace GameLogic.Combat.Hero.State
             }
             else
             {
-                if (combatHeroEntity.heroDieNodeId != CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount&&CombatController.currActiveCombat.CombatHeroController.followTarget!=null)
+                combatHeroEntity.CombatAIBasic.NavMeshAgent.enabled = true;
+                if (combatHeroEntity.heroDieNodeId !=
+                    CombatController.currActiveCombat.CombatTypeBasic.allWinNodeCount)
                 {
-                    combatHeroEntity.combatHeroGameObject.SetPosition(CombatController.currActiveCombat.CombatHeroController.followTarget.dotPos+new Vector3(1,0,0));
+                    Vector3 pos = CombatController.currActiveCombat.CombatTypeBasic.currBannerHero.dotPos;
+                    if (CombatController.currActiveCombat.CombatHeroController.followTarget != null)
+                    {
+                        pos = CombatController.currActiveCombat.CombatHeroController.followTarget.dotPos +
+                              new Vector3(1, 0, 0);
+                    }
+
+                    combatHeroEntity.combatHeroGameObject.SetPosition(pos);
+                    combatHeroEntity.CombatAIBasic.NavMeshAgent.Warp(pos);
                 }
 
                 CombatController.currActiveCombat.CombatHeroController.ResurrectionDieHero(combatHeroEntity);
                 combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
             }
-
-
         }
 
         protected override void ProUpdate(float t)

+ 1 - 1
Assets/Scripts/GameTimeLine/CustomizeTimeLogic/FxLogic/TimeLineEventLogic/TimeLineEventParticleLogicBasic.cs

@@ -103,7 +103,7 @@ namespace UTool.CustomizeTimeLogic.FxLogic.TimeLineEventLogic
             ILifetCycleHitPoint lifeCycle = combatTarget[index];
             if (lifeCycle == null)
             {
-                LogTool.Log("一个空的目标");
+                // LogTool.Log("一个空的目标");
                 index++;
                 ExecuteFxTarget(combatTarget, index);
                 return;

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.