diff --git a/Source/Editor/States/PlayingState.cs b/Source/Editor/States/PlayingState.cs index bcc982235..6b946b23e 100644 --- a/Source/Editor/States/PlayingState.cs +++ b/Source/Editor/States/PlayingState.cs @@ -131,12 +131,11 @@ namespace FlaxEditor.States _duplicateScenes.GatherSceneData(); Editor.Internal_SetPlayMode(true); IsPaused = false; + PluginManager.InitializeGamePlugins(); _duplicateScenes.CreateScenes(); SceneDuplicated?.Invoke(); RestoreSelection(); - PluginManager.InitializeGamePlugins(); - Editor.OnPlayBegin(); } @@ -165,6 +164,7 @@ namespace FlaxEditor.States // Restore editor scene SceneRestoring?.Invoke(); _duplicateScenes.DeletedScenes(); + PluginManager.DeinitializeGamePlugins(); Editor.Internal_SetPlayMode(false); _duplicateScenes.RestoreSceneData(); SceneRestored?.Invoke(); @@ -177,8 +177,6 @@ namespace FlaxEditor.States IsPaused = true; RestoreSelection(); - PluginManager.DeinitializeGamePlugins(); - Editor.OnPlayEnd(); } } diff --git a/Source/Engine/Scripting/Plugins/PluginManager.cs b/Source/Engine/Scripting/Plugins/PluginManager.cs index e6da10e2f..da0d7642d 100644 --- a/Source/Engine/Scripting/Plugins/PluginManager.cs +++ b/Source/Engine/Scripting/Plugins/PluginManager.cs @@ -82,10 +82,8 @@ namespace FlaxEngine //return !pluginDesc.DisabledByDefault; } - /// - /// Initialize all - /// - public static void InitializeGamePlugins() +#if FLAX_EDITOR + internal static void InitializeGamePlugins() { for (var i = 0; i < _gamePlugins.Count; i++) { @@ -93,16 +91,14 @@ namespace FlaxEngine } } - /// - /// Deinitialize all - /// - public static void DeinitializeGamePlugins() + internal static void DeinitializeGamePlugins() { for (var i = _gamePlugins.Count - 1; i >= 0; i--) { InvokeDeinitialize(_gamePlugins[i]); } } +#endif private static void InvokeInitialize(Plugin plugin) {