From 830922541296d049cd5c0689c1f610586f56bc75 Mon Sep 17 00:00:00 2001 From: MegaMech Date: Sat, 28 Dec 2024 00:25:41 -0700 Subject: Reimpl Lakitu --- src/engine/World.cpp | 27 +++++++++------------------ 1 file changed, 9 insertions(+), 18 deletions(-) (limited to 'src/engine/World.cpp') diff --git a/src/engine/World.cpp b/src/engine/World.cpp index 429b402a0..b14c45219 100644 --- a/src/engine/World.cpp +++ b/src/engine/World.cpp @@ -235,13 +235,6 @@ void World::TickActors() { } } -void RemoveExpiredActors() { - // Actors.erase( - // std::remove_if(Actors.begin(), Actors.end(), - // [](const std::unique_ptr& actor) { return actor->uuid == 0; }), - // Actors.end()); -} - OObject* World::AddObject(OObject* object) { Objects.push_back(object); return Objects.back(); @@ -249,25 +242,23 @@ OObject* World::AddObject(OObject* object) { void World::TickObjects() { for (const auto& object : Objects) { - object->Tick(); + object->Tick(); } } -void World::DrawObjects(s32 cameraId) { +// Some objects such as lakitu are ticked in process_game_tick. +// This is a fallback to support those objects. Probably don't use this. +void World::TickObjects60fps() { for (const auto& object : Objects) { - object->Draw(cameraId); + object->Tick60fps(); } } -void World::ExpiredObjects() { - //this->Objects.erase( - // std::remove_if(this->Objects.begin(), this->Objects.end(), - // [](const std::unique_ptr& object) { return object->uuid == 0; }), // Example condition - // this->Objects.end()); -} - -void World::DestroyObjects() { +void World::DrawObjects(s32 cameraId) { + for (const auto& object : Objects) { + object->Draw(cameraId); + } } Object* World::GetObjectByIndex(size_t index) { -- cgit v1.2.3