aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/re/jag/mcqtt/mixin/MinecraftServerMixin.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/re/jag/mcqtt/mixin/MinecraftServerMixin.java')
-rw-r--r--src/main/java/re/jag/mcqtt/mixin/MinecraftServerMixin.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/main/java/re/jag/mcqtt/mixin/MinecraftServerMixin.java b/src/main/java/re/jag/mcqtt/mixin/MinecraftServerMixin.java
new file mode 100644
index 0000000..2889592
--- /dev/null
+++ b/src/main/java/re/jag/mcqtt/mixin/MinecraftServerMixin.java
@@ -0,0 +1,27 @@
+package re.jag.mcqtt.mixin;
+
+import net.minecraft.server.MinecraftServer;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
+import re.jag.mcqtt.Mcqtt;
+
+import java.util.function.BooleanSupplier;
+import java.util.function.Function;
+
+@Mixin (MinecraftServer.class)
+public class MinecraftServerMixin {
+
+ @Inject(method = "tick", at = @At("RETURN"))
+ protected void onTick(BooleanSupplier shouldKeepTicking, CallbackInfo ci) {
+ Mcqtt.onTick();
+ }
+
+ @Inject(method = "startServer", at = @At("RETURN"))
+ private static void onStartServer(Function serverFactory, CallbackInfoReturnable<MinecraftServer> cir){
+ Mcqtt.onStart(cir.getReturnValue());
+ }
+}