C#贪吃蛇

C#贪吃蛇_第1张图片  C#贪吃蛇_第2张图片

因为要得找工作了,不得不写些文章让HR更多的了解到我,同时能帮到别的同学也是好的。因为接触Unity时间不是特别久,所以这里先帖出早期开发的C#游戏,然后再帖Unity游戏。

另外提醒,我的所有作品都是自己开发的,绝无抄袭(程序代码和编程思想绝没超抄过别人的),最多也就是高仿别人的游戏(贪吃蛇算吗?俄罗斯方块算吗?炸弹超人算吗?五子棋算吗?)。

转载请标明出处!!


上图是游戏运行截图,很简单仅一个界面,C#,VS2012。我的第一个C#游戏,500行左右自编辑代码。

游戏说明:

1.当时一起实验室的三个同学一宿没睡,接力开发了个MFC版的贪吃蛇,第二天早晨出结果了。我不服啊,上午11:00开始,没休息,晚上8-9点我写完了。这是我的处女游戏作品,没经验走了太多弯路。从这时候开始我正式踏上了游戏开发之旅。。很简短的一个小程序,对以后的开发做出了很大的基奠作用

2.游戏仅开始/暂停、重新开始两个按钮,可以选择匀速模式和变速模式。

3.匀速模式时有个Textbox数值输入框,表示蛇每次移动的间隔,匀速模式会随着蛇长度的增加而减少移动间隔时间。

4.小清新、屌丝、辣妈  表示是格子的个数20*20,25*25,30*30也就是不同的难度,而且切换时还有点算是小动画吧(主体功能实现后无聊了加上的)


好吧,最下面还有我的署名,暴露就暴露了吧,时间紧急找工作要紧。。


来讲一下游戏开发的思想:

1.灰色方格矩阵是蛇可移动的范围,一个二维数组即可搞定,注意横纵下标不要闹混

2.蛇的表示,链表比较好,我用的LinkedList,其中的结点是两个int变量表示x和y,应该用Point更直观,貌似因为当时水平的限制还是咋的,后来放弃了。注意还要有两个变量来表示蛇头坐标和蛇尾坐标,每移动一下,蛇移动方向的下一个格子变为红色,同时标记成新的蛇头,原来的蛇尾结点扔掉,并把那个格子显示成灰色。其他蛇身用绿色标记。

3.蛇的移动方向,一个枚举搞定,每次按下一个方向键时,蛇的移动方向立马发生相应的改变,等Timer(控制蛇的移动间隔)时间到了,就检查是4个方向中的哪一个,然后蛇头蛇尾该变红的就变红,该变灰的就变灰。

4.食物的表示,一个Random即可,注意每次生成时要先检查所生成的点是否与蛇身体重叠,若是则需重新生成。每次移动后要检查蛇头坐标是否与食物坐标重叠,如果重叠了,蛇长度加1,。



难点:

1.蛇的移动感觉比较麻烦,难也不是很难,想明白了就好。基本一个方向的写好后就是复制三分,修改相应地方的代码,然后你会发现,哎哟,有点小瑕疵必须加几行代码,然后把加的几行再复制3份再改,然后又发现有瑕疵。。。往复几次就差不多了。。

2.蛇每次移动都要检查有没有装到墙(检查数组下标是否在合理范围内),检查有没有装到自己(用头坐标检查身体每一个节点的坐标看有没相同的),检查吃到食物了么(这个容易,一个坐标的检查)



附下载地址:http://download.csdn.net/detail/q594076608/8041375

你可能感兴趣的:(C#游戏)