53 lines
1.2 KiB
Java
53 lines
1.2 KiB
Java
public class Zauberer extends Held {
|
|
private int manaMax = 100;
|
|
private int mana = this.manaMax;
|
|
|
|
public Zauberer(String name, int hp, int damage) {
|
|
super(hp, hp, damage, name, "Zauberer");
|
|
// Standardmäßig keine spezielle Waffe gesetzt; GUI setzt die gewählte Waffe
|
|
}
|
|
|
|
public Zauberer() {
|
|
this("Merlin", 20, 5);
|
|
}
|
|
|
|
public int getMana() {
|
|
return mana;
|
|
}
|
|
|
|
public int getManaMax() {
|
|
return manaMax;
|
|
}
|
|
|
|
public void setMana(int mana) {
|
|
this.mana = mana;
|
|
}
|
|
|
|
public void heilen() {
|
|
// add hp + 1 and reduce mana by 50
|
|
setHp(getHp() + 1);
|
|
setMana(mana - 50);
|
|
}
|
|
|
|
@Override
|
|
public void angreifen(Monster ziel) {
|
|
int schaden = 0;
|
|
if (this.getWaffe() != null) {
|
|
schaden += (int) this.getWaffe().getAngriffspunkte();
|
|
}
|
|
|
|
schaden += this.getDamage();
|
|
System.out.println(
|
|
getName()
|
|
+ " wirkt einen Zauber auf "
|
|
+ ziel.getName()
|
|
+ " und verursacht "
|
|
+ schaden
|
|
+ " Schaden.");
|
|
ziel.setHp(ziel.getHp() - schaden);
|
|
|
|
// Verbraucht ein wenig Mana pro Angriff (falls vorhanden)
|
|
if (this.mana >= 5) this.mana -= 5;
|
|
}
|
|
}
|