diff options
Diffstat (limited to 'Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs')
-rw-r--r-- | Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs b/Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs new file mode 100644 index 00000000..d792adec --- /dev/null +++ b/Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs @@ -0,0 +1,30 @@ +using System;
+
+namespace XMainClient
+{
+ internal class XBuffTriggerByStacking : XBuffTrigger
+ {
+ private uint m_Base;
+
+ public XBuffTriggerByStacking(XBuff buff) : base(buff)
+ {
+ this.m_Base = (uint)base._GetTriggerParamInt(buff.BuffInfo, 0);
+ bool flag = this.m_Base == 0u;
+ if (flag)
+ {
+ this.m_Base = 1u;
+ }
+ }
+
+ public override bool CheckTriggerCondition()
+ {
+ return this._Buff.StackCount % this.m_Base == 0u;
+ }
+
+ public override void OnAppend(XEntity entity)
+ {
+ base.OnAppend(entity);
+ base.Trigger();
+ }
+ }
+}
|