public void Avoid() { if (Avoidance == avoidance.ObstacleDetected) { motor.Rotate(-1 * data.turnSpeed); if (CanMove(data.moveSpeed)) { Avoidance = avoidance.AvoidingObstacle; exitTime = avoidtime; } } else if (Avoidance == avoidance.AvoidingObstacle) { } else { } }
public void Chase(GameObject target) { if (motor.RotateTowards(target.transform.position, data.turnSpeed)) { //Do Nothing } else if (!CanMove(data.moveSpeed)) { Avoidance = avoidance.ObstacleDetected; } else { if (Vector3.SqrMagnitude(transform.position - target.transform.position) >= (closeEnough * closeEnough)) { motor.Move(data.moveSpeed); } else { //Do Nothing } } }