---------------------- Windows Phone 7手机开发、Net培训、期待与您交流! ----------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 骑士飞行棋
{
class Program
{
//存储游戏地图各关卡
//0:表示普通
//1:表示幸运轮盘◎
//2:地雷☆
//3:暂停▲
//4:时空隧道卐
static int[] Map = new int[100];
static int[] playerPos = { 0, 0 };//playerPos[0]存玩家A下标,playerPos[1]存玩家B下标
//保存用户姓名name[0]保存玩家A姓名
static string[] name = new string[2];
//是否走到暂停位置,如果是则设为true
static bool[] isStop = { false, false };
static string msg ;
static void Main(string[] args)
{
//显示界面
ShowUI();
Console.WriteLine("请输入玩家A的姓名?");
name[0] = Console.ReadLine();
//判断用户输入是否为空,为空重新输入
while (string.IsNullOrEmpty(name[0]))
{
Console.WriteLine("玩家A的姓名不能为空,请重新输入!");
name[0] = Console.ReadLine().Trim();
}
Console.WriteLine("请输入玩家B的姓名?");
name[1] = Console.ReadLine();
while (string.IsNullOrEmpty(name[1]) || name[1] == name[0])
{
if (string.IsNullOrEmpty(name[1]))
{
Console.WriteLine("玩家B的姓名不能为空,请重新输入!");
}
if (name[1] == name[0])
{
Console.WriteLine("该姓名已被A占用!请重新输入");
}
name[1] = Console.ReadLine().Trim();
}
Console.Clear();
ShowUI();
Console.WriteLine("对战开始.....");
Console.WriteLine("{0}用A表示", name[0]);
Console.WriteLine("{0}用B表示", name[1]);
Console.WriteLine("如果AB在同一位置,用<>来表示");
InitialMap();
DropMap();
Console.WriteLine("开始游戏...");
//A和B轮流掷骰子当玩家A或B坐标>=99时,结束循环
while (playerPos[0] < 99 && playerPos[1] < 99)
{
if (isStop[0] == false)
{
Action(0);
}
else
{
isStop[0] = false;
}
if (playerPos[0] >= 99)
{
break;
}
if (isStop[1] == false)
{