[1.21.2] Support changes to the vehicle steer packet
Signed-off-by: Irmo van den Berge <irmo.vandenberge@ziggo.nl>
This commit is contained in:
1 parent
e084b31fc5
commit
271c579bbd
3 files changed
+104
-21
No files matched your search
+12
-8
@@ -20,23 +20,27 @@ public abstract class PacketPlayInSteerVehicleHandle extends PacketHandle {
|
||||
|
||||
/* ============================================================================== */
|
||||
|
||||
public abstract boolean isLeft();
|
||||
public abstract boolean isRight();
|
||||
public abstract boolean isForward();
|
||||
public abstract boolean isBackward();
|
||||
public abstract float getSideways();
|
||||
public abstract void setSideways(float value);
|
||||
public abstract float getForwards();
|
||||
public abstract void setForwards(float value);
|
||||
public abstract boolean isJump();
|
||||
public abstract void setJump(boolean value);
|
||||
public abstract boolean isUnmount();
|
||||
public abstract void setUnmount(boolean value);
|
||||
/**
|
||||
* Stores class members for <b>net.minecraft.network.protocol.game.PacketPlayInSteerVehicle</b>.
|
||||
* Methods, fields, and constructors can be used without using Handle Objects.
|
||||
*/
|
||||
public static final class PacketPlayInSteerVehicleClass extends Template.Class<PacketPlayInSteerVehicleHandle> {
|
||||
public final Template.Field.Float sideways = new Template.Field.Float();
|
||||
public final Template.Field.Float forwards = new Template.Field.Float();
|
||||
public final Template.Field.Boolean jump = new Template.Field.Boolean();
|
||||
public final Template.Field.Boolean unmount = new Template.Field.Boolean();
|
||||
public final Template.Method<Boolean> isLeft = new Template.Method<Boolean>();
|
||||
public final Template.Method<Boolean> isRight = new Template.Method<Boolean>();
|
||||
public final Template.Method<Boolean> isForward = new Template.Method<Boolean>();
|
||||
public final Template.Method<Boolean> isBackward = new Template.Method<Boolean>();
|
||||
public final Template.Method<Float> getSideways = new Template.Method<Float>();
|
||||
public final Template.Method<Float> getForwards = new Template.Method<Float>();
|
||||
public final Template.Method<Boolean> isJump = new Template.Method<Boolean>();
|
||||
public final Template.Method<Boolean> isUnmount = new Template.Method<Boolean>();
|
||||
|
||||
}
|
||||
|
||||
|
||||
+44
-4
@@ -500,10 +500,50 @@ public class NMSPacketClasses {
|
||||
|
||||
public static class NMSPacketPlayInSteerVehicle extends NMSPacket {
|
||||
|
||||
public final FieldAccessor<Float> sideways = PacketPlayInSteerVehicleHandle.T.sideways.toFieldAccessor();
|
||||
public final FieldAccessor<Float> forwards = PacketPlayInSteerVehicleHandle.T.forwards.toFieldAccessor();
|
||||
public final FieldAccessor<Boolean> jump = PacketPlayInSteerVehicleHandle.T.jump.toFieldAccessor();
|
||||
public final FieldAccessor<Boolean> unmount = PacketPlayInSteerVehicleHandle.T.unmount.toFieldAccessor();
|
||||
public final FieldAccessor<Float> sideways = new FieldAccessor<Float>() {
|
||||
@Override
|
||||
public Float get(Object instance) {
|
||||
return PacketPlayInSteerVehicleHandle.T.getSideways.invoke(instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean set(Object instance, Float value) {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
public final FieldAccessor<Float> forwards = new FieldAccessor<Float>() {
|
||||
@Override
|
||||
public Float get(Object instance) {
|
||||
return PacketPlayInSteerVehicleHandle.T.getForwards.invoke(instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean set(Object instance, Float value) {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
public final FieldAccessor<Boolean> jump = new FieldAccessor<Boolean>() {
|
||||
@Override
|
||||
public Boolean get(Object instance) {
|
||||
return PacketPlayInSteerVehicleHandle.T.isJump.invoke(instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean set(Object instance, Boolean value) {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
public final FieldAccessor<Boolean> unmount = new FieldAccessor<Boolean>() {
|
||||
@Override
|
||||
public Boolean get(Object instance) {
|
||||
return PacketPlayInSteerVehicleHandle.T.isUnmount.invoke(instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean set(Object instance, Boolean value) {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static class NMSPacketPlayInTabComplete extends NMSPacket {
|
||||
|
||||
+48
-9
@@ -1861,16 +1861,55 @@ class PacketPlayOutCustomSoundEffect extends Packet {
|
||||
}
|
||||
|
||||
class PacketPlayInSteerVehicle extends Packet {
|
||||
#if version >= 1.17
|
||||
private final float sideways:xxa;
|
||||
private final float forwards:zza;
|
||||
private final boolean jump:isJumping;
|
||||
private final boolean unmount:isShiftKeyDown;
|
||||
#if version >= 1.21.2
|
||||
public boolean isLeft() { return instance.input().left(); }
|
||||
public boolean isRight() { return instance.input().right(); }
|
||||
public boolean isForward() { return instance.input().forward(); }
|
||||
public boolean isBackward() { return instance.input().backward(); }
|
||||
|
||||
public float getSideways() {
|
||||
net.minecraft.world.entity.player.Input input = instance.input();
|
||||
if (input.left() != input.right()) {
|
||||
return input.right() ? 1.0f : -1.0f;
|
||||
} else {
|
||||
return 0.0f;
|
||||
}
|
||||
}
|
||||
|
||||
public float getForwards() {
|
||||
net.minecraft.world.entity.player.Input input = instance.input();
|
||||
if (input.forward() != input.backward()) {
|
||||
return input.forward() ? 1.0f : -1.0f;
|
||||
} else {
|
||||
return 0.0f;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isJump() { return instance.input().jump(); }
|
||||
public boolean isUnmount() { return instance.input().shift(); }
|
||||
|
||||
#else
|
||||
private float sideways:a;
|
||||
private float forwards:b;
|
||||
private boolean jump:c;
|
||||
private boolean unmount:d;
|
||||
#if version >= 1.17
|
||||
#require PacketPlayInSteerVehicle private final float sideways:xxa;
|
||||
#require PacketPlayInSteerVehicle private final float forwards:zza;
|
||||
#require PacketPlayInSteerVehicle private final boolean jump:isJumping;
|
||||
#require PacketPlayInSteerVehicle private final boolean unmount:isShiftKeyDown;
|
||||
#else
|
||||
#require PacketPlayInSteerVehicle private float sideways:a;
|
||||
#require PacketPlayInSteerVehicle private float forwards:b;
|
||||
#require PacketPlayInSteerVehicle private boolean jump:c;
|
||||
#require PacketPlayInSteerVehicle private boolean unmount:d;
|
||||
#endif
|
||||
|
||||
public boolean isLeft() { return instance#sideways < 0.0f; }
|
||||
public boolean isRight() { return instance#sideways > 0.0f; }
|
||||
public boolean isForward() { return instance#forwards > 0.0f; }
|
||||
public boolean isBackward() { return instance#forwards < 0.0f; }
|
||||
|
||||
public float getSideways() { return instance#sideways; }
|
||||
public float getForwards() { return instance#forwards; }
|
||||
public boolean isJump() { return instance#jump; }
|
||||
public boolean isUnmount() { return instance#unmount; }
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user