aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/lorenz/mod/mixins
diff options
context:
space:
mode:
authorLorenz <ESs95s3P5z8Pheb>2022-07-08 08:09:43 +0200
committerLorenz <ESs95s3P5z8Pheb>2022-07-08 08:09:43 +0200
commitcbc6b4928fea6c8afecd84ec0c96f2ac489e267e (patch)
tree2182554912c2321134d1075f37b1e3e54b28758c /src/main/java/at/lorenz/mod/mixins
parentcedeb7232dab102f58edbf01ccc2b22ddf5bfb19 (diff)
downloadSkyHanni-cbc6b4928fea6c8afecd84ec0c96f2ac489e267e.tar.gz
SkyHanni-cbc6b4928fea6c8afecd84ec0c96f2ac489e267e.tar.bz2
SkyHanni-cbc6b4928fea6c8afecd84ec0c96f2ac489e267e.zip
added DungeonHighlightClickedBlocks, changed chat manager from forge event to packet
Diffstat (limited to 'src/main/java/at/lorenz/mod/mixins')
-rw-r--r--src/main/java/at/lorenz/mod/mixins/MixinNetHandlerPlayClient.java34
-rw-r--r--src/main/java/at/lorenz/mod/mixins/MixinNetworkManager.java19
2 files changed, 53 insertions, 0 deletions
diff --git a/src/main/java/at/lorenz/mod/mixins/MixinNetHandlerPlayClient.java b/src/main/java/at/lorenz/mod/mixins/MixinNetHandlerPlayClient.java
new file mode 100644
index 000000000..9944a83ac
--- /dev/null
+++ b/src/main/java/at/lorenz/mod/mixins/MixinNetHandlerPlayClient.java
@@ -0,0 +1,34 @@
+package at.lorenz.mod.mixins;
+
+import at.lorenz.mod.mixinhooks.NetHandlerPlayClientHookKt;
+import net.minecraft.client.multiplayer.WorldClient;
+import net.minecraft.client.network.NetHandlerPlayClient;
+import net.minecraft.entity.Entity;
+import net.minecraft.network.Packet;
+import net.minecraft.network.play.INetHandlerPlayClient;
+import net.minecraft.network.play.server.S0FPacketSpawnMob;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.Shadow;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+@Mixin(value = NetHandlerPlayClient.class, priority = 1001)
+public abstract class MixinNetHandlerPlayClient implements INetHandlerPlayClient {
+ @Shadow
+ private WorldClient clientWorldController;
+
+ @Inject(method = "addToSendQueue", at = @At("HEAD"), cancellable = true)
+ private void onSendPacket(Packet<?> packet, CallbackInfo ci) {
+ NetHandlerPlayClientHookKt.onSendPacket(packet, ci);
+ }
+
+// @Inject(method = "handleSpawnMob", at = @At("TAIL"))
+// private void onHandleSpawnMobTail(S0FPacketSpawnMob packetIn, CallbackInfo ci) {
+// Entity entity = this.clientWorldController.getEntityByID(packetIn.getEntityID());
+// MasterMode7Features.INSTANCE.onMobSpawned(entity);
+// ((ExtensionEntityLivingBase) entity).getSkytilsHook().onNewDisplayName(
+// entity.getDataWatcher().getWatchableObjectString(2)
+// );
+// }
+}
diff --git a/src/main/java/at/lorenz/mod/mixins/MixinNetworkManager.java b/src/main/java/at/lorenz/mod/mixins/MixinNetworkManager.java
new file mode 100644
index 000000000..c2314201b
--- /dev/null
+++ b/src/main/java/at/lorenz/mod/mixins/MixinNetworkManager.java
@@ -0,0 +1,19 @@
+package at.lorenz.mod.mixins;
+
+import io.netty.channel.ChannelHandlerContext;
+import io.netty.channel.SimpleChannelInboundHandler;
+import net.minecraft.network.NetworkManager;
+import net.minecraft.network.Packet;
+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 at.lorenz.mod.mixinhooks.NetworkManagerHookKt;
+
+@Mixin(value = NetworkManager.class, priority = 1001)
+public abstract class MixinNetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
+ @Inject(method = "channelRead0", at = @At("HEAD"), cancellable = true)
+ private void onReceivePacket(ChannelHandlerContext context, Packet<?> packet, CallbackInfo ci) {
+ NetworkManagerHookKt.onReceivePacket(context, packet, ci);
+ }
+}