void Update() { if (running) { if (currentTypewriter == null) { if (currentSentence < sentences.Length) { currentTypewriter = Instantiate(typewriterPrefab, canvas).GetComponent <Typewriter>(); sentence = sentences[currentSentence++]; currentTypewriter.Setup(sentence.text, sentence.Speed, sentence.MaxPitch, sentence.MinPitch, sentence.Voice); } else { running = false; SystemsController.RunningDialogue(running); if (currentDialogue.OnEndDialogue != null) { currentDialogue.OnEndDialogue.Invoke(); } } } else { if (sentence.origin != null) { currentTypewriter.transform.position = cam.WorldToScreenPoint(sentence.origin.position); } else { // system message } if (currentTypewriter.Done) { if (Input.GetMouseButtonDown(0)) { Destroy(currentTypewriter.gameObject); currentTypewriter = null; } } else { if (Input.GetMouseButtonDown(0)) { currentTypewriter.JumpToEnd(); } } } } }
public void CloseAlbum() { m_animator.SetTrigger("Out"); Transform t; while (pages.Count > 0) { t = pages[0]; pages.RemoveAt(0); Destroy(t.gameObject); } open = false; SystemsController.RunningAlbum(open); }
public void StartDialogue(Dialogue dialogue) { this.currentDialogue = dialogue; this.sentences = dialogue.sentences; currentSentence = 0; running = true; if (dialogue.OnStartDialogue != null) { dialogue.OnStartDialogue.Invoke(); } SystemsController.RunningDialogue(running); }
public void ShowAlbum() { open = true; SystemsController.RunningAlbum(true); m_animator.SetTrigger("In"); bool front = true; PageBehavior page = Instantiate(pagePrefab, pageContainer).GetComponent <PageBehavior>(); pages.Add(page.transform); for (int cardListIndex = 0; cardListIndex < playerCards.List.Count; cardListIndex++) { // troca de página if (cardListIndex % cardsByPage == 0 && cardListIndex != 0) { if (front) { front = !front; } else { page = Instantiate(pagePrefab, pageContainer).GetComponent <PageBehavior>(); pages.Add(page.transform); page.transform.SetAsFirstSibling(); front = !front; } } Card card; if (front) { card = Instantiate(cardPrefab, page.front).GetComponent <Card>(); } else { card = Instantiate(cardPrefab, page.back).GetComponent <Card>(); } card.Setup(playerCards.List[cardListIndex]); } }
public void ShowChoices(InteractChoices.Choice[] choices) { SystemsController.RunningChoices(true); Transform t = Instantiate(choiceContainerPrefab, canvas.transform).transform; choicesAnimator = t.GetComponent <Animator>(); openedChoice = t.gameObject; VerticalLayoutGroup verticalGroup = t.GetComponentInChildren <VerticalLayoutGroup>(); Debug.Log(verticalGroup.gameObject.name); foreach (InteractChoices.Choice choice in choices) { Button button = Instantiate(choicePrefab, verticalGroup.transform).GetComponent <Button>(); button.onClick.AddListener(() => SelectChoice()); button.onClick.AddListener(() => HideChoices()); button.onClick.AddListener(() => choice.Select()); TextMeshProUGUI text = button.GetComponentInChildren <TextMeshProUGUI>(); text.SetText(choice.text); } }
public void HideChoices() { choicesAnimator.SetTrigger("Out"); Destroy(openedChoice, 2f); SystemsController.RunningChoices(false); }