2021级C言语游戏大作业

分享21级同窗大一上学期用C言语(及少量C++完成的涂鸦腾跃游戏。因为同窗们刚学了三个月的编程,完成还不够完善,工程代码、图片音乐素材也可作文题材以从包括百度网盘下载:

提取码:fuj3

一、部分设计思绪

察看原版游戏,得出游戏的完成次要依托扮演与空中之间各自适时地的挪动的得出结论,发生腾跃的好效果。此基础上,逐步添加游戏功用。由此得出游戏大要部分设计思绪如下所示:

1.1扮演最简单跳跃

完成游戏扮演在原地的腾跃和空中随机等距的天短片题材生,此时扮演难以以及控制,空中也无法站立。

1.2扮演在各个空中上的腾跃

完成空中一直不移动,经过偏向键控制角色在各个空中上跳动。

1.3扮演与地面的交迭挪动

扮演腾跃到画面某一高度且其速度不为0时,将角色的速率转移到空中上,让空中做匀减速运动,发生腾跃的觉得。此时空中难以循坏天生。

1.4无尽腾跃

外地面的坐标大于画面高度时,使该地面在画面最上方再次天生,完成无尽腾跃。

2.1播放音乐

添加音乐播放函数,小说题材当角色踩到空中上时播放一次。

2.2添加空中品种,殒命判别

添加易碎地板学生题材,挪动地板。易碎地板,挪动地板运用随机数生成,并坚持种种类地板间绝对比例稳定。挪动地板在画面大约匀速来回移动。易碎地板决裂时,播放音乐,将该地板彩色图像改为碎裂后图像,并在原有一切地板移速根底上加速下落。此时地板着落运用的使原来的坐标,再次天生时会与其他地板重合;当扮演坐标大于画面高度时判别其为死亡,并播放殒命音作文题材乐。

2.3记分,殒命后的不断完善

外地面发生挪动且速率不为负时,将地面的位移转化为分数,并输出;殒命后重小说题材开一个画瀑布题材面,使得扮演从最高出视频题材下落,表现其从高处下落的觉得,并播放殒命音乐。

2.4碎裂空中的准确天生

当踩到易碎地面时,将破碎地面的形态(地位,坐标)通报给新的变量,新地面速度在原有速率上累加,且瀑布题材减速度大于原有减速度;改动视频题材该地面的形态为已破碎,使得批量绘制空中时不绘制该地面,该地面额调进用函数绘制;且腾跃时如踩到该位置,不会跳跃。当该地面原有坐标大于画面高度时,正常地再次随机天生。

3.1界面的添加

3.1.1添加初始界面

运转游戏后启动。画面右边为一角色,一地板上正常跳跃,该扮演不行以及控制。画面上方为游戏标题。画面两头为两行文字,可经过输出对应数字开端游戏,或退出游戏。画面下方为两行字,提醒玩家按“Esc键暂停,按“←”和“或“AD以及控制扮演挪动。

3.1.2添加暂停后界面

按“Esc键启动,游戏暂停后。画面上方为显示暂停的那些文字。画面两头为两行文字,可经过输出对应数字持续游戏,或退出游戏。画面下方为两行字,提醒玩家按“Esc键暂停,按“←”和“或“AD以及控制扮演挪动。

3.1.3添加殒命界面

扮演判别殒命后启动。画面上方为“gameover画面两头为两行文字,可经过输出对应数字再次开端游戏,或退出游戏。画面下方为两行字,输入最高分与当前得分。经过读档功用读取最高分,如以后分数高于最高分,则更新最高分。

3.2添加弹簧

当角色碰到弹簧时,绘制弹起后的弹簧的彩色图像,并播放音乐,添加扮演反弹的速率。

3.3游戏难度的调整后

改动种种空中呈现的机率,当分数低时以正常地空中为主,当分数高后,易碎地板与移动地板的机率持续上升。且挪动地板挪动速率随分数变化学生题材,分数越高,挪动速率越快。

二、领会与总结

本次课程部分设计继续工夫长,代码量大,关于短片题材刚退学一个学期的先生而言有着不小的应战,经过与同组同学的少量相同与配合起劲后,较好的完成4了期末游短片题材戏大作业的义务。

面临的第一个难点在于选题,一个选题的适宜与否直接把决议了将来一个月的起劲偏向与可能碰到难题。与你的同伴相继挑选出了多个题材,最初以动画过于庞大,物理引擎搭建难度大,过于血腥等理由排除了大部分的选题,最初分歧决议了制造“视频题材涂鸦腾跃”这款游戏。这款游戏庞大度,制造难度适中,合适我现在程度,又具有一定的应战。

碰到第二个难点在于决议游戏分步完成的具体步骤。开端时因为也没合理地的计划,招致我组开始时花了很长时间,写了许多代码,最后却意外发现一直也没本质性的打破。厥后经过对游戏逐步的影视题材剖析,简化,逐步初步确立了游戏的其开发道影视题材路,最后完成了从几十行代码逐渐到数百行的积聚与突破。

碰到第三个难点在于游戏中较难开发点的处置。当我组将根底功用完成当前,因为对后续难点,拓展的处置不妥,再加之生涯其他事的影响,四季题材组的其开发在半途障碍了很长时间。当意外发现这个成绩后,组决议离开其开发,各瀑布题材自写本人善于局部的代码,并对本人所写代码负责,再将各自代码兼并。这个决议大大放慢了其开发速率,也提高了组员的努力性。

还碰到一个难点在于分组其开发时的协作成绩。每一人都有自己的代码誊写习气,变量为命名习气,分组其开发时能够会有冲突。协作中期,也发作过组员写了数个小时代码,后果意外发现写的代码完成的功用是一样的这样的的成绩。为处理这些成绩,组增加了正文的誊写量,优化了变量的为命名,将自己的代码花样尽可能多的标准;前中期其开发时,一团体写代码时告诉此外一个人,以只管防止无用功的呈现。

除开我作为一个组员所面对的应战,作为一个编程的先生,其开发游戏时,碰面对许多本人所不熟悉的成绩,如文件的读与写,音乐的播放,面临工具编程的头脑等。这一个月的课程部分设计进程中,网上查阅了许多材料,这些课外去学习到相关的知识,大大进步了本人的才能。同时为了不给同组的同窗带来不用要的费事,也在不作文题材时标准本人的代码誊写,这样的做也使得我也可以在将来的去学习中防止许多不用要的费事,更提高了本人的充满自信心。

这一次课程部分设计中我学到许多相关的知识,最后的游戏作品也顺利的定期完成4了置信我组的每一团体都受益匪四季题材浅。

原文链接:https://blog.csdn.net/weixin_49630241/article/details/122941465?ops_request_misc=%257B%2522request%255Fid%2522%253A %252216学生题材6856496116782391886211%2522%252C%2522scm%2522%253A %252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166856496116782391886211&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-21-122941465-null-null.nonecase&utm_term=%E9%A 2%98%E6%9D%90

未经允许不得转载:题材网 » 2021级C言语游戏大作业

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