Team Work Ⅱ

#Regal-Lighting团队设计 ##分工思考 本次大作业我的分工定位是:Unit及子类,主要设计实现建筑类的功能。 首先王者光耀这款游戏所需要的建筑分为三类:

1、防御塔:有一定的血量,血量为0时破坏,可以造成伤害 2、水晶:游戏胜负判断的依据,拥有一定血量,血量为0时破坏,被破坏时游戏结束,不可造成伤害 3、泉水:基础设施,玩家在泉水中央可以按时间回复一定血量,不可被破坏

从他们的属性中可以看出几个共同点:

1、血量,防御塔与水晶都有血量上限,而泉水的血量为无穷大 2、伤害,防御塔存在正向伤害,而水晶伤害值为0,泉水是回复血量可以看成反向伤害(负数)

根据以上的共同属性,可以写一个Unit基类,包含以上基础血量:

1class Unit{ 2 int blood; 3 int harm; 4}

再根据基类继承设计出防御塔类、水晶类、泉水类,分别实现对应建筑的功能:

1class Defenser::public Unit{ 2public3 Defenser(int b_blood, int b_harm);//构造函数 4 int damage();//防御塔输出伤害 5 bool broke();//破坏条件判定 6}//防御塔子类 7 8class Star::public Unit{ 9public10 Defenser(int b_blood, int b_harm);//构造函数 11 bool broke();//破坏条件判定 12}//水晶子类 13 14class Spring::public Unit{ 15public16 Defenser(int b_blood, int b_harm);//构造函数,这里b_harm可以设置成负数来回复生命值 17 int heal();//HP回复 18}//泉水子类

当然,以上只是一些简单的功能接口的实现,有关更复杂的功能设计和实现要看主程序的要求进一步拓展

##遇到的困难 暂时还没有代码上的困难,要说最大的困难应该就是团队配合还不够熟练吧,很多接口命名没有约定好,只好一条条问领队,在GitHub上也不知道如何git保证不发生冲突。这些困难还需要一点时间去磨合吧。

##讨论的合照 <img src="https://images2018.cnblogs.com/blog/1329642/201806/1329642-20180619202727272-197448917.jpg">

点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

《前端实战总结》之设计模式的应用——备忘录模式

概念介绍备忘录模式简单的说就是在不破坏已有逻辑的前提下,将日后需要获取的数据在第一次保存下来以免造成重复且低效的操作。该设计模式最主要的任务就是对现有数据或者

HTML5游戏开发实例

开发工具:vscode一、人物拼图游戏游戏介绍:拼图游戏将一幅图片分割成若干拼块并将它们随机打乱顺序。当将所有拼块都放回原位置时,就完成了拼图(游戏结束)。在“游戏”中,单击滑块选择游戏难易,“容易”为3行3列拼图游戏,中间为一个4行4列拼图游戏,“难”为5行5列拼图游戏。拼块以随机顺序排列,玩家用鼠标单击空

C语言实战项目—扫雷小程序

扫雷游戏是微软自带的一款小游戏。扫雷游戏的玩法是,以9\9棋盘为例,棋盘上随机分布着10个地雷,玩家在棋盘上进行点击,如果被点击的格子是地雷,则玩家被炸“死”,游戏结束;如果被点击的格子上没有地雷,与被点击的格子相邻的格子(被点击格子的上下左右还有斜向,共八个格子)有地雷,则在被点击的格子上显示这些地雷的总数,如果与被点击的格子相邻的八个格子都没有地雷,则

2d游戏和 3d游戏的区别

2D游戏和3D游戏的主要区别一、总结一句话总结:2D中的单位就是贴图,3D中的单位还有高1\.3D和2D游戏的区别主要体现在呈现画面和文件体积上;2\.借助3D引擎可以提升2D游戏的声光和特效效果;3\.成功的游戏不一定是优秀的游戏。

Java课程设计——大鱼吃小鱼(团队)

1.团队名称、团员介绍团队名称:三枪加一炮赖富烨(组长):Poison(毒药)类的设计;FishJpanel(游戏面板)类中的线程、部分方法的实现;林阿强(组员):Login(简单登录界面)类的设计;Playmusic(音乐播放)类的设计;FishJframe(游戏容器)类的设计;Bubbl