Skip to content

Commit 75aa6d1

Browse files
authored
Backport "Player moved wrongly" fix (#3879)
Backports @Faithcaio's "moved wrongly" fix for API-10 2c2cf41...e218bf0
1 parent ec81c44 commit 75aa6d1

File tree

5 files changed

+2
-26
lines changed

5 files changed

+2
-26
lines changed

src/main/java/org/spongepowered/common/bridge/server/network/ServerGamePacketListenerImplBridge.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ public interface ServerGamePacketListenerImplBridge {
3434

3535
@Nullable ResourcePack bridge$popAcceptedResourcePack();
3636

37-
void bridge$captureCurrentPlayerPosition();
38-
3937
void bridge$setLastMoveLocation(ServerLocation location);
4038

4139
long bridge$getLastTryBlockPacketTimeStamp();

src/main/java/org/spongepowered/common/event/SpongeCommonEventFactory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -401,9 +401,9 @@ public static void callNaturalMoveEntityEvent(final net.minecraft.world.entity.E
401401
originalToPosition);
402402

403403
if (finalPosition == null) {
404-
entity.setPos(entity.xOld, entity.yOld, entity.zOld);
404+
entity.moveTo(entity.xOld, entity.yOld, entity.zOld);
405405
} else if (!finalPosition.equals(originalToPosition)) {
406-
entity.setPos(finalPosition.x(), finalPosition.y(), finalPosition.z());
406+
entity.moveTo(finalPosition.x(), finalPosition.y(), finalPosition.z());
407407
}
408408
}
409409
}

src/mixins/java/org/spongepowered/common/mixin/core/server/level/ServerPlayerMixin.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,6 @@
134134
import org.spongepowered.common.bridge.permissions.SubjectBridge;
135135
import org.spongepowered.common.bridge.server.ServerScoreboardBridge;
136136
import org.spongepowered.common.bridge.server.level.ServerPlayerBridge;
137-
import org.spongepowered.common.bridge.server.network.ServerGamePacketListenerImplBridge;
138137
import org.spongepowered.common.bridge.world.BossEventBridge;
139138
import org.spongepowered.common.bridge.world.entity.player.PlayerBridge;
140139
import org.spongepowered.common.data.DataUtil;
@@ -881,15 +880,6 @@ public void sendMessage(final net.minecraft.network.chat.Component p_241151_1_,
881880
}
882881
}
883882

884-
@Override
885-
protected void impl$capturePlayerPosition(
886-
final double x, final double y, final double z, final CallbackInfo ci
887-
) {
888-
if (this.connection != null) {
889-
((ServerGamePacketListenerImplBridge) this.connection).bridge$captureCurrentPlayerPosition();
890-
}
891-
}
892-
893883
@Override
894884
protected void impl$updateHealthForUseFinish(final CallbackInfo ci) {
895885
this.bridge$refreshScaledHealth();

src/mixins/java/org/spongepowered/common/mixin/core/server/network/ServerGamePacketListenerImplMixin.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,6 @@ public abstract class ServerGamePacketListenerImplMixin implements ServerGamePac
153153

154154
@Shadow public abstract void shadow$teleport(double x, double y, double z, float yaw, float pitch, Set<ClientboundPlayerPositionPacket.RelativeArgument> relativeArguments);
155155
@Shadow protected abstract void shadow$filterTextPacket(List<String> p_244537_1_, Consumer<List<String>> p_244537_2_);
156-
@Shadow public abstract void shadow$resetPosition();
157156
// @formatter:on
158157

159158
private int impl$ignorePackets;
@@ -551,11 +550,6 @@ public abstract class ServerGamePacketListenerImplMixin implements ServerGamePac
551550
return 0;
552551
}
553552

554-
@Override
555-
public void bridge$captureCurrentPlayerPosition() {
556-
this.shadow$resetPosition();
557-
}
558-
559553
@Redirect(method = "handleChat(Ljava/lang/String;)V",
560554
at = @At(
561555
value = "INVOKE",

src/mixins/java/org/spongepowered/common/mixin/core/world/entity/EntityMixin.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -927,12 +927,6 @@ public void stopRiding() {
927927

928928
}
929929

930-
931-
@Inject(method = "setPos", at = @At("HEAD"))
932-
protected void impl$capturePlayerPosition(final double x, final double y, final double z, final CallbackInfo ci) {
933-
// Overridden in ServerPlayer
934-
}
935-
936930
@Redirect(method = "move", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;collide(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;"))
937931
private Vec3 impl$onMoveCollide(final Entity entity, final Vec3 originalMove) {
938932
final Vec3 afterCollide = this.shadow$collide(originalMove);

0 commit comments

Comments
 (0)