如何用不同的方案创造更多的怪物
How to create more Monster with different shemes
您好,我目前正在做作业,创建一个基于文本的角色扮演游戏。
我创建了一个包含 Monster 属性的 Monster.class
。
我的任务是创建多个具有不同属性(不同攻击模式)的怪物。问题是我应该使用不同的 Classes 来扩展 Monster Class。我不知道如何使用 Monster.class.
创建它们
public class Monster extends Characters {
public Monster() {
this(160, 45, 0.6);
}
public Monster(int Hp, int atk, double hitChance){
this.Hp = Hp;
this.atk = atk;
this.hitChance = hitChance;
}
public int attack(Player p) {
if (Math.random() <= hitChance) {
int damage = (int) (atk * (Math.random() + 1.0));
p.takeDamage(damage);
return damage;
} else {
return -1;
}
}
public String toString(){
return String.format("Gegner -- HP %d -- ATK %d%n",Hp, atk);
}
}
怎么样
public class NewMonster extends Monster{
public NewMonster(int hp, int atk, double hitChance){
super(hp, atk, hitChance);
}
}
你可以只扩展怪物 class 并覆盖攻击方法。
public class Zombie extends Monster{
public Zombie(int Hp, int atk, double hitChance){
super(hp,atk,hitChance);
}
@Override
public int attack(Player p) {
// new awesome pattern
}
}
您好,我目前正在做作业,创建一个基于文本的角色扮演游戏。
我创建了一个包含 Monster 属性的 Monster.class
。
我的任务是创建多个具有不同属性(不同攻击模式)的怪物。问题是我应该使用不同的 Classes 来扩展 Monster Class。我不知道如何使用 Monster.class.
public class Monster extends Characters {
public Monster() {
this(160, 45, 0.6);
}
public Monster(int Hp, int atk, double hitChance){
this.Hp = Hp;
this.atk = atk;
this.hitChance = hitChance;
}
public int attack(Player p) {
if (Math.random() <= hitChance) {
int damage = (int) (atk * (Math.random() + 1.0));
p.takeDamage(damage);
return damage;
} else {
return -1;
}
}
public String toString(){
return String.format("Gegner -- HP %d -- ATK %d%n",Hp, atk);
}
}
怎么样
public class NewMonster extends Monster{
public NewMonster(int hp, int atk, double hitChance){
super(hp, atk, hitChance);
}
}
你可以只扩展怪物 class 并覆盖攻击方法。
public class Zombie extends Monster{
public Zombie(int Hp, int atk, double hitChance){
super(hp,atk,hitChance);
}
@Override
public int attack(Player p) {
// new awesome pattern
}
}