- 423 Objekte in 19 deutschen Kategorien (Panzer, Radfahrzeuge, Flugzeuge, Gebaeude, Zelte, Tuerme, Mauern, Sperren, Kisten, Technik, Felsen, Boden, Decals ...); Gruppen "Bauwerke" und "Kisten & Barrieren" samt Test-Asset-Namenslisten entfernt - LibraryBrowser: Gruppen/Namen aus dem Manifest (kategorie, name_de), unbekannte Kategorien bekommen automatisch eine eigene Gruppe - Thumbs neu, library/ synchronisiert (inkl. neuer Kollision) - Neue Identitaetsprobe: Kollision ALLER Objekte Editor = Client = Server - Tests auf Pack-Objekte umgestellt Co-Authored-By: Claude <noreply@anthropic.com>
36 lines
1.4 KiB
GDScript
36 lines
1.4 KiB
GDScript
extends SceneTree
|
|
## Beweis-Probe t_efb3d022: `[library]` enthält einen Array-Eintrag.
|
|
## Vor dem Fix: SCRIPT ERROR "Invalid call. Nonexistent 'bool' constructor"
|
|
## beim Laden der Klapp-Zustände (bool(<Array>) ist kein gültiger Konstruktor).
|
|
## Nach dem Fix: sauberes Laden, Zustände kommen zurück, keine Fehler.
|
|
##
|
|
## godot4 --headless --path . -s res://tests/probe_t_efb3d022_repro.gd
|
|
##
|
|
## Grep-Muster für den Gegenbeweis: "SCRIPT ERROR" + "Nonexistent 'bool' constructor"
|
|
|
|
|
|
func _initialize() -> void:
|
|
_run.call_deferred()
|
|
|
|
|
|
func _run() -> void:
|
|
# Kaputte cfg simulieren: Array-Eintrag (Nicht-Bool) neben echtem Bool,
|
|
# plus zuletzt_benutzt (U4 schreibt das Array in dieselbe Sektion).
|
|
var cfg := ConfigFile.new()
|
|
cfg.set_value("library", "zuletzt_benutzt", PackedStringArray(["box_002", "box_001"]))
|
|
cfg.set_value("library", "gruppen_kisten", true)
|
|
cfg.set_value("library", "gruppen_bauteile", false)
|
|
cfg.set_value("library", "array_gruppe", PackedStringArray(["a", "b"]))
|
|
cfg.save("user://scopedvr_editor.cfg")
|
|
|
|
var scene: PackedScene = load("res://scenes/main.tscn")
|
|
var main: Control = scene.instantiate()
|
|
root.add_child(main)
|
|
await process_frame
|
|
await process_frame
|
|
var assets = main.assets_mod
|
|
var states: Dictionary = assets._library_load_open_states()
|
|
print("STATES=", states)
|
|
print("PROBE_ENDE states=", states.size(), " kisten=", states.get("gruppen_kisten", "?"),
|
|
" bauteile=", states.get("gruppen_bauteile", "?"))
|
|
quit(0)
|