/// <summary> /// Chama a caixa de diálogo estilo RPG, com uma string de textos, na posição indicada. /// Destroi objeto ao finalizar. /// Esta função cria a caixa como filho do canvas da cena atual, portanto bloqueia os elementos UI /// e desativa todos colliders2D. /// </summary> /// <param name="dialogs">Vetor String dos dialogos.</param> /// <param name="charImage">Texture da imagem que vai aparecer no canto da caixa.</param> public static void CreateDialogBox(string[] dialogs, Texture charImage) { Collider2D[] Cols; Cols = FindObjectsOfType <Collider2D>(); foreach (Collider2D c in Cols) { c.enabled = false; } GameObject dialogPanel = Resources.Load("Prefabs/ChatPanel") as GameObject; TextPanelController dialogBox = dialogPanel.GetComponent <TextPanelController>(); dialogBox.textString = dialogs; dialogBox.charImage = charImage; Instantiate(dialogPanel).transform.SetParent(GameObject.Find("Canvas").transform, false); }
public void VerificarErros() { fixables = GameObject.FindGameObjectsWithTag("fixables"); cleanables = GameObject.FindGameObjectsWithTag("cleanables"); foreach (GameObject objeto in fixables)//se houver algum false, set somethingStillNotFixed = true e sai do loop { if (objeto.GetComponent <ChangeSprite>().isFixed == true) { somethingStillNotFixed = false; } else { somethingStillNotFixed = true; break; } } foreach (GameObject objeto in cleanables)//se houver algum false, set somethingStillNotCleaned = true e sai do loop { if (objeto.GetComponent <DeactivateOnClick>().isCleaned == true) { somethingStillNotClean = false; } else { somethingStillNotClean = true; break; } } if (somethingStillNotFixed == true || somethingStillNotClean == true) { TextPanelController.CreateDialogBox(dialogoAindaTemErros, texture); } else { TextPanelController.ChatEndNotification += ErrosCorrigidos;//subscribe to event (avisa ao terminar os dialogos) TextPanelController.CreateDialogBox(dialogoTudoCerto, texture); } }
void Start() { TextPanelController.ChatEndNotification += ChatEnded;//subscribe to event (avisa ao terminar os dialogos) TextPanelController.CreateDialogBox(dialogos, texture, true); }
void Start() { TextPanelController.CreateDialogBox(dialogoInicial, texture); }