From f0f647b8374f01f99074f4b6e2cc01f0270359dd Mon Sep 17 00:00:00 2001 From: JitseB Date: Wed, 25 Apr 2018 21:40:29 +0200 Subject: [PATCH] Work on teleportation feature. --- .../npclib/nms/v1_10_R1/NPC_V1_10_R1.java | 5 ++++ .../npclib/nms/v1_11_R1/NPC_V1_11_R1.java | 5 ++++ .../jitse/npclib/nms/v1_8_R1/NPC_V1_8_R1.java | 5 ++++ .../jitse/npclib/nms/v1_8_R2/NPC_V1_8_R2.java | 5 ++++ .../jitse/npclib/nms/v1_8_R3/NPC_V1_8_R3.java | 5 ++++ .../jitse/npclib/nms/v1_9_R1/NPC_V1_9_R1.java | 5 ++++ .../jitse/npclib/nms/v1_9_R2/NPC_V1_9_R2.java | 5 ++++ src/net/jitse/npclib/plugin/NPCLibPlugin.java | 28 +++++++++++-------- 8 files changed, 51 insertions(+), 12 deletions(-) diff --git a/src/net/jitse/npclib/nms/v1_10_R1/NPC_V1_10_R1.java b/src/net/jitse/npclib/nms/v1_10_R1/NPC_V1_10_R1.java index 481fc65..315f508 100644 --- a/src/net/jitse/npclib/nms/v1_10_R1/NPC_V1_10_R1.java +++ b/src/net/jitse/npclib/nms/v1_10_R1/NPC_V1_10_R1.java @@ -100,4 +100,9 @@ public class NPC_V1_10_R1 extends NPC { Bukkit.getScheduler().runTaskLater(plugin, () -> playerConnection.sendPacket(packetPlayOutScoreboardTeamUnregister), 5); } + + @Override + public void sendTeleportationPackets(Player player) { + // Todo create this method. + } } diff --git a/src/net/jitse/npclib/nms/v1_11_R1/NPC_V1_11_R1.java b/src/net/jitse/npclib/nms/v1_11_R1/NPC_V1_11_R1.java index 10eb4a5..0ad2666 100644 --- a/src/net/jitse/npclib/nms/v1_11_R1/NPC_V1_11_R1.java +++ b/src/net/jitse/npclib/nms/v1_11_R1/NPC_V1_11_R1.java @@ -100,4 +100,9 @@ public class NPC_V1_11_R1 extends NPC { Bukkit.getScheduler().runTaskLater(plugin, () -> playerConnection.sendPacket(packetPlayOutScoreboardTeamUnregister), 5); } + + @Override + public void sendTeleportationPackets(Player player) { + // Todo create this method. + } } diff --git a/src/net/jitse/npclib/nms/v1_8_R1/NPC_V1_8_R1.java b/src/net/jitse/npclib/nms/v1_8_R1/NPC_V1_8_R1.java index 7544558..1ae0055 100644 --- a/src/net/jitse/npclib/nms/v1_8_R1/NPC_V1_8_R1.java +++ b/src/net/jitse/npclib/nms/v1_8_R1/NPC_V1_8_R1.java @@ -99,4 +99,9 @@ public class NPC_V1_8_R1 extends NPC { Bukkit.getScheduler().runTaskLater(plugin, () -> playerConnection.sendPacket(packetPlayOutScoreboardTeamUnregister), 5); } + + @Override + public void sendTeleportationPackets(Player player) { + // Todo create this method. + } } diff --git a/src/net/jitse/npclib/nms/v1_8_R2/NPC_V1_8_R2.java b/src/net/jitse/npclib/nms/v1_8_R2/NPC_V1_8_R2.java index 3b29090..25b52f3 100644 --- a/src/net/jitse/npclib/nms/v1_8_R2/NPC_V1_8_R2.java +++ b/src/net/jitse/npclib/nms/v1_8_R2/NPC_V1_8_R2.java @@ -100,4 +100,9 @@ public class NPC_V1_8_R2 extends NPC { Bukkit.getScheduler().runTaskLater(plugin, () -> playerConnection.sendPacket(packetPlayOutScoreboardTeamUnregister), 5); } + + @Override + public void sendTeleportationPackets(Player player) { + // Todo create this method. + } } diff --git a/src/net/jitse/npclib/nms/v1_8_R3/NPC_V1_8_R3.java b/src/net/jitse/npclib/nms/v1_8_R3/NPC_V1_8_R3.java index 0fb0193..05b1caf 100644 --- a/src/net/jitse/npclib/nms/v1_8_R3/NPC_V1_8_R3.java +++ b/src/net/jitse/npclib/nms/v1_8_R3/NPC_V1_8_R3.java @@ -100,4 +100,9 @@ public class NPC_V1_8_R3 extends NPC { Bukkit.getScheduler().runTaskLater(plugin, () -> playerConnection.sendPacket(packetPlayOutScoreboardTeamUnregister), 5); } + + @Override + public void sendTeleportationPackets(Player player) { + // Todo create this method. + } } diff --git a/src/net/jitse/npclib/nms/v1_9_R1/NPC_V1_9_R1.java b/src/net/jitse/npclib/nms/v1_9_R1/NPC_V1_9_R1.java index a5b9747..905a52a 100644 --- a/src/net/jitse/npclib/nms/v1_9_R1/NPC_V1_9_R1.java +++ b/src/net/jitse/npclib/nms/v1_9_R1/NPC_V1_9_R1.java @@ -100,4 +100,9 @@ public class NPC_V1_9_R1 extends NPC { Bukkit.getScheduler().runTaskLater(plugin, () -> playerConnection.sendPacket(packetPlayOutScoreboardTeamUnregister), 5); } + + @Override + public void sendTeleportationPackets(Player player) { + // Todo create this method. + } } diff --git a/src/net/jitse/npclib/nms/v1_9_R2/NPC_V1_9_R2.java b/src/net/jitse/npclib/nms/v1_9_R2/NPC_V1_9_R2.java index ef3a0c1..5ec349d 100644 --- a/src/net/jitse/npclib/nms/v1_9_R2/NPC_V1_9_R2.java +++ b/src/net/jitse/npclib/nms/v1_9_R2/NPC_V1_9_R2.java @@ -100,4 +100,9 @@ public class NPC_V1_9_R2 extends NPC { Bukkit.getScheduler().runTaskLater(plugin, () -> playerConnection.sendPacket(packetPlayOutScoreboardTeamUnregister), 5); } + + @Override + public void sendTeleportationPackets(Player player) { + // Todo create this method. + } } diff --git a/src/net/jitse/npclib/plugin/NPCLibPlugin.java b/src/net/jitse/npclib/plugin/NPCLibPlugin.java index 2cd427d..b3fbab9 100644 --- a/src/net/jitse/npclib/plugin/NPCLibPlugin.java +++ b/src/net/jitse/npclib/plugin/NPCLibPlugin.java @@ -23,6 +23,7 @@ import java.util.Arrays; public class NPCLibPlugin extends JavaPlugin implements Listener { private NPCLib npcLib; + private NPC npc; @Override public void onEnable() { @@ -32,7 +33,6 @@ public class NPCLibPlugin extends JavaPlugin implements Listener { ChatColor.GRAY + "This is a test plugin usually used for development reasons. " + "You can spawn NPCs by pressing [shift] in game."); - getServer().getPluginManager().registerEvents(this, this); getServer().getPluginManager().registerEvents(new NPCListener(), this); } @@ -48,17 +48,21 @@ public class NPCLibPlugin extends JavaPlugin implements Listener { return; } - MineSkinFetcher.fetchSkinFromIdAsync(168841, skin -> { - NPC npc = npcLib.createNPC(skin, Arrays.asList( - ChatColor.BOLD + "NPC Library", "", - "Create your own", "non-player characters", - "with the simplistic", "API of NPCLib!" - )); - npc.create(event.getPlayer().getLocation()); + if (npc != null) { + npc.teleport(event.getPlayer(), event.getPlayer().getLocation()); + } else { + MineSkinFetcher.fetchSkinFromIdAsync(168841, skin -> { + npc = npcLib.createNPC(skin, Arrays.asList( + ChatColor.BOLD + "NPC Library", "", + "Create your own", "non-player characters", + "with the simplistic", "API of NPCLib!" + )); + npc.create(event.getPlayer().getLocation()); - for (Player player : getServer().getOnlinePlayers()) { - npc.show(player); - } - }); + for (Player player : getServer().getOnlinePlayers()) { + npc.show(player); + } + }); + } } }