用java写一个简单的文字版植物大战僵尸,并给出代码
时间: 2023-06-25 10:02:39 浏览: 123
以下是一个简单的文字版植物大战僵尸的 Java 代码实现:
```java
import java.util.Scanner;
public class PlantVsZombie {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int sun = 50; // 初始阳光数量
int zombieHp = 100; // 初始僵尸血量
int round = 1; // 初始回合数
while (true) {
System.out.println("第 " + round + " 回合开始");
System.out.println("当前阳光数量:" + sun);
System.out.println("僵尸血量:" + zombieHp);
// 每回合随机生成太阳花或豌豆射手
int type = (int) (Math.random() * 2);
if (type == 0) {
System.out.println("本回合生成了一朵太阳花,需要花费 20 阳光");
if (sun < 20) {
System.out.println("阳光不足,无法生成太阳花");
} else {
sun -= 20;
System.out.println("太阳花生成成功");
}
} else {
System.out.println("本回合生成了一个豌豆射手,需要花费 50 阳光");
if (sun < 50) {
System.out.println("阳光不足,无法生成豌豆射手");
} else {
sun -= 50;
System.out.println("豌豆射手生成成功");
}
}
// 每回合僵尸攻击
zombieHp -= 20;
if (zombieHp <= 0) {
System.out.println("游戏胜利!");
break;
}
// 每回合玩家操作
System.out.println("请选择要进行的操作:1.种植植物 2.跳过回合");
int choice = scanner.nextInt();
if (choice == 1) {
System.out.println("请选择要种植的植物:1.太阳花 2.豌豆射手");
int plantType = scanner.nextInt();
if (plantType == 1) {
System.out.println("种植太阳花需要花费 20 阳光");
if (sun < 20) {
System.out.println("阳光不足,无法种植太阳花");
} else {
sun -= 20;
System.out.println("太阳花种植成功");
}
} else if (plantType == 2) {
System.out.println("种植豌豆射手需要花费 50 阳光");
if (sun < 50) {
System.out.println("阳光不足,无法种植豌豆射手");
} else {
sun -= 50;
System.out.println("豌豆射手种植成功");
}
} else {
System.out.println("无效的选择");
}
}
round++;
}
}
}
```
以上代码实现了简单的植物大战僵尸游戏逻辑,每回合随机生成太阳花或豌豆射手,僵尸每回合攻击,玩家可以选择种植植物或跳过回合。游戏胜利条件为击败僵尸。
阅读全文