public void ShootProjectile()
    {
        GameObject     proj    = Instantiate(projectile, muzzle.position, muzzle.rotation);
        EnemyHitPoints enemyHP = target.GetComponentInChildren <EnemyHitPoints> ();

        proj.GetComponent <TroopProjectile>().SetTarget(attackDamage, enemyHP.hitTarget);
    }
예제 #2
0
    private void OnTriggerExit(Collider other)
    {
        EnemyHitPoints enemyHP = other.transform.GetComponent <EnemyHitPoints> ();

        //if (other.transform == target)
        //	target = null;
    }
예제 #3
0
    private void OnTriggerEnter(Collider other)
    {
        EnemyHitPoints enemyHP = other.transform.GetComponent <EnemyHitPoints> ();

        if (enemyHP != null && !targets.Contains(enemyHP.transform))
        {
            targets.Add(enemyHP.transform);
        }

        currentState.OnTriggerEnter(other);
    }
예제 #4
0
    public override void OnTriggerEnter(Collider other)
    {
        EnemyHitPoints enemyHP = other.transform.GetComponent <EnemyHitPoints>();

        if (enemyHP != null)
        {
            controller.target = enemyHP.transform;

            if (controller.DistanceToTarget() > controller.fightRange)
            {
                ToAggroState();
            }
            else
            {
                ToFightState();
            }
        }
    }
예제 #5
0
    public void DealDamage()
    {
        EnemyHitPoints enemyHP = target.GetComponent <EnemyHitPoints> ();

        enemyHP.TakeDamage(attackDamage);
    }