Team Work Ⅱ

Easter79
• 阅读 380

#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 Ⅱ

点赞
收藏
评论区
推荐文章
刚刚好 刚刚好
4个月前
css问题
1、在IOS中图片不显示(给图片加了圆角或者img没有父级)<div<imgsrc""/</divdiv{width:20px;height:20px;borderradius:20px;overflow:h
晴空闲云 晴空闲云
4个月前
css中box-sizing解放盒子实际宽高计算
我们知道传统的盒子模型,如果增加内边距padding和边框border,那么会撑大整个盒子,造成盒子的宽度不好计算,在实务中特别不方便。boxsizing可以设置盒模型的方式,可以很好的设置固定宽高的盒模型。盒子宽高计算假如我们设置如下盒子:宽度和高度均为200px,那么这会这个盒子实际的宽高就都是200px。但是当我们设置这个盒子的边框和内间距的时候,那
艾木酱 艾木酱
3个月前
快速入门|使用MemFire Cloud构建React Native应用程序
MemFireCloud是一款提供云数据库,用户可以创建云数据库,并对数据库进行管理,还可以对数据库进行备份操作。它还提供后端即服务,用户可以在1分钟内新建一个应用,使用自动生成的API和SDK,访问云数据库、对象存储、用户认证与授权等功能,可专
Easter79 Easter79
1年前
TiDB 的“破坏之王”:PingCAP 测试团队 | PingCAP 招聘季
数据库存储了公司的数据,是公司的最重要资产之一。正确性和稳定性是数据库最重要的特性。测试团队之于TiDB是一个“破坏之王”的角色,团队的使命是炼成更高、更快、更强的“无敌风火轮”技能。在这篇文章里,我们介绍PingCAP测试团队(QATeam)是怎么工作的。我们在做什么?我们测试团队是TiDB的“破坏者”,用
Wesley13 Wesley13
1年前
Unity2D游戏开发之保卫萝卜
!(https://img2018.cnblogs.com/blog/54608/201912/5460820191203062607084286309123.png)  保卫萝卜是2D塔防游戏里边的一个经典案例,这次去开发这个游戏,我们会尽力去实现和原版一样的功能,做好我们可以处理好的每一个游戏细节(比如塔攻击的集火目标优先攻击,与自动搜索
Wesley13 Wesley13
1年前
HTML5游戏开发实例
开发工具:vscode一、人物拼图游戏游戏介绍:拼图游戏将一幅图片分割成若干拼块并将它们随机打乱顺序。当将所有拼块都放回原位置时,就完成了拼图(游戏结束)。在“游戏”中,单击滑块选择游戏难易,“容易”为3行3列拼图游戏,中间为一个4行4列拼图游戏,“难”为5行5列拼图游戏。拼块以随机顺序排列,玩家用鼠标单击空
Wesley13 Wesley13
1年前
C语言实战项目—扫雷小程序
扫雷游戏是微软自带的一款小游戏。扫雷游戏的玩法是,以9\9棋盘为例,棋盘上随机分布着10个地雷,玩家在棋盘上进行点击,如果被点击的格子是地雷,则玩家被炸“死”,游戏结束;如果被点击的格子上没有地雷,与被点击的格子相邻的格子(被点击格子的上下左右还有斜向,共八个格子)有地雷,则在被点击的格子上显示这些地雷的总数,如果与被点击的格子相邻的八个格子都没有地雷,则
Wesley13 Wesley13
1年前
2d游戏和 3d游戏的区别
2D游戏和3D游戏的主要区别一、总结一句话总结:2D中的单位就是贴图,3D中的单位还有高1\.3D和2D游戏的区别主要体现在呈现画面和文件体积上;2\.借助3D引擎可以提升2D游戏的声光和特效效果;3\.成功的游戏不一定是优秀的游戏。
helloworld_28799839 helloworld_28799839
4个月前
常用知识整理
Javascript判断对象是否为空jsObject.keys(myObject).length0经常使用的三元运算我们经常遇到处理表格列状态字段如status的时候可以用到vue
哈希搭建开发 哈希搭建开发
4个月前
什么是哈希竞猜,开发原理是什么。
1.哈希游戏的亮点:100%透明,公平公正现在年轻人大多数都喜欢玩游戏,而是在玩游戏的时候也无法找到一个平衡点,因为传统的游戏,玩家无法掌握太多的主动权。所以大多数玩家都是非常被动的,而且在游戏方面也花费了很多的时间精力,金钱也没有获得更多的成就感和满足感,但是相对于这款游戏来说完全完全可以掌握主动权。可以将命运掌握在自己的手里,我们在玩游戏的时候也可以获得