How to make Continue Button function context-specific and ignore Default Sequence

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
SongsForgotten
Posts: 3
Joined: Tue Mar 18, 2025 10:02 am

How to make Continue Button function context-specific and ignore Default Sequence

Post by SongsForgotten »

Hello,

I'm trying to customize how the Continue Button works in my project. After going through the documentation and poking around myself while almost breaking my scene irrevocably (thank god for version control), I decided to ask if there might be a solution to my issue.

Essentially, I want the subtitle text and the Continue Button to work differently based on the context:

Case 1: Default
- Goal behavior:
On a single Dialogue Entry, pressing the Continue Button before the line has finished its Typewriter effect should skip to the end of the line, and only advance to the next Entry once the Continue Button is pressed the second time.
- Issue: If Continue Button is pressed, the system reads "Delay(1)@Message(Typed)" from my Dialogue Manager's Default Sequence. This means that if you press Continue, the line skips to the end and keeps it there only for 1 second before advancing to the next one.

Case 2: Before Response Menu
- Goal Behavior: On NPC Dialogue Entries that come before the PC Response panel is revealed (and stay on screen as long as the Response Panel is on), pressing the Continue Button once should immediately reveal both the whole NPC line and the PC Response Menu
- Issue: How to set this on this specific context?

Thank you for your time in advance.
User avatar
Tony Li
Posts: 22871
Joined: Thu Jul 18, 2013 1:27 pm

Re: How to make Continue Button function context-specific and ignore Default Sequence

Post by Tony Li »

Hi,

No scripting necessary for this.

Set the Dialogue Manager's Display Settings > Subtitle Settings > Continue Button mode to Optional Before PC Response.

Then configure a StandardUIContinueButtonFastForward component on the continue button: How To: Set Up Continue Button Typewriter Fast Forward

If you need more specific behavior, you can use a custom subclass of StandardUIContinueButtonFastForward that overrides OnFastForward to change the behavior. You can check DialogueManager.currentConversationState.hasPCResponses to know if a player response menu is next. If you skip menus when the player only has one line, check hasPCAutoResponse, too.
SongsForgotten
Posts: 3
Joined: Tue Mar 18, 2025 10:02 am

Re: How to make Continue Button function context-specific and ignore Default Sequence

Post by SongsForgotten »

Hello Tony,

Thank you for the swift and concise response. Sorry for my late follow-up, I had to step away from this feature for a while.

Having successfully tested your suggestion, another question arose. What I would like to now do is to switch between the dialogue lines flowing from one to the next without player input, and only continuing to the next when the Continue Button is pressed.

Off the top of my head, I would do this by manually switching the Dialogue Manager > Display Settings > Subtitle Settings > Continue Button between "Optional Before Response Menu" & "Never".

I created a standard MonoBehaviour script that I attached to the Dialogue Manager itself. This does the job somewhat, but if I make the switch while a line is still being "typed", it isn't registered until after the next line gets launched. So if I switch from "Optional Before Response Menu" to "Never", the system still wants me to press Continue after the current line's been typed before it truly makes the switch.

Before I start digging deeper, I wanted to ask if there is some obvious way to address this, or perhaps I'm scoping too far?
User avatar
Tony Li
Posts: 22871
Joined: Thu Jul 18, 2013 1:27 pm

Re: How to make Continue Button function context-specific and ignore Default Sequence

Post by Tony Li »

Hi,

Try using DialogueManager.SetContinueMode() instead. There's also an equivalent SetContinueMode() sequencer command that you can use in dialogue entries' Sequence fields. And there's a Conversation Control component with similar methods that you can call to change behavior.
SongsForgotten
Posts: 3
Joined: Tue Mar 18, 2025 10:02 am

Re: How to make Continue Button function context-specific and ignore Default Sequence

Post by SongsForgotten »

Thank you again for your response Tony. Using DialogueManager.SetContinueMode together with a key binding and within a switch statement worked just perfectly. I appreciate you saving me a good chunk of time here.
User avatar
Tony Li
Posts: 22871
Joined: Thu Jul 18, 2013 1:27 pm

Re: How to make Continue Button function context-specific and ignore Default Sequence

Post by Tony Li »

Glad to help! Any time a quick search of the manual or here on the forum doesn't turn up an answer, feel free to ask. I'm here to help, and it can sometimes save some time.

Tip: Search "HOWTO" (one word) plus a question for helpful articles here on the forum.
Post Reply