aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/utils/SkyblockEvents.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/utils/SkyblockEvents.java')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/utils/SkyblockEvents.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/SkyblockEvents.java b/src/main/java/me/xmrvizzy/skyblocker/utils/SkyblockEvents.java
new file mode 100644
index 00000000..2dd83ffa
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/utils/SkyblockEvents.java
@@ -0,0 +1,33 @@
+package me.xmrvizzy.skyblocker.utils;
+
+import net.fabricmc.api.EnvType;
+import net.fabricmc.api.Environment;
+import net.fabricmc.fabric.api.event.Event;
+import net.fabricmc.fabric.api.event.EventFactory;
+
+@Environment(EnvType.CLIENT)
+public final class SkyblockEvents {
+ public static final Event<SkyblockEvents.SkyblockJoin> JOIN = EventFactory.createArrayBacked(SkyblockEvents.SkyblockJoin.class, callbacks -> () -> {
+ for (SkyblockEvents.SkyblockJoin callback : callbacks) {
+ callback.onSkyblockJoin();
+ }
+ });
+
+ public static final Event<SkyblockEvents.SkyblockLeave> LEAVE = EventFactory.createArrayBacked(SkyblockEvents.SkyblockLeave.class, callbacks -> () -> {
+ for (SkyblockEvents.SkyblockLeave callback : callbacks) {
+ callback.onSkyblockLeave();
+ }
+ });
+
+ @Environment(EnvType.CLIENT)
+ @FunctionalInterface
+ public interface SkyblockJoin {
+ void onSkyblockJoin();
+ }
+
+ @Environment(EnvType.CLIENT)
+ @FunctionalInterface
+ public interface SkyblockLeave {
+ void onSkyblockLeave();
+ }
+}