aboutsummaryrefslogtreecommitdiff
path: root/internal/game/act_talk.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/game/act_talk.go')
-rw-r--r--internal/game/act_talk.go4
1 files changed, 4 insertions, 0 deletions
diff --git a/internal/game/act_talk.go b/internal/game/act_talk.go
index fa93435..8f47bf5 100644
--- a/internal/game/act_talk.go
+++ b/internal/game/act_talk.go
@@ -139,6 +139,10 @@ func (g *Game) showTalkNode(sess *net.Session, node behavior.TalkNode) {
}
}
+ // A terminal node (no options, no goto) ends the conversation; clear the
+ // action or it lingers as a stale talk action (status shows "talking",
+ // isBusy suppresses the prompt, and advanceTalk no-ops every tick).
+ g.cancelAction(p)
sess.SetState(net.StateGame)
g.writePrompt(sess)
}