summaryrefslogtreecommitdiff
path: root/WorldlineKeepers/Assets/Scripts/Buffs/BuffBehaviour.cs
diff options
context:
space:
mode:
Diffstat (limited to 'WorldlineKeepers/Assets/Scripts/Buffs/BuffBehaviour.cs')
-rw-r--r--WorldlineKeepers/Assets/Scripts/Buffs/BuffBehaviour.cs81
1 files changed, 62 insertions, 19 deletions
diff --git a/WorldlineKeepers/Assets/Scripts/Buffs/BuffBehaviour.cs b/WorldlineKeepers/Assets/Scripts/Buffs/BuffBehaviour.cs
index 0a0559f..4e20202 100644
--- a/WorldlineKeepers/Assets/Scripts/Buffs/BuffBehaviour.cs
+++ b/WorldlineKeepers/Assets/Scripts/Buffs/BuffBehaviour.cs
@@ -2,31 +2,74 @@ using System.Collections;
using System.Collections.Generic;
using UnityEngine;
-public class BuffBehaviour
-{
- private CharacterBase m_Character;
-
- /// <summary>
- /// buff生成时候
- /// </summary>
- public virtual void OnCreate()
- {
+//https://zhuanlan.zhihu.com/p/150812545
+//https://developer.valvesoftware.com/wiki/Dota_2_Workshop_Tools/Scripting/Abilities_Data_Driven/zh
- }
+namespace WK
+{
/// <summary>
- /// 更新
+ /// Buff生命周期
+ /// 实例化 -> 加入列表前 -> 加入列表后 -> 更新 -> 移出列表前 -> 移出列表后
+ /// 每一步都会向当前对象作用域内广播消息
/// </summary>
- public virtual void OnUpdate()
+ public abstract class BuffBehaviour
{
+ /// <summary>
+ /// buff实例化时
+ /// </summary>
+ public virtual void OnCreate()
+ {
- }
+ }
- /// <summary>
- /// 角色死亡
- /// </summary>
- public virtual void OnCharacterDeath()
- {
- }
+ /// <summary>
+ /// 获得这个buff(加入列表前)
+ /// </summary>
+ public virtual void OnBeforeAttach()
+ {
+ }
+
+ /// <summary>
+ /// 加入列表后,激活这个buff
+ /// </summary>
+ public virtual void OnAfterAttach()
+ {
+
+ }
+
+ /// <summary>
+ /// 第一次Update前
+ /// </summary>
+ public virtual void OnStart()
+ {
+
+ }
+
+ /// <summary>
+ /// 从列表移出前
+ /// </summary>
+ public virtual void OnBeforeDeattach()
+ {
+
+ }
+
+ /// <summary>
+ /// 移除这个buff(移出列表后)
+ /// </summary>
+ public virtual void OnAfterDeattach()
+ {
+
+ }
+
+ /// <summary>
+ /// 每帧逻辑更新(如果需要的话)
+ /// </summary>
+ public virtual void OnUpdate()
+ {
+
+ }
+
+ }
}