|
楼主 |
发表于 2009-10-12 18:52:33
|
显示全部楼层
【21楼】 elecfun 熊
那里出现问题弄不出来呢?我可以 给你免费指导一下。
大概过程可以给你讲一下。你可以按着步骤慢慢的写出程序来,我写了3天,每天都像个思考者。因为好多时间都在修正BUG。
我的程序思路:
1、初始化用液晶画出贪吃蛇的活动边框和界面。
2、实现上面功能在,画出条3个点的小蛇,那个蛇是用数组装起来的。
struct
{uchar X[SNAKE_Max_Long];
uchar Y[SNAKE_Max_Long];}
3、开始实现右变行走的程序, 实现方法是 把Snake.X[0],Snake.Y[0]清零就是 把蛇尾给灭了要不蛇怎么跑呢是把,
然后在开始数组 每个元素 替换为前一个 值这样蛇就跑前一个格子了对吧,
4、蛇运动的方向在 步骤3 没结束的时候根据按键的状态,把蛇头移动到相应的位置,那么蛇就能根据按键状态跑了。
5、蛇能跑了,那是漫无天际的跑哦,只要你按键控制它 他就不停的跑咯,那你现在就要给他设定怎么死亡怎么过关
怎么加速等一系列,优美的方案。
6、还有是一个 果子 怎么随机放置,我以前看了论坛有人发了贴用,Keil C51自带的随机数产生函数,不过我发现那个函数
随机性很大,但是每次调用产生的随机数值的顺序都是 一定的晕啊。后来我想就用 定时器的低 4位就好了,果然定时不停的跑
取得值果然很随机,牛B 代码如右: Food.Y=TL1&0X1B; //获得随机数
7、OK了多看看前人牛人的代码,对自己有很大的提高。既然我们都是学生,学习能力还是胜过一切的,因为那能量非常大。
最后
祝: 学习愉快!工作顺利! 贪吃蛇成功编写,水平直线提升。多分享多提高!!!!!
送大家一本书那里也有贪吃蛇的代码,还有好多优秀代码,有LCD菜单,飞机游戏。。。。。同志们多顶一下啊!!!!
点击此处下载 ourdev_490835.pdf(文件大小:5.08M) (原文件名:单片机语言C51应用实战集锦.pdf) |
|