You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
C#: Create script instance of reloaded scripts even if they're not tools
Scripts that are instantiated at some point will always be recreated if they ever become placeholders to prevent non-tool scripts instantiated manually by users to become placeholders, if they do become placeholders due to errors that prevent instantiation (such as a missing parameterless constructor) these scripts will also be recreated replacing the temporary placeholder. If a script is marked as a tool but becomes a non-tool script in a rebuild, the script will become a placeholder and will no longer be considered applicable to be replaced by an instance since the user explicitly removed the Tool attribute.
This commit is contained in:
@@ -90,6 +90,9 @@ class CSharpScript : public Script {
|
||||
|
||||
HashSet<ObjectID> pending_reload_instances;
|
||||
RBMap<ObjectID, StateBackup> pending_reload_state;
|
||||
|
||||
bool was_tool_before_reload = false;
|
||||
HashSet<ObjectID> pending_replace_placeholders;
|
||||
#endif
|
||||
|
||||
String source;
|
||||
|
||||
Reference in New Issue
Block a user