Do DialogueSystemEvents listen to any conversation?

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
Espes
Posts: 24
Joined: Sun Aug 16, 2020 12:29 pm

Do DialogueSystemEvents listen to any conversation?

Post by Espes »

Hello.
Do DialogueSystemEvents component listen and fire the events to any conversation or only the conversation that the gamebject is taking part?

Edit:found this in unity forum. Is it still relevant? What about the Player? I think you could include it the documentation.
The Dialogue Manager GameObject receives all "On Conversation End" events. An NPC will only receive the "On Conversation End" event if it is involved in the conversation.

If you add a Dialogue System Events component to the NPC (not the Dialogue Manager), its OnConversationEnd() event will only run when that particular NPC's conversation has ended.

The same is true for a Dialogue System Trigger component set to OnConversationEnd, or a script with an OnConversationEnd(Transform) method.
User avatar
Tony Li
Posts: 22112
Joined: Thu Jul 18, 2013 1:27 pm

Re: Do DialogueSystemEvents listen to any conversation?

Post by Tony Li »

Hi,

Good catch. This table explains which GameObjects receive OnConversation*** events, but I need to do the same for the Dialogue System Events component's manual page.
Espes
Posts: 24
Joined: Sun Aug 16, 2020 12:29 pm

Re: Do DialogueSystemEvents listen to any conversation?

Post by Espes »

Thank you for the answer. I use ConversationZone with PlayerIsActor disabled. The Dialogue System Events fire normally in the NPCs but not in the player.
The setup in DIalogue Editor of Conversation is:
Actor: Player
Conversant: NPC
User avatar
Tony Li
Posts: 22112
Joined: Thu Jul 18, 2013 1:27 pm

Re: Do DialogueSystemEvents listen to any conversation?

Post by Tony Li »

Why is "Player Is Actor" unticked?

If you really must keep it unticked even though the conversation's actor is the Player, add a Dialogue Actor component to the player prefab and set its Actor dropdown to Player.
Post Reply