StairConnectedBlockRuleSet class

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

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

extends: ConnectedBlockRuleSet

Поля (15)

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

Методы (31)

МодификаторыВозвратСигнатура
public StairConnectedBlockRuleSet cloneStairConnectedBlockRuleSet clone()
static int getCornerLeftBlockIdint getCornerLeftBlockId(MemorySegment var0)
static int getCornerLeftBlockIdint getCornerLeftBlockId(MemorySegment var0, int var1)
abstract return getCornerLeftBlockIdreturn getCornerLeftBlockId(var0, 0)
static int getCornerRightBlockIdint getCornerRightBlockId(MemorySegment var0)
static int getCornerRightBlockIdint getCornerRightBlockId(MemorySegment var0, int var1)
abstract return getCornerRightBlockIdreturn getCornerRightBlockId(var0, 0)
static int getInvertedCornerLeftBlockIdint getInvertedCornerLeftBlockId(MemorySegment var0)
static int getInvertedCornerLeftBlockIdint getInvertedCornerLeftBlockId(MemorySegment var0, int var1)
abstract return getInvertedCornerLeftBlockIdreturn getInvertedCornerLeftBlockId(var0, 0)
static int getInvertedCornerRightBlockIdint getInvertedCornerRightBlockId(MemorySegment var0)
static int getInvertedCornerRightBlockIdint getInvertedCornerRightBlockId(MemorySegment var0, int var1)
abstract return getInvertedCornerRightBlockIdreturn getInvertedCornerRightBlockId(var0, 0)
abstract return getMaterialNamereturn getMaterialName(var0, 0)
static int getStraightBlockIdint getStraightBlockId(MemorySegment var0)
static int getStraightBlockIdint getStraightBlockId(MemorySegment var0, int var1)
abstract return getStraightBlockIdreturn getStraightBlockId(var0, 0)
static boolean hasMaterialNameboolean hasMaterialName(MemorySegment var0, int var1)
if if(var1 < 0)
if if(var2 != null)
if if(this.materialName != null)
if if(this.materialName != null)
if if(this.materialName != null)
if if(this == var1)
static void requireBoundsvoid requireBounds(MemorySegment var0, int var1)
abstract requireBounds requireBounds(var0, var1)
static StairConnectedBlockRuleSet toObjectStairConnectedBlockRuleSet toObject(MemorySegment var0)
static StairConnectedBlockRuleSet toObjectStairConnectedBlockRuleSet toObject(MemorySegment var0, int var1)
static StairConnectedBlockRuleSet toObjectStairConnectedBlockRuleSet 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 StairConnectedBlockRuleSet class="kw">extends ConnectedBlockRuleSet {
   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 = 21;
   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 = 21;
   class="kw">public class="kw">static class="kw">final int MAX_SIZE = 16384026;
   class="kw">public int straightBlockId;
   class="kw">public int cornerLeftBlockId;
   class="kw">public int cornerRightBlockId;
   class="kw">public int invertedCornerLeftBlockId;
   class="kw">public int invertedCornerRightBlockId;
   @Nullable
   class="kw">public String materialName;

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

   class="kw">public StairConnectedBlockRuleSet(int var1, int var2, int var3, int var4, int var5, @Nullable String var6) {
      this.straightBlockId = var1;
      this.cornerLeftBlockId = var2;
      this.cornerRightBlockId = var3;
      this.invertedCornerLeftBlockId = var4;
      this.invertedCornerRightBlockId = var5;
      this.materialName = var6;
   }

   class="kw">public StairConnectedBlockRuleSet(@Nonnull StairConnectedBlockRuleSet var1) {
      this.straightBlockId = var1.straightBlockId;
      this.cornerLeftBlockId = var1.cornerLeftBlockId;
      this.cornerRightBlockId = var1.cornerRightBlockId;
      this.invertedCornerLeftBlockId = var1.invertedCornerLeftBlockId;
      this.invertedCornerRightBlockId = var1.invertedCornerRightBlockId;
      this.materialName = var1.materialName;
   }

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

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

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

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

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

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

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

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

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

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

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

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

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

   @Nullable
   class="kw">public class="kw">static String getMaterialName(MemorySegment var0, int var1) {
      class="kw">return hasMaterialName(var0, var1) ? PacketIO.readVarString("MaterialName", var0, var1 + 21, 4096000) : null;
   }

   class="kw">public class="kw">static boolean hasMaterialName(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 StairConnectedBlockRuleSet toObject(MemorySegment var0) {
      class="kw">return toObject(var0, 0, null);
   }

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

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

      StairConnectedBlockRuleSet var9 = new StairConnectedBlockRuleSet(
         var0.get(PacketIO.PROTO_INT, var1 + 1),
         var0.get(PacketIO.PROTO_INT, var1 + 5),
         var0.get(PacketIO.PROTO_INT, var1 + 9),
         var0.get(PacketIO.PROTO_INT, var1 + 13),
         var0.get(PacketIO.PROTO_INT, var1 + 17),
         var5
      );
      if (var2 != null) {
         var2.position = var3 + var4;
      }

      class="kw">return var9;
   }

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

      var1.set(PacketIO.PROTO_BYTE, var2 + 0, var3);
      var1.set(PacketIO.PROTO_INT, var2 + 1, this.straightBlockId);
      var1.set(PacketIO.PROTO_INT, var2 + 5, this.cornerLeftBlockId);
      var1.set(PacketIO.PROTO_INT, var2 + 9, this.cornerRightBlockId);
      var1.set(PacketIO.PROTO_INT, var2 + 13, this.invertedCornerLeftBlockId);
      var1.set(PacketIO.PROTO_INT, var2 + 17, this.invertedCornerRightBlockId);
      int var4 = var2 + 21;
      if (this.materialName != null) {
         var4 += PacketIO.writeVarString(var1, var4, this.materialName, 4096000);
      }

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

   @Override
   class="kw">public int computeSize() {
      int var1 = 21;
      if (this.materialName != null) {
         var1 += PacketIO.stringSize(this.materialName);
      }

      class="kw">return var1;
   }

   class="kw">public StairConnectedBlockRuleSet clone() {
      StairConnectedBlockRuleSet var1 = new StairConnectedBlockRuleSet();
      var1.straightBlockId = this.straightBlockId;
      var1.cornerLeftBlockId = this.cornerLeftBlockId;
      var1.cornerRightBlockId = this.cornerRightBlockId;
      var1.invertedCornerLeftBlockId = this.invertedCornerLeftBlockId;
      var1.invertedCornerRightBlockId = this.invertedCornerRightBlockId;
      var1.materialName = this.materialName;
      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 StairConnectedBlockRuleSet var2)
            ? false
            : this.straightBlockId == var2.straightBlockId
               && this.cornerLeftBlockId == var2.cornerLeftBlockId
               && this.cornerRightBlockId == var2.cornerRightBlockId
               && this.invertedCornerLeftBlockId == var2.invertedCornerLeftBlockId
               && this.invertedCornerRightBlockId == var2.invertedCornerRightBlockId
               && Objects.equals(this.materialName, var2.materialName);
      }
   }

   @Override
   class="kw">public int hashCode() {
      class="kw">return Objects.hash(
         this.straightBlockId,
         this.cornerLeftBlockId,
         this.cornerRightBlockId,
         this.invertedCornerLeftBlockId,
         this.invertedCornerRightBlockId,
         this.materialName
      );
   }
}