godot-escoria / escoria-issues

Central Escoria issue tracker
3 stars 0 forks source link

escoria.tscn cannot get loaded more than once and crashes Godot #236

Open jeancallisti opened 2 years ago

jeancallisti commented 2 years ago

Context Godot 3.4.2 stable 64 bits Mono Demo game : "develop" up to commit 9f4a5d5

Scenario :

Expected : the scene opens in Godot Observed : the console throws several errors related to the fact that reserved globals have already been registered. That's because _ready got executed again. That's because there's no check to see if the scene is already loaded. Also somehow it freezes the entirety of Godot.

Note : I tried to fix the bug myself by adding a boolean "already_loaded" but apparently I don't understand godot yet -- it still tries to load the scene and the error remains the same.

BHSDuncan commented 2 years ago

Please try to use the template provided for bugs, especially since we also need to know which version of Escoria and Godot you're using. Please do add that information to this ticket.

Thanks.

jeancallisti commented 2 years ago

updated

jeancallisti commented 2 years ago

Possible solution : Check if the instance currently being loaded is the "one true" Autoload instance (as opposed to a new instance created by Godot when you double-clicked on escoria.tscn), by doing this :

if self == AutoloadName:

(where AutoloadName refers to the global name given in the Autoload panel)