summaryrefslogtreecommitdiff
path: root/Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs')
-rw-r--r--Client/Assets/Scripts/XMainClient/Buff/XBuffTriggerByStacking.cs30
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();
+ }
+ }
+}