Menu - 让你的玩家们不用忙于记指令吧!

JS插件 Menu - 让你的玩家们不用忙于记指令吧! 1.2.4 v4

没有购买权限 (金粒80粒)
资源类型
原创
版权链接
#
依赖
BDSJSRunner,Folder creator
语言
中文(简体)
支持版本
  1. 1.16
如有需要使用CSR版,请前往:

插件源码不发在minebbs(防白嫖),有需要的话请进入QQ群以获得!
现在不会有指令报错了!
对接经济插件,拥有更好的体验!
多种命令执行方式!
一个按钮可执行多个命令!
钟表点地即可打开菜单(默认)!

必选前置插件:BDSJSRunnerFolder creatorPluginCheck
可选前置插件:Essentials
注:使用本插件时,建议配合 进服给钟 食用!
注:请将Folder creator与BDSJSRunner放在同一个文件夹里(bdxcore_mod,即BDXC),否则文件夹无法创建!(貌似是加载顺序导致的问题)。

Q:如何构造空按钮?
A:"cmd"部分只填 [] 即可。

Q:怎么写菜单的配置文件?
A:请按照本贴中 JSON示例 中的内容进行编写,或者下载 教程.zip 文件,阅读其中的内容(建议先耐心看完本帖)。

Q:JSON要怎么写?
A:建议查看教程:

图片展示:

QQ图片20200810114113.jpg

QQ图片20200810114022.jpg

QQ图片20200821155706.jpg

JSON示例:

config.json文件
请勿修改":"前的部分,作者一概不为此问题负责!
"name"为菜单的文件名称(以json为后缀名)
"command"内为打开菜单的命令,无需"/"
"description"内为注册的命令的描述
若还需添加菜单的话请复制"menu"内的内容,并粘贴至大括号下
记得在前面的大括号后加上一个","
注:若修改config.json文件,请重启服务器!


JSON:
{
    "version": "1.2.4",    // 版本号
    "open": 347,    // 主菜单的点地打开方式(默认为钟)
    "menu": [    // 这里写需要注册命令的菜单
        {
            "name": "test",    // 注册的菜单的文件名
            "title": "测试菜单",    // 无用貌似,方便后期修改
            "command": "test",    // 注册的命令
            "description": "子菜单?",    // 命令的描述
            "admin": false    // 是否只有OP才可以打开菜单
        }
    ]
}

default.json文件
请勿修改":"前的部分,作者一概不为此问题负责!
"type"部分 —— 命令执行的类型:
"default"为默认的命令执行方式
"temporary"即可执行OP可执行的命令
"op"即可使该命令需OP可才执行
"cmd"即可以后台的方式执行该命令
"menu"即可以以菜单的方式打开该菜单的文件名
"AMenu"即可以以菜单的方式打开该菜单的文件名(需管理员权限)

注:"command"内的指令不需+"/",且可以执行任何指令
注:除非插件作者声明某个命令为 OP命令 或是 后台命令,否则类型一律为 "default"!!!


"temporary"有一个问题,就是执行完该命令后若该玩家突然去世,则会成为永久OP,因此我在
"cmd"中补足了一下,也就是说 @s @p 均可在"cmd"中使用,若使用原版命令,最好不要使用"temprary",个人推荐使用"cmd"模式

JSON:
{
        "type": "form",    // 菜单类型
        "title": "主菜单",    // 菜单标题
        "content": "按钮如下:",   // 菜单内容
        "buttons": [   // 按钮内容
            {
                "imageX": false,    // 是否开启图片功能
                "moneyX": false,    // 是否开启经济支持
                "text": "你好",    // 按钮显示的文字
                "cmd": [    // 点击后执行的内容
                    {
                        "command": "me HelloWorld!",    // 点击后执行的命令
                        "type": "default"    // 命令执行的类型(以玩家身份执行)
                    }
                ]
            },
            // 接下来的按钮同理
            {
                "imageX": false,
                "moneyX": false,
                "text": "生存",
                "cmd": [
                    {
                        "command": "gamemode 0",
                        "type": "temporary"    // 命令执行的类型(以OP身份执行)
                    }
                ]
            },
            {
                "imageX": false,
                "moneyX": false,
                "text": "给所有人说悄悄话",
                "cmd": [
                    {
                        "command": "tell @a qwq",
                        "type": "operator"    // 命令执行的类型(只有OP才可以执行,其他同"default")
                    },
                    {
                        "command": "tellraw @s {\"rawtext\":[{\"text\":\"只有OP才可以执行哟!\"}]}",
                        "type": "cmd"    // 命令执行的类型(以后台身份执行)
                    }
                ]
            },
            {
                "imageX": true,
                "moneyX": false,
                "image": "textures/items/apple",   // 图片路径(1.2.5 v1及以上自动识别路径类型)(可以填网址或MC图片的路径)
                "text": "苹果",
                "cmd": [
                    {
                        "command": "give @s apple 1",
                        "type": "cmd"
                    },
                    {
                        "command": "tellraw @s {\"rawtext\":[{\"text\":\"你还是太嫩了!\"}]}",
                        "type": "cmd"
                    }
                ],
                "money": 0
            }
        ]
    }
}

