Esempio n. 1
0
    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;
            targetEnemy = nearestEnemy.GetComponent <AIPather>();
        }
        else
        {
            target = null;
        }
    }
Esempio n. 2
0
    void Damage(Transform enemy)
    {
        AIPather e = enemy.GetComponent <AIPather>();

        if (e != null)
        {
            e.TakeDamage(damage);
        }
    }
 // Use this for initialization
 void Start()
 {
     pather = GameObject.Find("player").GetComponent <AIPather>();
 }