From 00de1b773670a64e6af87c441c072a46b771415f Mon Sep 17 00:00:00 2001 From: Jos van 't Hof Date: Mon, 23 Apr 2012 17:24:07 +0200 Subject: [PATCH] Added tiny listener for sending ground. Removed .setNodamageTime(). --- .../RandomSpawn/Listeners/JoinListener.java | 17 +++++++++++------ .../RandomSpawn/Listeners/RespawnListener.java | 5 +++-- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/JoinListener.java b/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/JoinListener.java index 0bea55163..b1d740199 100644 --- a/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/JoinListener.java +++ b/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/JoinListener.java @@ -10,6 +10,8 @@ import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.event.player.PlayerTeleportEvent; +import org.bukkit.metadata.FixedMetadataValue; import me.Josvth.RandomSpawn.RandomSpawn; @@ -21,10 +23,15 @@ public class JoinListener implements Listener{ plugin = instance; plugin.getServer().getPluginManager().registerEvents(this, plugin); } - + + @EventHandler + public void onPlayerTeleport(PlayerTeleportEvent event){ + plugin.sendGround(event.getPlayer(), event.getTo()); + } + @EventHandler public void onPlayerJoin(PlayerJoinEvent event){ - + Player player = event.getPlayer(); String playerName = player.getName(); @@ -54,12 +61,10 @@ public class JoinListener implements Listener{ Location spawnLocation = plugin.chooseSpawn(world); - plugin.sendGround(player, spawnLocation); - player.teleport(spawnLocation); - - player.setNoDamageTicks(plugin.yamlHandler.config.getInt("nodamagetime",5)*20); + player.setMetadata("lasttimerandomspawned", new FixedMetadataValue(plugin, System.currentTimeMillis())); + if (plugin.yamlHandler.worlds.getBoolean(worldName + ".keeprandomspawns",false)){ player.setBedSpawnLocation(spawnLocation); } diff --git a/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/RespawnListener.java b/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/RespawnListener.java index 99ecdfb61..882c772a0 100644 --- a/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/RespawnListener.java +++ b/plugins/randomspawn-paper/Random Spawn/src/me/Josvth/RandomSpawn/Listeners/RespawnListener.java @@ -10,6 +10,7 @@ import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerRespawnEvent; +import org.bukkit.metadata.FixedMetadataValue; public class RespawnListener implements Listener{ @@ -54,9 +55,9 @@ public class RespawnListener implements Listener{ plugin.sendGround(player, spawnLocation); event.setRespawnLocation(spawnLocation); - - player.setNoDamageTicks(plugin.yamlHandler.config.getInt("nodamagetime",5)*20); + player.setMetadata("lasttimerandomspawned", new FixedMetadataValue(plugin, System.currentTimeMillis())); + if (plugin.yamlHandler.worlds.getBoolean(worldName + ".keeprandomspawns",false)){ player.setBedSpawnLocation(spawnLocation); }