diff options
Diffstat (limited to 'src/crepe/ParticleEmitter.hpp')
-rw-r--r-- | src/crepe/ParticleEmitter.hpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/crepe/ParticleEmitter.hpp b/src/crepe/ParticleEmitter.hpp new file mode 100644 index 0000000..682a2ae --- /dev/null +++ b/src/crepe/ParticleEmitter.hpp @@ -0,0 +1,28 @@ +#pragma once + +#include <vector> +#include <cstdlib> +#include <ctime> +#include "Particle.hpp" +#include <cmath> + +class ParticleEmitter { +public: + std::vector<Particle> particles; + + struct Position { + int x; + int y; + } position; + + int maxParticles; + float emissionRate; + float elapsedTime; + + ParticleEmitter(int maxParticles, float emissionRate); + void update(float deltaTime); + +private: + void emitParticle(); + float randFloat(float minangle, float maxangle, float minVel, float maxVel); +}; |