void UpdateTarget() { GameObject[] enemies = GameObject.FindGameObjectsWithTag(enemyTag); float shortestDistance = Mathf.Infinity; GameObject nearestEnemy = null; foreach (GameObject enemy in enemies) { float distanceToEnemy = Vector3.Distance(transform.position, enemy.transform.position); if (distanceToEnemy < shortestDistance) { shortestDistance = distanceToEnemy; nearestEnemy = enemy; } } if (nearestEnemy != null && shortestDistance <= range) { target = nearestEnemy.transform; enemytarget = nearestEnemy.GetComponent <enemy_Ai>(); enemymove = nearestEnemy.GetComponent <NavMeshAgent>(); } else { target = null; } }
void Damage(Transform enemy) { enemy_Ai bear = enemy.GetComponent <enemy_Ai>(); if (bear != null) { bear.damagetaken(damage); } }