ApplyKnockback class

Пакет: com.hypixel.hytale.protocol.packets.entities

Файл: com/hypixel/hytale/protocol/packets/entities/ApplyKnockback.java

implements: Packet, ToClientPacket

Поля (7)

МодификаторыТипИмя
final int PACKET_ID
ApplyKnockback var1
long var2
byte var2
ApplyKnockback var3
byte var3
var3

Методы (27)

МодификаторыВозвратСигнатура
public ApplyKnockback cloneApplyKnockback clone()
static ChangeVelocityType getChangeTypeChangeVelocityType getChangeType(MemorySegment var0)
static ChangeVelocityType getChangeTypeChangeVelocityType getChangeType(MemorySegment var0, int var1)
abstract return getChangeTypereturn getChangeType(var0, 0)
abstract return getHitPositionreturn getHitPosition(var0, 0)
static float getXfloat getX(MemorySegment var0)
static float getXfloat getX(MemorySegment var0, int var1)
abstract return getXreturn getX(var0, 0)
static float getYfloat getY(MemorySegment var0)
static float getYfloat getY(MemorySegment var0, int var1)
abstract return getYreturn getY(var0, 0)
static float getZfloat getZ(MemorySegment var0)
static float getZfloat getZ(MemorySegment var0, int var1)
abstract return getZreturn getZ(var0, 0)
static boolean hasHitPositionboolean hasHitPosition(MemorySegment var0, int var1)
if if(var1 < 0)
if if(var2 != null)
if if(this.hitPosition != null)
if if(this.hitPosition != null)
if if(this == var1)
static void requireBoundsvoid requireBounds(MemorySegment var0, int var1)
abstract requireBounds requireBounds(var0, var1)
static ApplyKnockback toObjectApplyKnockback toObject(MemorySegment var0)
static ApplyKnockback toObjectApplyKnockback toObject(MemorySegment var0, int var1)
static ApplyKnockback toObjectApplyKnockback toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2)
abstract return toObjectreturn toObject(var0, 0, null)
abstract return toObjectreturn toObject(var0, var1, null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.protocol.packets.entities;

class="kw">import com.hypixel.hytale.protocol.ChangeVelocityType;
class="kw">import com.hypixel.hytale.protocol.NetworkChannel;
class="kw">import com.hypixel.hytale.protocol.Packet;
class="kw">import com.hypixel.hytale.protocol.Position;
class="kw">import com.hypixel.hytale.protocol.ToClientPacket;
class="kw">import com.hypixel.hytale.protocol.io.PacketIO;
class="kw">import com.hypixel.hytale.protocol.io.ProtocolException;
class="kw">import com.hypixel.hytale.protocol.io.ReadCursor;
class="kw">import java.lang.foreign.MemorySegment;
class="kw">import java.util.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class ApplyKnockback class="kw">implements Packet, ToClientPacket {
   class="kw">public class="kw">static class="kw">final int PACKET_ID = 164;
   class="kw">public class="kw">static class="kw">final boolean IS_COMPRESSED = false;
   class="kw">public class="kw">static class="kw">final int NULLABLE_BIT_FIELD_SIZE = 1;
   class="kw">public class="kw">static class="kw">final int FIXED_BLOCK_SIZE = 38;
   class="kw">public class="kw">static class="kw">final int VARIABLE_FIELD_COUNT = 0;
   class="kw">public class="kw">static class="kw">final int VARIABLE_BLOCK_START = 38;
   class="kw">public class="kw">static class="kw">final int MAX_SIZE = 38;
   @Nullable
   class="kw">public Position hitPosition;
   class="kw">public float x;
   class="kw">public float y;
   class="kw">public float z;
   @Nonnull
   class="kw">public ChangeVelocityType changeType = ChangeVelocityType.Add;

   @Override
   class="kw">public int getId() {
      class="kw">return 164;
   }

   @Override
   class="kw">public NetworkChannel getChannel() {
      class="kw">return NetworkChannel.Default;
   }

   class="kw">public ApplyKnockback() {
   }

   class="kw">public ApplyKnockback(@Nullable Position var1, float var2, float var3, float var4, @Nonnull ChangeVelocityType var5) {
      this.hitPosition = var1;
      this.x = var2;
      this.y = var3;
      this.z = var4;
      this.changeType = var5;
   }

   class="kw">public ApplyKnockback(@Nonnull ApplyKnockback var1) {
      this.hitPosition = var1.hitPosition;
      this.x = var1.x;
      this.y = var1.y;
      this.z = var1.z;
      this.changeType = var1.changeType;
   }

   class="kw">public class="kw">static void requireBounds(MemorySegment var0, int var1) {
      if (var1 < 0) {
         throw ProtocolException.invalidOffset("ApplyKnockback", var1, (int)var0.byteSize());
      }

      long var2 = var1 + 38L;
      if (var2 > var0.byteSize()) {
         throw ProtocolException.bufferTooSmall("ApplyKnockback", (int)Math.min(var2, 2147483647L), (int)var0.byteSize());
      }
   }

   @Nullable
   class="kw">public class="kw">static Position getHitPosition(MemorySegment var0) {
      class="kw">return getHitPosition(var0, 0);
   }

   @Nullable
   class="kw">public class="kw">static Position getHitPosition(MemorySegment var0, int var1) {
      class="kw">return hasHitPosition(var0, var1) ? Position.toObject(var0, var1 + 1) : null;
   }

   class="kw">public class="kw">static float getX(MemorySegment var0) {
      class="kw">return getX(var0, 0);
   }

   class="kw">public class="kw">static float getX(MemorySegment var0, int var1) {
      class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 25), "X");
   }

   class="kw">public class="kw">static float getY(MemorySegment var0) {
      class="kw">return getY(var0, 0);
   }

   class="kw">public class="kw">static float getY(MemorySegment var0, int var1) {
      class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 29), "Y");
   }

   class="kw">public class="kw">static float getZ(MemorySegment var0) {
      class="kw">return getZ(var0, 0);
   }

   class="kw">public class="kw">static float getZ(MemorySegment var0, int var1) {
      class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 33), "Z");
   }

   class="kw">public class="kw">static ChangeVelocityType getChangeType(MemorySegment var0) {
      class="kw">return getChangeType(var0, 0);
   }

   class="kw">public class="kw">static ChangeVelocityType getChangeType(MemorySegment var0, int var1) {
      class="kw">return ChangeVelocityType.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 37));
   }

   class="kw">public class="kw">static boolean hasHitPosition(MemorySegment var0, int var1) {
      byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
      class="kw">return (var2 & 1) != 0;
   }

   class="kw">public class="kw">static ApplyKnockback toObject(MemorySegment var0) {
      class="kw">return toObject(var0, 0, null);
   }

   class="kw">public class="kw">static ApplyKnockback toObject(MemorySegment var0, int var1) {
      class="kw">return toObject(var0, var1, null);
   }

   class="kw">public class="kw">static ApplyKnockback toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) {
      requireBounds(var0, var1);
      ApplyKnockback var3 = new ApplyKnockback(
         hasHitPosition(var0, var1) ? Position.toObject(var0, var1 + 1) : null,
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 25), "X"),
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 29), "Y"),
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 33), "Z"),
         ChangeVelocityType.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 37))
      );
      if (var2 != null) {
         var2.position = var1 + 38;
      }

      class="kw">return var3;
   }

   @Override
   class="kw">public int serialize(@Nonnull MemorySegment var1, int var2) {
      byte var3 = 0;
      if (this.hitPosition != null) {
         var3 = (byte)(var3 | 1);
      }

      var1.set(PacketIO.PROTO_BYTE, var2 + 0, var3);
      if (this.hitPosition != null) {
         this.hitPosition.serialize(var1, var2 + 1);
      } else {
         var1.asSlice(var2 + 1, 24L).fill((byte)0);
      }

      PacketIO.requireFinite(this.x, "X");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 25, this.x);
      PacketIO.requireFinite(this.y, "Y");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 29, this.y);
      PacketIO.requireFinite(this.z, "Z");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 33, this.z);
      var1.set(PacketIO.PROTO_BYTE, var2 + 37, (byte)this.changeType.getValue());
      class="kw">return 38;
   }

   @Override
   class="kw">public int computeSize() {
      class="kw">return 38;
   }

   class="kw">public ApplyKnockback clone() {
      ApplyKnockback var1 = new ApplyKnockback();
      var1.hitPosition = this.hitPosition != null ? this.hitPosition.clone() : null;
      var1.x = this.x;
      var1.y = this.y;
      var1.z = this.z;
      var1.changeType = this.changeType;
      class="kw">return var1;
   }

   @Override
   class="kw">public boolean equals(Object var1) {
      if (this == var1) {
         class="kw">return true;
      } else {
         class="kw">return !(var1 class="kw">instanceof ApplyKnockback var2)
            ? false
            : Objects.equals(this.hitPosition, var2.hitPosition)
               && this.x == var2.x
               && this.y == var2.y
               && this.z == var2.z
               && Objects.equals(this.changeType, var2.changeType);
      }
   }

   @Override
   class="kw">public int hashCode() {
      class="kw">return Objects.hash(this.hitPosition, this.x, this.y, this.z, this.changeType);
   }
}