From af11ef66770e552a3ee52f162c4c47d931e76b90 Mon Sep 17 00:00:00 2001 From: UrAvgCode Date: Sun, 16 Nov 2025 18:32:59 +0100 Subject: [PATCH] fix: Player#setPlayerTime sends time update packet to client --- .../java/org/bukkit/craftbukkit/entity/CraftPlayer.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/paper-server/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/paper-server/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java index 94307a5ffce0..7c9f48d22b93 100644 --- a/paper-server/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/paper-server/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1532,6 +1532,15 @@ public void setStatistic(Statistic statistic, EntityType entityType, int newValu public void setPlayerTime(long time, boolean relative) { this.getHandle().timeOffset = time; this.getHandle().relativeTime = relative; + + if (this.getHandle().connection == null) { + return; + } + + final long gameTime = this.getHandle().level().getGameTime(); + final long dayTime = this.getHandle().getPlayerTime(); + final boolean tickDayTime = this.getHandle().relativeTime && this.getHandle().level().getGameRules().getBoolean(net.minecraft.world.level.GameRules.RULE_DAYLIGHT); + this.getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundSetTimePacket(gameTime, dayTime, tickDayTime)); } @Override