19972e09b8
5a0150f586ed3eb15fe6f1f596d1a5a7d806f0f9 Fix ITEM_BREAK e6a3911057bd94d8bd7021cbb4923fb84fb106d1 Upstream merge d1cdcf8d4c3639f956474f02ed662517cffbe23e Remove old patch 068df64aeee368377e1673667bffc7a6dcf90554 Rebuild all patches
41 lines
1.8 KiB
Diff
41 lines
1.8 KiB
Diff
From 02509dc7476f72618938ce44287e2dbeec7a17e3 Mon Sep 17 00:00:00 2001
|
|
From: ninja <xninja@openmailbox.org>
|
|
Date: Tue, 8 Apr 2014 14:05:19 +0200
|
|
Subject: [PATCH] Implement PlayerSpawnLocationEvent.
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
|
index c9ef1d6..26e4328 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
|
@@ -35,6 +35,7 @@ import org.bukkit.event.player.PlayerQuitEvent;
|
|
import org.bukkit.event.player.PlayerRespawnEvent;
|
|
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
|
|
import org.bukkit.util.Vector;
|
|
+import org.spigotmc.event.player.PlayerSpawnLocationEvent;
|
|
// CraftBukkit end
|
|
|
|
public abstract class PlayerList {
|
|
@@ -98,6 +99,19 @@ public abstract class PlayerList {
|
|
s1 = networkmanager.getSocketAddress().toString();
|
|
}
|
|
|
|
+ // Spigot start - spawn location event
|
|
+ Player bukkitPlayer = entityplayer.getBukkitEntity();
|
|
+ PlayerSpawnLocationEvent ev = new PlayerSpawnLocationEvent(bukkitPlayer, bukkitPlayer.getLocation());
|
|
+ Bukkit.getPluginManager().callEvent(ev);
|
|
+
|
|
+ Location loc = ev.getSpawnLocation();
|
|
+ WorldServer world = ((CraftWorld) loc.getWorld()).getHandle();
|
|
+
|
|
+ entityplayer.spawnIn(world);
|
|
+ entityplayer.setPosition(loc.getX(), loc.getY(), loc.getZ());
|
|
+ entityplayer.setYawPitch(loc.getYaw(), loc.getPitch());
|
|
+ // Spigot end
|
|
+
|
|
// CraftBukkit - Moved message to after join
|
|
// PlayerList.h.info(entityplayer.getName() + "[" + s1 + "] logged in with entity id " + entityplayer.getId() + " at (" + entityplayer.locX + ", " + entityplayer.locY + ", " + entityplayer.locZ + ")");
|
|
WorldServer worldserver = this.server.getWorldServer(entityplayer.dimension);
|
|
--
|
|
2.1.0
|
|
|