# 基于C语言制作的超级玛丽小游戏
## 文档开头
## 1 设计目标
《超级玛丽》是一代人的童年经典游戏,其易于上手的操作和丰富的关卡元素让大家津津乐道,我们组计划用一个小狐狸素材包,制作一个《超级狐狸》,通过一定程度的模仿、复刻来致敬这个经典的游戏。
## 2 概要设计
### 2.1 功能实现
该游戏是 2d 的闯关游戏,其实现的是让玩家操控角色(小狐狸)在地图上进行移动、跳跃,然后收集物品和消灭敌人。主要要实现的功能有:
(1)小狐狸的移动和跳跃
(2)敌人的移动
(3)收集物品时计分
(4)暂停游戏,期间能更改游戏设置或退出游戏
(5)小狐狸进行一些动作或触发一些事件时,加入音效。
### 2.2 功能模块图
![](https://www.writebug.com/myres/static/uploads/2022/5/22/4194935190f0b59327ae0baa8050801d.writebug)
## 3 详细设计
### 3.1 类图
![](https://www.writebug.com/myres/static/uploads/2022/5/22/e2d783acff91c152432d8c1113b2c26c.writebug)
图中各个类的说明如下:
#### 3.1.1 Scroll:实现地图背景的左右滚动
- left:确定左边界
- right:确定右边界
- distance:左右边界之间的距离
- Start():在游戏开始时获取边界和距离
- Update():在游戏运行过程中更新左右边界的坐标,达到背景左右平移的效果。
#### 3.1.2 Shift:实现地图背景的上下滚动
- up:确定上边界
- down:确定下边界
- distance:上下边界之间的距离
- Start():在游戏开始时获取边界和距离
- Update():在游戏运行过程中更新上下边界的坐标,达到背景上下平移的效果。
#### 3.1.3 PlayerControllor:操作人物
- speed:速度
- jumpForce:跳跃力度
- isGround:是否在地面
- isCroch:是否趴下
- isHurt:是否受伤
- jumpCount:跳跃次数,实现二段跳
- cherry:收集的樱桃数目
- Movement():实现小狐狸移动的函数。
- Jump():实现小狐狸跳跃的函数。
- SwitchAnim():切换小狐狸动画表现的函数。
- OnTriggerEnter2D():判断小狐狸与其他触发器的碰撞,基于此实现收集物品。
- OnCollisionEnter2D():判断小狐狸与其他碰撞器的碰撞,基于此实现与敌人战斗。
- Restart():小狐狸死后游戏重置。
#### 3.1.4 SceneManeger:实现场景(关卡)切换
- Restart():游戏重置,回到主菜单。
- Next():下一关。
- Exit():退出游戏。
#### 3.1.5 Audio:播放背景音乐和音效。
- clip:获取播放的音乐片段。
- audioSouece:音乐播放器。
- Play():播放音乐。
- Destory():停止播放。
#### 3.1.5 Enemy:怪物类
- anim:获取怪物的动画。
- Start():开始游戏时播放怪物的动画。
- Explosion():被消灭时爆炸。
- Death():被消灭后销毁对象。
#### 3.1.6 Enemy_Frog:青蛙
- speed:移动速度
- jumpForce:跳跃力度
- Movement():实现青蛙边移动边跳跃的函数。
- AnimSwitch():切换青蛙的动画效果。
#### 3.1.7 Enemy_Eagle:老鹰
- speed:移动速度
- Movement():老鹰移动。
#### 3.1.8 Enemy_Eagle:猫
- speed:移动速度
- Movement():猫移动。
#### 3.1.9 Item:物品类
- anim:获取物品的动画
- Play():游戏开始时播放物品的动画(摇晃或闪烁)。
- Destory():被获取后销毁对象。
#### 3.1.10 Cherry:樱桃
- score:樱桃的分数
- Increase(int):增加分数。
#### 3.1.10 Gem:宝石
- score:宝石的分数
- Increase(int):增加分数。
### 3.2 活动图
![](https://www.writebug.com/myres/static/uploads/2022/5/22/c45ea5d8252f4db8fcd6a2737e950db5.writebug)
### 3.3 UI 设计
主菜单 UI:
![](https://www.writebug.com/myres/static/uploads/2022/5/22/56349ba8f0d89067c5a352a604195688.writebug)
介绍:
- 开始:点击后开始游戏,进入第一关的场景。
- 结束:点击后退出游戏
游戏内 UI:
![](https://www.writebug.com/myres/static/uploads/2022/5/22/f6199036ad1aa1fea8e4bc7050352536.writebug)
介绍:
- 左上角记录收集到的樱桃和宝石数目
- || :暂停按钮,点击后游戏暂停,然后弹出返回主菜单或是继续游戏的窗口
- X :退出按钮,退出游戏。
### 3.4 数据库设计
本游戏不需要数据库。
没有合适的资源?快使用搜索试试~ 我知道了~
基于C Sharp语言和Unity软件制作的超级玛丽小游戏.zip
共1668个文件
meta:872个
asset:436个
png:235个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 9 下载量 50 浏览量
2022-06-20
14:22:22
上传
评论 2
收藏 2.99MB ZIP 举报
温馨提示
资源包含文件:设计报告word+项目源码 该游戏是 2d 的闯关游戏,其实现的是让玩家操控角色(小狐狸)在地图上进行移动、跳跃,然后收集物品和消灭敌人。主要要实现的功能有: (1)小狐狸的移动和跳跃 (2)敌人的移动 (3)收集物品时计分 (4)暂停游戏,期间能更改游戏设置或退出游戏 (5)小狐狸进行一些动作或触发一些事件时,加入音效。 详细介绍参考:https://blog.csdn.net/newlw/article/details/124913898
资源推荐
资源详情
资源评论
收起资源包目录
基于C Sharp语言和Unity软件制作的超级玛丽小游戏.zip (1668个子文件)
abc 13B
Cherry.anim 3KB
Death2.anim 3KB
Death.anim 3KB
Run.anim 2KB
Gem.anim 2KB
Frog.anim 2KB
Eagle.anim 2KB
Idle.anim 2KB
Crouch.anim 2KB
Hurt.anim 2KB
FrogDrop.anim 2KB
FrogJump.anim 2KB
Jump.anim 2KB
Fall.anim 2KB
tileset-sliced_118.asset 781B
tileset-sliced_108.asset 781B
tileset-sliced_106.asset 781B
tileset-sliced_117.asset 781B
tileset-sliced_104.asset 781B
tileset-sliced_107.asset 781B
tileset-sliced_112.asset 781B
tileset-sliced_125.asset 781B
tileset-sliced_122.asset 781B
tileset-sliced_110.asset 781B
tileset-sliced_114.asset 781B
tileset-sliced_127.asset 781B
tileset-sliced_100.asset 781B
tileset-sliced_101.asset 781B
tileset-sliced_103.asset 781B
tileset-sliced_119.asset 781B
tileset-sliced_124.asset 781B
tileset-sliced_126.asset 781B
tileset-sliced_121.asset 781B
tileset-sliced_116.asset 781B
tileset-sliced_109.asset 781B
tileset-sliced_120.asset 781B
tileset-sliced_105.asset 781B
tileset-sliced_102.asset 781B
tileset-sliced_115.asset 781B
tileset-sliced_111.asset 781B
tileset-sliced_123.asset 781B
tileset-sliced_113.asset 781B
tileset-sliced_53.asset 780B
tileset-sliced_27.asset 780B
tileset-sliced_41.asset 780B
tileset-sliced_74.asset 780B
tileset-sliced_61.asset 780B
tileset-sliced_55.asset 780B
tileset-sliced_16.asset 780B
tileset-sliced_97.asset 780B
tileset-sliced_96.asset 780B
tileset-sliced_24.asset 780B
tileset-sliced_45.asset 780B
tileset-sliced_30.asset 780B
tileset-sliced_44.asset 780B
tileset-sliced_48.asset 780B
tileset-sliced_40.asset 780B
tileset-sliced_73.asset 780B
tileset-sliced_86.asset 780B
tileset-sliced_49.asset 780B
tileset-sliced_63.asset 780B
tileset-sliced_35.asset 780B
tileset-sliced_46.asset 780B
tileset-sliced_77.asset 780B
tileset-sliced_36.asset 780B
tileset-sliced_75.asset 780B
tileset-sliced_57.asset 780B
tileset-sliced_54.asset 780B
tileset-sliced_33.asset 780B
tileset-sliced_84.asset 780B
tileset-sliced_94.asset 780B
tileset-sliced_79.asset 780B
tileset-sliced_52.asset 780B
tileset-sliced_10.asset 780B
tileset-sliced_47.asset 780B
tileset-sliced_15.asset 780B
tileset-sliced_98.asset 780B
tileset-sliced_88.asset 780B
tileset-sliced_62.asset 780B
tileset-sliced_85.asset 780B
tileset-sliced_38.asset 780B
tileset-sliced_70.asset 780B
tileset-sliced_31.asset 780B
tileset-sliced_92.asset 780B
tileset-sliced_42.asset 780B
tileset-sliced_12.asset 780B
tileset-sliced_78.asset 780B
tileset-sliced_56.asset 780B
tileset-sliced_37.asset 780B
tileset-sliced_22.asset 780B
tileset-sliced_68.asset 780B
tileset-sliced_21.asset 780B
tileset-sliced_39.asset 780B
tileset-sliced_60.asset 780B
tileset-sliced_71.asset 780B
tileset-sliced_14.asset 780B
tileset-sliced_81.asset 780B
tileset-sliced_11.asset 780B
tileset-sliced_43.asset 780B
共 1668 条
- 1
- 2
- 3
- 4
- 5
- 6
- 17
shejizuopin
- 粉丝: 9513
- 资源: 1288
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页