diff --git a/src/main/java/com/replaymod/recording/handler/RecordingEventHandler.java b/src/main/java/com/replaymod/recording/handler/RecordingEventHandler.java index 7219380a..210adc3a 100644 --- a/src/main/java/com/replaymod/recording/handler/RecordingEventHandler.java +++ b/src/main/java/com/replaymod/recording/handler/RecordingEventHandler.java @@ -99,17 +99,14 @@ public class RecordingEventHandler extends EventRegistrations { } //#endif - public void onPlayerJoin() { + public void spawnRecordingPlayer() { try { - packetListener.save(new PlayerSpawnS2CPacket(mc.player)); - } catch(Exception e1) { - e1.printStackTrace(); - } - } - - public void onPlayerRespawn() { - try { - packetListener.save(new PlayerSpawnS2CPacket(mc.player)); + ClientPlayerEntity player = mc.player; + assert player != null; + packetListener.save(new PlayerSpawnS2CPacket(player)); + //#if MC>=11500 + packetListener.save(new EntityTrackerUpdateS2CPacket(player.getEntityId(), player.getDataTracker(), true)); + //#endif lastX = lastY = lastZ = null; } catch(Exception e) { e.printStackTrace(); diff --git a/src/main/java/com/replaymod/recording/mixin/MixinNetHandlerPlayClient.java b/src/main/java/com/replaymod/recording/mixin/MixinNetHandlerPlayClient.java index 497a18ec..f739ce52 100644 --- a/src/main/java/com/replaymod/recording/mixin/MixinNetHandlerPlayClient.java +++ b/src/main/java/com/replaymod/recording/mixin/MixinNetHandlerPlayClient.java @@ -81,7 +81,7 @@ public abstract class MixinNetHandlerPlayClient { // Only add spawn packet for our own player and only if he isn't known yet if (data.getUuid().equals(mcStatic.player.getGameProfile().getId()) && !this.playerListEntries.containsKey(data.getUuid())) { - handler.onPlayerJoin(); + handler.spawnRecordingPlayer(); } } } catch (IOException e) { @@ -96,7 +96,7 @@ public abstract class MixinNetHandlerPlayClient { //$$ public void recordOwnJoin(S01PacketJoinGame packet, CallbackInfo ci) { //$$ RecordingEventHandler handler = getRecordingEventHandler(); //$$ if (handler != null) { - //$$ handler.onPlayerJoin(); + //$$ handler.spawnRecordingPlayer(); //$$ } //$$ } //#endif @@ -116,7 +116,7 @@ public abstract class MixinNetHandlerPlayClient { public void recordOwnRespawn(PlayerRespawnS2CPacket packet, CallbackInfo ci) { RecordingEventHandler handler = getRecordingEventHandler(); if (handler != null) { - handler.onPlayerRespawn(); + handler.spawnRecordingPlayer(); } } }