[Sync Iteration] java/wizards-and-warriors/1

This commit is contained in:
exercism-solutions-syncer[bot] 2026-04-17 12:49:03 +00:00 committed by GitHub
parent f80fbca12e
commit 9b06862c0f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -0,0 +1,49 @@
class Fighter {
boolean isVulnerable() {
return true;
}
int getDamagePoints(Fighter fighter) {
return 1;
}
}
class Warrior extends Fighter {
public String toString() {
return "Fighter is a Warrior";
}
@Override
public boolean isVulnerable() {
return false;
}
@Override
public int getDamagePoints(Fighter fighter) {
return fighter.isVulnerable() ? 10 : 6;
}
}
class Wizard extends Fighter {
private boolean prepare = false;
public String toString() {
return "Fighter is a Wizard";
}
public void prepareSpell() {
prepare = true;
}
@Override
public boolean isVulnerable() {
return !prepare;
}
@Override
public int getDamagePoints(Fighter fighter) {
return prepare ? 12 : 3;
}
}