blob: 341c1e20abd7970821ed4afd9243b5dfc85acb12 (
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
29
|
#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;
}
|