diff --git a/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java b/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java index 250a5a5b9a..5af733a2b2 100644 --- a/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java +++ b/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java @@ -41,7 +41,6 @@ import java.awt.image.VolatileImage; import net.runelite.api.ChatMessageType; import net.runelite.api.Client; import net.runelite.api.GraphicsObject; -import net.runelite.api.ItemComposition; import net.runelite.api.MainBufferProvider; import net.runelite.api.MenuAction; import net.runelite.api.MessageNode; @@ -55,7 +54,6 @@ import net.runelite.api.events.ChatMessage; import net.runelite.api.events.GameTick; import net.runelite.api.events.GraphicsObjectCreated; import net.runelite.api.events.MenuOptionClicked; -import net.runelite.api.events.PostItemComposition; import net.runelite.api.events.ProjectileMoved; import net.runelite.api.events.SetMessage; import net.runelite.api.widgets.Widget; @@ -429,13 +427,6 @@ public class Hooks shouldProcessGameTick = true; } - public static void postItemComposition(ItemComposition itemComposition) - { - PostItemComposition event = new PostItemComposition(); - event.setItemComposition(itemComposition); - eventBus.post(event); - } - public static void onGraphicsObjectCreated(GraphicsObject go, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { GraphicsObjectCreated event = new GraphicsObjectCreated(go); diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSItemCompositionMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSItemCompositionMixin.java index 6d8a7a6d61..12f10b7ed6 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSItemCompositionMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSItemCompositionMixin.java @@ -25,10 +25,13 @@ package net.runelite.mixins; +import net.runelite.api.events.PostItemComposition; import net.runelite.api.mixins.Copy; import net.runelite.api.mixins.Inject; +import net.runelite.api.mixins.MethodHook; import net.runelite.api.mixins.Mixin; import net.runelite.api.mixins.Replace; +import static net.runelite.client.callback.Hooks.eventBus; import net.runelite.rs.api.RSItemComposition; @Mixin(RSItemComposition.class) @@ -73,4 +76,13 @@ public abstract class RSItemCompositionMixin implements RSItemComposition { shiftClickActionIndex = DEFAULT_CUSTOM_SHIFT_CLICK_INDEX; } + + @Inject + @MethodHook(value = "post", end = true) + public void post() + { + final PostItemComposition event = new PostItemComposition(); + event.setItemComposition(this); + eventBus.post(event); + } }