二、打怪兽要求:1、角色可以怪物实施攻击,一次攻击后,怪物损失部分HealthPoint,当HealthPoint损失完后,怪物死亡。2、角色可装备不同武器:木剑、铁剑和魔剑三种。3、角色用木剑每次攻击可让怪物损失50HealthPoint;角色用铁剑每次攻击可让怪物损失100HealthPoint;角色用魔剑每次攻击可让怪物损失200HealthPoint。4、创建Demo类,在其中演示怪物的创建、角色用不同的装备攻击怪兽。5、系统具有良好的可扩展性,以便后期可以增加更多的武器。 .用java实现
时间: 2024-03-02 16:50:56 浏览: 20
好的,以下是一个用Java实现的打怪兽游戏的代码:
```
// 定义怪物类
class Monster {
private int healthPoint;
public Monster(int healthPoint) {
this.healthPoint = healthPoint;
}
public int getHealthPoint() {
return healthPoint;
}
public void setHealthPoint(int healthPoint) {
this.healthPoint = healthPoint;
}
public void attack(int damage) {
healthPoint -= damage;
if (healthPoint <= 0) {
System.out.println("怪物已死亡!");
}
}
}
// 定义角色类
class Player {
private String name;
private int attackDamage;
public Player(String name, int attackDamage) {
this.name = name;
this.attackDamage = attackDamage;
}
public void attack(Monster monster) {
monster.attack(attackDamage);
}
}
// 定义武器类
class Weapon {
private String name;
private int damage;
public Weapon(String name, int damage) {
this.name = name;
this.damage = damage;
}
public int getDamage() {
return damage;
}
public String toString() {
return name;
}
}
// 定义Demo类
public class Demo {
public static void main(String[] args) {
// 创建怪物
Monster monster = new Monster(500);
// 创建武器
Weapon woodSword = new Weapon("木剑", 50);
Weapon ironSword = new Weapon("铁剑", 100);
Weapon magicSword = new Weapon("魔剑", 200);
// 创建玩家
Player player = new Player("小明", woodSword.getDamage());
// 玩家装备不同的武器攻击怪物
player.attack(monster);
System.out.println("玩家使用" + woodSword + "攻击怪物,怪物剩余生命值:" + monster.getHealthPoint());
player.attack(monster);
System.out.println("玩家使用" + woodSword + "攻击怪物,怪物剩余生命值:" + monster.getHealthPoint());
player.attack(monster);
System.out.println("玩家使用" + ironSword + "攻击怪物,怪物剩余生命值:" + monster.getHealthPoint());
player.attack(monster);
System.out.println("玩家使用" + magicSword + "攻击怪物,怪物剩余生命值:" + monster.getHealthPoint());
}
}
```
在这个实现中,我们定义了三个类:Monster、Player和Weapon。Monster类表示怪物,其中包含怪物的HealthPoint属性和attack()方法,用于接收玩家的攻击并计算损失的生命值。Player类表示玩家,其中包含玩家的攻击属性和attack()方法,用于攻击怪物。Weapon类表示武器,其中包含武器的名称和攻击属性。
在Demo类中,我们首先创建了一个怪物对象和三种武器对象。然后创建了一个玩家对象,并使用玩家的attack()方法攻击怪物,最后输出怪物的剩余生命值。通过玩家装备不同的武器攻击怪物,可以看到不同的武器造成的伤害不同。
这个实现还具有良好的可扩展性,如果需要增加更多的武器,只需要创建一个新的Weapon对象即可。