俄罗斯方块游戏设计

合集下载

俄罗斯方块课课程设计

俄罗斯方块课课程设计

俄罗斯方块课课程设计一、教学目标本课程旨在让学生了解和掌握俄罗斯方块的基本知识和技巧,通过实践操作,培养学生的逻辑思维能力和反应能力。

知识目标包括了解俄罗斯方块的起源、规则和发展历程,掌握基本的操作技巧。

技能目标包括能够熟练操作俄罗斯方块,实现各种高级技巧,如连消、旋转等。

情感态度价值观目标包括培养学生团队合作精神,鼓励他们在面对挑战时保持积极的态度。

二、教学内容教学内容主要包括俄罗斯方块的基本知识、操作技巧和策略。

首先,介绍俄罗斯方块的起源和发展历程,让学生了解这一经典游戏的历史。

然后,教授基本的操作技巧,如上下移动、旋转等,并通过实践练习,让学生熟练掌握。

接下来,引导学生学习高级技巧,如连消、组合等,并探讨如何在游戏中运用这些技巧。

最后,通过分析不同水平的俄罗斯方块游戏,让学生了解游戏难度和策略的选择。

三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法。

首先,讲授法,由教师讲解俄罗斯方块的基本知识和技巧。

其次,讨论法,学生分组讨论游戏策略和技巧,促进团队合作和思维碰撞。

再次,案例分析法,分析不同水平的俄罗斯方块游戏,让学生了解游戏难度和策略的选择。

最后,实验法,学生通过实践操作,掌握操作技巧和策略。

四、教学资源为了支持教学内容和教学方法的实施,我们将选择和准备适当的教学资源。

教材方面,将使用《俄罗斯方块教程》作为主教材,辅助以相关参考书籍。

多媒体资料方面,将收集俄罗斯方块的历史资料、游戏视频等,以丰富学生的学习体验。

实验设备方面,将准备电脑或游戏机等设备,让学生能够进行实践操作。

五、教学评估本课程的评估方式将包括平时表现、作业和考试三个部分,以全面客观地评价学生的学习成果。

平时表现将根据学生在课堂上的参与度、合作表现和操作技巧进行评估。

作业部分将布置相关的练习题和游戏设计任务,要求学生在规定时间内完成,以此检验他们的理解和应用能力。

考试部分将包括客观题和主观题,以测试学生对俄罗斯方块知识的掌握和操作技巧的熟练程度。

毕业论文(设计)俄罗斯方块游戏的设计和实现

毕业论文(设计)俄罗斯方块游戏的设计和实现

俄罗斯方块游戏的设计和实现摘要俄罗斯方块是一款有益大脑开发,老少皆宜的游戏。

传统的俄罗斯方块色彩单调,功能单一,略显枯燥。

而该俄罗斯方块是一款基于手机端开发的,可以根据玩家水平选择游戏难度的游戏。

它实现了四个方块随机组成7种形状的功能,这种方块组成功能在弥补传统方块组成功能的缺陷的同时,还大大提高了游戏的趣味性,给玩家带来了更好的游戏体验。

该游戏将编程技术与图形技术相结合,以Eclipse作为开发环境,Java作为编程语言,数据则保存在MYSQL数据库中。

