FancyMenu Wiki/按钮
关于
你可以为菜单创建自定义按钮并指定它们可以做什么。
FancyMenu提供了一些非常有用的按钮行为,你可以使用它们打开链接、加入服务器、执行命令等。
创建自定义按钮
在添加自定义按钮到菜单前,你需要先创建一个布局。
当你在布局编辑器中时,只需要在布局中添加一个新的按钮元素。
然后你可以右键那个你新添加的按钮给它设置按钮行为。
按钮行为
按钮行为 | 操作 | 是否需要值 | 值内容 | 值样例 |
---|---|---|---|---|
openlink | 使用你的默认浏览器打开链接 | 是 | 链接 | https://crt.imc.wiki |
sendmessage | 在聊天栏中发送信息或命令 | 是 | 信息/命令 | Hi everyone! /time set 0 |
quitgame | 退出Minecraft | 否 | ||
joinserver | 加入一个Minecraft服务器 | 是 | 服务器IP | 127.0.0.1:25565 srv.serverip.sample |
loadworld | 加载Minecraft世界(从Minecraft客户端中打开可玩存档) | 是 | 世界文件夹名 | MiniWorld |
openfile | 打开文件或文件夹 | 是 | 文件或文件夹路径 | mydata/info.txt images/minecraft |
movefile | 移动文件到新路径 | 是 | 旧文件路径与新路径使用(;)分割 | path/to/file.txt;new/path/of/file.txt |
deletefile | 完全删除文件 | 是 | 文件路径 | path/to/file.txt |
renamefile | 重命名一个文件 | 是 | 文件路径和它的新名字使用(;)分割 | path/to/file.txt;newfilename.txt |
downloadfile | 从网上下载文件 | 是 | 文件Url路径和本地路径 | https://crash.work/Ver.txt;path/to/save/Ver.txt |
unpackzip | 解压ZIP文件 - 此行为运行在主线程上,在解压完成前游戏会被冻结 | 是 | 文件路径和解压路径,使用(;)分割 | path/to/archive.zip;unpack/to/path/ |
prevbackground | 切换到菜单上一背景动画 | 否 | ||
nextbackground | 切换到菜单下一背景动画 | 否 | ||
opencustomgui | 打开你的一个自定义GUIs | 是 | 自定义GUI标识符 | mycoolmenu |
opengui | 通过菜单标识符打开一个现有的GUI | 是 | 菜单标识符(在菜单按钮中点击"Menu Info"即可得到标识符) | the.menu.identifie |
reloadmenu | 重载当前菜单、自定义文件、mod配置、按钮脚本等,此行为和右上角的"Reload"按钮差不多 | 否 | ||
runscript | 运行按钮脚本 | 是 | 不带后缀名的按钮脚本名 | myscript |
mutebackgroundsounds | 开关FancyMenu添加的背景音频 | 是 | true/false | true |
runcmd | 运行CMD/终端命令,支持为不同的操作系统设置不同的命令[1] | 是 | 命令 | start_server.bat 或者 [linux:./start_server.sh]; [windows:start_server.bat]; |
closegui | 关闭现在的菜单/GUI | 否 | ||
mimicbutton | 模仿原版按钮的按钮动作[2] | 是 | 目标按钮的按钮定位器 | some.menu.identifier:23938 |
join_last_world | 进入上一个世界/服务器,只有在FancyMenu v2.6.6+有效! | 否 | ||
set_variable | 储存/设置一个变量,用于占位符和可视化需求 | 是 | 变量名和变量值 | some_variable:3 |
clear_variables | 清除所有储存的变量 | 否 | ||
paste_to_chat | 将一些东西粘贴到聊天文本区中[3] | 是 | append的true/false判断和需要粘贴的文本 | true:How are you? |
toggle_layout | 切换(启用/禁用)一个菜单布局 | 是 | 布局名 | some_cool_layout |
enable_layout | 启用一个菜单布局 | 是 | 布局名 | some_cool_layout |
disable_layout | 禁用一个菜单布局 | 是 | 布局名 | some_cool_layout |
注释
- ↑ 要为不同的操作系统设置单独的命令,只需像这样格式化你的值
[windows:start.bat];[macos:./start];[linux:./start.sh];
这样,就会在Windows运行start.bat,在macOS运行./start,在linux运行./start.sh。
每一命令需要放在([ ])中,且需要使用(;)分割。 - ↑ 要使用此行为,你需要获取要模仿的目标原版按钮的按钮定位器。
按钮定位器基本上只是按钮所在菜单的标识符和按钮 ID 的组合,用冒号(:)分割。
你可以使用Menu Info tool获取菜单按钮的菜单标识符。
然后用Button Info tool悬停在目标按钮上即可获得按钮ID。
如果你是使用布局编辑器复制按钮ID的,那请别忘了删除 vanillabtn:前缀(btn是button的缩写)。
你只需要数字部分。
那么现在把菜单标识符和按钮ID掺和一起:
menu_identifier:button_id
这就是你的按钮定位器了,使用它作为模仿的按钮行为的值即可。 - ↑ 如果 append 为true,它会文本添加到聊天文本区中。 如果为false,它会覆盖聊天文本区。
此功能一般用于快捷回复。