文章目录
前言
昨天刚刚完结了C#的基础知识,想着手使用基础的判断语句、循环语句、分支语句、输入输出语句等等来完成一个小Demo,用项目促进学习,差缺补漏。
项目结构流程图
首先要清楚项目的整体实现流程,跟着项目流程图走有助于思路上更加清晰。
项目实现
一、游戏开始界面
在编写游戏的开始界环节中,值得积累的知识点是控制台字体的背景颜色和字体颜色修改
利用枚举类 ConsoleColor来调取已经存储在其中的颜色字段。
同时使用: Console.ResetColor();来控制颜色的修改
在利用Console类调用BackgroundColor来修改控制台中字体的背景颜色
在利用Console类调用ForegroundColor来修改控制台中字体文本的颜色
public static void GameShow()
#region 画游戏头
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("*****************************");
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("*****************************");
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine("*******飞行棋游戏模拟********");
Console.ForegroundColor = ConsoleColor.Cyan;
Console.WriteLine("*****************************");
Console.ForegroundColor = ConsoleColor.Magenta;
Console.WriteLine("*****************************");
}
#endregion
二、初始化游戏地图
初始化游戏地图的目的主要是考虑到一些固定的位置要放置一些固定的关卡。
这个环节就没有什么值得注意的点了,常规的数组的操作,假如想玩得花一点,可以考虑用随机数来表示关卡的位置。
public static void InitMap()
#region 初始化游戏地图
{
//1 幸运轮盘
int[] lucky = {
6, 23, 40, 55, 69, 83 };
for(int i = 0; i < lucky.Length; i++)
Maps[lucky[i]] = 1;
//2 地雷
int[] landMine = {
5, 13, 17, 33, 38, 50, 64, 80, 94 };
for (int i = 0; i < landMine.Length; i++)
Maps[landMine[i]] = 2;
//3 暂停
int[] puase = {
9, 27, 60, 93 };
for (int i