public static Particle createParticle(ParticleEnum particleType,Vector2 position, float size, Vector2 direction) { Particle particle = new Particle(); particle.data.Position = position; particle.data.Scaling = size; particle.data.direction = direction; return createParticle(particle,particleType); }
public void addParticle(string sourceObject, Particle particle) { //Verify if managerlist is null if (managerList == null) managerList = new Dictionary<string, List<Particle>>(); //verify if the key entry already exist if (!managerList.Keys.Contains(sourceObject)) { managerList.Add(sourceObject, new List<Particle>()); } managerList[sourceObject].Add(getParticleType(particle)); }
public static void getDirection(Particle particle) { float posXToSet = particle.data.direction.X > 0 ? (float)-Util.getNextDouble() : (float)Util.getNextDouble(); float posYToSet = particle.data.direction.Y > 0 ? (float)-Util.getNextDouble() : (float)Util.getNextDouble(); particle.data.direction = new Vector2(posXToSet,posYToSet); }
private static Particle getParticleType(Particle particle) { if (particle is Smoke) { Smoke smoke = particle as Smoke; smoke.init(null); return smoke; } if (particle is Explosion) { Explosion explosion = particle as Explosion; explosion.init(null); return explosion; } return null; }
private static Particle createParticle(Particle particle,ParticleEnum particleType) { if (particleType == ParticleEnum.Smoke) { Smoke smoke = new Smoke(particle.data.Position, particle.data.Scaling, particle.data.direction); smoke.init(null); return smoke; } if (particleType == ParticleEnum.Explosion) { Explosion explosion = new Explosion(particle.data.Position,particle.data.Scaling,particle.data.direction); explosion.init(null); return explosion; } return null; }