在夏树鸽掉的这几个月时间, 也不完全是在忙课设, 大部分时间都在上网课, 花在这个课设题目的时间上还挺少。这次的小组课设游戏主题是“北斗神拳”, 开工时间大概是在上周三, 截止到周五下午七点左右吧, 虽然很简单, 但是还是在博客这边留个纪念, 我的大一生活呀。
游戏介绍及演示
这大概是一个有"北斗神拳"的背景, 需要去击败野怪和Boss拯救世界的游戏。
玩家通过操作键盘的A和D来实现人物的前进和后退, W跳跃, S下蹲,J和K分别是两套出拳和出腿的连招。
第一关的野怪一开始会处于闲逛模式,当玩家靠近后才会跟随玩家,对玩家造成攻击;玩家攻击野怪时会有一个击退效果。
第二关的Boss自然就是追着玩家打啦。
游戏的解说版视频已经上传到A站了:https://www.acfun.cn/v/ac16283740, 时间仓促大概也就只做了一分钟的游戏内容,感谢小组成员“弗兰克”的解说。
工程部分
- ntkgdi.h: 针对游戏需求编写的方便调用GDI的绘图库, 可以实现无刷新贴图、绘制形状、输出文字
- game.h: 游戏的主要逻辑部分,游戏内人物与野怪的运动及状态
- sound.h: 游戏的音乐部分, 用来调用函数播放游戏的背景音乐
- story.h: 游戏的剧情显示, 序幕以及通关、失败的剧情
之前在博客写了一些关于GDI使用的教程, 那么这个游戏就相当于是使用的实战了吧, 还额外加了些干货。
游戏逻辑部分的话, 跳跃以及对敌人的击退都是通过设置一个x或者y方向的速度实现的, 并有一些加速度的参数进行制约, 是参考了网上的魂斗罗的源代码想到的; 对于野怪AI的话有闲逛和攻击两种模式; Boss的AI设置是先靠近玩家, 通过随机数的概率决定后退躲避、站立、攻击玩家的动作。
游戏的工程代码已经上传到Github了:https://github.com/natukicc/C-Hokutonokenn,整个小组统一使用的IDE是vs2010。
最后
感谢小组成员大家的课设这几天的付出吧,内容来自Jay、Frank和Bart三个人组成的光宗耀组?
至此,C语言课程设计Ⅱ圆满结束。
(完)