public void ComecarDialogo(Dialogo _dialogo, NpcDialogo _npcDialogoQA) { if (npcDialogo == null && _dialogo != null) { GameManager.UISendoUsada(); dialogo = _dialogo; for (int i = 0; i < dialogo.nodulos.Length; i++) { for (int j = 0; j < dialogo.nodulos[i].respostas.Count; j++) { if (!ManagerQuest.VerifyQuestIsAvailable(dialogo.nodulos[i].respostas[j].questIndex)) { dialogo.nodulos[i].respostas.RemoveAt(j); j--; } } } npcDialogo = _npcDialogoQA; if (npcDialogo) { questsIndex.Add(npcDialogo.questIndex); } InicializarDialogo(); } }
private void Start() { npcDialogo = GetComponentInParent <NpcDialogo>(); if (!npcDialogo) { return; } spriteRenderer = GetComponent <SpriteRenderer>(); shouldUpdate = true; }
private void TeacherSetUp() { professor.professor.gameObject.GetComponent <PolygonCollider2D>().enabled = false; NpcDialogo dialogo = professor.professor.gameObject.GetComponent <NpcDialogo>(); dialogo.dialogoObrigatorio = true; dialogo.enabled = false; for (int j = 0; j < professor.falasGeneralistas.Length; j++) { if (Player.Instance.MissionHistory[Player.Instance.missionID].totalMissionPoints >= professor.falasGeneralistas[j].rangeNota.x && Player.Instance.MissionHistory[Player.Instance.missionID].totalMissionPoints <= professor.falasGeneralistas[j].rangeNota.y) { // Adicionar fala de despedida e recomendação à Lurdinha para // que converse com os alunos após esta conversa (pós-aula) var falaDespedida = "Neste momento, posso ver que os alunos estão falando sobre a aula, você pode conversar com eles para saber suas opiniões."; // Extrair o array de falas do professor var falas = professor.falasGeneralistas[j].dialogos[0].nodulos[0].falas; // Redimensionar o array para aceitar mais um paragrafo de fala Array.Resize(ref falas, falas.Length + 1); var ultimoIndice = falas.Length - 1; falas[ultimoIndice] = new Fala { fala = falaDespedida, personagem = falas[ultimoIndice - 1].personagem, emocao = falas[ultimoIndice - 1].emocao }; // Encaixar o array com as (falas originais + fala nova) no // conjunto de falas do professor dialogo.dialogoPrincipal = professor.falasGeneralistas[j].dialogos[0].Clone(); dialogo.dialogoPrincipal.nodulos[0].falas = falas; } } }
public void AcabarConversa() { GameManager.UINaoSendoUsada(); if (npcDialogo != null) { npcDialogo.OnEndDialogue(); } npcDialogo = null; personagemRosto[1].sprite = null; escrevendo = false; nodulo = 0; proximaFala = 0; sistemaDialogoUI.SetActive(false); foreach (int questIndex in questsIndex) { ManagerQuest.QuestTakeStep(questIndex); } questsIndex.Clear(); }