Added QuickCraft
This commit is contained in:
parent
815665536a
commit
2fa46f3ca4
|
@ -148,6 +148,7 @@ public final class ModuleManager {
|
|||
add(new ChatSuffixModule());
|
||||
add(new VisualRangeModule());
|
||||
add(new HotBarRefillModule());
|
||||
add(new QuickCraftModule());
|
||||
|
||||
//p2w experience
|
||||
if (Seppuku.INSTANCE.getCapeManager().hasCape())
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
package me.rigamortis.seppuku.impl.module.misc;
|
||||
|
||||
import me.rigamortis.seppuku.api.event.EventStageable;
|
||||
import me.rigamortis.seppuku.api.event.network.EventReceivePacket;
|
||||
import me.rigamortis.seppuku.api.module.Module;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.inventory.GuiCrafting;
|
||||
import net.minecraft.client.gui.inventory.GuiInventory;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.inventory.ClickType;
|
||||
import net.minecraft.network.play.server.SPacketSetSlot;
|
||||
import team.stiff.pomelo.impl.annotated.handler.annotation.Listener;
|
||||
|
||||
/**
|
||||
* Shift clicks the crafting result into the inventory.
|
||||
*
|
||||
* @author Old Chum
|
||||
* @since 10/18/20
|
||||
*/
|
||||
public final class QuickCraftModule extends Module {
|
||||
public QuickCraftModule () {
|
||||
super("QuickCraft", new String[]{"FastCraft", "qcraft"}, "Automatically collects the result when crafting.", "NONE", -1, Module.ModuleType.MISC);
|
||||
}
|
||||
|
||||
@Listener
|
||||
public void onReceivePacket (EventReceivePacket event) {
|
||||
if (event.getStage() == EventStageable.EventStage.PRE) {
|
||||
if (event.getPacket() instanceof SPacketSetSlot) {
|
||||
// Check if this packet updates the recipe result and if the result is not empty
|
||||
if (((SPacketSetSlot) event.getPacket()).getSlot() == 0 && ((SPacketSetSlot) event.getPacket()).getStack().getItem() != Items.AIR) {
|
||||
Minecraft mc = Minecraft.getMinecraft();
|
||||
|
||||
if (mc.currentScreen instanceof GuiInventory || mc.currentScreen instanceof GuiCrafting) {
|
||||
mc.playerController.windowClick(mc.player.openContainer.windowId, 0, 0, ClickType.QUICK_MOVE, mc.player);
|
||||
mc.playerController.updateController();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue