diff options
| author | Lorenz <ESs95s3P5z8Pheb> | 2022-07-08 08:09:43 +0200 |
|---|---|---|
| committer | Lorenz <ESs95s3P5z8Pheb> | 2022-07-08 08:09:43 +0200 |
| commit | cbc6b4928fea6c8afecd84ec0c96f2ac489e267e (patch) | |
| tree | 2182554912c2321134d1075f37b1e3e54b28758c /src/main/java/at/lorenz/mod/mixins | |
| parent | cedeb7232dab102f58edbf01ccc2b22ddf5bfb19 (diff) | |
| download | SkyHanni-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.java | 34 | ||||
| -rw-r--r-- | src/main/java/at/lorenz/mod/mixins/MixinNetworkManager.java | 19 |
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); + } +} |
