Start Ink from Ink
This commit is contained in:
+9
-1
@@ -214,7 +214,15 @@ impl Session {
|
|||||||
_ => return ExecResult::lines(vec![format!(" (1..{})", d.choices.len())]),
|
_ => 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
|
/// Signal dispatchen, deferred Actions einsammeln und — falls dadurch
|
||||||
|
|||||||
Reference in New Issue
Block a user