diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/gui/DyeSelectorGui.java b/src/main/java/io/github/fisher2911/hmccosmetics/gui/DyeSelectorGui.java index ea8e0d88..6d3ef248 100644 --- a/src/main/java/io/github/fisher2911/hmccosmetics/gui/DyeSelectorGui.java +++ b/src/main/java/io/github/fisher2911/hmccosmetics/gui/DyeSelectorGui.java @@ -40,6 +40,10 @@ public class DyeSelectorGui extends CosmeticGui{ gui.setDefaultClickAction(event -> { event.setCancelled(true); + if (armorItem == null) { + return; + } + final ArmorItem.Type type = armorItem.getType(); final PlayerArmor playerArmor = user.getPlayerArmor(); diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/listener/TeleportListener.java b/src/main/java/io/github/fisher2911/hmccosmetics/listener/TeleportListener.java index c3d44c57..7ce6d545 100644 --- a/src/main/java/io/github/fisher2911/hmccosmetics/listener/TeleportListener.java +++ b/src/main/java/io/github/fisher2911/hmccosmetics/listener/TeleportListener.java @@ -5,6 +5,7 @@ import io.github.fisher2911.hmccosmetics.user.User; import io.github.fisher2911.hmccosmetics.user.UserManager; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerTeleportEvent; @@ -18,10 +19,11 @@ public class TeleportListener implements Listener { this.userManager = this.plugin.getUserManager(); } - @EventHandler + @EventHandler(ignoreCancelled = true, priority = EventPriority.LOWEST) public void onPlayerTeleport(final PlayerTeleportEvent event) { final Player player = event.getPlayer(); this.userManager.get(player.getUniqueId()).ifPresent(User::despawnAttached); } + } diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java b/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java index 4731f835..5249bb1b 100644 --- a/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java +++ b/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java @@ -191,6 +191,12 @@ public class User { return; } + final Player player = this.getPlayer(); + + if (player != null) { + player.removePassenger(this.attached); + } + this.attached.remove(); this.attached = null; } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 4ca53205..15b9308c 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -2,6 +2,8 @@ name: HMCCosmetics main: io.github.fisher2911.hmccosmetics.HMCCosmetics version: 1.0.0 api-version: 1.17 +softdepend: + - Multiverse depend: - ProtocolLib permissions: