EffectsManager
Description
The EffectsManager will keep track of all the pre-made Particle Systems in the game. When a GameObject calls one of it's methods, such as Fire(), it will start the Fire Particle System on the position passed in turn the system on. In the constructor, it will make the max number of each system needed at once and put it into a list. As a default template, the number is five for each system.
Relationships
- GameManager : The EffectManager is created and maintained by the GameManager
- ParticleSystem : The EffectManager will hold a list of different Particle Systems and update them
Members
- List<ParticleSystem> particleSystems - A list that will hold all the premade systems that can be 'created' during the game
Methods
- Update
- Loops through the particleSystems list and checks to see if the isActive bool is on. If it's on, it will update it.
- Render
- Checks if each system's isActive is turned on, then render it if it is.
- Fire(Vector2 position, float zPosition)
- starts a fire particle system at the position given. Sets the particle system's isActive bool to true.
- WeatherEffects(Vector2 position, float zPosition)
- starts a weather effects particle system at the position given. Sets the particle system's isActive bool to true.
- Explosion(Vector2 position, float zPosition)
- starts a explosion particle system at the position given. Sets the particle system's isActive bool to true.
- Smoke(Vector2 position, float zPosition)
- starts a smoke particle system at the position given. Sets the particle system's isActive bool to true.
- Aura(Vector2 position, float zPosition)
- starts an aura particle system at the position given. Sets the particle system's isActive bool to true.