summaryrefslogtreecommitdiffstats
path: root/src/main/java
diff options
context:
space:
mode:
authorJames Clarke <jamesrtclarke@me.com>2012-02-15 19:59:17 +0000
committerEvilSeph <evilseph@gmail.com>2012-02-29 14:23:12 -0500
commitcd90cec48c5f13b1856350dd3675a9bb5b8171ed (patch)
tree8d03a80612658ca18df75fa79c041f8e6d3c7921 /src/main/java
parent53e4a034f4cb1171d22821da5f4a398d125f6576 (diff)
downloadcraftbukkit-cd90cec48c5f13b1856350dd3675a9bb5b8171ed.tar
craftbukkit-cd90cec48c5f13b1856350dd3675a9bb5b8171ed.tar.gz
craftbukkit-cd90cec48c5f13b1856350dd3675a9bb5b8171ed.tar.lz
craftbukkit-cd90cec48c5f13b1856350dd3675a9bb5b8171ed.tar.xz
craftbukkit-cd90cec48c5f13b1856350dd3675a9bb5b8171ed.zip
Implemented TeleportCause enums. Addresses BUKKIT-265
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/net/minecraft/server/ServerConfigurationManager.java22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/main/java/net/minecraft/server/ServerConfigurationManager.java b/src/main/java/net/minecraft/server/ServerConfigurationManager.java
index 1ee34a70..001477a1 100644
--- a/src/main/java/net/minecraft/server/ServerConfigurationManager.java
+++ b/src/main/java/net/minecraft/server/ServerConfigurationManager.java
@@ -23,6 +23,7 @@ import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerLoginEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
+import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
import org.bukkit.Bukkit;
// CraftBukkit end
@@ -351,8 +352,27 @@ public class ServerConfigurationManager {
}
}
+ TeleportCause cause = TeleportCause.UNKNOWN;
+ int playerEnvironmentId = entityplayer.getBukkitEntity().getWorld().getEnvironment().getId();
+ switch (dimension) {
+ case -1:
+ cause = TeleportCause.NETHER_PORTAL;
+ break;
+ case 0:
+ if (playerEnvironmentId == -1) {
+ cause = TeleportCause.NETHER_PORTAL;
+ } else if (playerEnvironmentId == 1) {
+ cause = TeleportCause.END_PORTAL;
+ }
+
+ break;
+ case 1:
+ cause = TeleportCause.END_PORTAL;
+ break;
+ }
+
org.bukkit.craftbukkit.PortalTravelAgent pta = new org.bukkit.craftbukkit.PortalTravelAgent();
- PlayerPortalEvent event = new PlayerPortalEvent((Player) entityplayer.getBukkitEntity(), fromLocation, toLocation, pta);
+ PlayerPortalEvent event = new PlayerPortalEvent((Player) entityplayer.getBukkitEntity(), fromLocation, toLocation, pta, cause);
if (entityplayer.dimension == 1) {
event.useTravelAgent(false);