EntityUIComponent class

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

Файл: com/hypixel/hytale/protocol/EntityUIComponent.java

Поля (31)

МодификаторыТипИмя
final int NULLABLE_BIT_FIELD_SIZE
int var1
EntityUIComponent var1
int var1
var1
var1
var1
var1
var1
var1
var1
var1
var1
var1
int var10
EntityUIComponent var14
long var2
int var2
long var3
int var3
int var3
int var4
var4
int var4
int var5
CombatTextEntityUIComponentAnimationEvent[] var5
int var6
int var6
CombatTextEntityUIComponentAnimationEvent[] var7
long var7
int var9

Методы (54)

МодификаторыВозвратСигнатура
public EntityUIComponent cloneEntityUIComponent clone()
public int computeSizeint computeSize()
for for(int var8 = 0; var8 < var5; var8++)
for for(int var11 = 0; var11 < var9; var11++)
for for(int var5 = 0; var5 < this.combatTextAnimationEvents.length; var5++)
static CombatTextEntityUIComponentAnimationEvent[] getCombatTextAnimationEventsCombatTextEntityUIComponentAnimationEvent[] getCombatTextAnimationEvents(MemorySegment var0)
static CombatTextEntityUIComponentAnimationEvent[] getCombatTextAnimationEventsCombatTextEntityUIComponentAnimationEvent[] getCombatTextAnimationEvents(MemorySegment var0, int var1)
abstract return getCombatTextAnimationEventsreturn getCombatTextAnimationEvents(var0, 0)
static Color getCombatTextColorColor getCombatTextColor(MemorySegment var0)
static Color getCombatTextColorColor getCombatTextColor(MemorySegment var0, int var1)
abstract return getCombatTextColorreturn getCombatTextColor(var0, 0)
static float getCombatTextDurationfloat getCombatTextDuration(MemorySegment var0)
static float getCombatTextDurationfloat getCombatTextDuration(MemorySegment var0, int var1)
abstract return getCombatTextDurationreturn getCombatTextDuration(var0, 0)
static float getCombatTextFontSizefloat getCombatTextFontSize(MemorySegment var0)
static float getCombatTextFontSizefloat getCombatTextFontSize(MemorySegment var0, int var1)
abstract return getCombatTextFontSizereturn getCombatTextFontSize(var0, 0)
static float getCombatTextHitAngleModifierStrengthfloat getCombatTextHitAngleModifierStrength(MemorySegment var0)
static float getCombatTextHitAngleModifierStrengthfloat getCombatTextHitAngleModifierStrength(MemorySegment var0, int var1)
abstract return getCombatTextHitAngleModifierStrengthreturn getCombatTextHitAngleModifierStrength(var0, 0)
static RangeVector2f getCombatTextRandomPositionOffsetRangeRangeVector2f getCombatTextRandomPositionOffsetRange(MemorySegment var0)
static RangeVector2f getCombatTextRandomPositionOffsetRangeRangeVector2f getCombatTextRandomPositionOffsetRange(MemorySegment var0, int var1)
abstract return getCombatTextRandomPositionOffsetRangereturn getCombatTextRandomPositionOffsetRange(var0, 0)
static float getCombatTextViewportMarginfloat getCombatTextViewportMargin(MemorySegment var0)
static float getCombatTextViewportMarginfloat getCombatTextViewportMargin(MemorySegment var0, int var1)
abstract return getCombatTextViewportMarginreturn getCombatTextViewportMargin(var0, 0)
static int getEntityStatIndexint getEntityStatIndex(MemorySegment var0)
static int getEntityStatIndexint getEntityStatIndex(MemorySegment var0, int var1)
abstract return getEntityStatIndexreturn getEntityStatIndex(var0, 0)
static Vector2fc getHitboxOffsetVector2fc getHitboxOffset(MemorySegment var0)
static Vector2fc getHitboxOffsetVector2fc getHitboxOffset(MemorySegment var0, int var1)
abstract return getHitboxOffsetreturn getHitboxOffset(var0, 0)
static EntityUIType getTypeEntityUIType getType(MemorySegment var0)
static EntityUIType getTypeEntityUIType getType(MemorySegment var0, int var1)
abstract return getTypereturn getType(var0, 0)
static boolean getUnknownboolean getUnknown(MemorySegment var0)
static boolean getUnknownboolean getUnknown(MemorySegment var0, int var1)
abstract return getUnknownreturn getUnknown(var0, 0)
if if(var1 < 0)
if if(var3 == -1L)
if if(var5 > 4096000)
if if(var7 == -1L)
if if(var9 > 4096000)
if if(var2 != null)
if if(this.combatTextAnimationEvents.length > 4096000)
if if(this == var1)
static void requireBoundsvoid requireBounds(MemorySegment var0, int var1)
abstract requireBounds requireBounds(var0, var1)
public int serializeint serialize(@Nonnull MemorySegment var1, int var2)
static EntityUIComponent toObjectEntityUIComponent toObject(MemorySegment var0)
static EntityUIComponent toObjectEntityUIComponent toObject(MemorySegment var0, int var1)
static EntityUIComponent toObjectEntityUIComponent 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;

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 com.hypixel.hytale.protocol.io.VarInt;
class="kw">import java.lang.foreign.MemorySegment;
class="kw">import java.util.Arrays;
class="kw">import java.util.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">import org.joml.Vector2fc;

