Ultimate Chicken Horse GameProject第二次迭代成果文档
基于上一次的迭代中的数据结构我们补充了UML图、用例图及状态图。
用例图:

选择游戏地图:玩家可以在本地游戏界面将角色移动到地图门口并按下E进入地图。
进行游戏用例:
选择并摆放道具: 每个玩家可以在对战开始时从道具库中选择一个道具摆放至游戏地图内。
控制角色:玩家可以通过键盘操作人物移动,包括左右走动,跑步, 跳跃,墙壁下滑,蹬墙跳。
角色死亡: 当玩家碰撞到造成伤害的陷阱或掉出地图边界时,角色死亡。
抵达终点: 当玩家碰撞到终点旗帜时, 角色胜利。
选择游戏模式用例:
本地游戏:玩家可以在开始界面选择本地游戏模式,选择后,对战将轮流进行。
联网对战:玩家可以在开始界面选择联网对战模式,选择后,对战将一同进行。
状态图:
此处的状态图并非是某一个具体类的状态图,因为Unity引擎进行了相应的封装,我们无法看到具体运行游戏主循环的实际的类以及内部运行的顺序,所以此处的状态图是从玩家的角度出发,按照游戏对战時的流程画出的。

类图:
由于我们使用Unity开发,所以使用了多个Unity内建类,在此只详细列出自定义类的详细成员和类型,而内建类则省略。(内建类包括但不限GameObject,Rigidbody2D,Collider2D,MonoBehaviour,Vector2)

Movement:用于操控角色移动和更新角色状态
AnimationScript:用于更新角色动画
Collision:用于判断角色是否在地面和靠墙
End:实现角色的轮流操作功能
BetterJumping:用于控制角色跳跃时的高度和下落速度
MCtrl:实现道具拖动功能
Localgame_menu:实现开始界面的选项功能
Fan_code: 实现平台运动功能
Door: 实现选择地图时的文字提示
Door_enter: 实现选择地图后移动至对应关卡
以下为第二次迭代成果
一、UI及功能设计
1、游戏开始界面
开始界面有三个按钮,分别对应三个功能,本地游戏、联网对战和退出游戏。(目前未能实现联网对战功能)。

2、本地游戏界面
本界面的设计是为了让玩家先熟悉角色的操控。
玩家可通过操控键盘上的A、D、空格按键操控角色,并操控角色移动到地图左边的红色的门上按下E进入游戏。

3、设置道具界面
玩家进入游戏后跳转至道具库界面,操控光标拖动道具库中的道具到地图上即可设置道具。

二、游戏功能设计
1、角色控制
玩家通过操控键盘上的A、D和空格按键使角色移动,A为左移动,D为右移动,空格键为跳跃。
2、道具选择(未实现)
玩家通过拖动光标选择道具库中的道具。
3、游戏终点
角色抵达终点后,开始下一个玩家对角色的控制。

4、玩家切换功能
在上一个玩家死亡后,自动切换下一个玩家操控的角色。

5、角色死亡功能
当角色掉出地图边界或触碰到伤害型道具时,判定角色死亡。
三、游戏道具说明
1、增益型道具
玩家拾取此道具后可以获得额外能力:三段跳。

2、伤害型道具
玩家触碰到此类道具时角色死亡。

3、地图模块类道具
玩家可以设置此类道具在地图上,此类道具在回合内永久存在,玩家可以通过此类道具进行移动。
--可移动平台
可在指定方向来回移动。

--不可移动平台
玩家一旦设置此道具后,在此回合内道具的坐标不变,此道具提供如地面一样的效果。

