Beispiel #1
0
    void OnTriggerExit(Collider other)
    {
        if (other.tag == "Enemy")
        {
            iMovement enemyOutOfRange = other.GetComponent <iMovement>();
            enemies.Remove(enemyOutOfRange);
            enemyOutOfRange.DeathEvent().RemoveListener(delegate { BookKeepEnemy(enemyOutOfRange); });

            SetTarget();
        }
    }
Beispiel #2
0
    void OnTriggerEnter(Collider other)
    {
        if (other.tag == "Enemy")
        {
            iMovement newEnemyDetected = other.GetComponent <iMovement>();
            enemies.Add(newEnemyDetected);
            newEnemyDetected.DeathEvent().AddListener(delegate { BookKeepEnemy(newEnemyDetected); });
        }

        if (enemies.Count > 0)
        {
            SetTarget();
        }
    }
Beispiel #3
0
    private IEnumerator SpawnGroup(Group @group)
    {
        while (@group.numberOfEnemies > 0)
        {
            yield return(new WaitForSeconds(@group.spawnTime));

            GameObject enemy = Instantiate(@group.enemy);
            iMovement  e     = enemy.GetComponent <iMovement>();
            e.DeathEvent().AddListener(delegate { reportDeath(); });
            enemy.transform.parent = gameObject.transform;
            enemy.GetComponent <iMovement>().Initialize(waypointManager);
            @group.numberOfEnemies--;
        }
        trigger = true;
    }
Beispiel #4
0
        //Инициализация
        private void InitializeControllers()
        {
            m_MoveController = GetComponent <iMovement>();
            m_MoveController.Init();

            m_DodgeController = GetComponent <iDodging>();
            m_DodgeController.Init();

            m_AbilityController = GetComponent <AbilityController>();
            m_AbilityController.Init();

            m_StaminaController = GetComponent <StaminaController>();
            m_StaminaController.Init();

            m_HealthController = GetComponent <HealthController>();
            m_HealthController.Init();

            m_ShieldController = GetComponent <ShieldController>();
            m_ShieldController.Init();

            m_CollisionController = GetComponent <TriggerCollisionController>();
        }                 //Инициализация всех контроллеров
Beispiel #5
0
 public void BookKeepEnemy(iMovement enemy)
 {
     enemies.Remove(enemy); //this gets called from an enemy when they die
     SetTarget();
 }