getting error "Operator '<' cannot be used with a left hand side of type 'Object' and a right hand side of type 'float'."
I am using this script as Zombie AI but it gives error......." Operator '<' cannot be used with a left hand side of type 'Object' and a right hand side of type 'float'."
var Distance;
var Target : Transform;
var lookAtDistance = 25.0;
var chaseRange = 15.0;
var attackRange = 1.5;
var moveSpeed = 5.0;
var Damping = 6.0;
var attackRepeatTime = 1;
var TheDammage = 40;
private var attackTime : float;
var controller : CharacterController;
var gravity : float = 20.0;
private var moveDirection : Vector3 = Vector3.zero;
function Start ()
{
attackTime = Time.time;
}
function Update ()
{
if(RespawnMenuV2.playerIsDead == false)
{
Distance = Vector3.Distance(Target.position, transform.position);
if (Distance < lookAtDistance)
{
lookAt();
}
if (Distance > lookAtDistance)
{
GetComponent.<Renderer>().material.color = Color.green;
}
if (Distance < attackRange)
{
attack();
}
else if (Distance < chaseRange)
{
chase ();
}
}
}
function lookAt ()
{
GetComponent.<Renderer>().material.color = Color.yellow;
var rotation = Quaternion.LookRotation(Target.position - transform.position);
transform.rotation = Quaternion.Slerp(transform.rotation, rotation, Time.deltaTime * Damping);
}
function chase ()
{
GetComponent.<Renderer>().material.color = Color.red;
moveDirection = transform.forward;
moveDirection *= moveSpeed;
moveDirection.y -= gravity * Time.deltaTime;
controller.Move(moveDirection * Time.deltaTime);
}
function attack ()
{
if (Time.time > attackTime)
{
Target.SendMessage("ApplyDammage", TheDammage);
Debug.Log("The Enemy Has Attacked");
attackTime = Time.time + attackRepeatTime;
}
}
function ApplyDammage ()
{
chaseRange += 30;
moveSpeed += 2;
lookAtDistance += 40;
}
getting error "Operator '<' cannot be used with a left hand side of type 'Object' and a right hand side of type 'float'."................thanks
Firstly, in your script, wherever you've declared a "var" variable, change all the "vars" to the actual type of the variable you're declaring (e.g. "float", etc).
Then, if you still get the error, use the error message to deter$$anonymous$$e where the problem in the script is. It will either tell you the line in the script that is causing the problem (you can't use < to compare an Object to a float), or it will have a long stack trace from some unity base class to your script, in which case you're passing in a bad argument somewhere.
If you still can't figure out what you're doing wrong at this point, come back and post the error message in full.
Your answer
![](https://koobas.hobune.stream/wayback/20220612112714im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
I have an error on a C# script @username 2 Answers
Nav Mesh Problem with SetDestination 1 Answer
Realidad aumentada Vuforia problema creando apk 0 Answers