Skip to content
Discussion options

You must be logged in to vote

Queue-freeing the balloon only removes the UI node. It does not cancel an already running DialogueManager.get_next_dialogue_line() call.

The example balloon calls dialogue_resource.get_next_dialogue_line(...) from start() and next(), and that method steps through mutation lines until it reaches printable dialogue or the end. The docs also say mutations are run while requesting the next line, and awaited mutations pause until they resolve. So if your line 34 mutation is still awaiting Transitions.show_cutscene_text(...), the manager can resume afterward and continue to the next do play_phone() even though the old balloon has been freed.

I would handle this as a dialogue-session cancellatio…

Replies: 1 comment 1 reply

Comment options

You must be logged in to vote
1 reply
@bmmashat
Comment options

Answer selected by bmmashat
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants