游戏描述
- 在进入游戏后可以选择对战的电脑角色名,共有三种选择(1,刘备 2,关羽 3,张飞),
- 之后输入自己的游戏昵称
- 进入第一场比赛,输入手势(1,剪刀 2,石头3,布),
- 电脑手势由随机数输出,
- 通过判断得出胜负,并且输出电脑输出的手势,
- 如果赢得3分,输了不得分,平了各加一分
- 可以由玩家是否继续游戏
- 游戏结束输出各自得分情况
- 提示是否要开下一局
代码展示
package com.qianfeng.weekendDay02;
import java.util.Scanner;
public class FullGame {
Scanner input = new Scanner(System.in);
String computerName;
String PlayerName;
int computerIntegral = 0;
int playerIntegral = 0;
String computerMora;
String playerMora;
int gameNumber = 0;
public static void main(String[] args) {
FullGame fullGame = new FullGame();
String judge = "y";
String gameJudge = "y";
do {
fullGame.gameStart();
System.out.println();
do {
fullGame.gameCourse();
fullGame.arbitrament();
fullGame.gameNumber++;
System.out.print("是否继续游戏(y/n):" );
judge = fullGame.input.next();
System.out.println();
} while (judge.equals("y"));
fullGame.gameend();
System.out.println("是否想开始新游戏(y/n):");
gameJudge = fullGame.input.next();
fullGame.setComputerIntegral(0);
fullGame.setPlayerIntegral(0);
fullGame.setGameNumber(0);
} while (gameJudge.equals("y"));
}
public void gameStart() {
System.out.println("**********************");
System.out.println("* 欢迎进入游戏 *");
System.out.println("**********************");
do {
System.out.print("请选择对战的游戏角色(1.刘备 2.关羽 3. 张飞):");
computerName = changeString(input.next());
if (computerName.equals("刘备") || computerName.equals("关羽") || computerName.equals("张飞")) {
break;
} else {
System.out.println("输入有误!!请您重新输入");
}
} while (true);
System.out.print("请输入您的角色名称:");
PlayerName = input.next();
System.out.println(PlayerName + " VS " + computerName);
}
public void gameCourse() {
do {
System.out.print("请" + PlayerName + "出拳(1.剪刀 2.石头 3 布):");
playerMora = changeChar(input.next());
if (playerMora.equals("剪刀") || playerMora.equals("石头") || playerMora.equals("布")) {
break;
} else {
System.out.println("输入有误!!请您重新输入");
}
} while (true);
computerMora = changeInt((int)(Math.random()*3+1));
System.out.println(computerName + "由系统随机出拳为:" + computerMora);
}
private void arbitrament() {
System.out.println("公布双方的出拳结果--->玩家出的:" + playerMora + "\t电脑出的:" + computerMora);
if (playerMora.equals("石头") && computerMora.equals("剪刀") ||
playerMora.equals("剪刀") && computerMora.equals("布") ||
playerMora.equals("布") && computerMora.equals("石头")) {
playerIntegral += 3;
System.out.println(PlayerName + "获胜加上3积分");
} else if ((computerMora.equals("石头") && playerMora.equals("剪刀") ||
computerMora.equals("剪刀") && playerMora.equals("布") ||
computerMora.equals("布") && playerMora.equals("石头")) ){
computerIntegral += 3;
System.out.println(computerName + "获胜加上3积分");
} else {
playerIntegral++;
computerIntegral++;
System.out.println("平手各加1积分");
}
}
public void gameend() {
System.out.println("公布最终比赛结果");
System.out.println("对战的局数:" + gameNumber);
System.out.println(PlayerName + "积分为:" + playerIntegral + "\t" + computerName + "积分为:" + computerIntegral);
if (computerIntegral > playerIntegral) {
System.out.println(computerName + "赢了,很遗憾");
} else if (computerIntegral < playerIntegral) {
System.out.println(PlayerName + "赢了,恭喜您");
} else {
System.out.println("平手");
}
}
private String changeChar(String n) {
switch (n) {
case "1":
return "剪刀";
case "2":
return "石头";
case "3":
return "布";
default:
return "错误手势";
}
}
private String changeInt(int n) {
switch (n) {
case 1:
return "剪刀";
case 2:
return "石头";
case 3:
return "布";
default:
return null;
}
}
private String changeString(String n) {
switch (n) {
case "1":
return "刘备";
case "2":
return "关羽";
case "3":
return "张飞";
default:
return "错误输入";
}
}
public int getComputerIntegral() {
return computerIntegral;
}
public void setComputerIntegral(int computerIntegral) {
this.computerIntegral = computerIntegral;
}
public int getPlayerIntegral() {
return playerIntegral;
}
public void setPlayerIntegral(int playerIntegral) {
this.playerIntegral = playerIntegral;
}
public int getGameNumber() {
return gameNumber;
}
public void setGameNumber(int gameNumber) {
this.gameNumber = gameNumber;
}
}
结果展示
