blob: 9a703340f566cd062c27f493a369e076e9be8704 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#include "ParticleEmitter.h"
#include "api/Sprite.h"
using namespace crepe;
using namespace std;
ParticleEmitter::ParticleEmitter(game_object_id_t game_object_id, const Sprite & sprite,
const Data & data)
: Component(game_object_id),
sprite(sprite),
data(data) {
for (size_t i = 0; i < this->data.max_particles; i++) {
this->particles.emplace_back();
}
}
unique_ptr<Component> ParticleEmitter::save() const {
return unique_ptr<Component>{new ParticleEmitter(*this)};
}
void ParticleEmitter::restore(const Component & snapshot) {
*this = static_cast<const ParticleEmitter &>(snapshot);
}
ParticleEmitter & ParticleEmitter::operator=(const ParticleEmitter & other) {
this->particles = other.particles;
return *this;
}
|