forked from SteamWar/SteamWar
Fix entity orientation
This commit is contained in:
@@ -67,19 +67,19 @@ public class BountifulWrapper9 implements BountifulWrapper.IBountifulWrapper {
|
||||
Reflection.FieldAccessor<Double> posZ = Reflection.getField(packetClass, double.class, fieldOffset+2);
|
||||
boolean isByteClass = packetClass.getSimpleName().contains("PacketPlayOutEntityTeleport") || packetClass.getSimpleName().contains("PacketPlayOutNamedEntitySpawn");
|
||||
Class<?> pitchYawType = isByteClass ? byte.class : int.class;
|
||||
Reflection.FieldAccessor<?> lookPitch = Reflection.getField(packetClass, pitchYawType, isByteClass ? 0 : 1);
|
||||
Reflection.FieldAccessor<?> lookYaw = Reflection.getField(packetClass, pitchYawType, isByteClass ? 1 : 2);
|
||||
Reflection.FieldAccessor<?> lookYaw = Reflection.getField(packetClass, pitchYawType, isByteClass ? 0 : 1);
|
||||
Reflection.FieldAccessor<?> lookPitch = Reflection.getField(packetClass, pitchYawType, isByteClass ? 1 : 2);
|
||||
|
||||
return (packet, x, y, z, pitch, yaw) -> {
|
||||
posX.set(packet, x);
|
||||
posY.set(packet, y);
|
||||
posZ.set(packet, z);
|
||||
if (isByteClass) {
|
||||
lookPitch.set(packet, (byte) (pitch*256/360));
|
||||
lookYaw.set(packet, (byte) (yaw*256/360));
|
||||
lookPitch.set(packet, (byte) (pitch*256/360));
|
||||
} else {
|
||||
lookPitch.set(packet, (int) (pitch*256/360));
|
||||
lookYaw.set(packet, (int) (yaw*256/360));
|
||||
lookPitch.set(packet, (int) (pitch*256/360));
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -90,15 +90,15 @@ public class BountifulWrapper9 implements BountifulWrapper.IBountifulWrapper {
|
||||
Reflection.FieldAccessor<?> moveX = Reflection.getField(packetClass, "b", type);
|
||||
Reflection.FieldAccessor<?> moveY = Reflection.getField(packetClass, "c", type);
|
||||
Reflection.FieldAccessor<?> moveZ = Reflection.getField(packetClass, "d", type);
|
||||
Reflection.FieldAccessor<Byte> movePitch = Reflection.getField(packetClass, "e", byte.class);
|
||||
Reflection.FieldAccessor<Byte> moveYaw = Reflection.getField(packetClass, "f", byte.class);
|
||||
Reflection.FieldAccessor<Byte> moveYaw = Reflection.getField(packetClass, "e", byte.class);
|
||||
Reflection.FieldAccessor<Byte> movePitch = Reflection.getField(packetClass, "f", byte.class);
|
||||
|
||||
return (packet, x, y, z, pitch, yaw) -> {
|
||||
moveX.set(packet, (short)(x*4096));
|
||||
moveY.set(packet, (short)(y*4096));
|
||||
moveZ.set(packet, (short)(z*4096));
|
||||
movePitch.set(packet, (byte)(pitch*256/360));
|
||||
moveYaw.set(packet, (byte)(yaw*256/360));
|
||||
movePitch.set(packet, (byte)(pitch*256/360));
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user