资源道具化

概念

概念:系统中的每一个资源分配一个唯一标识。

举例:金币、钻石、道具、礼包、勋章、英雄、英雄碎片、活动积分、表情等。

中间层:处理资源增减请求。


举例

签到为例

yes
签到请求
是否可签
读取奖励配置
直接获得奖励
结束
提出资源增加请求

红色要优于橙色。

红线逻辑,签到模块不关心奖励是怎么加上去的。

中间层处理资源

增加
没有该英雄
有该英雄 不允许分解
有该英雄 允许分解
资源增减请求
增加or减少
不同的类型
加金币
加英雄碎片
调用背包模块
加英雄
调用英雄模块
读取碎片数 发起加碎片请求

中间层实现了增减资源的操作。

两张表

资源表

idtypedescext…
资源ID唯一标识不同的类型描述一些扩展字段

签到表

dayidcount
第几天资源ID数量

需求扩展

需求:签到给英雄,如果玩家已经拥有该英雄,则改为给3个英雄碎片。

实现:兑换表:英雄、英雄碎片、兑换个数。把自动拆为碎片的逻辑放入中间层,签到模块不用关心。

需求:如果玩家获得A道具100次,获得S勋章。获得3次S勋章,达成Y成就。

实现:勋章表:道具、收集次数。成就表:勋章、收集次数。

增加道具时,对应计数+1。判断是否触发勋章获得的条件,如果达成,增加对应的勋章。

增加勋章时,对应计数+1。判断是否触发成就获得的条件,如果达成,增加对应的成就。

道具、勋章、成就,都资源化,无差别对待。根据资源表中的type,做不同逻辑。

不同的模块,可以复用这套逻辑。

需求:签到给积分,积分可以兑换英雄碎片。

实现:积分作为一种资源,分配一个ID,对接兑换模块。

兑换模块,先发起减请求,再发起加请求。


总结

  • 资源道具化,统一性。
  • 中间层,对外界屏蔽不同资源的差异。
  • 子模块不直接交互,通过中间层间接交互。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值