Fix play mode runtime scene replacement

This commit is contained in:
2026-04-08 00:33:50 +08:00
parent 69cb80ccd4
commit 23ff4004f4
9 changed files with 149 additions and 0 deletions

View File

@@ -46,6 +46,18 @@ void SceneRuntime::Stop() {
m_scene = nullptr;
}
void SceneRuntime::ReplaceScene(Scene* scene) {
if (!m_running) {
m_scene = scene;
m_uiRuntime->Reset();
return;
}
m_scene = scene;
m_uiRuntime->Reset();
Scripting::ScriptEngine::Get().OnRuntimeSceneReplaced(scene);
}
void SceneRuntime::FixedUpdate(float fixedDeltaTime) {
if (!m_running || !m_scene || !m_scene->IsActive()) {
return;