From cf2ff77ccb50798a4681b6db7de9553f341ce849 Mon Sep 17 00:00:00 2001 From: tmantti Date: Wed, 15 Jul 2020 13:59:11 +0300 Subject: [PATCH 1/5] Update PluginMessageReceiver.java --- .../listeners/PluginMessageReceiver.java | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java b/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java index 73f5821..c9845ce 100644 --- a/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java +++ b/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java @@ -33,18 +33,19 @@ public class PluginMessageReceiver implements PluginMessageListener { String targetDestination = in.readUTF(); UUID bungeeUUID = UUID.fromString(in.readUTF()); - Player targetPlayer = this.plugin.getServer().getPlayer(bungeeUUID); - - if (targetPlayer != null) { - Player finalTargetPlayer = targetPlayer; - plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, - () -> Destination.warp(finalTargetPlayer, targetDestination, false, true), - 20L - ); - } - else { - plugin.getLogger().warning("Could not find player to teleport to destination"); - } + plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, () -> { + Player targetPlayer = this.plugin.getServer().getPlayer(bungeeUUID); + + if (targetPlayer != null) { + Player finalTargetPlayer = targetPlayer; + Destination.warp(finalTargetPlayer, targetDestination, false, true); + } + else { + plugin.getLogger().warning("Could not find player to teleport to destination"); + } + + + }, 20); } } From 35845e1caa6b15311e478c6c361dca7c19f91b6d Mon Sep 17 00:00:00 2001 From: tmantti Date: Thu, 16 Jul 2020 12:33:59 +0300 Subject: [PATCH 2/5] Update AdvancedPortalsPlugin.java --- .../sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java b/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java index 0890e2a..8488687 100644 --- a/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java +++ b/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java @@ -21,7 +21,7 @@ public class AdvancedPortalsPlugin extends JavaPlugin { public boolean registeredBungeeChannels = false; - // public HashMap PlayerDestiMap = new HashMap<>(); + public HashMap PlayerDestiMap = new HashMap<>(); public void onEnable() { From 1cba8073515e52aae89d6c6ac3a8a80afdda9d12 Mon Sep 17 00:00:00 2001 From: tmantti Date: Thu, 16 Jul 2020 12:36:25 +0300 Subject: [PATCH 3/5] Update PluginMessageReceiver.java --- .../listeners/PluginMessageReceiver.java | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java b/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java index c9845ce..8ad7ea1 100644 --- a/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java +++ b/src/main/java/com/sekwah/advancedportals/bukkit/listeners/PluginMessageReceiver.java @@ -31,21 +31,24 @@ public class PluginMessageReceiver implements PluginMessageListener { if (subchannel.equals(BungeeMessages.SERVER_DESTI)) { String targetDestination = in.readUTF(); - UUID bungeeUUID = UUID.fromString(in.readUTF()); + String bungeeUUID = in.readUTF(); + + Player targetPlayer = this.plugin.getServer().getPlayer(UUID.fromString(bungeeUUID)); - plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, () -> { - Player targetPlayer = this.plugin.getServer().getPlayer(bungeeUUID); + if (targetPlayer != null) { + Player finalTargetPlayer = targetPlayer; + Destination.warp(finalTargetPlayer, targetDestination, false, true); + + } + else { + plugin.PlayerDestiMap.put(bungeeUUID, targetDestination); - if (targetPlayer != null) { - Player finalTargetPlayer = targetPlayer; - Destination.warp(finalTargetPlayer, targetDestination, false, true); - } - else { - plugin.getLogger().warning("Could not find player to teleport to destination"); - } - - - }, 20); + plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, () -> + plugin.PlayerDestiMap.remove(bungeeUUID), + 20L*10 + ); + } + } } From 77096a931c56feb51f0dae2520b485950c04180a Mon Sep 17 00:00:00 2001 From: tmantti Date: Thu, 16 Jul 2020 12:41:28 +0300 Subject: [PATCH 4/5] Update Listeners.java --- .../bukkit/listeners/Listeners.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/sekwah/advancedportals/bukkit/listeners/Listeners.java b/src/main/java/com/sekwah/advancedportals/bukkit/listeners/Listeners.java index 1c29dba..7169cae 100644 --- a/src/main/java/com/sekwah/advancedportals/bukkit/listeners/Listeners.java +++ b/src/main/java/com/sekwah/advancedportals/bukkit/listeners/Listeners.java @@ -89,7 +89,20 @@ public class Listeners implements Listener { @EventHandler public void onJoinEvent(PlayerJoinEvent event) { - Portal.joinCooldown.put(event.getPlayer().getName(), System.currentTimeMillis()); + Player player = event.getPlayer(); + + Portal.joinCooldown.put(player.getName(), System.currentTimeMillis()); + + String uuid = player.getUniqueId().toString(); + + if (plugin.PlayerDestiMap.containsKey(uuid)) { + plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, () -> { + Destination.warp(player, plugin.PlayerDestiMap.get(uuid), false, true); + plugin.PlayerDestiMap.remove(uuid); + + }, 1L); + + } } @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) From f82de6be1212da0e273cbad87e358b63f3bb6e7f Mon Sep 17 00:00:00 2001 From: tmantti Date: Thu, 16 Jul 2020 12:58:06 +0300 Subject: [PATCH 5/5] Update AdvancedPortalsPlugin.java --- .../sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java b/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java index 8488687..c8a421b 100644 --- a/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java +++ b/src/main/java/com/sekwah/advancedportals/bukkit/AdvancedPortalsPlugin.java @@ -12,6 +12,8 @@ import org.bukkit.configuration.ConfigurationSection; import org.bukkit.entity.Player; import org.bukkit.plugin.java.JavaPlugin; +import java.util.HashMap; + public class AdvancedPortalsPlugin extends JavaPlugin { //public CraftBukkit compat = null;