コード例 #1
0
 private void GetNextTarget()
 {
     if (tower.enemies.Count > 0)
     {
         currentTarget = tower.enemies[0];
     }
 }
コード例 #2
0
ファイル: Tower.cs プロジェクト: MansyrevAY/Taktika_Test
 private void UnSubscribeEnemy(EnemyHealthBehaviour health)
 {
     if (enemies.Contains(health))
     {
         enemies.Remove(health);
     }
 }
コード例 #3
0
ファイル: Tower.cs プロジェクト: MansyrevAY/Taktika_Test
 private void SubscribeEnemy(EnemyHealthBehaviour health)
 {
     if (!enemies.Contains(health))
     {
         enemies.Add(health);
     }
 }
コード例 #4
0
    private void Awake()
    {
        enemyHealthBehaviour = GetComponent <EnemyHealthBehaviour>();
        addScoreBehaviour    = GetComponent <AddScoreBehaviour>();

        scoreManager = FindObjectOfType <ScoreManager>();
    }
コード例 #5
0
ファイル: Tower.cs プロジェクト: MansyrevAY/Taktika_Test
 private void OnTriggerEnter2D(Collider2D collision)
 {
     if (collision.gameObject.tag.Equals("Enemy"))
     {
         EnemyHealthBehaviour enemyTakeDamage =
             collision.GetComponent <EnemyHealthBehaviour>();
         SubscribeEnemy(enemyTakeDamage);
     }
 }
コード例 #6
0
ファイル: EnemiesSpawner.cs プロジェクト: Flaysen/Afterlife
 private void SpawnMonsters(RoomController roomController)
 {
     if (roomController.RoomType == RoomType.COMMON)
     {
         EnemyHealthBehaviour enemyToSpawn = Instantiate(
             _enemiesPrefabs[Random.Range(0, _enemiesPrefabs.Length)],
             transform.position,
             Quaternion.identity);
         roomController.Enemies.Add(enemyToSpawn);
         _roomController.OnRoomEntered -= SpawnMonsters;
     }
 }
コード例 #7
0
ファイル: Tower.cs プロジェクト: MansyrevAY/Taktika_Test
    private void OnTriggerExit2D(Collider2D collision)
    {
        if (collision.gameObject.tag.Equals("Enemy"))
        {
            EnemyHealthBehaviour enemyTakeDamage =
                collision.GetComponent <EnemyHealthBehaviour>();

            UnSubscribeEnemy(enemyTakeDamage);
            if (EnemyOutOfRange != null)
            {
                EnemyOutOfRange.Invoke();
            }
        }
    }
コード例 #8
0
ファイル: RoomController.cs プロジェクト: Flaysen/Afterlife
 private void RemoveEnemy(EnemyHealthBehaviour enemy)
 {
     if (_isClosed == true)
     {
         Transform enemyTransform = enemy.transform;
         Enemies.Remove(enemy);
         if (Enemies.Count == 0 && _isClear == false)
         {
             _isClear = true;
             OnLastEnemyKilled?.Invoke(enemyTransform);
             OnRoomCleared?.Invoke(this);
         }
     }
 }