T2 tutorial: all five chapters with Old Tam, scripted dusk and demo wolf, rabbits for the hunt, title-screen Tutorial entry, pause-menu skip/leave, goodbye card; full bot playthrough test

This commit is contained in:
Paul Bailey
2026-11-05 14:43:00 +00:00
parent 5b5dd3d609
commit f93ebe1bea
11 changed files with 976 additions and 36 deletions

View File

@@ -127,10 +127,11 @@ func _body() -> void:
func _starts() -> void:
print("the tutorial starts")
check(G.active and G.world == world, "a tutorial world starts the guide")
check(G.steps.size() == 6 and G.index == 0 and String(G.current().id) == "look", "chapter 1: six steps, starting with Look around")
var ch1: int = G.steps.filter(func(st): return st.chapter == "tools").size()
check(ch1 == 6 and G.index == 0 and String(G.current().id) == "look", "chapter 1: six steps, starting with Look around")
var pn := _panel()
check(pn != null and pn.visible and pn._box.visible, "the guide panel is up")
check(pn._title.text == "Look around" and pn._chapter.text.contains("First tools") and pn._chapter.text.contains("step 1 of 6"),
check(pn._title.text == "Look around" and pn._chapter.text.contains("First tools") and pn._chapter.text.contains("step 1 of %d" % G.steps.size()),
"\"%s\" / \"%s\"" % [pn._chapter.text, pn._title.text])
check(G.guide_name == "Old Tam" and pn._text.text.begins_with("Old Tam: \""), "Old Tam the hermit talks you through it: %s" % pn._text.text)
check(G.find_marker() == Vector3.INF, "(no marker for that one)")
@@ -195,7 +196,7 @@ func _chapter_one() -> void:
_fell(rock)
check(rock.depleted and ticked.back() == "pickaxe", "break a boulder and it ticks")
check(ticked == ["look", "sticks", "flax", "axe", "tree", "pickaxe"], "every step ticked, in order")
check(G.is_finished() and not _panel()._box.visible, "the chapter's done (and the panel steps aside)")
check(String(G.current().get("chapter", "")) == "food" and _panel()._chapter.text.contains("Fire and food"), "chapter 1's done: on to Fire and food")
func _saving() -> void:
print("saving")