Upstream merge

This commit is contained in:
md_5 2013-12-09 18:00:58 +11:00
parent 75344a14e9
commit 74c808df0f
46 changed files with 106 additions and 401 deletions

2
Bukkit

@ -1 +1 @@
Subproject commit 16b340dd387880586b0d659f9b62482af1f28306
Subproject commit c00ac08514c93edc88e556d40ac75a54eb40e271

@ -1 +1 @@
Subproject commit ca624b3831d22d3ed6b558dda0f752e9ddb6a135
Subproject commit 2220179b086eb5fe1ad17bd959339b5cd1379af1

View file

@ -1,4 +1,4 @@
From cead4c266909b279e8eeeea1d021d1f647b150e5 Mon Sep 17 00:00:00 2001
From 82a65884167e21163253336d02fe1a176fe29f62 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 1 Dec 2013 15:10:48 +1100
Subject: [PATCH] mc-dev imports
@ -406,158 +406,6 @@ index 0000000..6d5090b
+ return false;
+ }
+}
diff --git a/src/main/java/net/minecraft/server/EntityItemFrame.java b/src/main/java/net/minecraft/server/EntityItemFrame.java
new file mode 100644
index 0000000..261d0c1
--- /dev/null
+++ b/src/main/java/net/minecraft/server/EntityItemFrame.java
@@ -0,0 +1,146 @@
+package net.minecraft.server;
+
+public class EntityItemFrame extends EntityHanging {
+
+ private float e = 1.0F;
+
+ public EntityItemFrame(World world) {
+ super(world);
+ }
+
+ public EntityItemFrame(World world, int i, int j, int k, int l) {
+ super(world, i, j, k, l);
+ this.setDirection(l);
+ }
+
+ protected void c() {
+ this.getDataWatcher().a(2, 5);
+ this.getDataWatcher().a(3, Byte.valueOf((byte) 0));
+ }
+
+ public boolean damageEntity(DamageSource damagesource, float f) {
+ if (this.isInvulnerable()) {
+ return false;
+ } else if (this.getItem() != null) {
+ if (!this.world.isStatic) {
+ this.b(damagesource.getEntity(), false);
+ this.setItem((ItemStack) null);
+ }
+
+ return true;
+ } else {
+ return super.damageEntity(damagesource, f);
+ }
+ }
+
+ public int f() {
+ return 9;
+ }
+
+ public int i() {
+ return 9;
+ }
+
+ public void b(Entity entity) {
+ this.b(entity, true);
+ }
+
+ public void b(Entity entity, boolean flag) {
+ ItemStack itemstack = this.getItem();
+
+ if (entity instanceof EntityHuman) {
+ EntityHuman entityhuman = (EntityHuman) entity;
+
+ if (entityhuman.abilities.canInstantlyBuild) {
+ this.b(itemstack);
+ return;
+ }
+ }
+
+ if (flag) {
+ this.a(new ItemStack(Items.ITEM_FRAME), 0.0F);
+ }
+
+ if (itemstack != null && this.random.nextFloat() < this.e) {
+ itemstack = itemstack.cloneItemStack();
+ this.b(itemstack);
+ this.a(itemstack, 0.0F);
+ }
+ }
+
+ private void b(ItemStack itemstack) {
+ if (itemstack != null) {
+ if (itemstack.getItem() == Items.MAP) {
+ WorldMap worldmap = ((ItemWorldMap) itemstack.getItem()).getSavedMap(itemstack, this.world);
+
+ worldmap.g.remove("frame-" + this.getId());
+ }
+
+ itemstack.a((EntityItemFrame) null);
+ }
+ }
+
+ public ItemStack getItem() {
+ return this.getDataWatcher().getItemStack(2);
+ }
+
+ public void setItem(ItemStack itemstack) {
+ if (itemstack != null) {
+ itemstack = itemstack.cloneItemStack();
+ itemstack.count = 1;
+ itemstack.a(this);
+ }
+
+ this.getDataWatcher().watch(2, itemstack);
+ this.getDataWatcher().h(2);
+ }
+
+ public int getRotation() {
+ return this.getDataWatcher().getByte(3);
+ }
+
+ public void setRotation(int i) {
+ this.getDataWatcher().watch(3, Byte.valueOf((byte) (i % 4)));
+ }
+
+ public void b(NBTTagCompound nbttagcompound) {
+ if (this.getItem() != null) {
+ nbttagcompound.set("Item", this.getItem().save(new NBTTagCompound()));
+ nbttagcompound.setByte("ItemRotation", (byte) this.getRotation());
+ nbttagcompound.setFloat("ItemDropChance", this.e);
+ }
+
+ super.b(nbttagcompound);
+ }
+
+ public void a(NBTTagCompound nbttagcompound) {
+ NBTTagCompound nbttagcompound1 = nbttagcompound.getCompound("Item");
+
+ if (nbttagcompound1 != null && !nbttagcompound1.isEmpty()) {
+ this.setItem(ItemStack.createStack(nbttagcompound1));
+ this.setRotation(nbttagcompound.getByte("ItemRotation"));
+ if (nbttagcompound.hasKeyOfType("ItemDropChance", 99)) {
+ this.e = nbttagcompound.getFloat("ItemDropChance");
+ }
+ }
+
+ super.a(nbttagcompound);
+ }
+
+ public boolean c(EntityHuman entityhuman) {
+ if (this.getItem() == null) {
+ ItemStack itemstack = entityhuman.be();
+
+ if (itemstack != null && !this.world.isStatic) {
+ this.setItem(itemstack);
+ if (!entityhuman.abilities.canInstantlyBuild && --itemstack.count <= 0) {
+ entityhuman.inventory.setItem(entityhuman.inventory.itemInHandIndex, (ItemStack) null);
+ }
+ }
+ } else if (!this.world.isStatic) {
+ this.setRotation(this.getRotation() + 1);
+ }
+
+ return true;
+ }
+}
diff --git a/src/main/java/net/minecraft/server/NextTickListEntry.java b/src/main/java/net/minecraft/server/NextTickListEntry.java
new file mode 100644
index 0000000..06934a1

