贪吃蛇游戏详细设计说明书

合集下载

幼儿园贪吃蛇益智游戏教案详细介绍

幼儿园贪吃蛇益智游戏教案详细介绍

幼儿园贪吃蛇益智游戏教案详细介绍1. 概述幼儿园教育是孩子成长过程中至关重要的一部分,而益智游戏在幼儿园教学中扮演着重要的角色。

而其中,贪吃蛇益智游戏因其简单易懂的规则和寓教于乐的特点,被广泛应用于幼儿园教学中。

本文将针对幼儿园贪吃蛇益智游戏进行详细介绍和教案共享,帮助老师更好地利用这一游戏进行教学。

2. 游戏规则幼儿园贪吃蛇益智游戏是一款在幼儿园教学中广泛使用的游戏。

游戏规则简单:孩子扮演一条小蛇,通过操作键控制小蛇的方向,吃食物并长大,但不能碰到墙壁或者自己的身体。

这款游戏不仅能培养孩子的操作能力,还可以培养孩子对空间的感知能力,并且在游戏过程中,孩子还会学会控制自己的情绪和思维。

3. 游戏目的幼儿园贪吃蛇益智游戏的目的在于通过游戏的方式引导幼儿学习,让他们在快乐的氛围中掌握知识,培养他们的逻辑思维能力和动手能力。

通过这款游戏,孩子们能够在愉快的氛围中学习,培养他们的观察力和逻辑思维能力,使得教学更加生动有趣,并且能够提高孩子们的学习积极性。

4. 游戏教学在教学中,老师可以结合幼儿园的实际情况,设计不同的游戏场景。

可以设计成果园中的一颗果树,小蛇需要吃水果变长,同时要躲避掉不断移动的障碍物。

老师可以利用这些游戏场景引导幼儿学习有关水果、形状、颜色等知识。

通过这样的游戏教学,能够让孩子们在快乐的氛围中学到更多的知识,增强他们的记忆力和学习能力。

5. 个人观点作为一名教学者,我个人非常看重幼儿园益智游戏在教学中的应用。

而对于幼儿园贪吃蛇益智游戏,我认为它不仅能够让孩子们从中获得乐趣,还能够在游戏过程中培养他们的思维能力和动手能力。

通过这样的方式,能够有效提高孩子们的学习兴趣,让他们在愉快的氛围中掌握更多的知识。

6. 总结幼儿园贪吃蛇益智游戏作为一款益智游戏,在幼儿园教育中起着重要的作用。

通过游戏的方式,能够培养孩子们的思维能力和动手能力,让他们在快乐的氛围中学习知识。

老师们可以结合实际情况,设计场景化的教学内容,让幼儿在游戏中学习,享受成长的乐趣。

课程方案贪吃蛇编制

课程方案贪吃蛇编制

课程设计成果说明书题目:贪吃蛇游戏的编制学生姓名:杜恩荣学号: 100604120学院:数理与信息学院班级:A10计算机指导教师:亓常松老师浙江海洋学院教务处2018年 7 月 8 日目录1.系统需求分析1.1程序功能说明1.2程序设计的分析2. 软件设计说明2.1a主界面控件设计 2.1b 颜色控件设计2.2 具体操作3. 测试报告3.1测试游戏3.2测试的意义4. 参考文件5. 课程设计总结贪吃蛇游戏的设计与实现1.系统需求分析:1.1程序功能说明:贪吃蛇游戏是一个经典小游戏,一条蛇在封闭围墙里,围墙里随机出现一个食物,通过按键盘wsad控制蛇向上下左右四个方向移动,蛇头撞倒食物,则食物被吃掉,蛇身体长一节,同时记10分,接着又出现食物,等待蛇来吃,如果蛇在移动中撞到墙或身体交叉蛇头撞倒自己身体游戏结束。

1.2程序设计的分析:通过程序所要实现的功能可以看出,该程序中有蛇,食物两个主要的对象,所以我们可以定义两个类:蛇类和食物类;在蛇类中封装了蛇的所有的属性和操作。

