From 4afa86a150d21bb48d6c8cf0018416377faa9084 Mon Sep 17 00:00:00 2001
From: Ebise Lutica <7106976+EbiseLutica@users.noreply.github.com>
Date: Thu, 1 Feb 2024 23:22:44 +0900
Subject: [PATCH] =?UTF-8?q?feat:=20=E3=82=B7=E3=83=BC=E3=83=B3=E3=81=8C?=
=?UTF-8?q?=E8=AA=AD=E3=81=BF=E8=BE=BC=E3=81=BE=E3=82=8C=E3=82=8B=E3=81=A8?=
=?UTF-8?q?=E3=81=8D=E3=81=AE=E3=82=A4=E3=83=99=E3=83=B3=E3=83=88?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Promete/PrometeApp.cs | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/Promete/PrometeApp.cs b/Promete/PrometeApp.cs
index ddb4d46..0e3ad20 100644
--- a/Promete/PrometeApp.cs
+++ b/Promete/PrometeApp.cs
@@ -137,10 +137,7 @@ public void Dispose()
/// 指定したシーンが存在しない。
public void LoadScene() where TScene : Scene
{
- currentScene?.OnDestroy();
-
- currentScene = provider.GetService() ?? throw new ArgumentException($"The scene \"{nameof(TScene)}\" is not registered.");
- currentScene.OnStart();
+ LoadScene(typeof(TScene));
}
///
@@ -153,6 +150,7 @@ public void LoadScene(Type typeScene)
currentScene?.OnDestroy();
currentScene = provider.GetService(typeScene) as Scene ?? throw new ArgumentException($"The scene \"{typeScene}\" is not registered.");
+ SceneWillChange?.Invoke();
currentScene.OnStart();
}
@@ -263,4 +261,6 @@ public PrometeApp Build() where TWindow : IWindow
return new PrometeApp(services, rendererTypes);
}
}
+
+ public event Action? SceneWillChange;
}