【关键词】Java;MYSQL;图形技术;俄罗斯方块Design and Implementation of Tetris GameAbstractTetris game is suitable for all ages, which can develop the brain. The traditional Tetris game is a drab, single and a bit boring game. But this Tetris is based on a mobile terminal development, and players can choose the level of difficulty of the game to play it. It implements a function that uses four blocks to make up seven kinds of graphic shapes randomly, which not only makes up for the defect of traditional squares function, but also greatly increases the interesting of the game to bring players a better game experience.The game is the combination of programming and graphics, which uses Eclipse as a development environment. Java is used as a programming language and the Data is stored in the MYSQL database.[Keywo rds] Java; MYSQL; Graphic Technology; Tetris目录1 绪论 (1)1.1 课题背景 (1)1.2 课题意义 (1)1.3 课题研究目的 (1)2 开发环境介绍 (1)2.1 硬件开发环境 (1)2.2 技术介绍 (2)2.2.1 Andro id (2)2.2.2 Eclipse (2)2.2.3 Java语言 (2)2.2.4 MYSQL数据库 (2)3 可行性分析 (3)3.1 经济可行性 (3)3.2 技术可行性 (3)3.3 操作可行性 (4)4 系统设计 (4)4.1 功能模块设计 (4)4.1.1 游戏功能分析 (4)4.1.2 游戏功能模块图 (4)4.1.3 UML用例图 (5)4.2 算法的描述和流程图 (6)4.3 数据库的设计 (7)5 设计实现 (9)5.1 游戏设计 (9)5.1.1 方块设计模块 (9)5.1.2 方块旋转功能模块 (10)5.1.3 游戏界面模块 (11)5.2 模式选择 (12)5.2.1 游戏开始功能模块 (12)5.2.2 游戏设置功能模块 (13)5.2.3 游戏积分统计模块 (14)6 系统的调试与测试 (15)6.1 系统的调试 (15)6.2 系统的测试 (15)6.2.1 测试的重要性及目的 (15)6.2.2 测试的主要内容 (16)7 结语 (18)参考文献 (19)致谢 (20)1 绪论1.1 课题背景俄罗斯方块游戏从产生到现在已经有25年历史了。

c俄罗斯方块课程设计

c俄罗斯方块课程设计

c 俄罗斯方块课程设计一、课程目标知识目标:1. 学生能理解俄罗斯方块游戏的规则与基本操作方法。

2. 学生能掌握俄罗斯方块中各种图形的特点及其旋转方式。

3. 学生了解俄罗斯方块游戏中的数学原理,如对称性、组合与分解。

技能目标:1. 学生能运用所学的操作方法,熟练玩转俄罗斯方块游戏。

2. 学生通过实践,培养观察力、反应能力和空间想象力。

3. 学生学会运用策略,提高解决问题的能力。

情感态度价值观目标:1. 学生通过游戏,培养积极向上的学习态度,体验学习与娱乐的结合。

2. 学生在团队协作中,学会相互鼓励、支持,培养团队精神。

3. 学生通过俄罗斯方块游戏,认识到生活中处处有数学,提高对数学学科的兴趣。

本课程针对小学四年级学生,结合学科特点,设计具有趣味性和挑战性的教学活动。

课程以游戏为载体,激发学生的学习兴趣,同时注重培养学生的观察力、反应能力和空间想象力。

通过本课程的学习,使学生达到以上所述的具体学习成果,为后续的教学设计和评估提供明确的方向。

二、教学内容1. 俄罗斯方块游戏规则与操作方法- 游戏界面认识- 方块种类及其特点- 方块旋转与移动操作2. 俄罗斯方块中的数学原理- 对称性:引导学生观察方块对称特点,理解轴对称与中心对称- 组合与分解:方块拼接与拆分,培养学生的空间想象力3. 游戏策略与技巧- 游戏进行中的观察与思考- 不同形状方块的最优摆放策略- 提高得分与消除层的方法4. 团队协作与竞技- 分组进行游戏竞技,培养学生团队协作精神- 交流游戏心得,分享成功经验教学内容安排和进度:第一课时:介绍俄罗斯方块游戏规则与操作方法,让学生亲自体验游戏,熟悉游戏界面和基本操作。

第二课时:学习俄罗斯方块中的数学原理,通过观察与实际操作,让学生理解对称性、组合与分解等概念。

第三课时:教授游戏策略与技巧,提高学生在游戏中的应对能力。

第四课时:进行团队协作与竞技,培养学生的团队精神和竞技心态。

教学内容与课本关联性:本课程内容以数学教材中关于几何图形的知识为基础,结合俄罗斯方块游戏,让学生在实际操作中巩固和应用所学知识。

俄罗斯方块游戏系统设计(含完整程序)

俄罗斯方块游戏系统设计(含完整程序)

