Skip to content
写作:待补充更新:2026-05-16字数:—阅读:—维护:Azek431

创游世界商店系统速查卡

一句话摘要

创游世界商店系统的速查指南,帮助你快速理解商品配置、购买逻辑、货币管理、库存刷新等核心概念,掌握商店系统的设计与实现方法。

适合谁阅读

  • 想快速实现商店系统的开发者
  • 遇到购买逻辑问题的制作者
  • 需要参考商店设计的进阶用户

你将学到什么

  • 商店系统的核心组件
  • 商品配置方法
  • 购买逻辑流程
  • 货币管理系统
  • 库存刷新机制

一、商店系统核心问题

Q1:商店系统需要哪些组件?

A: 商店系统通常需要以下组件:

组件/元素用途
商店UI显示商品列表
货币组件管理玩家货币
背包组件存放购买物品
可互动物体打开商店入口
商品配置表存储商品信息
商店对象
├─ 可互动物件(打开商店)
├─ 商店UI(显示界面)
└─ 商店逻辑脚本(处理购买)

Q2:怎么配置商品?

A: 使用配置表存储商品信息。

配置表:商品列表
├─ 商品1:ID=1, 名称=血瓶, 价格=50, 图标=item_potion
├─ 商品2:ID=2, 名称=蓝瓶, 价格=50, 图标=item_mana
├─ 商品3:ID=3, 名称=铁剑, 价格=200, 图标=weapon_sword
└─ 商品4:ID=4, 名称=盾牌, 价格=300, 图标=armor_shield

商品配置字段:

字段说明
ID商品唯一标识
名称商品显示名
价格购买所需货币
类型消耗品/装备/材料
效果商品效果描述
图标显示图标

Q3:购买流程是什么?

A: 标准购买流程:

玩家点击购买

UI检查货币是否足够
    ↓ 足够
发送"请求购买"广播

地图脚本处理:
├─ 检查货币
├─ 扣除货币
├─ 添加物品到背包
└─ 发送"购买成功"广播

UI收到广播,刷新显示

购买脚本示例:

当点击"购买"按钮时
    获取当前商品ID
    获取商品价格
    获取玩家货币
    
    如果 玩家货币 >= 商品价格 那么
        发送广播 "请求购买" 参数:商品ID
    否则
        显示提示 "货币不足"
    结束
结束

Q4:怎么管理货币?

A: 使用玩家变量存储货币。

玩家变量表:货币
├─ 金币:初始1000
├─ 钻石:初始0
└─ 积分:初始0

货币操作:

获得货币:
设置玩家属性 "金币" 为 玩家属性 "金币" + 获得数量

扣除货币:
设置玩家属性 "金币" 为 玩家属性 "金币" - 消耗数量

检查货币:
如果 玩家属性 "金币" >= 消耗数量 那么
    可以购买
结束

Q5:库存怎么刷新?

A: 商店库存可以分为:

库存类型说明刷新方式
无限库存永远有货不刷新
每日刷新每天重置按日期判断
定时刷新间隔刷新按时间间隔
随机库存每次随机按概率生成

每日刷新示例:

当玩家开始时
    获取上次登录日期
    获取当前日期
    
    如果 当前日期 != 上次日期 那么
        刷新商店库存
        设置上次登录日期 = 当前日期
    结束
结束

Q6:怎么防止重复购买?

A: 使用条件判断检查是否已拥有。

检查背包:
遍历背包数组
    如果 物品ID == 当前商品ID 那么
        如果 已达最大购买次数 那么
            显示 "已拥有"
        否则
            允许购买
        结束
    结束
结束

特殊商品处理:

装备类:
├─ 检查背包是否已有
└─ 已有则不能重复购买

消耗品类:
├─ 检查背包是否已满
└─ 未满则可以购买

材料类:
├─ 无购买限制
└─ 可以无限购买

Q7:购买失败怎么处理?

A: 常见失败情况和处理方式:

失败原因处理方式
货币不足显示"货币不足"提示
背包已满显示"背包已满"提示
已拥有(装备)显示"已拥有该装备"提示
商品已售罄显示"已售罄",刷新列表
等级不足显示"等级不足"提示
地图脚本:
当收到广播 "请求购买" 时
    执行购买逻辑
    
    如果 成功 那么
        发送广播 "购买成功" 参数:商品ID
    否则
        发送广播 "购买失败" 参数:失败原因
    结束
结束

UI脚本:
当收到广播 "购买失败" 时
    显示提示 "失败原因"
结束

Q8:商店UI怎么设计?

A: 商店UI通常包含:

商店UI结构
├─ 标题栏
│  └─ 商店名称 + 货币显示

├─ 商品列表
│  ├─ 商品1:图标 + 名称 + 价格 + 购买按钮
│  ├─ 商品2:图标 + 名称 + 价格 + 购买按钮
│  └─ ...

├─ 商品详情区
│  └─ 选中商品的效果说明

└─ 关闭按钮

UI脚本职责:

├─ 显示商品列表
├─ 监听购买按钮点击
├─ 发送购买请求
└─ 刷新货币显示

二、商店类型参考

2.1 消耗品商店

特点:
├─ 可无限购买
├─ 购买后直接使用
└─ 需要背包空间

配置:
商品 = {类型=消耗品, 库存=无限, 价格=固定}

2.2 装备商店

特点:
├─ 每个玩家限买一次
├─ 不可重复购买
└─ 永久属性加成

配置:
商品 = {类型=装备, 库存=1, 价格=固定, 条件=等级>=10}

2.3 随机商店

特点:
├─ 每次进入商品不同
├─ 有刷新间隔
└─ 有稀有度概率

配置:
刷新间隔 = 24小时
稀有度 = {普通=70%, 稀有=25%, 史诗=5%}

2.4 兑换商店

特点:
├─ 用特殊货币购买
├─ 无限库存
└─ 需要兑换凭证

货币:
├─ 金币商店 → 金币
├─ 钻石商店 → 钻石
└─ 积分商店 → 积分

三、商店系统速查表

需求实现方式
商品配置配置表存储商品信息
货币管理玩家属性/变量表
购买判断检查货币+背包空间+条件
库存刷新按时间/按条件刷新
购买动画发送广播触发特效
UI刷新收到广播后更新显示

相关页面


待验证问题

以下问题需要进一步验证:

问题状态验证方向
不同版本商店组件的具体参数🔄 待验证需要官方文档确认
联机环境下商店的同步策略🔄 待验证需要联机环境测试

📝 说明:商店系统核心用法已稳定,进阶内容属于研究范畴。

后续优化方向

  • [ ] 补充更多商店类型示例
  • [ ] 添加商店UI模板
  • [ ] 完善商店经济系统设计

参与维护

发现文档问题?

你可以编辑页面、提交反馈,或复制链接给维护者,帮助这个资料库继续变好。

由 Azek431 整理与维护 | 基于 MIT 许可证开源