From 73178b504e148860e6a9e63cc653a5f05c092092 Mon Sep 17 00:00:00 2001 From: EnZaXD <60033407+FlorianMichael@users.noreply.github.com> Date: Sat, 6 Apr 2024 09:29:57 +0200 Subject: [PATCH] Inline player on-ground movement handler (#3777) --- .../PlayerMovementMapper.java | 35 ------------------- .../packets/PlayerPackets.java | 16 ++++++--- 2 files changed, 11 insertions(+), 40 deletions(-) delete mode 100644 common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/PlayerMovementMapper.java diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/PlayerMovementMapper.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/PlayerMovementMapper.java deleted file mode 100644 index 7e8f8e36e..000000000 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/PlayerMovementMapper.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * This file is part of ViaVersion - https://github.com/ViaVersion/ViaVersion - * Copyright (C) 2016-2024 ViaVersion and contributors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.viaversion.viaversion.protocols.protocol1_9to1_8; - -import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; -import com.viaversion.viaversion.api.protocol.remapper.PacketHandler; -import com.viaversion.viaversion.api.type.Type; -import com.viaversion.viaversion.protocols.protocol1_9to1_8.storage.MovementTracker; - -public class PlayerMovementMapper implements PacketHandler { - @Override - public void handle(PacketWrapper wrapper) throws Exception { - MovementTracker tracker = wrapper.user().get(MovementTracker.class); - tracker.incrementIdlePacket(); - // If packet has the ground data - if (wrapper.is(Type.BOOLEAN, 0)) { - tracker.setGround(wrapper.get(Type.BOOLEAN, 0)); - } - } -} diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/packets/PlayerPackets.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/packets/PlayerPackets.java index 1a7061ed2..4263207a2 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/packets/PlayerPackets.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/packets/PlayerPackets.java @@ -22,11 +22,11 @@ import com.viaversion.viaversion.api.Via; import com.viaversion.viaversion.api.minecraft.ClientWorld; import com.viaversion.viaversion.api.minecraft.entities.EntityTypes1_10; import com.viaversion.viaversion.api.minecraft.item.Item; +import com.viaversion.viaversion.api.protocol.remapper.PacketHandler; import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers; import com.viaversion.viaversion.api.type.Type; import com.viaversion.viaversion.protocols.protocol1_8.ClientboundPackets1_8; import com.viaversion.viaversion.protocols.protocol1_9to1_8.ItemRewriter; -import com.viaversion.viaversion.protocols.protocol1_9to1_8.PlayerMovementMapper; import com.viaversion.viaversion.protocols.protocol1_9to1_8.Protocol1_9To1_8; import com.viaversion.viaversion.protocols.protocol1_9to1_8.ServerboundPackets1_9; import com.viaversion.viaversion.protocols.protocol1_9to1_8.chat.ChatRewriter; @@ -36,6 +36,7 @@ import com.viaversion.viaversion.protocols.protocol1_9to1_8.providers.Compressio import com.viaversion.viaversion.protocols.protocol1_9to1_8.providers.MainHandProvider; import com.viaversion.viaversion.protocols.protocol1_9to1_8.storage.ClientChunks; import com.viaversion.viaversion.protocols.protocol1_9to1_8.storage.EntityTracker1_9; +import com.viaversion.viaversion.protocols.protocol1_9to1_8.storage.MovementTracker; import java.util.logging.Level; public class PlayerPackets { @@ -451,6 +452,11 @@ public class PlayerPackets { } }); + final PacketHandler onGroundHandler = wrapper -> { + final MovementTracker tracker = wrapper.user().get(MovementTracker.class); + tracker.incrementIdlePacket(); + tracker.setGround(wrapper.get(Type.BOOLEAN, 0)); + }; protocol.registerServerbound(ServerboundPackets1_9.PLAYER_POSITION, new PacketHandlers() { @Override public void register() { @@ -458,7 +464,7 @@ public class PlayerPackets { map(Type.DOUBLE); // 1 - Y map(Type.DOUBLE); // 2 - Z map(Type.BOOLEAN); // 3 - Ground - handler(new PlayerMovementMapper()); + handler(onGroundHandler); } }); protocol.registerServerbound(ServerboundPackets1_9.PLAYER_POSITION_AND_ROTATION, new PacketHandlers() { @@ -470,7 +476,7 @@ public class PlayerPackets { map(Type.FLOAT); // 3 - Yaw map(Type.FLOAT); // 4 - Pitch map(Type.BOOLEAN); // 5 - Ground - handler(new PlayerMovementMapper()); + handler(onGroundHandler); } }); protocol.registerServerbound(ServerboundPackets1_9.PLAYER_ROTATION, new PacketHandlers() { @@ -479,14 +485,14 @@ public class PlayerPackets { map(Type.FLOAT); // 0 - Yaw map(Type.FLOAT); // 1 - Pitch map(Type.BOOLEAN); // 2 - Ground - handler(new PlayerMovementMapper()); + handler(onGroundHandler); } }); protocol.registerServerbound(ServerboundPackets1_9.PLAYER_MOVEMENT, new PacketHandlers() { @Override public void register() { map(Type.BOOLEAN); // 0 - Ground - handler(new PlayerMovementMapper()); + handler(onGroundHandler); } }); }