diff options
| -rw-r--r-- | src/engine/World.cpp | 7 | ||||
| -rw-r--r-- | src/engine/World.h | 1 | ||||
| -rw-r--r-- | src/port/Game.cpp | 2 |
3 files changed, 9 insertions, 1 deletions
diff --git a/src/engine/World.cpp b/src/engine/World.cpp index d1619ae18..b35a39d91 100644 --- a/src/engine/World.cpp +++ b/src/engine/World.cpp @@ -273,3 +273,10 @@ void World::CleanWorld(void) { Lakitus.clear(); Sky::Instance->GetSkyActors().clear(); } + +void World::CleanActors(void) { + World::Reset(); + Actors.clear(); + Lakitus.clear(); + Objects.clear(); +} diff --git a/src/engine/World.h b/src/engine/World.h index 96b620bb6..6bc60ca2b 100644 --- a/src/engine/World.h +++ b/src/engine/World.h @@ -103,6 +103,7 @@ public: World* GetWorld(void); void CleanWorld(void); + void CleanActors(void); // getter/setter for current track Track* GetTrack() { diff --git a/src/port/Game.cpp b/src/port/Game.cpp index e5ac7f45c..a310cb845 100644 --- a/src/port/Game.cpp +++ b/src/port/Game.cpp @@ -366,7 +366,7 @@ void CM_DrawStaticMeshActors() { void CM_BeginPlay() { static bool tour = false; auto track = GetWorld()->GetTrack(); - GetWorld()->Actors.clear(); + GetWorld()->CleanActors(); if (nullptr == track) { return; |
