// EnemyがPlayerを攻撃する void EnemyTurn() { enemy.Attack(player); if (player.hp == 0) { BattleEnd(); } }
// playerがEnemyを攻撃する public void OnAttackButton() { player.Attack(enemy); if (enemy.hp > 0) { EnemyTurn(); } else { BattleEnd(); } }
private void OnTriggerEnter2D(Collider2D col) { if (enemy == null && !isAlly && col.CompareTag("Shield") && canHit) { Health = 0; // Создаём частицы попадания снаряда ParticlesManager.instance.SpawnParticles("Shell Hit", col.transform.position.x + Random.Range(-0.25f, 0.2f), col.transform.position.y + Random.Range(-0.05f, 0.45f)); CameraShake.instance.SmallShake(); // Трясём камеру CheckDeath(); } // Если союзный снаряд обнаружил вражеского юнита if (enemy == null && isAlly && col.CompareTag("Enemy") && canHit) { enemy = col.GetComponent <UnitManager>(); // Кэшируем противника shell_owner.Attack(true, enemy); // Проводим атаку Health--; // Отнимаем здоровье у снаряда CheckDeath(); StartCoroutine(HitCD()); } // Если вражеский снаряд обнаружил союзного юнита else if (enemy == null && !isAlly && col.CompareTag("Ally") && canHit) { enemy = col.GetComponent <UnitManager>(); // Кэшируем противника shell_owner.Attack(true, enemy); // Проводим атаку Health--; // Отнимаем здоровье у снаряда CheckDeath(); StartCoroutine(HitCD()); } }