毕业设计(论文)正文题目俄罗斯方块游戏专业班级姓名学号指导教师职称俄罗斯方块游戏摘要: 在现代信息高速发展的时代,电子游戏已经深入了人们的日常生活,成为了老少咸宜的娱乐方式,但是游戏设计结合了日新月异的技术,在一个产品中整合了复杂的艺术,设计,声音和软件,所以并不是人人皆知,直到今天,在中国从事游戏设计的人仍然很少,但是游戏行业的发展之快,远超如汽车,家电等传统行业,也正因为如此,游戏人才的教育培养远落后于行业的发展。

俄罗斯方块是一个老少咸宜的小游戏,它实现有四个正方形的色块组成,然后存储于一个数组的四个元素中,计算机随机产生七种不同类型的方块,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键进行向左,向右,向下,翻转操作。

然后程序根据这七种方块折叠成各种不同的类型。

论文描述了游戏开发的背景,意义,算法分析,功能实现,功能测试。

以C++为开发语言进行设计与实现。

关键词:电子游戏,算法,C++,测试The Russian square pieceAbstract :In the era of high-speed development of electronic of information, computer game has enter people’s daily life, become an amusement adapt to old and young. But game design is a combination of fast-moving technology ,the complexity of integrating design,art,audio and software into a single production,so this thechnology isn’t known by everyone .up-to-date,there are few people work at game design all the same,whereas,thedevelopment of game industry more faster than traditional industry as home ap pliances and automobile,by the reason of this situation,the education and training of person with ablity of game design drop behind the development of game industry.The Russian square piece is a get-away drama with all proper old young ,it carry out to be constitute by four pieces of colours of exact square piece ,then save in one four chemical elements of the piece set ,random creation dissimilarity of calculator seven the square piece of the category type ,control it according to the calculator clock in certain time continuously creation , the customer is inside out according to four directions key control of the keyboard ,toleft ,rightwards and get down ,(the realization of the control key is to be carry out by the event handing of the direction key of the keyboard) Then the procedure pileds according to these seven kinds of square pieces various different model.The thesis has described the game history ,has developed this game history ,has developed this game environment, development significance of game .Knowledge abiding by a software engineering ,definition begins from software problem ,proceed to carry out feasibility study ,need analysis ,essentials design,the at last has carried out a testing on the software engineering knowledge hierarchy .The computer games design and practice are designed o eclipse developing platform with C++ developing instrument ,under Microsoft Windows XP system this time.Key Words: electronic game calculate way C++ test目录1引言 (1)1.1课题背景 (1)1.2毕设意义 (2)2需求与算法分析 (3)2.1需求分析 (3)2.1.1 游戏需求 (3)2.1.2游戏界面需求 (4)2.1.3 游戏形状(方块)需求 (4)2.2算法分析 (5)2.2.1定义方块的数据结构 (5)2.2.2俄罗斯方块流程 (5)3系统功能实现 (7)3.1产生主窗口 (7)3.2定义俄罗斯方块数据结构 (8)3.3游戏的主逻辑 (9)3.4销行功能实现 (11)3.5中断操作流程的实现 (13)3.6变形的实现 (15)3.7 游戏区域绘图的实现 (16)3.8 游戏方块绘制 (20)3.9 烟花燃放功能 (22)4功能测试 (24)4.1测试环境 (24)4.2图像功能测试 (24)4.3销行和计分功能测试 (27)4.4速度功能测试 (28)5总结 (29)[参考文献] (30)致谢 (31)俄罗斯方块的程序设计1引言计算机游戏产业在随着网络的发展有了长足的发展。

俄罗斯方块游戏设计与实现毕业设计论文

俄罗斯方块游戏设计与实现毕业设计论文

目录封面........................错误!未定义书签。

