diff options
Diffstat (limited to 'src/engine/World.cpp')
| -rw-r--r-- | src/engine/World.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/engine/World.cpp b/src/engine/World.cpp index b14c45219..5cd85213b 100644 --- a/src/engine/World.cpp +++ b/src/engine/World.cpp @@ -254,6 +254,10 @@ void World::TickObjects60fps() { } } +ParticleEmitter* World::AddEmitter(ParticleEmitter* emitter) { + Emitters.push_back(emitter); + return Emitters.back(); +} void World::DrawObjects(s32 cameraId) { for (const auto& object : Objects) { @@ -261,6 +265,18 @@ void World::DrawObjects(s32 cameraId) { } } +void World::TickParticles() { + for (const auto& emitter : Emitters) { + emitter->Tick(); + } +} + +void World::DrawParticles(s32 cameraId) { + for (const auto& emitter : Emitters) { + emitter->Draw(cameraId); + } +} + Object* World::GetObjectByIndex(size_t index) { //if (index < this->Objects.size()) { // Assuming GameActor::a is accessible, use reinterpret_cast if needed |
