贪吃蛇 c++

    贪吃蛇也算是一个经典的游戏了. 写了一个简单的实现,运行截图如下

 

        这个实现很简单.就是在画布上用不同的颜色画一个个的小矩形.实现很简单,就不贴代码了.只写上最主要的实现思路

    蛇的移动.其实就是把蛇尾用背景色覆盖掉,把蛇头(上下左右)移动倒一个适当的位置.而蛇的身体的其他位置都不变的.假如用一个链表保存蛇的身体的各个部位的位置.那就是删除表尾,改变成适当的座标再加入表头,然后重画蛇体,就完成了蛇的移动了.

    重绘完全没有必要把所有的背景都重绘一遍,只需要绘制表头和表尾所代表的位置就好了..具体就不实现了.

    蛇的生长.假如我们每次移动蛇体之前都保存蛇尾的位置座标.那么当蛇吃到苹果长大的时候,就把增长的位置设置为上次蛇尾的位置.这样就实现了蛇的增长了.

    就这么多.简单吧.


    在写程序的时候先观察要实现的功能的特点.然后想一个好的实现方法.至于写代码就简单多了. 大多时候并不是自己没有能力写一个程序,而是没有足够的耐心考虑好它的实现,就开始动手写代码了,最终往往不得修改了又修改,最终还是失败.然而最简单的那个是最好的实现却往往被手头的已经一堆的代码给排挤忽略掉了,多遗憾啊.


2010-7-6 更新了一下代码:

代码有点小问题,大家看着修改下,应该不难,最近没有时间,就这么贴出来吧.对不住啦.

 

 

发布了39 篇原创文章 · 获赞 6 · 访问量 13万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章