Example #1
0
 private IEnumerator ExecuteInterval(float interval, ModifierContext context)
 {
     while (true)
     {
         ExecuteCommands(context);
         yield return(new WaitForLogicSeconds(interval));
     }
 }
Example #2
0
 public override void Execute(ModifierContext context)
 {
     foreach (var modifier in modifiers)
     {
         modifier.Execute(context);
     }
     if (m_Duration > 0)
     {
         m_AutoKill = AutoKill();
         Game.Instance.coroutineManager.StartLogic(m_AutoKill);
     }
 }
Example #3
0
 protected void ExecuteCommands(ModifierContext context)
 {
     if (m_Commands != null)
     {
         var ctx = new AbilityCommandContext
         {
             caster = context.caster,
             target = context.owner
         };
         foreach (var cmd in m_Commands)
         {
             cmd.Execute(ctx);
         }
     }
 }
Example #4
0
 public abstract void Execute(ModifierContext context);
Example #5
0
 public override void Execute(ModifierContext context)
 {
     m_Context = context;
 }
Example #6
0
 public override void Execute(ModifierContext context)
 {
     ExecuteCommands(context);
 }
Example #7
0
 public override void Execute(ModifierContext context)
 {
     m_IntervalEnumrator = ExecuteInterval(m_Interval, context);
     Game.Instance.coroutineManager.StartLogic(m_IntervalEnumrator);
 }