diff options
author | Dinnerbone <dinnerbone@dinnerbone.com> | 2011-02-25 12:46:31 +0000 |
---|---|---|
committer | Dinnerbone <dinnerbone@dinnerbone.com> | 2011-02-25 12:46:31 +0000 |
commit | 659fa9eaf9ccfcda12ee9bc4b7dfa589884927da (patch) | |
tree | d8134964ebb24405756b0c72ef57b3ecd637ed89 | |
parent | e53fd1367cda547a14fcff89ab41a3f7daad2eac (diff) | |
download | craftbukkit-659fa9eaf9ccfcda12ee9bc4b7dfa589884927da.tar craftbukkit-659fa9eaf9ccfcda12ee9bc4b7dfa589884927da.tar.gz craftbukkit-659fa9eaf9ccfcda12ee9bc4b7dfa589884927da.tar.lz craftbukkit-659fa9eaf9ccfcda12ee9bc4b7dfa589884927da.tar.xz craftbukkit-659fa9eaf9ccfcda12ee9bc4b7dfa589884927da.zip |
Temporary fix for teleportation
-rw-r--r-- | src/main/java/net/minecraft/server/PlayerManager.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/main/java/net/minecraft/server/PlayerManager.java b/src/main/java/net/minecraft/server/PlayerManager.java index 6a8311cd..12f0dddd 100644 --- a/src/main/java/net/minecraft/server/PlayerManager.java +++ b/src/main/java/net/minecraft/server/PlayerManager.java @@ -126,9 +126,28 @@ public class PlayerManager { int i1 = i - k; int j1 = j - l; + // Craftbukkit start + if (!this.a(i, j, k, l)) { + this.a(i, j, true).a(entityplayer); + } + + if (!this.a(i - i1, j - j1, i, j)) { + PlayerInstance playerinstance = this.a(i - i1, j - j1, false); + + if (playerinstance != null) { + playerinstance.b(entityplayer); + } + } + // Craftbukkit end + if (i1 != 0 || j1 != 0) { for (int k1 = i - 10; k1 <= i + 10; ++k1) { for (int l1 = j - 10; l1 <= j + 10; ++l1) { + // Craftbukkit start + if ((k1 == i) && (l1 == j)) { + continue; + } + // Craftbukkit end if (!this.a(k1, l1, k, l)) { this.a(k1, l1, true).a(entityplayer); } |