/**
*
*创建地图类
*/
public class Test {
int [] amp=new int [100];
Random ran=new Random();
public void showMap(int indexA,int indexB){
for(int i=0;i<=30;i++){
System.out.print(getPamrky(indexA, indexB, i));
}
System.out.println();
for(int i=31;i<=33;i++){
for(int j=0;j<30;j++){
System.out.print(" ");
}
System.out.println(getPamrky(indexA, indexB, i));
}
for(int i=64;i>=34;i--){
System.out.print(getPamrky(indexA, indexB, i));
}
System.out.println();
for(int i=65;i<=68;i++){
System.out.println(getPamrky(indexA, indexB, i));
}
for(int i=69;i<100;i++){
System.out.print(getPamrky(indexA, indexB, i));
}
}
int [] amp=new int [100];
Random ran=new Random();
public void showMap(int indexA,int indexB){
for(int i=0;i<=30;i++){
System.out.print(getPamrky(indexA, indexB, i));
}
System.out.println();
for(int i=31;i<=33;i++){
for(int j=0;j<30;j++){
System.out.print(" ");
}
System.out.println(getPamrky(indexA, indexB, i));
}
for(int i=64;i>=34;i--){
System.out.print(getPamrky(indexA, indexB, i));
}
System.out.println();
for(int i=65;i<=68;i++){
System.out.println(getPamrky(indexA, indexB, i));
}
for(int i=69;i<100;i++){
System.out.print(getPamrky(indexA, indexB, i));
}
}
/**
*设置陷阱的方法
*/
public void into(){
/**
* 地雷
*/
public void into(){
/**
* 地雷
*/
for(int i=1;i<=4;i++){
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=1;
}else{
i--;
}
}
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=1;
}else{
i--;
}
}
//时空隧道
for(int i=1;i<=4;i++){
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=2;
}else{
i--;
}
}
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=2;
}else{
i--;
}
}
//幸运大轮盘
for(int i=1;i<=4;i++){
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=3;
}else{
i--;
}
}
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=3;
}else{
i--;
}
}
//暂停
for(int i=1;i<=4;i++){
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=4;
}else{
i--;
}
}
}
/**
* 创建玩家地图
* @return
*/
public String getPamrky(int indexA,int indexB,int index){
String str = "";
if (indexA == index && indexB == index) {
str = "X";
} else if (indexA == index) {
str = "A"; // 玩家A
} else if (indexB== index) {
str = "B";
} else {
switch (amp[index]) {
case 0:
str = "*";
break;
case 1:
str = "@"; // 地雷
break;
case 2:
str = "#"; // 时空隧道
break;
case 3:
str = "&"; // 幸运大轮盘
break;
case 4:
str = "$"; // 暂停
break;
int r=ran.nextInt(92)+4;
if(amp[r]==0){
amp[r]=4;
}else{
i--;
}
}
}
/**
* 创建玩家地图
* @return
*/
public String getPamrky(int indexA,int indexB,int index){
String str = "";
if (indexA == index && indexB == index) {
str = "X";
} else if (indexA == index) {
str = "A"; // 玩家A
} else if (indexB== index) {
str = "B";
} else {
switch (amp[index]) {
case 0:
str = "*";
break;
case 1:
str = "@"; // 地雷
break;
case 2:
str = "#"; // 时空隧道
break;
case 3:
str = "&"; // 幸运大轮盘
break;
case 4:
str = "$"; // 暂停
break;
}
}
return str;
}
}
}
}
/***
*
*创建游戏开始
/
public class BeGin {
int index1,index2;
Scanner sc=new Scanner(System.in);
Random ran=new Random();
boolean isb1=false,isb2=false; //代表不暂停
int turns;//轮流操作
Test t=new Test();
public static void main(String[] args) {
int index1,index2;
Scanner sc=new Scanner(System.in);
Random ran=new Random();
boolean isb1=false,isb2=false; //代表不暂停
int turns;//轮流操作
Test t=new Test();
public static void main(String[] args) {
BeGin G=new BeGin();
G.show();
G.show();
}
/**
* 游戏开始
*/
public void show(){
t.into();
t.showMap(index1, index2);
System.out.println("请选择是A、B两个玩家谁先开始游戏?1.A先开始游戏; 2.B先开始游戏");
int input=sc.nextInt();
if(input==1){
//A玩家开始游戏
turns=0;
}else{
//B玩家开始游戏
turns=1;
}
while(true){
//判断AB谁先到达终点
if(index1==99||index2==99){
if(index1==99){
System.out.println("A胜利");
break;
}
if(index2==99){
System.out.println("B胜利");
break;
}
}
//进行两个玩家的轮流操作
if(turns%2==0){
wA();
turns++;
}else{
WB();
turns++;
}
}
}
//第一个玩家
public void wA(){
if(isb1==true){
isb1=false;
}else{
System.out.println("请A玩家任意键开始游戏,请开始掷骰子");
sc.next();
int ranNum=ran.nextInt(6)+1;
System.out.println("玩家A的骰子数为"+ranNum);
index1+=ranNum;
//判断玩家的位置
if(index1>=99){
index1=99;
}
if(index1<=1){
index1=1;
}
//判断地图陷阱
switch (t.amp[index1]) {
case 1:
System.out.println("对不起, 你踩中了地雷");
index1-=4;
break;
/**
* 游戏开始
*/
public void show(){
t.into();
t.showMap(index1, index2);
System.out.println("请选择是A、B两个玩家谁先开始游戏?1.A先开始游戏; 2.B先开始游戏");
int input=sc.nextInt();
if(input==1){
//A玩家开始游戏
turns=0;
}else{
//B玩家开始游戏
turns=1;
}
while(true){
//判断AB谁先到达终点
if(index1==99||index2==99){
if(index1==99){
System.out.println("A胜利");
break;
}
if(index2==99){
System.out.println("B胜利");
break;
}
}
//进行两个玩家的轮流操作
if(turns%2==0){
wA();
turns++;
}else{
WB();
turns++;
}
}
}
//第一个玩家
public void wA(){
if(isb1==true){
isb1=false;
}else{
System.out.println("请A玩家任意键开始游戏,请开始掷骰子");
sc.next();
int ranNum=ran.nextInt(6)+1;
System.out.println("玩家A的骰子数为"+ranNum);
index1+=ranNum;
//判断玩家的位置
if(index1>=99){
index1=99;
}
if(index1<=1){
index1=1;
}
//判断地图陷阱
switch (t.amp[index1]) {
case 1:
System.out.println("对不起, 你踩中了地雷");
index1-=4;
break;
case 2:
System.out.println("欢迎进入时空隧道");
index1+=4;
break;
case 3:
System.out.println("欢迎来到幸运大轮盘,请选择:1.对方后退四步 2.自己前进4步");
int xuanzhe=sc.nextInt();
if(xuanzhe==1){
index2-=4;
}else if(xuanzhe==2){
index1+=4;
}
break;
case 4:
System.out.println("暂停一回合");
isb1=true;
break;
}
t.showMap(index1,index2);
}
}
//第二个玩家
public void WB(){
if(isb2==true){
isb2=false;
}else{
System.out.println("请B玩家先进行游戏,请开始掷骰子");
sc.next();
int rannumB=ran.nextInt(6)+1;
index2+=rannumB;
if(index2>=99){
index2=99;
}
if(index2<=1){
index2=1;
}
switch (index2) {
case 1:
System.out.println("对不起, 你踩中了地雷");
index2-=4;
break;
System.out.println("欢迎进入时空隧道");
index1+=4;
break;
case 3:
System.out.println("欢迎来到幸运大轮盘,请选择:1.对方后退四步 2.自己前进4步");
int xuanzhe=sc.nextInt();
if(xuanzhe==1){
index2-=4;
}else if(xuanzhe==2){
index1+=4;
}
break;
case 4:
System.out.println("暂停一回合");
isb1=true;
break;
}
t.showMap(index1,index2);
}
}
//第二个玩家
public void WB(){
if(isb2==true){
isb2=false;
}else{
System.out.println("请B玩家先进行游戏,请开始掷骰子");
sc.next();
int rannumB=ran.nextInt(6)+1;
index2+=rannumB;
if(index2>=99){
index2=99;
}
if(index2<=1){
index2=1;
}
switch (index2) {
case 1:
System.out.println("对不起, 你踩中了地雷");
index2-=4;
break;
case 2:
System.out.println("欢迎进入时空隧道");
index2+=4;
break;
case 3:
System.out.println("欢迎来到幸运大轮盘,请选择:1.对方后退四步 2.自己前进4步");
int xuanB=sc.nextInt();
if(xuanB==1){
index2+=4;
}else if(xuanB==2){
index1-=4;
}
break;
case 4:
System.out.println("暂停一回合");
isb2=true;
break;
}
t.showMap(index1,index2);
}
}
System.out.println("欢迎进入时空隧道");
index2+=4;
break;
case 3:
System.out.println("欢迎来到幸运大轮盘,请选择:1.对方后退四步 2.自己前进4步");
int xuanB=sc.nextInt();
if(xuanB==1){
index2+=4;
}else if(xuanB==2){
index1-=4;
}
break;
case 4:
System.out.println("暂停一回合");
isb2=true;
break;
}
t.showMap(index1,index2);
}
}
}