Ejemplo n.º 1
0
    public void FocusOnDialog()
    {
        if (sequenceId == "rebel")
        {
            int count = 0;
            count += gameManager.peasant1 ? 1 : 0;
            count += gameManager.peasant2 ? 1 : 0;
            count += gameManager.peasant3 ? 1 : 0;
            if (count < 2)
            {
                sequenceId     = "rebellose";
                dialogSequence = gameManager.dialogModel.GetSequenceById(sequenceId);
                dialogFlow     = dialogSequence.GetDialogFlow();
                totalOfDialogs = dialogFlow.Count;
            }
        }



        dialogCanvasController.SetActive(true);
        //playerObject.GetComponent<PlayerBehavior>().AddInteractionDisabler(triggerId);
        playerController.deactivateCharacter();
        currentState = DialogBoxStates.SendText;
        if (playableDirector != null)
        {
            playableDirector.Pause();
        }
    }
Ejemplo n.º 2
0
    // Update is called once per frame
    void Update()
    {
        if (endDialogue)
        {
            return;
        }
        if (currentState == DialogBoxStates.SendText)
        {
            ShowDialogText();
            // dialogCanvasController.PlayRandomWhisper();
        }
        else
        {
            if (currentState == DialogBoxStates.WaitingUser && Input.GetButtonDown("Use"))  // TODO change key
            {
                currentDialogIndex++;

                currentState = DialogBoxStates.SendText;

                if (currentDialogIndex == totalOfDialogs)
                {
                    if (selfDestroyAfterInteraction)
                    {
                        EraseInfluencesAndDestroyObject();
                    }
                    else
                    {
                        currentDialogIndex = 0;
                        UnfocusOnDialog();
                    }
                }
            }
        }
    }
Ejemplo n.º 3
0
    IEnumerator ApperingCharacters(int currentDialogIndex)
    {
        currentState = DialogBoxStates.Texting;
        int textLenght = dialogFlow[currentDialogIndex].text.Length;

        for (int currentCharacter = 0; currentCharacter <= textLenght; currentCharacter++)
        {
            dialogCanvasController.setDialog(dialogFlow[currentDialogIndex], currentCharacter);
            yield return(null);
        }

        currentState = DialogBoxStates.WaitingUser;
    }