C#实现控制台飞行棋小游戏_第1页
C#实现控制台飞行棋小游戏_第2页
C#实现控制台飞行棋小游戏_第3页
C#实现控制台飞行棋小游戏_第4页
C#实现控制台飞行棋小游戏_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第C#实现控制台飞行棋小游戏本文实例为大家分享了C#实现控制台飞行棋小游戏的具体代码,供大家参考,具体内容如下

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Text;

usingSystem.Text.RegularExpressions;

usingSystem.Threading.Tasks;

namespace飞行棋小游戏

classProgram

///summary

///地图

////summary

staticint[]Maps=newint[100];

///summary

///用户姓名

////summary

staticstring[]playerName=newstring[2];

///summary

///两名玩家的位置

////summary

staticint[]playerPosition=newint[2];

///summary

///标记两个玩家谁该进行投掷筛子

////summary

staticbool[]playerFlag=newbool[2];

staticvoidMain(string[]args)

//游戏标题

ShowTitle();

#region///用户名注册

Console.WriteLine("请两名玩家先进行用户注册!");

Console.WriteLine("注册规则:不能为空,并且不能是纯数字,玩家AB姓名不能相同");

Console.WriteLine("请输入玩家A的姓名:");

stringpattern=@"^\d+$";

boolisok=true;

while(isok)

playerName[0]=Console.ReadLine();

if(string.IsNullOrWhiteSpace(playerName[0]))

Console.WriteLine("玩家A的姓名不能为空,请重新输入");

elseif(Regex.IsMatch(playerName[0],pattern))

Console.WriteLine("玩家A的姓名不能是纯数字,请重新输入");

else

isok=false;

isok=true;

Console.WriteLine("请输入玩家B的姓名:");

while(isok)

playerName[1]=Console.ReadLine();

if(string.IsNullOrWhiteSpace(playerName[1]))

Console.WriteLine("玩家B的姓名不能为空,请重新输入");

elseif(Regex.IsMatch(playerName[1],pattern))

Console.WriteLine("玩家B的姓名不能是纯数字,请重新输入");

elseif(playerName[0]==playerName[1])

Console.WriteLine("玩家B的姓名已被占用,请重新输入");

else

isok=false;

#endregion

Console.Clear();

ShowTitle();

ShowRule();

InitialMap();

DrawMap();

//开始进入游戏

//判断两名玩家都未到达终点则游戏继续

while(playerPosition[0]99playerPosition[1]99)

if(playerFlag[0]==false)

PlayGame(0);

else

playerFlag[0]=false;

if(playerFlag[1]==false)

PlayGame(1);

else

playerFlag[1]=false;

if(playerPosition[0]=99)

Console.WriteLine("恭喜玩家使用A表示",playerName[0]);

Console.WriteLine("玩家按下任意键掷骰子!",playerName[playerIndex]);

Console.ReadKey(true);

intnumber=r.Next(1,7);

Console.WriteLine("玩家选择与玩家踩到地雷,退6格!按下任意键刷新界面",playerName[playerIndex]);

playerPosition[playerIndex]-=6;

Console.ReadKey(true);

break;

//踩到暂停

case3:

Console.WriteLine("玩家【{0}】踩到暂停,下一回合暂停!按下任意键刷新界面",playerName[playerIndex]);

playerFlag[playerIndex]=true;

break;

//踩到时空隧道

case4:

Console.WriteLine("玩家【{0}】踩到时空隧道,前进10步!按下任意键刷新界面",playerName[playerIndex]);

playerPosition[playerIndex]+=10;

Console.ReadKey(true);

break;

default:

break;

CheckPosition();

Console.Clear();

ShowTitle();

ShowRule();

InitialMap();

DrawMap();

#endregion

///summary

///断是否超越终点或者超出起点

////summary

staticvoidCheckPosition()

if(playerPosition[0]0)

playerPosition[0]=0;

if(playerPosition[0]99)

playerPosition[0]=99;

i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论