Team Work Ⅱ
Regal-Lighting团队设计
分工思考
本次大作业我的分工定位是:Unit及子类,主要设计实现建筑类的功能。
首先王者光耀这款游戏所需要的建筑分为三类:
1、防御塔:有一定的血量,血量为0时破坏,可以造成伤害
2、水晶:游戏胜负判断的依据,拥有一定血量,血量为0时破坏,被破坏时游戏结束,不可造成伤害
3、泉水:基础设施,玩家在泉水中央可以按时间回复一定血量,不可被破坏
从他们的属性中可以看出几个共同点:
1、血量,防御塔与水晶都有血量上限,而泉水的血量为无穷大
2、伤害,防御塔存在正向伤害,而水晶伤害值为0,泉水是回复血量可以看成反向伤害(负数)
根据以上的共同属性,可以写一个Unit基类,包含以上基础血量:
class Unit{
int blood;
int harm;
}
再根据基类继承设计出防御塔类、水晶类、泉水类,分别实现对应建筑的功能:
class Defenser::public Unit{
public:
Defenser(int b_blood, int b_harm);//构造函数
int damage();//防御塔输出伤害
bool broke();//破坏条件判定
}//防御塔子类
class Star::public Unit{
public:
Defenser(int b_blood, int b_harm);//构造函数
bool broke();//破坏条件判定
}//水晶子类
class Spring::public Unit{
public:
Defenser(int b_blood, int b_harm);//构造函数,这里b_harm可以设置成负数来回复生命值
int heal();//HP回复
}//泉水子类
当然,以上只是一些简单的功能接口的实现,有关更复杂的功能设计和实现要看主程序的要求进一步拓展
遇到的困难
暂时还没有代码上的困难,要说最大的困难应该就是团队配合还不够熟练吧,很多接口命名没有约定好,只好一条条问领队,在GitHub上也不知道如何git保证不发生冲突。这些困难还需要一点时间去磨合吧。
讨论的合照
Team Work Ⅱ的更多相关文章
- Configure a VLAN on top of a team with NetworkManager (nmcli) in RHEL7
SOLUTION VERIFIED September 13 2016 KB1248793 Environment Red Hat Enterprise Linux 7 NetworkManager ...
- Create a Team in RHEL7
SOLUTION VERIFIED September 13 2016 KB2620131 Environment Red Hat Enterprise Linux 7 NetworkManager ...
- Team Leader 你不再只是编码, 来炖一锅石头汤吧
h3{ color: #000; padding: 5px; margin-bottom: 10px; font-weight: bolder; background-color: #ccc; } h ...
- Configure bridge on a team interface using NetworkManager in RHEL 7
SOLUTION IN PROGRESS February 29 2016 KB2181361 environment Red Hat Enterprise Linux 7 Teaming,Bridg ...
- BZOJ 4742: [Usaco2016 Dec]Team Building
4742: [Usaco2016 Dec]Team Building Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 21 Solved: 16[Su ...
- 关于 feature team 的一些内容
矩阵式管理,是常见的经典管理架构.其最早起源于美国的航空航天部门,然后被美国人带到了日本,然后被日本人带到了台湾,然后台湾人带到大陆...矩阵管理最典型的特征是,组织架构按职能与专业划分,项目由跨越部 ...
- 病毒四度升级:安天AVL Team揭露一例跨期两年的电信诈骗进化史
自2014年9月起,安天AVL移动安全团队持续检测到一类基于Android移动平台的间谍类病毒,病毒样本大多伪装成名为"最高人民检察院"的应用.经过反编译逆向分析以及长期的跟踪调查 ...
- iOS 真机测试时报错:Provisioning profile "iOS Team Provisioning Profile: XXX” doesn't include the currently selected device “XXX”.
这几天因工作需要,去给客户演示iOS项目打包的过程.之前演示都是顺利的,但后来客户自己操作时打电话说遇到了问题,出现报错. 就过去看了一下,发现一个很陌生的错误提示: The operation co ...
- diff/merge configuration in Team Foundation - common Command and Argument values - MSDN Blogs
One of the extensibility points we have in Team Foundation V1 is that you can configure any other di ...
- 测试环境搭建心得 vs2008+SQL2008 PHP+APACHE+mysql Team Foundation Server2013
大四即将结束,大学的最后一个假期,找到一份实习工作,担任测试工程师.在过年前的最后一周入职,干了一周的活儿.主要工作就是搭建测试环境. VMware 主要熟悉VMware软件,装系统基本都没什么问题. ...
随机推荐
- 解决The valid characters are defined in RFC 7230 and RFC 3986错误问题
分析原因: 导致上述问题是因为tomcat自tomcat 8.0.35版本之后对URL参数做了比较规范的限制,必须遵循RFC 7230 and RFC 3986规范,对于非保留字字符(json格式的请 ...
- Linux解压.tar .tgz .tar.gz .tar.Z等文件
.tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ---------------------- ...
- Vue.js实现前段评论展示
本来想着给这个博客弄个回复系统(类似知乎的回复),最初的实现思路是这样的:主评论后台渲染,前台新增的评论,回复用jquery操作dom放到页面上.实现的时候感觉好复杂,大量的dom操作,目前前段框架不 ...
- php输出年份
Copyright <?php echo date('Y');?> by Creditease Corp.All Right Reserved.
- win10系统上Python和pycharm的安装及配置
1.https://www.python.org/downloads/windows/进入官网下载需要的Python安装包(以2.7版本为例) 2.http://www.jetbrains.com/p ...
- swift的关联类型
一.术语:指定类型 typealias:用于给关联类型指定类型: 通过类型推断给关联类型指定类型太过烧脑: 二.类型指定 1.具体类型实现协议后,直接指定:作为普通的泛型类型使用,指定类型即可: 2. ...
- libco协程库上下文切换原理详解
缘起 libco 协程库在单个线程中实现了多个协程的创建和切换.按照我们通常的编程思路,单个线程中的程序执行流程通常是顺序的,调用函数同样也是 “调用——返回”,每次都是从函数的入口处开始执行.而li ...
- C#游戏开发中快速的游戏循环
C#游戏开发中快速的游戏循环的实现.参考<精通C#游戏编程>一书. using System; using System.Collections.Generic; using System ...
- javascript实现拖曳与拖放图片
javascript实现拖曳与拖放图片 其实对于drag和drop拖曳与拖放事件IE很早以前就支持这个操作了,我们先来看看HTML5中新增的拖放API. 在HTML5中想要实现拖放操作,至少要做以下操 ...
- Win7系统的任务管理器显示不全
Win7系统的任务管理器显示不全:如下图所示 首先要说明的是:出现这种现象是正常的,因为这种样式是任务管理器的精简模式. 还原方法:双击任务管理器四周的空白边框,即可恢复初始模式. 效果图如下: