summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nms-patches/BiomeDecorator.patch12
-rw-r--r--nms-patches/EntityPlayer.patch24
-rw-r--r--src/main/java/org/bukkit/craftbukkit/command/ListenerWrapper.java69
-rw-r--r--src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java3
4 files changed, 28 insertions, 80 deletions
diff --git a/nms-patches/BiomeDecorator.patch b/nms-patches/BiomeDecorator.patch
index 91b04ca2..b7929ee0 100644
--- a/nms-patches/BiomeDecorator.patch
+++ b/nms-patches/BiomeDecorator.patch
@@ -1,5 +1,5 @@
---- ../work/decompile-8eb82bde//net/minecraft/server/BiomeDecorator.java Tue Dec 2 23:22:43 2014
-+++ src/main/java/net/minecraft/server/BiomeDecorator.java Tue Dec 2 23:22:34 2014
+--- ../work/decompile-8eb82bde/net/minecraft/server/BiomeDecorator.java 2014-12-12 19:26:13.625913570 +0000
++++ src/main/java/net/minecraft/server/BiomeDecorator.java 2014-12-12 19:15:22.000000000 +0000
@@ -132,7 +132,7 @@
WorldGenTreeAbstract worldgentreeabstract = biomebase.a(this.b);
@@ -120,11 +120,10 @@
this.x.generate(this.a, this.b, this.c.a(k, i1, l));
}
-@@ -273,6 +273,16 @@
- }
+@@ -274,6 +274,16 @@
}
-+
+
+ // CraftBukkit start - The heightMap can be wrong calculated and return Y = 0 which will crash the Server
+ private BlockPosition getHighestBlockYAt( BlockPosition blockPosition ) {
+ BlockPosition returnBlockPosition = this.a.getHighestBlockYAt( blockPosition );
@@ -134,6 +133,7 @@
+ return returnBlockPosition;
+ }
+ // CraftBukkit end
-
++
protected void a(int i, WorldGenerator worldgenerator, int j, int k) {
int l;
+
diff --git a/nms-patches/EntityPlayer.patch b/nms-patches/EntityPlayer.patch
index 7cc11699..77026b1a 100644
--- a/nms-patches/EntityPlayer.patch
+++ b/nms-patches/EntityPlayer.patch
@@ -1,5 +1,5 @@
---- ../work/decompile-8eb82bde/net/minecraft/server/EntityPlayer.java 2014-12-10 17:04:38.336551163 +0000
-+++ src/main/java/net/minecraft/server/EntityPlayer.java 2014-12-10 17:04:12.096551448 +0000
+--- ../work/decompile-8eb82bde/net/minecraft/server/EntityPlayer.java 2014-12-12 19:26:14.249913563 +0000
++++ src/main/java/net/minecraft/server/EntityPlayer.java 2014-12-12 19:25:07.997914283 +0000
@@ -13,6 +13,17 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -446,7 +446,25 @@
public void b(IChatBaseComponent ichatbasecomponent) {
this.playerConnection.sendPacket(new PacketPlayOutChat(ichatbasecomponent));
-@@ -867,6 +1035,129 @@
+@@ -768,6 +936,7 @@
+ }
+
+ public boolean a(int i, String s) {
++ /* CraftBukkit start
+ if ("seed".equals(s) && !this.server.ad()) {
+ return true;
+ } else if (!"tell".equals(s) && !"help".equals(s) && !"me".equals(s) && !"trigger".equals(s)) {
+@@ -781,6 +950,9 @@
+ } else {
+ return true;
+ }
++ */
++ return true;
++ // CraftBukkit end
+ }
+
+ public String w() {
+@@ -867,6 +1039,129 @@
}
public IChatBaseComponent getPlayerListName() {
diff --git a/src/main/java/org/bukkit/craftbukkit/command/ListenerWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/ListenerWrapper.java
deleted file mode 100644
index 817312e9..00000000
--- a/src/main/java/org/bukkit/craftbukkit/command/ListenerWrapper.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.bukkit.craftbukkit.command;
-
-import net.minecraft.server.BlockPosition;
-import net.minecraft.server.Entity;
-import net.minecraft.server.EnumCommandResult;
-import net.minecraft.server.IChatBaseComponent;
-import net.minecraft.server.ICommandListener;
-import net.minecraft.server.Vec3D;
-import net.minecraft.server.World;
-
-public class ListenerWrapper implements ICommandListener {
-
- private final ICommandListener listener;
-
- public ListenerWrapper(ICommandListener listener) {
- this.listener = listener;
- }
-
- @Override
- public String getName() {
- return listener.getName();
- }
-
- @Override
- public IChatBaseComponent getScoreboardDisplayName() {
- return listener.getScoreboardDisplayName();
- }
-
- @Override
- public void sendMessage(IChatBaseComponent icbc) {
- listener.sendMessage(icbc);
- }
-
- @Override
- public boolean a(int i, String string) {
- return true; // Give access to all commands as we do our own perm check
- }
-
- @Override
- public BlockPosition getChunkCoordinates() {
- return listener.getChunkCoordinates();
- }
-
- @Override
- public Vec3D d() {
- return listener.d();
- }
-
- @Override
- public World getWorld() {
- return listener.getWorld();
- }
-
- @Override
- public Entity f() {
- return listener.f();
- }
-
- @Override
- public boolean getSendCommandFeedback() {
- return listener.getSendCommandFeedback();
- }
-
- @Override
- public void a(EnumCommandResult ecr, int i) {
- listener.a(ecr, i);
- }
-
-}
diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
index 1c88b4a9..2e85c12b 100644
--- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
+++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
@@ -1,6 +1,5 @@
package org.bukkit.craftbukkit.command;
-import com.google.common.base.Joiner;
import java.util.Iterator;
import java.util.List;
@@ -127,7 +126,7 @@ public final class VanillaCommandWrapper extends VanillaCommand {
private ICommandListener getListener(CommandSender sender) {
if (sender instanceof Player) {
- return new ListenerWrapper(((CraftPlayer) sender).getHandle());
+ return ((CraftPlayer) sender).getHandle();
}
if (sender instanceof BlockCommandSender) {
return ((CraftBlockCommandSender) sender).getTileEntity();