void updateState() { if (enemy != null) { if (canISee(this.transform.position, enemy.gameObject, sightDistance)) { } else { if (amIgood) { enemy = HiveMind.getReachableBadGuy(this.transform.position, sightDistance); } else { enemy = HiveMind.getReachableGoodGuy(this.transform.position, sightDistance); } } } else { //there is no enemy, getting closest enemy if (amIgood) { enemy = HiveMind.getReachableBadGuy(this.transform.position, sightDistance); } else { enemy = HiveMind.getReachableGoodGuy(this.transform.position, sightDistance); } } }