商店系统 -- 卖的是啥?
作者:互联网
策划踱步至程序身后,微微一笑:我们要做一个商店的功能,里面卖点东西,嗯,要让玩家感受到购物的乐趣,简单吧!下班前能搞定吗?
距离下班前还有半个小时,作为一个实力(moyu)过硬的后端开发,我们稳住心神,不能慌,扭头给策划一记眼神杀,反客为主,抛出夺命连环问!
- 商店有几种类型?每一种类型的逻辑都一样的吗?
- 商店中的物品如何刷新?策划提交新配置刷新?还是每天/周/月 自动刷新?还是玩家可以手动刷新?手动刷新次数上限?
- 商店物品随机性的刷新逻辑是什么?是部分固定,部分随机?还是都从库中随机?
- 商店中的物品摆放顺序是否有要求?有要求的话是策划手动配置吗?还是按固定的货架顺序排列?
- 商店中摆放的货架数量如何确定?是有相应的货架配置吗?还是随机出来多少物品就有多少货架?
- 商店中是否有折扣的需求?折扣比例配置在哪里?是跟着货架走?还是单独配置物品与折扣关系映射表?商店随机刷新对应的折扣如何确定?
- 商店中的物品是否一次性购买?玩家是否可以选择购买数量?或者是玩家一次只能购买一个,买完为止?
- 是否有类似活动商店的需求?活动配置中直接更新一个新的商店?
呼!问完了,好爽,我要下班了,想清楚了再和我提需求吧!策划:#_#!
第二天,需求来了。
- 商店有 每日商店 金币商城 钻石商城 礼包商城 积分商城 活动商城
- 每一种商店刷新方式都有所区别
- 每一种商店,售卖物品的随机性都有所区别
- 每一种商店,对物品的摆放位置顺序都有要求
- 每一种商店,货架数量按配置来
- 每一种商店,都有折扣需求
- 有的商店只能一次性购买,有的可以选择购买数量
- 活动商店需要支持在活动中配置
需求分析
可以看的出来,商店系统本身并不复杂,只是由于各种商店的逻辑部分相同,部分又有所区别,我们需要提炼核心: 核心数据结构为货架
;核心接口为购买
,刷新
。
货架
,解决了摆放位置,折扣,栏位数量等一系列的需求。
字段名 | 说明 |
---|---|
slotid | 货架id,主键或索引 |
itemid | 物品 id |
itemtype | 物品 类型 |
maxnum | 物品可购买最大数量 |
storeid | 货架所属商店id |
curnum | 物品当前已购买数量 |
discount | 当前折扣 |
price | 单价 |
购买
与刷新
可以提炼为通用接口,给所有商店进行调用。
代码实现
略过
解答标题
在游戏中购物,买的是虚拟物品,也能获得购物体验吗?有句话叫做,一时氪一时爽,一直氪一直爽。游戏中卖的就是爽的体验。
标签:货架,商店,--,折扣,系统,购买,刷新,物品 来源: https://blog.csdn.net/s476685226/article/details/122782441