/* Sparx * Copyright August Zinsser 2007 * This program is distributed under the terms of the GNU General Public License */ using System; using System.Collections.Generic; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Storage; namespace Pina3D.Particles { public abstract class Force : SparxMortalEntity { protected float mDelay; protected float mMagnitude; protected Vector3 mForceVector; public float Delay { set { mDelay = value; } get { return mDelay; } } public virtual float Magnitude { set { mMagnitude = value; } get { return mMagnitude; } } public Force(string name) : this (name, 0f, 0f) { } public Force(string name, float lifeSpan, float delay) : base (name, lifeSpan, false) { mDelay = delay; } /// /// Applies the force to the specified entity /// public abstract void Update(Emission emission); } }