`
hgjn
  • 浏览: 1076 次
  • 性别: Icon_minigender_1
  • 来自: 成都
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

简单的“贪吃蛇”

阅读更多
    近日无事,看见很多地方有人在询问贪吃蛇程序的做法,刚好我前段时间在公司做手持终端应用开发时,利用一个午休时间自己也写了个贪吃蛇程序玩玩,效果和手机、游戏机上一样,但是程序是在公司电脑上,由于信息安全,是拷不出来的,这里就给大家讲讲如何写贪吃蛇程序吧。
    其实贪吃蛇游戏程序是很简单的,只要大家坐下来细心地想想,一下子就能完成。
程序是运动的,则必然用到了定时器功能,下一个时间点接着上一个时间点,形成了动态,而定时器的时间间隔则是程序运动的速度了,可通过它改变程序难易程度。
    首先,将屏幕理解为xoy平面,向右向上分别为x、y的正向,定义一个point类型,既可表示方向,也可表示坐标,定义(0,1)(0,-1)(-1,0)(1,0)分别为上下左右方向。用一个方向全局变量表示蛇头的方向,根据按上下左右键对它赋值。用一个位置全局变量作为虫子的位置,每次吃到后再随机产生。
    其次,定义一个位置数组,长度为最大蛇长,记录蛇的位置信息(蛇是由相连的节点组成),蛇的运动可以在数组上这样反映:下一时刻,数组除首节点(蛇头)外所有节点赋值为它前一个节点的值,即将数组第一个元素赋给第二个元素,第二个赋给第三个,...,而蛇头则根据当前的方向来判断,直接加上方向数据即可。这样一来,在定时器的作用下就形成了蛇的移动。这里要用一个变量表示蛇的长度,只显示长度范围内的数组节点的坐标。
   再次,是一个判断成功失败函数,即,1.判断蛇头坐标是否与四周墙壁相碰,相碰则失败;2.判断蛇头是否与目标点(虫子)相碰,相碰则成功,蛇长度加1,再在屏幕随机显示一个虫子(点),即赋随机值给虫子变量;3.判断蛇头坐标是否与蛇的各坐标相碰,相碰则失败(蛇不能咬到自己);4.蛇的长度是否已达最大值,最大则成功。否则,返回标志继续游戏。并且这里可根据当前蛇长和最初蛇长计算吃了几个虫子,得到得分情况。
   注意在根据按键改变方向时,如果是同一线上的方向改变是不成功的,只对垂直方向上的改变才成功,即当蛇头在x方向运动时(y=0),按左右键是不改变方向的,只对上下键改。       有了这些,就只需在每个定时器启动时刷屏、显示蛇和虫子、判断执行成功失败即可。
   简单吧!!!
分享到:
评论
1 楼 化蝶自在飞 2010-04-10  
这样的思路分析很受益.顶顶.

相关推荐

    appinventor超简易贪吃蛇源码.rar

    这个是在appinventor 官方广州服务器制作的简易贪吃蛇,只用了球形精灵和画布为主要插件,等待完善,这个包括apk应用和aia源码,适用于各位下载学习,请谨慎下载。 游戏说明:蓝色是食物,黑色和红色是蛇,白色是...

    简易贪吃蛇

    【简易贪吃蛇】是一款基于Android平台开发的经典游戏,它以简单的编程逻辑和直观的游戏界面重现了经典的贪吃蛇玩法。在这个项目中,开发者通过Java语言实现了游戏的主要功能,包括蛇的移动、食物生成、碰撞检测以及...

    VB做的简易贪吃蛇1

    【VB做的简易贪吃蛇1】是一个初学者利用Visual Basic(VB)开发的简单游戏项目。这个项目可能在视觉效果和代码效率上存在不足,但作为学习成果,它展现了VB编程的基本概念和游戏开发的基本流程。 1. **Visual Basic...

    QT 编写简单贪吃蛇

    QT 编写简单贪吃蛇是一款使用QT框架开发的经典游戏,特别适合初学者入门学习。QT是一个跨平台的C++图形用户界面应用程序开发框架,它提供了丰富的API和工具,使得开发者能够快速构建美观且功能丰富的应用程序,包括...

    基于qt编写的简易贪吃蛇

    总结来说,"基于qt编写的简易贪吃蛇"是一个利用Qt的跨平台特性和丰富的图形库,实现的经典游戏项目。通过这个项目,开发者可以深入学习Qt的窗口、绘图、事件处理以及多平台开发等方面的知识,同时也能体验到游戏开发...

    易语言源码简易贪吃蛇游戏源码.rar

    本资源"易语言源码简易贪吃蛇游戏源码.rar"是一个使用易语言编写的简单贪吃蛇游戏的源代码。通过分析这个源码,我们可以学习到易语言在游戏开发中的基本应用,以及如何实现一个经典的小游戏。 贪吃蛇游戏是一个常见...

    C#简易贪吃蛇

    在"C#简易贪吃蛇"这个项目中,开发者创建了一个简单的贪吃蛇游戏,虽然没有复杂的加速、减速机制和障碍物,但依然能提供基本的游戏体验。 【C#语言基础】 C#是由微软开发的一种面向对象的编程语言,广泛应用于...

    易语言简易贪吃蛇游戏

    本文将深入探讨“易语言简易贪吃蛇游戏”中的关键知识点,包括游戏逻辑、源码结构、食物生成、蛇的初始化以及碰撞检测。 首先,我们要了解贪吃蛇游戏的基本原理。游戏的核心是一个二维网格,蛇在这个网格中移动,...

    Java编的一个简单贪吃蛇

    【Java编的一个简单贪吃蛇】是一个基于JavaSE平台实现的经典小游戏,主要使用了Java的基础语法、面向对象编程思想以及Swing图形用户界面库来构建。这个项目旨在提供一个简单的贪吃蛇游戏体验,虽然它可能没有包含...

    JavaScript简易贪吃蛇

    JavaScript简易贪吃蛇是一款利用面向对象编程思想开发的基于网页的简单游戏。在这个游戏中,玩家通过控制一个由多个方块组成的小蛇,目标是吃到屏幕上出现的食物,每次吃掉食物后,小蛇会变长,游戏难度也随之增加。...

    简易贪吃蛇游戏代码.zip

    《简易贪吃蛇游戏代码详解》 贪吃蛇游戏,作为一个经典的编程练习项目,深受初级编程者喜爱。本文将深入解析一款基于JavaScript(JS)和HTML5开发的简易贪吃蛇游戏,同时涵盖CSS3的颜色特效和背景图片的实现,为...

    appinventor超简易贪吃蛇(只含apk).apk

    这个是在appinventor 官方广州服务器制作的简易贪吃蛇,只用了球形精灵和画布为主要插件,等待完善,这个是apk安卓应用,不包括aia源码,适用于各位下载试用,所以不需要积分(如果要积分的话,就是系统修改的了),...

    基于二维数组的简易贪吃蛇游戏c++源码(课程作业).zip

    基于二维数组的简易贪吃蛇游戏c++源码(课程作业).zip基于二维数组的简易贪吃蛇游戏c++源码(课程作业).zip基于二维数组的简易贪吃蛇游戏c++源码(课程作业).zip基于二维数组的简易贪吃蛇游戏c++源码(课程作业).zip基于...

    c#版简易贪吃蛇

    【标题】:“C#版简易贪吃蛇” 贪吃蛇是一款经典的计算机游戏,深受玩家喜爱。在本项目中,我们采用C#编程语言,利用Windows Forms(WinForm)框架开发了一个简易版的贪吃蛇游戏。这个项目对于初学者来说是一个很好...

    易语言源码易语言简易贪吃蛇游戏源码

    ### 易语言简易贪吃蛇游戏源码解析 #### 一、引言 在软件开发领域,游戏开发一直是程序员和编程爱好者热衷的项目之一。其中,“贪吃蛇”作为一款经典的休闲游戏,其简单的规则与趣味性使之成为学习编程的理想入门...

    简易贪吃蛇程序(汇编语言)

    【简易贪吃蛇程序(汇编语言)】 贪吃蛇是一款经典的电子游戏,它源于1976年的“Blockade”游戏,后来在诺基亚手机上流行开来,成为了一代人的回忆。在这个简易的汇编语言实现中,我们将探讨如何使用底层编程技术...

    JAVA版简易贪吃蛇 新手

    一个自己用java实现的贪吃蛇 因为没有美工丑了一点 适合新手 大神就绕道吧 不要喷了 自己配置好java环境双击打开就可以了 要看源代码 解压就可以 新手可以留言加个还有讨论

    c/c++简易贪吃蛇demo.zip

    《C/C++实现简易贪吃蛇游戏》 贪吃蛇是一款经典的计算机游戏,它源于1976年的“Blockade”游戏,后来在各种电子设备上流行开来,包括早期的诺基亚手机。本篇文章将深入探讨如何使用C/C++语言实现一个简易版的贪吃蛇...

    java版本 简单贪吃蛇

    【标题】:“java版本 简单贪吃蛇” 这个项目是基于Java编程语言实现的一个经典游戏——贪吃蛇。贪吃蛇游戏以其简单而趣味性强的特点,深受程序员和游戏爱好者的喜爱,作为编程学习中的一个实践案例,它能够帮助...

Global site tag (gtag.js) - Google Analytics