class="kw">public class EntityUIComponent {
   class="kw">public class="kw">static class="kw">final int NULLABLE_BIT_FIELD_SIZE = 0;
   class="kw">public class="kw">static class="kw">final int FIXED_BLOCK_SIZE = 50;
   class="kw">public class="kw">static class="kw">final int VARIABLE_FIELD_COUNT = 1;
   class="kw">public class="kw">static class="kw">final int VARIABLE_BLOCK_START = 50;
   class="kw">public class="kw">static class="kw">final int MAX_SIZE = 135168055;
   @Nonnull
   class="kw">public EntityUIType type = EntityUIType.EntityStat;
   @Nonnull
   class="kw">public Vector2fc hitboxOffset = PacketIO.ZERO_VECTOR2;
   class="kw">public boolean unknown;
   class="kw">public int entityStatIndex;
   @Nonnull
   class="kw">public RangeVector2f combatTextRandomPositionOffsetRange = new RangeVector2f();
   class="kw">public float combatTextViewportMargin;
   class="kw">public float combatTextDuration;
   class="kw">public float combatTextHitAngleModifierStrength;
   class="kw">public float combatTextFontSize;
   @Nonnull
   class="kw">public Color combatTextColor = new Color();
   @Nonnull
   class="kw">public CombatTextEntityUIComponentAnimationEvent[] combatTextAnimationEvents = new CombatTextEntityUIComponentAnimationEvent[0];

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

   class="kw">public EntityUIComponent(
      @Nonnull EntityUIType var1,
      @Nonnull Vector2fc var2,
      boolean var3,
      int var4,
      @Nonnull RangeVector2f var5,
      float var6,
      float var7,
      float var8,
      float var9,
      @Nonnull Color var10,
      @Nonnull CombatTextEntityUIComponentAnimationEvent[] var11
   ) {
      this.type = var1;
      this.hitboxOffset = var2;
      this.unknown = var3;
      this.entityStatIndex = var4;
      this.combatTextRandomPositionOffsetRange = var5;
      this.combatTextViewportMargin = var6;
      this.combatTextDuration = var7;
      this.combatTextHitAngleModifierStrength = var8;
      this.combatTextFontSize = var9;
      this.combatTextColor = var10;
      this.combatTextAnimationEvents = var11;
   }

   class="kw">public EntityUIComponent(@Nonnull EntityUIComponent var1) {
      this.type = var1.type;
      this.hitboxOffset = var1.hitboxOffset;
      this.unknown = var1.unknown;
      this.entityStatIndex = var1.entityStatIndex;
      this.combatTextRandomPositionOffsetRange = var1.combatTextRandomPositionOffsetRange;
      this.combatTextViewportMargin = var1.combatTextViewportMargin;
      this.combatTextDuration = var1.combatTextDuration;
      this.combatTextHitAngleModifierStrength = var1.combatTextHitAngleModifierStrength;
      this.combatTextFontSize = var1.combatTextFontSize;
      this.combatTextColor = var1.combatTextColor;
      this.combatTextAnimationEvents = var1.combatTextAnimationEvents;
   }

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

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

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

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

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

   class="kw">public class="kw">static Vector2fc getHitboxOffset(MemorySegment var0, int var1) {
      class="kw">return PacketIO.requireFinite(PacketIO.readVector2f(var0, var1 + 1), "HitboxOffset");
   }

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

   class="kw">public class="kw">static boolean getUnknown(MemorySegment var0, int var1) {
      class="kw">return var0.get(PacketIO.PROTO_BOOL, var1 + 9);
   }

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

