RequiredBlockFaceSupport class
Пакет: com.hypixel.hytale.protocol
Файл: com/hypixel/hytale/protocol/RequiredBlockFaceSupport.java
Поля (58)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
int |
NULLABLE_BIT_FIELD_SIZE |
|
int |
var1 |
|
RequiredBlockFaceSupport |
var1 |
|
int |
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
long |
var10 |
|
int |
var12 |
|
int |
var13 |
|
String |
var15 |
|
|
var15 |
|
int |
var16 |
|
String |
var17 |
|
|
var17 |
|
int |
var18 |
|
Vector3i[] |
var19 |
|
|
var19 |
|
long |
var2 |
|
int |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
int |
var20 |
|
RequiredBlockFaceSupport |
var22 |
|
long |
var3 |
|
int |
var3 |
|
byte |
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
int |
var4 |
|
int |
var4 |
|
|
var4 |
|
byte |
var4 |
|
|
var4 |
|
|
var4 |
|
int |
var5 |
|
int |
var5 |
|
String |
var5 |
|
|
var5 |
|
int |
var5 |
|
int |
var6 |
|
int |
var6 |
|
int |
var6 |
|
Vector3i[] |
var7 |
|
long |
var7 |
|
long |
var8 |
|
long |
var9 |
Методы (75)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
RequiredBlockFaceSupport |
cloneRequiredBlockFaceSupport clone() |
public |
int |
computeSizeint computeSize() |
|
|
for for(int var8 = 0; var8 < var5; var8++) |
|
|
for for(int var14 = 0; var14 < var12; var14++) |
|
|
for for(int var7 = 0; var7 < this.filler.length; var7++) |
static |
boolean |
getAllowSupportPropagationboolean getAllowSupportPropagation(MemorySegment var0) |
static |
boolean |
getAllowSupportPropagationboolean getAllowSupportPropagation(MemorySegment var0, int var1) |
abstract |
return |
getAllowSupportPropagationreturn getAllowSupportPropagation(var0, 0) |
abstract |
return |
getBlockSetIdreturn getBlockSetId(var0, 0) |
static |
int |
getBlockTypeIdint getBlockTypeId(MemorySegment var0) |
static |
int |
getBlockTypeIdint getBlockTypeId(MemorySegment var0, int var1) |
abstract |
return |
getBlockTypeIdreturn getBlockTypeId(var0, 0) |
abstract |
return |
getFaceTypereturn getFaceType(var0, 0) |
abstract |
return |
getFillerreturn getFiller(var0, 0) |
static |
int |
getFluidIdint getFluidId(MemorySegment var0) |
static |
int |
getFluidIdint getFluidId(MemorySegment var0, int var1) |
abstract |
return |
getFluidIdreturn getFluidId(var0, 0) |
static |
SupportMatch |
getMatchSelfSupportMatch getMatchSelf(MemorySegment var0) |
static |
SupportMatch |
getMatchSelfSupportMatch getMatchSelf(MemorySegment var0, int var1) |
abstract |
return |
getMatchSelfreturn getMatchSelf(var0, 0) |
static |
boolean |
getRotateboolean getRotate(MemorySegment var0) |
static |
boolean |
getRotateboolean getRotate(MemorySegment var0, int var1) |
abstract |
return |
getRotatereturn getRotate(var0, 0) |
abstract |
return |
getSelfFaceTypereturn getSelfFaceType(var0, 0) |
static |
SupportMatch |
getSupportSupportMatch getSupport(MemorySegment var0) |
static |
SupportMatch |
getSupportSupportMatch getSupport(MemorySegment var0, int var1) |
abstract |
return |
getSupportreturn getSupport(var0, 0) |
static |
int |
getTagIndexint getTagIndex(MemorySegment var0) |
static |
int |
getTagIndexint getTagIndex(MemorySegment var0, int var1) |
abstract |
return |
getTagIndexreturn getTagIndex(var0, 0) |
static |
int |
getValidatedOffsetint getValidatedOffset(MemorySegment var0, int var1, int var2, int var3, String var4) |
static |
boolean |
hasBlockSetIdboolean hasBlockSetId(MemorySegment var0, int var1) |
static |
boolean |
hasFaceTypeboolean hasFaceType(MemorySegment var0, int var1) |
static |
boolean |
hasFillerboolean hasFiller(MemorySegment var0, int var1) |
static |
boolean |
hasSelfFaceTypeboolean hasSelfFaceType(MemorySegment var0, int var1) |
|
|
if if(var1 < 0) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var4 != var2) |
|
|
if if(var10 == -1L) |
|
|
if if(var12 > 4096000) |
|
|
if if(var2 != null) |
|
|
if if(this.faceType != null) |
|
|
if if(this.selfFaceType != null) |
|
|
if if(this.blockSetId != null) |
|
|
if if(this.filler != null) |
|
|
if if(this.allowSupportPropagation) |
|
|
if if(this.rotate) |
|
|
if if(this.faceType != null) |
|
|
if if(this.selfFaceType != null) |
|
|
if if(this.blockSetId != null) |
|
|
if if(this.filler != null) |
|
|
if if(this.filler.length > 4096000) |
|
|
if if(this.faceType != null) |
|
|
if if(this.selfFaceType != null) |
|
|
if if(this.blockSetId != null) |
|
|
if if(this.filler != null) |
|
|
if if(this == var1) |
static |
void |
requireBoundsvoid requireBounds(MemorySegment var0, int var1) |
abstract |
|
requireBounds requireBounds(var0, var1) |
static |
void |
requireSlotvoid requireSlot(MemorySegment var0, int var1, int var2, String var3) |
abstract |
|
requireSlot requireSlot(var0, var1 + 16, var4, "FaceType") |
abstract |
|
requireSlot requireSlot(var0, var1 + 16, -1, "FaceType") |
abstract |
|
requireSlot requireSlot(var0, var1 + 20, var4, "SelfFaceType") |
abstract |
|
requireSlot requireSlot(var0, var1 + 20, -1, "SelfFaceType") |
abstract |
|
requireSlot requireSlot(var0, var1 + 24, var4, "BlockSetId") |
abstract |
|
requireSlot requireSlot(var0, var1 + 24, -1, "BlockSetId") |
abstract |
|
requireSlot requireSlot(var0, var1 + 28, var4, "Filler") |
abstract |
|
requireSlot requireSlot(var0, var1 + 28, -1, "Filler") |
public |
int |
serializeint serialize(@Nonnull MemorySegment var1, int var2) |
static |
RequiredBlockFaceSupport |
toObjectRequiredBlockFaceSupport toObject(MemorySegment var0) |
static |
RequiredBlockFaceSupport |
toObjectRequiredBlockFaceSupport toObject(MemorySegment var0, int var1) |
static |
RequiredBlockFaceSupport |
toObjectRequiredBlockFaceSupport 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">public class RequiredBlockFaceSupport {
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 = 16;
class="kw">public class="kw">static class="kw">final int VARIABLE_FIELD_COUNT = 4;
class="kw">public class="kw">static class="kw">final int VARIABLE_BLOCK_START = 32;
class="kw">public class="kw">static class="kw">final int MAX_SIZE = 98304052;
@Nullable
class="kw">public String faceType;
@Nullable
class="kw">public String selfFaceType;
@Nullable
class="kw">public String blockSetId;
class="kw">public int blockTypeId;
class="kw">public int tagIndex;
class="kw">public int fluidId;
@Nonnull
class="kw">public SupportMatch support = SupportMatch.Ignored;
@Nonnull
class="kw">public SupportMatch matchSelf = SupportMatch.Ignored;
class="kw">public boolean allowSupportPropagation;
class="kw">public boolean rotate;
@Nullable
class="kw">public Vector3i[] filler;
class="kw">public RequiredBlockFaceSupport() {
}
class="kw">public RequiredBlockFaceSupport(
@Nullable String var1,
@Nullable String var2,
@Nullable String var3,
int var4,
int var5,
int var6,
@Nonnull SupportMatch var7,
@Nonnull SupportMatch var8,
boolean var9,
boolean var10,
@Nullable Vector3i[] var11
) {
this.faceType = var1;
this.selfFaceType = var2;
this.blockSetId = var3;
this.blockTypeId = var4;
this.tagIndex = var5;
this.fluidId = var6;
this.support = var7;
this.matchSelf = var8;
this.allowSupportPropagation = var9;
this.rotate = var10;
this.filler = var11;
}
class="kw">public RequiredBlockFaceSupport(@Nonnull RequiredBlockFaceSupport var1) {
this.faceType = var1.faceType;
this.selfFaceType = var1.selfFaceType;
this.blockSetId = var1.blockSetId;
this.blockTypeId = var1.blockTypeId;
this.tagIndex = var1.tagIndex;
this.fluidId = var1.fluidId;
this.support = var1.support;
this.matchSelf = var1.matchSelf;
this.allowSupportPropagation = var1.allowSupportPropagation;
this.rotate = var1.rotate;
this.filler = var1.filler;
}
class="kw">public class="kw">static void requireBounds(MemorySegment var0, int var1) {
if (var1 < 0) {
throw ProtocolException.invalidOffset("RequiredBlockFaceSupport", var1, (int)var0.byteSize());
}
long var2 = var1 + 32L;
if (var2 > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("RequiredBlockFaceSupport", (int)Math.min(var2, 2147483647L), (int)var0.byteSize());
}
}
@Nullable
class="kw">public class="kw">static String getFaceType(MemorySegment var0) {
class="kw">return getFaceType(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getFaceType(MemorySegment var0, int var1) {
class="kw">return hasFaceType(var0, var1) ? PacketIO.readVarString("FaceType", var0, var1 + getValidatedOffset(var0, var1, 16, 32, "FaceType"), 4096000) : null;
}
@Nullable
class="kw">public class="kw">static String getSelfFaceType(MemorySegment var0) {
class="kw">return getSelfFaceType(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getSelfFaceType(MemorySegment var0, int var1) {
class="kw">return hasSelfFaceType(var0, var1)
? PacketIO.readVarString("SelfFaceType", var0, var1 + getValidatedOffset(var0, var1, 20, 32, "SelfFaceType"), 4096000)
: null;
}
@Nullable
class="kw">public class="kw">static String getBlockSetId(MemorySegment var0) {
class="kw">return getBlockSetId(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getBlockSetId(MemorySegment var0, int var1) {
class="kw">return hasBlockSetId(var0, var1)
? PacketIO.readVarString("BlockSetId", var0, var1 + getValidatedOffset(var0, var1, 24, 32, "BlockSetId"), 4096000)
: null;
}
class="kw">public class="kw">static int getBlockTypeId(MemorySegment var0) {
class="kw">return getBlockTypeId(var0, 0);
}
class="kw">public class="kw">static int getBlockTypeId(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 1);
}
class="kw">public class="kw">static int getTagIndex(MemorySegment var0) {
class="kw">return getTagIndex(var0, 0);
}
class="kw">public class="kw">static int getTagIndex(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 5);
}
class="kw">public class="kw">static int getFluidId(MemorySegment var0) {
class="kw">return getFluidId(var0, 0);
}
class="kw">public class="kw">static int getFluidId(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 9);
}
class="kw">public class="kw">static SupportMatch getSupport(MemorySegment var0) {
class="kw">return getSupport(var0, 0);
}
class="kw">public class="kw">static SupportMatch getSupport(MemorySegment var0, int var1) {
class="kw">return SupportMatch.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 13));
}
class="kw">public class="kw">static SupportMatch getMatchSelf(MemorySegment var0) {
class="kw">return getMatchSelf(var0, 0);
}
class="kw">public class="kw">static SupportMatch getMatchSelf(MemorySegment var0, int var1) {
class="kw">return SupportMatch.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 14));
}
class="kw">public class="kw">static boolean getAllowSupportPropagation(MemorySegment var0) {
class="kw">return getAllowSupportPropagation(var0, 0);
}
class="kw">public class="kw">static boolean getAllowSupportPropagation(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 15) & 1) != 0;
}
class="kw">public class="kw">static boolean getRotate(MemorySegment var0) {
class="kw">return getRotate(var0, 0);
}
class="kw">public class="kw">static boolean getRotate(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 15) & 2) != 0;
}
@Nullable
class="kw">public class="kw">static Vector3i[] getFiller(MemorySegment var0) {
class="kw">return getFiller(var0, 0);
}
@Nullable
class="kw">public class="kw">static Vector3i[] getFiller(MemorySegment var0, int var1) {
if (!hasFiller(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 28, 32, "Filler");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("Filler");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.arrayTooLong("Filler", var5, 4096000);
}
int var6 = (int)(var3 >>> 32);
if (var2 + var6 + var5 * 12L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Filler", (int)Math.min(var2 + var6 + var5 * 12L, 2147483647L), (int)var0.byteSize());
}
var2 += var6;
Vector3i[] var7 = new Vector3i[var5];
for (int var8 = 0; var8 < var5; var8++) {
var7[var8] = Vector3i.toObject(var0, var2 + var8 * 12);
}
class="kw">return var7;
}
class="kw">public class="kw">static boolean hasFaceType(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 hasSelfFaceType(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 boolean hasBlockSetId(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
class="kw">return (var2 & 4) != 0;
}
class="kw">public class="kw">static boolean hasFiller(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
class="kw">return (var2 & 8) != 0;
}
class="kw">private class="kw">static int getValidatedOffset(MemorySegment var0, int var1, int var2, int var3, String var4) {
int var5 = var0.get(PacketIO.PROTO_INT, var1 + var2);
if (var5 >= 0 && var5 <= var0.byteSize() - var1 - var3) {
class="kw">return var3 + var5;
} else {
throw ProtocolException.invalidOffset(var4, var5, (int)var0.byteSize());
}
}
class="kw">private class="kw">static void requireSlot(MemorySegment var0, int var1, int var2, String var3) {
int var4 = var0.get(PacketIO.PROTO_INT, var1);
if (var4 != var2) {
throw ProtocolException.nonCanonicalLayout(var3, var4, var2);
}
}
class="kw">public class="kw">static RequiredBlockFaceSupport toObject(MemorySegment var0) {
class="kw">return toObject(var0, 0, null);
}
class="kw">public class="kw">static RequiredBlockFaceSupport toObject(MemorySegment var0, int var1) {
class="kw">return toObject(var0, var1, null);
}
class="kw">public class="kw">static RequiredBlockFaceSupport toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) {
requireBounds(var0, var1);
int var3 = var1 + 32;
int var4 = 0;
String var5 = null;
if (hasFaceType(var0, var1)) {
requireSlot(var0, var1 + 16, var4, "FaceType");
int var6 = var3 + var4;
long var7 = VarInt.getWithLength(var0, var6);
var5 = PacketIO.readVarString("FaceType", var0, var6, 0, 4096000, var7);
var4 += (int)var7 + (int)(var7 >>> 32);
} else {
requireSlot(var0, var1 + 16, -1, "FaceType");
}
String var15 = null;
if (hasSelfFaceType(var0, var1)) {
requireSlot(var0, var1 + 20, var4, "SelfFaceType");
int var16 = var3 + var4;
long var8 = VarInt.getWithLength(var0, var16);
var15 = PacketIO.readVarString("SelfFaceType", var0, var16, 0, 4096000, var8);
var4 += (int)var8 + (int)(var8 >>> 32);
} else {
requireSlot(var0, var1 + 20, -1, "SelfFaceType");
}
String var17 = null;
if (hasBlockSetId(var0, var1)) {
requireSlot(var0, var1 + 24, var4, "BlockSetId");
int var18 = var3 + var4;
long var9 = VarInt.getWithLength(var0, var18);
var17 = PacketIO.readVarString("BlockSetId", var0, var18, 0, 4096000, var9);
var4 += (int)var9 + (int)(var9 >>> 32);
} else {
requireSlot(var0, var1 + 24, -1, "BlockSetId");
}
Vector3i[] var19 = null;
if (hasFiller(var0, var1)) {
requireSlot(var0, var1 + 28, var4, "Filler");
int var20 = var3 + var4;
long var10 = VarInt.getWithLength(var0, var20);
if (var10 == -1L) {
throw ProtocolException.invalidVarInt("Filler");
}
int var12 = (int)var10;
if (var12 > 4096000) {
throw ProtocolException.arrayTooLong("Filler", var12, 4096000);
}
int var13 = (int)(var10 >>> 32);
if (var20 + var13 + var12 * 12L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Filler", (int)Math.min(var20 + var13 + var12 * 12L, 2147483647L), (int)var0.byteSize());
}
var20 += var13;
var19 = new Vector3i[var12];
for (int var14 = 0; var14 < var12; var14++) {
var19[var14] = Vector3i.toObject(var0, var20 + var14 * 12);
}
var4 = var20 + var12 * 12 - var3;
} else {
requireSlot(var0, var1 + 28, -1, "Filler");
}
RequiredBlockFaceSupport var22 = new RequiredBlockFaceSupport(
var5,
var15,
var17,
var0.get(PacketIO.PROTO_INT, var1 + 1),
var0.get(PacketIO.PROTO_INT, var1 + 5),
var0.get(PacketIO.PROTO_INT, var1 + 9),
SupportMatch.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 13)),
SupportMatch.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 14)),
(var0.get(PacketIO.PROTO_BYTE, var1 + 15) & 1) != 0,
(var0.get(PacketIO.PROTO_BYTE, var1 + 15) & 2) != 0,
var19
);
if (var2 != null) {
var2.position = var3 + var4;
}
class="kw">return var22;
}
class="kw">public int serialize(@Nonnull MemorySegment var1, int var2) {
byte var3 = 0;
if (this.faceType != null) {
var3 = (byte)(var3 | 1);
}
if (this.selfFaceType != null) {
var3 = (byte)(var3 | 2);
}
if (this.blockSetId != null) {
var3 = (byte)(var3 | 4);
}
if (this.filler != null) {
var3 = (byte)(var3 | 8);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 0, var3);
var1.set(PacketIO.PROTO_INT, var2 + 1, this.blockTypeId);
var1.set(PacketIO.PROTO_INT, var2 + 5, this.tagIndex);
var1.set(PacketIO.PROTO_INT, var2 + 9, this.fluidId);
var1.set(PacketIO.PROTO_BYTE, var2 + 13, (byte)this.support.getValue());
var1.set(PacketIO.PROTO_BYTE, var2 + 14, (byte)this.matchSelf.getValue());
byte var4 = 0;
if (this.allowSupportPropagation) {
var4 = (byte)(var4 | 1);
}
if (this.rotate) {
var4 = (byte)(var4 | 2);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 15 + 0, var4);
int var5 = var2 + 32;
if (this.faceType != null) {
var1.set(PacketIO.PROTO_INT, var2 + 16, var5 - var2 - 32);
var5 += PacketIO.writeVarString(var1, var5, this.faceType, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 16, -1);
}
if (this.selfFaceType != null) {
var1.set(PacketIO.PROTO_INT, var2 + 20, var5 - var2 - 32);
var5 += PacketIO.writeVarString(var1, var5, this.selfFaceType, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 20, -1);
}
if (this.blockSetId != null) {
var1.set(PacketIO.PROTO_INT, var2 + 24, var5 - var2 - 32);
var5 += PacketIO.writeVarString(var1, var5, this.blockSetId, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 24, -1);
}
if (this.filler != null) {
var1.set(PacketIO.PROTO_INT, var2 + 28, var5 - var2 - 32);
if (this.filler.length > 4096000) {
throw ProtocolException.arrayTooLong("Filler", this.filler.length, 4096000);
}
var5 += VarInt.set(var1, var5, this.filler.length);
int var6 = 0;
for (int var7 = 0; var7 < this.filler.length; var7++) {
var6 += this.filler[var7].serialize(var1, var5 + var6);
}
var5 += var6;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 28, -1);
}
class="kw">return var5 - var2;
}
class="kw">public int computeSize() {
int var1 = 32;
if (this.faceType != null) {
var1 += PacketIO.stringSize(this.faceType);
}
if (this.selfFaceType != null) {
var1 += PacketIO.stringSize(this.selfFaceType);
}
if (this.blockSetId != null) {
var1 += PacketIO.stringSize(this.blockSetId);
}
if (this.filler != null) {
var1 += VarInt.size(this.filler.length) + this.filler.length * 12;
}
class="kw">return var1;
}
class="kw">public RequiredBlockFaceSupport clone() {
RequiredBlockFaceSupport var1 = new RequiredBlockFaceSupport();
var1.faceType = this.faceType;
var1.selfFaceType = this.selfFaceType;
var1.blockSetId = this.blockSetId;
var1.blockTypeId = this.blockTypeId;
var1.tagIndex = this.tagIndex;
var1.fluidId = this.fluidId;
var1.support = this.support;
var1.matchSelf = this.matchSelf;
var1.allowSupportPropagation = this.allowSupportPropagation;
var1.rotate = this.rotate;
var1.filler = this.filler != null ? Arrays.stream(this.filler).map(var0 -> var0.clone()).toArray(Vector3i[]::new) : null;
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 RequiredBlockFaceSupport var2)
? false
: Objects.equals(this.faceType, var2.faceType)
&& Objects.equals(this.selfFaceType, var2.selfFaceType)
&& Objects.equals(this.blockSetId, var2.blockSetId)
&& this.blockTypeId == var2.blockTypeId
&& this.tagIndex == var2.tagIndex
&& this.fluidId == var2.fluidId
&& Objects.equals(this.support, var2.support)
&& Objects.equals(this.matchSelf, var2.matchSelf)
&& this.allowSupportPropagation == var2.allowSupportPropagation
&& this.rotate == var2.rotate
&& Arrays.equals(this.filler, var2.filler);
}
}
@Override
class="kw">public int hashCode() {
int var1 = 1;
var1 = 31 * var1 + Objects.hashCode(this.faceType);
var1 = 31 * var1 + Objects.hashCode(this.selfFaceType);
var1 = 31 * var1 + Objects.hashCode(this.blockSetId);
var1 = 31 * var1 + Integer.hashCode(this.blockTypeId);
var1 = 31 * var1 + Integer.hashCode(this.tagIndex);
var1 = 31 * var1 + Integer.hashCode(this.fluidId);
var1 = 31 * var1 + Objects.hashCode(this.support);
var1 = 31 * var1 + Objects.hashCode(this.matchSelf);
var1 = 31 * var1 + Boolean.hashCode(this.allowSupportPropagation);
var1 = 31 * var1 + Boolean.hashCode(this.rotate);
class="kw">return 31 * var1 + Arrays.hashCode(this.filler);
}
}