StateTransition class

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

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

Поля (17)

МодификаторыТипИмя
final int NULLABLE_BIT_FIELD_SIZE
int var1
StateTransition var1
long var2
byte var2
byte var2
int var3
byte var3
var3
var3
int var4
int var4
String var5
var5
int var6
long var7
StateTransition var9

Методы (34)

МодификаторыВозвратСигнатура
public StateTransition cloneStateTransition clone()
public int computeSizeint computeSize()
static FadeCurve getCurveFadeCurve getCurve(MemorySegment var0)
static FadeCurve getCurveFadeCurve getCurve(MemorySegment var0, int var1)
abstract return getCurvereturn getCurve(var0, 0)
static float getDurationMsfloat getDurationMs(MemorySegment var0)
static float getDurationMsfloat getDurationMs(MemorySegment var0, int var1)
abstract return getDurationMsreturn getDurationMs(var0, 0)
static int getFromValueIndexint getFromValueIndex(MemorySegment var0)
static int getFromValueIndexint getFromValueIndex(MemorySegment var0, int var1)
abstract return getFromValueIndexreturn getFromValueIndex(var0, 0)
abstract return getPostEventreturn getPostEvent(var0, 0)
abstract return getSyncToreturn getSyncTo(var0, 0)
static int getToValueIndexint getToValueIndex(MemorySegment var0)
static int getToValueIndexint getToValueIndex(MemorySegment var0, int var1)
abstract return getToValueIndexreturn getToValueIndex(var0, 0)
static boolean hasPostEventboolean hasPostEvent(MemorySegment var0, int var1)
static boolean hasSyncToboolean hasSyncTo(MemorySegment var0, int var1)
if if(var1 < 0)
if if(var2 != null)
if if(this.syncTo != null)
if if(this.postEvent != null)
if if(this.syncTo != null)
if if(this.postEvent != null)
if if(this.postEvent != null)
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 StateTransition toObjectStateTransition toObject(MemorySegment var0)
static StateTransition toObjectStateTransition toObject(MemorySegment var0, int var1)
static StateTransition toObjectStateTransition 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.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class StateTransition {
   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 = 15;
   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 = 15;
   class="kw">public class="kw">static class="kw">final int MAX_SIZE = 16384020;
   class="kw">public int fromValueIndex;
   class="kw">public int toValueIndex;
   class="kw">public float durationMs;
   @Nonnull
   class="kw">public FadeCurve curve = FadeCurve.Linear;
   @Nullable
   class="kw">public SyncPoint syncTo;
   @Nullable
   class="kw">public String postEvent;

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

   class="kw">public StateTransition(int var1, int var2, float var3, @Nonnull FadeCurve var4, @Nullable SyncPoint var5, @Nullable String var6) {
      this.fromValueIndex = var1;
      this.toValueIndex = var2;
      this.durationMs = var3;
      this.curve = var4;
      this.syncTo = var5;
      this.postEvent = var6;
   }

   class="kw">public StateTransition(@Nonnull StateTransition var1) {
      this.fromValueIndex = var1.fromValueIndex;
      this.toValueIndex = var1.toValueIndex;
      this.durationMs = var1.durationMs;
      this.curve = var1.curve;
      this.syncTo = var1.syncTo;
      this.postEvent = var1.postEvent;
   }

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

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

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

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

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

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

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

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

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

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

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

   @Nullable
   class="kw">public class="kw">static SyncPoint getSyncTo(MemorySegment var0, int var1) {
      class="kw">return hasSyncTo(var0, var1) ? SyncPoint.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 14)) : null;
   }

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

   @Nullable
   class="kw">public class="kw">static String getPostEvent(MemorySegment var0, int var1) {
      class="kw">return hasPostEvent(var0, var1) ? PacketIO.readVarString("PostEvent", var0, var1 + 15, 4096000) : null;
   }

   class="kw">public class="kw">static boolean hasSyncTo(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 boolean hasPostEvent(MemorySegment var0, int var1) {
      byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
      class="kw">return (var2 & 2) != 0;
   }

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

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

   class="kw">public class="kw">static StateTransition toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) {
      requireBounds(var0, var1);
      int var3 = var1 + 15;
      int var4 = 0;
      String var5 = null;
      if (hasPostEvent(var0, var1)) {
         int var6 = var3 + var4;
         long var7 = VarInt.getWithLength(var0, var6);
         var5 = PacketIO.readVarString("PostEvent", var0, var6, 0, 4096000, var7);
         var4 += (int)var7 + (int)(var7 >>> 32);
      }

      StateTransition var9 = new StateTransition(
         var0.get(PacketIO.PROTO_INT, var1 + 1),
         var0.get(PacketIO.PROTO_INT, var1 + 5),
         PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 9), "DurationMs"),
         FadeCurve.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 13)),
         hasSyncTo(var0, var1) ? SyncPoint.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 14)) : null,
         var5
      );
      if (var2 != null) {
         var2.position = var3 + var4;
      }

      class="kw">return var9;
   }

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

      if (this.postEvent != null) {
         var3 = (byte)(var3 | 2);
      }

      var1.set(PacketIO.PROTO_BYTE, var2 + 0, var3);
      var1.set(PacketIO.PROTO_INT, var2 + 1, this.fromValueIndex);
      var1.set(PacketIO.PROTO_INT, var2 + 5, this.toValueIndex);
      PacketIO.requireFinite(this.durationMs, "DurationMs");
      var1.set(PacketIO.PROTO_FLOAT, var2 + 9, this.durationMs);
      var1.set(PacketIO.PROTO_BYTE, var2 + 13, (byte)this.curve.getValue());
      if (this.syncTo != null) {
         var1.set(PacketIO.PROTO_BYTE, var2 + 14, (byte)this.syncTo.getValue());
      } else {
         var1.asSlice(var2 + 14, 1L).fill((byte)0);
      }

      int var4 = var2 + 15;
      if (this.postEvent != null) {
         var4 += PacketIO.writeVarString(var1, var4, this.postEvent, 4096000);
      }

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

   class="kw">public int computeSize() {
      int var1 = 15;
      if (this.postEvent != null) {
         var1 += PacketIO.stringSize(this.postEvent);
      }

      class="kw">return var1;
   }

   class="kw">public StateTransition clone() {
      StateTransition var1 = new StateTransition();
      var1.fromValueIndex = this.fromValueIndex;
      var1.toValueIndex = this.toValueIndex;
      var1.durationMs = this.durationMs;
      var1.curve = this.curve;
      var1.syncTo = this.syncTo;
      var1.postEvent = this.postEvent;
      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 StateTransition var2)
            ? false
            : this.fromValueIndex == var2.fromValueIndex
               && this.toValueIndex == var2.toValueIndex
               && this.durationMs == var2.durationMs
               && Objects.equals(this.curve, var2.curve)
               && Objects.equals(this.syncTo, var2.syncTo)
               && Objects.equals(this.postEvent, var2.postEvent);
      }
   }

   @Override
   class="kw">public int hashCode() {
      class="kw">return Objects.hash(this.fromValueIndex, this.toValueIndex, this.durationMs, this.curve, this.syncTo, this.postEvent);
   }
}