目录 (I)毕业论文(设计)任务书 (I)开题报告 (Ⅴ)审阅与评审成绩 (Ⅹ)答辩记录及成绩评定 (Ⅺ)中文摘要 (Ⅻ)引言 (1)1.绪论 (2)1.1 电子游戏及其分类 (3)1.2 电子游戏发展现状 (3)1.2.1 电子游戏在国外的发展现状 (3)1.2.2 电子游戏在国内的发展现状 (4)2.可行性研究 (6)2.1 设计目的 (6)2.2 软件问题定义 (6)2.3 可行性分析 (6)3.需求分析 (7)3.1 引言 (7)3.2 游戏需求 (7)3.3 软硬件需求 (8)3.4 接口控制 (8)3.5 方案论证 (8)3.5.1 VB的优点 (8)3.5.2 C++的优点 (9)3.5.3 Java的优点 (9)3.5.4 方案的选择 (10)4.概要设计 (11)4.1 游戏设计方案的确定 (11)4.2 系统流程结构设计 (11)4.3 各个功能模块图设计 (12)4.3.1 模型层(Model)功能模块图设计 (12)4.3.2 视图层(View)功能模块图设计 (13)4.3.3 控制层(Controller)功能模块图设计 (13)5.详细设计 (14)5.1模型层(Model)设计 (14)5.1.1 图形的产生 (14)5.1.2 图形的数据结构 (14)5.1.4 图形的变形 (15)5.1.5 存储和表示障碍物 (16)5.1.6 判断满行及消行 (16)5.2视图层(View)设计 (17)5.2.1 方块的显示 (18)5.2.2 障碍物的显示 (18)5.3 控制层(Controller)设计 (19)5.4 游戏演示 (19)5.4.1 游戏界面显示 (20)5.4.2 开始和结束控制菜单 (20)5.4.3 分数和等级查看菜单 (21)5.4.4 变换方块菜单 (21)5.4.5 帮助菜单 (22)6.系统测试 (22)6.1 游戏界面菜单选项的功能测试 (22)6.2 按键事件的功能测试 (23)6.3方块堆砌与消行测试 (23)6.4 测试结果分析 (23)结论 (24)致谢 (25)参考文献 (25)毕业论文(设计) 任务书系计算机系专业软件技术班级软件技术1班学生姓名指导教师/职称1.毕业论文(设计)题目:俄罗斯方块游戏设计与实现2.毕业论文(设计)起止时间: 2013年11月26日~ 2014年 4月26日3.毕业论文(设计)所需资料(指导教师选定部分)陆惠恩著. 实用软件工程[M].北京:清华大学出版社黄复贤著.俄罗斯方块游戏的敏捷设计与开发[M]. 电脑编程技巧与维护朱福喜著. Java程序设计技巧与开发实例[M].北京:人民邮电出版社赵东跃著.俄罗斯方块编程[M].电脑编程技巧与维护4.毕业论文(设计)应完成的主要内容俄罗斯方块游戏的基本实现,由Model层随机生成图形,由View层显示,用Controller 类控制图形是否能旋转是否能下落。

anderoit俄罗斯方块课程设计

anderoit俄罗斯方块课程设计

anderoit俄罗斯方块课程设计一、课程目标知识目标:1. 学生能理解俄罗斯方块游戏的规则及游戏策略。

2. 学生能掌握Andertoise编程环境中基本的编程语句和逻辑结构。

3. 学生能了解计算机坐标系以及如何在编程中应用。

技能目标:1. 学生能够使用Andertoise编程环境,独立编写简单的俄罗斯方块游戏程序。

2. 学生能够通过编程实践,培养逻辑思维和问题解决能力。

3. 学生能够运用所学知识,进行有效的团队协作,共同完成项目任务。

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

2. 学生在团队合作中学会相互尊重、沟通协作,培养团队精神和责任感。

3. 学生通过编程实践,认识到编程对生活的影响,培养创新意识和实践能力。

课程性质:本课程以实践为主,结合理论知识,通过项目式学习,让学生在动手实践中掌握编程技能。

学生特点:六年级学生具备一定的逻辑思维能力,对新事物充满好奇,喜欢动手实践。

教学要求:教师需引导学生主动探索,关注学生个体差异,提供个性化指导,鼓励团队合作,提高学生的编程能力和信息素养。

通过课程目标的实现,使学生在知识、技能和情感态度价值观方面得到全面发展。

二、教学内容1. 俄罗斯方块游戏原理介绍:游戏规则、游戏界面、方块形状及运动规律。

相关教材章节:第五章《游戏设计基础》第二节《游戏规则与界面设计》2. Andertoise编程环境使用:基本操作、编程语句、逻辑结构。

