闲来无事自己设计个类无双的RPG,没界面,纯业务逻辑(持续更新)

话不多说,直接上UML,这里没有具体的方法和参数,只记录下设计的思想,代码后续会上传:

第一步,建造者实现武将的初始化。这里WarriorTemplate就是初始的武将状态的模版,可写于配置文件进行扩展。标准的建造者模式,没啥难度~


第二步,状态模式实现敌我回合的切换,神奇的模式,后面要加第三种第四种状态的时候一个if else也不用写,太赞了~



第三步,武将本身也有状态,因为他可能在防御在中毒或者各种乱遭的状态,这里继续用状态模式,把AbstractWarrior看成是一个context来聚合各种状态,图再改:


OK 暂时先到这里,健身回来继续更新。现在已经可以假模假样的fight了,上一段控制台输出,现在,不同类型的武将,武将武器,状态,系统状态都是可拓展的了:

name: 赵云
hp: 155
attack: 110
defense: 90
weapon: 龙胆
weapon attack: 10
state: Normal State


name: 牛金
hp: 120
attack: 86
defense: 50
weapon: 枪
weapon attack: 6
state: Normal State


赵云 给予 牛金 121的表面伤害
实际造成了71点伤害
name: 牛金
hp: 49
attack: 86
defense: 50
weapon: 枪
weapon attack: 6
state: Normal State


牛金 给予 赵云 86的表面伤害
实际造成了0点伤害
name: 赵云
hp: 155
attack: 110
defense: 90
weapon: 龙胆
weapon attack: 10
state: Normal State


赵云 给予 牛金 121的表面伤害
实际造成了35点伤害
name: 牛金
hp: 14
attack: 86
defense: 50
weapon: 枪
weapon attack: 6
state: Defense State

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值