欢迎来到天天文库
浏览记录
ID:47760753
大小:392.56 KB
页数:49页
时间:2020-01-16
《俄罗斯方块游戏(C语言)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、俄罗斯方块游戏(C语言)摘要俄罗斯方块是一款风靡全球的掌上游戏机和PC机游戏,它造成的轰动与创造的经济价值可以说是游戏史上的一件大事。它由俄罗斯人阿列克谢·帕基特诺夫发明,故得此名。俄罗斯方块的基本规则是移动、旋转和摆放游戏自动输出的各种方块,使之排列成完整的一行或多行并且消除得分。它看似简单却变化无穷,俄罗斯方块上手极其简单,但是要熟练地掌握其中的操作与摆放技巧,难度却不低。作为家喻户晓老少皆宜的大众游戏,其普及程度可以说是史上任何一款游戏都无法相比的。相信大多数人都还记得为它痴迷得茶不思饭不想的
2、那个俄罗斯方块时代。由于俄罗斯方块具有的数学性、动态性与知名度,也经常拿来作为游戏程序设计的练习题材。关键词:俄罗斯方块开发游戏编程程序开发AbstractsTetrisisafashionableglobalhandheldgameandPCgames,itcausedstirandcreatetheeconomicvalueofgaminghistoryisagreatevent.ItisinventedbytheRussianAlexeyPazhitnov.Thebasicruleoftetr
3、isismoving,rotationandputtheGameoutputsquares,Itarrangedinacompleteroworacompletemultirow,eliminateandscore.ItseemssimplebutFullofchange.Ashouseholdthemassgamesallages,Itspopularityisanygamesthatcannotbecompared.Tetrisoftenusedforgameprogrammingpractic
4、esubject.IIKey:Tetrisdevelopment,Gameprogramming,programdevelopment目录1.前言12.功能描述23.总体设计33.1功能模块设计33.1.1游戏执行主流程33.1.2游戏方块预览33.1.3游戏方块控制53.1.4游戏显示更新63.1.5游戏速度分数更新73.1.6游戏帮助73.2数据结构设计73.2.1游戏底板BOARD结构体73.2.2游戏方块SHAPE结构体73.2.3SHAPE结构数组83.3函数功能描述114.程序实现124
5、.1源码分析124.1.1程序预处理124.1.2主函数main()164.1.3初始化界面214.1.4时钟中断处理224.1.5成绩、速度及帮助的显示24II4.1.6满行处理254.1.7游戏方块的显示和清除294.1.8游戏方块操作判断处理344.2运行结果404.2.1游戏初始状态404.2.2游戏进行状态415.结论42致谢43参考文献44II1.前言俄罗斯方块(Tetris)原本是前苏联科学家阿列克谢·帕吉特洛夫在1984年6月利用空闲时间所编写的游戏程序,据说游戏的作者最喜欢网球(T
6、ennis)运动,于是,它把来源于希腊语的tetra(意为“四”)与其结合,造了“tetris”一词,之后开始提供授权给各个游戏公司,造成各平台上俄罗斯游戏软件大量发行的现象。俄罗斯方块由于上手简单、老少皆宜,从而成为了家喻户晓款风靡全球的一款电视游戏机和掌上游戏机游戏。C语言则是目前国际上比较流行的计算机高级编程语言之一,因其简洁、使用方便且具备强大的功能而受到编程人员的普遍青睐。它既适合作为系统描述语言,也可以用来编写系统软件,还可以来编写应用软件。用C语言来编写俄罗斯方块这个游戏有较大优势:C
7、语言具有各种各样的数据类型,并引入了指针概念,使得程序效率更高;C语言还包含很广泛的运算符;另外C语言具有强大的图形功能,支持多种显示器和驱动器,而且计算功能、逻辑判断能力也比较强大。选择此论文题是旨在训练基本编程能力和游戏开发技巧,熟悉C语言图形模式下的编程。本程序中涉及结构体、数组、时钟中断及绘图等方面的知识。通过本程序的训练,能对C语言有一个更深刻的了解,掌握俄罗斯方块游戏开发的基本原理,为将来开发出高质量的游戏软件打下坚实的基础。452.功能描述如图2.1所示,本游戏主要实现一下几种功能:图
8、2.1俄罗斯方块游戏功能描述图(1)游戏方块预览功能。在游戏过程中,当在游戏底板中出现一个游戏方块时,必须在游戏方块预览区域中出现下一个游戏方块,这样有利于游戏玩家控制游戏的策略。由于在此游戏中存在19种不同的游戏方块,所以在游戏方块预览区域中需要显示随机生成的游戏方块。(2)游戏方块控制功能。通过各种条件的判断,实现对游戏方块的左移、右移、快速下移、自由下落、旋转功能,以及行满消除行的功能。45(1)游戏显示更新功能。当游戏方块左右移动、下落、旋转时,要清除先前的游
此文档下载收益归作者所有