38 lines
960 B
GDScript
38 lines
960 B
GDScript
extends SceneTree
|
|
## Test loading and instantiating bison.glb prop
|
|
|
|
func _init() -> void:
|
|
print("=== Smoke Test: Bison Model ===")
|
|
var path := "res://assets/props/bison.glb"
|
|
if not FileAccess.file_exists(path):
|
|
printerr("FAIL: bison.glb does not exist on disk at ", path)
|
|
quit(1)
|
|
return
|
|
|
|
var res := load(path)
|
|
if res == null:
|
|
printerr("FAIL: Could not load ", path)
|
|
quit(1)
|
|
return
|
|
|
|
print("PASS: Loaded PackedScene: ", res)
|
|
if res is PackedScene:
|
|
var inst = (res as PackedScene).instantiate()
|
|
if inst == null:
|
|
printerr("FAIL: Could not instantiate bison scene")
|
|
quit(1)
|
|
return
|
|
print("PASS: Instantiated bison: ", inst.name, " (", inst.get_class(), ")")
|
|
_print_node(inst, 0)
|
|
inst.queue_free()
|
|
|
|
print("=== Bison Model Smoke Test Passed ===")
|
|
quit(0)
|
|
|
|
|
|
func _print_node(n: Node, depth: int) -> void:
|
|
print(" ".repeat(depth), "- ", n.name, " [", n.get_class(), "]")
|
|
for c in n.get_children():
|
|
_print_node(c, depth + 1)
|
|
|