update
This commit is contained in:
202
tests/shots.gd
202
tests/shots.gd
@@ -13,66 +13,90 @@ func _process(_d: float) -> void:
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
seed(20240)
|
||||
DirAccess.make_dir_recursive_absolute(ProjectSettings.globalize_path(OUT))
|
||||
main = load("res://scenes/main.tscn").instantiate()
|
||||
add_child(main)
|
||||
await get_tree().process_frame
|
||||
await get_tree().process_frame
|
||||
await knipse("01_intro")
|
||||
await knipse("01_start")
|
||||
|
||||
main.ui.schliessen()
|
||||
main.player.global_position = Vector3(0, 4.0, 34.0)
|
||||
main.player.global_position = Vector3(0, 6.0, 24.0) # vor dem Hörsaal, Blick ins Dorf
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.14
|
||||
main.player.pitch = -0.35
|
||||
Game.time_h = 10.0
|
||||
await warte(30)
|
||||
await knipse("02_traumwelt")
|
||||
|
||||
main.player.global_position = Vector3(0, 12.0, 30.0)
|
||||
main.player.pitch = -0.5
|
||||
main.player.global_position = Vector3(0, 32.0, 14.0) # über der Lichtung
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.78
|
||||
await warte(20)
|
||||
await knipse("03_traumdorf_ueberblick")
|
||||
|
||||
var haus := Orte.center(DreamDB.PLACES, "haus_ailen")
|
||||
main.player.global_position = haus + Vector3(0, 2.0, 12.0)
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.18
|
||||
# Der Hörsaal ist zu Beginn das einzige Gebäude auf der Insel
|
||||
var saal_aussen := Orte.center(DreamDB.PLACES, "hoersaal")
|
||||
main.player.global_position = saal_aussen + Vector3(0, 2.0, -14.0)
|
||||
main.player.yaw = PI
|
||||
main.player.pitch = -0.12
|
||||
await warte(20)
|
||||
await knipse("04_haus_aussen")
|
||||
await knipse("04_hoersaal_aussen")
|
||||
|
||||
# ein Wesen in seinem Haus
|
||||
var ailen: Bewohner = null
|
||||
for w in main.welt.bewohner:
|
||||
if w.data["id"] == "ailen":
|
||||
ailen = w
|
||||
for i in range(900):
|
||||
main._process(0.05)
|
||||
for k in main.welt.get_children():
|
||||
if k is Bewohner:
|
||||
k._process(0.05)
|
||||
Game.time_h = 10.0
|
||||
if ailen.place == "haus_ailen" and ailen._path.is_empty():
|
||||
break
|
||||
main.player.global_position = ailen.global_position + Vector3(3.0, 0.6, 1.2)
|
||||
main.player.yaw = -PI * 0.32
|
||||
main.player.pitch = -0.06
|
||||
# Wo später die Häuser stehen, ist noch nichts
|
||||
main.player.global_position = Vector3(-18.0, 8.0, -6.0)
|
||||
main.player.yaw = -0.9
|
||||
main.player.pitch = -0.30
|
||||
await warte(20)
|
||||
await knipse("05_haus_innen")
|
||||
await knipse("05_insel_ohne_haeuser")
|
||||
|
||||
# Hörsaal der Wege: hier werden die Techniken gelehrt
|
||||
var saal := Orte.center(DreamDB.PLACES, "hoersaal")
|
||||
main.player.global_position = saal + Vector3(0, 1.0, -1.0)
|
||||
main.player.yaw = PI
|
||||
main.player.pitch = -0.05
|
||||
await warte(20)
|
||||
await knipse("06_hoersaal")
|
||||
|
||||
main.ui.lehre_panel()
|
||||
await warte(6)
|
||||
await knipse("07_techniken_lernen")
|
||||
main.ui.schliessen()
|
||||
|
||||
Game.learn(str(DreamDB.techniken_von("hoersaal")[0]))
|
||||
|
||||
main.ui.journal_panel("techniken")
|
||||
await warte(6)
|
||||
await knipse("06_journal_techniken")
|
||||
await knipse("08_journal_techniken")
|
||||
main.ui.schliessen()
|
||||
|
||||
Game.learn("pomodoro")
|
||||
Game.learn("zerlegen")
|
||||
Game.learn("box_atmung")
|
||||
# Schwarzes Brett an der Lichtung
|
||||
var brett := Orte.center(DreamDB.PLACES, "lichtung") + Vector3(-6.0, 0, 9.0)
|
||||
main.player.global_position = brett + Vector3(0, 1.0, 4.0)
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.02
|
||||
await warte(20)
|
||||
await knipse("09_schwarzes_brett")
|
||||
|
||||
main.ui.brett_panel()
|
||||
await warte(6)
|
||||
await knipse("10_missionen")
|
||||
main.ui.schliessen()
|
||||
Game.accept_mission("mensch_0")
|
||||
|
||||
main.ui.journal_panel("missionen")
|
||||
await warte(6)
|
||||
await knipse("07_journal_missionen")
|
||||
await knipse("11_journal_missionen")
|
||||
|
||||
# Regelwerk: Wenn-Dann-Ketten, die den Fortschritt automatisieren
|
||||
Game.regel_setzen("mensch_0", "zoegert", str(DreamDB.techniken_von("hoersaal")[0]))
|
||||
main.ui.pipeline_panel("mensch_0")
|
||||
await warte(6)
|
||||
await knipse("12_regelwerk")
|
||||
|
||||
main.ui.regel_panel("mensch_0", "arbeitet")
|
||||
await warte(6)
|
||||
await knipse("13_regel_waehlen")
|
||||
main.ui.schliessen()
|
||||
Game.accept_mission("lena")
|
||||
|
||||
# Lichtung, wenn sich die Wesen dort treffen
|
||||
for i in range(1200):
|
||||
@@ -85,14 +109,14 @@ func _ready() -> void:
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.20
|
||||
await warte(20)
|
||||
await knipse("08_lichtung")
|
||||
await knipse("14_dorfplatz_leer")
|
||||
|
||||
var tor := Orte.center(DreamDB.PLACES, "tor")
|
||||
main.player.global_position = tor + Vector3(0, 2.5, 14.0)
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.12
|
||||
await warte(20)
|
||||
await knipse("09_tor_zur_erde")
|
||||
await knipse("15_tor_zur_erde")
|
||||
|
||||
main._erde()
|
||||
Game.time_h = 10.5
|
||||
@@ -101,11 +125,11 @@ func _ready() -> void:
|
||||
main.player.pitch = -0.62
|
||||
main.player.yaw = 0.0
|
||||
await warte(20)
|
||||
await knipse("10_erde_uebersicht")
|
||||
await knipse("16_erde_uebersicht")
|
||||
|
||||
var lena: Bewohner = null
|
||||
for m in main.welt.humans:
|
||||
if m.data["id"] == "lena":
|
||||
if m.data["id"] == "mensch_0":
|
||||
lena = m
|
||||
for i in range(900):
|
||||
main._process(0.05)
|
||||
@@ -119,14 +143,30 @@ func _ready() -> void:
|
||||
main.player.yaw = PI
|
||||
main.player.pitch = -0.15
|
||||
await warte(20)
|
||||
await knipse("11_lena_zoegert")
|
||||
await knipse("17_lena_zoegert")
|
||||
|
||||
# Das Regelwerk greift ohne Zutun, sobald Lena die Tätigkeit wechselt
|
||||
var vor := Game.mission_progress("mensch_0")
|
||||
for i in range(20000):
|
||||
Game.time_h += 0.004
|
||||
main._process(0.02)
|
||||
for k in main.welt.get_children():
|
||||
if k is Bewohner:
|
||||
k._process(0.05)
|
||||
if Game.mission_progress("mensch_0") > vor:
|
||||
break
|
||||
main.player.global_position = lena.global_position + Vector3(0, 1.6, -5.5)
|
||||
main.player.yaw = PI
|
||||
main.player.pitch = -0.10
|
||||
await warte(4)
|
||||
await knipse("18_regel_greift")
|
||||
|
||||
main.ui.anwenden_panel(lena)
|
||||
await warte(6)
|
||||
await knipse("12_anwenden")
|
||||
main.ui._anwenden("pomodoro")
|
||||
await knipse("19_anwenden")
|
||||
main.ui._anwenden(str(DreamDB.techniken_von("hoersaal")[0]))
|
||||
await warte(25)
|
||||
await knipse("13_reaktion")
|
||||
await knipse("20_reaktion")
|
||||
|
||||
Game.time_h = 13.5
|
||||
for i in range(1200):
|
||||
@@ -139,7 +179,7 @@ func _ready() -> void:
|
||||
main.player.yaw = PI
|
||||
main.player.pitch = -0.5
|
||||
await warte(20)
|
||||
await knipse("14_cafe_mittag")
|
||||
await knipse("21_cafe_mittag")
|
||||
|
||||
Game.time_h = 22.5
|
||||
await warte(40)
|
||||
@@ -147,7 +187,81 @@ func _ready() -> void:
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.5
|
||||
await warte(20)
|
||||
await knipse("15_nacht")
|
||||
await knipse("22_nacht")
|
||||
|
||||
# Loop 2: ein erfüllter Traum lässt die Insel wachsen
|
||||
if not Game.completed.has("mensch_0"):
|
||||
Game.completed.append("mensch_0")
|
||||
Game.active_mission = ""
|
||||
Game.einsicht = 3
|
||||
Game.welt_erzeugen()
|
||||
main._traumwelt()
|
||||
await warte(20)
|
||||
main.player.global_position = Vector3(-30.0, 26.0, 30.0)
|
||||
main.player.yaw = 0.7
|
||||
main.player.pitch = -0.55
|
||||
Game.time_h = 11.0
|
||||
await warte(20)
|
||||
await knipse("23_insel_gewachsen")
|
||||
|
||||
var erstes := Orte.center(DreamDB.PLACES, DreamDB.haus_key(0))
|
||||
var tuer := Orte.door(DreamDB.PLACES, DreamDB.haus_key(0))
|
||||
var hinein := (erstes - tuer).normalized()
|
||||
main.player.global_position = erstes - hinein * 2.0 + Vector3(0, 1.0, 0)
|
||||
main.player.yaw = atan2(-hinein.x, -hinein.z)
|
||||
main.player.pitch = -0.05
|
||||
await warte(20)
|
||||
await knipse("24_erstes_haus")
|
||||
|
||||
main.ui.lehre_panel(DreamDB.haus_key(0))
|
||||
await warte(6)
|
||||
await knipse("25_neuer_weg")
|
||||
main.ui.schliessen()
|
||||
|
||||
# Neun erfüllte Träume: das Dorf ist über den ersten Ring hinausgewachsen
|
||||
while Game.completed.size() < 9:
|
||||
Game.completed.append("traum_%d" % Game.completed.size())
|
||||
Game.welt_erzeugen()
|
||||
main._traumwelt()
|
||||
await warte(20)
|
||||
main.player.global_position = Vector3(0, 110.0, 70.0)
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.85
|
||||
Game.time_h = 12.0
|
||||
await warte(20)
|
||||
await knipse("26_insel_vollstaendig")
|
||||
|
||||
# Jetzt wohnt jemand hier: die Wesen treffen sich auf der Lichtung
|
||||
for i in range(1500):
|
||||
main._process(0.05)
|
||||
for k in main.welt.get_children():
|
||||
if k is Bewohner:
|
||||
k._process(0.05)
|
||||
Game.time_h = 19.5
|
||||
main.player.global_position = Vector3(0.0, 1.2, 20.0)
|
||||
main.player.yaw = 0.0
|
||||
main.player.pitch = -0.14
|
||||
await warte(20)
|
||||
await knipse("27_wesen_am_dorfplatz")
|
||||
|
||||
var ailen: Bewohner = null
|
||||
for w in main.welt.bewohner:
|
||||
if w.data["id"] == "wesen_0":
|
||||
ailen = w
|
||||
for i in range(1200):
|
||||
main._process(0.05)
|
||||
for k in main.welt.get_children():
|
||||
if k is Bewohner:
|
||||
k._process(0.05)
|
||||
Game.time_h = 10.0
|
||||
if ailen != null and ailen.place == DreamDB.haus_key(0) and ailen._path.is_empty():
|
||||
break
|
||||
if ailen != null:
|
||||
main.player.global_position = ailen.global_position + Vector3(3.0, 0.6, 1.2)
|
||||
main.player.yaw = -PI * 0.32
|
||||
main.player.pitch = -0.06
|
||||
await warte(20)
|
||||
await knipse("28_wesen_im_haus")
|
||||
|
||||
print("Screenshots: %d" % n)
|
||||
print("Ordner: %s" % ProjectSettings.globalize_path(OUT))
|
||||
|
||||
Reference in New Issue
Block a user