跳到主要内容

公会商店

成员用自己的 贡献 兑换物品或奖励。商品写在 plugins/CloudGuild/shop.yml,玩家用 /cg shop 或主页的「公会商店」购买,需要 shop 职位权限(默认所有职位都有)。

写法​

items:
golden-apple:
item: GOLDEN_APPLE
amount: 4
price: 50
limit: 5
period: daily
elytra:
item: ELYTRA
name: '&d公會翅膀'
lore: ['&7只有公會等級 8 以上才能兌換']
amount: 1
price: 20000
min-level: 8
limit: 1
period: forever
键默认说明
商品 id(例如 golden-apple)—商品代号,只能用英文、数字、-、_。限购次数按 id 记录
item—材质,给出一个简单物品
stack—完整物品资料(由 /cg admin shop add 写入,不用手写)。有 stack 时优先使用
amount1数量(1 ~ 64),只对 item 有效
name / lore无物品的名称与说明,只对 item 有效;name 也会用在菜单与购买提示
commands无购买后以控制台执行的指令,{player} = 玩家名。可以只有指令、没有物品
price0价格(贡献)
min-level1公会至少几级才能购买
limit0每位玩家每个周期最多买几次;0 = 不限
periodforever限购周期:daily 每天 / weekly 每周(周一开始)/ monthly 每月 / forever 永久

item 写错材质、或既没有物品也没有指令的商品会被跳过(控制台警告)。

只给指令的商品例子:

items:
fly-1h:
name: '&b飛行 1 小時'
commands: ['lp user {player} permission settemp essentials.fly true 1h']
price: 500
limit: 1
period: daily

手拿物品直接上架​

自定义物品(附魔、名称、模型、其他插件的物品数据)手写很麻烦,可以直接拿在主手上架:

/cg admin shop add <id> <价格> [限购次数] [daily|weekly|monthly|forever] [公会等级]
/cg admin shop remove <id>
  • 主手的物品会原样保存(整组,数量就是手上的数量)进 shop.yml 的 stack,并立即重新载入商店。
  • 限购次数不写 = 0(不限);周期不写或写错 = forever;公会等级不写 = 1。
  • 同一个 id 已经存在时会被覆盖。
  • 只能由玩家执行(要拿物品);remove 控制台也可以。

例子:

/cg admin shop add dragon-sword 5000 1 weekly 5
/cg admin shop remove dragon-sword

购买的规则​

  • 扣贡献与限购次数在同一个数据库事务里:贡献不够、或本期已经买满,整笔还原,不会只扣贡献没给东西。
  • 物品放进背包,放不下的掉在脚下。
  • 扣款成功后、发放之前玩家刚好下线:贡献与限购次数会退回。
  • 公会等级不够时,商品显示为 locked;本期买满时显示为 soldout,见 菜单。
  • 限购按玩家计算(不是按公会),换公会也不会重置。

改完 shop.yml 执行 /cg admin reload 生效(/cg admin shop add / remove 会自动重新载入)。

贡献从哪里来​

存钱、签到、在线、任务奖励、公会战击杀,见 银行、签到与活跃。商店菜单上方显示自己的贡献、本周贡献与累积贡献。