超级版主
- 积分
- 1223
- UID
- 1045
- 威望
- 0 點
- 贡献
- 0 次
- 金钱
- 1082 枚
- D币
- 0 个
- 世界币
- 77 个
- 主题
- 105
- 在线时间
- 196 小时
- 注册时间
- 2017-5-17
- 最后登录
- 2024-10-25
|
本帖最后由 克拉克星人 于 2024-3-15 20:13 编辑
特征:
多菜单支持.
通过项目自定义图标/自定义指令/自定义牌子打开菜单,方便又高端.
可以自定的占位符&符号,♂♂♂♂♂♂♂用你的基情填满它.
高质量的代码,减少卡顿,BUG.
支持大量经济插件,经济用途.还为你的建筑技术发愁?那就做一个掌上商店!
有更新自动通知,保持最新高端货.
' ' 内 支持中文,如果乱码请改ANSI编码
插件下载
ChestCommands3.1.4.jar
(126.71 KB, 下载次数: 5810)
你们想要看的菜单基础教程来了 点击进入
一、指令和权限
指令 | 权限 | 详细 | /chestcommands 或 /cc | - | 主指令,用于查看信息/更新/指令帮助 | /cc help | chestcommands.command.help | 列出指令 | /cc reload | chestcommands.command.reload | 重新读取配置文件 | /cc open <file> | chestcommands.command.open | 直接打开一个指定菜单,你除了需要有左边的权限还需要有打开该菜单的权限 | /cc open <file> [player] | chestcommands.command.open.others | 为某个玩家打开指定菜单,不许要指定玩家有权限 | /cc list | chestcommands.command.list | 列出当前已有的菜单 | - | chestcommands.update | 在进入游戏且有更新时会收到提示 | - | chestcommands.open.filename.yml
chestcommands.item.filename.yml | 只有拥有该权限的玩家才能通过指令打开指定菜单(右键/左键/命令/牌子),filename替换为菜单名
只有拥有该权限的玩家才能通过物品打开指定菜单(右键/左键/命令/牌子),filename替换为菜单名
(感谢 @熊猫不会飞 的提醒) | - | chestcommands.economy.bypass | 拥有该权限的玩家可以无视扣钱 | - | chestcommands.sign | 拥有该权限的玩家可以创建菜单牌子 |
怎么添加权限 ?(1/2只打一组指令即可,看你服务器加的是哪个权限插件)
1.GroupManager插件
①打指令添加(默认权限组builder)
/mangaddp builder chestcommands.item. builder组玩家有权限使用菜单物品
/mangaddp builder chestcommands.item.cd.yml builder组玩家有权限通过物品打开cd.yml菜单(cd.yml为菜单名)
/mangaddp builder chestcommands.open.cd.yml builder组玩家有权限通过指令打开cd.yml菜单(cd.yml为菜单名)
PS:物品和指令可通过修改菜单插件配置文件获得plugins/ChestCommands/menu文件夹内文件
②配置文件添加
打开文件plugins\GroupManager\worlds\world(多世界名)\groups.yml将这3条权限添加到权限组内
- chestcommands.item.
- chestcommands.item.cd.yml
- chestcommands.open.cd.yml
如下
- Builder:
- default: true
- permissions:
- - chestcommands.item.
- - chestcommands.item.cd.yml
- - chestcommands.open.cd.yml
- inheritance:
- - default
- - g:essentials_builder
- - g:towny_builder
- info:
- build: true
- prefix: '&2'
- suffix: ''
- !!!不要点复制代码,此为示范
复制代码 PS:cd.yml为plugins\ChestCommands\menu文件夹内文件
(更详细菜单制作会陆续更新)
2.LuckPerms插件
打指令添加(默认权限组default)
/luckperms group default permission set chestcommands.item. default组玩家有权限使用菜单物品
/luckperms group default permission set chestcommands.item.cd.yml default组玩家有权限通过物品打开cd.yml菜单(cd.yml为菜单名)
/luckperms group default permission set chestcommands.open.cd.yml default组玩家有权限通过指令打开cd.yml菜单(cd.yml为菜单名)
PS:物品和指令可通过修改菜单插件配置文件获得plugins/ChestCommands/menu文件夹内文件
二、基础(菜单是如何组成及如何修改)
修改现有菜单:
打开文件夹: /plugins/ChestCommands/menu/
修改配置文件(这里推荐使用Notepad++)
创建一个新的菜单:
最简单,稳定的途径是:复制粘贴现有菜单,更改设定,修改你需要的物品/指令
在这里建议文件名小写,因为权限对大小写很敏感
菜单总体设定:(你可以在菜单文件内的顶部,在配置节点"menu-settings"下面找到它们)
name: '&1Menu' (必须存在)
↑这个将会成为打开菜单后显示在左上角的自定义标题.不能大于30字符(包括颜色代码)(一个汉字=2字符)
该例将会显示为:细体蓝色"Menu"
rows: 6 (必须存在)
↑这个是打开菜单后将会显示的行数.数字只能在1-6之间(6相当于一个大箱子)(过高玩家客户端将会无法显示)
该例将会显示为6行,同一个大箱子
command: 'menu'(可添加,可删去)
↑这个是一种打开菜单的途径:自定义指令,请注意它将覆盖掉已存在的指令强行打开菜单(如/home,/back之类)所以尽量不要重复.当然你可以使用分号让一个菜单使用多种指令打开.如 command: 'menu; m; mainmenu'
该例将会使得 /menu 能打开该菜单.(二例使得 /menu 或 /m 或 /mainmenu 能打开该菜单)
auto-refresh: 5(可添加,可删去)
↑这个是菜单自动刷新的频率.注意,金钱和点券会在每次交易后都会自动更新(? 由于一段时间的离坑,作者介绍也没详细,UP这里没懂,稍后会改动.)
open-with-item: (可添加,可删去)
id: 'wool:1' - 另一种打开菜单的途径:手持该物品(左键/右键)能打开该菜单. 可以使用附加值.可以使用物品名称/物品ID 详请点击(需要注意这个ID列表始终为最新状态,旧版本Minecraft需要注意避免使用旧版本没有的方块ID)
right-click: true - 如果你想右键(上面设置的)物品来打开菜单,请设置为true
left-click: false - 如果你想左键(上面设置的)物品来打开菜单,请设置为true(左右两者可以同时为true)
需要注意,如果将 command: 'menu' 和 open-with-item: 都删去的话将只能通过插件指令(/cc open <文件名> [玩家名])打开菜单.
菜单物品细节设定:(配置内部名称请不要使用大写/颜色代码/符号(见下).并且请勿在同一个菜单配置里使用重复的名字)
每个配置的物品按钮都有他的内部名称(只是配置内区分,游戏内无论如何都不会看到的)和节点(可以配置它的指令,名称,介绍,显示).一个标准的物品配置如下:
↓这个"spawn-item"就是内部名称
spawn-item:
↓以下的都是节点(最少需要 ID和POSITION-X和POSITION-Y,其他项可以删除),详细将会在下一节解释
ID: bed
COMMAND: 'spawn'
NAME: '&a回到出生点'
LORE:
- '这是物品按钮的介绍.'
- '当鼠标移到按钮上后会显示在名称下面.'
POSITION-X: 1
POSITION-Y: 1
三、图标节点
注:这3个节点是严格要求存在的(ID&POSITION-X&POSITION-Y)
先列举一个包含所有节点的完整的按钮(但并不一定正确,原因见下)- spawn-item:
- ID: bed
- POSITION-X: 5
- POSITION-Y: 1
- NAME: '&6This is a colored name!'
- LORE:
- - 'Description of the item'
- - 'Some other details'
- - '&cImportant note'
- ENCHANTMENT: 'sharpness, 5; durability, 10; silk touch'
- COLOR: '255, 0, 0'
- SKULL-OWNER: 'filoghost'
- COMMAND: 'spawn'
- PRICE: 100.0
- LEVELS: 5
- POINTS: 50
- REQUIRED-ITEM: 'stained glass:1, 30'
- KEEP-OPEN: true
- PERMISSION: 'my.custom.permission'
- VIEW-PERMISSION: 'my.custom.permission'
- PERMISSION-MESSAGE: '&cYou must be VIP to use this item!
复制代码
ID——这里填写物品的ID/英文名称(即在菜单内部显示的方块),ID较为方便,但文字名称更易读取(不区分大小写,可以省略下划线). 物品ID列表
POSITION-X 和 POSITION-Y——这里填写数字,POSITION-X最大值为9,POSITION-Y最大值为6(超出范围不会显示该图标),这2个节点配合使用可以决定图标在菜单中的位置.
NAME——这里是鼠标停到图标上,在第一行所显示的自定义名称,你可以使用任何颜色代码和符号代码.(可以删去,删除即只会显示LORE/不显示任何东西)
LORE——这里是鼠标停到图标上,在名称下面所显示的描述,你可以使用任何颜色代码和符号代码.并且可以无限添加行数(当然,长度和行数请控制在可视范围内,超出范围的内容客户端看不到.) (可以删去,删除即只会显示名称/不显示任何东西)
ENCHANTMENT——这里是在显示图标上加上附魔属性.(但是属性大多然而并没有什么○用,使用这个节点一般只是因为附魔的发光效果美观) 附魔列表
当然,你可以为其附上多个属性,使用英文的分号";"分隔.(可以删去,删除即取消所有的附魔属性)
例: ENCHANTMENT: 'sharpness, 5; durability, 10; silk touch'
COLOR——这里是设置皮甲的颜色.也就是意味着如果ID那里不是皮甲的话,可以直接删去这一行了,代码的格式是'<red>, <green>, <blue>',每个值必须在0-255之间 颜色选取器
SKULL-OWNER——这里填写的是(正版)玩家的名称,如果ID那里不是 397:3(玩家的脑袋)话,可以直接删去这一行了,这个节点用于在玩家脑袋的图标上显指定(正版)玩家的皮肤(脑袋那部分)(如:显示为了纪念列出某个小游戏的创始人,把他的脸放进菜单,会更加醒目)
COMMAND——这里填写的是指令(不需要带"/"号),这里支持很多种类的指令.当不加前缀时指令的执行人是点击图标的那名玩家(当玩家没有执行该指令的权限时,点击图标将会无效). 指令是一个较为复杂的版块,详细的内容请见下一章:点击效果 (可以删去,删除即点击不执行任何指令)
PRICE——这里填写的是点击图标所收取的金钱,一般与指令节点搭配使用.(当玩家钱不足时将不会执行指令).需求前置经济插件 (可以删去,删除即点击不收取费用)
LEVELS——这里填写的是点击图标所收取的经验等级,一般与指令节点搭配使用.(当玩家等级不足时将不会执行指令). (可以删去,删除即点击不消耗等级)
POINTS——这里填写的是点击图标所收取的玩家点券,一般与指令节点搭配使用.(当玩家点券不足时将不会执行指令).这是一个其他插件兼容性的一个节点. Playerpoints 点券插件创造了除开"money"外的另一种货币,在这里你可以同金钱一样使用 (可以删去,删除即点击不收取玩家点券)
REQUIRED-ITEM——这里填写的是点击图标所收取的物品,一般可以做成RPG物品的合成/商店(配合指令give玩家XX物品).格式为 'stained glass:1, 30' 前面的"stained glass"为彩色玻璃,可以替换为相应ID,":1"为附加值,在这里为玻璃的颜色,橙色.(可以把":1"删去,这里就会变为白色玻璃)," 30"代表数量. 当收取多个物品时应该也可以用";"隔开 (可以删去,删除即点击不收取物品)
KEEP-OPEN——默认的图标点击之后是会自动关闭菜单的,若该节点为"true",将会在点击之后保持菜单打开的状态(特殊情况除外) (可以删去,删除即点击自动关闭,与"false"效果一致)
PERMISSION——这里可以自定义点击该图标的权限.(注意最好不要和其他插件权限重复),没有该权限点击将不会执行指令.你也可以反向使用它(在权限前面加一个"-"号)如: '-my.custom.permission',这代表了没有"my.custom.permission"权限的玩家才能点击执行该图标 (可以删去,删除即点击不需要权限,但是执行指令时的权限依旧必要)
VIEW-PERMISSION——这里可以自定义看到该图标的权限.(注意最好不要和其他权限重复),没有该权限看不到该图标.你也可以反向使用它,方法同上 (可以删去,删除即所有人可以看见,但是执行指令&点击时的权限(若存在)依旧必要)
PERMISSION-MESSAGE——这里可以自定义当没有权限时会弹出的消息. (可以删去,删除即使用默认消息,在config.yml可以见到&修改)
四、点击效果
注:如果图标节点内的指令节点"COMMAND"所填写的指令是打开另一个菜单,请务必保证"KEEP-OPEN"为"true".否则即使打开了也会马上关闭
一些变量:(可以在 COMMAND&NAME&LORE 这3个节点内使用)
{player}——将会显示为玩家名
{world}——将会显示当前所在世界
{online}——将会显示在线的玩家数
{max_players}——将会最大玩家数
{money}——将会显示你的存款余额,必须有" Vault"插件
{points}——显示点券余额,需要playerpoints插件
简单的指令:指令请直接填写在单引号内,不得包含日常使用时的"/"号,当然,"WorldEdit"插件除外,使用过的人都明白该插件一般使用时为"//"号
例: COMMAND: 'spawn' (点击执行/spawn 即返回出生点)
作为服务端执行指令:(请慎重使用该方法) 作为服务端执行指令可以无视所有指令的权限指令,在被点击后执行指令,但请注意一些指令只能在游戏中使用,若作为服务端使用可能会报错.使用格式:在指令前添加"console:"
例: COMMAND: 'console: say Hello world!' (点击图标服务器将会执行/say 即服务器冒出一段话)(玩家默认没有/say权限,但由于"console:"也能在菜单内执行该指令.)
作为管理员执行指令:(请慎重使用该方法) 作为OP执行指令一样可以绕过所有指令的权限指令,并且更加稳定(所以一般推荐这种),方法:同上添加"op:"
例: COMMAND: 'op: say Hello world!' (效果同上)
多个指令:使用";"分隔,可以点击图标时执行多个指令
例: COMMAND: 'spawn; me 我已回到出生点!' (执行/spawn&/me 返回出生点并发出消息:我已回到出生点)
向点击者发送消息:在一段话前面放一个"tell:"点击后将会直接发送给玩家(仅该玩家可见).(这段话支持彩色代码和符号代码)
例: COMMAND: 'tell: &cHello man!' (玩家点击后将会看到一句红色的Hello man!)
向全服发送广播:同上"broadcast:",但是全服可见
例: COMMAND: 'broadcast: {player} is awesome!' (玩家点击后将会向全服广播:<点击者>真棒!)
播放音效:只能播放Minecraft自带音效,添加自定义电台什么的还是不要想啦.格式为 'sound: <音效名称>, [音调类型], [音量]' (音效&音量一般为数字,在0-2之间) 音效列表
例: COMMAND: 'sound: ghast scream, 2.0, 0.5' (将会向点击者播放恶魂受伤时的尖叫)(一般可以作为点击图标的音效,更加生动)
给予物品:与"give"指令类似,但仅能给予物品. 添加"give:"
例: COMMAND: 'give: wool:15, 10' (将会给予10个黑羊毛)
给予金钱:需要有Vault和一个经济插件.
例: COMMAND: 'give-money: 100.0' (将会给你100)
打开其他的菜单:请保证"KEEP-OPEN"为"true",当然玩家也必须要有打开指定菜单的权限(详情查看指令&权限章节)
例: COMMAND: 'open: example.yml' (将会打开/plugins/ChestCommands/menu/下的example.yml)(若要打开你配置的请更改"example"为你的文件名)
BungeeCord指令(? 应该是跨服指令):你可以使用"server: <目标>",点击后玩家将会尝试连接到目标服务器.如果你不懂什么是BungeeCord,那就无视这一块吧.
例: COMMAND: 'server: hub'
Player Points(需求插件Player Points):效果同金钱
例: COMMAND: 'give-points: 50'
BOSS血条消息:(需求插件BarAPI):点击后通过BOSS血条发送一条消息,但是目前不知道BOSS血条插件支不支持中文.(所以请慎用中文)格式:"dragon-bar: <持续时间X秒> | <消息>"
例: COMMAND: 'dragon-bar: 10 | &aHello, {player}!' (将会在BOSS血条上显示10秒:泥嚎<点击者>)
五、符号代码
这些符号可以用在LORE&NAME&含"tell:"的COMMAND,使用"="前的代码在游戏中将会被替换成"="后的符号,支持颜色
添加自定义的图案:打开目录文件夹下的"placeholders.yml"添加一新的一行,格式:"被替换成符号的文本:符号字段" (符号字段请用U码转码之后写入) 例: "[special]: \u2726Special Item \u2726(在"LORE&NAME&含"tell:"的COMMAND"中输入"[special]"将会被替代为" "符号列表
经济插件需求:
Vault (必须是最新版本!)
一个兼容的经济插件 (iConomy, BOSEconomy..等)
建立菜单牌子:
如何建立一个右键打开菜单的牌子?
在合适的地方放置一个牌子
在牌子第一行输入[Menu] (你必须有权限"chestcommands.sign")
在第二行输入菜单的名称(注意是(/plugins/ChestCommands/menu/)内的文件名,可以不带".yml")
如果成功创建一个菜单牌子[Menu]将会变蓝,否则会变红并且报错
创建成功后右键牌子可以直接打开菜单(需要打开指定菜单的权限)
商店搭载:
首先请阅读完经济章节&点击效果章节.
出售物品:(例:以100元出售一个钻石) - example:
- COMMAND: 'give: 264'
- PRICE: 100
- NAME: '购买一个钻石'
- ID: 264
- POSITION-X: 1
- POSITION-Y: 1
复制代码
收购物品:(例:以10元收购64个泥土)
- example:
- COMMAND: 'givemoney: 10'
- REQUIRED-ITEM: 3, 64
- NAME: 'Sell dirt'
- ID: 3
- POSITION-X: 1
- POSITION-Y: 1
复制代码
|
|