个人作品

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下

超级蘑菇2(模拟 FC 游戏:超级玛丽)(by 木子念念) 铜牌收录

开发环境:

  • Windows XP
  • Visual Studio 2008
  • EasyX 2013霜降版

运行游戏:

  • 进入 Mario2,双击 maliao.exe 运行即可
  • 或进入 Mario2,用 vs2008 运行 maliao.sln

说明:这次的“超级蘑菇2”的代码除了界面部分,其它部分完全重新写了一遍,所以程序和算法基本和上个版本的程序不一样。上个版本把所有的代码都写在了一个类中,之后才发现那样写好搞笑,完全背离了面向对象的思想。这个版本写了几个类,但其实我现在看也觉得好搞笑,也没有把面向对象的思想突出出来(实力有限只能这样了),这也是我对这个程序最不满意的的方。但是相比之前的那个版本,这个版本还是比以前那个好很多。。。。

着重介绍一下我觉得“超级蘑菇2”的最大的亮点:之前我玩蘑菇1时发现它的游戏手感和经典游戏“超级玛丽”的手感差别很大。之后发现最大的原因就是,“超级玛丽”中的主角有一个重要的性质,那就是惯性!!所以在“超级蘑菇2”中,我也为游戏主角加上了惯性。至于效果如何,欢迎大家下载测试。

介绍下程序的整体结构:我把游戏分为 3 层。控制层、角色层和背景层。所以程序主要有 3 个类。control 类:主要用于处理玩家按键和游戏界面的显示。role 类:主要用了处理游戏主角的相关动作。scene 类:主要用于处理背景、地图的生成和移动等。。。为了更方便的了解游戏的大概框架,大家可参考 main.cpp 文件中的内容。。。。另外游戏中的一些常见属性可在 mydefine.h 中找到。所以如果大家感兴趣的话,可以改一改里面的属性。比如把游戏主角的最大速度改大一些,或者把主角跳跃的高度改高一些。

游戏运行截图如下:

完整源代码、图片及编译后的可执行文件请【点击这里下载】

作者:木子念念
个人主页:https://www.baidu.com/p/taozi24

评论 (3) -

  • 有一说一挺强的,我去年就是用1.0版本然后自己改了些(包括地图,任务模型,重载方法等等),然后成功的完成了期末设计获得全班最高的分(ง •_•)ง
    • 我年底也改1.0版本的代码了,后来又想用java写出来,结果写了一半写不下去了,java的swing键盘事件跟c++的事件区别还是挺大的

添加评论