ServerMarket 是一款基于 Bukkit 开发的全球市场插件,致力于实现高度自定义的全球市场系统。
插件运行后会生成一份 默认配置
,下面为配置文件的结构以及作用。
文件名 | 文件说明 |
---|---|
config.yml | 插件存储类型与通用设定 |
history.yml | 存储版本记录, 请勿修改此文件 |
sorts.yml | 排序类型,用于定义排序类型 |
types.yml | 分类文件,用于定义分类条件 |
目录名 | 目录说明 |
---|---|
gui | 存放通用界面(Gui)文件,可自定义界面样式 |
language | 词条目录,用于支持国际化,可自行修改提示文本样式 |
market | 市场目录,目录内每个文件相当于一个市场,可无限创建 |
action | 行为目录,存放一些交互行为文件,比如商品点击行为 |
action/market.yml
right 为
右键
执行,left 为左键
执行,shift_right 为SHIFT + 右键
执行,shift_left 为SHIFT + 左键
执行
#right: purchase
left: purchase
shift_right: unsale
shift_left: confirm_purchase
行为名 | 行为描述 |
---|---|
PURCHASE | 购买商品 |
UNSALE | 下架商品(当为管理员时则是强制下架) |
CONFIRM_PURCHASE | 确认购买 |
注意,此版本并非最新版本的市场文件,仅作为例子展示。
####################
# 这是一个市场样例 #
####################
# 市场源编号, 设定后请勿修改
source_id: "example"
# 支持的货币类型
# 类型: Vault, PlayerPoints, NyEconomy货币名
vault-type: "Vault"
# 市场权限, 有权限才能 查看和上架
permission: "market.example"
# 市场展示名
display-name: "&c奥利给给"
# 货币展示名
economy-name: "金币"
# 价格范围设定
# 价格范围
price:
min: 1
max: 2000000
# 特定物品价格设定(判断: 物品类型、物品昵称、物品描述)
extra-price:
DIAMOND: 1000-10000
"道具": 20000-30000
# 上架物品是否公告
sale-broadcast: true
# 是否开启商品额外信息
show-sale-info: true
# 短写命令打开市场, 留空则表示不设定
short-command: "exmarket"
# 玩家售出物品后的税率, 1% = 0.01
# 权限: header.node(例如: servermarket.tax.default)
# 默认玩家拥有 default 节点权限
tax:
header: "servermarket.tax.sell"
node:
default: 0.1
vip: 0.05
# 玩家上架物品后的税率, 1% = 0.01
# 权限: header.node(例如: servermarket.tax.default)
# 默认玩家拥有 default 节点权限
shout-tax:
header: "servermarket.tax.shout"
node:
default: 0.1
vip: 0.05
# 玩家上架物品数量限制(当前市场)
# 权限: header.node(例如: servermarket.limit.count.default)
# 默认玩家拥有 default 节点权限
limit-count:
header: "servermarket.limit.count"
node:
default: 3
vip: 10
# 日期格式
simple-date-format: "yyyy/MM/dd HH:mm:ss"
# 价格格式
price-format: "%,.0f"
# 商品超时时间, 单位: 秒
effective_time: 259200
# 物品上架黑名单
black-list:
type:
- "STONE"
lore:
- "&f禁止上架"
# 分类
types:
- "all"
- "道具"
######################
#
# 全球市场界面配置文件
#
######################
# 界面标题
title: "&8全球市场面板"
# 界面大小
size: 54
# 显示商品的槽位
# 支持格式:
# - 数字(小)-数字(大) 例子: 0-44
# - 数字 例子: 0
sale-item-slots: "0-44"
# 商品物品名, 注意:如果需要使用译名则需注释或删掉此行
sale-name: "&b%name%"
# 物品信息
sale-info:
- " "
- "&a售卖者: &f%seller%"
- "&a价格: &f%price%金币"
- "&a上架时间: &f%time%"
# 界面物品设定
items:
panel:
type: BLACK_STAINED_GLASS_PANE
amount: 1
data: 0
name: " "
slot: 46,47,51,52
lore: [ ]
up:
type: paper
amount: 1
data: 0
name: "&f上一页"
slot: 45
action: up
lore: [ ]
down:
type: paper
amount: 1
data: 0
name: "&f下一页"
slot: 53
action: down
lore: [ ]
changeType:
type: STRING
amount: 1
data: 0
name: "&b切换分类"
slot: 48
action: "type"
lore:
- "&f"
- "&f当前: &7%saleType%"
changeSort:
type: BOOK
amount: 1
data: 0
name: "&b切换排序方式"
slot: 50
action: "sort"
lore:
- "&f"
- "&f当前: &7%sortType%"
store:
type: chest
amount: 1
data: 0
name: "&e个人仓库"
slot: 49
action: store
lore: [ ]
black-list:
type:
- "STONE"
# 例如限制:已绑定: 玩家名
lore:
- ".*已绑定: .*"
# 例如只在 0,1,2,4,6,7,8 显示
sale-item-slots: "0-2,4,6-8"
# 例如这里增加一个 vip2 节点,对应权限 servermarket.limit.count.vip2
limit-count:
header: "servermarket.limit.count"
node:
default: 3
vip: 10
vip2: 20
如果商品在市场中但是还是提示这个,只有两个情况会发生。
source_id