public override void Update(double Time, IEffectInterface Interface) { if (this.Reaction._Phase < this.Phase) { Interface.Delete(); } }
/// <summary> /// Updates the state of the effect by the given time. /// </summary> public abstract void Update(double Time, IEffectInterface Interface);
public override void Update(double Time, IEffectInterface Interface) { if (this.Reaction._Phase < this.Phase) { if (this.Reaction.Target != this.Target) { // Send an orb to the next reactant. Interface.Spawn(new _ReactionOrbEffect() { Phase = this.Phase - 1, StartPos = this.Target.Position, StartRadius = this.Target.Radius, Target = this.Target.LinkedParent, Reaction = this.Reaction }); } Interface.Delete(); } }