summaryrefslogtreecommitdiff
path: root/Assets/Scripts/AbilitySystem/AbilitySystem.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts/AbilitySystem/AbilitySystem.cs')
-rw-r--r--Assets/Scripts/AbilitySystem/AbilitySystem.cs90
1 files changed, 0 insertions, 90 deletions
diff --git a/Assets/Scripts/AbilitySystem/AbilitySystem.cs b/Assets/Scripts/AbilitySystem/AbilitySystem.cs
deleted file mode 100644
index 46156c55..00000000
--- a/Assets/Scripts/AbilitySystem/AbilitySystem.cs
+++ /dev/null
@@ -1,90 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-/// <summary>
-/// 每个角色拥有一个ablity system
-/// </summary>
-public class AbilitySystem
-{
- private static List<AbilitySystem> AbilitySystems = new List<AbilitySystem>();
-
- /// <summary>
- /// 当前执行的ability
- /// </summary>
- private AbilityBase m_Currrent;
-
- public AbilityBase Current
- {
- get
- {
- return m_Currrent;
- }
- }
-
- private List<AbilityBase> m_Abilities = new List<AbilityBase>();
-
- 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)
- {
- if (ability == null)
- return;
-
- if (m_Currrent != null)
- m_Currrent.OnExit();
-
- m_Currrent = ability;
- m_Currrent.OnEnter();
- }
-
- public void AddAbility(AbilityBase ability)
- {
- m_Abilities.Add(ability);
- }
-
- public void OnUpdate()
- {
- if(m_Currrent != null)
- {
- m_Currrent.OnUpdate();
- }
- }
-
- public void OnLateUpdate()
- {
- if(m_Currrent != null)
- {
- m_Currrent.OnLateUpdate();
- }
- }
-
-
- public void SwitchToAbility(AbilityBase targetAbility)
- {
- if (m_Currrent != null)
- m_Currrent.OnExit();
- m_Currrent = targetAbility;
- m_Currrent.OnEnter();
- }
-
-} \ No newline at end of file