Add cross timeline interaction gym
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# ============================================================
|
||||
# Pattern 2: Jump + Return (Subroutine Pattern)
|
||||
# ============================================================
|
||||
# This timeline CALLS a sub-timeline (gym_pattern2_subroutine.dtl)
|
||||
# which does some work, then RETURNS control back here.
|
||||
# ============================================================
|
||||
|
||||
label start
|
||||
|
||||
join Miko center
|
||||
join Advisor right
|
||||
|
||||
Miko (neutral): I'm in the caller timeline.
|
||||
Advisor (pl5): Let me check something in the subroutine...
|
||||
|
||||
# Save current position and jump to the subroutine
|
||||
jump gym_pattern2_subroutine/start
|
||||
|
||||
# Execution resumes HERE after the subroutine calls "return"
|
||||
label after_return
|
||||
|
||||
Miko (joy): Welcome back! The subroutine finished.
|
||||
Advisor (pl5): Notice how we resumed right where we left off.
|
||||
|
||||
[wait time="1.0"]
|
||||
|
||||
# Let's demonstrate: the subroutine set a variable
|
||||
if {Gym.sub_value} == 42:
|
||||
Miko (smile): The subroutine set `Gym.sub_value` to {Gym.sub_value}!
|
||||
Advisor (pl5): Variables set in subroutines persist after return.
|
||||
else:
|
||||
Miko (doubt): Hmm, the subroutine didn't set the value correctly.
|
||||
Advisor (doubt): Something went wrong — `Gym.sub_value` is {Gym.sub_value}.
|
||||
|
||||
[wait time="1.5"]
|
||||
|
||||
Miko (neutral): That's the subroutine pattern in a nutshell!
|
||||
Advisor (pl5): Jump → work → return. Powerful for reusable dialog chunks.
|
||||
|
||||
[wait time="1.0"]
|
||||
|
||||
jump gym_main/menu
|
||||
Reference in New Issue
Block a user