相关教材章节:第二章《Andertoise编程基础》3. 计算机坐标系及其应用:坐标系概念、坐标转换、在编程中的应用。

相关教材章节:第四章《图形与动画》第一节《计算机坐标系》4. 编程实现俄罗斯方块游戏:a. 设计游戏界面及基本框架。

b. 编写方块生成、移动、旋转等基本功能。

c. 实现方块消去及得分机制。

d. 游戏逻辑优化及调试。

相关教材章节:第五章《游戏设计基础》第三节《游戏功能实现》5. 团队合作与项目实践:分组合作、任务分配、进度管理、成果展示。

俄罗斯方块幼儿园教案

俄罗斯方块幼儿园教案

俄罗斯方块幼儿园教案
一、教学目标
1.理解俄罗斯方块游戏的基本规则和操作方法;
2.培养幼儿手眼协调能力和空间想象能力;
3.增强幼儿对游戏规则的遵守和合作意识。

二、教学准备
1.俄罗斯方块游戏软件;
2.室内活动场所;
3.幼儿专用电脑或iPad等设备。

三、教学过程
1. 导入活动
在班级中介绍俄罗斯方块游戏,让幼儿了解该游戏的基本规则和操作方法,调动幼儿学习兴趣。

2. 游戏规则交流
让幼儿在游戏前与同伴合作,商讨好游戏规则,让每个幼儿都能够理解并遵守规则,增强合作意识。

3. 游戏时间安排
设置适当的游戏时间和轮流玩的机制,使每个幼儿都有机会体验游戏,避免出现单个幼儿长时间玩耍的情况。

4. 游戏成绩评价
每个幼儿体验完游戏后,可以通过其他幼儿的评价或者自己的感受来评价自己的水平,促进幼儿对游戏的认识和理解。

5. 游戏过程补充
如果有幼儿对游戏的规则和操作方法不熟悉,教师可以进行补充说明或更改游戏难度以适应幼儿的水平。

6. 游戏结束后处理
游戏结束后,教师应该对幼儿进行感受交流,引导幼儿识别其中的好处和不足之处,并加以改进,培养幼儿反思和自我评价的能力。

四、教学效果评估
通过观察幼儿在游戏中的表现和听取幼儿的自我评价来判断该次游戏的教学效果,有效培养幼儿的空间想象能力、手眼协调能力和游戏规则遵守意识。

五、教学注意事项
1.需要在教学活动前,确保设备和场所的安全;
2.学生人数不宜太多,最好在10人以内;
3.教师应引导幼儿树立正确的竞争意识,防止出现恶性竞争现象;
4.教师应配合幼儿的身体和心理特性,设置合适的游戏时间和难度。

俄罗斯方块

俄罗斯方块

俄罗斯方块游戏的设计与实现布局管理:一个布局管理器确定各构件在显示区域的次序、相对大小和相对位置。

其中最基本的类有:FlowLayout 、GirdLayout 、BorderLayout 。

(6)图形类与图形的绘制:使用Graphics 类提供的绘图方法“public void paint(Graphics g)”可以画出线条、矩形、圆形等图形。

创建一个单独的类,这个类继承于Canvas类并且覆盖paint方法。

①Graphics 类Graphics 类用于在一个可视构件内绘图。

一个Graphics对象包含了绘图所必需包含的信息,其中包括坐标、色彩、字体和剪贴板区。

绘图在一个二维整数坐标系中进行,该坐标的原点在构件的左上角。

X轴在水平方向上从左至右增长,Y轴在垂直方向上从上至下增长。

②Canvas类Canvas是一个具有自己坐标系统的构件,使用布局管理器可以确定它在其他构件中的位置。

Canvas继承于Component 类,并继承了它的paint(Graphics g)、update(Graphics g)以及repaint()方法。

使用Canvas作为绘图工具时首先创建一个类继承于Canvas类并且覆盖paint方法,再将这个类作为一个成员加入到类似于Frame或Applet(JFrame 或JApplet)的类中,用某种布局管理器对其进行定位。

这个类需要完成如下工作:·利用Canvas处理绘图,它的最重要的方法是paint,该方法可以被覆盖。