蛇的属性有:蛇的长度,蛇的长度,蛇的初始位置,蛇的运动方向,蛇的存活状态,蛇的运动速度。

蛇的操作有:蛇的移动,蛇吃食物,画出蛇所有的状态。

食物的属性有:食物的出现位置,食物的存活状态。

食物类的操作:创建一个新的食物,画出食物的位置。

在该程序中还有一个from类,用来画出和显示蛇和食物的状态和位置,该类提供给蛇和食物的运动平台,蛇和食物在该from的画板范围内运行。

程序中还有其他的功能要一一实现。

如:在用户点击“开始”按钮后程序才能开始运行。

用户如果按空格键,则该程序暂停,但并不终止程序,在用户再次按空格键时,程序继续运行。

如果程序运行结束,即程序出现“GAME OVER”,或用户点击窗口关闭按钮时,程序结束,并且退出。

在程序运行过程中,用户控制的蛇,没吃到一个食物,那么该玩家的得分就加10,并且还要记录玩家的总得分。

在菜单栏【游戏设置】中选择【颜色设置】命令,可以设置蛇体和食物的颜色;在菜单栏【游戏设置】中选择【难度选择】命令,可以设置游戏难度。

_贪吃蛇游戏_说明书

_贪吃蛇游戏_说明书

湖南工业大学课程设计任务书2012 — 2013 学年第一学期计算机与通信学院学院(系、部)通信工程专业班级姓名学号课程名称:面向对象程序设计设计题目:贪吃蛇游戏完成期限:自2013 年 1 月7 日至2013 年 1 月13 日共 1 周内容及任务一、设计的主要技术参数(1) 游戏中共有贪吃蛇的长度和走向;(2) 随机生成食物(3) 通过响应定时器来实时更新。

二、设计任务(内容)(1) 随机生成贪吃蛇和食物;(2) 控制贪吃蛇的走动;(3) 食物消除判定,已经碰壁判定。

三、设计工作量一周进度安排起止日期工作内容1月7日-1月7日综合我们所学的知识,讨论设计的课题,制定用户需求。

1月8日-1月8日针对用户需求进行组员间的分工。

进一步熟悉自己的模块。

1月8日-1月12日一起完成开发,查找可能的漏洞,修改程序,直至完成程序。

1月13日-1月13日完成设计文档和课程设计说明书。

主要参考资料1.谭浩强.C++面向对象程序设计[M].北京:清华大学出版社,2006.2. Visual C++从入门到精通[M].北京:人民邮电出版社,2010指导教师(签字):年月日系(教研室)主任(签字):年月日面向对象程序设计设计说明书贪吃蛇游戏起止日期:2013 年1 月7 日至2013 年1 月13 日学生姓名班级学号成绩指导教师(签字)计算机与通信学院2013年1 月13日目录一、需求分析 (4)1.1、选题 (4)1.2、功能 (4)1.3、重要的MFC (4)二、概要设计 (4)2.1、设计思路 (4)2.2、程序框图 (5)三、详细设计 (6)四、调试分析 (8)五、用户使用说明 (8)六、测试结果 (9)七、附录或参考资料 (10)一、需求分析1.1、选题接到课程设计任务后,我们对曾经非常感兴趣的几款经典小游戏作了分析并筛选,然后发现使用MFC类库都可以完成这些游戏的编译,但是我们刚刚学习,还不能完全掌握MFC类的使用和复杂的算法,但是我们相信通过一个简单的贪吃蛇游戏可以让我们对MFC得到充分的锻炼。

贪吃蛇游戏说明书

贪吃蛇游戏说明书

贪吃蛇游戏说明书学院:计算机工程系专业班级:学号:学生:指导教师:青岛理工大学琴岛学院教务处2011年 7 月 8 日一、游戏说明:贪吃蛇小游戏是一款有趣的益智游戏,可以锻炼大脑的反应能力,在游戏与挑战中娱乐放松自己。

