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
}
}
}