diff options
-rw-r--r-- | modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs | 17 | ||||
-rw-r--r-- | modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs | 2 |
2 files changed, 12 insertions, 7 deletions
diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs index 968afa664b..e344dc84c7 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs @@ -310,13 +310,6 @@ namespace Godot.Bridge _pathTypeBiMap.Add(scriptPathAttr.Path, type); - // This method may be called before initialization. - if (NativeFuncs.godotsharp_dotnet_module_is_initialized().ToBool() && Engine.IsEditorHint()) - { - using godot_string scriptPath = Marshaling.ConvertStringToNative(scriptPathAttr.Path); - NativeFuncs.godotsharp_internal_editor_file_system_update_file(scriptPath); - } - if (AlcReloadCfg.IsAlcReloadingEnabled) { AddTypeForAlcReloading(type); @@ -366,6 +359,16 @@ namespace Godot.Bridge } } } + + // This method may be called before initialization. + if (NativeFuncs.godotsharp_dotnet_module_is_initialized().ToBool() && Engine.IsEditorHint()) + { + foreach (var scriptPath in _pathTypeBiMap.Paths) + { + using godot_string nativeScriptPath = Marshaling.ConvertStringToNative(scriptPath); + NativeFuncs.godotsharp_internal_editor_file_system_update_file(nativeScriptPath); + } + } } [UnmanagedCallersOnly] diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs index a58f6849ad..7fa3498b92 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs @@ -61,6 +61,8 @@ public static partial class ScriptManagerBridge private System.Collections.Generic.Dictionary<string, Type> _pathTypeMap = new(); private System.Collections.Generic.Dictionary<Type, string> _typePathMap = new(); + public System.Collections.Generic.IEnumerable<string> Paths => _pathTypeMap.Keys; + public void Add(string scriptPath, Type scriptType) { _pathTypeMap.Add(scriptPath, scriptType); |