コード例 #1
0
    /// <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);
    }
コード例 #2
0
    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);
        }
    }
コード例 #3
0
 void Start()
 {
     TextPanelController.ChatEndNotification += ChatEnded;//subscribe to event (avisa ao terminar os dialogos)
     TextPanelController.CreateDialogBox(dialogos, texture, true);
 }
コード例 #4
0
 void Start()
 {
     TextPanelController.CreateDialogBox(dialogoInicial, texture);
 }