From 90f0c0722175466856b82ef65ada129eb972c425 Mon Sep 17 00:00:00 2001 From: Arslaan Pathan Date: Wed, 8 Oct 2025 22:44:10 +1300 Subject: finish clickgui, add more hacks, add settings, add mixins, add packet event buses and packet events, what the cook why did i put so much shit in one commit --- .../arslaansmagichax/events/PacketEvent.java | 18 ++++++++++++++++++ .../arslaansmagichax/events/SendPacketEventBus.java | 18 ++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/PacketEvent.java create mode 100644 src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/SendPacketEventBus.java (limited to 'src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events') diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/PacketEvent.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/PacketEvent.java new file mode 100644 index 0000000..654d2d8 --- /dev/null +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/PacketEvent.java @@ -0,0 +1,18 @@ +package net.justlearning.arslaan3102.arslaansmagichax.events; + +import net.minecraft.network.packet.Packet; + +public final class PacketEvent { + private PacketEvent() {} + + public static final class Send { + private final Packet packet; + private boolean cancelled; + + public Send(Packet packet) { this.packet = packet; } + + public Packet packet() { return packet; } + public void setCancelled(boolean c) { cancelled = c; } + public boolean isCancelled() { return cancelled; } + } +} \ No newline at end of file diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/SendPacketEventBus.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/SendPacketEventBus.java new file mode 100644 index 0000000..6f717ce --- /dev/null +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/events/SendPacketEventBus.java @@ -0,0 +1,18 @@ +package net.justlearning.arslaan3102.arslaansmagichax.events; + +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.function.Consumer; + +public class SendPacketEventBus { + private static final List> listeners = new CopyOnWriteArrayList<>(); + + public static void register(Consumer listener) { + listeners.add(listener); + } + + public static void post(PacketEvent.Send ev) { + for (Consumer l : listeners) l.accept(ev); + } +} + -- cgit v1.2.3