i have void FindTarget() every frame;
it only works if there are some debug logs errors ;
i need to print target so it print error , then it dont go down , if not , it goes down ignoring every if() to switch
private void FindTarget()
{
if (Target == null)state = State.Roaming;
Collider2D target = Physics2D.OverlapCircle(transform.position, TargetRange , WhatIsTargets);
//if (target == null) return; with this it continues to switch loop infinite
if (Vector2.Distance(transform.position , target.transform.position) < TargetRange)
{
//if (target == null) return; with this it works fine but giving a lot of console problems when losing target
switch (target.gameObject.tag)
{
case "Player":
TargetRange = ChasingTargetRange;
Target = target.transform;
TargetRB = target.attachedRigidbody;
state = State.ChaseTarget;
break;
case "Noise":
Target = target.transform;
state = State.FollowNoise;
break;
}
}