diff --git a/src/Game.java b/src/Game.java index 36f4552..f2a1c97 100644 --- a/src/Game.java +++ b/src/Game.java @@ -38,7 +38,7 @@ public static void play(Player p, Scanner input, Random rand) { int count = 0; - while (p.health > 0 && e.HP > 0) { + while (p.getHealth()> 0 && e.HP > 0) { p.showProfile(); if (count % 2 == 0) { @@ -66,7 +66,7 @@ public static void play(Player p, Scanner input, Random rand) { } } - if (p.health <= 0) { + if (p.getHealth() <= 0) { System.out.println(RED + "\n __ __ _______ __ __ ______ ___ _______ ______ "); System.out.println("| | | || || | | | | | | | | || | "); System.out.println("| |_| || _ || | | | | _ || | | ___|| _ |"); @@ -85,7 +85,7 @@ public static void play(Player p, Scanner input, Random rand) { if (choice == 1) { stage++; p.health += 3; - if (p.health > p.maxHealth) p.health = p.maxHealth; + if (p.getHealth() < p.getMaxHealth()) p.setHealth(p.getHealth() + 3); System.out.println("You rested for a moment. HP restored by 3."); } else { System.out.println("You retired as a legendary hero at Stage " + stage + "!"); diff --git a/src/Player.java b/src/Player.java index 04ec607..8406b4a 100644 --- a/src/Player.java +++ b/src/Player.java @@ -13,6 +13,9 @@ public Player(String nickname) { public int getDamage() { return this.damage; } + public int getHealth() { return this.health; } + public void setHealth(int health) { this.health = health; } + public int getMaxHealth() { return this.maxHealth; } public abstract boolean attack(Enemy enemy); public abstract boolean heal(); diff --git a/src/PlayerDecorator.java b/src/PlayerDecorator.java index 955168a..865345a 100644 --- a/src/PlayerDecorator.java +++ b/src/PlayerDecorator.java @@ -15,6 +15,14 @@ public PlayerDecorator(Player p) { public int getDamage() { return wrappedPlayer.getDamage(); } + @Override + public int getHealth() { return wrappedPlayer.getHealth(); } + + @Override + public void setHealth(int health) { wrappedPlayer.setHealth(health); } + + @Override + public int getMaxHealth() { return wrappedPlayer.getMaxHealth(); } @Override public boolean attack(Enemy enemy) {