View file

@ -1,4 +1,4 @@
From 4a6f739f606ead3be6cc77376bbfebaa0fd4128d Mon Sep 17 00:00:00 2001
From 6c24c2f11d8ddf8838037e7bad98339784d72b54 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 7 Jul 2013 09:32:53 +1000
Subject: [PATCH] Spigot Configuration
@ -34,10 +34,10 @@ index 30ce5f4..c9bb3a6 100644
if (!this.getOnlineMode()) {
h.warn("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!");
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 0194e74..028e4ce 100644
index f850a0f..cd529ec 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -106,6 +106,7 @@ public abstract class World implements IBlockAccess {
@@ -107,6 +107,7 @@ public abstract class World implements IBlockAccess {
int lastXAccessed = Integer.MIN_VALUE;
int lastZAccessed = Integer.MIN_VALUE;
final Object chunkLock = new Object();
@ -45,7 +45,7 @@ index 0194e74..028e4ce 100644
public CraftWorld getWorld() {
return this.world;
@@ -117,6 +118,7 @@ public abstract class World implements IBlockAccess {
@@ -118,6 +119,7 @@ public abstract class World implements IBlockAccess {
// Changed signature - added gen and env
public World(IDataManager idatamanager, String s, WorldSettings worldsettings, WorldProvider worldprovider, MethodProfiler methodprofiler, ChunkGenerator gen, org.bukkit.World.Environment env) {

View file

@ -1,11 +1,11 @@
From 9b78ae248d0ceeb4a95acb67ec78185c63aaa061 Mon Sep 17 00:00:00 2001
From 2f1db462086493e906e383db29bcf5e3435378ba Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 11 Jun 2013 12:56:02 +1000
Subject: [PATCH] Better Chunk Tick Selection
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 028e4ce..038aa40 100644
index cd529ec..53ab411 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -62,7 +62,7 @@ public abstract class World implements IBlockAccess {
@ -17,7 +17,7 @@ index 028e4ce..038aa40 100644
private int L;
public boolean allowMonsters;
public boolean allowAnimals;
@@ -75,6 +75,30 @@ public abstract class World implements IBlockAccess {
@@ -76,6 +76,30 @@ public abstract class World implements IBlockAccess {
private boolean N;
int[] I;
@ -48,7 +48,7 @@ index 028e4ce..038aa40 100644
public BiomeBase getBiome(int i, int j) {
if (this.isLoaded(i, 0, j)) {
Chunk chunk = this.getChunkAtWorldCoords(i, j);
@@ -124,6 +148,11 @@ public abstract class World implements IBlockAccess {
@@ -125,6 +149,11 @@ public abstract class World implements IBlockAccess {
this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit
this.ticksPerMonsterSpawns = this.getServer().getTicksPerMonsterSpawns(); // CraftBukkit
// CraftBukkit end
@ -60,7 +60,7 @@ index 028e4ce..038aa40 100644
this.L = this.random.nextInt(12000);
this.allowMonsters = true;
@@ -1897,24 +1926,44 @@ public abstract class World implements IBlockAccess {
@@ -1903,24 +1932,44 @@ public abstract class World implements IBlockAccess {
int j;
int k;

View file

@ -1,14 +1,14 @@
From 65676819b50c5f6959b6d41b5504c966ec0c548a Mon Sep 17 00:00:00 2001
From 7c6711b2f0781e7837623f639eaede10f38952a7 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 11 Jun 2013 12:17:37 +1000
Subject: [PATCH] More Efficient GetCubes
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 038aa40..7b072dc 100644
index 53ab411..8b07d84 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1016,23 +1016,42 @@ public abstract class World implements IBlockAccess {
@@ -1022,23 +1022,42 @@ public abstract class World implements IBlockAccess {
int i1 = MathHelper.floor(axisalignedbb.c);
int j1 = MathHelper.floor(axisalignedbb.f + 1.0D);

View file

@ -1,4 +1,4 @@
From 75a381769ed3f03e1156b4ec15b64f79a87f0c20 Mon Sep 17 00:00:00 2001
From af4f6f0e5a7e04567950f4f4f95572c7c96184ca Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 23 Mar 2013 09:46:33 +1100
Subject: [PATCH] Merge tweaks and configuration
@ -41,10 +41,10 @@ index bbcf674..08b9ac8 100644
}
} else {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 7b072dc..76332a5 100644
index 8b07d84..97b991b 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -928,6 +928,23 @@ public abstract class World implements IBlockAccess {
@@ -934,6 +934,23 @@ public abstract class World implements IBlockAccess {
// Not all projectiles extend EntityProjectile, so check for Bukkit interface instead
event = CraftEventFactory.callProjectileLaunchEvent(entity);
}

View file

@ -1,4 +1,4 @@
From b4e3921724da47bc30f5fb3f6db60f9ae444c180 Mon Sep 17 00:00:00 2001
From 0f5ec7aa26d818aa3a78f920c75ecf28c4e6b7b5 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 7 Mar 2013 20:12:46 +1100
Subject: [PATCH] Async Operation Catching
@ -66,10 +66,10 @@ index 9f818cf..8052ea6 100644
this.trackedPlayers.remove(entityplayer);
entityplayer.removeQueue.add(Integer.valueOf(this.tracker.getId()));
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 76332a5..5b9c6ec 100644
index 97b991b..aca2455 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -897,6 +897,7 @@ public abstract class World implements IBlockAccess {
@@ -903,6 +903,7 @@ public abstract class World implements IBlockAccess {
}
public boolean addEntity(Entity entity, SpawnReason spawnReason) { // Changed signature, added SpawnReason
@ -77,7 +77,7 @@ index 76332a5..5b9c6ec 100644
if (entity == null) return false;
// CraftBukkit end
@@ -1003,6 +1004,7 @@ public abstract class World implements IBlockAccess {
@@ -1009,6 +1010,7 @@ public abstract class World implements IBlockAccess {
}
public void removeEntity(Entity entity) {
@ -85,7 +85,7 @@ index 76332a5..5b9c6ec 100644
entity.die();
if (entity instanceof EntityHuman) {
this.players.remove(entity);
@@ -2391,6 +2393,7 @@ public abstract class World implements IBlockAccess {
@@ -2397,6 +2399,7 @@ public abstract class World implements IBlockAccess {
}
public void a(List list) {

View file

@ -1,14 +1,14 @@
From 09ad256fbf9cad5e589858bcd58d7d5f63759163 Mon Sep 17 00:00:00 2001
From 90c7728aa37e43c8710c2821790405763d9bd92e Mon Sep 17 00:00:00 2001
From: Mike Primm <mike@primmhome.com>
Date: Wed, 16 Jan 2013 15:27:22 -0600
Subject: [PATCH] Sync Free Chunk Reference Cache
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 5b9c6ec..75fed94 100644
index aca2455..e580460 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -291,20 +291,18 @@ public abstract class World implements IBlockAccess {
@@ -292,20 +292,18 @@ public abstract class World implements IBlockAccess {
return this.getChunkAt(i >> 4, j >> 4);
}

View file

@ -1,4 +1,4 @@
From adcf9b66485a16ca0d14efd12230771086c06a90 Mon Sep 17 00:00:00 2001
From 71424df72027daf0b96555a580d54fc91909b8b5 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 10 Jan 2013 00:18:11 -0500
Subject: [PATCH] Improved Timings System
@ -6,7 +6,7 @@ Subject: [PATCH] Improved Timings System
Tracks nearly every point of minecraft internals and plugin events to give a good quick overview on what is causing TPS loss.
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index a702fe8..e642388 100644
index 2f842c3..88853ca 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -107,6 +107,7 @@ public class ChunkProviderServer implements IChunkProvider {
@ -145,10 +145,10 @@ index 5db21fd..9543509 100644
this.methodProfiler.b();
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index aa6d8d8..cf5fb7e 100644
index da1a7e7..c4ed619 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -910,6 +910,7 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -915,6 +915,7 @@ public class PlayerConnection implements PacketPlayInListener {
// CraftBukkit end
private void handleCommand(String s) {
@ -156,7 +156,7 @@ index aa6d8d8..cf5fb7e 100644
// CraftBukkit start
CraftPlayer player = this.getPlayer();
@@ -917,19 +918,23 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -922,19 +923,23 @@ public class PlayerConnection implements PacketPlayInListener {
this.server.getPluginManager().callEvent(event);
if (event.isCancelled()) {
@ -198,7 +198,7 @@ index 811f1a4..3de32fe 100644
private static Map i = new HashMap();
private static Map j = new HashMap();
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 75fed94..33391e8 100644
index e580460..5cfcc6c 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -14,6 +14,7 @@ import java.util.concurrent.Callable;
@ -209,7 +209,7 @@ index 75fed94..33391e8 100644
import org.bukkit.craftbukkit.util.UnsafeList;
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.craftbukkit.CraftServer;
@@ -132,6 +133,8 @@ public abstract class World implements IBlockAccess {
@@ -133,6 +134,8 @@ public abstract class World implements IBlockAccess {
final Object chunkLock = new Object();
public final org.spigotmc.SpigotWorldConfig spigotConfig; // Spigot
@ -218,7 +218,7 @@ index 75fed94..33391e8 100644
public CraftWorld getWorld() {
return this.world;
}
@@ -211,6 +214,7 @@ public abstract class World implements IBlockAccess {
@@ -212,6 +215,7 @@ public abstract class World implements IBlockAccess {
this.a();
this.getServer().addWorld(this.world); // CraftBukkit
@ -226,7 +226,7 @@ index 75fed94..33391e8 100644
}
protected abstract IChunkProvider j();
@@ -1243,6 +1247,7 @@ public abstract class World implements IBlockAccess {
@@ -1249,6 +1253,7 @@ public abstract class World implements IBlockAccess {
this.f.clear();
this.methodProfiler.c("regular");
@ -234,7 +234,7 @@ index 75fed94..33391e8 100644
for (i = 0; i < this.entityList.size(); ++i) {
entity = (Entity) this.entityList.get(i);
@@ -1265,7 +1270,9 @@ public abstract class World implements IBlockAccess {
@@ -1271,7 +1276,9 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.a("tick");
if (!entity.dead) {
try {
@ -244,7 +244,7 @@ index 75fed94..33391e8 100644
} catch (Throwable throwable1) {
crashreport = CrashReport.a(throwable1, "Ticking entity");
crashreportsystemdetails = crashreport.a("Entity being ticked");
@@ -1290,7 +1297,9 @@ public abstract class World implements IBlockAccess {
@@ -1296,7 +1303,9 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.b();
}
@ -254,7 +254,7 @@ index 75fed94..33391e8 100644
this.N = true;
Iterator iterator = this.tileEntityList.iterator();
@@ -1305,8 +1314,11 @@ public abstract class World implements IBlockAccess {
@@ -1311,8 +1320,11 @@ public abstract class World implements IBlockAccess {
if (!tileentity.r() && tileentity.o() && this.isLoaded(tileentity.x, tileentity.y, tileentity.z)) {
try {
@ -266,7 +266,7 @@ index 75fed94..33391e8 100644
crashreport = CrashReport.a(throwable2, "Ticking block entity");
crashreportsystemdetails = crashreport.a("Block entity being ticked");
tileentity.a(crashreportsystemdetails);
@@ -1326,6 +1338,8 @@ public abstract class World implements IBlockAccess {
@@ -1332,6 +1344,8 @@ public abstract class World implements IBlockAccess {
}
}
@ -275,7 +275,7 @@ index 75fed94..33391e8 100644
this.N = false;
if (!this.b.isEmpty()) {
this.tileEntityList.removeAll(this.b);
@@ -1364,6 +1378,7 @@ public abstract class World implements IBlockAccess {
@@ -1370,6 +1384,7 @@ public abstract class World implements IBlockAccess {
this.a.clear();
}
@ -283,7 +283,7 @@ index 75fed94..33391e8 100644
this.methodProfiler.b();
this.methodProfiler.b();
}
@@ -1386,6 +1401,7 @@ public abstract class World implements IBlockAccess {
@@ -1392,6 +1407,7 @@ public abstract class World implements IBlockAccess {
byte b0 = 32;
if (!flag || this.b(i - b0, 0, j - b0, i + b0, 0, j + b0)) {
@ -291,7 +291,7 @@ index 75fed94..33391e8 100644
entity.T = entity.locX;
entity.U = entity.locY;
entity.V = entity.locZ;
@@ -1447,6 +1463,7 @@ public abstract class World implements IBlockAccess {
@@ -1453,6 +1469,7 @@ public abstract class World implements IBlockAccess {
entity.passenger = null;
}
}

View file

@ -1,4 +1,4 @@
From dd4e2af391bd05aee39b5e0320275be59587b063 Mon Sep 17 00:00:00 2001
From 209ef0020b994252e9bcdf4fffd8a8b3ea4321c5 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 16 May 2013 18:51:05 +1000
Subject: [PATCH] Orebfuscator
@ -115,10 +115,10 @@ index bceba7b..c963fac 100644
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 33391e8..fde1939 100644
index 5cfcc6c..3e41e82 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -465,6 +465,7 @@ public abstract class World implements IBlockAccess {
@@ -471,6 +471,7 @@ public abstract class World implements IBlockAccess {
this.e(i, j + 1, k, block);
this.e(i, j, k - 1, block);
this.e(i, j, k + 1, block);

View file

@ -1,14 +1,14 @@
From 3bccc2c884c6ebf06e146c254577a772188c2025 Mon Sep 17 00:00:00 2001
From e70f120999ce4597e539407cf4d83a1e56d941f4 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 3 Feb 2013 09:20:19 +1100
Subject: [PATCH] Handle Null Tile Entities
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index fde1939..491d0b0 100644
index 3e41e82..1a8388a 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1306,6 +1306,13 @@ public abstract class World implements IBlockAccess {
@@ -1312,6 +1312,13 @@ public abstract class World implements IBlockAccess {
while (iterator.hasNext()) {
TileEntity tileentity = (TileEntity) iterator.next();

View file

@ -1,4 +1,4 @@
From 7209fac192b5c615586cb72bc9dd8367f27515c9 Mon Sep 17 00:00:00 2001
From aef4d944e95433be138fd0e104bbc1bced93430b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 3 Feb 2013 05:10:21 -0500
Subject: [PATCH] Entity Activation Range
@ -116,10 +116,10 @@ index 75b1ec1..a61001d 100644
public EntityLiving(World world) {
super(world);
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 491d0b0..6965e82 100644
index 1a8388a..2e3597f 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1248,6 +1248,7 @@ public abstract class World implements IBlockAccess {
@@ -1254,6 +1254,7 @@ public abstract class World implements IBlockAccess {
this.f.clear();
this.methodProfiler.c("regular");
@ -127,7 +127,7 @@ index 491d0b0..6965e82 100644
timings.entityTick.startTiming(); // Spigot
for (i = 0; i < this.entityList.size(); ++i) {
entity = (Entity) this.entityList.get(i);
@@ -1408,7 +1409,11 @@ public abstract class World implements IBlockAccess {
@@ -1414,7 +1415,11 @@ public abstract class World implements IBlockAccess {
int j = MathHelper.floor(entity.locZ);
byte b0 = 32;

View file

@ -1,14 +1,14 @@
From 3a11fb5f840dedcf08ea38c90debb9db7f737ad8 Mon Sep 17 00:00:00 2001
From 3e7fbdf04a48f981b99a6acdbce907b2da2fead0 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 21 Jun 2013 18:01:29 +1000
Subject: [PATCH] Allow Disabling of Command Logging
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index cf5fb7e..8e80ab5 100644
index c4ed619..67c8bba 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -923,7 +923,12 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -928,7 +928,12 @@ public class PlayerConnection implements PacketPlayInListener {
}
try {

View file

@ -1,4 +1,4 @@
From b41a6f127eb5532a265a8ee45a630d65ce575dc0 Mon Sep 17 00:00:00 2001
From cc40d3ae5934613369a65ff132206e31ddb6d6e2 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 22 Jun 2013 16:12:02 +1000
Subject: [PATCH] Allow Disabling of Random Lighting Updates
@ -18,10 +18,10 @@ index 3bcca91..efe7ca5 100644
}
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 6965e82..6997d03 100644
index 2e3597f..4db02ce 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -2038,7 +2038,7 @@ public abstract class World implements IBlockAccess {
@@ -2044,7 +2044,7 @@ public abstract class World implements IBlockAccess {
}
this.methodProfiler.a("playerCheckLight");

View file

@ -1,14 +1,14 @@
From 762df1aafc439cfc917c64c2d24dd564c1373fea Mon Sep 17 00:00:00 2001
From 7b8d520d0c8aff3c622647bf434e312645c72a4c Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 28 Jun 2013 19:52:54 +1000
Subject: [PATCH] Disallow Interaction With Self
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 8e80ab5..e35e7a8 100644
index 67c8bba..c38d48a 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1030,6 +1030,13 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -1035,6 +1035,13 @@ public class PlayerConnection implements PacketPlayInListener {
if (this.player.dead) return; // CraftBukkit
WorldServer worldserver = this.minecraftServer.getWorldServer(this.player.dimension);
Entity entity = packetplayinuseentity.a((World) worldserver);

View file

@ -1,4 +1,4 @@
From b363d90cd24cab256492ab3884e099991bde1def Mon Sep 17 00:00:00 2001
From ea43ddf0c68dfcd900dae253b725fa62cac82688 Mon Sep 17 00:00:00 2001
From: Alex Ciuba <alexciuba@gmail.com>
Date: Tue, 11 Jun 2013 15:23:03 -0400
Subject: [PATCH] Prevent Ghost Players Caused by Plugins
@ -6,7 +6,7 @@ Subject: [PATCH] Prevent Ghost Players Caused by Plugins
Check if the player is still connected after firing event. Fixes BUKKIT-4327
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index b10b9a7..6527db0 100644
index 5174602..9a6e997 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -467,6 +467,11 @@ public abstract class PlayerList {

View file

@ -1,47 +0,0 @@
From f8cc5317e0a3da43d265764426cbd2d62fecad67 Mon Sep 17 00:00:00 2001
From: Alex Ciuba <alexciuba@gmail.com>
Date: Mon, 10 Jun 2013 16:04:38 -0400
Subject: [PATCH] Properly Consume Bonemeal in Dispensers
Don't consume bonemeal if there is no crop in front. Fixes BUKKIT-3790
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorBonemeal.java b/src/main/java/net/minecraft/server/DispenseBehaviorBonemeal.java
index 713bbe8..92b3789 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorBonemeal.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorBonemeal.java
@@ -20,9 +20,8 @@ final class DispenseBehaviorBonemeal extends DispenseBehaviorItem {
int k = isourceblock.getBlockZ() + enumfacing.e();
// CraftBukkit start
- ItemStack itemstack1 = itemstack.a(1);
org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ());
- CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack1);
+ CraftItemStack craftItem = CraftItemStack.asNewCraftStack(itemstack.getItem());
BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(0, 0, 0));
if (!BlockDispenser.eventFired) {
@@ -30,12 +29,10 @@ final class DispenseBehaviorBonemeal extends DispenseBehaviorItem {
}
if (event.isCancelled()) {
- itemstack.count++;
return itemstack;
}
if (!event.getItem().equals(craftItem)) {
- itemstack.count++;
// Chain to handler for new item
ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
@@ -46,7 +43,7 @@ final class DispenseBehaviorBonemeal extends DispenseBehaviorItem {
}
// CraftBukkit end
- if (ItemDye.a(itemstack1, world, i, j, k)) { // CraftBukkit - itemstack -> itemstack1
+ if (ItemDye.a(itemstack, world, i, j, k)) {
if (!world.isStatic) {
world.triggerEffect(2005, i, j, k, 0);
}
--
1.8.3.2

View file

@ -1,4 +1,4 @@
From 5b18671598657ab57b3d4604052bbc09cbeae7b7 Mon Sep 17 00:00:00 2001
From 4744856be374f949345575c80fcc212185d5877e Mon Sep 17 00:00:00 2001
From: Ammar Askar <ammar@ammaraskar.com>
Date: Tue, 16 Jul 2013 03:32:32 +0500
Subject: [PATCH] Entity ticking chunk caching
@ -6,10 +6,10 @@ Subject: [PATCH] Entity ticking chunk caching
Cache known loaded chunks so we avoid making a potentially expensive contains call for every single entity in exchange for some simple arithmetic. Best case scenario, this cuts down contains call to once per chunk, worst case it adds on some simple arithmetic operations
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 6997d03..b09220f 100644
index 4db02ce..ae93c2d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1193,6 +1193,7 @@ public abstract class World implements IBlockAccess {
@@ -1199,6 +1199,7 @@ public abstract class World implements IBlockAccess {
CrashReport crashreport;
CrashReportSystemDetails crashreportsystemdetails;
@ -17,7 +17,7 @@ index 6997d03..b09220f 100644
for (i = 0; i < this.i.size(); ++i) {
entity = (Entity) this.i.get(i);
// CraftBukkit start - Fixed an NPE, don't process entities in chunks queued for unload
@@ -1201,10 +1202,15 @@ public abstract class World implements IBlockAccess {
@@ -1207,10 +1208,15 @@ public abstract class World implements IBlockAccess {
}
ChunkProviderServer chunkProviderServer = ((WorldServer) this).chunkProviderServer;
@ -35,7 +35,7 @@ index 6997d03..b09220f 100644
try {
++entity.ticksLived;
@@ -1225,6 +1231,7 @@ public abstract class World implements IBlockAccess {
@@ -1231,6 +1237,7 @@ public abstract class World implements IBlockAccess {
this.i.remove(i--);
}
}
@ -43,7 +43,7 @@ index 6997d03..b09220f 100644
this.methodProfiler.c("remove");
this.entityList.removeAll(this.f);
@@ -1255,10 +1262,15 @@ public abstract class World implements IBlockAccess {
@@ -1261,10 +1268,15 @@ public abstract class World implements IBlockAccess {
// CraftBukkit start - Don't tick entities in chunks queued for unload
ChunkProviderServer chunkProviderServer = ((WorldServer) this).chunkProviderServer;

View file

@ -1,4 +1,4 @@
From d8b51a63aa3dfb1500f6bf2a24f91529ed46049d Mon Sep 17 00:00:00 2001
From 2a525afc328aa1d95b7cbddef5551a3cae5fce1c Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 3 Aug 2013 19:02:59 +1000
Subject: [PATCH] Plug World Unload Memory Leak

View file

@ -1,4 +1,4 @@
From e55b70c20e9ca080945cb3c982f0b31ed20d065a Mon Sep 17 00:00:00 2001
From 284ebc56e921a516af0011350d25ed729ef2cc54 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 3 Aug 2013 19:27:07 +1000
Subject: [PATCH] Player Collision API

View file

@ -1,4 +1,4 @@
From 91d9abc6d16c1700571dcbb1b633503c595aa95e Mon Sep 17 00:00:00 2001
From aea228d0d70cb6b17ad2623d19b41c95d7f5a51f Mon Sep 17 00:00:00 2001
From: agentk20 <agentkid20@gmail.com>
Date: Sat, 3 Aug 2013 19:28:48 +1000
Subject: [PATCH] Fully Disable Snooper When Not Required

View file

@ -1,4 +1,4 @@
From 212a3fbebba0f4f17606f9ba81da147989e1964d Mon Sep 17 00:00:00 2001
From 911bff8868dbc891c52f90603a351bcf404411fa Mon Sep 17 00:00:00 2001
From: DerFlash <bte@freenet.de>
Date: Sat, 3 Aug 2013 19:53:48 +1000
Subject: [PATCH] Add Getter for Entity Invulnerability

View file

@ -1,11 +1,11 @@
From 037d74366dc04180af0676da0c4c4ecbf09046fc Mon Sep 17 00:00:00 2001
From 18f5248e3fc125f68b9b76f3c97e8cd70db0a386 Mon Sep 17 00:00:00 2001
From: Ammar Askar <ammar@ammaraskar.com>
Date: Sat, 3 Aug 2013 21:42:00 +0500
Subject: [PATCH] Guard entity list
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index b09220f..29907b2 100644
index ae93c2d..04f5ed1 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -30,7 +30,25 @@ import org.bukkit.event.weather.ThunderChangeEvent;
@ -35,7 +35,7 @@ index b09220f..29907b2 100644
protected List f = new ArrayList();
public Set tileEntityList = new HashSet(); // CraftBukkit - ArrayList -> HashSet
private List a = new ArrayList();
@@ -77,6 +95,7 @@ public abstract class World implements IBlockAccess {
@@ -78,6 +96,7 @@ public abstract class World implements IBlockAccess {
int[] I;
// Spigot start
@ -43,7 +43,7 @@ index b09220f..29907b2 100644
protected final gnu.trove.map.hash.TLongShortHashMap chunkTickList;
protected float growthOdds = 100;
protected float modifiedOdds = 100;
@@ -1257,6 +1276,7 @@ public abstract class World implements IBlockAccess {
@@ -1263,6 +1282,7 @@ public abstract class World implements IBlockAccess {
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
timings.entityTick.startTiming(); // Spigot
@ -51,7 +51,7 @@ index b09220f..29907b2 100644
for (i = 0; i < this.entityList.size(); ++i) {
entity = (Entity) this.entityList.get(i);
@@ -1304,12 +1324,15 @@ public abstract class World implements IBlockAccess {
@@ -1310,12 +1330,15 @@ public abstract class World implements IBlockAccess {
this.getChunkAt(j, k).b(entity);
}

View file

@ -1,4 +1,4 @@
From 60303c53bdcf210bc35f0739d46d5d1055e98c8a Mon Sep 17 00:00:00 2001
From ec413424cdbdb10bca11cde03d57e74f8314bfbc Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Mon, 5 Aug 2013 20:17:20 +1000
Subject: [PATCH] Cap Minimum Player Speed

View file

@ -1,4 +1,4 @@
From bb7cb55f22665f91bb53725217a5ffe4662e2b2a Mon Sep 17 00:00:00 2001
From 0bba6fa05a116014310b1f9ec2ed0df8a9f0c2ca Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 14 Sep 2013 10:16:38 +1000
Subject: [PATCH] Update Inventory and Health for PlayerConsumeItemEvent

View file

@ -1,4 +1,4 @@
From 3ac96519d131fa968de4e5ce057119b1b7b506ce Mon Sep 17 00:00:00 2001
From 8586adc42e4b3692d487b365faa21596f20509f2 Mon Sep 17 00:00:00 2001
From: BlackHole <black-hole@live.com>
Date: Tue, 16 Jul 2013 22:34:50 +0200
Subject: [PATCH] Call EntityChangeBlockEvent for Fire Arrows hitting TNT

View file

@ -1,4 +1,4 @@
From 7c4f02339a3f02f4ffb9ff27193aaf1933e6311e Mon Sep 17 00:00:00 2001
From 89f7725a6f06c7e2b7116787aacce2bb5a53d6cf Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 21 Sep 2013 12:33:09 +1000
Subject: [PATCH] Allow Disabling of 1.6.3 Structure Saving

View file

@ -1,4 +1,4 @@
From 8ecf984537b078aba7dee4602ff1194776f54664 Mon Sep 17 00:00:00 2001
From f5a7fb1c934205ffe0072cb8a92b0587be5c54f3 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 22 Sep 2013 19:10:53 +1000
Subject: [PATCH] Item Despawn Rate

View file

@ -1,14 +1,14 @@
From da2c4dcf1043656220387aef2485bce94d41cbf1 Mon Sep 17 00:00:00 2001
From 754d901ff46068af559a0e6c477c669755613793 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 6 Oct 2013 17:36:28 +1100
Subject: [PATCH] Don't Special Case X Move Value
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index e35e7a8..5534bc3 100644
index c38d48a..ff91fd3 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -102,6 +102,7 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -103,6 +103,7 @@ public class PlayerConnection implements PacketPlayInListener {
private float lastPitch = Float.MAX_VALUE;
private float lastYaw = Float.MAX_VALUE;
private boolean justTeleported = false;
@ -16,7 +16,7 @@ index e35e7a8..5534bc3 100644
// For the PacketPlayOutBlockPlace hack :(
Long lastPacket;
@@ -219,7 +220,7 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -220,7 +221,7 @@ public class PlayerConnection implements PacketPlayInListener {
this.lastPitch = to.getPitch();
// Skip the first time we do this
@ -25,7 +25,7 @@ index e35e7a8..5534bc3 100644
PlayerMoveEvent event = new PlayerMoveEvent(player, from, to);
this.server.getPluginManager().callEvent(event);
@@ -243,7 +244,7 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -244,7 +245,7 @@ public class PlayerConnection implements PacketPlayInListener {
this.justTeleported = false;
return;
}

View file

@ -1,4 +1,4 @@
From 4738172272a8f5eb86f10b9f5ffef063f0d79a60 Mon Sep 17 00:00:00 2001
From 460ba26577fc8849d77714c3658076825c356f7d Mon Sep 17 00:00:00 2001
From: ninja- <xninja@openmailbox.org>
Date: Tue, 8 Oct 2013 14:34:49 +0200
Subject: [PATCH] Implement respawn API.

View file

@ -1,4 +1,4 @@
From b79db97bffb603498a3954b7134bbd328382cc22 Mon Sep 17 00:00:00 2001
From 198a55b2c2445028ebf22b701f559df657e070cf Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Wed, 9 Oct 2013 18:20:05 +1100
Subject: [PATCH] Fix BrewingStands Removing NBT / Potions

View file

@ -1,4 +1,4 @@
From d079e164f9fcdc49363a127419bb0feda4513715 Mon Sep 17 00:00:00 2001
From d675dfb9cc936fd5284cba03d4db1c19705b4123 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Mon, 14 Oct 2013 19:20:10 +1100
Subject: [PATCH] Arrow Despawn Rate

View file

@ -1,4 +1,4 @@
From cba82a2fe027a66e917bc7c25e1eea965bc65295 Mon Sep 17 00:00:00 2001
From e4e75d2de2b836b93a907e7e216362474e700601 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 23 Feb 2013 12:33:20 +1100
Subject: [PATCH] Watchdog Thread.

View file

@ -1,4 +1,4 @@
From d099c5cf0c68401eacfaeb1f8064d2faf1fd1411 Mon Sep 17 00:00:00 2001
From 625edcfc95e389fb79b6fe5aa28543285be8065b Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 1 Dec 2013 17:52:14 +1100
Subject: [PATCH] Fix packed ice generation

View file

@ -1,4 +1,4 @@
From 036fc7ed7cf49e6ce45b6d776fe382de2dcb5d7b Mon Sep 17 00:00:00 2001
From bdc4682b80e5ea2f0907dbe9be34c610b7ba9697 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 1 Dec 2013 18:18:41 +1100
Subject: [PATCH] BungeeCord Support

View file

@ -1,4 +1,4 @@
From 64706e7d04a86c6916f0cfe1decb0f5eaf2db38e Mon Sep 17 00:00:00 2001
From 33addf3303fe6773cc4d48168e9b739a05730fab Mon Sep 17 00:00:00 2001
From: Thinkofdeath <purggames@gmail.com>
Date: Sun, 1 Dec 2013 10:33:55 +0000
Subject: [PATCH] Fix links in chat
@ -97,5 +97,5 @@ index cc8e715..5d6ce54 100644
IChatBaseComponent addition = new ChatComponentText(builder.toString()).setChatModifier(modifier);
builder = new StringBuilder();
--
1.8.4.msysgit.0
1.8.3.2

View file

@ -1,4 +1,4 @@
From 182bdca43850526f000bb50e3c55b3f8bee4c154 Mon Sep 17 00:00:00 2001
From 4b9b05f7b6bca31e432146d65e4490fd58e74bf0 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 3 Dec 2013 11:07:48 +1100
Subject: [PATCH] Clear Flower Pot on Drop

View file

@ -1,11 +1,11 @@
From ea0330160627fac71f970dd0977d696a54385ef7 Mon Sep 17 00:00:00 2001
From 66759d37f4c77df5775fd60ab597bdf2c1ce875f Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thethinkofdeath@gmail.com>
Date: Mon, 2 Dec 2013 23:42:09 +0000
Subject: [PATCH] Fix some chunks not being sent to the client
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 99c30f9..412e487 100644
index a4adc56..d458dbb 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -919,7 +919,15 @@ public class Chunk {

View file

@ -1,4 +1,4 @@
From 5beedfbb607926e9dd357a806b2b48d9c40e7aaa Mon Sep 17 00:00:00 2001
From c3ad3cf798fbaeb93937357fc0e5658811bd3497 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 5 Dec 2013 13:55:53 +1100
Subject: [PATCH] Fix Broken Async Chat

View file

@ -1,22 +0,0 @@
From b287b9c8253f8449b62c3aba03708c6189cca65a Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 3 Dec 2013 11:28:32 +1100
Subject: [PATCH] Fix Huge Mushroom Caps
diff --git a/src/main/java/net/minecraft/server/WorldGenHugeMushroom.java b/src/main/java/net/minecraft/server/WorldGenHugeMushroom.java
index 160fc7e..67273f2 100644
--- a/src/main/java/net/minecraft/server/WorldGenHugeMushroom.java
+++ b/src/main/java/net/minecraft/server/WorldGenHugeMushroom.java
@@ -168,7 +168,7 @@ public class WorldGenHugeMushroom extends WorldGenerator implements BlockSapling
if (event == null) {
this.setTypeAndData(world, j2, j1, k2, Block.e(Block.b(Blocks.BIG_MUSHROOM_1) + l), l2);
} else {
- BlockState state = bukkitWorld.getBlockAt(i2, k1, k2).getState();
+ BlockState state = bukkitWorld.getBlockAt(j2, j1, k2).getState();
state.setTypeId(Block.b(Blocks.BIG_MUSHROOM_1) + l);
state.setData(new MaterialData(Block.b(Blocks.BIG_MUSHROOM_1) + l, (byte) l2));
event.getBlocks().add(state);
--
1.8.3.2

View file

@ -1,4 +1,4 @@
From 2493d28198b0053b6a41042553450e9cda2603ca Mon Sep 17 00:00:00 2001
From 09137dad16ba7ffde169c2d62dd001e7079b0886 Mon Sep 17 00:00:00 2001
From: ItsHarry <info@itsjerryandharry.com>
Date: Thu, 5 Dec 2013 21:58:11 +0100
Subject: [PATCH] Allow Teleportation of Vehicles and Passengers
@ -36,5 +36,5 @@ index f870cc6..5635c35 100644
// Update the From Location
from = event.getFrom();
--
1.8.3.msysgit.0
1.8.3.2

View file

@ -1,14 +1,14 @@
From a9da64ef95bf6803d28ed771582a37a0526f4443 Mon Sep 17 00:00:00 2001
From 1483400397a54cfdf2e32b84db55a27454107e88 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 8 Dec 2013 16:52:42 +1100
Subject: [PATCH] Remove OS X Special Chars from Signs
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 35c66c6..b3a2e60 100644
index ff91fd3..2f45a3e 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1553,6 +1553,7 @@ public class PlayerConnection implements PacketPlayInListener {
@@ -1550,6 +1550,7 @@ public class PlayerConnection implements PacketPlayInListener {
for (j = 0; j < 4; ++j) {
boolean flag = true;

View file

@ -1,42 +0,0 @@
From 61c2328ff2a651da8acb3c932e6b063e42071006 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 5 Dec 2013 16:33:16 +1100
Subject: [PATCH] Duplicate Disconnect Prevention
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 5534bc3..35c66c6 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -77,6 +77,7 @@ public class PlayerConnection implements PacketPlayInListener {
private double z;
private double q;
public boolean checkMovement = true; // CraftBukkit - private -> public
+ private boolean disconnected; // Spigot
public PlayerConnection(MinecraftServer minecraftserver, NetworkManager networkmanager, EntityPlayer entityplayer) {
this.minecraftServer = minecraftserver;
@@ -149,6 +150,12 @@ public class PlayerConnection implements PacketPlayInListener {
}
public void disconnect(String s) {
+ // Spigot Start
+ if ( disconnected )
+ {
+ return;
+ }
+ // Spigot End
// CraftBukkit start
String leaveMessage = EnumChatFormat.YELLOW + this.player.getName() + " left the game.";
@@ -170,6 +177,7 @@ public class PlayerConnection implements PacketPlayInListener {
this.networkManager.handle(new PacketPlayOutKickDisconnect(chatcomponenttext), new GenericFutureListener[] { new PlayerConnectionFuture(this, chatcomponenttext)});
this.a(chatcomponenttext); // CraftBukkit - Process quit immediately
this.networkManager.g();
+ disconnected = true; // Spigot
}
public void a(PacketPlayInSteerVehicle packetplayinsteervehicle) {
--
1.8.3.2

View file

@ -1,4 +1,4 @@
From 61595068e869c01288c4496d4172c011394b23de Mon Sep 17 00:00:00 2001
From 01571ab0b2a79558d1fb85e9a4bbd9db4ad86f75 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 6 Dec 2013 17:16:32 +1100
Subject: [PATCH] Fix Jungle Tree Generation

View file

@ -1,32 +0,0 @@
From 86d7a42c6a245d2f9675abb33bf63d9f076bffe9 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 5 Dec 2013 18:41:32 +1100
Subject: [PATCH] Fire EntityDamageByEntityEvent for ItemFrames
diff --git a/src/main/java/net/minecraft/server/EntityItemFrame.java b/src/main/java/net/minecraft/server/EntityItemFrame.java
index 261d0c1..0fdcffe 100644
--- a/src/main/java/net/minecraft/server/EntityItemFrame.java
+++ b/src/main/java/net/minecraft/server/EntityItemFrame.java
@@ -23,6 +23,18 @@ public class EntityItemFrame extends EntityHanging {
return false;
} else if (this.getItem() != null) {
if (!this.world.isStatic) {
+ // Spigot Start
+ if ( damagesource.getEntity() != null )
+ {
+ org.bukkit.event.entity.EntityDamageByEntityEvent event = new org.bukkit.event.entity.EntityDamageByEntityEvent(
+ damagesource.getEntity().getBukkitEntity(), getBukkitEntity(), org.bukkit.event.entity.EntityDamageEvent.DamageCause.ENTITY_ATTACK, f );
+ getBukkitEntity().getServer().getPluginManager().callEvent( event );
+ if ( event.isCancelled() )
+ {
+ return false;
+ }
+ }
+ // Spigot End
this.b(damagesource.getEntity(), false);
this.setItem((ItemStack) null);
}
--
1.8.3.2