切换风格

默认晚霞 雪山 粉色心情 伦敦 花卉 绿野仙踪 加州 白云 星空 薰衣草 城市 简约黑色 龙珠
回复 4

1

主题

5

帖子

41

积分

论坛萌新

Rank: 1

积分
41
人气
-1 点
钻石粒
53 粒
贡献
0 点
论坛币
12 个
爱心
0 点
[1.7.10][ECMA]实用的玩家辅助qwq[复制链接]
发表于 2020-3-3 18:02:45 | 显示全部楼层 |阅读模式
脚本例子
脚本版本: 1.7.10
适用版本: 1.7.10 
编写语言: JS
JS
最后更新: 2020-03-03
代码版权: 弱版权

请注册论坛会员,已便查看高清图片!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
function Command(name,usage){
 this.getCommandName=function(){
  /*String getCommandName()
  *应返回指令的名字
  *如:ppes 则返回noppes
  */
 };
 this.getCommandUsage=function(sender){
  /*String getCommandUsage(ICommandSender sender)
  *应返回指令的用法
  *当玩家输入"/help 你的指令名" 的时候就会出现
  *sender:指令发送者 可能是玩家 控制台 命令方块 或者其他什么
  */
 };
 this.processCommand=function(sender,args){
  /*void processCommand(ICommandSender sender, String[] args)
  *在玩家使用该指令时会调用本函数
  *sender:指令发送者 可能是玩家 控制台 命令方块 或者其他什么
  *args:指令的参数
  */
 };
 this.addTabCompletionOptions=function(sender,args){
  return null;
  /*List addTabCompletionOptions(ICommandSender sender, String[] args)
  *用于tab自动补全
  *应返回补全后的参数
  *sender:指令发送者 可能是玩家 控制台 命令方块 或者其他什么
  *args:指令的参数
  */
 };
 this.getRequiredPermissionLevel=function(){
  return 4;
  /*int getRequiredPermissionLevel
  *指令所需的权限 0表示所有人可用 4表示OP可用
  *应返回权限等级
  */
 }
 this.canCommandSenderUseCommand=function(){
  return true;
}
 //上方函数以1.7.10的方法为准
 //1.12.2修改函数时补全参数后通用。
 this.getMCCommand=function(){
  var CommandBase=Java.type("net.minecraft.command.CommandBase");
  var MCCommand=Java.extend(CommandBase,{
   func_71517_b:this.getCommandName,
   func_71518_a:this.getCommandUsage,
   func_71515_b:this.processCommand,
   func_71516_a:this.addTabCompletionOptions,
   func_82362_a:this.getRequiredPermissionLevel,
   func_71519_b:this.canCommandSenderUseCommand,
   /*下方是对1.12.2的兼容*/
   func_184881_a:this.processCommand,
   func_184883_a:this.addTabCompletionOptions
  });
  return new MCCommand();
 }
}
function registerCommand(command){
 var MinecraftServer=Java.type("net.minecraft.server.MinecraftServer");
 var server=MinecraftServer.func_71276_C();
     if(!(command instanceof Command)){
     return;
    }
    server.func_71187_D().func_71560_a(command.getMCCommand())
}
var EntityPlayerMP=Java.type("net.minecraft.entity.player.EntityPlayerMP");
var command=new Command();
command.getCommandName=function(){
 return "wj";
}
command.getCommandUsage=function(sender){
 return "/wj";
}
command.getRequiredPermissionLevel=function(){
 return 0;//0是全部人可用4是仅OP可用
}
command.canCommandSenderUseCommand=function(sender){
 return true;//是否允许使用true允许false不允许只有OP能用
}
command.addTabCompletionOptions=function(sender,args){
 return ["kill","hc","show","kick","Chest","help"]
}
command.processCommand=function(sender,args){
 var ScriptPlayer=Java.type("noppes.npcs.scripted.ScriptPlayer");
    if(!(sender instanceof EntityPlayerMP)){
     return;
    }
 var player=new ScriptPlayer(sender);
 try{
 if(args[0]=="help"){
player.sendMessage("§b§l§n-------§f§l[玩家辅助]§b§l§n-------")
 player.sendMessage("§B§L[玩家辅助]§c/wj kill 自杀");
 player.sendMessage("§B§L[玩家辅助]§c/wj hc 回城");
 player.sendMessage("§B§L[玩家辅助]§c/wj show 展示");
 player.sendMessage("§B§L[玩家辅助]§c/wj kick 退出游戏");
 player.sendMessage("§B§L[玩家辅助]§c/wj Chest 打开箱子");
 player.sendMessage("§B§L[玩家辅助]§c/wj help 获取帮助");
 player.sendMessage("§B§L[玩家辅助]§c于禁出品,必属废品");
 player.sendMessage("§b§l§n-------§f§l[玩家辅助]§b§l§n-------")
 }
 if(args[0]=="kill"){
 player.setHealth(-1);
 player.sendMessage("§B§L[玩家辅助]:§f§l你已死亡");
 }
 if(args[0]=="hc"){
 player.setPosition(-97,40,-60);
 player.sendMessage("§B§L[玩家辅助]:§f§l你已回城");
 }
 if (args[0] == "show"){
 var player=new ScriptPlayer(sender);
 var tag=String(player.getHeldItem().getMCItemStack().field_77990_d);
 tag=tag.replaceAll('"','');
 //npc.say(tag)
 var name=player.getHeldItem().getDisplayName()
 npc.executeCommand('tellraw @a ["§c玩家§d'+player.getName()+'展示了他的"]')
 npc.executeCommand('tellraw @a [{text:"'+name+'","hoverEvent":{"action":"show_item","value":"{id:4096,tag:'+tag+'}"}}]')
 }
 if(args[0] == "kick"){
 npc.executeCommand ("kick "+player.getName()+" 你被你自己踢了。")
 }
 if(args[0] == "Chest"){
 player.getMCEntity().func_71007_a(player.getMCEntity().func_71005_bN())
 player.sendMessage("§B§L[玩家辅助]:§f§l你打开了箱子");
 }
}catch(e){player.sendMessage("§b§l[玩家辅助]:§f§l指令不正确!请输入/wj help获取帮助");}
 return;
}
npc.say("§B§L[玩家辅助]:§a指令注册成功")
registerCommand(command);  
                                                                                                                                                                  

