From 3433eeadc2a408faacccd82b2db2f97c3c9f5dbd Mon Sep 17 00:00:00 2001 From: Thinkofdeath Date: Wed, 10 Dec 2014 16:23:18 +0000 Subject: [PATCH] Fix /gamerule always targeting the main world --- nms-patches/CommandGamerule.patch | 25 +++++++++++++++++++++++++ nms-patches/ICommand.patch | 6 +++--- 2 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 nms-patches/CommandGamerule.patch diff --git a/nms-patches/CommandGamerule.patch b/nms-patches/CommandGamerule.patch new file mode 100644 index 0000000000..30d67f7f89 --- /dev/null +++ b/nms-patches/CommandGamerule.patch @@ -0,0 +1,25 @@ +--- ../work/decompile-8eb82bde/net/minecraft/server/CommandGamerule.java 2014-12-10 16:21:38.404579167 +0000 ++++ src/main/java/net/minecraft/server/CommandGamerule.java 2014-12-10 16:18:45.268581046 +0000 +@@ -19,8 +19,8 @@ + return "commands.gamerule.usage"; + } + +- public void execute(ICommandListener icommandlistener, String[] astring) { +- GameRules gamerules = this.d(); ++ public void execute(ICommandListener icommandlistener, String[] astring) throws CommandException { // CraftBukkit - added throws ++ GameRules gamerules = icommandlistener.getWorld().getGameRules(); // Use current world + String s = astring.length > 0 ? astring[0] : ""; + String s1 = astring.length > 1 ? a(astring, 1) : ""; + +@@ -85,4 +85,11 @@ + private GameRules d() { + return MinecraftServer.getServer().getWorldServer(0).getGameRules(); + } ++ ++ // CraftBukkit start - fix decompile error ++ @Override ++ public int compareTo(Object o) { ++ return a((ICommand) o); ++ } ++ // CraftBukkit end + } diff --git a/nms-patches/ICommand.patch b/nms-patches/ICommand.patch index f42a35f40c..f3f78b5e9f 100644 --- a/nms-patches/ICommand.patch +++ b/nms-patches/ICommand.patch @@ -1,11 +1,11 @@ ---- ../work/decompile-8eb82bde//net/minecraft/server/ICommand.java 2014-11-29 00:40:43.197707433 +0000 -+++ src/main/java/net/minecraft/server/ICommand.java 2014-11-29 00:40:17.000000000 +0000 +--- ../work/decompile-8eb82bde/net/minecraft/server/ICommand.java 2014-12-10 16:21:38.812579162 +0000 ++++ src/main/java/net/minecraft/server/ICommand.java 2014-12-10 16:18:07.164581460 +0000 @@ -10,7 +10,7 @@ List b(); - void execute(ICommandListener icommandlistener, String[] astring); -+ void execute(ICommandListener icommandlistener, String[] astring) throws ExceptionUsage; // CraftBukkit - Add exception ++ void execute(ICommandListener icommandlistener, String[] astring) throws ExceptionUsage, CommandException; // CraftBukkit - Add exception boolean canUse(ICommandListener icommandlistener);