Forum rules - please read before posting.

No job Conversation at start Action List

edited June 2020 in Technical Q&A

Hi, Cris!

My task is to use different substrates and text in different places in subtitles for different speakers. I implemented this through the use of different menus with subtitles. But for some reason, it stopped working for me conversation.

More on screenshots and gifs:

Perhaps this problem can be solved in another way? Because my decision resembles a crutch.

But be that as it may, now the main problem is that Conversation does not work.

Unity 2019.2.14 AC 1.70.4

Update:

I tried it in the build, and there the second die disappears, apparently another way to solve this problem is needed. Is there some kind of standard solution that I missed?

https://i.gyazo.com/51f3f75baed1e51491db1d9e1fa0221e.mp4

Comments

  • At which point in which video does the Conversation bug occur?

    Assuming the ActionLists you're running are only handling cosmetic duties (i.e. removing parts of the UI), does the Conversation work again if you unset them from the "ActionList when turn on" menu fields? If so, make sure they have their When running fields set to Run In Background.

    There's not a lot of context here to the media you're showing. Display those yellow speech bubbles behind the text itself?

    I'm not clear why you'd need to separate those from the subtitle text itself, since it should be possible to incorporate both the foreground and background into a single UI prefab. If you can explain in more detail what it is you're ultimately trying to do, I can see if I can suggest a better method.

  • Conversation stops working when I delete an object at the end of a phrase, or at the start of Conversation.

    If I do not delete the object, then everything works. This moment is not entirely clear to me why this happens.

    Now ActionList deleting and adding an object on stage state Run in Background, but Cutscene what triggers the dialogue Pause Gameplay. Since the text I enter through Ink. And if it will stand Run Background. Then he will skip the narratives of the dialogue and go directly to the options.

    Yes, all this is purely visual in nature, displaying a yellow panel. I do it this way because the characters I have are on the stage itself, and GUI will overlap them. If Camera no World Space. But I do not have it.

    If you offer a better solution to this problem, with the possibility of different positions for the yellow panel and text for different characters. And at the same time, my characters will remain in the scene and I can easily animate them. No transfer to UI. I will be glad. Since, as I said earlier, this does not work at all in the build.

  • Since the text I enter through Ink.

    I'm not familiar with the ThirdParty: Ink integration Action. Is this running the AC Conversation / changing the way it behaves? Temporarily remove it and just rely on a standard Dialogue: Start conversation Action - I need to know if this is an issue when just using AC Actions, and not any custom code.

    The cutscene that triggers the dialogue should be able to remain pausing gameplay - but if removing the ActionLists that run when the menu turns on are causing this then it might be worth moving the two "remove" commands to script instead.

    Here's a sample script that can be used to set prefabs to delete from the scene when a given menu is turned on:

    using UnityEngine;
    using AC;
    
    public class RemoveItemsOnEnableMenu : MonoBehaviour
    {
    
        public string menuName;
        public GameObject[] prefabsToRemove;
    
        private void OnEnable () { EventManager.OnMenuTurnOn += OnMenuTurnOn; }
        private void OnDisable () { EventManager.OnMenuTurnOn -= OnMenuTurnOn; }
    
        private void OnMenuTurnOn (Menu menu, bool isInstant)
        {
            if (menu.title == menuName)
            {
                foreach (GameObject prefabToRemove in prefabsToRemove)
                {
                    ConstantID prefabConstantID = prefabToRemove.GetComponent <ConstantID>();
                    if (prefabConstantID != null)
                    {
                        ConstantID instanceConstantID = ConstantID.GetComponent (prefabConstantID.constantID);
                        if (instanceConstantID != null)
                        {
                            Destroy (instanceConstantID.gameObject);
                        }
                    }
                }
            }
        }
    
    }
    

    If Camera no World Space. But I do not have it.

    I'm not clear on what you mean here, exactly, but you could try moving the yellow boxes separate menus that live in World Space but have the same "Appear type" conditions as the Subtitle menus.

    A menu set to appear "When Speech Plays" doesn't necessarily need to display subtitle text. You could have a pair of menus (one for text, one for background graphics) that show up when a particular character speaks.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.