飞行棋之简单框架---游戏头和初始化地图

简介: 飞行棋之简单框架---游戏头和初始化地图

说起”飞行棋“,一部分人会想到这个游戏怎么怎么样,有哪些特点……但学习到C#视频的伙伴想到的可能是这个开头怎么写,文字的是如何更美观的显示出来的,代码是怎么减少冗余的……而我想到的就是如何入让这个游戏即好玩代码又少!首先这个游戏的基本页面大概是这个样子。


9d6094c9a396c9a880c3eb2e69d2424b_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTMwOTE1NQ==,size_16,color_FFFFFF,t_70.png


两个人首先掷色子得出走的步数,根据图中每个图形代表的含义去走下去,哪位选手先走到最后就是赢家。


那么这个游戏不变的是最上面的花框和里面的文字,我们在这里暂时先称为游戏头。那么这个就相对于比较简单一些,只需要在屏幕上显示出来即可。

Console.WriteLine("****************************************");
            Console.WriteLine("*                                      *");
            Console.WriteLine("*        终极骑士飞行棋20201031        *");
            Console.WriteLine("*                                      *");
            Console.WriteLine("****************************************");

只需要这几行代码就可以很容易的显示出来,如果有自己喜欢的形状,可以根据自己的喜好来书写代码。


完成了游戏头就可以开始地图的设计。我们观察地图很容易发现在地图中有不同的图形,那么怎么把其中夹杂的其他图形也显示出来呢?就需要利用数组的方式来把他们显示出来。我们只需要知道每一个特殊的图形有哪个位置就好。代码如下:


//用0表示普通,显示给用户为□
            //用1表示幸运轮盘,显示给用户为⭕
            //用2表示地雷,显示给用户为☆
            //用3表示暂停,显示给用户为🔺
            //用4表示时空隧道,显示给用户为卐 
            int[] luckyturn = { 6, 23, 40, 55, 69, 83 };//幸运轮盘
            int[] landMine = { 5, 13, 17, 33, 38, 50, 64, 80, 94 };//地雷
            int[] pause = { 9, 27, 60, 93 };//暂停
            int[] timeTunnel = { 20, 25, 45, 63, 72, 88, 90 };//时空隧道
            //把数组中下标为6,23,40,55,69,83的地方的值改为1
            for (int i = 0; i < luckyturn.Length; i++)
            {
                Map[luckyturn[i]] = 1; //把幸运轮盘初始化进去
            }
            for (int i = 0; i < landMine.Length; i++)
            {
                Map[landMine[i]] = 2;
            }
            for (int i = 0; i < pause.Length; i++)
            {
                Map[pause[i]] = 3;
            }
            for (int i = 0; i < timeTunnel.Length; i++)
            {
                Map[timeTunnel[i]] = 4;
            }
        }

这样把每一类的图形给一个特定数字就可以在之后“显示地图的形状”中很简单的利用起来。

以上是最近学习的一部分总结,如有谬误,欢迎斧正!


相关文章
Echarts实战案例代码(19):利用visualMap视觉映射组件制作五色玫瑰工作进程图
Echarts实战案例代码(19):利用visualMap视觉映射组件制作五色玫瑰工作进程图
250 0
|
5月前
|
图形学
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
|
7月前
|
图形学
【用unity实现100个游戏之18】从零开始制作一个类CSGO/CS2、CF第一人称FPS射击游戏——基础篇2(附项目源码)
【用unity实现100个游戏之18】从零开始制作一个类CSGO/CS2、CF第一人称FPS射击游戏——基础篇2(附项目源码)
122 0
|
7月前
|
定位技术 图形学 开发者
【用unity实现100个游戏之18】从零开始制作一个类CSGO/CS2、CF第一人称FPS射击游戏——基础篇1(附项目源码)
【用unity实现100个游戏之18】从零开始制作一个类CSGO/CS2、CF第一人称FPS射击游戏——基础篇1(附项目源码)
129 0
|
7月前
|
图形学
【用unity实现100个游戏之18】从零开始制作一个类CSGO/CS2、CF第一人称FPS射击游戏——基础篇3(附项目源码)
【用unity实现100个游戏之18】从零开始制作一个类CSGO/CS2、CF第一人称FPS射击游戏——基础篇3(附项目源码)
91 0
|
8月前
游戏辅助 -- 实战找人物对象基址
游戏辅助 -- 实战找人物对象基址
70 0
|
8月前
|
定位技术 C# 图形学
Unity和C#游戏编程入门:创建迷宫小球游戏示例
Unity和C#游戏编程入门:创建迷宫小球游戏示例
162 2
|
8月前
|
C# 图形学
【Unity 3D】游戏对象、添加删除获取组件、预制体Prefabs简介
【Unity 3D】游戏对象、添加删除获取组件、预制体Prefabs简介
222 0
|
8月前
|
C# 图形学
【Unity 3D】元宇宙案例之虚拟地球信息射线实战(附源码、演示视频和步骤 超详细)
【Unity 3D】元宇宙案例之虚拟地球信息射线实战(附源码、演示视频和步骤 超详细)
130 0
|
定位技术 API 图形学
unity-2D游戏官方案例--带视频案例(1)(层级渲染,物理碰撞,粒子动画,UI等多位基础一体化)
unity-2D游戏官方案例--带视频案例(1)(层级渲染,物理碰撞,粒子动画,UI等多位基础一体化)
226 1