---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------
主要运用面向过程,方法参数等
做界面:
把界面等重复用的代码写成一个方法。注意用static标注,不然在main方法中不能使用。
在main函数中用showUI();调用
分别定义名为name的字符串数组来存放玩家的姓名,name[0]代表玩家1的姓名,name[1]代表玩家2的姓名。(玩家下标也用数组存储)
注意玩家的姓名不能为空,玩家1和2的名字不能相同,这里可以用trim()方法来去掉空格。
输入完姓名之后清屏之后再画出地图
使用console.clear()来清屏
清完屏后再画一遍showUI();
画地图:
开辟一个int类型数组来存放地图
初始化地图,0代表正常,其他的分别定义
Foreach(string s in Map)
s=” ■”
把添加各种关卡封装成一个方法,InitiaLMap();
地图赋值:Map[luckyturn[i]]=1
DrowMap:
For(int i=0;i<30;i++)
{
If(playPos[0]==i&&playpos[1]==i)
{
Console.writeLine(“(在一起的标记)”);
}
Else if(playPos[0]==i)
{
Console.write(“A”);
}
Else if(playPos[1]==i)
{
Console.write(“B”);
}
Else
{
Switch(Map[i])
{
Case 0:………..
…………
}
}
}
注意画第一列空格要用全角
用#region和#endregion可以设一个标签,用来折叠代码
Console.ForeGroundColor=consoleColor.Red;(前景色的设置)
Console.resetcolor(还原颜色)
掷骰子:
用whlie语句循环判断玩家位置是否小于99来进行循环,中间判断位置是否超过99或者小于0,超过99或者小于0记为99和0,超过99中间return返回。
可以把检查是否越界写成一个方法
Console.readkey(true)按下的键不再显示在控制台
随机数:
Random r=new random();
r.next(最小值,最大值) 注意是大于等于最小值,小于最大值
r.next(1,2) 永远是1
掷万骰子后判断玩家位置是否踩到对面,是否踩到地雷等判断
在字符串中使用占位符:
Msg=string.Format(“{0}”,playname[0]);
ConsoleKeyInfo rec=console.readkey();接收readkey的值
Rec.key=consolekey.tab判断用户按了哪个键,ConsoleKeyInfo是一个结构体,key是一个枚举
在飞行棋中判断暂停一回合:
设置一个标志位,bool[] isStop={true,true}
If(siStop=false)
{掷骰子
}
else
{
isStop=false;
}
把掷骰子写成方法:
判断对方用[1-i]来判断
---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------