四、小组成员在本次迭代中的贡献
| 成员 | 贡献 |
| 邱志明 | 补全四个角色、实现本地轮流操作和设计文档 |
| 李承哲 | 道具功能设计、第二次迭代展示演讲 |
| 吴钧诚 | 实现本地游戏界面、游戏开始界面设计地图并实现 |
| 冯英炽 | 验收成果、更新博客、设计并完成PPT |
| 林裕权 | 道具库界面设计,实现道具放置功能 |
Ultimate Chicken Horse GameProject第二次迭代成果文档的更多相关文章
- Ultimate Chicken Horse GameProject第三次迭代成果文档
经过三次迭代我们实现了游戏的基本功能 项目文档的github链接:https://github.com/k6tok12355/Ultimate-Chicken-Horse 下面是我们在第一次迭代中设定 ...
- Ultimate Chicken Horse GameProject需求规格报告书
团队名称:超级鸡马 成员: 身份 姓名 分工 组长 邱志明 主程序设计 组员 吴钧诚 界面设计 组员 李承哲 陷阱设计 组员 冯英炽 客户,参与测试和需求分析工作 组员 林裕权 素材确定 修 ...
- 团队第二周:SRS文档
项目计划: 对于这次的实验,我们组计划进行一个图书管理系统的项目书写,在第一阶段,对该项目先进行一下规划,总结该项目的注意事项以及实验要求,并加以实施. 下面我先对我们项目的要求坐一下说明: 1定义五 ...
- wwnjld团队第二轮迭代成员分数
2014-01-05 第二轮迭代团队内成员分数如下(依据分数分配规则以及团队会议协商所得结果): 吴渊渊 23 汪仁贵 21.5 高小洲 19.5 聂建 22.5 吕家辉 23.5 程志 10
- wwnjld第二轮迭代测试报告
1.引言 1.1测试报告目的 被测试报告为wwnjld小组我们的时间管理软件的第二轮迭代所写的软件测试报告.在经过本小组大家不懈的努力之下,我们小组第二轮迭代的产品终于新鲜出炉了.这次测试小组的主要成 ...
- week12第二轮迭代任务分配forZ.XML
Z.XML第二轮迭代任务初步分配新鲜出炉,请关注! 以上便是任务分配列表,队员们会按照进度每天更改任务进度 当然,根据敏捷开发的方法,我们将在开发过程中根据情况迅速调整任务分配,以适应当时问题. Z- ...
- R自动数据收集第二章HTML笔记1(主要关于handler处理器函数和帮助文档所有示例)
本文知识点: 1潜在畸形页面使用htmlTreeParse函数 2startElement的用法 3闭包 4handler函数的命令和函数体主要写法 5节点的丢弃,取出,取出标签名称.属性.属 ...
- 第三篇——第二部分——第五文 配置SQL Server镜像——域环境SQL Server镜像日常维护
本文接上面两篇搭建镜像的文章: 第三篇--第二部分--第三文 配置SQL Server镜像--域环境:http://blog.csdn.net/dba_huangzj/article/details/ ...
- js仿百度文库文档上传页面的分类选择器_第二版
仿百度文库文档上传页面的多级联动分类选择器第二版,支持在一个页面同一时候使用多个分类选择器. 此版本号把HTML,CSS,以及图片都封装到"category.js"中.解决因文件路 ...
随机推荐
- nmap中文手册
译注该Nmap参考指南中文版由Fei Yang <fyang1024@gmail.com>和Lei Li<lilei_721@6611.org> 从英文版本翻译而来. 我们希望 ...
- c#DateTime与unix时间戳互相转换
public class UnixTimeUtil { /// <summary> /// 将dateTime格式转换为Unix时间戳 /// </summary> /// & ...
- ubuntu python 版本管理
ubuntu 命令行查看 python 目录 $ whereis python # 显示所有得到 python 目录 $ which python # 显示默认的 python 解释器目录 $ wh ...
- 《一起学mysql》2
事务 爸妈让往他们银行卡里转点儿钱,可是我这钱全在支付宝里,爸妈又没有支付宝,只能从支付宝里转给他 们了,假如转账过程中,支付宝扣款成功了,但是银行系统崩溃了,钱没转进去,这咋整?我的大洋就这样 ...
- 记录几篇PM文章
今日阅读了几篇关于 PM 的文章感觉还不错,整理.摘录于此: 1.[项目经理和产品经理:https://www.cnblogs.com/joylee/p/3541141.html] ——关于二者的异同 ...
- 八、Spring之深入理解声明式事务
Spring之深入理解声明式事务 何为事务? 事务就是把一系列的动作当成一个独立的工作单元,这些动作要么全部完成,要么全部不起作用. 事务的四个属性: 1.原子性(atomicity) 事务是原子性操 ...
- 【Zabbix】zabora批量部署
zabora简化批量部署 目的:简化部署zabora,批量监控数据库的常用指标 1 数据库用户赋权 上传cre_arp_monitor.sh,并且部署用户. [root@oradb ~]# chown ...
- Linux查找文件夹下包含某字符的所有文件
Linux grep 命令用于查找文件里符合条件的字符串.grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示 ...
- 一些 Java 和 Android 的参考资料
1. .net程序员转战android第三篇---登录模块之静态登录 2. .net程序员转战android第二篇---牛刀小试 3. .net程序员转战android第一篇---环境部署 4. 一些 ...
- QT+OpenGL(02)-- zlib库的编译
1.zlib库的下载 http://www.zlib.net/ zlib1211.zip 2.解压 3.进入 zlib1211\zlib-1.2.11\contrib\vstudio\vc14 目录 ...