public void HandleNextClick()
        {
            GameManager.Instance.PlaySoundClip("2 UI CLICK 1");
            if (currentDialogueSequence)
            {
                if (currentDialogueSequenceIndex < currentDialogueSequence.Dialogues.Count - 1)
                {
                    currentDialogueSequenceIndex++;
                    StoryDialogue dialogue = currentDialogueSequence.Dialogues[(int)currentDialogueSequenceIndex];

                    if (CharacterController)
                    {
                        if (dialogue.Speaker == LeftCharacter)
                        {
                            CharacterController.DoTalking(DialogCharacterController.Character.Left);
                        }

                        if (dialogue.Speaker == RightCharacter)
                        {
                            CharacterController.DoTalking(DialogCharacterController.Character.Right);
                        }
                    }

                    SetDialogue();
                }
                else
                {
                    Debug.LogError("We shouldn't have reached this point because the NextButtonPanel should be hidden.");
                }
            }
        }
        private void StartNewSequence([NotNull] StoryDialogueSequence sequence)
        {
            Debug.Log("Starting Sequence: " + sequence);
            currentDialogueSequence      = sequence;
            currentDialogueSequenceIndex = 0;

            StoryDialogue dialogue = currentDialogueSequence.Dialogues[(int)currentDialogueSequenceIndex];

            if (DialogueBox)
            {
                SetDialogue();
            }
        }
Example #3
0
        public void SetDialogue(DialogCharacterController.Character character, StoryDialogue dialogue)
        {
            LeftSpeakerPanel.gameObject.SetActive(false);
            RightSpeakerPanel.gameObject.SetActive(false);
            if (character == DialogCharacterController.Character.Left)
            {
                LeftSpeakerPanel.gameObject.SetActive(true);
                LeftNameText.text = dialogue.Speaker.Name;
            }
            else if (character == DialogCharacterController.Character.Right)
            {
                RightSpeakerPanel.gameObject.SetActive(true);
                RightNameText.text = dialogue.Speaker.Name;
            }

            DialogueText.text = dialogue.Dialogue;
        }
        private void SetDialogue()
        {
            bool lastInSequence = currentDialogueSequenceIndex == currentDialogueSequence.Dialogues.Count - 1;

            if (lastInSequence)
            {
                DialogueBox.SetOptions(currentDialogueSequence.Buttons);
            }
            else
            {
                DialogueBox.SetOptions(new List <StoryOption>());
            }

            StoryDialogue dialogue = currentDialogueSequence.Dialogues[(int)currentDialogueSequenceIndex];

            CharacterController.SetCharacterEmotion(dialogue.Speaker, dialogue.Emotion);
            DialogueBox.SetDialogue(dialogue.Speaker == RightCharacter ? DialogCharacterController.Character.Right : DialogCharacterController.Character.Left, dialogue);
        }
Example #5
0
 void Awake()
 {
     playerController = GameObject.Find("Player").GetComponent <PlayerController> ();
     story            = FindObjectOfType <StoryDialogue> ();
 }