diff options
author | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-10-03 11:13:24 -0400 |
---|---|---|
committer | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-10-03 11:13:24 -0400 |
commit | ddceeb2734012f7cd6ed7a7df48cf6e857708788 (patch) | |
tree | 15d48fb8fdba52e271929afa0e7ffed354094791 /src/main/java/me/xmrvizzy/skyblocker/events | |
parent | ec2fe2475610e5c1c705d296a697e92803b8db7a (diff) | |
download | Skyblocker-ddceeb2734012f7cd6ed7a7df48cf6e857708788.tar.gz Skyblocker-ddceeb2734012f7cd6ed7a7df48cf6e857708788.tar.bz2 Skyblocker-ddceeb2734012f7cd6ed7a7df48cf6e857708788.zip |
Refactor ItemCooldowns
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/events')
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/events/ClientPlayerBlockBreakEvent.java | 14 | ||||
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/events/SkyblockEvents.java | 33 |
2 files changed, 41 insertions, 6 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/events/ClientPlayerBlockBreakEvent.java b/src/main/java/me/xmrvizzy/skyblocker/events/ClientPlayerBlockBreakEvent.java index 9d9463f7..76298612 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/events/ClientPlayerBlockBreakEvent.java +++ b/src/main/java/me/xmrvizzy/skyblocker/events/ClientPlayerBlockBreakEvent.java @@ -2,20 +2,22 @@ package me.xmrvizzy.skyblocker.events; import net.fabricmc.fabric.api.event.Event; import net.fabricmc.fabric.api.event.EventFactory; +import net.minecraft.block.BlockState; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; // Fabric API currently doesn't have an event for this public class ClientPlayerBlockBreakEvent { public static final Event<AfterBlockBreak> AFTER = EventFactory.createArrayBacked(AfterBlockBreak.class, - (listeners) -> (pos, player) -> { - for (AfterBlockBreak listener : listeners) { - listener.afterBlockBreak(pos, player); - } - }); + (listeners) -> (world, player, pos, state) -> { + for (AfterBlockBreak listener : listeners) { + listener.afterBlockBreak(world, player, pos, state); + } + }); @FunctionalInterface public interface AfterBlockBreak { - void afterBlockBreak(BlockPos pos, PlayerEntity player); + void afterBlockBreak(World world, PlayerEntity player, BlockPos pos, BlockState state); } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/events/SkyblockEvents.java b/src/main/java/me/xmrvizzy/skyblocker/events/SkyblockEvents.java new file mode 100644 index 00000000..477d68b0 --- /dev/null +++ b/src/main/java/me/xmrvizzy/skyblocker/events/SkyblockEvents.java @@ -0,0 +1,33 @@ +package me.xmrvizzy.skyblocker.events; + +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(); + } +} |