extends Node ## Parse-Vorlauf: lädt jedes Skript einmal und beendet sich mit Fehlercode. ## Ein Parse-Fehler in der Suite ließe Godot sonst bis zum Timeout hängen. func _ready() -> void: var fehler := 0 var anzahl := 0 for pfad in _skripte("res://scripts") + _skripte("res://tests"): anzahl += 1 var s: Variant = load(pfad) if s == null or not (s is GDScript) or not (s as GDScript).can_instantiate(): fehler += 1 print("PARSE FEHLER " + pfad) print("Parse-Vorlauf: %d Skripte, %d Fehler" % [anzahl, fehler]) get_tree().quit(1 if fehler > 0 else 0) func _skripte(ordner: String) -> Array: var out: Array = [] for name in DirAccess.get_files_at(ordner): if name.ends_with(".gd") and not name.begins_with("_"): out.append(ordner + "/" + name) out.sort() return out