小游戏
画地图
初始化地图
画地图
玩游戏
引用文本
游戏规则:
如果玩家A踩到了玩家B 玩家B退6格
踩到了地雷 退6格
踩到了时空隧道 进10格
踩到了幸运轮盘 1–交换位置 2–轰炸对方 是对方退6格
踩到了暂停 暂停一回合
踩到了方块 什么都不干
说明: 幸运转盘:◎ 地雷:☆ 暂停:▲ 时空隧道:卐
玩游戏的代码
//玩游戏
public static void PlayGame(int playerNumber)
{
Random r = new Random();
int rNumber = r.Next(1, 7);
Console.WriteLine("玩家{0}按任意键开始掷骰子", PlayerNames[playerNumber]);
Console.ReadKey(true);
Console.WriteLine("玩家{0}掷出了{1}", PlayerNames[playerNumber],rNumber);
PlayerPos[playerNumber] += rNumber;
Console.ReadKey(true);
Console.WriteLine("{0}按任意键开始行动", PlayerNames[playerNumber]);
Console.ReadKey(true);
Console.WriteLine("{0}行动完了", PlayerNames[playerNumber]);
Console.ReadKey(true);
//玩家A有可能踩到玩家B 方块 幸运转盘 地雷 暂停 时空隧道
if (PlayerPos[playerNumber] == PlayerPos[1-playerNumber])
{
Console.WriteLine("玩家{0}踩到了玩家{1},玩家{2}退6格", PlayerNames[playerNumber], PlayerNames[1-playerNumber], PlayerNames[1-playerNumber]);
PlayerPos[1-playerNumber] -= 6;
Console.ReadKey(true);
}
else //踩到了关卡
{
//玩家的坐标
switch (Maps[PlayerPos[playerNumber]]) //0 1 2 3 4
{
case 0: Console.WriteLine("玩家{0}踩到了方块,安全。", PlayerNames[playerNumber]);
Console.ReadKey(true);
break;
case 1: Console.WriteLine("玩家{0}踩到了幸运轮盘,请选择 1--交换位置 2--轰炸对方,使其{1}退6格", PlayerNames[playerNumber],PlayerNames[1-playerNumber]);
string input = Console.ReadLine();
while (true)
{
if (input == "1")
{
Console.WriteLine("玩家{0}跟玩家{1}交换位置", PlayerNames[playerNumber], PlayerNames[1-playerNumber]);
Console.ReadKey(true);
int temp = PlayerPos[playerNumber];
PlayerPos[playerNumber] = PlayerPos[1-playerNumber];
PlayerPos[1-playerNumber] = temp;
Console.WriteLine("交换完成!!!,按任意键继续!!!");
Console.ReadKey(true);
break;
}
else if (input == "2")
{
Console.WriteLine("玩家{0}选择轰炸玩家{1},玩家{2}退6格", PlayerNames[playerNumber], PlayerNames[1 - playerNumber], PlayerNames[1-playerNumber]);
PlayerPos[1-playerNumber] -= 6;
Console.ReadKey(true);
Console.WriteLine("玩家{0}后退了6格", PlayerNames[1 - playerNumber]);
Console.ReadKey(true);
break;
}
else
{
Console.WriteLine("只能输入1或者2 1--交换位置 2--轰炸对方");
input = Console.ReadLine();
}
}
break;
case 2: Console.WriteLine("玩家{0}踩到了地雷,退6格。", PlayerNames[playerNumber]);
PlayerPos[playerNumber] -= 6;
Console.ReadKey(true);
break;
case 3: Console.WriteLine("玩家{0}踩到了暂停,暂停一回合。", PlayerNames[playerNumber]);
Flags[playerNumber] = true;
Console.ReadKey(true);
break;
case 4: Console.WriteLine("玩家{0}踩到了时空隧道,前进10格。", PlayerNames[playerNumber]);
PlayerPos[playerNumber] += 10;
Console.ReadKey(true);
break;
}//switch
}//else
ChangePos();
Console.Clear();
DrawMap();
}
列表
- 1
- 2
- 3
- 2
- Console.Clear();//清屏
- 计划任务
- 完成任务
一个表格
一个简单的表格是这么创建的:
方法名 | 功能 |
---|---|
GameShow() | 画游戏头 |
InitailMap() | 初始化地图(加载地图所需要的资源) |
DrawMap() | 画地图 |
PlayGame() | 玩游戏 |
方法名 | 功能 |
---|---|
DrawStringMap() | 画地图的方法中抽象出来的一个方法 |
ChangePos() | 坐标改变的时候调用 |
Win() | 胜利 |
来源:CSDN
作者:文柒卐
链接:https://blog.csdn.net/weixin_40391551/article/details/104215059