using UnityEngine;

[RequireComponent(typeof(Hightlight))]
public class DialogInteract : MonoBehaviour
{
    // todos os parametros sao opcionais
    public string nomeDaCena; // nome do arquivo txt
    public Texture imagem; // imagem
    public string getItem; // adquirir item (ver Inventory Database para nome dos itens)
    enum eSwitchCaosState { nada, bom, ruim, inverter };
    [SerializeField] eSwitchCaosState mudarAtmosfera = eSwitchCaosState.nada;

    private void OnMouseOver()
    {
        if (Input.GetMouseButtonDown(0))
            if (Control.Reach(transform.position))
            {
                if(nomeDaCena!="") Dialog.PlayScene(nomeDaCena, imagem);
                if(getItem!="") Control.inventory.GetItem(getItem);

                var olda = RoomTransition.caosState;
                switch (mudarAtmosfera)
                {
                    case eSwitchCaosState.bom: RoomTransition.caosState = false; break;
                    case eSwitchCaosState.ruim: RoomTransition.caosState = true; break;
                    case eSwitchCaosState.inverter: RoomTransition.caosState = !RoomTransition.caosState; break;
                }
                if (olda != RoomTransition.caosState) RoomTransition.GoTo(RoomTransition.lastRoom);
            }
    }
}
