private void EnemyAttacking(SOEnemy enemy) { int damage = ReturnEnemyDamage(); Debug.Log("nj2"); if (enemy.enemyType == _playerArmor.ProtectionType) { healthManager.PlayerLoseAdditionalArmor(damage); } else { Debug.Log("nj3"); healthManager.PlayerLoseHealth(damage); if (healthManager.PlayerDied) { _shouldBattle = false; Debug.Log("umro si frende"); } showDamage.ShowPlayerDamage(damage); } if (enemy.ShouldStun) { StunChanceNumber(); if (_randomStunChanceNumber <= _enemy.StunChance) { PlayerIsStunned = true; } } }
private void PlayerAttacking(SOEnemy enemy) { int damage = ReturnPlayerDamage(); int additionalDamage = ReturnPlayerAdditionalDamage(); if (enemy.enemyType == _playerWeapon.VsType) { healthManager.EnemyLoseHealth(enemy, additionalDamage); showDamage.ShowEnemyDamage(additionalDamage); } else { healthManager.EnemyLoseHealth(enemy, damage); if (healthManager.EnemyDied) { OnBattleEnd(); } showDamage.ShowEnemyDamage(damage); } if (_playerWeapon.ShouldStun) { StunChanceNumber(); if (_randomStunChanceNumber <= _playerWeapon.StunChance) { EnemyIsStunned = true; Debug.Log("enemy stunned"); } } }
private void Battle() { _playerWeapon = Pool.pool.WeaponOnPlayer; _playerArmor = Pool.pool.ArmorOnPlayer; _enemy = Pool.pool.EnemyInBattle; _shouldBattle = true; }
public void ChoosingItem(SOEnemy defeatedEnemy) { _itemIndex = Random.Range(0, ItemsAbleToGet.Length); SOItem newItem = ScriptableObject.Instantiate(ItemsAbleToGet[_itemIndex]) as SOItem; inventory.AddItemInInventory(newItem); }
public void EnemyLoseHealth(SOEnemy enemy, int amount) { enemy.Health -= amount; if (enemy.Health <= 0) { Debug.Log("Enemy umire"); EnemyDied = true; } }
public void GenerateEnemy() { SOEnemy rightEnemy = ScriptableObject.Instantiate(Pool.pool.AllEnemiesPrefabs[Random.Range(0, Pool.pool.AllEnemiesPrefabs.Count)]); SOEnemy leftEnemy = ScriptableObject.Instantiate(Pool.pool.AllEnemiesPrefabs[Random.Range(0, Pool.pool.AllEnemiesPrefabs.Count)]); rightEnemy.AttackSpeed += rightEnemy.AttackSpeed + rightEnemy.AttackSpeedPerLevel * (float)Pool.pool.EnemyLevel; rightEnemy.Damage += rightEnemy.Damage + rightEnemy.DamagePerLevel * Pool.pool.EnemyLevel; rightEnemy.Health += rightEnemy.Health + rightEnemy.HealthPerLevel * Pool.pool.EnemyLevel; leftEnemy.AttackSpeed += leftEnemy.AttackSpeed + leftEnemy.AttackSpeedPerLevel * Pool.pool.EnemyLevel; leftEnemy.Damage += leftEnemy.Damage + leftEnemy.DamagePerLevel * Pool.pool.EnemyLevel; leftEnemy.Health += leftEnemy.Health + leftEnemy.HealthPerLevel * Pool.pool.EnemyLevel; rightEnemy = RightEnemy; leftEnemy = LeftEnemy; Pool.pool.EnemyInBattle = RightEnemy; }
public void ChoosingGold(SOEnemy defeatedEnemy) { int amountOfLoot = defeatedEnemy.Level * Random.Range(GoldPerEnemyLvlMin, GoldPerEnemyLvlMax); GameManager.gm.ChangeNumberOfGold(amountOfLoot); }