无论使用Graphics还是使用Canvas作为图形对象,都可在需要更新时自动调用repaint方法。

repaint方法也可以直接在绘图程序中调用。

在repaint中需要调用update 方法,update方法在清除屏幕后再调用paint方法。

paint方法也可以被实际应用需要的绘图代码进行覆盖。

1.3.2 Java多线程机制俄罗斯方块的实现充分利用了Java的线程功能。

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

俄罗斯方块游戏设计 俄罗斯方块游戏设计 JAVA语言 Eclipse平台开发 以下为开发过程需要使用的packages及其中classes and methods JAVA语言和C语言、C++语言很接近,它是一种面向对象、独立于开发平台的高级编程语言。它独特的语法规则和类库是组成JAVA技术的两个重要部分。 假期总结: 坦白讲,这个暑假我没花多少时间在学习计算机编程技术上面。在刚放暑假的时候,我去图书馆借了七八本编程书,有Visual C++、C#、以及JAVA方面的书,信誓旦旦这个暑假要好好研究技术。然而,执行力是我很缺乏的一个缺陷吧。在家贪图一时之爽,基本上没去翻书学习,久而久之,就越害怕打开书本。后期提前回学校,学了一点点JAVA。回想整个大一,包括这个暑假,我很羞愧。自己在过去的一年里浪费了太多的时间,对成绩抱着一种比较无所谓的心态,对于学习也是,可想而知,与别人的差距也就越来越大,这也是我现在不愿意看到的。在往后的日子,我不敢保证自己能如何刻苦勤奋地学习,但是,至少我会尽力做到问心无愧,我会清楚自己要什么,并且行动起来。

一、Package cn.itcast.tetris.controller

控制器 控制Ground, Snake, Food 负责游戏的逻辑 处理按键事件 Method Summary void addGameListener(GameListener l) 添加监听器, 可添加多个

void beforeDeleteFullLine(Ground ground, int lineNum) 处理Ground 触发的 beforeDeleteFullLine 事件将会改变满行的颜色并暂停一段时间

void continueGame() 继续游戏

void fullLineDeleted(Ground ground, int deletedLineCount) 处理Ground 触发的 fullLineDeleted 事件, 这个方法什么也没做, 只是打印了一句话 javax.swing.JLabel getGameInfoLabel() 得到显示提示信息的组件

GamePanel getGamePanel()

Ground getGround() java.lang.String getNewInfo() 获得游戏的最新提示信息

ShapeFactory getShapeFactory()

void groundIsFull(Ground ground) 处理Ground 的 groundIsFull() 事件, 将触发游戏结束事件

boolean isPausingGame() 游戏是否是在暂停状态

boolean isPlaying() 是否正在游戏中

boolean isShapeMoveDownable(Shape s) 询问一下图形是否可以下落,如果不能下落了,就会让图形变成障碍物 这个方法是同步的

void keyPressed(java.awt.event.KeyEvent e) 处理键盘按键 LEFT: 向左移动 RIGHT:向右移动 DOWN: 向下移动 UP: 变形 PAGE UP: 加快速度 PAGE DOWN: 减慢速度 Y: 重新开始游戏 ENTER: 暂停/继续

void newGame() 开始一个新游戏

void pauseGame() 暂停游戏

void removeGameListener(GameListener l) 移除监听器 void setGameInfoLabel(javax.swing.JLabel gameInfoLabel) 设置

void setGamePanel(GamePanel gamePanel)

void setGround(Ground ground) void setShapeFactory(ShapeFactory shapeFactory) void shapeMovedDown(Shape s) 处理图形触发的 shapeMovedDown (图形下落) 事件 将会重新显示

void stopGame() 停止当前游戏

一、Package cn.itcast.tetris.entities Class Summary Ground 可以叫做地形, 或地面 维护障碍物的信息 可以使用提供的 addObstacle(int, int) 和 addStubbornObstacle(int ,int) 方法添加障碍物。

Shape 维护一个图形, 一个图形可以有一种或多种状态

