- Home /
Question about movement forward in line of sight
Hi! I'm working with unity. This is my first time scripting with it and I'm having some issues accomplishing the goal.
Basically, I'm trying to get this bacteria to chase a nutrient. Both of these objects are just 2D dots on the screen right now. The bacteria moves on the x axis and y axis, with no gravity. The idea is that the bacteria will spin and choose a random direction. When it is facing whatever direction it stops in, it will scan to see if it is facing the direction of the nutrient. If it is, it will move forward around 3-4 times the distance than if it is not facing the nutrient. After this point, it will begin rotating again and the loop starts over until it collides with the nutrient.
So far, I have below:
using UnityEngine;
using System.Collections;
public class BacterialMovement : MonoBehaviour
{
public GameObject bacteria;
public float fieldOfViewAngle = 120f;
public bool nutrientInSight;
public GameObject nutrients;
private void Look(Collider other){
if (other.gameObject == nutrients){
nutrientInSight = false;
Vector3 direction = transform.position;
float angle = Vector3.Angle(direction, transform.forward);
if(angle < fieldOfViewAngle * 0.5f)
{
RaycastHit hit;
// ... if a raycast hits something...
if(Physics.Raycast(transform.position, direction.normalized, out hit))
{
// ... and if the raycast hits the player...
if(hit.collider.gameObject == nutrients)
{
// ... the player is in sight.
nutrientInSight = true;
}
}
}
if (nutrientInSight == true){
transform.position += transform.forward * Time.deltaTime;
}
if(nutrientInSight == false){
transform.position += transform.forward * Time.deltaTime;
}
}
}}
But I'm at a loss as to how to get the bacteria to move at all. Does anyone have any idea as to how I may continue?
Your answer
![](https://koobas.hobune.stream/wayback/20220612054317im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Raycast from the wrong position. 1 Answer
Scale object based on another object's position 1 Answer
how to make a bolt collision teleport player to where the collision happened 1 Answer
Linecast blocked by colliders not actually in the way? 0 Answers
Question regarding Raycast hitting UI button object instead of gameobject 0 Answers