Speech Bubbles Remaining Active Issue

Announcements, support questions, and discussion for the Dialogue System.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Speech Bubbles Remaining Active Issue

Post by Tony Li »

I just re-sent the second one. I made a mistake when replying before.
jae026
Posts: 51
Joined: Wed Apr 15, 2020 10:22 pm

Re: Speech Bubbles Remaining Active Issue

Post by jae026 »

Got it replied lol. Maybe your version was looking for the assets in its original location I moved them to protect them from the upgrade just in case it broke.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Speech Bubbles Remaining Active Issue

Post by Tony Li »

Thanks for re-sending. I'll download your project today and get back to you with what I find.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Speech Bubbles Remaining Active Issue

Post by Tony Li »

Hi,

I loaded your project and played the Prologue scene.

The conversation bypassed the 2nd and 3rd nodes because their Sequence is None(). This is the expected behavior. If you want to show either of those nodes, clear their Sequence fields.

However, it also skipped the node after the menu response (e.g., 'Ugh!' from the Copper Key response).

Then I imported DS version 2.2.6 and tried again, and it showed 'Ugh!' just fine.
jae026
Posts: 51
Joined: Wed Apr 15, 2020 10:22 pm

Re: Speech Bubbles Remaining Active Issue

Post by jae026 »

My version is 2.1.6. How can I upgrade to that version? I thought thta was what I bought.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Speech Bubbles Remaining Active Issue

Post by Tony Li »

Hi,

In your project, open the Asset Store window and search for Dialogue System for Unity. It will have an Update button. Click the Update button to download the latest version. Then the button will change to Import. Click the Import button to import it into your project.

Back up your project first, just in case you have modified any Dialogue System files. From my test of Prologue, it doesn't look like you modified any of them, so it should be fine to just import. But, when updating any asset, make a backup first just to be on the safe side.
jae026
Posts: 51
Joined: Wed Apr 15, 2020 10:22 pm

Re: Speech Bubbles Remaining Active Issue

Post by jae026 »

Thank you man. You are a life saver. By far the best Unity Asset Store support I have ever gotten and I go all the way back to Unity 3.5.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Speech Bubbles Remaining Active Issue

Post by Tony Li »

Glad to help another "old timer". ;) I go back to 3.5 also.
jae026
Posts: 51
Joined: Wed Apr 15, 2020 10:22 pm

Re: Speech Bubbles Remaining Active Issue

Post by jae026 »

Hey Toni,

One more quick question. I got a Method Call to work from a conversation node but I read that I have to use strings and doubles and ints only. I am trying to set something like this up and I can't figure out how to pass an argument (transform). The issue is that when I call this sequence (transform) can be anything and thus doesn't exist until it is called so I cannot provide it. What am I missing?

Thanks

Code: Select all

namespace PixelCrushers.DialogueSystem.SequencerCommands
{
    [AddComponentMenu("")] // Hide from menu.
    public class SequencerCommandTeleport : SequencerCommand
    {
        Transform player;

        private void OnEnable()
        {
            Lua.RegisterFunction("Teleport", this, SymbolExtensions.GetMethodInfo(() => Teleport(null)));
        }

        private void OnDisable()
        {
            Lua.UnregisterFunction("Teleport");
        }

        private void Start()
        {
            Teleport(null);
            Stop();
        }

        private void Teleport(Transform TargetLocation)
        {
            
        }
    }
}
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Speech Bubbles Remaining Active Issue

Post by Tony Li »

Hi,

You're mixing two things there. Lua functions and sequencer commands are different things. I recommend deleting the OnEnable and OnDisable methods. You can pass a GameObject name, such as "USS_Enterprise", to the sequencer function. Then you can use it in a node's Sequence field like this:

Code: Select all

Teleport(USS_Enterprise)
Your sequencer command script will look something like:

Code: Select all

namespace PixelCrushers.DialogueSystem.SequencerCommands
{
    [AddComponentMenu("")] // Hide from menu.
    public class SequencerCommandTeleport : SequencerCommand
    {
        private void Start()
        {
            Teleport(GetSubject(0));
            Stop();
        }

        private void Teleport(Transform TargetLocation)
        {
            // Your teleport code here. Example:
            if (TargetLocation != null) GameObject.FindWithTag("Player").transform.position = TargetLocation.position;
        }
    }
}
Post Reply