基于上一次的迭代中的数据结构我们补充了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第二次迭代成果文档的更多相关文章

  1. Ultimate Chicken Horse GameProject第三次迭代成果文档

    经过三次迭代我们实现了游戏的基本功能 项目文档的github链接:https://github.com/k6tok12355/Ultimate-Chicken-Horse 下面是我们在第一次迭代中设定 ...

  2. Ultimate Chicken Horse GameProject需求规格报告书

    团队名称:超级鸡马 成员: 身份 姓名 分工 组长 邱志明  主程序设计 组员 吴钧诚  界面设计 组员 李承哲  陷阱设计 组员 冯英炽  客户,参与测试和需求分析工作 组员 林裕权  素材确定 修 ...

  3. 团队第二周:SRS文档

    项目计划: 对于这次的实验,我们组计划进行一个图书管理系统的项目书写,在第一阶段,对该项目先进行一下规划,总结该项目的注意事项以及实验要求,并加以实施. 下面我先对我们项目的要求坐一下说明: 1定义五 ...

  4. wwnjld团队第二轮迭代成员分数

    2014-01-05 第二轮迭代团队内成员分数如下(依据分数分配规则以及团队会议协商所得结果): 吴渊渊 23 汪仁贵 21.5 高小洲 19.5 聂建 22.5 吕家辉 23.5 程志 10

  5. wwnjld第二轮迭代测试报告

    1.引言 1.1测试报告目的 被测试报告为wwnjld小组我们的时间管理软件的第二轮迭代所写的软件测试报告.在经过本小组大家不懈的努力之下,我们小组第二轮迭代的产品终于新鲜出炉了.这次测试小组的主要成 ...

  6. week12第二轮迭代任务分配forZ.XML

    Z.XML第二轮迭代任务初步分配新鲜出炉,请关注! 以上便是任务分配列表,队员们会按照进度每天更改任务进度 当然,根据敏捷开发的方法,我们将在开发过程中根据情况迅速调整任务分配,以适应当时问题. Z- ...

  7. R自动数据收集第二章HTML笔记1(主要关于handler处理器函数和帮助文档所有示例)

    本文知识点:     1潜在畸形页面使用htmlTreeParse函数 2startElement的用法 3闭包 4handler函数的命令和函数体主要写法 5节点的丢弃,取出,取出标签名称.属性.属 ...

  8. 第三篇——第二部分——第五文 配置SQL Server镜像——域环境SQL Server镜像日常维护

    本文接上面两篇搭建镜像的文章: 第三篇--第二部分--第三文 配置SQL Server镜像--域环境:http://blog.csdn.net/dba_huangzj/article/details/ ...

  9. js仿百度文库文档上传页面的分类选择器_第二版

    仿百度文库文档上传页面的多级联动分类选择器第二版,支持在一个页面同一时候使用多个分类选择器. 此版本号把HTML,CSS,以及图片都封装到"category.js"中.解决因文件路 ...

随机推荐

  1. 剑指offer:二叉树打印成多行(层次遍历)

    1. 题目描述 从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行. 2. 思路 层次遍历 3. 递归 public class Solution { ArrayList<Array ...

  2. 传统码头建设企业:Azure DevOps Server 流水线技术沟通

    受某码头建设企业的邀请,与企业软件研发团队就如何利用Azure DevOps Server进行了沟通.结合企业当前技术框架和管理流程,探索利用微软Azure DevOps Server的技术能力,加强 ...

  3. telnet: Unable to connect to remote host: No route to host

    用iptables -F这个命令来关闭防火墙,但是使用这个命令前,千万记得用iptables -L查看一下你的系统中所有链的默认target,iptables -F这个命令只是清除所有规则,只不会真正 ...

  4. 【前端知识体系-JS相关】对移动端和Hybrid开发的理解?

    1.hybrid是什么,为何使用hybrid呢? 概念: hybrid就是前端和客户端的混合开发 需要前端开发人员和客户端开发人员配合完成 某些环节也可能会涉及到server端 大前端:网页.APP. ...

  5. CodeForce 117C Cycle DFS

    A tournament is a directed graph without self-loops in which every pair of vertexes is connected by ...

  6. WinForm 窗体间传递数据

    前言 做项目的时候,winfrom因为没有B/S的缓存机制,窗体间传递数据没有B/S页面传递数据那么方便,今天我们就说下winfrom中窗体传值的几种方式. 共有字段传递 共有字段传递实现起来很方便, ...

  7. Kubernetes SatefulSet(有状态应用部署)

    Kubernetes SatefulSet(有状态应用部署) • 部署有状态应用• 解决Pod独立生命周期,保持Pod启动顺序和唯一性1. 稳定,唯一的网络标识符,持久存储2. 有序,优雅的部署和扩展 ...

  8. MySQL for OPS 01:简介 / 安装初始化 / 用户授权管理

    写在前面的话 取这个标题的目的很简单,MySQL 在中小型企业中一般都是由运维来维护的,除非数据很重要的公司可能会聘请 DBA. 但是运维一般存在由于所需要了解的东西很多很杂,导致学习过程中很多东西只 ...

  9. CSS 选择器大全

    在CSS中,选择器是用于选择要设置样式的元素的模式. 选择器 例子 描述 .class .intro 选择class=“intro”的所有元素 #id #firstname 选择id=“firstna ...

  10. 微信小程序 自定义头部导航栏和导航栏背景图片 navigationStyle

    ​ 这两天因为要做一个带背景的小程序头,哭了,小程序导航栏有背景也就算了,还得让导航栏上的背景顺下来,心态小崩.现在可以单独设置一个页面的小程序头了,但是前提是要微信7.0以上的版本,考虑到兼容性问题 ...