最初的蛇只有3节,随机某个地方出现一个食物,蛇从食物上走过即可吃掉食物并使自己的长度增加一节,游戏自动计时计分,撞到外侧的墙壁或自身会判定为游戏失败。

玩家可以自主设置游戏难度,改变蛇的运动速度,更加人性化。

另外,本游戏新添作弊功能,使游戏更具娱乐性。

二、操作说明:(一)游戏1. 开始:打开游戏之后,点击“开始游戏”按键,以开始游戏。

如图1所示图12.暂停/退出:在游戏进行中,如果因为有事离开可以选择暂停游戏或者退出游戏,当前的游戏会暂停或者退出,暂停的游戏再一次点击暂停游戏可以继续进行。

如图2所示图2(二)设置1.难度设置:游戏设中等为默认难度,用户可自主选择高/中等/容易任意难度,改变蛇的运动速度进行挑战。

选择的难度在游戏窗口显示。

2.声音:“背景声音开/关”,游戏默认开背景声音,点击则可以关闭,再一次点击则可以重新打开。

3.作弊开/关:游戏新加作弊功能,点击作弊开/关,蛇便可以穿过墙循环往复,游戏便不会结束,并可以继续其他功能,再次点击此处,作弊便可以关掉,正常进行游戏。

图3所示图3(三)帮助1.帮助:点击“帮助”,出现“关于Snake”及“游戏规则”。

如图4所示图42.游戏规则:点击“游戏规则”,出现对话框包含“游戏介绍”及“操作规则”的相关内容。

根据操作规则进行游戏。

如图5所示图5(四)其它1.操作规则:(1)游戏操作:键盘操作控制蛇的运动方向,方向键以及w、s、a、d分别对应向上、下、左、右移动。

(2)游戏快捷键:F1:帮助,Space:暂停/开始,F2:开始,F3:退出程序。

2.得分/用时:游戏自动计时。

当蛇吃掉一个食物时,游戏自动计分加1分。

如图6所示图63.游戏结束时点击提示对话框里的“确定”,恢复游戏主窗口。

贪吃蛇游戏课程设计

贪吃蛇游戏课程设计

贪吃蛇游戏课程设计一、课程目标知识目标:1. 学生能理解贪吃蛇游戏的基本原理,掌握游戏设计中涉及的坐标、方向和移动等概念。

2. 学生能运用所学的编程知识,使用合适的数据结构和算法实现贪吃蛇游戏的主体功能。

3. 学生了解游戏设计中的用户界面设计原则,并能将其应用于贪吃蛇游戏的界面设计。

技能目标:1. 学生掌握运用编程语言进行游戏设计的基本技巧,提高编程实践能力。

2. 学生能够运用逻辑思维和问题分析能力,解决游戏设计过程中遇到的问题。

3. 学生通过团队协作,提高沟通能力和项目协作能力。

情感态度价值观目标:1. 学生培养对计算机编程的兴趣,增强学习信息技术的积极性。

2. 学生在游戏设计过程中,培养创新意识和审美观念,提高对美的追求。

3. 学生通过课程学习,认识到编程对生活的影响,激发将所学知识应用于实际生活的意识。

课程性质:本课程为信息技术学科选修课程,适用于有一定编程基础的学生。

学生特点:学生具备基本的计算机操作能力,对编程有一定了解,对游戏设计感兴趣。

教学要求:结合学生特点,注重实践操作,鼓励学生创新和团队协作,提高学生的编程能力和审美观念。

在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. 游戏设计基本原理:介绍游戏设计的基本概念、流程和原则,结合贪吃蛇游戏案例分析游戏设计中的核心要素。

- 课本章节:第三章“游戏设计概述”- 内容:游戏设计流程、游戏类型、游戏设计原则2. 编程语言和工具:复习巩固编程基础,介绍贪吃蛇游戏所需的基本编程知识和工具。

