Unity C# Raycast2D
Я хочу сделать движение пули прямую линию(как в ксго) и для это решил воспользоваться рейкастом. Но правда не понимаю как мне сделать так, чтобы моя пуля летела ровно по направлению рейкаста. Буду очень благодарен помощи!
public class ZombieBullet : MonoBehaviour
{
[SerializeField] private float _speed = 10f;
[SerializeField] private float _distance = 30f; // максимальное расстояние для рейкаста
private int _damage = 10;
private void FixedUpdate()
{
RaycastHit2D hit = Physics2D.Raycast(transform.position, transform.right, _distance);
if (hit.collider != null)
{
HandlePlayerCollision(hit);
}
else
{
transform.position = hit.point;
}
}
private void HandlePlayerCollision(RaycastHit2D hit)
{
if (hit.collider.TryGetComponent(out Player player))
{
player.TakeDamage(_damage);
Destroy(gameObject);
}
}
}