From f72aa659db5491d0b33b7c9593239b08c1377bc6 Mon Sep 17 00:00:00 2001 From: RTAkland Date: Thu, 2 May 2024 15:47:47 +0800 Subject: [PATCH] update: update mixin impl --- .../viewdimension/mixin/ServerPlayNetworkMixin.java | 12 +++++++++--- .../rtast/viewdimension/mixin/ServerPlayerMixin.java | 10 +++++++++- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayNetworkMixin.java b/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayNetworkMixin.java index 1a07024..8e7b24a 100644 --- a/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayNetworkMixin.java +++ b/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayNetworkMixin.java @@ -17,10 +17,12 @@ package cn.rtast.viewdimension.mixin; +import net.minecraft.network.ClientConnection; +import net.minecraft.network.listener.ServerPlayPacketListener; +import net.minecraft.network.listener.TickablePacketListener; import net.minecraft.network.packet.s2c.play.PlayerListS2CPacket; import net.minecraft.server.MinecraftServer; -import net.minecraft.server.network.ServerPlayNetworkHandler; -import net.minecraft.server.network.ServerPlayerEntity; +import net.minecraft.server.network.*; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; @@ -28,7 +30,11 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @Mixin(ServerPlayNetworkHandler.class) -public abstract class ServerPlayNetworkMixin { +public abstract class ServerPlayNetworkMixin extends ServerCommonNetworkHandler implements ServerPlayPacketListener, PlayerAssociatedNetworkHandler, TickablePacketListener { + + public ServerPlayNetworkMixin(MinecraftServer server, ClientConnection connection, ConnectedClientData clientData) { + super(server, connection, clientData); + } @Shadow public abstract ServerPlayerEntity getPlayer(); diff --git a/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayerMixin.java b/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayerMixin.java index ba5eacc..c7c8504 100644 --- a/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayerMixin.java +++ b/src/main/java/cn/rtast/viewdimension/mixin/ServerPlayerMixin.java @@ -18,8 +18,12 @@ package cn.rtast.viewdimension.mixin; import cn.rtast.viewdimension.ViewDimension; +import com.mojang.authlib.GameProfile; +import net.minecraft.entity.player.PlayerEntity; import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.text.Text; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Unique; import org.spongepowered.asm.mixin.injection.At; @@ -27,11 +31,15 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; @Mixin(ServerPlayerEntity.class) -public class ServerPlayerMixin { +public abstract class ServerPlayerMixin extends PlayerEntity { @Unique public ServerPlayerEntity player = (ServerPlayerEntity) (Object) this; + public ServerPlayerMixin(World world, BlockPos pos, float yaw, GameProfile gameProfile) { + super(world, pos, yaw, gameProfile); + } + @Inject(method = "getPlayerListName", at = @At("RETURN"), cancellable = true) public void replacePlayerName(CallbackInfoReturnable cir) {