- 课本章节:第二章“编程基础”- 内容:变量、数据类型、运算符、流程控制、函数、数组3. 数据结构和算法:分析贪吃蛇游戏中涉及的数据结构(如链表、数组)和算法(如坐标计算、碰撞检测)。

- 课本章节:第四章“数据结构与算法”- 内容:链表、数组、坐标计算、碰撞检测4. 游戏界面设计:介绍用户界面设计原则,指导学生设计贪吃蛇游戏的界面。

大学生贪吃蛇教案设计

大学生贪吃蛇教案设计

教学目标:1. 让学生了解贪吃蛇游戏的基本规则和玩法。

2. 培养学生的编程思维和逻辑思维能力。

3. 提高学生的团队协作能力和创新能力。

教学重点:1. 贪吃蛇游戏的基本规则和玩法。

2. 编程实现贪吃蛇游戏。

教学难点:1. 编程实现贪吃蛇游戏。

2. 培养学生的团队协作能力和创新能力。

教学准备:1. 计算机教室,每台计算机都安装有编程软件。

2. 贪吃蛇游戏示例代码。

教学过程:一、导入1. 引导学生回顾常见的编程游戏,如俄罗斯方块、植物大战僵尸等。

2. 提出问题:今天我们将学习如何编写一个贪吃蛇游戏,你们准备好了吗?二、讲解贪吃蛇游戏的基本规则和玩法1. 介绍贪吃蛇游戏的目标:玩家通过控制蛇头移动,吃掉食物,使蛇的身体变长。

2. 讲解贪吃蛇游戏的操作方法:使用键盘上的方向键控制蛇头的移动方向。

3. 讲解贪吃蛇游戏的规则:蛇头不能撞到自己或墙壁,否则游戏结束。

三、编程实现贪吃蛇游戏1. 分组讨论,确定贪吃蛇游戏的基本功能模块,如蛇头的移动、食物的生成、蛇身体的长短等。

2. 每组选择一位组长,负责组织团队成员进行编程实现。

3. 学生根据贪吃蛇游戏的基本规则和玩法,利用编程软件编写游戏代码。

4. 教师巡视指导,解答学生在编程过程中遇到的问题。

四、团队协作与创新能力培养1. 每组展示自己的贪吃蛇游戏,介绍游戏的特点和创新之处。

2. 其他小组进行评价,提出改进意见。

3. 教师总结各组的优点和不足,引导学生思考如何提高自己的创新能力。

五、总结与拓展1. 回顾本节课所学内容,强调贪吃蛇游戏的基本规则和编程实现方法。

2. 鼓励学生在课后继续探索,尝试添加更多功能,如游戏难度设置、排行榜等。

3. 提出拓展任务:将贪吃蛇游戏改编成网页版,让学生尝试使用HTML、CSS和JavaScript等技术实现。

教学反思:本节课通过讲解贪吃蛇游戏的基本规则和编程实现方法,培养了学生的编程思维和逻辑思维能力。

在团队协作环节,学生充分发挥了自己的创新能力,提出了许多有益的建议。

贪吃蛇游戏程序的设计说明

贪吃蛇游戏程序的设计说明

测控技术与仪器专业课程设计题单班级0982011 学生某某课程名称计算机课程设计课题贪吃蛇游戏程序设计设计要求 1.学习游戏设计有关知识。

2.设计贪吃蛇游戏程序。

3.调试并修改程序。

4.完成课程设计论文。

课题发给日期2011年6月25日课程设计完成日期2011年7月09日指导教师余某某评语:贪吃蛇游戏学生:某某班级:0882011指导老师:余某某摘要:编写C语言程序实现贪吃蛇游戏,贪吃蛇游戏是一个深受人们喜爱的游戏,一条蛇在密闭的围墙,在围墙随机出现一个食物,通过按键盘上的四个光标键控制蛇向上下左右四个方向移动,蛇头撞到食物,则表示食物被蛇吃掉,这时蛇的身体长一节,同时计10分,接着又出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁或身体交叉蛇头撞到自己的身体游戏结束。