公告示例文件:announcement.json
请勿修改":"前的部分,作者一概不为此问题负责!
注:"command"内的指令不需+"/",且可以执行任何指令


JSON:
{
    "title": "公告",   // 菜单标题
    "type": "modal",   // 菜单类型
    "content": "本鸽子更新了! ",   // 菜单文字内容
    "button1": {   // 按钮1内容
        "text": "确定",   // 按钮显示的文字
        "cmd": []   // 执行的命令(这里为不执行命令的示例)
    },
    "button2": {   // 按钮2内容
        "text": "取消",   // 按钮显示的文字
        "cmd": [   // 执行的内容
            {
                "command": "tellraw @s {\"rawtext\":{\"text\":\"怎么可能!\"}}",   // 执行的命令
                "type": "cmd"   // 命令执行的类型(以后台身份执行)
            }
        ]
    }
}

最后感谢 Nian7LAA 、TWAKP、xiaodu121 的协助测试!
最后若有问题或建议的,请加入QQ群提出,谢谢!
作者
PotatoMine
价格
金粒80粒
下载
227
查看
4,971
首次发布
最后更新
评分
4.27 星 11 星

来自PotatoMine的更多资源

最新更新

  1. 本插件即将移植!!!

    RT 由于某些原因,本人决定将本插件移植至dll版(即bdxc版) 同时,本插件将会暂时停更,移植至dll版后会继续更新(帖子不会删) 所以,敬请期待吧:evil...
  2. 修复了bug & 更新

    ·修复了OP命令无法使用的问题 ·去除了modal类型中没必要的"events"部分,详细见帖子内
  3. 更新了教程文件

    RT

最新评论

可以是可以,但是不知道是什么问题,这个菜单的json里的函数“type”为什么我写了menu,command写了一个文件名“tpa”,为什么进游戏打开那个菜单就打不开,主菜单可以打开啊???解决给你100金粒
我已经仔细按照教程做了 也会生成文件 东西已经全部修改好
但是进入服务器之后 钟点地无用 也没有公告
文件都已经设置好 已仔细检查无差错
前置无差错 版本1.16.200
PotatoMine
PotatoMine
netjsr有问题,运行不了加密的js,不是我这的问题(唯一的办法是使用之前的jsr,但是该版本的jsr停在1.16.40版本了,已经弃坑了)
可以这样解决win10点地多重窗口的问题,记录时间戳就可以了。
function UseItem(a) {
Reset_Check();
a = JSON.parse(a);
let time = Date.now();
let name = a.playername;
var b = fileReadAllText(configFile);
b = JSON.parse(b);
if (playerUsingTime.hasOwnProperty(name)){
let timeLast = playerUsingTime[name];
if(time-timeLast <= 1000){
return;
}
}
playerUsingTime[name] = time;
return a.itemid == b.open ? (b = fileReadAllText(defaultFile), menu = JSON.parse(b), Menu_(name), !1) : !0
}
我是这样改useitem的函数的,不好意思解你的js了,因为我想用在自己服里, 我自己就是win10。
PotatoMine
PotatoMine
好的,感谢提议(其实要源码的话也可以找我要,我不是这么写的,压缩后会自动优化)
无法使用比如
/ land 或者/wallet 这种指令
PotatoMine
PotatoMine
好的,我会解决的!
加了可选前置会有什么神奇功效吗
PotatoMine
PotatoMine
.只是支持经济罢了,没有别的
好用,就是很久没更新有bug,可以正常打开gui但是输入指令会提示未知指令,希望作者有空更新一下
PotatoMine
PotatoMine
已更新~~
放到JS文件夹没有用
PotatoMine
PotatoMine
压缩包里的文件都放进去了没有?请先在自己身上找原因,不要这个样子!
唯一的缺点就是不知道咋用?
PotatoMine
PotatoMine
跟MMenu差不多,但多了一些功能(之后功能会更强大!)