From 3ba7ef92ad2332f29571326145bae665f56383d3 Mon Sep 17 00:00:00 2001 From: irrlicht Date: Mon, 15 Jun 2026 11:17:06 +0200 Subject: [PATCH] Start Ink from Ink --- src/session.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/session.rs b/src/session.rs index 85a8221..6c0ff49 100644 --- a/src/session.rs +++ b/src/session.rs @@ -214,7 +214,15 @@ impl Session { _ => return ExecResult::lines(vec![format!(" (1..{})", d.choices.len())]), } }; - ExecResult::lines(self.step(sel)) + let mut out = self.step(sel); + // Ein start_ink-Tag kann während step() eine neue Story in den Slot + // geladen haben, während die alte auf End lief (mode → Play). Falls + // das passiert ist, sofort den ersten Schritt der neuen Story ziehen + // statt den Spieler im Play-Modus hängen zu lassen. + if self.game.story.is_some() && matches!(self.mode, Mode::Play) { + out.extend(self.step(None)); + } + ExecResult::lines(out) } /// Signal dispatchen, deferred Actions einsammeln und — falls dadurch