作为一个完整的程序,必须考虑人机交流与用户体验。

游戏的界面不能太丑,更不能连个简单的界面都没有。

游戏应该有个比较漂亮的界面,在有必要硬件支持和软件的支持下,游戏开发者必须最大限度的使游戏美观。

游戏的美观是一方面,游戏的在素质是另一方面。

一个游戏的优劣,最终由玩家决定。

在游戏与玩家见面之前,游戏开发者要设计一种让玩家投入的游戏模式,并且在一定的游戏规则下进行。

关键词:贪吃蛇流程图c语言源程序目录1 前言 (1)2 课设容 (3)2.1课设目的 (3)2.2设计功能 (3)2.3结构设计 (7)3结论 (11)参考文献 (15)附录A (16)1 前言C语言是一种易学易懂的通用程序设计语言,由于它具有功能性强,运用简洁,灵活兼有高级语言与低级语言的优点,以及“目标程序效率高”可移植性和能在各种系统上普遍实现等特点使它成为当今世界上的主流程序设计语言之一,同时被选作目前全世界广泛应用,同时也是大学生必修的科目。

作为一位当代的大学生更要很好的利用它,学好一门设计语言,实现学以至用。

制作C程序报告,可以巩固和加深自己对C语言课程的基本知识的理解和掌握,并且能够掌握C语言编程和程序调试的基本技能。

大学体育游戏贪吃蛇教案

大学体育游戏贪吃蛇教案

一、教学目标1. 通过贪吃蛇游戏,提高学生的身体协调性和灵活性。

2. 培养学生的团队合作精神和竞争意识。

3. 锻炼学生的反应能力,提高运动技能。

4. 增强学生之间的交流与合作,增进友谊。

二、教学内容1. 游戏规则介绍2. 游戏技巧讲解3. 实践操作与比赛三、教学对象大学体育课程学生四、教学时间2课时五、教学地点体育馆六、教学器材1. 游戏场地:长方形场地,分为若干小格2. 游戏道具:纸板、胶带、计时器、口哨、音乐播放器等七、教学过程第一课时:1. 导入(1)教师简要介绍贪吃蛇游戏,激发学生学习兴趣。

(2)讲解游戏规则,让学生了解游戏的基本玩法。

2. 游戏规则介绍(1)游戏场地:长方形场地,分为若干小格。

(2)游戏人数:4-6人一组,每组选出一个队长。

(3)游戏道具:纸板、胶带等。

(4)游戏目标:在规定时间内,吃掉更多食物,成为胜利者。

(5)游戏规则:队员需在游戏场地内通过移动纸板,将食物引导到自己的位置。

3. 游戏技巧讲解(1)队员需密切配合,统一行动。

(2)合理利用道具,如快速移动纸板、设置障碍等。

(3)观察对手行动,寻找机会吃掉食物。

4. 实践操作与比赛(1)学生分组,每组选出一个队长。

(2)队长组织队员熟悉游戏规则和技巧。

(3)进行小组比赛,记录每组得分。

(4)比赛结束后,教师点评,总结经验教训。

第二课时:1. 复习上节课内容,巩固游戏规则和技巧。

2. 提高难度,增加游戏道具和挑战项目。

(1)设置不同类型的食物,如快速消失的食物、特殊效果的道具等。

(2)增加游戏障碍,如墙壁、陷阱等。

(3)提高比赛时间,增加比赛激烈程度。

3. 学生分组,进行新一轮比赛。

(1)每组队长组织队员制定策略,应对挑战。

(2)比赛结束后,教师点评,总结经验教训。

4. 总结(1)教师总结贪吃蛇游戏的教学成果,强调团队合作和竞争意识的重要性。

(2)学生分享自己在游戏中的心得体会,互相鼓励,共同进步。

八、教学评价1. 学生对游戏规则和技巧的掌握程度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

详细设计说明书
1 引言
1.1 编写目的
本说明书在概要设计的基础上,对贪吃蛇游戏的各模块、程序、子系统分别进行了实现层面上的要求和说明。

