Beetle游戏java实现
游戏规则:参与人数1人以上,谁的甲虫最先完整谁就胜出。初始的甲虫不具有任何器官,而完整的甲虫具有躯干、头部、6条腿、两只眼、两只触角、一条尾巴。
玩法:轮你掷骰子时,按如下规定采取动作:
1:如果甲虫已有一处躯干,传骰子给下一位。否则,添加一个躯干,并再掷一次。
2:如果甲虫已有头部或没有躯干,传骰子。否则,添加一个头部,并再掷一次。
3:如果甲虫已有6条腿或没有躯干,传骰子,否则,添加两条腿,并再掷一次。
4:如果甲虫已有两只眼或没有头部,传骰子。否则,添加一只眼睛,并再掷一次。
5:如果甲虫已有两根触角或没有头部,传骰子,否则,添加一根触角,并再掷一次。
6:如果甲虫已有一条尾巴或没有躯干,传骰子。否则,添加一条尾巴,并再掷一次。
?第一步:先确定这类,有甲虫类、骰子类、甲虫游戏类。
public class BeetleGame { private java.util.Scanner INPUT = java.util.Scanner(System.in); //定义按键掷骰子的控制器INPUT private Beetle beetle1; private Beetle beetle2; private Die die; public BeetleGame() { beetle1 = new Beetle(); beetle2 = new Beetle(); //构造两只甲虫 die = new Die(); //构造一只骰子 } public boolean takeTurn(int player,Beetle beetle) { System.out.println("\n现在拿骰子的是玩家"+player+"你目前的甲虫情况是:"); System.out.println(beetle); System.out.println("按回车键掷骰子:"); INPUT.nextLine(); //捕获键盘信号 roll(); System.out.println("你掷到"+die.getTopFace()+"点"); switch(die.getTopFace) { //按规则采取行动 case 1: System.out.println("是否添加躯干"); return beetle.addBody(); ... case 4: System.out.println("是否添加眼睛"); return beetle.addEye(); } } public void play() { int player = 1; Beetle beetle = beetle1; //第一次掷骰子初始为第一个玩家 while(!isComplete()) { //甲虫不完整 if(!(takeTurn(player,beetle))) { //传骰子给下一个玩家 if(player == 1) { player = 2; beetle = beetle2;} } else {player = 1;beetle = beetle1;} } System.out.println("\n恭喜!玩家"+player+"获得了胜利!"); System.out.println("就是这只完整的甲虫"+beetle); } public static void main(String[] args) { System.out.println("欢迎玩甲虫游戏!"); BeetleGame game = new BeetleGame(); game.play(); }}?
??????????
?
???