评分

参与人数 1人气 -2 收起 理由
Guai_Shou -2 标题不符合

查看全部评分

回复

使用道具 举报

16

主题

52

帖子

382

积分

注册会员

Rank: 2

积分
382
人气
7 点
钻石粒
328 粒
贡献
0 点
论坛币
73 个
爱心
0 点

论坛注册会员

发表于 2020-3-4 10:15:52 | 显示全部楼层
老婆(摸摸头)
小浩喜欢男孩子嘛!
回复

使用道具 举报

0

主题

4

帖子

70

积分

论坛萌新

Rank: 1

积分
70
人气
0 点
钻石粒
50 粒
贡献
0 点
论坛币
21 个
爱心
0 点

论坛注册会员

发表于 2020-3-5 15:26:46 | 显示全部楼层
大佬牛批,亲测可用,怎么在1.12用
回复

使用道具 举报

1

主题

5

帖子

41

积分

论坛萌新

Rank: 1

积分
41
人气
-1 点
钻石粒
53 粒
贡献
0 点
论坛币
12 个
爱心
0 点
发表于 2020-3-8 23:33:17 | 显示全部楼层
jxsd1234a 发表于 2020-3-5 15:26
大佬牛批,亲测可用,怎么在1.12用

不晓得,没玩过1.12的qwq
回复

使用道具 举报

0

主题

1

帖子

10

积分

论坛萌新

Rank: 1

积分
10
人气
0 点
钻石粒
16 粒
贡献
0 点
论坛币
2 个
爱心
0 点

论坛注册会员

发表于 2020-3-11 13:13:48 | 显示全部楼层
怎么用?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|自定义NPC脚本中文论坛 ( 蜀ICP备17005795号-3 )

GMT+8, 2020-8-15 07:37 , Processed in 0.095878 second(s), 35 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部