软件开发小组的产品实现人员阅读和参考本说明进行代码的编写和测试。

本说明书预期的读者是软件开发小组的产品实现人员。

1.2 背景
说明:
系统名称:贪吃蛇游戏
任务提出者:手机策划人员
开发者:软件开发小组的产品实现人员
用户:NOKIA手机用户
运行该程序系统的计算中心:NOKIA手机芯片
1.3 定义
1.节:
一条蛇可以看成由许多正方形的“小格子”拼凑成,称作节。

节是蛇身上最小的单位。

2.链表:
用来保存每一段的状态,链表的元素单位是节。

且链表的第一个元素表示蛇的头部。

3.坐标系:
以左上角那点为(0,0),向右则x递增,向下则y递增。

1.4 参考资料
张海藩:《软件工程导论》第五版清华大学出版社
肖刚等:《实用软件文档写作》清华大学出版社
2 程序系统的组织结构
2.1每个模块和子程序的名称、标识符:
1Ground类:
1)private int TYPE;
2)public int[][] rocks=new int[Global.WIDTH][Global.HEIGHT];
3)public void setGround(int type){}
根据不同的Type值将rocks的不同下标的元素设为1,其他元素为0。

4)public boolean isSnakeEatRock(Snake snake){}
判断蛇头的所在的位置在数组rocks中的值是否为1,如果是1,则表示蛇吃
到了石头,返回TRUE,否则返回FALSE。

5)public Point getPoint(){}
产生一组随机数(x,y),是食物的坐标
6)public void drawMe(Graphics g){}
将数组rocks中值为1的元素填充为石头颜色。

2Snake类:
1)public static int x,y;
2)private int oldDirection,newDirection;
用于判断newDirection和oldDirection是否为相反方向,用于选取有效方向。

3)private Point oldTail;
用于判断蛇头是否和蛇身的某个节点的坐标重合,即蛇是否吃到自己。

4)public LinkedList<Point> body=new LinkedList<Point>();
5)public void die(){}
设置变量life=FALSE;使控制进程的条件为假,进程结束。

6)public void move(){}
实现蛇身沿着蛇头的轨迹移动
7)public void changeDirection(int direction){}
根据方向键,改变蛇头的x、y的值,即改变方向
8)public void drawMe(Graphics g){}//把属于蛇的格子画出来
9)private class SnakeDriver implements Runnable{}//蛇不停走动
3Food类:
1)public void drawMe(Graphics g){}
根据产生的一组随机坐标,在其坐标处画出食物
4Controller类:
功能:处理按键事件及鼠标点击事件,处理逻辑。

根据不同的情况向Snake,Food,Ground发出不同的命令。

实现接口snakeMoved,蛇每移动一步,就要判断一次,蛇是否吃到石头、是否吃到自己,是的话就snake.die()并停止计时;不是则不进行任何操作。

如果吃到食物,就要加分、重画食物、蛇身加长。

实现(N)NewGame功能、(E)Exit功能、(R)Resume功能、(L)LowLevel功能、(H)HighLevel功能、(P)Pause功能。

5GamePanel类:
功能:画出Snake,Food,Ground,并实现重新显示
2.2模块之间的关系:
3. 程序(标识符)设计说明
3.1. 程序描述
1.目的和意义:
该部分以窗体上的按钮或键盘上的快捷键为用户提供友好的控制手段。

为工作量繁大的用户提供一个简单而有趣的小游戏。

2.特点说明:
1)程序交互性好,操作性强。

2)易操作。

简单而有趣。

3)功能全面,如:开始新游戏、暂停、继续、设置初级、设置高级、查看历
史成绩、查看游戏说明、退出游戏。

4)对于每次不可选的按钮设置为灰显,避免了用户的错误操作。

3.2. 性能
本游戏在设计方面本着方便、实用及娱乐性高的宗旨,在对界面进行设计的过程中,始终坚持清晰明了,在性能方面能够实现效率高,不易出错等优点。

