extends Node var main: Node3D const OUT := "user://treppe/" func _ready() -> void: seed(7) DirAccess.make_dir_recursive_absolute(ProjectSettings.globalize_path(OUT)) main = load("res://scenes/main.tscn").instantiate() add_child(main) await get_tree().process_frame main.ui.schliessen() Game.time_h = 11.0 main._erde() await get_tree().process_frame var sp: Player = main.player var oben: Bewohner = null for m in main.welt.humans: if m.etage(str(m.data["heim"])) > 0 and Orte.etagen(HumanDB.PLACES, str(m.data["heim"])) >= 3: oben = m break var heim := str(oben.data["heim"]) # 1 Erdgeschoss, am Fuß der Treppe var t0 := Orte.treppe(HumanDB.PLACES, heim, 0) var innen := Orte.innen_tuer(HumanDB.PLACES, heim) sp.global_position = innen + Vector3(0, 0.3, 0) sp.velocity = Vector3.ZERO await knipse("1_erdgeschoss_treppe") # 2 auf dem Wendepodest im ersten Stock sp.global_position = Orte.treppe(HumanDB.PLACES, heim, 1) + Vector3(0, 0.3, 0) sp.velocity = Vector3.ZERO await knipse("2_podest_erster_stock") # 3 Leine auf der Straße: an jemanden hängen, der unterwegs ist var laeufer: Bewohner = null for i in range(3000): await get_tree().process_frame for m in main.welt.humans: if m._path.size() > 3 and m.etage(m.place) == 0: laeufer = m break if laeufer != null: break sp.global_position = laeufer.global_position + Vector3(0, 0.3, 0) sp.folgt = laeufer for i in range(240): await get_tree().process_frame await knipse("3_leine_strasse") get_tree().quit() func knipse(name: String) -> void: for i in range(30): await get_tree().process_frame await RenderingServer.frame_post_draw get_viewport().get_texture().get_image().save_png(OUT + name + ".png") print("Bild: " + name)