aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/Core.java
diff options
context:
space:
mode:
authorUnknown <shekwancheung0528@gmail.com>2018-12-31 13:12:25 +0800
committerUnknown <shekwancheung0528@gmail.com>2018-12-31 13:12:25 +0800
commitfee12aa0885da204ec874cd5ada371c42501c873 (patch)
tree880596f5f463e08762a56b1cb1d7008aaed1899d /src/main/java/me/shedaniel/Core.java
parent1b14c5142bb49db9af078b5c753bc22ce35a40cc (diff)
downloadRoughlyEnoughItems-fee12aa0885da204ec874cd5ada371c42501c873.tar.gz
RoughlyEnoughItems-fee12aa0885da204ec874cd5ada371c42501c873.tar.bz2
RoughlyEnoughItems-fee12aa0885da204ec874cd5ada371c42501c873.zip
packetadder wip
Diffstat (limited to 'src/main/java/me/shedaniel/Core.java')
-rwxr-xr-xsrc/main/java/me/shedaniel/Core.java47
1 files changed, 42 insertions, 5 deletions
diff --git a/src/main/java/me/shedaniel/Core.java b/src/main/java/me/shedaniel/Core.java
index 61f985db1..b5c28f61b 100755
--- a/src/main/java/me/shedaniel/Core.java
+++ b/src/main/java/me/shedaniel/Core.java
@@ -1,22 +1,32 @@
package me.shedaniel;
+import me.shedaniel.library.KeyBindManager;
+import me.shedaniel.listenerdefinitions.IEvent;
+import me.shedaniel.listenerdefinitions.PacketAdder;
+import me.shedaniel.listeners.DrawContainerListener;
+import me.shedaniel.listeners.ResizeListener;
import me.shedaniel.network.CheatPacket;
import me.shedaniel.network.DeletePacket;
-import net.minecraft.network.EnumPacketDirection;
-import org.dimdev.rift.listener.PacketAdder;
+import me.shedaniel.plugin.VanillaPlugin;
+import net.fabricmc.api.ModInitializer;
+import net.minecraft.network.NetworkSide;
+
+import java.util.ArrayList;
+import java.util.LinkedList;
+import java.util.List;
/**
* Created by James on 7/27/2018.
*/
-public class Core implements PacketAdder {
+public class Core implements ModInitializer, PacketAdder {
@Override
public void registerHandshakingPackets(PacketRegistrationReceiver receiver) {
}
@Override
public void registerPlayPackets(PacketRegistrationReceiver receiver) {
- receiver.registerPacket(EnumPacketDirection.SERVERBOUND, CheatPacket.class);
- receiver.registerPacket(EnumPacketDirection.SERVERBOUND, DeletePacket.class);
+ receiver.registerPacket(NetworkSide.SERVER, CheatPacket.class);
+ receiver.registerPacket(NetworkSide.SERVER, DeletePacket.class);
}
@Override
@@ -29,5 +39,32 @@ public class Core implements PacketAdder {
}
+ private static List<IEvent> events = new LinkedList<>();
+
+ @Override
+ public void onInitialize() {
+ registerEvents();
+ }
+
+ private void registerEvents() {
+ registerEvent(new DrawContainerListener());
+ registerEvent(new ResizeListener());
+ registerEvent(new KeyBindManager());
+ registerEvent(new VanillaPlugin());
+ registerEvent(new ClientListener());
+ }
+
+ public static void registerEvent(IEvent event) {
+ events.add(event);
+ }
+
+ public static <T> List<T> getListeners(Class<T> listenerInterface) {
+ List<T> list = new ArrayList<>();
+ events.forEach(iEvent -> {
+ if (listenerInterface.isAssignableFrom(iEvent.getClass()))
+ list.add(listenerInterface.cast(iEvent));
+ });
+ return list;
+ }
}