游戏主界面应该力求美观,赏心悦目。

游戏控制模块应做到易懂、易操作,而且准确率高,不易出错。

3.3. 输入项
用户的按钮操作,如点击NewGame、Pause、Resume、LowLevel、HighLevel、HighScore、Description、Exit。

或者选择键盘上的方向键和游戏设置的快捷键。

快捷键有:N(NewGame)、P(Pause)、R(Resume)、L(LowLevel)、H(HighLevel)、S(HighScore)、D(Description)、E(Exit)。

3.4. 输出项
时间、分数,以及将石头、食物、等级、分数、时间、蛇每个节点的坐标信息。

3.5. 功能
NewGame
Pause
Resume
LowLevel
HighLevel
Exit
snake.start();food.newFood();time.newTime();
从文件中读取历史分数记录
停止计时,将石头、食物、等级、分数、时间、蛇每
个节点的坐标信息保存到文件中去
文件中读取石头、食物、等级、分数、时间、蛇每个
节点的坐标信息,snake.start();
time.newTime();food.newFood(food);
设定Type值为1,setGround(Type);改变蛇移动的时
间间隔
设定Type值为2,setGround(Type);改变蛇移动的时
间间隔
System.exit(0);
时间
分数
游戏结束
记录信息
3.6. 算法
1.蛇、石头、食物的表示方法:
把显示区看做一个大大的表格,里面的格子就是组成蛇的基本单位,一个格子就表示
一块石头或代表一个事物。

几个连在一起的格子就可以代表一条蛇。

使用坐标来区分
这些格子。

2.蛇的移动方式
蛇每移动一步,可以看做蛇头增加一个节点,蛇尾删去一个节点。

3.保存蛇的数据结构
因为要区分蛇头和蛇尾,这就要求这个数据结构是有序的,还要经常的访问最后一个和第一个节点,所以LinkList最适合。

4.蛇的移动方向
根据原来蛇头的坐标和方向计算新蛇头的坐标,
5.格子的坐标和像素坐标
由于画蛇、食物、石头我们只是填充一个矩形,或者在相应位置显示一张图片,所以我们要知道每个格子的坐标。

3.7. 流程逻辑
3.8. 接口SnakeListener:
V oid SankeMoved(Snake);
3.9. 存储分配
该游戏软件运行时,Snake、Food、Ground三个对象一致同时存在,直到戏结束。

其中蛇移动方法长期占用资源,改变方向、吃到食物及石头都是瞬发动作,只是瞬间占用系统资源。

3.10. 注释设计
Snake类中
1)private int oldDirection,newDirection;
用于判断newDirection和oldDirection是否为相反方向,用于选取有效方向。

2)private Point oldTail;
用于判断蛇头是否和蛇身的某个节点的坐标重合,即蛇是否吃到自己。

3)Private bool life=TRUE;进程的控制条件
3.11. 限制条件
1.每个选项NewGame、Pause、Resume、LowLevel、HighLevel、Exit不能连续点击。

2.每次要点击Exit退出游戏才能保存游戏。

3.所运行机器必须装有JVM。

3.12. 测试计划
1.对这几个主要功能NewGame、Pause、Resume、LowLevel、HighLevel、Exit逐个进行测试。

2.由于程序较小,测试时间预计为1小时。

3.预期的结果:
1)在开始游戏后,按键盘上的方向键蛇会相应的改变方向。

2)吃掉食物后蛇身的长度增加一节,分数增加。

3)蛇碰到石头或碰到自己后游戏结束。

4)选择Pause后,停止计时,蛇停止移动。

5)选择Resume后,蛇在Pause时的地方继续移动,时间继续计时。

如果程序在Pause后,
选择了Exit,再次运行程序时,选择Resume,也可以继续上次的游戏。

6)选择LowLevel、HighLevel鹰相应改变石头的布局及蛇移动的时间间隔。

相关文档
最新文档