using UnityEngine;
using System.Collections;
using UnityEngine.UI; //incluir este using cuando programemos con objetos de la interfaz

public class playermovements : MonoBehaviour {
    public int speed;
    float h;
    float v;
    Animator anim;
    public int turnSpeed;
    Rigidbody rb;
    public int forcejump;
    public GameObject prefabEsfera;
    public Transform posRot;
    public int life;
    public GameObject lifeUI;// barra de vida del player que tenemos en la interfaz
	void Start () {
        anim = GetComponent<Animator>();
        rb = GetComponent<Rigidbody>();  
	}
	
	// Update is called once per frame
	void Update () {
        h = Input.GetAxis("Horizontal");
        v = Input.GetAxis("Vertical");
        transform.Translate(new Vector3(0, 0, v) * speed * Time.deltaTime);
        transform.Rotate(new Vector3(0, h, 0) * turnSpeed * Time.deltaTime);
        anim.SetFloat("SPEED", v);
        if (Input.GetMouseButtonDown(0))
        {
            rb.AddForce(Vector3.up * forcejump);

        }
        if (Input.GetKeyDown(KeyCode.E))
        {
            anim.SetBool("PISTOL", true);
        }
        /* EVENTOS EN LAS ANIMACIONES:
        Ejectar una funcion en un frame determinado de una funcion*/
    }
    public void PistolToFalse()
    {
        anim.SetBool("PISTOL", false);
    }

    public void CreateBullet()
    {
        Instantiate(prefabEsfera, posRot.position, posRot.rotation);
    }
    // Funcion para detectar los triggers que entran en el player
    void OnTriggerEnter(Collider other)
    {
        //Detecto si el collider que ha entrado tiene el tag de AttackEnemy" 
        if (other.gameObject.tag == "AttackEnemy")
        {
            //resto vida al player
            life--;
            lifeUI.GetComponent<Image>().fillAmount -= 0.1f;
        }
    }
}
