aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/lorenz/mod/mixins/MixinNetHandlerPlayClient.java
blob: 383fc114e2f57aadd8db0f76c66524ea6578b8a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
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)
    //        );
    //    }
}