Issue with Dialogue System Trigger: OnUse

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
jnhasty7
Posts: 16
Joined: Sun Apr 28, 2019 8:21 pm

Issue with Dialogue System Trigger: OnUse

Post by jnhasty7 »

If I set my Dialogue System Trigger Trigger to On Trigger Enter, my Barks and Conversations start when entering that trigger.
If I set the Trigger to OnUse, when entering that trigger and pressing my button they don't start at all.

On the game object my Dialogue System Trigger component exists on, I have a script with the method:

Code: Select all

    void OnUse(Transform player)
    {
        Debug.Log("I'm being used by " + player);
    }
This method does fire and prints to debug when I press my button, but my barks and conversations are not starting.

Is there something I'm doing wrong? I also upgraded my project to 2019.3.6f1
User avatar
Tony Li
Posts: 22055
Joined: Thu Jul 18, 2013 1:27 pm

Re: Issue with Dialogue System Trigger: OnUse

Post by Tony Li »

Hi,

How are you calling the Dialogue System Trigger's OnUse() method? Are you using the Dialogue System's Selector or ProximitySelector components? Or calling OnUse() manually?

After you press your button, inspect the Dialogue System Trigger's Conditions section. Is there any red text that says "False"? This would indicate that the Conditions set on the Dialogue System Trigger are currently not valid. Since you were using OnTriggerEnter before, try clearing the Conditions > Accepted Tags list.
jnhasty7
Posts: 16
Joined: Sun Apr 28, 2019 8:21 pm

Re: Issue with Dialogue System Trigger: OnUse

Post by jnhasty7 »

Thanks Tony, it seems to be an acceptable tags issue.

It looks like when I press the button, It uses the tag of gameObject that has the rigidbody, not the tag of the gameObject that has the Proximity Selector on it.
User avatar
Tony Li
Posts: 22055
Joined: Thu Jul 18, 2013 1:27 pm

Re: Issue with Dialogue System Trigger: OnUse

Post by Tony Li »

Hi,

Try setting the ProximitySelector's Actor Transform to the other GameObject. Or just clear the Accepted Tags list since the player is the only one who will be issuing OnUse anyway.
Post Reply