可以通过 setColor() 方法改变图形的颜色 可以通过覆盖 drawUnit(Graphics, int, int, int, int) 方法改变图形的显示

用内部类 ShapeDriver 驱动图形定时向下移动 使用时一定要给实例注册监听器, 否则不能正常运行

ShapeFactory 图形工厂 可以产生多种形状, 多种颜色的图形

setDefaultShapeColor() 方法可以设置默认产生的图形的颜色 也可以通过 setColorfulShape() 方法设置是否产生彩色图形 UnitType 可以表示地面里面的障碍物, 不可消除的障碍物, 空白 外部不可以直接new 一个实例, 而应该用 clone() 方法产生实例(防止产生不能识别的类型) 例如产生一个障碍物:

UnitType aObstacle = UnitType.OBSTACLE.clone();

1、Class Ground: public class Ground extends java.lang.Object

可以叫做地形, 或地面 维护障碍物的信息 可以使用提供的 addObstacle(int, int) 和 addStubbornObstacle(int ,int) 方法添加障碍物。

可以通过setObstacleColor(), setStubbornObstacleColor() 或 setGriddingColor()方法更改障碍物或网格的颜色 通过setDrawGridding() 方法设置是否画空白(网格) 用 setColorfulSupport() 方法设置是否支持彩色显示

覆盖 drawObstacle(Graphics, int, int, int, int) 方法可以改变障碍物的显示方式 覆盖 drawStubbornObstacle(Graphics, int, int, int, int) 方法可以改变不可消除的障碍物的显示方式

Method Summary void accept(Shape shape) 把指定的图形变成石头 然后将会调用 deleteFullLine() 方法扫描并删除满行

void addGroundListener(GroundListener l) 添加监听器, 可添加多个

void addObstacle(int x, int y) 在指定的位置添加一个障碍物

void addStubbornObstacle(int x, int y) 在指定的位置添加一块不可消除的障碍物

void changeFullLineColor(int lineNum) 改变指定行的颜色,(可以做为消行前的效果)

void clear() 清空容器

void deleteFullLine() 扫描并删除满行 将调用 deleteLine(int) 方法删除满行

void deleteLine(int lineNum) 删除指定的行(这一行上面所有的石头整体下移一行)

void drawGridding(java.awt.Graphics g, int x, int y, int width, int height) 画一个空白的方法(网格), 可以覆盖这个方法改变空白(网格)的显示

void drawMe(java.awt.Graphics g) 显示, 将调用 drawGridding(Graphics, int, int, int, int), drawObstacle(Graphics, int, int, int, int)和 drawStubbornObstacle(Graphics, int, int, int, int) 方法

void drawObstacle(java.awt.Graphics g, int x, int y, int width, int height) 画一个障碍物的方法, 可以覆盖这个方法改变障碍物的显示 void drawStubbornObstacle(java.awt.Graphics g, int x, int y, int width, int height) 画一个不可消除的障碍物的方法, 可以覆盖这个方法改变不可消除的障碍物的显示

void generateSomeStochasticObstacle(int amount, int lineNum) 在指定的范围内随机生成一些障碍物 产生的区域行是1 - lineNum

void genernateAStubbornStochasticObstacle() 随机生成一个不可消除的障碍物, 这个随机的坐标的y 坐标不小于5

java.awt.Color getFullLineColor() 得到满行的颜色

java.awt.Color getGriddingColor() 得到网格的颜色

java.awt.Color getObstacleColor() 得到障碍物的颜色

java.awt.Color getStubbornObstacleColor() 得到不可消除的障碍物的颜色

void init() 初始化,将会调用clear() 方法

boolean isBlank(int x, int y) 指定位置是否是空白

boolean isColorfulSupport() 是否支持彩色显示

boolean isDrawGridding() 是否画网格

boolean isFull() 容器是否放满了(是否还能接受图形)

boolean isMoveable(Shape shape, int action) 根据图形的动作,判断是否会碰到障碍物或不可消除的障碍物, 或是否会超出边界,

boolean isObstacle(int x, int y) 指定位置是否是障碍物

boolean isStubbornObstacle(int x, int y) 指定位置是否是不可除的障碍物

相关文档
最新文档