• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

ChestCommandsGUI:修订间差异

来自Minecraft插件百科
跳转到导航 跳转到搜索
(更新节点说明,排版)
无编辑摘要
第7行: 第7行:
|源地址=https://dev.bukkit.org/projects/chest-commands/
|源地址=https://dev.bukkit.org/projects/chest-commands/
}}
}}
'''ChestCommandsGUI'''是一个简单而功能强大的Bukkit插件,可以用来创建GUI界面!


= 概述 =
=== 特色 ===
一个简单而功能强大的插件,可以用来创建GUI界面!
* 支持多菜单。
* 可使用物品、指示牌、可配置的命令打开菜单。
* 自定义占位符和符号。
* 高质量代码。
* 支持经济插件,可支持Vault(可选)。
* 自动检测新版本。


== 特色 ==
=== 扩展插件 / 联动插件 ===
  - 支持多菜单
* PlayerPoints - 点券
  - 可使用物品、指示牌、可配置的命令打开菜单
* Vault - 经济插件
  - 自定义占位符和符号
* Scheduled Commands - 定时执行命令
  - 高质量代码
* Info Book - 首次登陆赠送教程书
  - 支持经济插件,可支持Vault(可选)
  - 自动检测新版本


== 扩展插件 / 联动插件 ==
=== 配置文件存放目录 ===
  PlayerPoints - 点券
服务器根目录/plugins/ChestCommands/menu/XX.yml
  Vault - 经济插件
  Scheduled Commands - 定时执行命令
  Info Book - 首次登陆赠送教程书


== 配置文件存放目录 ==
=== 创建菜单 ===
  服务器根目录/plugins/ChestCommands/menu/XX.yml
* 第一种方式:复制和粘贴现有的菜单,然后进行改动
* 第二种方式:创建.yml文件,自己进行配置
* (玩家打开GUI界面所需要的权限对大小写要求是非常严格的!)


== 创建菜单 ==
== 基础总体设定 ==
  第一种方式:复制和粘贴现有的菜单,然后进行改动
=== Menu-settings ===
  第二种方式:创建.yml文件,自己进行配置
你可以在菜单的顶部找到这些选项,“Menu settings:”部分
  (玩家打开GUI界面所需要的权限对大小写要求是非常严格的!)


= 基础总体设定 =
name: '&1Menu' (必须)
== Menu-settings ==
  你可以在菜单的顶部找到这些选项,“Menu settings:”部分
  name: '&1Menu' (必须)
    在打开菜单的时候将显示这个名称,自定义标题的长度不能超过30个字符(包括颜色字符,一个汉字=2字符)


  rows:6(必须)
在打开菜单的时候将显示这个名称,自定义标题的长度不能超过30个字符(包括颜色字符,一个汉字=2字符)
    这个设置规定了菜单有多少行,正常显示的上限为6
    虽然超过6后依然正常支持,但是材质贴图会崩.


  command: 'menu'(可选)
    这是打开菜单的命令(命令名),可以随便设置,注意不要重复,打开时使用“/cc open 你设置的命令名”


  auto-refresh: 5 (可选)
rows:6(必须)
    需要刷新的的菜单将刷新变量。注意金钱和点数在每次交易后都会自动更新。


  open-with-item: (可选)
这个设置规定了菜单有多少行,正常显示的上限为6
    id 'wool:1'— 打开一个菜单用一个特定的物品,可以要求特定的数值!
    right-click: true / false - 是否可以通过右键点击打开菜单!
    left-click: true / false - 是否可以通过左键点击打开菜单!
==items==
  不要用带有大写字母、颜色代码或符号的内部名称(读下面),请记住,在同菜单中项目名称不可重复。
  每个项目都是由一个内部名称(对于玩家不可见)和节点组成,可以分配命令,自定义名称与图标。
  一个单独的项目应该这样写:


虽然超过6后依然正常支持,但是材质贴图会崩.
command: 'menu'(可选)
这是打开菜单的命令(命令名),可以随便设置,注意不要重复,打开时使用“/cc open 你设置的命令名”
auto-refresh: 5 (可选)
需要刷新的的菜单将刷新变量。注意金钱和点数在每次交易后都会自动更新。
open-with-item: (可选)
id 'wool:1'— 打开一个菜单用一个特定的物品,可以要求特定的数值!
right-click: true / false - 是否可以通过右键点击打开菜单!
left-click: true / false - 是否可以通过左键点击打开菜单!
===items===
不要用带有大写字母、颜色代码或符号的内部名称(读下面),请记住,在同菜单中项目名称不可重复。
每个项目都是由一个内部名称(对于玩家不可见)和节点组成,可以分配命令,自定义名称与图标。
一个单独的项目应该这样写:
<pre>
     spawn-item:
     spawn-item:
     ID: bed
     ID: bed