   class="kw">public class="kw">static int getEntityStatIndex(MemorySegment var0, int var1) {
      class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 10);
   }

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

   class="kw">public class="kw">static RangeVector2f getCombatTextRandomPositionOffsetRange(MemorySegment var0, int var1) {
      class="kw">return RangeVector2f.toObject(var0, var1 + 14);
   }

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

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

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

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

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

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

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

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

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

   class="kw">public class="kw">static Color getCombatTextColor(MemorySegment var0, int var1) {
      class="kw">return Color.toObject(var0, var1 + 47);
   }

   class="kw">public class="kw">static CombatTextEntityUIComponentAnimationEvent[] getCombatTextAnimationEvents(MemorySegment var0) {
      class="kw">return getCombatTextAnimationEvents(var0, 0);
   }

   class="kw">public class="kw">static CombatTextEntityUIComponentAnimationEvent[] getCombatTextAnimationEvents(MemorySegment var0, int var1) {
      int var2 = var1 + 50;
      long var3 = VarInt.getWithLength(var0, var2);
      if (var3 == -1L) {
         throw ProtocolException.invalidVarInt("CombatTextAnimationEvents");
      }

      int var5 = (int)var3;
      if (var5 > 4096000) {
         throw ProtocolException.arrayTooLong("CombatTextAnimationEvents", var5, 4096000);
      }

      int var6 = (int)(var3 >>> 32);
      if (var2 + var6 + var5 * 33L > var0.byteSize()) {
         throw ProtocolException.bufferTooSmall("CombatTextAnimationEvents", (int)Math.min(var2 + var6 + var5 * 33L, 2147483647L), (int)var0.byteSize());
      }

      var2 += var6;
      CombatTextEntityUIComponentAnimationEvent[] var7 = new CombatTextEntityUIComponentAnimationEvent[var5];

      for (int var8 = 0; var8 < var5; var8++) {
         var7[var8] = CombatTextEntityUIComponentAnimationEvent.toObject(var0, var2 + var8 * 33);
      }

      class="kw">return var7;
   }

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

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

   class="kw">public class="kw">static EntityUIComponent toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) {
      requireBounds(var0, var1);
      int var3 = var1 + 50;
      int var4 = 0;
      int var6 = var3 + var4;
      long var7 = VarInt.getWithLength(var0, var6);
      if (var7 == -1L) {
         throw ProtocolException.invalidVarInt("CombatTextAnimationEvents");
      }

      int var9 = (int)var7;
      if (var9 > 4096000) {
         throw ProtocolException.arrayTooLong("CombatTextAnimationEvents", var9, 4096000);
      }

      int var10 = (int)(var7 >>> 32);
      if (var6 + var10 + var9 * 33L > var0.byteSize()) {
         throw ProtocolException.bufferTooSmall("CombatTextAnimationEvents", (int)Math.min(var6 + var10 + var9 * 33L, 2147483647L), (int)var0.byteSize());
      }

      var6 += var10;
      CombatTextEntityUIComponentAnimationEvent[] var5 = new CombatTextEntityUIComponentAnimationEvent[var9];

      for (int var11 = 0; var11 < var9; var11++) {
         var5[var11] = CombatTextEntityUIComponentAnimationEvent.toObject(var0, var6 + var11 * 33);
      }

      var4 = var6 + var9 * 33 - var3;
      EntityUIComponent var14 = new EntityUIComponent(
         EntityUIType.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 0)),
         PacketIO.requireFinite(PacketIO.readVector2f(var0, var1 + 1), "HitboxOffset"),
         var0.get(PacketIO.PROTO_BOOL, var1 + 9),
         var0.get(PacketIO.PROTO_INT, var1 + 10),
         RangeVector2f.toObject(var0, var1 + 14),
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 31), "CombatTextViewportMargin"),
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 35), "CombatTextDuration"),
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 39), "CombatTextHitAngleModifierStrength"),
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 43), "CombatTextFontSize"),
         Color.toObject(var0, var1 + 47),
         var5
      );
      if (var2 != null) {
         var2.position = var3 + var4;
      }

      class="kw">return var14;
   }

   class="kw">public int serialize(@Nonnull MemorySegment var1, int var2) {
      var1.set(PacketIO.PROTO_BYTE, var2 + 0, (byte)this.type.getValue());
      PacketIO.requireFinite(this.hitboxOffset, "HitboxOffset");
      PacketIO.writeVector2f(var1, var2 + 1, this.hitboxOffset);
      var1.set(PacketIO.PROTO_BOOL, var2 + 9, this.unknown);
      var1.set(PacketIO.PROTO_INT, var2 + 10, this.entityStatIndex);
      this.combatTextRandomPositionOffsetRange.serialize(var1, var2 + 14);
      PacketIO.requireFinite(this.combatTextViewportMargin, "CombatTextViewportMargin");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 31, this.combatTextViewportMargin);
      PacketIO.requireFinite(this.combatTextDuration, "CombatTextDuration");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 35, this.combatTextDuration);
      PacketIO.requireFinite(this.combatTextHitAngleModifierStrength, "CombatTextHitAngleModifierStrength");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 39, this.combatTextHitAngleModifierStrength);
      PacketIO.requireFinite(this.combatTextFontSize, "CombatTextFontSize");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 43, this.combatTextFontSize);
      this.combatTextColor.serialize(var1, var2 + 47);
      int var3 = var2 + 50;
      if (this.combatTextAnimationEvents.length > 4096000) {
         throw ProtocolException.arrayTooLong("CombatTextAnimationEvents", this.combatTextAnimationEvents.length, 4096000);
      }

      var3 += VarInt.set(var1, var3, this.combatTextAnimationEvents.length);
      int var4 = 0;

      for (int var5 = 0; var5 < this.combatTextAnimationEvents.length; var5++) {
         var4 += this.combatTextAnimationEvents[var5].serialize(var1, var3 + var4);
      }

      var3 += var4;
      class="kw">return var3 - var2;
   }

   class="kw">public int computeSize() {
      int var1 = 50;
      class="kw">return var1 + VarInt.size(this.combatTextAnimationEvents.length) + this.combatTextAnimationEvents.length * 33;
   }

   class="kw">public EntityUIComponent clone() {
      EntityUIComponent var1 = new EntityUIComponent();
      var1.type = this.type;
      var1.hitboxOffset = this.hitboxOffset;
      var1.unknown = this.unknown;
      var1.entityStatIndex = this.entityStatIndex;
      var1.combatTextRandomPositionOffsetRange = this.combatTextRandomPositionOffsetRange.clone();
      var1.combatTextViewportMargin = this.combatTextViewportMargin;
      var1.combatTextDuration = this.combatTextDuration;
      var1.combatTextHitAngleModifierStrength = this.combatTextHitAngleModifierStrength;
      var1.combatTextFontSize = this.combatTextFontSize;
      var1.combatTextColor = this.combatTextColor.clone();
      var1.combatTextAnimationEvents = Arrays.stream(this.combatTextAnimationEvents)
         .map(var0 -> var0.clone())
         .toArray(CombatTextEntityUIComponentAnimationEvent[]::new);
      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 EntityUIComponent var2)
            ? false
            : Objects.equals(this.type, var2.type)
               && Objects.equals(this.hitboxOffset, var2.hitboxOffset)
               && this.unknown == var2.unknown
               && this.entityStatIndex == var2.entityStatIndex
               && Objects.equals(this.combatTextRandomPositionOffsetRange, var2.combatTextRandomPositionOffsetRange)
               && this.combatTextViewportMargin == var2.combatTextViewportMargin
               && this.combatTextDuration == var2.combatTextDuration
               && this.combatTextHitAngleModifierStrength == var2.combatTextHitAngleModifierStrength
               && this.combatTextFontSize == var2.combatTextFontSize
               && Objects.equals(this.combatTextColor, var2.combatTextColor)
               && Arrays.equals(this.combatTextAnimationEvents, var2.combatTextAnimationEvents);
      }
   }

   @Override
   class="kw">public int hashCode() {
      int var1 = 1;
      var1 = 31 * var1 + Objects.hashCode(this.type);
      var1 = 31 * var1 + Objects.hashCode(this.hitboxOffset);
      var1 = 31 * var1 + Boolean.hashCode(this.unknown);
      var1 = 31 * var1 + Integer.hashCode(this.entityStatIndex);
      var1 = 31 * var1 + Objects.hashCode(this.combatTextRandomPositionOffsetRange);
      var1 = 31 * var1 + Float.hashCode(this.combatTextViewportMargin);
      var1 = 31 * var1 + Float.hashCode(this.combatTextDuration);
      var1 = 31 * var1 + Float.hashCode(this.combatTextHitAngleModifierStrength);
      var1 = 31 * var1 + Float.hashCode(this.combatTextFontSize);
      var1 = 31 * var1 + Objects.hashCode(this.combatTextColor);
      class="kw">return 31 * var1 + Arrays.hashCode(this.combatTextAnimationEvents);
   }
}