fix bugs and add status prints

This commit is contained in:
2026-05-10 21:47:31 +03:30
parent 1060cd0ff7
commit 0992256cfe
10 changed files with 38 additions and 29 deletions
@@ -169,7 +169,6 @@ public class Game {
System.out.println("-".repeat(30));
if (player instanceof Assassin && player.getUsingSpecialAbility()) {
player.setUsingSpecialAbility(false);
System.out.println(enemy.getClass().getSimpleName() + " skipped its turn!");
turn = 0;
continue;
@@ -208,22 +207,20 @@ public class Game {
private boolean handlePlayerAction(int choice, Enemy enemy) {
switch (choice) {
case 1 -> { player.lightAttack(enemy); return true; }
case 2 -> { player.heavyAttack(enemy); if (player.isSuccessfulAction()) return true; }
case 3 -> { player.defend(); if (player.isSuccessfulAction()) return true; }
case 4 -> { player.heal(10); if (player.isSuccessfulAction()) return true; }
case 5 -> { player.specialAbility(enemy); if (player.isSuccessfulAction()) return true; }
case 2 -> { player.heavyAttack(enemy); return player.isSuccessfulAction();}
case 3 -> { player.defend(); return player.isSuccessfulAction(); }
case 4 -> { player.heal(10); return player.isSuccessfulAction(); }
case 5 -> { player.specialAbility(enemy); return player.isSuccessfulAction(); }
case 6 -> { player.getFlask().use(player); return true; }
default -> { System.out.println("Invalid choice."); return false; }
}
System.out.println("Not enough mana! Choose another action (1. Light attack is always free).");
return false;
}
private boolean handleEnemyAction(Enemy enemy) {
int choice = new Random().nextInt(3);
switch (choice) {
case 1 -> { enemy.defend(); if (enemy.isSuccessfulAction()) return true; }
case 2 -> { enemy.heal(10); if (enemy.isSuccessfulAction()) return true; }
case 1 -> { enemy.defend(); return enemy.isSuccessfulAction(); }
case 2 -> { enemy.heal(10); return enemy.isSuccessfulAction(); }
}
enemy.attack(player);
@@ -233,9 +230,9 @@ public class Game {
private void printCombatStatus(Enemy enemy) {
System.out.println("[" + player.getClass().getSimpleName() + " - " + player.getHP() + "/" + player.getMaxHP() +
" HP | " + player.getMP() + "/" + player.getMaxMP() + "]");
" HP | " + player.getMP() + "/" + player.getMaxMP() + " MP]");
System.out.println("[" + enemy.getClass().getSimpleName() + " - " + enemy.getHP() + "/" + enemy.getMaxHP() +
" HP | " + enemy.getMP() + "/" + enemy.getMaxMP() + "]");
" HP | " + enemy.getMP() + "/" + enemy.getMaxMP() + "MP]");
}