From 154ed98bd6be454a8faefec3944451642946a275 Mon Sep 17 00:00:00 2001 From: Percyqaz <> Date: Fri, 17 Dec 2021 19:51:55 +0000 Subject: [PATCH] update to 1.18.1 --- .gitignore | 3 ++- Lodestone.iml | 8 +++---- .../Percyqaz/Lodestone/CompassListener.java | 21 +++++++------------ 3 files changed, 13 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index 6c44df2..7b23659 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ out/artifacts/Lodestone_jar/Lodestone.jar out/production/Lodestone/plugin.yml out/production/Lodestone/me/Percyqaz/Lodestone/CompassListener.class out/production/Lodestone/me/Percyqaz/Lodestone/Lodestone.class -/.vs/slnx.sqlite +.idea/ +.vs/ diff --git a/Lodestone.iml b/Lodestone.iml index b0dae88..a2c7644 100644 --- a/Lodestone.iml +++ b/Lodestone.iml @@ -5,17 +5,15 @@ - + - + - - - + diff --git a/src/me/Percyqaz/Lodestone/CompassListener.java b/src/me/Percyqaz/Lodestone/CompassListener.java index 022097e..78345ba 100644 --- a/src/me/Percyqaz/Lodestone/CompassListener.java +++ b/src/me/Percyqaz/Lodestone/CompassListener.java @@ -1,8 +1,6 @@ package me.Percyqaz.Lodestone; -import net.minecraft.nbt.NBTTagCompound; import org.bukkit.*; -import org.bukkit.craftbukkit.v1_17_R1.inventory.CraftItemStack; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; @@ -11,24 +9,21 @@ import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.inventory.EquipmentSlot; import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.CompassMeta; public class CompassListener implements Listener { @EventHandler(priority = EventPriority.LOWEST) public void Compass(PlayerInteractEvent e) { Player p = e.getPlayer(); - ItemStack i = p.getInventory().getItemInMainHand(); - if (e.getHand() == EquipmentSlot.HAND && i.getType() == Material.COMPASS && e.getAction() == Action.RIGHT_CLICK_AIR) { - net.minecraft.world.item.ItemStack item = CraftItemStack.asNMSCopy(i); - NBTTagCompound tag = item.getOrCreateTag(); - if (tag.hasKey("LodestonePos")) { + ItemStack item = p.getInventory().getItemInMainHand(); + if (e.getHand() == EquipmentSlot.HAND && item.getType() == Material.COMPASS && e.getAction() == Action.RIGHT_CLICK_AIR) { + CompassMeta itemMeta = (CompassMeta)item.getItemMeta(); + if (itemMeta.hasLodestone() && itemMeta.isLodestoneTracked()) { p.sendMessage(ChatColor.BLUE + "Whoosh!"); - NBTTagCompound pos = tag.getCompound("LodestonePos"); - Bukkit.dispatchCommand(Bukkit.getConsoleSender(), - "execute as " + p.getName() - + " in " + tag.getString("LodestoneDimension") - + " run tp " + pos.getInt("X") + " " + (pos.getInt("Y") + 2) + " " + pos.getInt("Z")); - i.setAmount(i.getAmount() - 1); + Location pos = itemMeta.getLodestone(); + p.teleport(pos.add(0.5, 1.5, 0.5)); + item.setAmount(item.getAmount() - 1); e.setCancelled(true); } }