using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SwitchModes : MonoBehaviour
{
    private string mode;
    private InputManager inputManager;

    [Header("Exploring")]
    public GameObject exploringUI;

    [Header("Building")]
    public GameObject buildingUI;

    private Vector3 buildingPosition;

    private string activemode;

    void Start()
    {
        inputManager = GetComponent<InputManager>();
        activemode = "building";
    }

    void Update()
    {
        if (inputManager.onFoot.SwitchModes.triggered)
        {
            SwitchMode();
        }

        if (activemode == "exploring")
        {
            Exploring();
        }
        else if (activemode == "building")
        {
            Building();
        }
        else
        {
            Debug.Log("the code is completely fucked up, give up");
        }
    }

    public void SwitchMode()
    {
        if (activemode == "building")
        {
            buildingPosition = transform.position;
            Vector3 startPosition = GetComponent<PlaceEntriesAndExits>().placedStartPosition;
            transform.position = new Vector3(startPosition.x, transform.position.y, startPosition.z);
            activemode = "exploring";


        }
        else if (activemode == "exploring")
        {
            //transform.position = buildingTransform.position;
            //transform.rotation = buildingTransform.rotation;
            //transform.localScale = buildingTransform.localScale;

            activemode = "building";
        }
    }

    public void Exploring()
    {
        exploringUI.SetActive(true);
        buildingUI.SetActive(false);

        GetComponent<Building>().buildModelList[GetComponent<Building>().currentSelectedBuild].SetActive(false);
        GetComponent<Exploring>().enabled = true;
        GetComponent<Building>().enabled = false;
    }
    public void Building()
    {
        exploringUI.SetActive(false);
        buildingUI.SetActive(true);

        GetComponent<Exploring>().enabled = false;
        if (GetComponent<PlaceEntriesAndExits>().endPlaced)
        {
            GetComponent<Building>().enabled = true;
            GetComponent<PlaceEntriesAndExits>().enabled = false;
        }
        else
        {
            GetComponent<PlaceEntriesAndExits>().enabled = true;

            GetComponent<Building>().enabled = false;
        }
    }
}