[email protected]
本帖最后由 [email protected] 于 2020-3-4 20:01 编辑

ConsoleCommands


时隔一年多的摸鱼更新
又解决了一个4年前遗留下来的惊天大bug(x)
目前的功能已经比较完善,算是填坑完毕(?)
当然,如果你还有更厉害的想法,请私聊我QQ:471485820




说明

在游戏中执行指令都是以玩家身份来执行,如果你是管理员,使用这个插件就可以直接在游戏中向后台发送指令让后台代替执行。如果你是OP,本身已经能使用所有指令,诶,好像这插件没什么用嘛。。。。。

不要以为这插件没什么用,真正的用处在这里:如果你是使用PermissionsEX权限管理插件的腐竹,你可能曾经头疼过如何让游客走过一个脚本方块无法变为builder玩家,虽然命令方块可以解决这一问题但是那个@p不是能完全保证两个玩家同时过去会发生啥事。。。。

还有RPGitem(没错我就是被这个的指令逼疯才写了这个插件)里面的一个指令{power command `说明` `指令` `权限节点`},如果`指令`里有pex指令,你会发现`权限节点`不管是给`*`或者`permissions.*`之类的全部都不能让玩家有相应的权限。于是这个插件孕育而生,控制台至高无上的权限,能执行所有的指令,以上各种问题就迎刃而解了。


使用小提示:此插件内指令可以互相引用,比如说/c cpop <玩家> xxx;<time:5s>;cl use <指令列表>;xxx;<time:5s>;xxx;xxx

                   以上方法可以执行一连串指令




用法
这个插件非常简单,下面是使用方法:
  1. /console <指令>
复制代码

或者简写:
  1. /c <指令>
复制代码

连续执行多条指令,指令间利用分号 ; 隔开即可:
  1. /c <指令>;<指令>;<指令>
复制代码

让玩家执行指令(多条指令同时执行方式和上条相同):
  1. /cp <玩家> <指令>
复制代码

指令中可使用变量<world>,<player>,<r:min~max>:
  1. 指令中<wolrd>为当前世界名,<player>为玩家名,<r:min~max>为生成一个范围内的随机数,min和max可为小数和负数
复制代码
几率执行指令:
  1. /cr <0~100> <指令>
  2. /cpr <0~100> <玩家> <指令>
复制代码
从一组指令中,概率执行几条指令:
  1. /crl <1~x> <概率> <指令>
复制代码
延时执行指令:
  1. /c <指令>;<time:(时间)(s|m|h|d)>;<指令>
复制代码

让玩家以OP权限执行指令:
  1. /cpop 用法与 /cp 相同
  2. /cprop 用法与 /cpr 相同
  3. /cplop 用法与 /cpl 相同
复制代码

可记录的指令列表功能:
  1. /cl 包含 edit|add|save|list|remove|use|tool

  2. /cl edit 开启编辑模式
  3. /cl add <指令> 添加一条指令进入指令列表,<指令>可用变量和分号分割多条
  4. /cl save <指令列表> 保存你当前正在编辑的指令列表,保存列表名称为<指令列表>,并且结束编辑
  5. /cl list 显示所有指令列表
  6. /cl list <指令列表> 显示<指令列表>中的所有指令
  7. /cl remove <指令列表> 删除<指令列表>

  8. /cl use <指令列表> 执行<指令列表>中的所有指令
  9. /cpl <玩家> <指令列表> 让<玩家>执行<指令列表>中的所有指令

  10. /cl tool 包含 give(快速指令工具)|time(预设指令延迟)|block(预设改变方块)
  11. /cl tool give 获取快速指令工具
  12. /cl tool time (时间)(s|m|h|d) 设定快速创建指令的延迟时间
  13. /cl tool block id:子id 设定快速创建指令右键点击设置的方块id
  14. /ctb (时间)(s|m|h|d) id:子id 快速设定以上两条指令的内容(每次都要输入三个单词很累的,还要设置两次真的很累)
复制代码
根据世界设置方块,是快速指令工具的基础指令(用于做大型动态场景):
  1. /sb <世界名> x y z <方块id> <方块data>
复制代码
根据世界区域设置方块:
  1. /sba <世界名> x1 y1 z1 x2 y2 z2 <方块id> <方块data>
