using UnityEngine; namespace Scampz.GameJam.Assets.Scripts { public class RayCaster : MonoBehaviour { [SerializeField] private float rayCastDistance = 1f; [SerializeField] private float rayCastAngle = 45f; [SerializeField] private float sphereRadius = 2f; //public bool IsWithinBounds() //{ // var offsetAngle = Quaternion.AngleAxis(rayCastAngle, transform.right); // return Physics.Raycast(transform.position, offsetAngle * transform.forward); //} public bool IsWithinBounds() { var offsetAngle = Quaternion.AngleAxis(rayCastAngle, transform.right); var ray = new Ray(transform.position, offsetAngle * transform.forward); return Physics.SphereCast(ray, sphereRadius, rayCastDistance); } private void OnDrawGizmosSelected() { Gizmos.color = Color.red; var offsetAngle = Quaternion.AngleAxis(rayCastAngle, transform.right); var direction = offsetAngle * transform.forward; Debug.DrawLine(transform.position, transform.position + direction * rayCastDistance); Gizmos.DrawWireSphere(transform.position + direction * rayCastDistance, sphereRadius); } } }