上午在csdn看到一关于贪吃蛇的代码,下载下来看了一番,网址
http://download.csdn.net/detail/ldj12321/4656917
暑假有段时间很是无聊,也想琢磨一下贪吃蛇的实现来着,考虑了一个上午就不了了之。当时的难点主要是在如何利用键盘来控制输入的小蛇的移动方向,当时的思路是把数据放在一个数组里边,供程序读取。想了一段时间,找不到合适的方式来实现。今天看了以下代码,的确学习到了。
首先是windows头文件提供了_kbhit()函数来确定是否有键盘输入,有键盘输入函数返回1,否则返回0。其次是光标在控制台的移动,以前在群里听到过TD下用gotoxy()函数实现。看今天的代码是利用在vc环境里的setConsoleCursorPosition()具体代码如下:
void gotoxy(int x, int y) //定位光标
{
COORD pos;
pos.X = x - 1;
pos.Y = y - 1;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);
}
事实上解决了这两个问题,整个程序的关键技术也就实现了。
接下来详细说一下程程序处理的思路:
1:小蛇的移动。
利用_kbhit()监视键盘,然后标记当前这一步方向。同时判断当前的方向是否可取(越界或者撞到自身)
2:重新绘图。
这个时候要判断是否遇到食物。针对这两种状况对小蛇处理
循环1、2步骤即为完整的流程。
最后再有一个关键的问题,是如何确定小蛇每一步的坐标。
初始坐标,然后在初始坐标基础上加减来实现小蛇每一步坐标的标记。
周末的时候一定要自己独立写出这段代码。go……
分享到:
相关推荐
刚开始学细android开发,对于SDK Samples中的贪吃蛇开源代码进行了分析和注释。发上来大家共享~
Android 贪吃蛇源码分析 ackage com.example.android.snake;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.view.Window;import android.widget...
unity贪吃蛇游戏源码+AI-游戏源码: 1.利用ngui插件对界面进行了仿写 在仿写界面途中发现,贪吃蛇这个游戏在界面适应屏幕分辨率,所以在开发中需要注意界面对屏幕的适应性。通过每个图片的宽高 和uiroot的比值,在...
贪吃蛇源代码,vc++平台开发使用,32位系统
程设课的最后一次作业写的代码。不是大神,只能参考再参考然后改进得到这个简单的版本
一个简单的贪吃蛇小程序,提供源码、素材及解析,值得注意的是,需要修改包名和代码中的图片的位置
这是一个关于C#编写的贪吃蛇游戏,包括里面的算法解析都很全面.
微信小程序-贪吃蛇 功能: 得分计算/蛇长计算/游戏加速/蛇加长 (吃到食物, 蛇加长, 移动速度加快, 游戏结束计算得分/蛇长). 系统在生活中的应用十分广泛,无论是个人还是企业,在日常生活中都需要系统,不仅可以提高...
android 贪吃蛇游戏源代码,和一些分析
知识共享-Android版贪吃蛇源码及分析(雷惊风).
包含项目实现所有详细代码,资源图片,下载即可运行,并且有详细注释!
简洁版班的贪吃蛇代码分析,希望能有用到的!
Qt C++制作贪吃蛇游戏,细节问题,自己可以去调试。贪吃蛇的难点,就是蛇的移动,与绘制蛇身蛇尾。源代码中有详细的注释,适合新手学习
在正点原子F407开发板上写的贪吃蛇程序,通过按键控制
实现分析,类的介绍,方法的实现,面向对象
C++贪吃蛇游戏源码 @或直接从这里寻找@ http://download.csdn.net/user/cleopard/album @更多@ http://cleopard.download.csdn.net/ 福利 http://xuemeilaile.com 17份软件测试文档 ...10个C#Socket编程代码示例 ...
此代码对传智播客的贪吃蛇视频和代码做了分析和解释,可以更好的理解!
*要点分析: *1)主要部分已经集成为一个对象SnakeModel,利用键盘控制实现操作。 *文件名:SnakeModel.java *作者:C.Jason *要点分析: *1)数据结构:matrix[][]用来存储地图上面的信息,如果什么也没有设置为...
java 贪吃蛇 程序代码如题~~~~~~~~~~~~~~~~~~~~~~~~~~···
采用python进行游戏编写,可以用idle进行打开运行,知识简单的页面刷新