From bd268034bf74316129f87b79da74819fb6fff8ee Mon Sep 17 00:00:00 2001 From: Bixilon Date: Tue, 3 May 2022 22:20:48 +0200 Subject: [PATCH] interaction handler: stop item using when changing hotbar slot --- .../gui/rendering/input/interaction/HotbarInteractionHandler.kt | 2 ++ .../gui/rendering/input/interaction/InteractionManager.kt | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/HotbarInteractionHandler.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/HotbarInteractionHandler.kt index 1e95a7c16..552f94b02 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/HotbarInteractionHandler.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/HotbarInteractionHandler.kt @@ -32,6 +32,7 @@ import de.bixilon.minosoft.util.KUtil.toResourceLocation class HotbarInteractionHandler( val renderWindow: RenderWindow, + val interactionManager: InteractionManager, ) { private val connection = renderWindow.connection val slotLimiter = RateLimiter() @@ -48,6 +49,7 @@ class HotbarInteractionHandler( return } connection.player.selectedHotbarSlot = slot + interactionManager.use.stopUsingItem() slotLimiter += { connection.sendPacket(HotbarSlotC2SP(slot)) } connection.fireEvent(SelectHotbarSlotEvent(connection, EventInitiators.CLIENT, slot)) } diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/InteractionManager.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/InteractionManager.kt index 0ec3ecbec..ad7e48a26 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/InteractionManager.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/input/interaction/InteractionManager.kt @@ -23,7 +23,7 @@ class InteractionManager( val renderWindow: RenderWindow, ) { private val connection = renderWindow.connection - val hotbar = HotbarInteractionHandler(renderWindow) + val hotbar = HotbarInteractionHandler(renderWindow, this) val pick = ItemPickInteractionHandler(renderWindow, this) val attack = AttackInteractionHandler(renderWindow, this) val `break` = BreakInteractionHandler(renderWindow)