第68行: 第82行:
     POSITION-Y: 1
     POSITION-Y: 1
     NAME, COMMAND, ID, ...被称为“节点”,每个项目可以有不同的节点来定制它。点击查看[https://dev.bukkit.org/bukkit-plugins/chest-commands/pages/tutorial/nodes/ 节点列表]。
     NAME, COMMAND, ID, ...被称为“节点”,每个项目可以有不同的节点来定制它。点击查看[https://dev.bukkit.org/bukkit-plugins/chest-commands/pages/tutorial/nodes/ 节点列表]。
    每个项目必须要有坐标节点:POSITION-X 和 POSITION-Y.
</pre>
 
每个项目必须要有坐标节点:POSITION-X 和 POSITION-Y.
 
== 节点配置教程 ==
此页包含了一个节点列表,他可以用于所有图标!


= 节点配置教程 =
注:这三个节点严格要求每一项 ID position-x position-y 。
  此页包含了一个节点列表,他可以用于所有图标!


  注:这三个节点严格要求每一项 ID position-x position-y.,
=== ID ===
图标的项标识。你可以用数字和文字标识,但是我推荐使用文字更好的可读性。文字标识列表:这里(不区分大小写),可以省略下划线。


== ID ==
范例:ID: stone、
  图标的项标识。你可以用数字和文字标识,但是我推荐使用文字更好的可读性。文字标识列表:这里(不区分大小写),可以省略下划线。
  范例:ID: stone、
  你可以使用数据值,但是必须要把数值放在单引号中!数量是可选的并且用逗号隔开。
  范例 (10个黑羊毛):
    ID: 'wool:15, 10'


== POSITION-X / POSITION-Y ==
你可以使用数据值,但是必须要把数值放在单引号中!数量是可选的并且用逗号隔开。
  [[文件:chestcommand.png]]
 
  有三个所需的节点。他们设置了图标的位置。你可以很容易地通过这个表找到这个坐标:
范例 (10个黑羊毛):
 
 
  范例:
ID: 'wool:15, 10'
    POSITION-X: 5
 
    POSITION-Y: 1
=== POSITION-X / POSITION-Y ===
 
[[文件:chestcommand.png]]
 
有三个所需的节点。他们设置了图标的位置。你可以很容易地通过这个表找到这个坐标:
 
范例:
 
POSITION-X: 5
 
POSITION-Y: 1
 
=== NAME ===
这个节点可以设置图标的显示名称。你可以使用颜色代码和符号。
 
范例:
 
NAME: '&6这是一个有颜色的名字!'
 
=== LORE ===
该节点显示下方的文字。你可以使用颜色代码和符号。


== NAME ==
例子:
  这个节点可以设置图标的显示名称。你可以使用颜色代码和符号。
<pre>
  范例:
    NAME: '&6这是一个有颜色的名字!'
== LORE ==
  该节点显示下方的文字。你可以使用颜色代码和符号。
  例子:
     Example:
     Example:
     LORE:
     LORE:
第102行: 第131行:
     - 'Some other details'
     - 'Some other details'
     - '&cImportant note'
     - '&cImportant note'
== ENCHANTMENT ==
</pre>
  这个节点设置了结界,将出现在一个项目,主要是用于附魔发光的效果。
 
  范例:
=== ENCHANTMENT ===
    ENCHANTMENT: 'fire aspect, 1'
这个节点设置了结界,将出现在一个项目,主要是用于附魔发光的效果。
  附魔等级是可选的。您可以使用多种附魔,通过用分号分开它们!
 
  范例:
范例:
    ENCHANTMENT: 'sharpness, 5; durability, 10; silk touch'
 
== COLOR ==
ENCHANTMENT: 'fire aspect, 1'
  这里可以设置皮革盔甲的颜色,也就是意味着如果ID那里不是皮甲的ID的话,就可以直接删去这一行了,格式是'<red>, <green>, <blue>',每个值必须在0-255之间。
 
  范例:
附魔等级是可选的。您可以使用多种附魔,通过用分号分开它们!
    COLOR: '255, 0, 0'
 
== SKULL-OWNER ==
范例:
  这里填写的是正版玩家的名称,如果ID那里不是 397且DATA-VALUE不是 3(玩家的头颅的ID)的话,就可以直接删去这一行了,这个节点用于在玩家头颅的图标上显示指定正版玩家的皮肤的头颅的那部分
  范例:
    SKULL-OWNER: 'filoghost'
== COMMAND==
  这个节点设置可以设置命令(没有”/“前缀),它支持各种各样的命令,在满足所有的限制后(花费的钱,权限一类的限制)才会执行,多个命令使用“;”(英文状态)分隔
  它不仅仅可以执行命令,与其他节点搭配会创造出更多的功能
  指令是一个较为复杂的节点
  范例:
    COMMAND: 'spawn'
== PRICE ==
  (需要前置插件:Vault)
  这个节点设置点击时的价格。玩家没有足够的钱将不会执行命令!
  范例:
    PRICE: 100.0
== LEVELS ==
  这个值设定了点击指定物品所需要的经验值等级。如果玩家点击时没有足够的经验值等级命令将不会触发;反之,对应的经验值等级将被扣除
  范例:
    LEVELS: 5
== POINTS ==
  (需要前置插件:PlayerPoints)
  这个节点设置点击时的所需要的点券。如果玩家没有足够的点券将不会执行命令!
  POINTS: 50
== REQUIRED-ITEM ==
  这个节点设置点击所需要的物品,没有该物品的命令将不会被执行,格式都是相同的ID。
  范例:(三十个橙色染色玻璃)
    REQUIRED-ITEM: 'stained glass:1, 30'
== KEEP-OPEN ==
  该节点规定了如果点击节点后,是否保持打开GUI界面(默认不保持),值可以是True或者False。
  范例:
    KEEP-OPEN: true
== PERMISSION ==
  这里可以自定义点击该图标所需要的的权限,(注意最好不要和其他插件的权限重复),没有该权限的玩家点击该节点将不会执行指令,你也可以反向使用它(在权限前面加一个"-"号)如: '-my.custom.permission',这代表了没有"my.custom.permission"权限的玩家才能点击执行该节点
  范例:
    PERMISSION: 'my.custom.permission'
== VIEW-PERMISSION ==
  这里可以自定义看到该图标所需要的的权限,(注意最好不要和其他权限重复),没有该权限看不到该图标,你依然可以反向使用它,如:'-my.custom.permission',这代表了没有"my.custom.permission"权限的玩家才能看见该节点
  范例:
    VIEW-PERMISSION: 'my.custom.permission'
== PERMISSION-MESSAGE ==
  这个节点设置了玩家没有权限时的提示消息(可以删去,删除即使用默认消息,在config.yml可以看见并且你可以修改它)
  范例:
    PERMISSION-MESSAGE: '&c你必须是VIP才能购买这个物品!'


== 点击动作教程 ==
ENCHANTMENT: 'sharpness, 5; durability, 10; silk touch'
 
=== COLOR ===
这里可以设置皮革盔甲的颜色,也就是意味着如果ID那里不是皮甲的ID的话,就可以直接删去这一行了,格式是'<red>, <green>, <blue>',每个值必须在0-255之间。
 
范例:
 
COLOR: '255, 0, 0'
 
=== SKULL-OWNER ===
这里填写的是正版玩家的名称,如果ID那里不是 397且DATA-VALUE不是 3(玩家的头颅的ID)的话,就可以直接删去这一行了,这个节点用于在玩家头颅的图标上显示指定正版玩家的皮肤的头颅的那部分
 
范例:
 
SKULL-OWNER: 'filoghost'
 
=== COMMAND ===
这个节点设置可以设置命令(没有”/“前缀),它支持各种各样的命令,在满足所有的限制后(花费的钱,权限一类的限制)才会执行,多个命令使用“;”(英文状态)分隔
 
它不仅仅可以执行命令,与其他节点搭配会创造出更多的功能
 
指令是一个较为复杂的节点
 
范例:
 
COMMAND: 'spawn'
 
=== PRICE ===
(需要前置插件:Vault)
 
这个节点设置点击时的价格。玩家没有足够的钱将不会执行命令!
 
范例:
 
PRICE: 100.0
 
=== LEVELS ===
这个值设定了点击指定物品所需要的经验值等级。如果玩家点击时没有足够的经验值等级命令将不会触发;反之,对应的经验值等级将被扣除
 
范例:
 
LEVELS: 5
 
=== POINTS ===
(需要前置插件:PlayerPoints)
 
这个节点设置点击时的所需要的点券。如果玩家没有足够的点券将不会执行命令!
 
POINTS: 50
 
=== REQUIRED-ITEM ===
这个节点设置点击所需要的物品,没有该物品的命令将不会被执行,格式都是相同的ID。
 
范例:(三十个橙色染色玻璃)
 
REQUIRED-ITEM: 'stained glass:1, 30'
 
=== KEEP-OPEN ===
该节点规定了如果点击节点后,是否保持打开GUI界面(默认不保持),值可以是True或者False。
 
范例:
 
KEEP-OPEN: true
 
=== PERMISSION ===
这里可以自定义点击该图标所需要的的权限,(注意最好不要和其他插件的权限重复),没有该权限的玩家点击该节点将不会执行指令,你也可以反向使用它(在权限前面加一个"-"号)如: '-my.custom.permission',这代表了没有"my.custom.permission"权限的玩家才能点击执行该节点
 
范例:
 
PERMISSION: 'my.custom.permission'
 
=== VIEW-PERMISSION ===
这里可以自定义看到该图标所需要的的权限,(注意最好不要和其他权限重复),没有该权限看不到该图标,你依然可以反向使用它,如:'-my.custom.permission',这代表了没有"my.custom.permission"权限的玩家才能看见该节点
 
范例:
 
VIEW-PERMISSION: 'my.custom.permission'
 
=== PERMISSION-MESSAGE ===
这个节点设置了玩家没有权限时的提示消息(可以删去,删除即使用默认消息,在config.yml可以看见并且你可以修改它)
 
范例:
 
PERMISSION-MESSAGE: '&c你必须是VIP才能购买这个物品!'
 
=== 点击动作教程 ===
本指南教程了点击某个图标时候所发生的动作,没有其他动作!
本指南教程了点击某个图标时候所发生的动作,没有其他动作!


'''打开其他图形界面的'''
'''打开其他图形界面的'''
  如果一个命令能打开其他插件的图形界面,请设置KEEP-OPEN为True!


= 变量与指令 =
如果一个命令能打开其他插件的图形界面,请设置KEEP-OPEN为True!
  这些变量可以用于点击菜单时候的命令,菜单的叙述列表,菜单的名字。
    {player} (使用者名字).
    {world} (使用者所在世界).
    {online} (在线玩家数量).
    {max_players} (服务器玩家上限).
    {money} (玩家的金钱,你必须拥有 Vault 插件).


'''一般命令'''
== 变量与指令 ==
  指令前不需要添加“/”,除了WorldEdit的命令。
这些变量可以用于点击菜单时候的命令,菜单的叙述列表,菜单的名字。
  这个例子演示了如何在点击的时候将强制执行命令/Spawn。
* {player} (使用者名字)。
  范例:
* {world} (使用者所在世界)
    COMMAND: 'spawn'
* {online} (在线玩家数量)
'''以控制台的身份执行命令'''
* {max_players} (服务器玩家上限)
  要小心使用这个命令!
* {money} (玩家的金钱,你必须拥有 Vault 插件)。
  若要用控制台的身份执行命令,请在命令前方加入"console:"
  范例:
    COMMAND: 'console: say Hello world!'
'''以OP的身份执行命令'''
  要小心使用这个命令!
  若要用op的身份执行命令,请在命令前方加入"op:"
  范例:
    COMMAND: 'op: say 你好世界!'
'''多个指令'''
  用分号分隔多个命令";"。这个例子让玩家执行命令,顺序是先执行 /spawn,然后再执行/me!
  范例:
    COMMAND: 'spawn; me 我被传送到重生点!'
'''私聊玩家'''
  像以前的例子,把tell:后面的内容私聊发送给玩家,你可以使用颜色代码和符号!
  在范例中,信息将是红色的!
  范例:
    COMMAND: 'tell: &c你好!'
'''广播事情'''
  每个人都能看到这个消息!
  范例:
    COMMAND: 'broadcast: {player}太棒了!'
'''播放音乐'''
  一个音乐由3个参数构成(只有一个是必须的)这三个参数用逗号分隔。他们的格式是: 'sound: <声音的名字>, [范围], [音量]'
  范例:
    COMMAND: 'sound: ghast scream, 2.0, 0.5'
'''给予物品'''
  这是一个用于给予物品的基础命令,您可以更改给予物品的数量和类型,对于更高级的事情,请使用vanilla命令.
  下面是给玩家10个黑色羊毛的指令。
  范例:
    COMMAND: 'give: wool:15, 10'
'''给予金钱'''
  这个命令将会给使用者金钱。
  你需要前置插件Vault和一个经济插件。
  范例:
    COMMAND: 'give-money: 100.0'
'''打开其他菜单'''
  就像在控制台的指令,输入“open:文件名”。“文件名”就是菜单的名字。如果菜单不存在将会显示一个错误的信息。
  使用者需要相应权限来打开菜单。
  范例:
  COMMAND: 'open: example.yml'
'''BungeeCord服务器的命令'''
  你可以使用“Server:<目标服务器>
  这个命令将会使使用者尝试连接到目标服务器。
  范例:
    COMMAND: 'server: hub'
'''玩家点券(使用PlayerPoint插件)'''
  在范例中,50个点券会给使用者,如果你想实现点击扣除点卷的功能,请看节点points。
  范例:
    COMMAND: 'give-points: 50'
'''Boss血条消息(使用BarApi插件)'''
发送一条boss血条消息, 格式是: 'dragon-bar: <以秒为单位的时间> | <消息>'.
在下面的范例中, 一个boss血条将会出现在点击这个图标的人的视野内10秒, 消息会显示他的名字。
  范例:
    COMMAND: 'dragon-bar: 10 | &a你好, {player}!'


= 菜单牌设置教程 =
=== 一般命令 ===
== 如何创建指示牌 ==
指令前不需要添加“/”,除了WorldEdit的命令。
  放置一个牌子
  在牌子的首行输入[Menu](需要权限: "chestcommands.sign")
  在第二行输入菜单名字(需要在名称后加上".yml")


== 验证 ==
这个例子演示了如何在点击的时候将强制执行命令/Spawn。
  如果该菜单已经成功创建,则第一行的[Menu]则会变成蓝色,右键即可打开菜单。
  如果该牌子创建有误,则第一行的[Menu]则会变成红色,并且在聊天框里会返回错误信息。
== 范例 ==
暂无


== 符号教程 ==
范例:
  这些符号可以运用在文本中。
== 符号 ==
  <3 = ❤
  [*] = ★
  [**] = ✹
  [p] = ●
  [v] = ✔
  [+] = ♦
  [++] = ✦
  [x] = █
  [/] = ▌
  [cross] = ✠
  [arrow_right] = →
  [arrow_left] = ←
  [arrow_up] = ↑
  [arrow_down] = ↓
=== 添加新的符号 ===
  打开文件placeholders.yml,按照这样的格式添加一行:
  名称: 内容
  [special]: \u2726 Special Item \u2726
  这表示着文中的[special]将会被替换✹ Special Item ✹。
  你可以使用任何的Unicode符号,使用java语言。网站:
  http://www.fileformat.info/info/unicode/index.htm


= 命令与权限的教程 =
COMMAND: 'spawn'
== 全部权限与命令 ==
 
 
=== 以控制台的身份执行命令 ===
要小心使用这个命令!
 
若要用控制台的身份执行命令,请在命令前方加入"console:"
 
范例:
 
COMMAND: 'console: say Hello world!'
 
=== 以OP的身份执行命令 ===
要小心使用这个命令!
 
若要用op的身份执行命令,请在命令前方加入"op:"
 
范例:
 
COMMAND: 'op: say 你好世界!'
 
=== 多个指令 ===
用分号分隔多个命令";"。这个例子让玩家执行命令,顺序是先执行 /spawn,然后再执行/me!
 
范例:
 
COMMAND: 'spawn; me 我被传送到重生点!'
 
=== 私聊玩家 ===
像以前的例子,把tell:后面的内容私聊发送给玩家,你可以使用颜色代码和符号!
 
在范例中,信息将是红色的!
 
范例:
 
COMMAND: 'tell: &c你好!'
 
=== 广播消息 ===
每个人都能看到这个消息!
 
范例:
 
COMMAND: 'broadcast: {player}太棒了!'
 
=== 播放音乐 ===
一个音乐由3个参数构成(只有一个是必须的)这三个参数用逗号分隔。他们的格式是: 'sound: <声音的名字>, [范围], [音量]'
 
范例:
 
COMMAND: 'sound: ghast scream, 2.0, 0.5'
 
=== 给予物品 ===
这是一个用于给予物品的基础命令,您可以更改给予物品的数量和类型,对于更高级的事情,请使用vanilla命令.
 
下面是给玩家10个黑色羊毛的指令。
 
范例:
 
COMMAND: 'give: wool:15, 10'
 
=== 给予金钱 ===
这个命令将会给使用者金钱。
 
你需要前置插件Vault和一个经济插件。
 
范例:
 
COMMAND: 'give-money: 100.0'
 
=== 打开其他菜单 ===
就像在控制台的指令,输入“open:文件名”。“文件名”就是菜单的名字。如果菜单不存在将会显示一个错误的信息。
 
使用者需要相应权限来打开菜单。
 
范例:
 
COMMAND: 'open: example.yml'
 
=== BungeeCord服务器的命令 ===
你可以使用“Server:<目标服务器>
 
这个命令将会使使用者尝试连接到目标服务器。
 
范例:
 
COMMAND: 'server: hub'
 
=== 玩家点券(使用PlayerPoint插件) ===
在范例中,50个点券会给使用者,如果你想实现点击扣除点卷的功能,请看节点points。
 
范例:
 
COMMAND: 'give-points: 50'
 
=== Boss血条消息(使用BarApi插件) ===
发送一条boss血条消息, 格式是: 'dragon-bar: <以秒为单位的时间> | <消息>'.
 
在下面的范例中, 一个boss血条将会出现在点击这个图标的人的视野内10秒, 消息会显示他的名字。
 
范例:
 
COMMAND: 'dragon-bar: 10 | &a你好, {player}!'
 
== 菜单牌设置教程 ==
=== 如何创建指示牌 ===
放置一个牌子
 
在牌子的首行输入[Menu](需要权限: "chestcommands.sign")
 
在第二行输入菜单名字(需要在名称后加上".yml")
 
=== 验证 ===
如果该菜单已经成功创建,则第一行的[Menu]则会变成蓝色,右键即可打开菜单。
 
如果该牌子创建有误,则第一行的[Menu]则会变成红色,并且在聊天框里会返回错误信息。
 
=== 符号教程 ===
这些符号可以运用在文本中。
 
=== 符号 ===
* <3 = ❤
* [*] = ★
* [**] = ✹
* [p] = ●
* [v] = ✔
* [+] = ♦
* [++] = ✦
* [x] = █
* [/] = ▌
* [cross] = ✠
* [arrow_right] = →
* [arrow_left] = ←
* [arrow_up] = ↑
* [arrow_down] = ↓
 
==== 添加新的符号 ====
打开文件placeholders.yml,按照这样的格式添加一行:
 
名称: 内容
 
[special]: \u2726 Special Item \u2726
 
这表示着文中的[special]将会被替换✹ Special Item ✹。
 
你可以使用任何的Unicode符号,使用java语言。网站: http://www.fileformat.info/info/unicode/index.htm
 
== 命令与权限的教程 ==
=== 全部权限与命令 ===
{| class="wikitable"
{| class="wikitable"
|-
|-
第300行: 第425行:
=== 出售物品 ===
=== 出售物品 ===
以100元/个钻石的价格卖给使用者。
以100元/个钻石的价格卖给使用者。
 
  '''例子:'''
'''例子:'''
<pre>
     COMMAND: 'give: 264'
     COMMAND: 'give: 264'
     PRICE: 100
     PRICE: 100
第308行: 第434行:
     POSITION-X: 1
     POSITION-X: 1
     POSITION-Y: 1
     POSITION-Y: 1
</pre>


=== 收购物品 ===
=== 收购物品 ===
以10元/64个泥土的价格从玩家背包里收购。
以10元/64个泥土的价格从玩家背包里收购。
 
  '''例子'''
'''例子:'''
<pre>
     COMMAND: 'givemoney: 10'
     COMMAND: 'givemoney: 10'
     REQUIRED-ITEM: 3, 64
     REQUIRED-ITEM: 3, 64
第319行: 第447行:
     POSITION-X: 1
     POSITION-X: 1
     POSITION-Y: 1
     POSITION-Y: 1
</pre>
== 注释与外部链接 ==
* [https://github.com/filoghost/ChestCommands Github]


== Github ==
[[Category:综合]][[Category:娱乐]][[Category:管理]]
  https://github.com/filoghost/ChestCommands
== 捐助 ==
如果你有能力,建议给作者一些捐助
他的paypal链接: [https://www.paypal.com/cgi-bin/webscr?return=http%3A%2F%2Fdev.bukkit.org%2Fbukkit-plugins%2Fchest-commands%2F&cn=Add+special+instructions+to+the+addon+author%28s%29&business=filoghost%40gmail.com&bn=PP-DonationsBF%3Abtn_donateCC_LG.gif%3ANonHosted&cancel_return=http%3A%2F%2Fdev.bukkit.org%2Fbukkit-plugins%2Fchest-commands%2F&lc=US&item_name=Chest+Commands+GUI+%28from+Bukkit.org%29&cmd=_donations&rm=1&no_shipping=1&currency_code=EUR 点击这里]
[[Category:综合]]
[[Category:娱乐]]
[[Category:管理]]

2021年6月5日 (六) 04:43的版本

本条目已有一定量的内容,但仍需完善

欢迎参与本条目的完善工作

你可以从以下几个方面入手

  • 参阅格式化手册,并对该页面进行相应格式排版工作;
  • 日常检查是否内容有更新版本并更新该页面;
  • 修复该页面中已出现/潜在的问题
Chest Commands Gui
外文名Chest Commands Gui
插件类型Spigot / CraftBukkit
最新版本v3.2.0
兼容服务端1.7,1.8,1.9,1.10,1.11,1.12,1.13
前置插件vault(可选)、PlayerPoints(可选)、任意一款经济插件(可选)。
源地址https://dev.bukkit.org/projects/chest-commands/

ChestCommandsGUI是一个简单而功能强大的Bukkit插件,可以用来创建GUI界面!

特色

  • 支持多菜单。
  • 可使用物品、指示牌、可配置的命令打开菜单。
  • 自定义占位符和符号。
  • 高质量代码。
  • 支持经济插件,可支持Vault(可选)。
  • 自动检测新版本。

扩展插件 / 联动插件

  • PlayerPoints - 点券
  • Vault - 经济插件
  • Scheduled Commands - 定时执行命令
  • Info Book - 首次登陆赠送教程书

配置文件存放目录

服务器根目录/plugins/ChestCommands/menu/XX.yml

创建菜单

  • 第一种方式:复制和粘贴现有的菜单,然后进行改动
  • 第二种方式:创建.yml文件,自己进行配置
  • (玩家打开GUI界面所需要的权限对大小写要求是非常严格的!)

基础总体设定

Menu-settings

你可以在菜单的顶部找到这些选项,“Menu settings:”部分

name: '&1Menu' (必须)

在打开菜单的时候将显示这个名称,自定义标题的长度不能超过30个字符(包括颜色字符,一个汉字=2字符)


rows:6(必须)

这个设置规定了菜单有多少行,正常显示的上限为6

虽然超过6后依然正常支持,但是材质贴图会崩.


command: 'menu'(可选)

这是打开菜单的命令(命令名),可以随便设置,注意不要重复,打开时使用“/cc open 你设置的命令名”


auto-refresh: 5 (可选)

需要刷新的的菜单将刷新变量。注意金钱和点数在每次交易后都会自动更新。


open-with-item: (可选)

id 'wool:1'— 打开一个菜单用一个特定的物品,可以要求特定的数值!

right-click: true / false - 是否可以通过右键点击打开菜单!

left-click: true / false - 是否可以通过左键点击打开菜单!

items

不要用带有大写字母、颜色代码或符号的内部名称(读下面),请记住,在同菜单中项目名称不可重复。

每个项目都是由一个内部名称(对于玩家不可见)和节点组成,可以分配命令,自定义名称与图标。

一个单独的项目应该这样写:

    spawn-item:
     ID: bed
     COMMAND: 'spawn'
     NAME: '&aReturn to spawn'
     LORE:
        - 'This is the lore of the item.'
        - 'These lines appear below the name.'
     POSITION-X: 1
     POSITION-Y: 1
    NAME, COMMAND, ID, ...被称为“节点”,每个项目可以有不同的节点来定制它。点击查看[https://dev.bukkit.org/bukkit-plugins/chest-commands/pages/tutorial/nodes/ 节点列表]。

每个项目必须要有坐标节点:POSITION-X 和 POSITION-Y.

节点配置教程

此页包含了一个节点列表,他可以用于所有图标!

注:这三个节点严格要求每一项 ID position-x position-y 。

ID

图标的项标识。你可以用数字和文字标识,但是我推荐使用文字更好的可读性。文字标识列表:这里(不区分大小写),可以省略下划线。

范例:ID: stone、

你可以使用数据值,但是必须要把数值放在单引号中!数量是可选的并且用逗号隔开。

范例 (10个黑羊毛):

ID: 'wool:15, 10'

POSITION-X / POSITION-Y

有三个所需的节点。他们设置了图标的位置。你可以很容易地通过这个表找到这个坐标:

范例:

POSITION-X: 5

POSITION-Y: 1

NAME

这个节点可以设置图标的显示名称。你可以使用颜色代码和符号。

范例:

NAME: '&6这是一个有颜色的名字!'

LORE

该节点显示下方的文字。你可以使用颜色代码和符号。

例子:

    Example:
     LORE:
     - 'Description of the item'
     - 'Some other details'
     - '&cImportant note'

ENCHANTMENT

这个节点设置了结界,将出现在一个项目,主要是用于附魔发光的效果。

范例:

ENCHANTMENT: 'fire aspect, 1'

附魔等级是可选的。您可以使用多种附魔,通过用分号分开它们!

范例:

ENCHANTMENT: 'sharpness, 5; durability, 10; silk touch'

COLOR

这里可以设置皮革盔甲的颜色,也就是意味着如果ID那里不是皮甲的ID的话,就可以直接删去这一行了,格式是'<red>, <green>, <blue>',每个值必须在0-255之间。

范例:

COLOR: '255, 0, 0'

SKULL-OWNER

这里填写的是正版玩家的名称,如果ID那里不是 397且DATA-VALUE不是 3(玩家的头颅的ID)的话,就可以直接删去这一行了,这个节点用于在玩家头颅的图标上显示指定正版玩家的皮肤的头颅的那部分

范例:

SKULL-OWNER: 'filoghost'

COMMAND

这个节点设置可以设置命令(没有”/“前缀),它支持各种各样的命令,在满足所有的限制后(花费的钱,权限一类的限制)才会执行,多个命令使用“;”(英文状态)分隔

它不仅仅可以执行命令,与其他节点搭配会创造出更多的功能

指令是一个较为复杂的节点

范例:

COMMAND: 'spawn'

PRICE

(需要前置插件:Vault)

这个节点设置点击时的价格。玩家没有足够的钱将不会执行命令!

范例:

PRICE: 100.0

LEVELS

这个值设定了点击指定物品所需要的经验值等级。如果玩家点击时没有足够的经验值等级命令将不会触发;反之,对应的经验值等级将被扣除

范例:

LEVELS: 5

POINTS

(需要前置插件:PlayerPoints)

这个节点设置点击时的所需要的点券。如果玩家没有足够的点券将不会执行命令!

POINTS: 50

REQUIRED-ITEM

这个节点设置点击所需要的物品,没有该物品的命令将不会被执行,格式都是相同的ID。

范例:(三十个橙色染色玻璃)

REQUIRED-ITEM: 'stained glass:1, 30'

KEEP-OPEN

该节点规定了如果点击节点后,是否保持打开GUI界面(默认不保持),值可以是True或者False。

范例:

KEEP-OPEN: true

PERMISSION

这里可以自定义点击该图标所需要的的权限,(注意最好不要和其他插件的权限重复),没有该权限的玩家点击该节点将不会执行指令,你也可以反向使用它(在权限前面加一个"-"号)如: '-my.custom.permission',这代表了没有"my.custom.permission"权限的玩家才能点击执行该节点

范例:

PERMISSION: 'my.custom.permission'

VIEW-PERMISSION

这里可以自定义看到该图标所需要的的权限,(注意最好不要和其他权限重复),没有该权限看不到该图标,你依然可以反向使用它,如:'-my.custom.permission',这代表了没有"my.custom.permission"权限的玩家才能看见该节点

范例:

VIEW-PERMISSION: 'my.custom.permission'

PERMISSION-MESSAGE

这个节点设置了玩家没有权限时的提示消息(可以删去,删除即使用默认消息,在config.yml可以看见并且你可以修改它)

范例:

PERMISSION-MESSAGE: '&c你必须是VIP才能购买这个物品!'

点击动作教程

本指南教程了点击某个图标时候所发生的动作,没有其他动作!

打开其他图形界面的

如果一个命令能打开其他插件的图形界面,请设置KEEP-OPEN为True!

变量与指令

这些变量可以用于点击菜单时候的命令,菜单的叙述列表,菜单的名字。

  • {player} (使用者名字)。
  • {world} (使用者所在世界)。
  • {online} (在线玩家数量)。
  • {max_players} (服务器玩家上限)。
  • {money} (玩家的金钱,你必须拥有 Vault 插件)。

一般命令

指令前不需要添加“/”,除了WorldEdit的命令。

这个例子演示了如何在点击的时候将强制执行命令/Spawn。

范例:

COMMAND: 'spawn'

以控制台的身份执行命令

要小心使用这个命令!

若要用控制台的身份执行命令,请在命令前方加入"console:"

范例:

COMMAND: 'console: say Hello world!'

以OP的身份执行命令

要小心使用这个命令!

若要用op的身份执行命令,请在命令前方加入"op:"

范例:

COMMAND: 'op: say 你好世界!'

多个指令

用分号分隔多个命令";"。这个例子让玩家执行命令,顺序是先执行 /spawn,然后再执行/me!

范例:

COMMAND: 'spawn; me 我被传送到重生点!'

私聊玩家

像以前的例子,把tell:后面的内容私聊发送给玩家,你可以使用颜色代码和符号!

在范例中,信息将是红色的!

范例:

COMMAND: 'tell: &c你好!'

广播消息

每个人都能看到这个消息!

范例:

COMMAND: 'broadcast: {player}太棒了!'

播放音乐

一个音乐由3个参数构成(只有一个是必须的)这三个参数用逗号分隔。他们的格式是: 'sound: <声音的名字>, [范围], [音量]'

范例:

COMMAND: 'sound: ghast scream, 2.0, 0.5'

给予物品

这是一个用于给予物品的基础命令,您可以更改给予物品的数量和类型,对于更高级的事情,请使用vanilla命令.

下面是给玩家10个黑色羊毛的指令。

范例:

COMMAND: 'give: wool:15, 10'

给予金钱

这个命令将会给使用者金钱。

你需要前置插件Vault和一个经济插件。

范例:

COMMAND: 'give-money: 100.0'

打开其他菜单

就像在控制台的指令,输入“open:文件名”。“文件名”就是菜单的名字。如果菜单不存在将会显示一个错误的信息。

使用者需要相应权限来打开菜单。

范例:

COMMAND: 'open: example.yml'

BungeeCord服务器的命令

你可以使用“Server:<目标服务器>

这个命令将会使使用者尝试连接到目标服务器。

范例:

COMMAND: 'server: hub'

玩家点券(使用PlayerPoint插件)

在范例中,50个点券会给使用者,如果你想实现点击扣除点卷的功能,请看节点points。

范例:

COMMAND: 'give-points: 50'

Boss血条消息(使用BarApi插件)

发送一条boss血条消息, 格式是: 'dragon-bar: <以秒为单位的时间> | <消息>'.

在下面的范例中, 一个boss血条将会出现在点击这个图标的人的视野内10秒, 消息会显示他的名字。

范例:

COMMAND: 'dragon-bar: 10 | &a你好, {player}!'

菜单牌设置教程

如何创建指示牌

放置一个牌子

在牌子的首行输入[Menu](需要权限: "chestcommands.sign")

在第二行输入菜单名字(需要在名称后加上".yml")

验证

如果该菜单已经成功创建,则第一行的[Menu]则会变成蓝色,右键即可打开菜单。

如果该牌子创建有误,则第一行的[Menu]则会变成红色,并且在聊天框里会返回错误信息。

符号教程

这些符号可以运用在文本中。

符号

  • <3 = ❤
  • [*] = ★
  • [**] = ✹
  • [p] = ●
  • [v] = ✔
  • [+] = ♦
  • [++] = ✦
  • [x] = █
  • [/] = ▌
  • [cross] = ✠
  • [arrow_right] = →
  • [arrow_left] = ←
  • [arrow_up] = ↑
  • [arrow_down] = ↓

添加新的符号

打开文件placeholders.yml,按照这样的格式添加一行:

名称: 内容

[special]: \u2726 Special Item \u2726

这表示着文中的[special]将会被替换✹ Special Item ✹。

你可以使用任何的Unicode符号,使用java语言。网站: http://www.fileformat.info/info/unicode/index.htm

命令与权限的教程

全部权限与命令

命令 权限 叙述
/chestcommands 或 /cc - 显示插件信息
/cc help chestcommands.command.help 列出所有命令
/cc reload chestcommands.command.reload 重载插件
/cc open <路径> chestcommands.command.open 打开指定菜单(需要相应权限)
/cc open <路径> [玩家] chestcommands.command.open.others 为其他玩家打开菜单(不需要相应权限)
/cc list chestcommands.command.list 列出所有已加载的菜单
- chestcommands.update 显示更新信息
- chestcommands.open.XXX.yml 打开XXX菜单的权限
- chestcommands.economy.bypass 免费使用
- chestcommands.sign 创建牌子

出售物品

以100元/个钻石的价格卖给使用者。

例子:

    COMMAND: 'give: 264'
    PRICE: 100
    NAME: '从系统买一颗钻石'
    ID: 264
    POSITION-X: 1
    POSITION-Y: 1

收购物品

以10元/64个泥土的价格从玩家背包里收购。

例子:

    COMMAND: 'givemoney: 10'
    REQUIRED-ITEM: 3, 64
    NAME: '卖给系统泥土'
    ID: 3
    POSITION-X: 1
    POSITION-Y: 1

注释与外部链接