diff --git a/game/dev/DemoDriver.gd b/game/dev/DemoDriver.gd index 1f9ba20..5f96482 100644 --- a/game/dev/DemoDriver.gd +++ b/game/dev/DemoDriver.gd @@ -48,14 +48,54 @@ func _find_player(n: Node) -> Player: return null func _build_script() -> void: - # THE GAUNTLET. Switching mode now teleports the player to the records area, so the - # tour just needs to stand back, read the labels, open a drawer and shred it. - _script = [ + # The showcase: a lap of all four sites, then Cubicle Hell (work -> tilt -> snap -> + # wreck), then the Gauntlet. + _script = [] + var tours := { + "scranton": [[Vector3(-8.6, 0, 6.4), Vector3(-4.0, 1.1, 0.0)], + [Vector3(-2.6, 0, 3.4), Vector3(-0.4, 1.0, -1.0)]], + "pawnee": [[Vector3(-8.0, 0, 6.6), Vector3(-2.0, 1.1, 1.0)], + [Vector3(-1.0, 0, 2.6), Vector3(-2.6, 1.2, -5.2)]], + "house": [[Vector3(-1.0, 0, 7.0), Vector3(-4.4, 1.2, 0.6)], + [Vector3(0.5, 0, 2.0), Vector3(6.0, 1.3, 6.0)]], + "basement": [[Vector3(1.0, 0, -5.2), Vector3(-8.0, 1.3, -1.0)], + [Vector3(-4.0, 0, -1.0), Vector3(-10.6, 1.4, -1.0)]], + } + for id in ["scranton", "pawnee", "house", "basement"]: + var shots: Array = tours[id] + _script.append({"dur": 0.4, "move_to": shots[0][0], "look_at": shots[0][1], + "act": "level:" + id}) + _script.append({"dur": 2.0, "move_to": null, "look_at": null, "act": ""}) + _script.append({"dur": 2.4, "move_to": shots[1][0], "look_at": shots[1][1], + "act": ""}) + _script.append({"dur": 1.2, "move_to": null, "look_at": null, "act": ""}) + + # --- CUBICLE HELL, back at Scranton + _script += [ + {"dur": 0.4, "move_to": null, "look_at": null, "act": "level:scranton"}, + {"dur": 0.4, "move_to": null, "look_at": null, "act": "mode:0"}, + {"dur": 2.2, "move_to": Vector3(-4.6, 0, -0.55), "look_at": Vector3(-4.6, 1.0, -1.4), "act": ""}, + {"dur": 1.0, "move_to": null, "look_at": null, "act": "task"}, + {"dur": 1.4, "move_to": null, "look_at": null, "act": "type"}, + {"dur": 1.4, "move_to": null, "look_at": null, "act": "commit"}, + {"dur": 1.2, "move_to": null, "look_at": null, "act": "rage:0.32"}, + {"dur": 1.2, "move_to": null, "look_at": null, "act": "rage:0.32"}, + {"dur": 1.4, "move_to": null, "look_at": null, "act": "rage:0.36"}, + {"dur": 0.9, "move_to": Vector3(-4.6, 0, 0.3), "look_at": Vector3(-4.6, 0.9, -0.7), "act": "weapon:4"}, + {"dur": 1.1, "move_to": null, "look_at": null, "act": "swing"}, + {"dur": 1.3, "move_to": null, "look_at": null, "act": "swing"}, + {"dur": 1.8, "move_to": Vector3(-2.4, 0, 4.9), "look_at": Vector3(-2.3, 0.25, 5.2), "act": ""}, + {"dur": 1.2, "move_to": null, "look_at": null, "act": "swing"}, + {"dur": 1.4, "move_to": null, "look_at": null, "act": "swing"}, + ] + + # --- THE GAUNTLET + _script += [ {"dur": 0.5, "move_to": null, "look_at": null, "act": "mode:1"}, {"dur": 3.0, "move_to": null, "look_at": null, "act": ""}, + {"dur": 2.0, "move_to": null, "look_at": null, "act": "interact"}, {"dur": 2.4, "move_to": null, "look_at": null, "act": "interact"}, - {"dur": 2.4, "move_to": null, "look_at": null, "act": "interact"}, - {"dur": 3.0, "move_to": null, "look_at": null, "act": ""}, + {"dur": 2.6, "move_to": null, "look_at": null, "act": ""}, ] func _motion(verbose := false) -> float: