/**
* @(#)Fgame.java
* 飞行棋
*
* @author
* @version 1.00 2009/12/22
*/
import java.util.Scanner;
public class Fgame {
static String [] map=new String[115];
static int [] rae={11,21,29,44,61,70,82,100,113};
static int [] star={4,37,53,77,90};
static int locationb=0;
static int locationa=0;
static int m;
public static void main (String[] args)
{
drawmap();//初始化地图
do
{
locationa+=yaoSai();//玩家■摇色
System.out.println("\n■掷出的点数是:"+m);
rule(1);//玩家■执行规则
drawmap();//玩家■摇色后画地图
locationb+=yaoSai();//玩家〓摇色
System.out.println("\n〓掷出的点数是:"+m);
rule(2);//玩家〓执行规则
drawmap();//玩家〓摇色后画地图
}while(locationa<115&&locationb<115);
if(locationa>=115)
System.out.print ("\n玩家■赢了!!");
else if(locationb>=115)
System.out.println ("\no(≧v≦)o~~好棒!!玩家〓赢了!!");
}
/**
*
*画地图
*/
public static void drawmap()
{
for (int i = 0; i<115; i++)
{
map[i]="::";
if(locationa==locationb&&locationa==0&&i==0)
map[i]="●●";
else{
for (int j = 0;j<115; j++)
{
if(i==locationb)
map[i]="〓";
}
for (int j = 0; j<115; j++)
{
if(i==locationa)
map[i]="■";
}
for (int j = 0; j<9; j++)
{
if(i==rae[j])
map[i]="雷";
}
for (int j = 0; j<5; j++)
{
if(i==star[j])
map[i]="※";
}
}
}
//画地图
//第一行
for (int i = 0; i<30; i++)
{
System.out.print (map[i]);
}
//第二到第五行
System.out.println();
for (int i =30; i<=33; i++)
{
for (int j = 1; j<=29; j++)
{
System.out.print (" ");
}
System.out.print (map[i]);
System.out.println ();
}
//第六行
for (int i = 81; i<=100;i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 34; i<=34; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第七行
for (int i = 80; i<81; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 101; i<102; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 35; i<36; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第八行
for (int i = 79; i<80; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 102; i<103; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 36; i<37; i++)
{
System.out.print(map[i]);
}
System.out.println ();
//第九行
for (int i = 78; i<79; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 103; i<104; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 37; i<38; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十行
for (int i = 77; i<78; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 104; i<105; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 38; i<39; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十一行
for (int i = 76; i<77; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=7; j++)
{
System.out.print (" ");
}
System.out.print ("终点");
for (int i = 114; i>=105; i--)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 39; i<40; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十二行
for (int i = 75; i<76; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<29; j++)
{
System.out.print (" ");
}
for (int i =40; i<41; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十三行
for (int i = 74; i<75; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<29; j++)
{
System.out.print (" ");
}
for (int i =41; i<42; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十四行
for (int i = 73; i<74; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<29; j++)
{
System.out.print (" ");
}
for (int i =42; i<43; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十五行
for (int i = 72; i>=43; i--)
{
System.out.print (map[i]);
}
System.out.println ();
}
/**玩家摇点
*
*/
public static int yaoSai ()
{
System.out.print("\n请掷色子(输入任意丢出色子):");
Scanner input=new Scanner(System.in);
String s=input.next();
double n=Math.random();
m=(int)(n*6+1);
return m;
}
/**
*规则
*
*/
public static void rule(int gamer)
{
if(gamer==1)
{
if(locationa==locationb && locationa>0 )
{
System.out.println("\n■踩到〓啦!O(∩_∩)O哈哈~...〓回到原点");
locationb=0;
}
for (int j = 0; j<9; j++)
{
if(locationa==rae[j])
{
System.out.println("\no(>﹏<)o不要啊...\n■踩到雷啦!■退后10步");
locationa-=10;
}
}
for (int j = 0; j<5; j++)
{
if(locationa==star[j])
{
System.out.println("\n(*^__^*) 嘻嘻……\n■踩到幸运星啦!■前进10步");
locationa+=10;
}
}
}
if(gamer==2)
{
if(locationa==locationb&&locationa>0)
{
System.out.println("\n〓踩到■啦!O(∩_∩)O哈哈~...■回到原点!");
locationa=0;
}
for (int j = 0; j<9; j++)
{
if(locationb==rae[j])
{
System.out.println("\no(>﹏<)o不要啊...\n〓踩到雷啦!〓退后10步");
locationb-=10;
}
}
for (int j = 0; j<5; j++)
{
if(locationb==star[j])
{
System.out.println("\n(*^__^*) 嘻嘻……\n〓踩到幸运星啦!〓前进10步");
locationb+=10;
}
}
}
}
}
* @(#)Fgame.java
* 飞行棋
*
* @author
* @version 1.00 2009/12/22
*/
import java.util.Scanner;
public class Fgame {
static String [] map=new String[115];
static int [] rae={11,21,29,44,61,70,82,100,113};
static int [] star={4,37,53,77,90};
static int locationb=0;
static int locationa=0;
static int m;
public static void main (String[] args)
{
drawmap();//初始化地图
do
{
locationa+=yaoSai();//玩家■摇色
System.out.println("\n■掷出的点数是:"+m);
rule(1);//玩家■执行规则
drawmap();//玩家■摇色后画地图
locationb+=yaoSai();//玩家〓摇色
System.out.println("\n〓掷出的点数是:"+m);
rule(2);//玩家〓执行规则
drawmap();//玩家〓摇色后画地图
}while(locationa<115&&locationb<115);
if(locationa>=115)
System.out.print ("\n玩家■赢了!!");
else if(locationb>=115)
System.out.println ("\no(≧v≦)o~~好棒!!玩家〓赢了!!");
}
/**
*
*画地图
*/
public static void drawmap()
{
for (int i = 0; i<115; i++)
{
map[i]="::";
if(locationa==locationb&&locationa==0&&i==0)
map[i]="●●";
else{
for (int j = 0;j<115; j++)
{
if(i==locationb)
map[i]="〓";
}
for (int j = 0; j<115; j++)
{
if(i==locationa)
map[i]="■";
}
for (int j = 0; j<9; j++)
{
if(i==rae[j])
map[i]="雷";
}
for (int j = 0; j<5; j++)
{
if(i==star[j])
map[i]="※";
}
}
}
//画地图
//第一行
for (int i = 0; i<30; i++)
{
System.out.print (map[i]);
}
//第二到第五行
System.out.println();
for (int i =30; i<=33; i++)
{
for (int j = 1; j<=29; j++)
{
System.out.print (" ");
}
System.out.print (map[i]);
System.out.println ();
}
//第六行
for (int i = 81; i<=100;i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 34; i<=34; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第七行
for (int i = 80; i<81; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 101; i<102; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 35; i<36; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第八行
for (int i = 79; i<80; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 102; i<103; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 36; i<37; i++)
{
System.out.print(map[i]);
}
System.out.println ();
//第九行
for (int i = 78; i<79; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 103; i<104; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 37; i<38; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十行
for (int i = 77; i<78; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=18; j++)
{
System.out.print (" ");
}
for (int i = 104; i<105; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 38; i<39; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十一行
for (int i = 76; i<77; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<=7; j++)
{
System.out.print (" ");
}
System.out.print ("终点");
for (int i = 114; i>=105; i--)
{
System.out.print (map[i]);
}
for (int j = 1; j<=9; j++)
{
System.out.print (" ");
}
for (int i = 39; i<40; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十二行
for (int i = 75; i<76; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<29; j++)
{
System.out.print (" ");
}
for (int i =40; i<41; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十三行
for (int i = 74; i<75; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<29; j++)
{
System.out.print (" ");
}
for (int i =41; i<42; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十四行
for (int i = 73; i<74; i++)
{
System.out.print (map[i]);
}
for (int j = 1; j<29; j++)
{
System.out.print (" ");
}
for (int i =42; i<43; i++)
{
System.out.print (map[i]);
}
System.out.println ();
//第十五行
for (int i = 72; i>=43; i--)
{
System.out.print (map[i]);
}
System.out.println ();
}
/**玩家摇点
*
*/
public static int yaoSai ()
{
System.out.print("\n请掷色子(输入任意丢出色子):");
Scanner input=new Scanner(System.in);
String s=input.next();
double n=Math.random();
m=(int)(n*6+1);
return m;
}
/**
*规则
*
*/
public static void rule(int gamer)
{
if(gamer==1)
{
if(locationa==locationb && locationa>0 )
{
System.out.println("\n■踩到〓啦!O(∩_∩)O哈哈~...〓回到原点");
locationb=0;
}
for (int j = 0; j<9; j++)
{
if(locationa==rae[j])
{
System.out.println("\no(>﹏<)o不要啊...\n■踩到雷啦!■退后10步");
locationa-=10;
}
}
for (int j = 0; j<5; j++)
{
if(locationa==star[j])
{
System.out.println("\n(*^__^*) 嘻嘻……\n■踩到幸运星啦!■前进10步");
locationa+=10;
}
}
}
if(gamer==2)
{
if(locationa==locationb&&locationa>0)
{
System.out.println("\n〓踩到■啦!O(∩_∩)O哈哈~...■回到原点!");
locationa=0;
}
for (int j = 0; j<9; j++)
{
if(locationb==rae[j])
{
System.out.println("\no(>﹏<)o不要啊...\n〓踩到雷啦!〓退后10步");
locationb-=10;
}
}
for (int j = 0; j<5; j++)
{
if(locationb==star[j])
{
System.out.println("\n(*^__^*) 嘻嘻……\n〓踩到幸运星啦!〓前进10步");
locationb+=10;
}
}
}
}
}