Page 1 of 1

Force conversation "pause state"?

Posted: Sat Apr 23, 2022 11:54 am
by mroshaw
Hello again!

I'm having a bit of trouble with an asset, "Pro Radar Builder", that I use for a minimap in my game. I'm also using Invector Shooter Controller, which I think also adds complexity into the mix.

For some reason, with this Radar Builder Pro asset enabled, the player "pause state" doesn't work when entering into a Dialogue. That is, the cursor does not appear, and the mouse continues to control the camera rather than allowing the player to interact with the dialogue.

Everything works perfectly if the Radar asset's main script is disabled, but I cannot for the life of me figure out what it's doing to interrupt the Dialogue System's pause state. I've tried disabling the radar "On Conversation Start" but it appears that this is "too late" to stop it from causing problems.

Is there something in Dialogue System that would allow me to forcibly enter the UI "pause state", freeing the cursor once I've dealt with the troublesome script?

Apologies - I know that you cannot possibly support the use of every asset out there on the asset store. I'm hoping there's a way to work around this, while I look for a better minimap solution.

Thanks again, Tony!

Re: Force conversation "pause state"?

Posted: Sat Apr 23, 2022 12:34 pm
by mroshaw
So, I've made a bit of progress. In addition to "disabling" the Pro Radar asset "On Conversation Start", I send a "Pause Player" message on the message system immediately afterwards:

Code: Select all

MessageSystem.SendMessage(this, "Pause Player", String.Empty);
This fixes the issue, though not really sure why it happens in the first place.

This introduces a new problem, however, where the Player portrait is not displayed in the Dialog UI!

Again, if I turn off the "Pro Radar" asset, none of this is a problem. Only when it's enabled, do I get all sorts of weird things happening.

What could it be that's interfering with the pause state AND the Dialog UI and preventing the player portrait image from being displayed?! I'm baffled by this one!

Re: Force conversation "pause state"?

Posted: Sat Apr 23, 2022 2:23 pm
by Tony Li
Hi,

Since you're using Invector, make sure you've set up the Invector integration.

You may also want to use a Dialogue System Events component to disable player & camera control, as covered starting at 07:00 of the Interaction Tutorial. (It sounds like you may already be doing with with the Pro Radar asset.)

Try adding a Dialogue Actor component to the player GameObject. Set its Actor dropdown to Player. This will help associate the GameObject with the Player actor. Make sure you've assigned portrait image(s) to the Player actor in the Dialogue Editor's Actors section, and that the conversation's Actor is Player. (In the Conversations section, select Menu > Conversation Properties to confirm that the Actor dropdown is set to Player.)

You can assign the player GameObject to the Dialogue System Trigger's Conversation Actor field or leave it unassigned. If it's unassigned, it will use the GameObject whose Dialogue Actor is set to Player.

I hope that helps handle any issues being caused by Pro Radar Builder. If that doesn't help, let me know if there are any warnings or errors in the Console window.