如题,想来想去没想出来
 本帖最后由 咸鱼气功王 于 2020-1-30 09:23 编辑 
以op身份执行命令?然后执行完成还是非op?复制代码
以op身份执行命令?然后执行完成还是非op?
-  try {
 
-             playerExact.setOp(true);
 
-             Bukkit.dispatchCommand(playerExact, "命令");
 
-         } catch (Exception e) {
 
-             e.printStackTrace();
 
-         }finally {
 
-             playerExact.setOp(false);
 
- }
/op 玩家名字
咸鱼气功王 发表于 2020-1-30 09:11
以op身份执行命令?然后执行完成还是非op?
就是说执行完指令后就成了op
在下向冰恒 发表于 2020-1-30 09:34
/op 玩家名字
用代码实现而不是原版指令
player.setOp(true);
???这个问题....
你就正常执行你设置指令
在里面强制转换命令发送者为Player的对象
然后 你的变量.setOP(true);
你就正常执行你设置指令
在里面强制转换命令发送者为Player的对象
然后 你的变量.setOP(true);
我突然很好奇你要这种指令有何用???
拿狙也爆头 发表于 2020-1-30 16:16
我突然很好奇你要这种指令有何用???
以后打算做些基础类型的插件
猿汐 发表于 2020-1-30 16:00
???这个问题....
你就正常执行你设置指令
在里面强制转换命令发送者为Player的对象
哦哦谢谢了
拿狙也爆头 发表于 2020-1-30 15:50
player.setOp(true);
谢谢啦,不过说是以后做基础插件,但具体啥时候能做出来也没个准毕竟我是个新手
 本帖最后由 轻光233 于 2020-1-30 19:50 编辑 
https://www.mcbbs.net/thread-632861-1-1.html
bukkit api中文翻译
建议没事看一看,了解一下基础功能
setOp实际不是Player接口声明的方法,是ServerOperator接口声明的,在org.bukkit.permissions包内,CommandSender就是它的子接口
又因为一些我不清楚的原因,Entity是CommandSender的子接口,所以理论来说,所有的实体都能执行指令
具体如何我不清楚,没试过,如果感兴趣的话你可以试试
https://www.mcbbs.net/thread-632861-1-1.html
bukkit api中文翻译
建议没事看一看,了解一下基础功能
setOp实际不是Player接口声明的方法,是ServerOperator接口声明的,在org.bukkit.permissions包内,CommandSender就是它的子接口
又因为一些我不清楚的原因,Entity是CommandSender的子接口,所以理论来说,所有的实体都能执行指令
具体如何我不清楚,没试过,如果感兴趣的话你可以试试
player.setOp(true);
即可设置为OP.
即可设置为OP.
- Player player = (Player) sender;
 
- player.setOp(true);