目录
摘要 1
第一部分
一.概述及开发工具简介 2
二、游戏的设计思路 2
三、游戏各个功能模块介绍 6
1、通用游戏模板 6
2、开始界面设计 6
3、帮助界面设计 13
4、失败界面设计 16
5、退出界面设计 17
6、胜利界面设计 19
四、关键技术赏析 21
1、字模调用技术 21
2、运动轨迹擦除技术 21
3、游戏地图绘制技术 22
4、键盘控制技术 23
5、无敌模式控制 24
第二部分
总结 26
第三部分
致谢 28
参考文献 29
摘要
本次实训中着重练习了如果对程序设计进行一个整体的把握,从各个方面来考虑游戏的架构,为了构建一个吃豆游戏函数库,使用的函数数量达到50个左右,函数类别包括,图形函数、动画函数、图形文件调用函数、中文显示函数、文字处理函数、计算机基本功能调用函数、界面函数等。
在本文中介绍了C语言自身提供的绘图函数,利用C语言绘图函数制作简单的动画效果,在动画的基础上实现简单的图形游戏,以及在图形中如何实现中文,通过这些函数库实现了这个吃豆游戏,也通过这个简单的游戏引导了一个设计小型游戏的思想
本文就是给大家介绍了一套最简单的模板,无论你要写怎样的游戏,都将它分成、动画、响应、运算和循环四部分,外加一个初始设置。只要记住C语言流程图,套用之后再一步一步改写,一个游戏就出来了。怎么样,解牛的顺序知道了吧!
第一部分
一、概述及开发工具简介
常用的编译工具有TURBO C 2.0 和WIN-TC 1.91
TURBO C 2.0是经典的C语言编程开发工具,小巧实用,学习C语言课程必备。
Borland公司在1981年推出C语言程序设计集成开发环境“Turbo C 2.0”,由于其实用稳定的性能,一直长期工作应用在社会不同领域,得到社会各界的广泛认同。
Borland公司在1981年推出C语言程序设计集成开发环境“Turbo C 2.0”,由于其实用稳定的性能,一直长期工作应用在社会不同领域,得到社会各界的广泛认同。
但是TURBO C 2.0 也有其缺点,它的界面似乎未能赶上发展的潮流仍停步在DOS时代,那蓝的经典界面也许会让你感觉到不友好!
而WIN-TC的出现改变了这些让你苦恼的事。
WIN-TC是一个TC2 WINDOWS平台开发工具。由c语言游戏编程题经典100例 "TC256专题站"(tc256.st) 与 "唯C世界"(www.vcok) 联合发布。该软件使用TC2为内核,提供WINDOWS平台的开发界面,因此也就支持WINDOWS平台下的功能,例如剪切、复制、粘贴和查替换等。而且在功能上也有它的独特特例如语法加亮、C内嵌汇编、自定义扩展库的支持等。并提供一组相关辅助工具令你在编程过程中更加游刃有余,如虎添翼。
我们所使用的就是WIN-TC!
二、游戏的设计思路
游戏导读:
吃豆游戏的规则是:红的豆子代表自己,你需要把画面内所有黄的小豆豆都吃掉,但又不能掉进陷阱,而同时又有大的绿敌人追杀你,如果你实在逃不出敌人的魔掌,你可以吃白的能量球,那么你就会在一定时间内处于无敌模式,可以吃掉陷阱和敌人!如果全部黄的小豆豆都吃掉了,那么恭喜你,您过关了!
游戏目的:
通过整个制作游戏的功能来巩固C语言的理论知识!
设计思路:
游戏创意--> 游戏规划 --> 程序实现 -游戏调试;
游戏创意:
《吃豆》游戏,真可谓是一款经典到家的迷你游戏了,记得当年小时候在红白机上,和小伙伴们一起通宵达旦地演练通关那种热火朝天的劲头,呵呵!今天有机会能在pc上自己亲手制作这款经典的游戏,当然也要力求逼真,要不也对不起广大的吃豆Fans! 创意来源:经典的FC吃豆游戏!
游戏规划:
由于我也是C语言的初学者,水平有限不可能实现FC那经典吃豆游戏中的所有功能,所以我只选择了功能其中的一部分。
我的规划很简单,就是让这个游戏用很简洁但又不失原味的方式表达出来。
此外为了尽量简化游戏编写难度我还对游戏作了以下调整:
1.不实现吃豆人的张嘴动作;
2.不实现能量球的作用时间是由时间控制的
3.不实现额外奖励加分
4.不实现奖励加人
5.不提供任意终止游戏的功能,必须将游戏进行到底
这样一来,就是游戏设计的难度大大的简化了,对游戏的编写进行一个简单的、不全面的分析之后,我列出了以下几个难点:
1.如何绘制地图
2.吃豆人的键盘控制问题
3.敌人的随机移动控制
4.移动中如何擦除图象
5.游戏循环出口的设定
6.无敌模式时的状态
针对以上的几个难点,我在思路中给出了一点解决方案;
对于如何绘制地图,我想可以利用二维数组来实现,通过判断数组中的各个变量来判断此处应该画什么。
如下图所示。
图2-1 地图变量设置
这里 2代表墙壁,0代表黄的小豆豆,5代表红的陷阱,1代表可以移动地方,3代表自己,4代表敌人
那么这样就可以解决绘制地图问题了!
1. 对于吃豆人的键盘控制问题 这里我们控制移动是通过坐标的,那么我们控制移动只要控制坐标就可以了,可以先判断是按下了哪个方向然后对应着计算出不同方向的坐标变化,然后判断移动之后的情况再从新计算坐标就可以了!
2. 对于敌人的随机移动控制问题 这里要比上面的吃豆人的控制要复杂很多,但是原理还是一样的,只不过要多处理一下判断是敌人和自己是否靠近,如果靠近的话那么就要立即靠上去吃掉。另外的就是如何开始敌人的移动呢?我将敌人的移动循环的条件设置为当不按下键盘的时候,那么敌人就会实现一直再动的效果了。
3. 对于移动中如何擦除图象的问题 这里我利用了实训第一个项目内的曲柄滑块擦除图象的原理,通过一个子函数来专门实现画路过图象的功能!
4. 对于游戏循环出口的设定 这里我分析了一下游戏的逻辑,即
开始游戏之后如果胜利则进入胜利界面,失败即进入失败界面,如果所有生命全部死光那么则进入退出界面。再每个界面又可以选择继续还是退出。
5. 对于无敌模式时的状态 这里和擦出图象有很大的联系,只要在擦出图象的函数内添加一
个判断是否是无敌状态并修改一下画图模式就可以实现了
到这里问题一下子变简单了,只要画好几个相应的界面似乎就要大功告成啦!
在规划阶段,我们不仅将游戏创意明确是为了程序编写要求和编写计划,同时对在程序编写前遇到的难点进行分析和提出大致解决方案,这些方案对程序编写是极为重要的,因为在程序设计阶段将变成具体的算法、语句和表达式。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论