QE菜单是一个美观、实用、可高度自定义的游戏内菜单Mod,可以用来定制和管理多个菜单,并在游戏中执行各种自定义操作。
比如自动输入登录密码、一键回家、回复队友信息,以及更多!
注意:本Mod是客户端Mod,无需安装到服务端!
演示效果图:
功能介绍:
1.基础操作
QEMenu按键:
1.打开面板:默认C;
2.打开选项:默认Alt+M(然而1.7.10Forge不支持组合键,所以只有M)。
键位可在 选项 → 控制 → QEMenu 按键设置 中修改。
游戏中按住“打开面板”键呼出面板。面板不影响移动操作。
打开面板时点击鼠标左右键切换不同面板。
鼠标指向面板按钮并释放“打开面板”键,可触发按钮并退出面板。
主界面或游戏中按下“打开选项”键打开QEMenu选项界面,再次按下退出选项。
在面板选项或按钮选项界面中按下“打开面板”键预览面板,再次按下退出预览。
2.面板选项
在QEMenu选项界面中,点击“面板选项”进入面板选项界面。
一个面板由中心面板和自定义按钮组成。
中心面板是屏幕正中央的圆形面板,包含分隔线和3个或3个以上的中心按钮。
左侧“面板列表”列出了你所拥有的全部面板。
第一个面板为主要面板,它的启用状态和方向无效。其他面板的面板方向决定它位于主要面板的左边还是右边。
为了您的使用体验,建议面板数量不要太多,以最多3个为佳。
左键点击列表中的面板,会在右侧显示选项窗口。
左键拖拽可交换面板顺序。
右键点击面板,打开菜单,进行更多操作。
左键双击进入该面板的按钮选项界面。
面板选项的具体效果各位可以慢慢尝试,特别指出其中5个:
1.面板名称:面板的显示名称,支持颜色代码,可用&作前缀;
2.中心面板-分隔线-起始颜色:设置分隔线靠近圆心一端的颜色,与结束颜色配合可形成渐变效果,颜色为ARGB,支持透明度,其他颜色选项同理;
3.分割数:把中心面板分割为多少个按钮,至少为3个,但建议不要超过8个以免影响实用性;
4.割圆弧长:圆形?不存在的,只有割圆术。割得越细,看起来就越圆,通常默认值10已经足够圆了,不要作死设置太小(比如0.00001)以免CPU爆炸。若设置值很大(或干脆设为Infinity)则面板变为正多边形,合理控制大小可能产生意外收获(比如附件演示面板Demo1)。
5.分隔线起始距离、结束距离:对这两个选项恢复默认,会自动根据你当前的按钮动画位移和中心面板的半径算出合适的值。
3.按钮选项
左侧两个列表为中心按钮列表和自定义按钮列表。
左键拖拽可交换中心按钮顺序,自定义按钮无顺序。
自定义按钮可自由设置位置,目前只有矩形。
按钮选项的具体效果各位可以慢慢尝试,特别指出其中3个:
1.按钮文本:按钮的显示文本,支持颜色代码,可用&作前缀;
2.按钮声音:触发按钮播放的声音。编辑器中按回车可播放/停止选中的音效,按↑↓键可以切换选择的音效;
3.脚本动作:触发按钮执行的动作,可以设置多条顺序执行。可通过双击按钮直接打开编辑器。编辑器中在行首/行尾按回车可在分别在上方/下方新增一行,退格键、删除键同理。可用""把整行命令包围起来防止命令中的空格被掐头去尾。部分命令支持占位符。
脚本动作(<>表示必填,[]表示选填):
脚本动作支持的占位符说明
DELAY:无延时,单位tick。如“DELAY:20”表示延时1秒钟。
CHAT:[text]玩家名字发送一条聊天信息(包括命令)。如“CHAT:你好”。
CHATBOX:[text]玩家名字
光标位置
选择点位置打开聊天框并预先设置内容以及光标位置。如“CHATBOX:你好,!”,当你的名字是Player时,这表示打开聊天框并自动填入“你好,Player!”,光标位于Player之前并选中整个Player文字。
TEXT:玩家名字在聊天框输出一条原生json消息(仅自己可见),与tellraw指令效果类似。如“TEXT:{"text":"MCBBS","clickEvent":{"action":"open_url","value":"http://www.mcbbs.net/"}}”表示显示文字“MCBBS”且点击文字后打开mcbbs链接。可通过这个网站生成原生json消息:https://www.minecraftjson.com/。
4.脚本
QEMenu在2.0.0版后支持执行JavaScript脚本。
要编辑脚本,请打开配置目录中的scripts.js文件。
所有的动作都使用同一个上下文,目前上下文中的预置对象有:
logger org.apache.logging.log4j.Logger类型,用于输出日志信息;
player net.minecraft.client.entity.EntityClientPlayerMP类型,玩家客户端实体对象;
printChatMessage 函数,接受一个参数,用于输出信息到玩家聊天框;
displayGuiScreen 函数,接受net.minecraft.client.gui.GuiScreen类型的参数,用于打开GUI。
1.基本:
要编写一个动作函数,请参考以下范例:/**
* 函数名称任意,编辑动作时使用该名称。
* @参数 task 执行动作的任务对象,对脚本编写者暂时无用,但必须有
* @参数 arg 动作语句提供的字符串参数
**/
function TEST(task, arg) {
//TODO
}
编写完毕后,点击“重载脚本”按钮,即可在动作编辑界面使用该函数。
2.高级:
可以为动作函数添加一个新的属性——parse函数。/**
* 当存在parse函数时,arg的类型由parse函数决定。
**/
function TEST(task, arg) {
//TODO
}
/**
* 将动作语句提供的字符串参数转换为中间数据。
* 也可以用于校验参数的合法性,抛出异常即表明参数不合法。
* @参数 arg 动作语句提供的字符串参数
* @返回 转换后的数据
* @抛出 转换过程中任何可能产生的异常
**/
TEST.parse = function(arg) {
//TODO
return arg;
}
3.完整示例:
编写一个新的动作“打开选项”,用于打开QEMenu的选项界面。var GuiOptionsFrame = Java.type("net.saralab.qemenu.client.gui.options.GuiOptionsFrame");
var GuiOptionsGlobal = Java.type("net.saralab.qemenu.client.gui.options.global.GuiOptionsGlobal");
function 打开选项(task, arg) {
displayGuiScreen(new GuiOptionsFrame(new GuiOptionsGlobal(), null));
}
打开选项.parse = function(arg) {
if (arg != null)
throw new java.lang.IllegalArgumentException(arg);
return null;
}
下载地址 | 点此下载 |
适用版本:1.12.2 1.7.10