Quantcast
Channel: Questions in topic: "enemy"
Viewing all articles
Browse latest Browse all 1488

How to make a Raycast enemy?

$
0
0
Hi, I have created a script for an enemy but, it has a RADIAL view range, that is, if I am behind it it detects me the same, Supposedly it can be created with Raycast but I do not know, I searched but nothing, Someone knows some method? Thank you! Here is my script: using UnityEngine; using System.Collections; public class Enemy : MonoBehaviour { public Transform Target; public Animator Animador; public float Distancia = 30; public float LastDistance = 50; public float VisionAngle; public bool Searching = false; public float RotationDamping = 2; public float moveSpeed = 5; public Vector3 TargetPosition; public NavMeshAgent EnemyNV; private bool AgentActive = false; public NavMeshAgent NavMeshAgentComp; void Start() { Animador.SetBool("Aiming", false); TargetPosition = Target.transform.position; EnemyNV = GetComponent(); NavMeshAgentComp.enabled = false; } void Update() { var distance = Vector3.Distance(Target.position, transform.position); if(distance <= Distancia) { LookAtTarget(); Animador.SetBool("Aiming", true); Animador.SetBool("WalkingSearch", false); Animador.SetBool("Idle", false); } if(distance > Distancia) { SearchTarget(); Animador.SetBool("Aiming", false); Animador.SetBool("WalkingSearch", true); Animador.SetBool("Idle", false); Searching = true; } if(distance > LastDistance) { LastTarget(); } } void LookAtTarget() { var dir = Target.position - transform.position; dir.y = 0; var rotation = Quaternion.LookRotation(dir); transform.rotation = Quaternion.Slerp(transform.rotation, rotation, Time.deltaTime * RotationDamping); NavMeshAgentComp.enabled = false; } void SearchTarget() { if(Searching == true) { Animador.SetBool("WalkingSearch", true); NavMeshAgentComp.enabled = true; EnemyNV.destination = Target.position; } } void LastTarget() { if(Searching == true) { Searching = false; Animador.SetBool("Aiming", false); Animador.SetBool("WalkingSearch", false); Animador.SetBool("Idle", true); NavMeshAgentComp.enabled = false; } } }

Viewing all articles
Browse latest Browse all 1488

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>