复制代码
★新的指令,重载插件:
  1. /creload
复制代码
快速创建指令工具说明:
             做这个的起因是因为需要做一个方块的移动效果,一定时间消失在原地并且出现在下一个地点,之前用命令方块做了大半,觉得太蠢了,然后更蠢的是被WE一下清空了命令方块的内容
不能忍,就添加了这个功能,想着大约可以做方块特效什么的吧,比如说打开开关,一个城门就缓缓打开了(
更多特效的实现就靠大家的脑洞了



举例
在游戏中输入单条指令
  1. /c say 测试发送消息
复制代码

输入指令效果图,发消息的是 [Server] ,因为这是相当于后台输入指令 `say 测试发送消息`并且由后台执行的效果


在游戏中输入多条指令:
  1. /c say 更改<world>世界的时间 ; time set 0 <world> ; say 为玩家<player>开启飞行 ; fly <player>
复制代码
输入指令效果图:


在游戏中输入指令:
  1. /cp zzzzz say 1;say 2;say 3
复制代码
输入指令效果图:


以50%的几率执行指令:
  1. /cr 50 say 50%几率
复制代码
输入指令效果图:


延时执行指令:
  1. /c <time:1s>;say 等了1秒;<time:10s>;say 又等了10秒;<time:1m>;say 居然再等了1分钟
复制代码
输入指令效果图:





权限
  1. ConsoleCommands.admin
复制代码




下载地址
ConsoleCommands.jar (27.5 KB, 下载次数: 512)

百度云



更新记录
3.5.0:
              ·解决了一个在特定情况下可能导致指令延时一秒执行的bug,所有指令都会有这个bug,建议及时更新。
3.4.0:
              ·添加变量,支持生成范围内的随机数。
3.3.0:
              ·修复cl,cpl,cplop指令列表内部调用本插件其他指令无法正确分割指令的问题。
              ·优化插件效率。
              ·新增creload重载插件配置指令。
              ·执行指令列表的提示可以在配置文件里关闭。
3.2.0:
              ·添加修复设置方块可能出现后台刷屏的问题。
              ·添加根据世界区域设置方块的功能。
              ·设置方块的提示可以在配置文件里关闭。
3.1.0:
              ·添加概率执行几条指令的功能。
              ·添加根据世界设置方块的功能。
3.0.0:
              ·将/cp等让玩家执行指令变为普通权限执行,这类指令后加上op才以最高权限执行。
              ·添加指令列表功能。
              ·添加快速创建方块改变指令的道具。
2.1.0:
              ·修复了延时变量可能导致卡服的严重bug。
2.0.0:
              ·新增几率执行指令功能。
              ·新增延时变量。
1.3.0:
              ·新增让指定玩家执行多条指令的功能。
1.2.0:
              ·修复命令方块和后台输入报错的问题。
1.1.0:
              ·添加变量<world>为当前执行指令的世界,<player>为当前执行指令的玩家。
              ·分号可分割多条指令并依次执行。
1.0.0:
              ·向控制台发送单条指令并执行。




BUG和建议欢迎回帖提出



薛乐仁
重复转载了吧

[email protected]

这是我的原创插件,怎么重复转载了0 0

wawk
前排啊!!!!前排兜售烟酒糖茶瓜子

volta薯片~
希望楼主能够给教程

[email protected]
volta薯片~ 发表于 2016-3-23 18:48
希望楼主能够给教程

帖子中 举例 说明有使用方法的

ZG_Jackie
我想说,此插件可能有那么一点点过于简单...
就是
Bukkit.dispathCommand(Bukkit.get......,.........);

薛乐仁
[email protected] 发表于 2016-3-23 18:10
这是我的原创插件,怎么重复转载了0 0

抱歉功能太像了,以至于我搞错了。。。

帝轩
额,不错

[email protected]
ZG_Jackie 发表于 2016-3-23 19:46
我想说,此插件可能有那么一点点过于简单...
就是
Bukkit.dispathCommand(Bukkit.get......,.........); ...

我现在是只写了自己需要的功能,如果你有什么好的功能的意见可以说说呢

xuan3er3
本帖最后由 xuan3er3 于 2016-4-6 09:34 编辑

name: ConsoleCommands
main: com.zyzes.ConsoleCommands.ConsoleCommands
author: ZZZZZ
version: 1.0.0
commands:
  console:
    usage: /console
    aliases: [c]
permissions:
  PlayerCommands.admin:
    default: op



plugin.yml
麻烦改一下

虽然注册的权限和playercommand插件一样
但是插件的实现功能不一样
谢谢  支持原创

komatuei
可否发下源码供新手学习~

[email protected]
xuan3er3 发表于 2016-4-6 09:33
name: ConsoleCommands
main: com.zyzes.ConsoleCommands.ConsoleCommands
author: ZZZZZ

谢谢提醒,当时是想按照PlayerCommands来写的(第一次写插件)
这里写过来的时候改漏啦

[email protected]
komatuei 发表于 2016-4-6 09:50
可否发下源码供新手学习~

源码很简单呢,用JavaDecompiler反编译就能看了

komatuei
[email protected] 发表于 2016-4-6 13:51
源码很简单呢,用JavaDecompiler反编译就能看了

其实是想要一些注释啦,另外你这个插件可以再加一个很实用的功能,就是同时执行多指令通过分好分隔每个指令,举个栗子输入/c say 你好;give %player% 264 10   意思就是让后台分别执行say 你好 和 give 玩家名 264 10 这两条指令

[email protected]
komatuei 发表于 2016-4-6 14:20
其实是想要一些注释啦,另外你这个插件可以再加一个很实用的功能,就是同时执行多指令通过分好分隔每个指令 ...

已更新,谢谢提供想法

hsz2
一次性执行多个指令,这个功能我就喜欢,带走惹!

风暴Dxnui
5Z,继续改进

Dream_chenxi
那这个插件能不能用RPGitem给玩家称号?我试了不行没用这个/c 的权限

a860826341
很不错这个插件提供了更大的方便

[email protected]
Dream_chenxi 发表于 2016-6-24 12:18
那这个插件能不能用RPGitem给玩家称号?我试了不行没用这个/c 的权限

能的,RPGItem绑定指令的时候可以在指令后能加上这个物品使用这个指令的临时权限,具体怎么输入你看看RPGItem
权限节点用ConsoleCommands.admin就可以了

Korea
建议你可以加个指令间隔时间,而不是一次性全部触发,OUO

578962620
厉害了,超级喜欢这个~

[email protected]
Korea 发表于 2016-11-3 16:58
建议你可以加个指令间隔时间,而不是一次性全部触发,OUO

多谢提出建议,已更新功能

风暴Dxnui
这么欠了,顶上去让更多人看到

1962853568
[email protected] 发表于 2016-3-23 18:10
这是我的原创插件,怎么重复转载了0 0

那什么 如果要实现 20% say 20几率    80% say 80几率
要怎么实现?  你的插件会不会弄成 有可能俩个都弄出来。。。

QIE
不错的插件,支持一个2333

qq2552890244
为什么我这玩家变量不管用呢?各种符号的都试验过了,就是显示玩家不在线

[email protected]
1962853568 发表于 2017-1-19 22:45
那什么 如果要实现 20% say 20几率    80% say 80几率
要怎么实现?  你的插件会不会弄成 有可能俩个都弄 ...

组合到一起使用吧
/c /cr 几率 指令;/cr 几率 指令
这样的

[email protected]
qq2552890244 发表于 2017-1-20 02:42
为什么我这玩家变量不管用呢?各种符号的都试验过了,就是显示玩家不在线 ...

<player>是指输入指令的玩家哦。。。。

1962853568
[email protected] 发表于 2017-2-6 23:10
组合到一起使用吧
/c /cr 几率 指令;/cr 几率 指令
这样的

这样就会导致可能 那些指令都执行  或者三个有俩个执行   不能达到 只有一个执行 几率大的执行几率大

[email protected]
1962853568 发表于 2017-2-6 23:08
这样就会导致可能 那些指令都执行  或者三个有俩个执行   不能达到 只有一个执行 几率大的执行几率大 ...

我犯二了,你用指令列表啊,挨个儿执行= =

1962853568
[email protected] 发表于 2017-2-8 00:16
我犯二了,你用指令列表啊,挨个儿执行= =

就不能调 /cr 指令 70% 指令30%     这样么   不会导致俩个指令都可能执行  只会执行一个  几率大的 执行几率大

hsz2
真的是好东西,可以解决很多玩家权限问题

倾橙慕歌
这个文件放哪里啊
emmmmmmmmmmm小白表示蒙逼

498525451
感觉这个插件巨棒的 挺想赞助您的 可暂时没钱 嚯嚯嚯嚯哈

TRCStudioDean
支持楼主,感觉很不错

498525451
说实话希望出随机指令组,随机指令太多的了。不容易编辑,而且容易出错。

emt8888
真是好用

yuzekaige
能不能弄一个指令白名单之类的,就是说玩家没有权限也可以发送白名单内的直径到后台执行

UChiha丶Obito
恕我直言,差评,用/cpop <player> 指令 显示玩家未在线,而用控制台使用<player>变量却可行,还想着能用这个做一个替代rpgitems的传送物件,emmm,另寻插件了

[email protected]
UChiha丶Obito 发表于 2018-5-31 17:56
恕我直言,差评,用/cpop  指令 显示玩家未在线,而用控制台使用变量却可行,还想着能用这个做一个替代rpgi ...

因为你是给rpgitems绑定指令,使用指令的是控制台,所以这里不应用我的插件提供的变量<player>,这样会导致<player>变量变为控制台的ID(@或者console),而是应该使用rpgitems的玩家变量{player},这样才能找到正确的玩家ID

figure8520
/sb <世界名> x y z <方块id> <方块data>

能不能新增个 一次更改座标到座标内的方块

就不用打一堆指令了  

[email protected]
figure8520 发表于 2018-7-2 00:53
/sb  x y z  

能不能新增个 一次更改座标到座标内的方块

区域内方块设置?
x1 y1 z1 到 x2 y2 z2 的立方体内全部变为某个方块这样么

可以加个,等下次更新吧。

figure8520
插件刷抱错 spigot 1.12.2

  1. [23:33:12 WARN]: [ConsoleCommands] Task #132095 for ConsoleCommands v3.1.0 generated an exception
  2. org.bukkit.command.CommandException: Unhandled exception executing command 'sb' in plugin ConsoleCommands v3.1.0
  3.         at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.12.2.jar:git-Spigot-642f6d2-6103339]
  4.         at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.12.2.jar:git-Spigot-642f6d2-6103339]

  5.         at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648) ~[spigot-1.12.2.jar:git-Spigot-642f6d
  6. 2-6103339]
  7.         at org.bukkit.Bukkit.dispatchCommand(Bukkit.java:574) ~[spigot-1.12.2.jar:git-Spigot-642f6d2-6103339]
  8.         at com.zyzes.ConsoleCommands.Utils$1.run(Utils.java:139) ~[?:?]
  9.         at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:76) ~[spigot-1.12.2.jar:git-Spigot-642f6d2-61033
  10. 39]
  11.         at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:361) [spigot-1.12.2.ja
  12. r:git-Spigot-642f6d2-6103339]
  13.         at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:739) [spigot-1.12.2.jar:git-Spigot-642f6d2-6103339
  14. ]
  15.         at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406) [spigot-1.12.2.jar:git-Spigot-642f6d2-6103339
  16. ]
  17.         at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [spigot-1.12.2.jar:git-Spigot-642f6d2-6103339
  18. ]
  19.         at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [spigot-1.12.2.jar:git-Spigot-642f6d2-61033
  20. 39]
  21.         at java.lang.Thread.run(Unknown Source) [?:1.8.0_171]
复制代码

wudi980238234
可以添加一个服务器里当前在线的所有玩家的变量吗?

烟雨郎君
让所有玩家的所有指令都能以后台管理员身份运行。。。

会不会对服务器造成什么损失啊- -?

[email protected]
烟雨郎君 发表于 2019-11-10 20:52
让所有玩家的所有指令都能以后台管理员身份运行。。。

会不会对服务器造成什么损失啊- -? ...

玩家并不能执行的,这个是给道具、命令方块或者npc这类东西绑定的

xiaojundada
太棒了这个插件,今天刚好碰到关于权限只有后台有权限的问题

soil-sword
如果早一点遇到你。。。

我可以少花不少钱。。。。。。。。

下一页 最后一页