From 000c47e6100770a634fa01a1457c28ca8e2b860e Mon Sep 17 00:00:00 2001 From: MegaMech Date: Thu, 5 Mar 2026 13:51:59 -0700 Subject: Fix retry issue with actors (#669) * Update World.h * Update World.cpp * Update Game.cpp --- src/engine/World.cpp | 7 +++++++ src/engine/World.h | 1 + src/port/Game.cpp | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) 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; -- cgit v1.2.3