summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Avatar/AbilitySystem.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts/Avatar/AbilitySystem.cs')
-rw-r--r--Assets/Scripts/Avatar/AbilitySystem.cs41
1 files changed, 18 insertions, 23 deletions
diff --git a/Assets/Scripts/Avatar/AbilitySystem.cs b/Assets/Scripts/Avatar/AbilitySystem.cs
index 46156c55..024e73cb 100644
--- a/Assets/Scripts/Avatar/AbilitySystem.cs
+++ b/Assets/Scripts/Avatar/AbilitySystem.cs
@@ -7,8 +7,6 @@ using UnityEngine;
/// </summary>
public class AbilitySystem
{
- private static List<AbilitySystem> AbilitySystems = new List<AbilitySystem>();
-
/// <summary>
/// 当前执行的ability
/// </summary>
@@ -26,23 +24,6 @@ public class AbilitySystem
public AbilitySystem()
{
- AbilitySystems.Add(this);
- }
-
- public static void Update()
- {
- foreach(var systems in AbilitySystems)
- {
- systems.OnUpdate();
- }
- }
-
- public static void LateUpdate()
- {
- foreach (var systems in AbilitySystems)
- {
- systems.OnLateUpdate();
- }
}
public void ForceStart(AbilityBase ability)
@@ -76,10 +57,24 @@ public class AbilitySystem
{
m_Currrent.OnLateUpdate();
}
- }
-
-
- public void SwitchToAbility(AbilityBase targetAbility)
+ }
+
+ public void OnHit(PhysicsCollisionInfo info)
+ {
+ if(m_Currrent != null)
+ {
+ m_Currrent.OnHit(info);
+ }
+ }
+ public void OnHurt(PhysicsCollisionInfo info)
+ {
+ if (m_Currrent != null)
+ {
+ m_Currrent.OnHurt(info);
+ }
+ }
+
+ public void SwitchToAbility(AbilityBase targetAbility)
{
if (m_Currrent != null)
m_Currrent.OnExit();