using UnityEngine;

public class BulletController : MonoBehaviour
{
    public float speed = 10f;  // Velocidad de la bala
    public Rigidbody rb;     // Referencia al Rigidbody de la bala
    public float delayBeforeDestroy; 
    public CharacterController playerController;

    void Start()
    {

        if (rb == null)
        {
            rb = GetComponent<Rigidbody>();
        }

        if (playerController == null)
        {
            playerController = GetComponent<CharacterController>();
        }

        rb.useGravity = false;


        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); //Posicion mouse
        RaycastHit hit;

        if (Physics.Raycast(ray, out hit))
        {
            Vector3 direction = (hit.point - transform.position).normalized;
            direction.y = 0;

            rb.linearVelocity = direction * speed;
        }
        Invoke("EnableCollision", delayBeforeDestroy);
    }

    private void EnableCollision()
    {
        GetComponent<Collider>().enabled = true;
    }

    void OnTriggerEnter(Collider collider)
    {
        if (collider.gameObject.CompareTag("Enemigo"))
        {
            Destroy(collider.gameObject); // Destruye el enemigo
            Destroy(gameObject); // Destruye la bala
        }
        else if (collider.gameObject.CompareTag("pared"))
        {
            Destroy(gameObject); // Destruye la bala al impactar con la pared
        }
    }
}