From 3741bf7f81f93643c78058c28f24a02bcd775041 Mon Sep 17 00:00:00 2001 From: Alex 'mcmonkey' Goodwin Date: Mon, 15 Feb 2021 02:11:32 -0800 Subject: [PATCH] add fix for mojang's code not handling mount failures --- .../containers/core/ItemScriptContainer.java | 2 +- .../command/ExSustainedCommandHandler.java | 14 +++++++++----- .../handlers/AbstractListenerPlayInImpl.java | 3 +++ 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/plugin/src/main/java/com/denizenscript/denizen/scripts/containers/core/ItemScriptContainer.java b/plugin/src/main/java/com/denizenscript/denizen/scripts/containers/core/ItemScriptContainer.java index 644f2580db..77dff3e7f9 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/scripts/containers/core/ItemScriptContainer.java +++ b/plugin/src/main/java/com/denizenscript/denizen/scripts/containers/core/ItemScriptContainer.java @@ -154,7 +154,7 @@ public class ItemScriptContainer extends ScriptContainer { // # | Most item scripts should exclude this key! // color: ColorTag // - // # If your material is a 'm@written_book', you can specify a book script to automatically scribe your item + // # If your material is a 'written_book', you can specify a book script to automatically scribe your item // # upon creation. See 'book script containers' for more information. // # | Most item scripts should exclude this key, though there are certain rare cases it may be useful to. // book: book_script_name diff --git a/plugin/src/main/java/com/denizenscript/denizen/utilities/command/ExSustainedCommandHandler.java b/plugin/src/main/java/com/denizenscript/denizen/utilities/command/ExSustainedCommandHandler.java index 63bad5dae8..30be45f9cc 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/utilities/command/ExSustainedCommandHandler.java +++ b/plugin/src/main/java/com/denizenscript/denizen/utilities/command/ExSustainedCommandHandler.java @@ -52,11 +52,6 @@ public TimedQueue getOrMakeQueue(final Player player, boolean quiet) { return queue; } queue = new TimedQueue("EX_SUSTAINED_COMMAND", 0); - if (!quiet && player != null) { - queue.debugOutput = (s) -> { - player.spigot().sendMessage(FormattedTextHelper.parse(s, net.md_5.bungee.api.ChatColor.WHITE)); - }; - } queue.waitWhenEmpty = true; playerQueues.put(id, queue); return queue; @@ -77,6 +72,15 @@ public boolean onCommand(CommandSender sender, Command cmd, String alias, String return true; } TimedQueue queue = getOrMakeQueue(sender instanceof Player ? (Player) sender : null, quiet); + if (!quiet && sender instanceof Player) { + Player player = (Player) sender; + queue.debugOutput = (s) -> { + player.spigot().sendMessage(FormattedTextHelper.parse(s, net.md_5.bungee.api.ChatColor.WHITE)); + }; + } + else { + queue.debugOutput = null; + } if (queue.isPaused() || queue.isDelayed()) { sender.sendMessage(ChatColor.YELLOW + "Sustained queue is currently paused or waiting, adding command to queue for later execution."); } diff --git a/v1_16/src/main/java/com/denizenscript/denizen/nms/v1_16/impl/network/handlers/AbstractListenerPlayInImpl.java b/v1_16/src/main/java/com/denizenscript/denizen/nms/v1_16/impl/network/handlers/AbstractListenerPlayInImpl.java index c684e8e5e0..4fb2b223ff 100644 --- a/v1_16/src/main/java/com/denizenscript/denizen/nms/v1_16/impl/network/handlers/AbstractListenerPlayInImpl.java +++ b/v1_16/src/main/java/com/denizenscript/denizen/nms/v1_16/impl/network/handlers/AbstractListenerPlayInImpl.java @@ -167,6 +167,9 @@ public void a(PacketPlayInUseEntity packet) { @Override public void a(PacketPlayInFlying packet) { handlePacketIn(packet); + if (!(packet instanceof PacketPlayInFlying.PacketPlayInLook) && player.getVehicle() != null) { + player.playerConnection.sendPacket(new PacketPlayOutMount(player.getVehicle())); + } oldListener.a(packet); }