How to Send Conversations to Different UI

Announcements, support questions, and discussion for the Dialogue System.
zenasprime
Posts: 14
Joined: Tue Apr 11, 2017 1:59 pm

How to Send Conversations to Different UI

Post by zenasprime »

My project has two different UI designs depending on which actors are part of the conversation. How would I go about telling the Dialogue Manager which UI to use during these conversations?

For Example:
Image
Image
User avatar
Tony Li
Posts: 21722
Joined: Thu Jul 18, 2013 1:27 pm

Re: How to Send Conversations to Different UI

Post by Tony Li »

Hi,

Add an Override Dialogue UI component to the actor (usually the NPC) and assign the dialogue UI that you want to use.

(Nice looking project, btw!)
zenasprime
Posts: 14
Joined: Tue Apr 11, 2017 1:59 pm

Re: How to Send Conversations to Different UI

Post by zenasprime »

I haven't had a chance to implement it yet but I think this is exactly what I'm going to need.

And thanks for the compliment. I'm not the graphic designer just the guy implementing it in Unity. ;)

Thanks again Tony. :D
User avatar
Tony Li
Posts: 21722
Joined: Thu Jul 18, 2013 1:27 pm

Re: How to Send Conversations to Different UI

Post by Tony Li »

Happy to help! If you run into any issues, just let me know.
zenasprime
Posts: 14
Joined: Tue Apr 11, 2017 1:59 pm

Re: How to Send Conversations to Different UI

Post by zenasprime »

Hey Tony,

Is there a way to set a conversant transform at the beginning of a conversation, ideally using a command sequence to initiate such a conversation?
ElBueno
Posts: 11
Joined: Tue Oct 10, 2017 11:02 am

Re: How to Send Conversations to Different UI

Post by ElBueno »

Hey there. I'm on Zenas's team, working with him on this problem. Just wanted to add some clarification: We have a conversation, call it Bravo, that is linked into from another conversation, call it Alpha. Somewhere between Alpha ending and Bravo beginning, we need to be able to set an override dialogue UI to use for Bravo. The easy way is to add an Override Dialogue UI component to an object and set it as the Conversant in a Conversation Trigger component, but because we aren't using a Conversation Trigger to start Bravo, this approach won't work for us.

-Ray
User avatar
Tony Li
Posts: 21722
Joined: Thu Jul 18, 2013 1:27 pm

Re: How to Send Conversations to Different UI

Post by Tony Li »

Hi,

Although you're crossing from Alpha into Bravo, the Dialogue System technically treats it as a single active conversation.

Can you add a Start Conversation On Dialogue Event to start Bravo?

Here's how I set up a test scene:

1. Created 3 characters (empty GameObjects in my case):
  • Player
  • NPC1: Has a Conversation Trigger set to On Start, and a Start Conversation On Dialogue Event set to On Conversation.
  • NPC2: Has an Override Dialogue UI pointing to a different UI.
2. Conversation Alpha sets a variable StartBravo to true.

3. The Start Conversation On Dialogue Event component has an On End element with these settings:
  • Condition > Lua Conditions: Variable["StartBravo"] == true
  • Conversation: Bravo
  • Listener (conversant): NPC2
4. Conversation Bravo sets the variable StartBravo to false.
ElBueno
Posts: 11
Joined: Tue Oct 10, 2017 11:02 am

Re: How to Send Conversations to Different UI

Post by ElBueno »

Thanks Tony. While I'm trying your suggestion: Is there any way to just switch to an override UI mid-conversation instead?
User avatar
Tony Li
Posts: 21722
Joined: Thu Jul 18, 2013 1:27 pm

Re: How to Send Conversations to Different UI

Post by Tony Li »

With a bit of coding, yes. If you need that functionality, I can try to put something together; let me know.
ElBueno
Posts: 11
Joined: Tue Oct 10, 2017 11:02 am

Re: How to Send Conversations to Different UI

Post by ElBueno »

Oh wow, yes please, that would absolutely wonderful. Thank you so much.
Post Reply