限购系统
AIOShop 提供灵活的限购系统,可以控制玩家购买和出售物品的数量。
限购类型
| 类型 | 说明 |
|---|---|
NONE | 无限购限制 |
PERSONAL_DAILY | 个人每日限购 |
PERSONAL_WEEKLY | 个人每周限购 |
PERSONAL_TOTAL | 个人永久限购 |
GLOBAL_DAILY | 全服每日限购 |
GLOBAL_WEEKLY | 全服每周限购 |
GLOBAL_TOTAL | 全服永久限购 |
购买限制
配置商品的购买限制:
yaml
items:
limited_item:
display-name: "&c限购物品"
buy-price:
amount: 100
currency: "VAULT"
buy-rewards:
self:
type: "ITEM"
item: "diamond"
amount: 1
# 购买限制
limit-type: "PERSONAL_DAILY"
limit-amount: 10固定限购数量
yaml
limit-type: "PERSONAL_DAILY"
limit-amount: 10 # 每天最多购买 10 个随机限购数量
用于随机商店,每次刷新时随机确定限购数量:
yaml
limit-type: "PERSONAL_DAILY"
limit-amount-range: "5-15" # 每次刷新随机在 5-15 之间出售限制
配置商品的出售限制:
yaml
items:
limited_sell:
display-name: "&e限量回收"
sell-item-matcher:
material: "emerald"
sell-rewards:
main:
type: "CURRENCY"
amount: 100
currencyType: "VAULT"
# 出售限制
sell-limit-type: "GLOBAL_DAILY"
sell-limit-amount: 100 # 全服每天最多回收 100 个限购周期
每日限购
每天 00:00 重置(服务器时区)。
yaml
limit-type: "PERSONAL_DAILY" # 或 GLOBAL_DAILY每周限购
每周一 00:00 重置。
yaml
limit-type: "PERSONAL_WEEKLY" # 或 GLOBAL_WEEKLY永久限购
不会重置,达到限制后永久无法继续交易。
yaml
limit-type: "PERSONAL_TOTAL" # 或 GLOBAL_TOTAL限购范围
个人限购
每个玩家有独立的限购计数:
yaml
limit-type: "PERSONAL_DAILY"
limit-amount: 10
# 玩家 A 购买 10 个后,玩家 B 仍然可以购买 10 个全服限购
所有玩家共享限购计数:
yaml
limit-type: "GLOBAL_DAILY"
limit-amount: 100
# 全服所有玩家总共只能购买 100 个GUI 显示
限购信息会在商品 Lore 中显示:
个人限购: 5/10
全服限购: 50/100可以在 GUI 模板中自定义显示格式:
yaml
formats:
limit:
limited: "&7限购: &c{current}/{max}"
unlimited: ""配置示例
每日限购商品
yaml
items:
daily_special:
display-name: "&e每日特价"
buy-price:
amount: 50
currency: "VAULT"
buy-rewards:
self:
type: "ITEM"
item: "golden_apple"
amount: 1
limit-type: "PERSONAL_DAILY"
limit-amount: 5全服限量商品
yaml
items:
rare_item:
display-name: "&6限量珍品"
buy-price:
amount: 10000
currency: "VAULT"
buy-rewards:
self:
type: "ITEM"
item: "dragon_egg"
amount: 1
limit-type: "GLOBAL_TOTAL"
limit-amount: 10 # 全服只有 10 个限量回收
yaml
items:
limited_buyback:
display-name: "&a高价回收"
sell-item-matcher:
material: "diamond"
sell-rewards:
main:
type: "CURRENCY"
amount: 500
currencyType: "VAULT"
sell-limit-type: "GLOBAL_DAILY"
sell-limit-amount: 50 # 每天只回收 50 个注意事项
- 限购重置时间:基于服务器时区,不是玩家本地时间
- 数据持久化:限购数据保存在数据库中,重启不会丢失
- 缓存刷新:使用
/shop reload会刷新限购缓存 - 随机限购:
limit-amount-range只在随机商店刷新时生效
