`
andrew28
  • 浏览: 36206 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

贪食蛇算法

阅读更多
前后学了半个月的J2ME,只做过通讯录,聊天室之类的,从没做过画布应用,所以就试着做了个贪食蛇。
WTK里面有个,但是代码有点多,也看不明白。所以只能自己想了。经过一个早上的努力,程序基本出来,现在总结下。

这个游戏主要需要注意4个地方,第一,蛇怎么运动;第二,碰撞检测;第三,长度增加;第四,运动方向。
对于蛇的运动,我的理解是,蛇头前进一步,则蛇身跟着蛇头运动的足迹运动。有点递归的意思,一开始想用递归算法的,但迫于能力,没能实现;所以我用一个二维数组来保存蛇的所有节的坐标,当蛇前进一步时,就用前一节的坐标来更新后一节的坐标,而蛇头的坐标则经过计算得到,这样蛇就可以根据蛇头运动的路径来运动了。

关于碰撞检测,只需接触蛇头的坐标是否超出边界,以及是否与二维数组中除了蛇头之外的任何一个坐标相同就行了。

对于长度增加的问题,我是将其加到蛇头,也就是把二维数组中的数据以此往后移动,在把二维数组的第一个值设成食物的坐标(也就是蛇头)。

运动方向,当所按下的运动方向合法时,则改变蛇头下一步的坐标。
分享到:
评论

相关推荐

    C语言贪食蛇总结(附源代码).doc

    3. **贪食蛇算法** - 游戏中的核心数据结构包括画布(用于存储游戏状态)、蛇(表示蛇的位置)和食物(作为目标)。 - 画布通常是一个二维字符数组,用于存储每个像素的状态。 - 蛇的位置以一维数组表示,每个...

    很好的贪食蛇游戏源码

    贪食蛇游戏是一款经典的计算机游戏,它源自早期的诺基亚手机,后来逐渐发展到各种平台,包括PC和移动设备。在这个项目中,你拥有的是基于ECLIPSE开发环境实现的贪食蛇游戏源码。下面我们将深入探讨这个项目涉及的...

    非label的贪食蛇简单实现算法

    通过重写paint方法直接按像素点绘制的贪食蛇,只做了简单移动功能,因为蛇的身体是一个List,所以吃东西的判定和死亡判定其实相当简单,当时就懒得写了。有兴趣的人去完善吧。 刚刚打算上传时想想还是加一些注释好...

    android 贪食蛇

    除此之外,数据结构和算法也是实现贪食蛇游戏的核心。蛇的身体由一系列坐标点组成,可以使用List或其他集合类来存储。为了判断蛇是否吃到食物,或者是否撞到边界或自身,我们需要运用数组或链表的遍历算法。同时,...

    贪食蛇源代码和程序

    【贪食蛇源代码与程序解析】 贪食蛇是一款经典的电子游戏,它的基本玩法是控制一个不断增长的蛇在有限的区域内移动,吃食物以增长,同时避免撞到自己的身体或边界。在这个主题下,我们将深入探讨其源代码背后的编程...

    A*算法自动贪食蛇

    **A*算法自动贪食蛇** 在计算机科学和游戏编程领域,A*(发音为“A-star”)算法是一种用于寻找图或网格中最短路径的启发式搜索算法。它结合了Dijkstra算法的全局最优性和最佳优先搜索的效率,通过引入一个评估函数...

    andorid 贪食蛇源码

    【Android贪食蛇源码详解】 在Android平台上开发游戏,特别是经典的贪食蛇游戏,是学习和理解Android应用开发及游戏编程的一个极好实践。这个源码提供了在Android设备上实现贪食蛇游戏的完整代码,让我们深入探讨...

    c++贪食蛇源代码源代码

    《C++实现贪食蛇游戏源代码解析》 ...总之,贪食蛇游戏的C++实现涉及到许多关键的编程概念,包括面向对象编程、事件处理、数据结构和算法。通过研究和实践,你可以更好地掌握这些技能,并为将来更复杂的项目奠定基础。

    java源代码贪食蛇游戏

    在本项目中,"java源代码贪食蛇游戏"是一个基于Java编程语言实现的经典小游戏,旨在帮助学习者理解游戏开发的基本原理以及Java编程的核心概念。贪食蛇游戏是一款深受玩家喜爱的简单但有趣的益智游戏,玩家需要控制一...

    Java小游戏_贪食蛇(源码)

    【Java小游戏_贪食蛇(源码)】是一款基于Java编程语言开发的简易版贪食蛇游戏,适合初学者学习和研究。这个项目不仅包含了完整的源代码,而且已经实现了基本的游戏逻辑,玩家可以运行并体验游戏。通过分析和理解这...

    C# 经典小游戏 贪食蛇

    在本文中,我们将深入探讨如何使用C#编程语言来实现一个经典的贪食蛇游戏。C#是一种面向对象的、类型安全的编程语言,由微软公司开发,广泛应用于Windows平台和跨平台开发,如Unity游戏引擎。贪食蛇游戏是许多初学者...

    贪食蛇 java 源代码

    贪食蛇是一款经典的休闲游戏,它的Java源代码为我们提供了一个深入了解Java编程语言和游戏开发的绝佳实例。在本文中,我们将深入探讨Java编程基础、面向对象编程、图形用户界面(GUI)设计以及事件处理等核心知识点...

    贪食蛇游戏

    总的来说,贪食蛇游戏的实现涉及C#编程、Windows Forms或WPF GUI设计、对象编程概念(如类和对象)、事件处理、碰撞检测以及简单的算法应用。通过分析和理解这个游戏,初学者可以加深对C#语言和游戏编程的理解,同时...

    C++实现的贪食蛇游戏

    《C++实现的贪食蛇游戏详解》 贪食蛇是一款经典的电子游戏,以其简单易懂的规则和无尽的挑战性深受玩家喜爱。本文将深入探讨如何利用C++编程语言,结合MFC(Microsoft Foundation Classes)框架来实现这样一个游戏...

    贪食蛇小游戏(Linux)

    【贪食蛇小游戏(Linux)】是一款在Linux操作系统上用C语言编写的经典游戏程序,其设计灵感来源于经典的街机游戏“贪食蛇”。通过这个项目,我们可以深入了解C语言编程基础,以及如何在Linux环境下进行软件开发。下面...

    最短的贪食蛇源代码-c#,源代码,游戏,贪食蛇,gui绘图

    贪食蛇是一款经典的游戏,它的实现涉及到了编程基础、图形用户界面(GUI)设计以及算法应用等多个方面的知识。本文将围绕C#语言实现贪食蛇的最短源代码进行详细解读,帮助读者深入理解游戏机制及编程技巧。 首先,...

    C++版贪食蛇

    《C++版贪食蛇》是一款经典的编程游戏,利用C++语言实现,它结合了基本的编程概念和游戏设计,是学习C++编程过程中的一种趣味实践。贪食蛇游戏的原理简单,玩家通过控制蛇的方向使其吃到食物,每吃一次食物,蛇的...

    VC++贪食蛇游戏设计

    6. 报告部分:可能包含了设计思路、算法实现、遇到的问题及解决方案等内容。 **扩展学习资源** 除了源代码,本项目还提供了相关链接,可能包括其他MFC游戏设计的示例、MFC编程教程、C++基础教程等,这些资源可以...

Global site tag (gtag.js) - Google Analytics