Hallo,
ich soll für die uni ein kleines Rollenspiel in java konzipieren (wie eines dieser billigen online-spiele bspw. ogame)
nun ist es so, dass ich eine klasse Entitiy habe, die alle allgemeinen eigenschaften aller charaktere besitzt
meine aufgabe ist es nun eine klasse priest so zu implementiere, dass es andere entitiys heilen kann,
dafür konsumiert die klasse den namen eines bestehendes entitys und gibt an, um wieviel sich die hitpoints erhöht
PROBLEM 1:
die hitpoints sind in der klasse entitiy als private deklariert, dass heißt ich habe ka wie ich darauf zugreifen soll (idee wäre eine zwischen klasse zu erstellen die hp um einen wert x erhöht)
PROBLEM 2:
damit der priest tatsächlich heilen kann, muss der name des entitys also existieren, wie prüfe ich das?
nun schicke ich euch einmal die oberklasse entitiy, dann die klasse eigenschaft die von entity erbt und einige attribute hinzufügend mehr hat (der priester zb hat keine strength während warrior und andere charaktere dies haben) und die klasse Priest
ich soll für die uni ein kleines Rollenspiel in java konzipieren (wie eines dieser billigen online-spiele bspw. ogame)
nun ist es so, dass ich eine klasse Entitiy habe, die alle allgemeinen eigenschaften aller charaktere besitzt
meine aufgabe ist es nun eine klasse priest so zu implementiere, dass es andere entitiys heilen kann,
dafür konsumiert die klasse den namen eines bestehendes entitys und gibt an, um wieviel sich die hitpoints erhöht
PROBLEM 1:
die hitpoints sind in der klasse entitiy als private deklariert, dass heißt ich habe ka wie ich darauf zugreifen soll (idee wäre eine zwischen klasse zu erstellen die hp um einen wert x erhöht)
PROBLEM 2:
damit der priest tatsächlich heilen kann, muss der name des entitys also existieren, wie prüfe ich das?
nun schicke ich euch einmal die oberklasse entitiy, dann die klasse eigenschaft die von entity erbt und einige attribute hinzufügend mehr hat (der priester zb hat keine strength während warrior und andere charaktere dies haben) und die klasse Priest
Java:
package classSystem;
import java.awt.Point;
public abstract class Entity {
private String name;
private int id;
private int hp;
private Point position;
public int bonus;
public String getName() {
return name;
}
public int getId() {
return id;
}
public int getHp() {
return hp;
}
public Point getPosition() {
return position;
}
public Entity(String name, int id, int hitPoints, Point pos) {
this.name = name;
this.id = id;
hp = bonus + hitPoints;
position = pos;
}
public abstract boolean attack(String attackName, Entity nameOfEntity);
}
package classSystem;
import java.awt.Point;
abstract public class Eigenschaften extends Entity {
protected int xp;
protected int healing;
protected int strength;
protected int mana;
protected Spell[] spells;
public int getXp() {
return xp;
}
public Spell[] getSpell(){
return spells;
}
public int getHealing() {
return healing;
}
public int getStrength() {
return strength;
}
public Eigenschaften(String name, int id, int hitPoints, Point pos) {
super(name, id, hitPoints, pos);
}
}
package classSystem;
import java.awt.Point;
public class Priest extends Eigenschaften {
public Priest(String name, int id, int hitPoints, Point pos, int exp,
int heilkünste) {
super(name, id, hitPoints, pos);
healing = heilkünste;
xp = exp;
}
@Override
public boolean attack(String attackName, Entity nameOfEntity) {
return false;
}
// wie soll er vergleichen?:(
public boolean heal(Entity nameOfEntitiy) {
if(
return false;
}
}
Zuletzt bearbeitet: