ItemBase class
Пакет: com.hypixel.hytale.protocol
Файл: com/hypixel/hytale/protocol/ItemBase.java
Поля (414)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
int |
NULLABLE_BIT_FIELD_SIZE |
|
int |
var1 |
|
ItemBase |
var1 |
|
int |
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
|
var1 |
|
String |
var10 |
|
long |
var10 |
|
long |
var10 |
|
int |
var10 |
|
Map |
var100 |
|
|
var100 |
|
int |
var101 |
|
int |
var102 |
|
long |
var103 |
|
int |
var104 |
|
InteractionConfiguration |
var107 |
|
|
var107 |
|
int |
var109 |
|
String |
var11 |
|
int |
var11 |
|
long |
var11 |
|
int |
var11 |
|
long |
var110 |
|
String |
var111 |
|
|
var111 |
|
int |
var113 |
|
int |
var114 |
|
int[] |
var115 |
|
|
var115 |
|
InteractionType |
var116 |
|
int |
var118 |
|
long |
var119 |
|
int |
var12 |
|
long |
var12 |
|
int |
var12 |
|
int |
var120 |
|
Map |
var122 |
|
|
var122 |
|
InteractionType |
var123 |
|
long |
var125 |
|
int |
var126 |
|
|
var126 |
|
int[] |
var129 |
|
|
var129 |
|
int |
var13 |
|
long |
var13 |
|
int |
var13 |
|
long |
var130 |
|
long |
var131 |
|
int |
var132 |
|
ItemHudUI[] |
var134 |
|
|
var134 |
|
long |
var135 |
|
int |
var136 |
|
|
var136 |
|
ItemBase |
var138 |
|
String |
var139 |
|
ItemAppearanceCondition[] |
var14 |
|
int |
var14 |
|
|
var14 |
|
int |
var14 |
|
int |
var140 |
|
int |
var141 |
|
long |
var142 |
|
int |
var144 |
|
int |
var145 |
|
int |
var146 |
|
int |
var147 |
|
long |
var15 |
|
ItemArmor |
var16 |
|
|
var16 |
|
int |
var17 |
|
int |
var18 |
|
long |
var2 |
|
ReadCursor |
var2 |
|
int |
var2 |
|
ReadCursor |
var2 |
|
ReadCursor |
var2 |
|
ReadCursor |
var2 |
|
int |
var2 |
|
int |
var2 |
|
int |
var2 |
|
int |
var2 |
|
int |
var2 |
|
ReadCursor |
var2 |
|
int |
var2 |
|
ReadCursor |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
byte |
var2 |
|
int |
var2 |
|
Map |
var2 |
|
String |
var20 |
|
|
var20 |
|
int |
var21 |
|
long |
var22 |
|
long |
var23 |
|
long |
var24 |
|
int |
var25 |
|
int |
var26 |
|
long |
var28 |
|
int |
var3 |
|
|
var3 |
|
long |
var3 |
|
int |
var3 |
|
|
var3 |
|
int |
var3 |
|
|
var3 |
|
int |
var3 |
|
|
var3 |
|
long |
var3 |
|
long |
var3 |
|
long |
var3 |
|
long |
var3 |
|
long |
var3 |
|
int |
var3 |
|
|
var3 |
|
long |
var3 |
|
int |
var3 |
|
|
var3 |
|
int |
var3 |
|
byte |
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
int |
var30 |
|
int |
var31 |
|
InteractionType |
var32 |
|
int |
var32 |
|
int |
var33 |
|
int |
var33 |
|
int |
var34 |
|
long |
var35 |
|
int |
var36 |
|
String |
var37 |
|
int |
var38 |
|
int |
var39 |
|
int |
var39 |
|
long |
var4 |
|
long |
var4 |
|
long |
var4 |
|
long |
var4 |
|
long |
var4 |
|
long |
var4 |
|
int |
var4 |
|
int |
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
byte |
var4 |
|
|
var4 |
|
|
var4 |
|
long |
var40 |
|
int |
var42 |
|
int |
var43 |
|
ItemAppearanceCondition[] |
var44 |
|
String |
var46 |
|
|
var46 |
|
int |
var47 |
|
String |
var48 |
|
|
var48 |
|
int |
var49 |
|
int |
var5 |
|
int |
var5 |
|
int |
var5 |
|
int |
var5 |
|
int |
var5 |
|
int |
var5 |
|
int |
var5 |
|
int |
var5 |
|
ReadCursor |
var5 |
|
byte |
var5 |
|
|
var5 |
|
|
var5 |
|
String |
var50 |
|
|
var50 |
|
int |
var51 |
|
String |
var52 |
|
|
var52 |
|
int |
var53 |
|
String |
var54 |
|
|
var54 |
|
int |
var55 |
|
ItemTranslationProperties |
var56 |
|
|
var56 |
|
ItemResourceType[] |
var57 |
|
|
var57 |
|
ItemTool |
var59 |
|
|
var59 |
|
int |
var6 |
|
int |
var6 |
|
int |
var6 |
|
int |
var6 |
|
int |
var6 |
|
Map |
var6 |
|
Map |
var6 |
|
Map |
var6 |
|
Map |
var6 |
|
int |
var6 |
|
int |
var6 |
|
int |
var6 |
|
int |
var6 |
|
String |
var6 |
|
|
var6 |
|
int |
var6 |
|
|
var6 |
|
ItemWeapon |
var60 |
|
|
var60 |
|
ItemUtility |
var61 |
|
|
var61 |
|
BuilderToolState |
var62 |
|
|
var62 |
|
ItemEntityConfig |
var63 |
|
|
var63 |
|
String[] |
var64 |
|
|
var64 |
|
int |
var65 |
|
String |
var67 |
|
|
var67 |
|
int |
var68 |
|
ModelParticle[] |
var69 |
|
|
var69 |
|
int |
var7 |
|
String[] |
var7 |
|
int |
var7 |
|
int |
var7 |
|
int |
var7 |
|
int[] |
var7 |
|
Map |
var7 |
|
int[] |
var7 |
|
int |
var7 |
|
int |
var7 |
|
int |
var7 |
|
int |
var7 |
|
int |
var70 |
|
|
var70 |
|
ModelParticle[] |
var72 |
|
|
var72 |
|
long |
var73 |
|
int |
var74 |
|
|
var74 |
|
ModelTrail[] |
var76 |
|
|
var76 |
|
long |
var77 |
|
int |
var78 |
|
|
var78 |
|
ItemResourceType[] |
var8 |
|
ModelParticle[] |
var8 |
|
ModelParticle[] |
var8 |
|
ModelTrail[] |
var8 |
|
InteractionType |
var8 |
|
InteractionType |
var8 |
|
InteractionType |
var8 |
|
long |
var8 |
|
ItemHudUI[] |
var8 |
|
long |
var8 |
|
int |
var8 |
|
Map |
var80 |
|
|
var80 |
|
int |
var81 |
|
long |
var82 |
|
int |
var83 |
|
Map |
var86 |
|
|
var86 |
|
int |
var87 |
|
int |
var88 |
|
long |
var89 |
|
long |
var9 |
|
int |
var9 |
|
int |
var9 |
|
long |
var9 |
|
int |
var9 |
|
long |
var9 |
|
int |
var9 |
|
int |
var90 |
|
Map |
var93 |
|
|
var93 |
|
int |
var94 |
|
int |
var95 |
|
long |
var96 |
|
int |
var97 |
Методы (393)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
ItemBase |
cloneItemBase clone() |
public |
int |
computeSizeint computeSize() |
|
|
for for(int var9 = 0; var9 < var6; var9++) |
|
|
for for(int var8 = 0; var8 < var5; var8++) |
|
|
for for(int var9 = 0; var9 < var6; var9++) |
|
|
for for(int var9 = 0; var9 < var6; var9++) |
|
|
for for(int var9 = 0; var9 < var6; var9++) |
|
|
for for(int var7 = 0; var7 < var5; var7++) |
|
|
for for(int var7 = 0; var7 < var5; var7++) |
|
|
for for(int var7 = 0; var7 < var5; var7++) |
|
|
for for(int var7 = 0; var7 < var5; var7++) |
|
|
for for(int var8 = 0; var8 < var6; var8++) |
|
|
for for(int var15 = 0; var15 < var12; var15++) |
|
|
for for(int var9 = 0; var9 < var6; var9++) |
|
|
for for(int var19 = 0; var19 < var17; var19++) |
|
|
for for(int var27 = 0; var27 < var25; var27++) |
|
|
for for(int var29 = 0; var29 < var81; var29++) |
|
|
for for(int var30 = 0; var30 < var88; var30++) |
|
|
for for(int var31 = 0; var31 < var95; var31++) |
|
|
for for(int var108 = 0; var108 < var102; var108++) |
|
|
for for(int var112 = 0; var112 < var109; var112++) |
|
|
for for(int var117 = 0; var117 < var113; var117++) |
|
|
for for(int var124 = 0; var124 < var118; var124++) |
|
|
for for(int var143 = 0; var143 < var141; var143++) |
|
|
for for(int var45 = 0; var45 < var42; var45++) |
|
|
for for(int var41 = 0; var41 < var146; var41++) |
|
|
for for(int var8 = 0; var8 < this.resourceTypes.length; var8++) |
|
|
for for(int var40 = 0; var40 < this.categories.length; var40++) |
|
|
for for(int var41 = 0; var41 < this.particles.length; var41++) |
|
|
for for(int var42 = 0; var42 < this.firstPersonParticles.length; var42++) |
|
|
for for(int var43 = 0; var43 < this.trails.length; var43++) |
|
|
for for(int var49 = 0; var49 < this.hudUI.length; var49++) |
|
|
for for(ItemResourceType var6 : this.resourceTypes) |
|
|
for for(String var36 : this.categories) |
|
|
for for(ModelParticle var37 : this.particles) |
|
|
for for(ModelParticle var38 : this.firstPersonParticles) |
|
|
for for(ModelTrail var39 : this.trails) |
|
|
for for(ItemHudUI var40 : this.hudUI) |
abstract |
return |
getAnimationreturn getAnimation(var0, 0) |
abstract |
return |
getArmorreturn getArmor(var0, 0) |
static |
int |
getBlockIdint getBlockId(MemorySegment var0) |
static |
int |
getBlockIdint getBlockId(MemorySegment var0, int var1) |
abstract |
return |
getBlockIdreturn getBlockId(var0, 0) |
abstract |
return |
getBlockSelectorToolreturn getBlockSelectorTool(var0, 0) |
abstract |
return |
getBuilderToolDatareturn getBuilderToolData(var0, 0) |
abstract |
return |
getCarryHudInputBindingsreturn getCarryHudInputBindings(var0, 0) |
abstract |
return |
getCarryInteractionsreturn getCarryInteractions(var0, 0) |
abstract |
return |
getCategoriesreturn getCategories(var0, 0) |
static |
boolean |
getClipsGeometryboolean getClipsGeometry(MemorySegment var0) |
static |
boolean |
getClipsGeometryboolean getClipsGeometry(MemorySegment var0, int var1) |
abstract |
return |
getClipsGeometryreturn getClipsGeometry(var0, 0) |
static |
boolean |
getConsumableboolean getConsumable(MemorySegment var0) |
static |
boolean |
getConsumableboolean getConsumable(MemorySegment var0, int var1) |
abstract |
return |
getConsumablereturn getConsumable(var0, 0) |
abstract |
return |
getDisplayEntityStatsHUDreturn getDisplayEntityStatsHUD(var0, 0) |
abstract |
return |
getDroppedItemAnimationreturn getDroppedItemAnimation(var0, 0) |
static |
double |
getDurabilitydouble getDurability(MemorySegment var0) |
static |
double |
getDurabilitydouble getDurability(MemorySegment var0, int var1) |
abstract |
return |
getDurabilityreturn getDurability(var0, 0) |
abstract |
return |
getFirstPersonParticlesreturn getFirstPersonParticles(var0, 0) |
abstract |
return |
getGliderConfigreturn getGliderConfig(var0, 0) |
abstract |
return |
getHudUIreturn getHudUI(var0, 0) |
abstract |
return |
getIconreturn getIcon(var0, 0) |
abstract |
return |
getIconPropertiesreturn getIconProperties(var0, 0) |
abstract |
return |
getIdreturn getId(var0, 0) |
abstract |
return |
getInteractionConfigreturn getInteractionConfig(var0, 0) |
abstract |
return |
getInteractionVarsreturn getInteractionVars(var0, 0) |
abstract |
return |
getInteractionsreturn getInteractions(var0, 0) |
abstract |
return |
getItemAppearanceConditionsreturn getItemAppearanceConditions(var0, 0) |
abstract |
return |
getItemEntityreturn getItemEntity(var0, 0) |
static |
int |
getItemLevelint getItemLevel(MemorySegment var0) |
static |
int |
getItemLevelint getItemLevel(MemorySegment var0, int var1) |
abstract |
return |
getItemLevelreturn getItemLevel(var0, 0) |
static |
int |
getItemSoundSetIndexint getItemSoundSetIndex(MemorySegment var0) |
static |
int |
getItemSoundSetIndexint getItemSoundSetIndex(MemorySegment var0, int var1) |
abstract |
return |
getItemSoundSetIndexreturn getItemSoundSetIndex(var0, 0) |
abstract |
return |
getLightreturn getLight(var0, 0) |
static |
int |
getMaxStackint getMaxStack(MemorySegment var0) |
static |
int |
getMaxStackint getMaxStack(MemorySegment var0, int var1) |
abstract |
return |
getMaxStackreturn getMaxStack(var0, 0) |
abstract |
return |
getModelreturn getModel(var0, 0) |
abstract |
return |
getParticlesreturn getParticles(var0, 0) |
abstract |
return |
getPlayerAnimationsIdreturn getPlayerAnimationsId(var0, 0) |
abstract |
return |
getPullbackConfigreturn getPullbackConfig(var0, 0) |
static |
int |
getQualityIndexint getQualityIndex(MemorySegment var0) |
static |
int |
getQualityIndexint getQualityIndex(MemorySegment var0, int var1) |
abstract |
return |
getQualityIndexreturn getQualityIndex(var0, 0) |
static |
boolean |
getRenderDeployablePreviewboolean getRenderDeployablePreview(MemorySegment var0) |
static |
boolean |
getRenderDeployablePreviewboolean getRenderDeployablePreview(MemorySegment var0, int var1) |
abstract |
return |
getRenderDeployablePreviewreturn getRenderDeployablePreview(var0, 0) |
abstract |
return |
getResourceTypesreturn getResourceTypes(var0, 0) |
static |
int |
getReticleIndexint getReticleIndex(MemorySegment var0) |
static |
int |
getReticleIndexint getReticleIndex(MemorySegment var0, int var1) |
abstract |
return |
getReticleIndexreturn getReticleIndex(var0, 0) |
static |
float |
getScalefloat getScale(MemorySegment var0) |
static |
float |
getScalefloat getScale(MemorySegment var0, int var1) |
abstract |
return |
getScalereturn getScale(var0, 0) |
abstract |
return |
getSetreturn getSet(var0, 0) |
static |
int |
getSoundEventIndexint getSoundEventIndex(MemorySegment var0) |
static |
int |
getSoundEventIndexint getSoundEventIndex(MemorySegment var0, int var1) |
abstract |
return |
getSoundEventIndexreturn getSoundEventIndex(var0, 0) |
abstract |
return |
getSubCategoryreturn getSubCategory(var0, 0) |
abstract |
return |
getTagIndexesreturn getTagIndexes(var0, 0) |
abstract |
return |
getTexturereturn getTexture(var0, 0) |
abstract |
return |
getToolreturn getTool(var0, 0) |
abstract |
return |
getTrailsreturn getTrails(var0, 0) |
abstract |
return |
getTranslationPropertiesreturn getTranslationProperties(var0, 0) |
static |
boolean |
getUsePlayerAnimationsboolean getUsePlayerAnimations(MemorySegment var0) |
static |
boolean |
getUsePlayerAnimationsboolean getUsePlayerAnimations(MemorySegment var0, int var1) |
abstract |
return |
getUsePlayerAnimationsreturn getUsePlayerAnimations(var0, 0) |
abstract |
return |
getUtilityreturn getUtility(var0, 0) |
static |
int |
getValidatedOffsetint getValidatedOffset(MemorySegment var0, int var1, int var2, int var3, String var4) |
static |
boolean |
getVariantboolean getVariant(MemorySegment var0) |
static |
boolean |
getVariantboolean getVariant(MemorySegment var0, int var1) |
abstract |
return |
getVariantreturn getVariant(var0, 0) |
abstract |
return |
getWeaponreturn getWeapon(var0, 0) |
static |
boolean |
hasAnimationboolean hasAnimation(MemorySegment var0, int var1) |
static |
boolean |
hasArmorboolean hasArmor(MemorySegment var0, int var1) |
static |
boolean |
hasBlockSelectorToolboolean hasBlockSelectorTool(MemorySegment var0, int var1) |
static |
boolean |
hasBuilderToolDataboolean hasBuilderToolData(MemorySegment var0, int var1) |
static |
boolean |
hasCarryHudInputBindingsboolean hasCarryHudInputBindings(MemorySegment var0, int var1) |
static |
boolean |
hasCarryInteractionsboolean hasCarryInteractions(MemorySegment var0, int var1) |
static |
boolean |
hasCategoriesboolean hasCategories(MemorySegment var0, int var1) |
static |
boolean |
hasDisplayEntityStatsHUDboolean hasDisplayEntityStatsHUD(MemorySegment var0, int var1) |
static |
boolean |
hasDroppedItemAnimationboolean hasDroppedItemAnimation(MemorySegment var0, int var1) |
static |
boolean |
hasFirstPersonParticlesboolean hasFirstPersonParticles(MemorySegment var0, int var1) |
static |
boolean |
hasGliderConfigboolean hasGliderConfig(MemorySegment var0, int var1) |
static |
boolean |
hasHudUIboolean hasHudUI(MemorySegment var0, int var1) |
static |
boolean |
hasIconboolean hasIcon(MemorySegment var0, int var1) |
static |
boolean |
hasIconPropertiesboolean hasIconProperties(MemorySegment var0, int var1) |
static |
boolean |
hasIdboolean hasId(MemorySegment var0, int var1) |
static |
boolean |
hasInteractionConfigboolean hasInteractionConfig(MemorySegment var0, int var1) |
static |
boolean |
hasInteractionVarsboolean hasInteractionVars(MemorySegment var0, int var1) |
static |
boolean |
hasInteractionsboolean hasInteractions(MemorySegment var0, int var1) |
static |
boolean |
hasItemAppearanceConditionsboolean hasItemAppearanceConditions(MemorySegment var0, int var1) |
static |
boolean |
hasItemEntityboolean hasItemEntity(MemorySegment var0, int var1) |
static |
boolean |
hasLightboolean hasLight(MemorySegment var0, int var1) |
static |
boolean |
hasModelboolean hasModel(MemorySegment var0, int var1) |
static |
boolean |
hasParticlesboolean hasParticles(MemorySegment var0, int var1) |
static |
boolean |
hasPlayerAnimationsIdboolean hasPlayerAnimationsId(MemorySegment var0, int var1) |
static |
boolean |
hasPullbackConfigboolean hasPullbackConfig(MemorySegment var0, int var1) |
static |
boolean |
hasResourceTypesboolean hasResourceTypes(MemorySegment var0, int var1) |
static |
boolean |
hasSetboolean hasSet(MemorySegment var0, int var1) |
static |
boolean |
hasSubCategoryboolean hasSubCategory(MemorySegment var0, int var1) |
static |
boolean |
hasTagIndexesboolean hasTagIndexes(MemorySegment var0, int var1) |
static |
boolean |
hasTextureboolean hasTexture(MemorySegment var0, int var1) |
static |
boolean |
hasToolboolean hasTool(MemorySegment var0, int var1) |
static |
boolean |
hasTrailsboolean hasTrails(MemorySegment var0, int var1) |
static |
boolean |
hasTranslationPropertiesboolean hasTranslationProperties(MemorySegment var0, int var1) |
static |
boolean |
hasUtilityboolean hasUtility(MemorySegment var0, int var1) |
static |
boolean |
hasWeaponboolean hasWeapon(MemorySegment var0, int var1) |
|
|
if if(var1 < 0) |
|
|
if if(var4 == -1L) |
|
|
if if(var6 > 4096000) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var4 == -1L) |
|
|
if if(var6 > 4096000) |
|
|
if if(var4 == -1L) |
|
|
if if(var6 > 4096000) |
|
|
if if(var4 == -1L) |
|
|
if if(var6 > 4096000) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var4 == -1L) |
|
|
if if(var6 > 4096000) |
|
|
if if(var10 == -1L) |
|
|
if if(var12 > 4096000) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var4 == -1L) |
|
|
if if(var6 > 4096000) |
|
|
if if(var4 != var2) |
|
|
if if(var15 == -1L) |
|
|
if if(var17 > 4096000) |
|
|
if if(var23 == -1L) |
|
|
if if(var25 > 4096000) |
|
|
if if(var73 == -1L) |
|
|
if if(var81 > 4096000) |
|
|
if if(var77 == -1L) |
|
|
if if(var88 > 4096000) |
|
|
if if(var82 == -1L) |
|
|
if if(var95 > 4096000) |
|
|
if if(var89 == -1L) |
|
|
if if(var102 > 4096000) |
|
|
if if(var96 == -1L) |
|
|
if if(var109 > 4096000) |
|
|
if if(var103 == -1L) |
|
|
if if(var113 > 4096000) |
|
|
if if(var110 == -1L) |
|
|
if if(var118 > 4096000) |
|
|
if if(var125 == -1L) |
|
|
if if(var36 > 4096000) |
|
|
if if(var131 == -1L) |
|
|
if if(var141 > 4096000) |
|
|
if if(var40 == -1L) |
|
|
if if(var42 > 4096000) |
|
|
if if(var135 == -1L) |
|
|
if if(var144 > 4096000) |
|
|
if if(var142 == -1L) |
|
|
if if(var146 > 4096000) |
|
|
if if(var2 != null) |
|
|
if if(this.iconProperties != null) |
|
|
if if(this.gliderConfig != null) |
|
|
if if(this.blockSelectorTool != null) |
|
|
if if(this.light != null) |
|
|
if if(this.pullbackConfig != null) |
|
|
if if(this.id != null) |
|
|
if if(this.model != null) |
|
|
if if(this.texture != null) |
|
|
if if(this.animation != null) |
|
|
if if(this.playerAnimationsId != null) |
|
|
if if(this.icon != null) |
|
|
if if(this.translationProperties != null) |
|
|
if if(this.resourceTypes != null) |
|
|
if if(this.tool != null) |
|
|
if if(this.weapon != null) |
|
|
if if(this.armor != null) |
|
|
if if(this.utility != null) |
|
|
if if(this.builderToolData != null) |
|
|
if if(this.itemEntity != null) |
|
|
if if(this.set != null) |
|
|
if if(this.categories != null) |
|
|
if if(this.subCategory != null) |
|
|
if if(this.particles != null) |
|
|
if if(this.firstPersonParticles != null) |
|
|
if if(this.trails != null) |
|
|
if if(this.interactions != null) |
|
|
if if(this.carryInteractions != null) |
|
|
if if(this.carryHudInputBindings != null) |
|
|
if if(this.interactionVars != null) |
|
|
if if(this.interactionConfig != null) |
|
|
if if(this.droppedItemAnimation != null) |
|
|
if if(this.tagIndexes != null) |
|
|
if if(this.itemAppearanceConditions != null) |
|
|
if if(this.displayEntityStatsHUD != null) |
|
|
if if(this.hudUI != null) |
|
|
if if(this.iconProperties != null) |
|
|
if if(this.consumable) |
|
|
if if(this.variant) |
|
|
if if(this.gliderConfig != null) |
|
|
if if(this.blockSelectorTool != null) |
|
|
if if(this.light != null) |
|
|
if if(this.pullbackConfig != null) |
|
|
if if(this.clipsGeometry) |
|
|
if if(this.renderDeployablePreview) |
|
|
if if(this.id != null) |
|
|
if if(this.model != null) |
|
|
if if(this.texture != null) |
|
|
if if(this.animation != null) |
|
|
if if(this.playerAnimationsId != null) |
|
|
if if(this.icon != null) |
|
|
if if(this.translationProperties != null) |
|
|
if if(this.resourceTypes != null) |
|
|
if if(this.resourceTypes.length > 4096000) |
|
|
if if(this.tool != null) |
|
|
if if(this.weapon != null) |
|
|
if if(this.armor != null) |
|
|
if if(this.utility != null) |
|
|
if if(this.builderToolData != null) |
|
|
if if(this.itemEntity != null) |
|
|
if if(this.set != null) |
|
|
if if(this.categories != null) |
|
|
if if(this.categories.length > 4096000) |
|
|
if if(this.subCategory != null) |
|
|
if if(this.particles != null) |
|
|
if if(this.particles.length > 4096000) |
|
|
if if(this.firstPersonParticles != null) |
|
|
if if(this.firstPersonParticles.length > 4096000) |
|
|
if if(this.trails != null) |
|
|
if if(this.trails.length > 4096000) |
|
|
if if(this.interactions != null) |
|
|
if if(this.carryInteractions != null) |
|
|
if if(this.carryHudInputBindings != null) |
|
|
if if(this.interactionVars != null) |
|
|
if if(this.interactionConfig != null) |
|
|
if if(this.droppedItemAnimation != null) |
|
|
if if(this.tagIndexes != null) |
|
|
if if(this.tagIndexes.length > 4096000) |
|
|
if if(this.itemAppearanceConditions != null) |
|
|
if if(this.displayEntityStatsHUD != null) |
|
|
if if(this.displayEntityStatsHUD.length > 4096000) |
|
|
if if(this.hudUI != null) |
|
|
if if(this.hudUI.length > 4096000) |
|
|
if if(this.id != null) |
|
|
if if(this.model != null) |
|
|
if if(this.texture != null) |
|
|
if if(this.animation != null) |
|
|
if if(this.playerAnimationsId != null) |
|
|
if if(this.icon != null) |
|
|
if if(this.translationProperties != null) |
|
|
if if(this.resourceTypes != null) |
|
|
if if(this.tool != null) |
|
|
if if(this.weapon != null) |
|
|
if if(this.armor != null) |
|
|
if if(this.utility != null) |
|
|
if if(this.builderToolData != null) |
|
|
if if(this.itemEntity != null) |
|
|
if if(this.set != null) |
|
|
if if(this.categories != null) |
|
|
if if(this.subCategory != null) |
|
|
if if(this.particles != null) |
|
|
if if(this.firstPersonParticles != null) |
|
|
if if(this.trails != null) |
|
|
if if(this.interactions != null) |
|
|
if if(this.carryInteractions != null) |
|
|
if if(this.carryHudInputBindings != null) |
|
|
if if(this.interactionVars != null) |
|
|
if if(this.interactionConfig != null) |
|
|
if if(this.droppedItemAnimation != null) |
|
|
if if(this.tagIndexes != null) |
|
|
if if(this.itemAppearanceConditions != null) |
|
|
if if(this.displayEntityStatsHUD != null) |
|
|
if if(this.hudUI != null) |
|
|
if if(this.itemAppearanceConditions != 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 + 146, var4, "Id") |
abstract |
|
requireSlot requireSlot(var0, var1 + 146, -1, "Id") |
abstract |
|
requireSlot requireSlot(var0, var1 + 150, var4, "Model") |
abstract |
|
requireSlot requireSlot(var0, var1 + 150, -1, "Model") |
abstract |
|
requireSlot requireSlot(var0, var1 + 154, var4, "Texture") |
abstract |
|
requireSlot requireSlot(var0, var1 + 154, -1, "Texture") |
abstract |
|
requireSlot requireSlot(var0, var1 + 158, var4, "Animation") |
abstract |
|
requireSlot requireSlot(var0, var1 + 158, -1, "Animation") |
abstract |
|
requireSlot requireSlot(var0, var1 + 162, var4, "PlayerAnimationsId") |
abstract |
|
requireSlot requireSlot(var0, var1 + 162, -1, "PlayerAnimationsId") |
abstract |
|
requireSlot requireSlot(var0, var1 + 166, var4, "Icon") |
abstract |
|
requireSlot requireSlot(var0, var1 + 166, -1, "Icon") |
abstract |
|
requireSlot requireSlot(var0, var1 + 170, var4, "TranslationProperties") |
abstract |
|
requireSlot requireSlot(var0, var1 + 170, -1, "TranslationProperties") |
abstract |
|
requireSlot requireSlot(var0, var1 + 174, var4, "ResourceTypes") |
abstract |
|
requireSlot requireSlot(var0, var1 + 174, -1, "ResourceTypes") |
abstract |
|
requireSlot requireSlot(var0, var1 + 178, var4, "Tool") |
abstract |
|
requireSlot requireSlot(var0, var1 + 178, -1, "Tool") |
abstract |
|
requireSlot requireSlot(var0, var1 + 182, var4, "Weapon") |
abstract |
|
requireSlot requireSlot(var0, var1 + 182, -1, "Weapon") |
abstract |
|
requireSlot requireSlot(var0, var1 + 186, var4, "Armor") |
abstract |
|
requireSlot requireSlot(var0, var1 + 186, -1, "Armor") |
abstract |
|
requireSlot requireSlot(var0, var1 + 190, var4, "Utility") |
abstract |
|
requireSlot requireSlot(var0, var1 + 190, -1, "Utility") |
abstract |
|
requireSlot requireSlot(var0, var1 + 194, var4, "BuilderToolData") |
abstract |
|
requireSlot requireSlot(var0, var1 + 194, -1, "BuilderToolData") |
abstract |
|
requireSlot requireSlot(var0, var1 + 198, var4, "ItemEntity") |
abstract |
|
requireSlot requireSlot(var0, var1 + 198, -1, "ItemEntity") |
abstract |
|
requireSlot requireSlot(var0, var1 + 202, var4, "Set") |
abstract |
|
requireSlot requireSlot(var0, var1 + 202, -1, "Set") |
abstract |
|
requireSlot requireSlot(var0, var1 + 206, var4, "Categories") |
abstract |
|
requireSlot requireSlot(var0, var1 + 206, -1, "Categories") |
abstract |
|
requireSlot requireSlot(var0, var1 + 210, var4, "SubCategory") |
abstract |
|
requireSlot requireSlot(var0, var1 + 210, -1, "SubCategory") |
abstract |
|
requireSlot requireSlot(var0, var1 + 214, var4, "Particles") |
abstract |
|
requireSlot requireSlot(var0, var1 + 214, -1, "Particles") |
abstract |
|
requireSlot requireSlot(var0, var1 + 218, var4, "FirstPersonParticles") |
abstract |
|
requireSlot requireSlot(var0, var1 + 218, -1, "FirstPersonParticles") |
abstract |
|
requireSlot requireSlot(var0, var1 + 222, var4, "Trails") |
abstract |
|
requireSlot requireSlot(var0, var1 + 222, -1, "Trails") |
abstract |
|
requireSlot requireSlot(var0, var1 + 226, var4, "Interactions") |
abstract |
|
requireSlot requireSlot(var0, var1 + 226, -1, "Interactions") |
abstract |
|
requireSlot requireSlot(var0, var1 + 230, var4, "CarryInteractions") |
abstract |
|
requireSlot requireSlot(var0, var1 + 230, -1, "CarryInteractions") |
abstract |
|
requireSlot requireSlot(var0, var1 + 234, var4, "CarryHudInputBindings") |
abstract |
|
requireSlot requireSlot(var0, var1 + 234, -1, "CarryHudInputBindings") |
abstract |
|
requireSlot requireSlot(var0, var1 + 238, var4, "InteractionVars") |
abstract |
|
requireSlot requireSlot(var0, var1 + 238, -1, "InteractionVars") |
abstract |
|
requireSlot requireSlot(var0, var1 + 242, var4, "InteractionConfig") |
abstract |
|
requireSlot requireSlot(var0, var1 + 242, -1, "InteractionConfig") |
abstract |
|
requireSlot requireSlot(var0, var1 + 246, var4, "DroppedItemAnimation") |
abstract |
|
requireSlot requireSlot(var0, var1 + 246, -1, "DroppedItemAnimation") |
abstract |
|
requireSlot requireSlot(var0, var1 + 250, var4, "TagIndexes") |
abstract |
|
requireSlot requireSlot(var0, var1 + 250, -1, "TagIndexes") |
abstract |
|
requireSlot requireSlot(var0, var1 + 254, var4, "ItemAppearanceConditions") |
abstract |
|
requireSlot requireSlot(var0, var1 + 254, -1, "ItemAppearanceConditions") |
abstract |
|
requireSlot requireSlot(var0, var1 + 258, var4, "DisplayEntityStatsHUD") |
abstract |
|
requireSlot requireSlot(var0, var1 + 258, -1, "DisplayEntityStatsHUD") |
abstract |
|
requireSlot requireSlot(var0, var1 + 262, var4, "HudUI") |
abstract |
|
requireSlot requireSlot(var0, var1 + 262, -1, "HudUI") |
public |
int |
serializeint serialize(@Nonnull MemorySegment var1, int var2) |
static |
ItemBase |
toObjectItemBase toObject(MemorySegment var0) |
static |
ItemBase |
toObjectItemBase toObject(MemorySegment var0, int var1) |
static |
ItemBase |
toObjectItemBase 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 com.hypixel.hytale.protocol.packets.buildertools.BuilderToolState;
class="kw">import java.lang.foreign.MemorySegment;
class="kw">import java.util.Arrays;
class="kw">import java.util.HashMap;
class="kw">import java.util.Map;
class="kw">import java.util.Objects;
class="kw">import java.util.Map.Entry;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class ItemBase {
class="kw">public class="kw">static class="kw">final int NULLABLE_BIT_FIELD_SIZE = 5;
class="kw">public class="kw">static class="kw">final int FIXED_BLOCK_SIZE = 146;
class="kw">public class="kw">static class="kw">final int VARIABLE_FIELD_COUNT = 30;
class="kw">public class="kw">static class="kw">final int VARIABLE_BLOCK_START = 266;
class="kw">public class="kw">static class="kw">final int MAX_SIZE = 1677721600;
@Nullable
class="kw">public String id;
@Nullable
class="kw">public String model;
class="kw">public float scale;
@Nullable
class="kw">public String texture;
@Nullable
class="kw">public String animation;
@Nullable
class="kw">public String playerAnimationsId;
class="kw">public boolean usePlayerAnimations;
class="kw">public int maxStack;
class="kw">public int reticleIndex;
@Nullable
class="kw">public String icon;
@Nullable
class="kw">public AssetIconProperties iconProperties;
@Nullable
class="kw">public ItemTranslationProperties translationProperties;
class="kw">public int itemLevel;
class="kw">public int qualityIndex;
@Nullable
class="kw">public ItemResourceType[] resourceTypes;
class="kw">public boolean consumable;
class="kw">public boolean variant;
class="kw">public int blockId;
@Nullable
class="kw">public ItemTool tool;
@Nullable
class="kw">public ItemWeapon weapon;
@Nullable
class="kw">public ItemArmor armor;
@Nullable
class="kw">public ItemGlider gliderConfig;
@Nullable
class="kw">public ItemUtility utility;
@Nullable
class="kw">public BlockSelectorToolData blockSelectorTool;
@Nullable
class="kw">public BuilderToolState builderToolData;
@Nullable
class="kw">public ItemEntityConfig itemEntity;
@Nullable
class="kw">public String set;
@Nullable
class="kw">public String[] categories;
@Nullable
class="kw">public String subCategory;
@Nullable
class="kw">public ModelParticle[] particles;
@Nullable
class="kw">public ModelParticle[] firstPersonParticles;
@Nullable
class="kw">public ModelTrail[] trails;
@Nullable
class="kw">public ColorLight light;
class="kw">public double durability;
class="kw">public int soundEventIndex;
class="kw">public int itemSoundSetIndex;
@Nullable
class="kw">public Map<InteractionType, Integer> interactions;
@Nullable
class="kw">public Map<InteractionType, Integer> carryInteractions;
@Nullable
class="kw">public Map<InteractionType, String> carryHudInputBindings;
@Nullable
class="kw">public Map<String, Integer> interactionVars;
@Nullable
class="kw">public InteractionConfiguration interactionConfig;
@Nullable
class="kw">public String droppedItemAnimation;
@Nullable
class="kw">public int[] tagIndexes;
@Nullable
class="kw">public Map<Integer, ItemAppearanceCondition[]> itemAppearanceConditions;
@Nullable
class="kw">public int[] displayEntityStatsHUD;
@Nullable
class="kw">public ItemPullbackConfiguration pullbackConfig;
class="kw">public boolean clipsGeometry;
class="kw">public boolean renderDeployablePreview;
@Nullable
class="kw">public ItemHudUI[] hudUI;
class="kw">public ItemBase() {
}
class="kw">public ItemBase(
@Nullable String var1,
@Nullable String var2,
float var3,
@Nullable String var4,
@Nullable String var5,
@Nullable String var6,
boolean var7,
int var8,
int var9,
@Nullable String var10,
@Nullable AssetIconProperties var11,
@Nullable ItemTranslationProperties var12,
int var13,
int var14,
@Nullable ItemResourceType[] var15,
boolean var16,
boolean var17,
int var18,
@Nullable ItemTool var19,
@Nullable ItemWeapon var20,
@Nullable ItemArmor var21,
@Nullable ItemGlider var22,
@Nullable ItemUtility var23,
@Nullable BlockSelectorToolData var24,
@Nullable BuilderToolState var25,
@Nullable ItemEntityConfig var26,
@Nullable String var27,
@Nullable String[] var28,
@Nullable String var29,
@Nullable ModelParticle[] var30,
@Nullable ModelParticle[] var31,
@Nullable ModelTrail[] var32,
@Nullable ColorLight var33,
double var34,
int var36,
int var37,
@Nullable Map<InteractionType, Integer> var38,
@Nullable Map<InteractionType, Integer> var39,
@Nullable Map<InteractionType, String> var40,
@Nullable Map<String, Integer> var41,
@Nullable InteractionConfiguration var42,
@Nullable String var43,
@Nullable int[] var44,
@Nullable Map<Integer, ItemAppearanceCondition[]> var45,
@Nullable int[] var46,
@Nullable ItemPullbackConfiguration var47,
boolean var48,
boolean var49,
@Nullable ItemHudUI[] var50
) {
this.id = var1;
this.model = var2;
this.scale = var3;
this.texture = var4;
this.animation = var5;
this.playerAnimationsId = var6;
this.usePlayerAnimations = var7;
this.maxStack = var8;
this.reticleIndex = var9;
this.icon = var10;
this.iconProperties = var11;
this.translationProperties = var12;
this.itemLevel = var13;
this.qualityIndex = var14;
this.resourceTypes = var15;
this.consumable = var16;
this.variant = var17;
this.blockId = var18;
this.tool = var19;
this.weapon = var20;
this.armor = var21;
this.gliderConfig = var22;
this.utility = var23;
this.blockSelectorTool = var24;
this.builderToolData = var25;
this.itemEntity = var26;
this.set = var27;
this.categories = var28;
this.subCategory = var29;
this.particles = var30;
this.firstPersonParticles = var31;
this.trails = var32;
this.light = var33;
this.durability = var34;
this.soundEventIndex = var36;
this.itemSoundSetIndex = var37;
this.interactions = var38;
this.carryInteractions = var39;
this.carryHudInputBindings = var40;
this.interactionVars = var41;
this.interactionConfig = var42;
this.droppedItemAnimation = var43;
this.tagIndexes = var44;
this.itemAppearanceConditions = var45;
this.displayEntityStatsHUD = var46;
this.pullbackConfig = var47;
this.clipsGeometry = var48;
this.renderDeployablePreview = var49;
this.hudUI = var50;
}
class="kw">public ItemBase(@Nonnull ItemBase var1) {
this.id = var1.id;
this.model = var1.model;
this.scale = var1.scale;
this.texture = var1.texture;
this.animation = var1.animation;
this.playerAnimationsId = var1.playerAnimationsId;
this.usePlayerAnimations = var1.usePlayerAnimations;
this.maxStack = var1.maxStack;
this.reticleIndex = var1.reticleIndex;
this.icon = var1.icon;
this.iconProperties = var1.iconProperties;
this.translationProperties = var1.translationProperties;
this.itemLevel = var1.itemLevel;
this.qualityIndex = var1.qualityIndex;
this.resourceTypes = var1.resourceTypes;
this.consumable = var1.consumable;
this.variant = var1.variant;
this.blockId = var1.blockId;
this.tool = var1.tool;
this.weapon = var1.weapon;
this.armor = var1.armor;
this.gliderConfig = var1.gliderConfig;
this.utility = var1.utility;
this.blockSelectorTool = var1.blockSelectorTool;
this.builderToolData = var1.builderToolData;
this.itemEntity = var1.itemEntity;
this.set = var1.set;
this.categories = var1.categories;
this.subCategory = var1.subCategory;
this.particles = var1.particles;
this.firstPersonParticles = var1.firstPersonParticles;
this.trails = var1.trails;
this.light = var1.light;
this.durability = var1.durability;
this.soundEventIndex = var1.soundEventIndex;
this.itemSoundSetIndex = var1.itemSoundSetIndex;
this.interactions = var1.interactions;
this.carryInteractions = var1.carryInteractions;
this.carryHudInputBindings = var1.carryHudInputBindings;
this.interactionVars = var1.interactionVars;
this.interactionConfig = var1.interactionConfig;
this.droppedItemAnimation = var1.droppedItemAnimation;
this.tagIndexes = var1.tagIndexes;
this.itemAppearanceConditions = var1.itemAppearanceConditions;
this.displayEntityStatsHUD = var1.displayEntityStatsHUD;
this.pullbackConfig = var1.pullbackConfig;
this.clipsGeometry = var1.clipsGeometry;
this.renderDeployablePreview = var1.renderDeployablePreview;
this.hudUI = var1.hudUI;
}
class="kw">public class="kw">static void requireBounds(MemorySegment var0, int var1) {
if (var1 < 0) {
throw ProtocolException.invalidOffset("ItemBase", var1, (int)var0.byteSize());
}
long var2 = var1 + 266L;
if (var2 > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("ItemBase", (int)Math.min(var2, 2147483647L), (int)var0.byteSize());
}
}
@Nullable
class="kw">public class="kw">static String getId(MemorySegment var0) {
class="kw">return getId(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getId(MemorySegment var0, int var1) {
class="kw">return hasId(var0, var1) ? PacketIO.readVarString("Id", var0, var1 + getValidatedOffset(var0, var1, 146, 266, "Id"), 4096000) : null;
}
@Nullable
class="kw">public class="kw">static String getModel(MemorySegment var0) {
class="kw">return getModel(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getModel(MemorySegment var0, int var1) {
class="kw">return hasModel(var0, var1) ? PacketIO.readVarString("Model", var0, var1 + getValidatedOffset(var0, var1, 150, 266, "Model"), 4096000) : null;
}
class="kw">public class="kw">static float getScale(MemorySegment var0) {
class="kw">return getScale(var0, 0);
}
class="kw">public class="kw">static float getScale(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 5), "Scale");
}
@Nullable
class="kw">public class="kw">static String getTexture(MemorySegment var0) {
class="kw">return getTexture(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getTexture(MemorySegment var0, int var1) {
class="kw">return hasTexture(var0, var1) ? PacketIO.readVarString("Texture", var0, var1 + getValidatedOffset(var0, var1, 154, 266, "Texture"), 4096000) : null;
}
@Nullable
class="kw">public class="kw">static String getAnimation(MemorySegment var0) {
class="kw">return getAnimation(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getAnimation(MemorySegment var0, int var1) {
class="kw">return hasAnimation(var0, var1) ? PacketIO.readVarString("Animation", var0, var1 + getValidatedOffset(var0, var1, 158, 266, "Animation"), 4096000) : null;
}
@Nullable
class="kw">public class="kw">static String getPlayerAnimationsId(MemorySegment var0) {
class="kw">return getPlayerAnimationsId(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getPlayerAnimationsId(MemorySegment var0, int var1) {
class="kw">return hasPlayerAnimationsId(var0, var1)
? PacketIO.readVarString("PlayerAnimationsId", var0, var1 + getValidatedOffset(var0, var1, 162, 266, "PlayerAnimationsId"), 4096000)
: null;
}
class="kw">public class="kw">static boolean getUsePlayerAnimations(MemorySegment var0) {
class="kw">return getUsePlayerAnimations(var0, 0);
}
class="kw">public class="kw">static boolean getUsePlayerAnimations(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_BOOL, var1 + 9);
}
class="kw">public class="kw">static int getMaxStack(MemorySegment var0) {
class="kw">return getMaxStack(var0, 0);
}
class="kw">public class="kw">static int getMaxStack(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 10);
}
class="kw">public class="kw">static int getReticleIndex(MemorySegment var0) {
class="kw">return getReticleIndex(var0, 0);
}
class="kw">public class="kw">static int getReticleIndex(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 14);
}
@Nullable
class="kw">public class="kw">static String getIcon(MemorySegment var0) {
class="kw">return getIcon(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getIcon(MemorySegment var0, int var1) {
class="kw">return hasIcon(var0, var1) ? PacketIO.readVarString("Icon", var0, var1 + getValidatedOffset(var0, var1, 166, 266, "Icon"), 4096000) : null;
}
@Nullable
class="kw">public class="kw">static AssetIconProperties getIconProperties(MemorySegment var0) {
class="kw">return getIconProperties(var0, 0);
}
@Nullable
class="kw">public class="kw">static AssetIconProperties getIconProperties(MemorySegment var0, int var1) {
class="kw">return hasIconProperties(var0, var1) ? AssetIconProperties.toObject(var0, var1 + 18) : null;
}
@Nullable
class="kw">public class="kw">static ItemTranslationProperties getTranslationProperties(MemorySegment var0) {
class="kw">return getTranslationProperties(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemTranslationProperties getTranslationProperties(MemorySegment var0, int var1) {
class="kw">return hasTranslationProperties(var0, var1)
? ItemTranslationProperties.toObject(var0, var1 + getValidatedOffset(var0, var1, 170, 266, "TranslationProperties"))
: null;
}
class="kw">public class="kw">static int getItemLevel(MemorySegment var0) {
class="kw">return getItemLevel(var0, 0);
}
class="kw">public class="kw">static int getItemLevel(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 43);
}
class="kw">public class="kw">static int getQualityIndex(MemorySegment var0) {
class="kw">return getQualityIndex(var0, 0);
}
class="kw">public class="kw">static int getQualityIndex(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 47);
}
@Nullable
class="kw">public class="kw">static ItemResourceType[] getResourceTypes(MemorySegment var0) {
class="kw">return getResourceTypes(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemResourceType[] getResourceTypes(MemorySegment var0, int var1) {
if (!hasResourceTypes(var0, var1)) {
class="kw">return null;
}
ReadCursor var2 = new ReadCursor();
int var3 = var1 + getValidatedOffset(var0, var1, 174, 266, "ResourceTypes");
long var4 = VarInt.getWithLength(var0, var3);
if (var4 == -1L) {
throw ProtocolException.invalidVarInt("ResourceTypes");
}
int var6 = (int)var4;
if (var6 > 4096000) {
throw ProtocolException.arrayTooLong("ResourceTypes", var6, 4096000);
}
int var7 = (int)(var4 >>> 32);
if (var3 + var7 + var6 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("ResourceTypes", (int)Math.min(var3 + var7 + var6 * 5L, 2147483647L), (int)var0.byteSize());
}
var3 += var7;
ItemResourceType[] var8 = new ItemResourceType[var6];
for (int var9 = 0; var9 < var6; var9++) {
var8[var9] = ItemResourceType.toObject(var0, var3, var2);
var3 = var2.position;
}
class="kw">return var8;
}
class="kw">public class="kw">static boolean getConsumable(MemorySegment var0) {
class="kw">return getConsumable(var0, 0);
}
class="kw">public class="kw">static boolean getConsumable(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 51) & 1) != 0;
}
class="kw">public class="kw">static boolean getVariant(MemorySegment var0) {
class="kw">return getVariant(var0, 0);
}
class="kw">public class="kw">static boolean getVariant(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 51) & 2) != 0;
}
class="kw">public class="kw">static int getBlockId(MemorySegment var0) {
class="kw">return getBlockId(var0, 0);
}
class="kw">public class="kw">static int getBlockId(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 52);
}
@Nullable
class="kw">public class="kw">static ItemTool getTool(MemorySegment var0) {
class="kw">return getTool(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemTool getTool(MemorySegment var0, int var1) {
class="kw">return hasTool(var0, var1) ? ItemTool.toObject(var0, var1 + getValidatedOffset(var0, var1, 178, 266, "Tool")) : null;
}
@Nullable
class="kw">public class="kw">static ItemWeapon getWeapon(MemorySegment var0) {
class="kw">return getWeapon(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemWeapon getWeapon(MemorySegment var0, int var1) {
class="kw">return hasWeapon(var0, var1) ? ItemWeapon.toObject(var0, var1 + getValidatedOffset(var0, var1, 182, 266, "Weapon")) : null;
}
@Nullable
class="kw">public class="kw">static ItemArmor getArmor(MemorySegment var0) {
class="kw">return getArmor(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemArmor getArmor(MemorySegment var0, int var1) {
class="kw">return hasArmor(var0, var1) ? ItemArmor.toObject(var0, var1 + getValidatedOffset(var0, var1, 186, 266, "Armor")) : null;
}
@Nullable
class="kw">public class="kw">static ItemGlider getGliderConfig(MemorySegment var0) {
class="kw">return getGliderConfig(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemGlider getGliderConfig(MemorySegment var0, int var1) {
class="kw">return hasGliderConfig(var0, var1) ? ItemGlider.toObject(var0, var1 + 56) : null;
}
@Nullable
class="kw">public class="kw">static ItemUtility getUtility(MemorySegment var0) {
class="kw">return getUtility(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemUtility getUtility(MemorySegment var0, int var1) {
class="kw">return hasUtility(var0, var1) ? ItemUtility.toObject(var0, var1 + getValidatedOffset(var0, var1, 190, 266, "Utility")) : null;
}
@Nullable
class="kw">public class="kw">static BlockSelectorToolData getBlockSelectorTool(MemorySegment var0) {
class="kw">return getBlockSelectorTool(var0, 0);
}
@Nullable
class="kw">public class="kw">static BlockSelectorToolData getBlockSelectorTool(MemorySegment var0, int var1) {
class="kw">return hasBlockSelectorTool(var0, var1) ? BlockSelectorToolData.toObject(var0, var1 + 72) : null;
}
@Nullable
class="kw">public class="kw">static BuilderToolState getBuilderToolData(MemorySegment var0) {
class="kw">return getBuilderToolData(var0, 0);
}
@Nullable
class="kw">public class="kw">static BuilderToolState getBuilderToolData(MemorySegment var0, int var1) {
class="kw">return hasBuilderToolData(var0, var1) ? BuilderToolState.toObject(var0, var1 + getValidatedOffset(var0, var1, 194, 266, "BuilderToolData")) : null;
}
@Nullable
class="kw">public class="kw">static ItemEntityConfig getItemEntity(MemorySegment var0) {
class="kw">return getItemEntity(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemEntityConfig getItemEntity(MemorySegment var0, int var1) {
class="kw">return hasItemEntity(var0, var1) ? ItemEntityConfig.toObject(var0, var1 + getValidatedOffset(var0, var1, 198, 266, "ItemEntity")) : null;
}
@Nullable
class="kw">public class="kw">static String getSet(MemorySegment var0) {
class="kw">return getSet(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getSet(MemorySegment var0, int var1) {
class="kw">return hasSet(var0, var1) ? PacketIO.readVarString("Set", var0, var1 + getValidatedOffset(var0, var1, 202, 266, "Set"), 4096000) : null;
}
@Nullable
class="kw">public class="kw">static String[] getCategories(MemorySegment var0) {
class="kw">return getCategories(var0, 0);
}
@Nullable
class="kw">public class="kw">static String[] getCategories(MemorySegment var0, int var1) {
if (!hasCategories(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 206, 266, "Categories");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("Categories");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.arrayTooLong("Categories", var5, 4096000);
}
int var6 = (int)(var3 >>> 32);
if (var2 + var6 + var5 > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Categories", Math.min(var2 + var6 + var5, Integer.MAX_VALUE), (int)var0.byteSize());
}
var2 += var6;
String[] var7 = new String[var5];
for (int var8 = 0; var8 < var5; var8++) {
long var9 = VarInt.getWithLength(var0, var2);
var7[var8] = PacketIO.readVarString("Categories", var0, var2, 0, 4096000, var9);
var2 += (int)var9 + (int)(var9 >>> 32);
}
class="kw">return var7;
}
@Nullable
class="kw">public class="kw">static String getSubCategory(MemorySegment var0) {
class="kw">return getSubCategory(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getSubCategory(MemorySegment var0, int var1) {
class="kw">return hasSubCategory(var0, var1)
? PacketIO.readVarString("SubCategory", var0, var1 + getValidatedOffset(var0, var1, 210, 266, "SubCategory"), 4096000)
: null;
}
@Nullable
class="kw">public class="kw">static ModelParticle[] getParticles(MemorySegment var0) {
class="kw">return getParticles(var0, 0);
}
@Nullable
class="kw">public class="kw">static ModelParticle[] getParticles(MemorySegment var0, int var1) {
if (!hasParticles(var0, var1)) {
class="kw">return null;
}
ReadCursor var2 = new ReadCursor();
int var3 = var1 + getValidatedOffset(var0, var1, 214, 266, "Particles");
long var4 = VarInt.getWithLength(var0, var3);
if (var4 == -1L) {
throw ProtocolException.invalidVarInt("Particles");
}
int var6 = (int)var4;
if (var6 > 4096000) {
throw ProtocolException.arrayTooLong("Particles", var6, 4096000);
}
int var7 = (int)(var4 >>> 32);
if (var3 + var7 + var6 * 42L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Particles", (int)Math.min(var3 + var7 + var6 * 42L, 2147483647L), (int)var0.byteSize());
}
var3 += var7;
ModelParticle[] var8 = new ModelParticle[var6];
for (int var9 = 0; var9 < var6; var9++) {
var8[var9] = ModelParticle.toObject(var0, var3, var2);
var3 = var2.position;
}
class="kw">return var8;
}
@Nullable
class="kw">public class="kw">static ModelParticle[] getFirstPersonParticles(MemorySegment var0) {
class="kw">return getFirstPersonParticles(var0, 0);
}
@Nullable
class="kw">public class="kw">static ModelParticle[] getFirstPersonParticles(MemorySegment var0, int var1) {
if (!hasFirstPersonParticles(var0, var1)) {
class="kw">return null;
}
ReadCursor var2 = new ReadCursor();
int var3 = var1 + getValidatedOffset(var0, var1, 218, 266, "FirstPersonParticles");
long var4 = VarInt.getWithLength(var0, var3);
if (var4 == -1L) {
throw ProtocolException.invalidVarInt("FirstPersonParticles");
}
int var6 = (int)var4;
if (var6 > 4096000) {
throw ProtocolException.arrayTooLong("FirstPersonParticles", var6, 4096000);
}
int var7 = (int)(var4 >>> 32);
if (var3 + var7 + var6 * 42L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("FirstPersonParticles", (int)Math.min(var3 + var7 + var6 * 42L, 2147483647L), (int)var0.byteSize());
}
var3 += var7;
ModelParticle[] var8 = new ModelParticle[var6];
for (int var9 = 0; var9 < var6; var9++) {
var8[var9] = ModelParticle.toObject(var0, var3, var2);
var3 = var2.position;
}
class="kw">return var8;
}
@Nullable
class="kw">public class="kw">static ModelTrail[] getTrails(MemorySegment var0) {
class="kw">return getTrails(var0, 0);
}
@Nullable
class="kw">public class="kw">static ModelTrail[] getTrails(MemorySegment var0, int var1) {
if (!hasTrails(var0, var1)) {
class="kw">return null;
}
ReadCursor var2 = new ReadCursor();
int var3 = var1 + getValidatedOffset(var0, var1, 222, 266, "Trails");
long var4 = VarInt.getWithLength(var0, var3);
if (var4 == -1L) {
throw ProtocolException.invalidVarInt("Trails");
}
int var6 = (int)var4;
if (var6 > 4096000) {
throw ProtocolException.arrayTooLong("Trails", var6, 4096000);
}
int var7 = (int)(var4 >>> 32);
if (var3 + var7 + var6 * 35L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Trails", (int)Math.min(var3 + var7 + var6 * 35L, 2147483647L), (int)var0.byteSize());
}
var3 += var7;
ModelTrail[] var8 = new ModelTrail[var6];
for (int var9 = 0; var9 < var6; var9++) {
var8[var9] = ModelTrail.toObject(var0, var3, var2);
var3 = var2.position;
}
class="kw">return var8;
}
@Nullable
class="kw">public class="kw">static ColorLight getLight(MemorySegment var0) {
class="kw">return getLight(var0, 0);
}
@Nullable
class="kw">public class="kw">static ColorLight getLight(MemorySegment var0, int var1) {
class="kw">return hasLight(var0, var1) ? ColorLight.toObject(var0, var1 + 76) : null;
}
class="kw">public class="kw">static double getDurability(MemorySegment var0) {
class="kw">return getDurability(var0, 0);
}
class="kw">public class="kw">static double getDurability(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_DOUBLE, var1 + 80), "Durability");
}
class="kw">public class="kw">static int getSoundEventIndex(MemorySegment var0) {
class="kw">return getSoundEventIndex(var0, 0);
}
class="kw">public class="kw">static int getSoundEventIndex(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 88);
}
class="kw">public class="kw">static int getItemSoundSetIndex(MemorySegment var0) {
class="kw">return getItemSoundSetIndex(var0, 0);
}
class="kw">public class="kw">static int getItemSoundSetIndex(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 92);
}
@Nullable
class="kw">public class="kw">static Map<InteractionType, Integer> getInteractions(MemorySegment var0) {
class="kw">return getInteractions(var0, 0);
}
@Nullable
class="kw">public class="kw">static Map<InteractionType, Integer> getInteractions(MemorySegment var0, int var1) {
if (!hasInteractions(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 226, 266, "Interactions");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("Interactions");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.dictionaryTooLarge("Interactions", var5, 4096000);
}
var2 += (int)(var3 >>> 32);
if (var2 + var5 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Interactions", (int)Math.min(var2 + var5 * 5L, 2147483647L), (int)var0.byteSize());
}
Map var6 = new HashMap<>(var5);
for (int var7 = 0; var7 < var5; var7++) {
InteractionType var8 = InteractionType.fromValue(var0.get(PacketIO.PROTO_BYTE, var2));
int var9 = var0.get(PacketIO.PROTO_INT, ++var2);
var2 += 4;
if (var6.put(var8, var9) != null) {
throw ProtocolException.duplicateKey("Interactions", var8);
}
}
class="kw">return var6;
}
@Nullable
class="kw">public class="kw">static Map<InteractionType, Integer> getCarryInteractions(MemorySegment var0) {
class="kw">return getCarryInteractions(var0, 0);
}
@Nullable
class="kw">public class="kw">static Map<InteractionType, Integer> getCarryInteractions(MemorySegment var0, int var1) {
if (!hasCarryInteractions(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 230, 266, "CarryInteractions");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("CarryInteractions");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.dictionaryTooLarge("CarryInteractions", var5, 4096000);
}
var2 += (int)(var3 >>> 32);
if (var2 + var5 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("CarryInteractions", (int)Math.min(var2 + var5 * 5L, 2147483647L), (int)var0.byteSize());
}
Map var6 = new HashMap<>(var5);
for (int var7 = 0; var7 < var5; var7++) {
InteractionType var8 = InteractionType.fromValue(var0.get(PacketIO.PROTO_BYTE, var2));
int var9 = var0.get(PacketIO.PROTO_INT, ++var2);
var2 += 4;
if (var6.put(var8, var9) != null) {
throw ProtocolException.duplicateKey("CarryInteractions", var8);
}
}
class="kw">return var6;
}
@Nullable
class="kw">public class="kw">static Map<InteractionType, String> getCarryHudInputBindings(MemorySegment var0) {
class="kw">return getCarryHudInputBindings(var0, 0);
}
@Nullable
class="kw">public class="kw">static Map<InteractionType, String> getCarryHudInputBindings(MemorySegment var0, int var1) {
if (!hasCarryHudInputBindings(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 234, 266, "CarryHudInputBindings");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("CarryHudInputBindings");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.dictionaryTooLarge("CarryHudInputBindings", var5, 4096000);
}
var2 += (int)(var3 >>> 32);
if (var2 + var5 * 2L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("CarryHudInputBindings", (int)Math.min(var2 + var5 * 2L, 2147483647L), (int)var0.byteSize());
}
Map var6 = new HashMap<>(var5);
for (int var7 = 0; var7 < var5; var7++) {
InteractionType var8 = InteractionType.fromValue(var0.get(PacketIO.PROTO_BYTE, var2));
long var9 = VarInt.getWithLength(var0, ++var2);
String var11 = PacketIO.readVarString("value", var0, var2, 0, 4096000, var9);
var2 += (int)var9 + (int)(var9 >>> 32);
if (var6.put(var8, var11) != null) {
throw ProtocolException.duplicateKey("CarryHudInputBindings", var8);
}
}
class="kw">return var6;
}
@Nullable
class="kw">public class="kw">static Map<String, Integer> getInteractionVars(MemorySegment var0) {
class="kw">return getInteractionVars(var0, 0);
}
@Nullable
class="kw">public class="kw">static Map<String, Integer> getInteractionVars(MemorySegment var0, int var1) {
if (!hasInteractionVars(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 238, 266, "InteractionVars");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("InteractionVars");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.dictionaryTooLarge("InteractionVars", var5, 4096000);
}
var2 += (int)(var3 >>> 32);
if (var2 + var5 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("InteractionVars", (int)Math.min(var2 + var5 * 5L, 2147483647L), (int)var0.byteSize());
}
Map var6 = new HashMap<>(var5);
for (int var7 = 0; var7 < var5; var7++) {
long var8 = VarInt.getWithLength(var0, var2);
String var10 = PacketIO.readVarString("key", var0, var2, 0, 4096000, var8);
var2 += (int)var8 + (int)(var8 >>> 32);
int var11 = var0.get(PacketIO.PROTO_INT, var2);
var2 += 4;
if (var6.put(var10, var11) != null) {
throw ProtocolException.duplicateKey("InteractionVars", var10);
}
}
class="kw">return var6;
}
@Nullable
class="kw">public class="kw">static InteractionConfiguration getInteractionConfig(MemorySegment var0) {
class="kw">return getInteractionConfig(var0, 0);
}
@Nullable
class="kw">public class="kw">static InteractionConfiguration getInteractionConfig(MemorySegment var0, int var1) {
class="kw">return hasInteractionConfig(var0, var1)
? InteractionConfiguration.toObject(var0, var1 + getValidatedOffset(var0, var1, 242, 266, "InteractionConfig"))
: null;
}
@Nullable
class="kw">public class="kw">static String getDroppedItemAnimation(MemorySegment var0) {
class="kw">return getDroppedItemAnimation(var0, 0);
}
@Nullable
class="kw">public class="kw">static String getDroppedItemAnimation(MemorySegment var0, int var1) {
class="kw">return hasDroppedItemAnimation(var0, var1)
? PacketIO.readVarString("DroppedItemAnimation", var0, var1 + getValidatedOffset(var0, var1, 246, 266, "DroppedItemAnimation"), 4096000)
: null;
}
@Nullable
class="kw">public class="kw">static int[] getTagIndexes(MemorySegment var0) {
class="kw">return getTagIndexes(var0, 0);
}
@Nullable
class="kw">public class="kw">static int[] getTagIndexes(MemorySegment var0, int var1) {
if (!hasTagIndexes(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 250, 266, "TagIndexes");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("TagIndexes");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.arrayTooLong("TagIndexes", var5, 4096000);
}
int var6 = (int)(var3 >>> 32);
if (var2 + var6 + var5 * 4L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("TagIndexes", (int)Math.min(var2 + var6 + var5 * 4L, 2147483647L), (int)var0.byteSize());
}
var2 += var6;
int[] var7 = new int[var5];
MemorySegment.copy(var0, PacketIO.PROTO_INT, var2, var7, 0, var5);
class="kw">return var7;
}
@Nullable
class="kw">public class="kw">static Map<Integer, ItemAppearanceCondition[]> getItemAppearanceConditions(MemorySegment var0) {
class="kw">return getItemAppearanceConditions(var0, 0);
}
@Nullable
class="kw">public class="kw">static Map<Integer, ItemAppearanceCondition[]> getItemAppearanceConditions(MemorySegment var0, int var1) {
if (!hasItemAppearanceConditions(var0, var1)) {
class="kw">return null;
}
ReadCursor var2 = new ReadCursor();
int var3 = var1 + getValidatedOffset(var0, var1, 254, 266, "ItemAppearanceConditions");
long var4 = VarInt.getWithLength(var0, var3);
if (var4 == -1L) {
throw ProtocolException.invalidVarInt("ItemAppearanceConditions");
}
int var6 = (int)var4;
if (var6 > 4096000) {
throw ProtocolException.dictionaryTooLarge("ItemAppearanceConditions", var6, 4096000);
}
var3 += (int)(var4 >>> 32);
if (var3 + var6 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("ItemAppearanceConditions", (int)Math.min(var3 + var6 * 5L, 2147483647L), (int)var0.byteSize());
}
Map var7 = new HashMap<>(var6);
for (int var8 = 0; var8 < var6; var8++) {
int var9 = var0.get(PacketIO.PROTO_INT, var3);
var3 += 4;
long var10 = VarInt.getWithLength(var0, var3);
if (var10 == -1L) {
throw ProtocolException.invalidVarInt("value");
}
int var12 = (int)var10;
int var13 = (int)(var10 >>> 32);
if (var12 > 4096000) {
throw ProtocolException.arrayTooLong("value", var12, 4096000);
}
if (var3 + var13 + var12 * 38L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("value", var3 + var13 + var12 * 38, (int)var0.byteSize());
}
var3 += var13;
ItemAppearanceCondition[] var14 = new ItemAppearanceCondition[var12];
for (int var15 = 0; var15 < var12; var15++) {
var14[var15] = ItemAppearanceCondition.toObject(var0, var3, var2);
var3 = var2.position;
}
if (var7.put(var9, var14) != null) {
throw ProtocolException.duplicateKey("ItemAppearanceConditions", var9);
}
}
class="kw">return var7;
}
@Nullable
class="kw">public class="kw">static int[] getDisplayEntityStatsHUD(MemorySegment var0) {
class="kw">return getDisplayEntityStatsHUD(var0, 0);
}
@Nullable
class="kw">public class="kw">static int[] getDisplayEntityStatsHUD(MemorySegment var0, int var1) {
if (!hasDisplayEntityStatsHUD(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 258, 266, "DisplayEntityStatsHUD");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("DisplayEntityStatsHUD");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.arrayTooLong("DisplayEntityStatsHUD", var5, 4096000);
}
int var6 = (int)(var3 >>> 32);
if (var2 + var6 + var5 * 4L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("DisplayEntityStatsHUD", (int)Math.min(var2 + var6 + var5 * 4L, 2147483647L), (int)var0.byteSize());
}
var2 += var6;
int[] var7 = new int[var5];
MemorySegment.copy(var0, PacketIO.PROTO_INT, var2, var7, 0, var5);
class="kw">return var7;
}
@Nullable
class="kw">public class="kw">static ItemPullbackConfiguration getPullbackConfig(MemorySegment var0) {
class="kw">return getPullbackConfig(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemPullbackConfiguration getPullbackConfig(MemorySegment var0, int var1) {
class="kw">return hasPullbackConfig(var0, var1) ? ItemPullbackConfiguration.toObject(var0, var1 + 96) : null;
}
class="kw">public class="kw">static boolean getClipsGeometry(MemorySegment var0) {
class="kw">return getClipsGeometry(var0, 0);
}
class="kw">public class="kw">static boolean getClipsGeometry(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 145) & 1) != 0;
}
class="kw">public class="kw">static boolean getRenderDeployablePreview(MemorySegment var0) {
class="kw">return getRenderDeployablePreview(var0, 0);
}
class="kw">public class="kw">static boolean getRenderDeployablePreview(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 145) & 2) != 0;
}
@Nullable
class="kw">public class="kw">static ItemHudUI[] getHudUI(MemorySegment var0) {
class="kw">return getHudUI(var0, 0);
}
@Nullable
class="kw">public class="kw">static ItemHudUI[] getHudUI(MemorySegment var0, int var1) {
if (!hasHudUI(var0, var1)) {
class="kw">return null;
}
ReadCursor var2 = new ReadCursor();
int var3 = var1 + getValidatedOffset(var0, var1, 262, 266, "HudUI");
long var4 = VarInt.getWithLength(var0, var3);
if (var4 == -1L) {
throw ProtocolException.invalidVarInt("HudUI");
}
int var6 = (int)var4;
if (var6 > 4096000) {
throw ProtocolException.arrayTooLong("HudUI", var6, 4096000);
}
int var7 = (int)(var4 >>> 32);
if (var3 + var7 + var6 * 2L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("HudUI", (int)Math.min(var3 + var7 + var6 * 2L, 2147483647L), (int)var0.byteSize());
}
var3 += var7;
ItemHudUI[] var8 = new ItemHudUI[var6];
for (int var9 = 0; var9 < var6; var9++) {
var8[var9] = ItemHudUI.toObject(var0, var3, var2);
var3 = var2.position;
}
class="kw">return var8;
}
class="kw">public class="kw">static boolean hasIconProperties(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 hasGliderConfig(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 hasBlockSelectorTool(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 hasLight(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
class="kw">return (var2 & 8) != 0;
}
class="kw">public class="kw">static boolean hasPullbackConfig(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
class="kw">return (var2 & 16) != 0;
}
class="kw">public class="kw">static boolean hasId(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
class="kw">return (var2 & 32) != 0;
}
class="kw">public class="kw">static boolean hasModel(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
class="kw">return (var2 & 64) != 0;
}
class="kw">public class="kw">static boolean hasTexture(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 0);
class="kw">return (var2 & 128) != 0;
}
class="kw">public class="kw">static boolean hasAnimation(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 1) != 0;
}
class="kw">public class="kw">static boolean hasPlayerAnimationsId(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 2) != 0;
}
class="kw">public class="kw">static boolean hasIcon(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 4) != 0;
}
class="kw">public class="kw">static boolean hasTranslationProperties(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 8) != 0;
}
class="kw">public class="kw">static boolean hasResourceTypes(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 16) != 0;
}
class="kw">public class="kw">static boolean hasTool(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 32) != 0;
}
class="kw">public class="kw">static boolean hasWeapon(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 64) != 0;
}
class="kw">public class="kw">static boolean hasArmor(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 128) != 0;
}
class="kw">public class="kw">static boolean hasUtility(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 1) != 0;
}
class="kw">public class="kw">static boolean hasBuilderToolData(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 2) != 0;
}
class="kw">public class="kw">static boolean hasItemEntity(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 4) != 0;
}
class="kw">public class="kw">static boolean hasSet(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 8) != 0;
}
class="kw">public class="kw">static boolean hasCategories(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 16) != 0;
}
class="kw">public class="kw">static boolean hasSubCategory(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 32) != 0;
}
class="kw">public class="kw">static boolean hasParticles(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 64) != 0;
}
class="kw">public class="kw">static boolean hasFirstPersonParticles(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 2);
class="kw">return (var2 & 128) != 0;
}
class="kw">public class="kw">static boolean hasTrails(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 1) != 0;
}
class="kw">public class="kw">static boolean hasInteractions(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 2) != 0;
}
class="kw">public class="kw">static boolean hasCarryInteractions(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 4) != 0;
}
class="kw">public class="kw">static boolean hasCarryHudInputBindings(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 8) != 0;
}
class="kw">public class="kw">static boolean hasInteractionVars(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 16) != 0;
}
class="kw">public class="kw">static boolean hasInteractionConfig(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 32) != 0;
}
class="kw">public class="kw">static boolean hasDroppedItemAnimation(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 64) != 0;
}
class="kw">public class="kw">static boolean hasTagIndexes(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 3);
class="kw">return (var2 & 128) != 0;
}
class="kw">public class="kw">static boolean hasItemAppearanceConditions(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 4);
class="kw">return (var2 & 1) != 0;
}
class="kw">public class="kw">static boolean hasDisplayEntityStatsHUD(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 4);
class="kw">return (var2 & 2) != 0;
}
class="kw">public class="kw">static boolean hasHudUI(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 4);
class="kw">return (var2 & 4) != 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 ItemBase toObject(MemorySegment var0) {
class="kw">return toObject(var0, 0, null);
}
class="kw">public class="kw">static ItemBase toObject(MemorySegment var0, int var1) {
class="kw">return toObject(var0, var1, null);
}
class="kw">public class="kw">static ItemBase toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) {
requireBounds(var0, var1);
int var3 = var1 + 266;
int var4 = 0;
ReadCursor var5 = var2 != null ? var2 : new ReadCursor();
String var6 = null;
if (hasId(var0, var1)) {
requireSlot(var0, var1 + 146, var4, "Id");
int var7 = var3 + var4;
long var8 = VarInt.getWithLength(var0, var7);
var6 = PacketIO.readVarString("Id", var0, var7, 0, 4096000, var8);
var4 += (int)var8 + (int)(var8 >>> 32);
} else {
requireSlot(var0, var1 + 146, -1, "Id");
}
String var46 = null;
if (hasModel(var0, var1)) {
requireSlot(var0, var1 + 150, var4, "Model");
int var47 = var3 + var4;
long var9 = VarInt.getWithLength(var0, var47);
var46 = PacketIO.readVarString("Model", var0, var47, 0, 4096000, var9);
var4 += (int)var9 + (int)(var9 >>> 32);
} else {
requireSlot(var0, var1 + 150, -1, "Model");
}
String var48 = null;
if (hasTexture(var0, var1)) {
requireSlot(var0, var1 + 154, var4, "Texture");
int var49 = var3 + var4;
long var10 = VarInt.getWithLength(var0, var49);
var48 = PacketIO.readVarString("Texture", var0, var49, 0, 4096000, var10);
var4 += (int)var10 + (int)(var10 >>> 32);
} else {
requireSlot(var0, var1 + 154, -1, "Texture");
}
String var50 = null;
if (hasAnimation(var0, var1)) {
requireSlot(var0, var1 + 158, var4, "Animation");
int var51 = var3 + var4;
long var11 = VarInt.getWithLength(var0, var51);
var50 = PacketIO.readVarString("Animation", var0, var51, 0, 4096000, var11);
var4 += (int)var11 + (int)(var11 >>> 32);
} else {
requireSlot(var0, var1 + 158, -1, "Animation");
}
String var52 = null;
if (hasPlayerAnimationsId(var0, var1)) {
requireSlot(var0, var1 + 162, var4, "PlayerAnimationsId");
int var53 = var3 + var4;
long var12 = VarInt.getWithLength(var0, var53);
var52 = PacketIO.readVarString("PlayerAnimationsId", var0, var53, 0, 4096000, var12);
var4 += (int)var12 + (int)(var12 >>> 32);
} else {
requireSlot(var0, var1 + 162, -1, "PlayerAnimationsId");
}
String var54 = null;
if (hasIcon(var0, var1)) {
requireSlot(var0, var1 + 166, var4, "Icon");
int var55 = var3 + var4;
long var13 = VarInt.getWithLength(var0, var55);
var54 = PacketIO.readVarString("Icon", var0, var55, 0, 4096000, var13);
var4 += (int)var13 + (int)(var13 >>> 32);
} else {
requireSlot(var0, var1 + 166, -1, "Icon");
}
ItemTranslationProperties var56 = null;
if (hasTranslationProperties(var0, var1)) {
requireSlot(var0, var1 + 170, var4, "TranslationProperties");
var56 = ItemTranslationProperties.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 170, -1, "TranslationProperties");
}
ItemResourceType[] var57 = null;
if (hasResourceTypes(var0, var1)) {
requireSlot(var0, var1 + 174, var4, "ResourceTypes");
int var14 = var3 + var4;
long var15 = VarInt.getWithLength(var0, var14);
if (var15 == -1L) {
throw ProtocolException.invalidVarInt("ResourceTypes");
}
int var17 = (int)var15;
if (var17 > 4096000) {
throw ProtocolException.arrayTooLong("ResourceTypes", var17, 4096000);
}
int var18 = (int)(var15 >>> 32);
if (var14 + var18 + var17 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("ResourceTypes", (int)Math.min(var14 + var18 + var17 * 5L, 2147483647L), (int)var0.byteSize());
}
var14 += var18;
var57 = new ItemResourceType[var17];
for (int var19 = 0; var19 < var17; var19++) {
var57[var19] = ItemResourceType.toObject(var0, var14, var5);
var14 = var5.position;
}
var4 = var14 - var3;
} else {
requireSlot(var0, var1 + 174, -1, "ResourceTypes");
}
ItemTool var59 = null;
if (hasTool(var0, var1)) {
requireSlot(var0, var1 + 178, var4, "Tool");
var59 = ItemTool.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 178, -1, "Tool");
}
ItemWeapon var60 = null;
if (hasWeapon(var0, var1)) {
requireSlot(var0, var1 + 182, var4, "Weapon");
var60 = ItemWeapon.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 182, -1, "Weapon");
}
ItemArmor var16 = null;
if (hasArmor(var0, var1)) {
requireSlot(var0, var1 + 186, var4, "Armor");
var16 = ItemArmor.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 186, -1, "Armor");
}
ItemUtility var61 = null;
if (hasUtility(var0, var1)) {
requireSlot(var0, var1 + 190, var4, "Utility");
var61 = ItemUtility.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 190, -1, "Utility");
}
BuilderToolState var62 = null;
if (hasBuilderToolData(var0, var1)) {
requireSlot(var0, var1 + 194, var4, "BuilderToolData");
var62 = BuilderToolState.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 194, -1, "BuilderToolData");
}
ItemEntityConfig var63 = null;
if (hasItemEntity(var0, var1)) {
requireSlot(var0, var1 + 198, var4, "ItemEntity");
var63 = ItemEntityConfig.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 198, -1, "ItemEntity");
}
String var20 = null;
if (hasSet(var0, var1)) {
requireSlot(var0, var1 + 202, var4, "Set");
int var21 = var3 + var4;
long var22 = VarInt.getWithLength(var0, var21);
var20 = PacketIO.readVarString("Set", var0, var21, 0, 4096000, var22);
var4 += (int)var22 + (int)(var22 >>> 32);
} else {
requireSlot(var0, var1 + 202, -1, "Set");
}
String[] var64 = null;
if (hasCategories(var0, var1)) {
requireSlot(var0, var1 + 206, var4, "Categories");
int var65 = var3 + var4;
long var23 = VarInt.getWithLength(var0, var65);
if (var23 == -1L) {
throw ProtocolException.invalidVarInt("Categories");
}
int var25 = (int)var23;
if (var25 > 4096000) {
throw ProtocolException.arrayTooLong("Categories", var25, 4096000);
}
int var26 = (int)(var23 >>> 32);
if (var65 + var26 + var25 > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Categories", Math.min(var65 + var26 + var25, Integer.MAX_VALUE), (int)var0.byteSize());
}
var65 += var26;
var64 = new String[var25];
for (int var27 = 0; var27 < var25; var27++) {
long var28 = VarInt.getWithLength(var0, var65);
var64[var27] = PacketIO.readVarString("Categories", var0, var65, 0, 4096000, var28);
var65 += (int)var28 + (int)(var28 >>> 32);
}
var4 = var65 - var3;
} else {
requireSlot(var0, var1 + 206, -1, "Categories");
}
String var67 = null;
if (hasSubCategory(var0, var1)) {
requireSlot(var0, var1 + 210, var4, "SubCategory");
int var68 = var3 + var4;
long var24 = VarInt.getWithLength(var0, var68);
var67 = PacketIO.readVarString("SubCategory", var0, var68, 0, 4096000, var24);
var4 += (int)var24 + (int)(var24 >>> 32);
} else {
requireSlot(var0, var1 + 210, -1, "SubCategory");
}
ModelParticle[] var69 = null;
if (hasParticles(var0, var1)) {
requireSlot(var0, var1 + 214, var4, "Particles");
int var70 = var3 + var4;
long var73 = VarInt.getWithLength(var0, var70);
if (var73 == -1L) {
throw ProtocolException.invalidVarInt("Particles");
}
int var81 = (int)var73;
if (var81 > 4096000) {
throw ProtocolException.arrayTooLong("Particles", var81, 4096000);
}
int var87 = (int)(var73 >>> 32);
if (var70 + var87 + var81 * 42L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Particles", (int)Math.min(var70 + var87 + var81 * 42L, 2147483647L), (int)var0.byteSize());
}
var70 += var87;
var69 = new ModelParticle[var81];
for (int var29 = 0; var29 < var81; var29++) {
var69[var29] = ModelParticle.toObject(var0, var70, var5);
var70 = var5.position;
}
var4 = var70 - var3;
} else {
requireSlot(var0, var1 + 214, -1, "Particles");
}
ModelParticle[] var72 = null;
if (hasFirstPersonParticles(var0, var1)) {
requireSlot(var0, var1 + 218, var4, "FirstPersonParticles");
int var74 = var3 + var4;
long var77 = VarInt.getWithLength(var0, var74);
if (var77 == -1L) {
throw ProtocolException.invalidVarInt("FirstPersonParticles");
}
int var88 = (int)var77;
if (var88 > 4096000) {
throw ProtocolException.arrayTooLong("FirstPersonParticles", var88, 4096000);
}
int var94 = (int)(var77 >>> 32);
if (var74 + var94 + var88 * 42L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("FirstPersonParticles", (int)Math.min(var74 + var94 + var88 * 42L, 2147483647L), (int)var0.byteSize());
}
var74 += var94;
var72 = new ModelParticle[var88];
for (int var30 = 0; var30 < var88; var30++) {
var72[var30] = ModelParticle.toObject(var0, var74, var5);
var74 = var5.position;
}
var4 = var74 - var3;
} else {
requireSlot(var0, var1 + 218, -1, "FirstPersonParticles");
}
ModelTrail[] var76 = null;
if (hasTrails(var0, var1)) {
requireSlot(var0, var1 + 222, var4, "Trails");
int var78 = var3 + var4;
long var82 = VarInt.getWithLength(var0, var78);
if (var82 == -1L) {
throw ProtocolException.invalidVarInt("Trails");
}
int var95 = (int)var82;
if (var95 > 4096000) {
throw ProtocolException.arrayTooLong("Trails", var95, 4096000);
}
int var101 = (int)(var82 >>> 32);
if (var78 + var101 + var95 * 35L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Trails", (int)Math.min(var78 + var101 + var95 * 35L, 2147483647L), (int)var0.byteSize());
}
var78 += var101;
var76 = new ModelTrail[var95];
for (int var31 = 0; var31 < var95; var31++) {
var76[var31] = ModelTrail.toObject(var0, var78, var5);
var78 = var5.position;
}
var4 = var78 - var3;
} else {
requireSlot(var0, var1 + 222, -1, "Trails");
}
Map var80 = null;
if (hasInteractions(var0, var1)) {
requireSlot(var0, var1 + 226, var4, "Interactions");
int var83 = var3 + var4;
long var89 = VarInt.getWithLength(var0, var83);
if (var89 == -1L) {
throw ProtocolException.invalidVarInt("Interactions");
}
int var102 = (int)var89;
if (var102 > 4096000) {
throw ProtocolException.dictionaryTooLarge("Interactions", var102, 4096000);
}
var83 += (int)(var89 >>> 32);
if (var83 + var102 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Interactions", (int)Math.min(var83 + var102 * 5L, 2147483647L), (int)var0.byteSize());
}
var80 = new HashMap<>(var102);
for (int var108 = 0; var108 < var102; var108++) {
InteractionType var32 = InteractionType.fromValue(var0.get(PacketIO.PROTO_BYTE, var83));
int var33 = var0.get(PacketIO.PROTO_INT, ++var83);
var83 += 4;
if (var80.put(var32, var33) != null) {
throw ProtocolException.duplicateKey("Interactions", var32);
}
}
var4 = var83 - var3;
} else {
requireSlot(var0, var1 + 226, -1, "Interactions");
}
Map var86 = null;
if (hasCarryInteractions(var0, var1)) {
requireSlot(var0, var1 + 230, var4, "CarryInteractions");
int var90 = var3 + var4;
long var96 = VarInt.getWithLength(var0, var90);
if (var96 == -1L) {
throw ProtocolException.invalidVarInt("CarryInteractions");
}
int var109 = (int)var96;
if (var109 > 4096000) {
throw ProtocolException.dictionaryTooLarge("CarryInteractions", var109, 4096000);
}
var90 += (int)(var96 >>> 32);
if (var90 + var109 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("CarryInteractions", (int)Math.min(var90 + var109 * 5L, 2147483647L), (int)var0.byteSize());
}
var86 = new HashMap<>(var109);
for (int var112 = 0; var112 < var109; var112++) {
InteractionType var116 = InteractionType.fromValue(var0.get(PacketIO.PROTO_BYTE, var90));
int var34 = var0.get(PacketIO.PROTO_INT, ++var90);
var90 += 4;
if (var86.put(var116, var34) != null) {
throw ProtocolException.duplicateKey("CarryInteractions", var116);
}
}
var4 = var90 - var3;
} else {
requireSlot(var0, var1 + 230, -1, "CarryInteractions");
}
Map var93 = null;
if (hasCarryHudInputBindings(var0, var1)) {
requireSlot(var0, var1 + 234, var4, "CarryHudInputBindings");
int var97 = var3 + var4;
long var103 = VarInt.getWithLength(var0, var97);
if (var103 == -1L) {
throw ProtocolException.invalidVarInt("CarryHudInputBindings");
}
int var113 = (int)var103;
if (var113 > 4096000) {
throw ProtocolException.dictionaryTooLarge("CarryHudInputBindings", var113, 4096000);
}
var97 += (int)(var103 >>> 32);
if (var97 + var113 * 2L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("CarryHudInputBindings", (int)Math.min(var97 + var113 * 2L, 2147483647L), (int)var0.byteSize());
}
var93 = new HashMap<>(var113);
for (int var117 = 0; var117 < var113; var117++) {
InteractionType var123 = InteractionType.fromValue(var0.get(PacketIO.PROTO_BYTE, var97));
long var35 = VarInt.getWithLength(var0, ++var97);
String var37 = PacketIO.readVarString("value", var0, var97, 0, 4096000, var35);
var97 += (int)var35 + (int)(var35 >>> 32);
if (var93.put(var123, var37) != null) {
throw ProtocolException.duplicateKey("CarryHudInputBindings", var123);
}
}
var4 = var97 - var3;
} else {
requireSlot(var0, var1 + 234, -1, "CarryHudInputBindings");
}
Map var100 = null;
if (hasInteractionVars(var0, var1)) {
requireSlot(var0, var1 + 238, var4, "InteractionVars");
int var104 = var3 + var4;
long var110 = VarInt.getWithLength(var0, var104);
if (var110 == -1L) {
throw ProtocolException.invalidVarInt("InteractionVars");
}
int var118 = (int)var110;
if (var118 > 4096000) {
throw ProtocolException.dictionaryTooLarge("InteractionVars", var118, 4096000);
}
var104 += (int)(var110 >>> 32);
if (var104 + var118 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("InteractionVars", (int)Math.min(var104 + var118 * 5L, 2147483647L), (int)var0.byteSize());
}
var100 = new HashMap<>(var118);
for (int var124 = 0; var124 < var118; var124++) {
long var130 = VarInt.getWithLength(var0, var104);
String var139 = PacketIO.readVarString("key", var0, var104, 0, 4096000, var130);
var104 += (int)var130 + (int)(var130 >>> 32);
int var38 = var0.get(PacketIO.PROTO_INT, var104);
var104 += 4;
if (var100.put(var139, var38) != null) {
throw ProtocolException.duplicateKey("InteractionVars", var139);
}
}
var4 = var104 - var3;
} else {
requireSlot(var0, var1 + 238, -1, "InteractionVars");
}
InteractionConfiguration var107 = null;
if (hasInteractionConfig(var0, var1)) {
requireSlot(var0, var1 + 242, var4, "InteractionConfig");
var107 = InteractionConfiguration.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 242, -1, "InteractionConfig");
}
String var111 = null;
if (hasDroppedItemAnimation(var0, var1)) {
requireSlot(var0, var1 + 246, var4, "DroppedItemAnimation");
int var114 = var3 + var4;
long var119 = VarInt.getWithLength(var0, var114);
var111 = PacketIO.readVarString("DroppedItemAnimation", var0, var114, 0, 4096000, var119);
var4 += (int)var119 + (int)(var119 >>> 32);
} else {
requireSlot(var0, var1 + 246, -1, "DroppedItemAnimation");
}
int[] var115 = null;
if (hasTagIndexes(var0, var1)) {
requireSlot(var0, var1 + 250, var4, "TagIndexes");
int var120 = var3 + var4;
long var125 = VarInt.getWithLength(var0, var120);
if (var125 == -1L) {
throw ProtocolException.invalidVarInt("TagIndexes");
}
int var36 = (int)var125;
if (var36 > 4096000) {
throw ProtocolException.arrayTooLong("TagIndexes", var36, 4096000);
}
int var140 = (int)(var125 >>> 32);
if (var120 + var140 + var36 * 4L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("TagIndexes", (int)Math.min(var120 + var140 + var36 * 4L, 2147483647L), (int)var0.byteSize());
}
var120 += var140;
var115 = new int[var36];
MemorySegment.copy(var0, PacketIO.PROTO_INT, var120, var115, 0, var36);
var4 = var120 + var36 * 4 - var3;
} else {
requireSlot(var0, var1 + 250, -1, "TagIndexes");
}
Map var122 = null;
if (hasItemAppearanceConditions(var0, var1)) {
requireSlot(var0, var1 + 254, var4, "ItemAppearanceConditions");
int var126 = var3 + var4;
long var131 = VarInt.getWithLength(var0, var126);
if (var131 == -1L) {
throw ProtocolException.invalidVarInt("ItemAppearanceConditions");
}
int var141 = (int)var131;
if (var141 > 4096000) {
throw ProtocolException.dictionaryTooLarge("ItemAppearanceConditions", var141, 4096000);
}
var126 += (int)(var131 >>> 32);
if (var126 + var141 * 5L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("ItemAppearanceConditions", (int)Math.min(var126 + var141 * 5L, 2147483647L), (int)var0.byteSize());
}
var122 = new HashMap<>(var141);
for (int var143 = 0; var143 < var141; var143++) {
int var39 = var0.get(PacketIO.PROTO_INT, var126);
var126 += 4;
long var40 = VarInt.getWithLength(var0, var126);
if (var40 == -1L) {
throw ProtocolException.invalidVarInt("value");
}
int var42 = (int)var40;
int var43 = (int)(var40 >>> 32);
if (var42 > 4096000) {
throw ProtocolException.arrayTooLong("value", var42, 4096000);
}
if (var126 + var43 + var42 * 38L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("value", var126 + var43 + var42 * 38, (int)var0.byteSize());
}
var126 += var43;
ItemAppearanceCondition[] var44 = new ItemAppearanceCondition[var42];
for (int var45 = 0; var45 < var42; var45++) {
var44[var45] = ItemAppearanceCondition.toObject(var0, var126, var5);
var126 = var5.position;
}
if (var122.put(var39, var44) != null) {
throw ProtocolException.duplicateKey("ItemAppearanceConditions", var39);
}
}
var4 = var126 - var3;
} else {
requireSlot(var0, var1 + 254, -1, "ItemAppearanceConditions");
}
int[] var129 = null;
if (hasDisplayEntityStatsHUD(var0, var1)) {
requireSlot(var0, var1 + 258, var4, "DisplayEntityStatsHUD");
int var132 = var3 + var4;
long var135 = VarInt.getWithLength(var0, var132);
if (var135 == -1L) {
throw ProtocolException.invalidVarInt("DisplayEntityStatsHUD");
}
int var144 = (int)var135;
if (var144 > 4096000) {
throw ProtocolException.arrayTooLong("DisplayEntityStatsHUD", var144, 4096000);
}
int var145 = (int)(var135 >>> 32);
if (var132 + var145 + var144 * 4L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("DisplayEntityStatsHUD", (int)Math.min(var132 + var145 + var144 * 4L, 2147483647L), (int)var0.byteSize());
}
var132 += var145;
var129 = new int[var144];
MemorySegment.copy(var0, PacketIO.PROTO_INT, var132, var129, 0, var144);
var4 = var132 + var144 * 4 - var3;
} else {
requireSlot(var0, var1 + 258, -1, "DisplayEntityStatsHUD");
}
ItemHudUI[] var134 = null;
if (hasHudUI(var0, var1)) {
requireSlot(var0, var1 + 262, var4, "HudUI");
int var136 = var3 + var4;
long var142 = VarInt.getWithLength(var0, var136);
if (var142 == -1L) {
throw ProtocolException.invalidVarInt("HudUI");
}
int var146 = (int)var142;
if (var146 > 4096000) {
throw ProtocolException.arrayTooLong("HudUI", var146, 4096000);
}
int var147 = (int)(var142 >>> 32);
if (var136 + var147 + var146 * 2L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("HudUI", (int)Math.min(var136 + var147 + var146 * 2L, 2147483647L), (int)var0.byteSize());
}
var136 += var147;
var134 = new ItemHudUI[var146];
for (int var41 = 0; var41 < var146; var41++) {
var134[var41] = ItemHudUI.toObject(var0, var136, var5);
var136 = var5.position;
}
var4 = var136 - var3;
} else {
requireSlot(var0, var1 + 262, -1, "HudUI");
}
ItemBase var138 = new ItemBase(
var6,
var46,
PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 5), "Scale"),
var48,
var50,
var52,
var0.get(PacketIO.PROTO_BOOL, var1 + 9),
var0.get(PacketIO.PROTO_INT, var1 + 10),
var0.get(PacketIO.PROTO_INT, var1 + 14),
var54,
hasIconProperties(var0, var1) ? AssetIconProperties.toObject(var0, var1 + 18) : null,
var56,
var0.get(PacketIO.PROTO_INT, var1 + 43),
var0.get(PacketIO.PROTO_INT, var1 + 47),
var57,
(var0.get(PacketIO.PROTO_BYTE, var1 + 51) & 1) != 0,
(var0.get(PacketIO.PROTO_BYTE, var1 + 51) & 2) != 0,
var0.get(PacketIO.PROTO_INT, var1 + 52),
var59,
var60,
var16,
hasGliderConfig(var0, var1) ? ItemGlider.toObject(var0, var1 + 56) : null,
var61,
hasBlockSelectorTool(var0, var1) ? BlockSelectorToolData.toObject(var0, var1 + 72) : null,
var62,
var63,
var20,
var64,
var67,
var69,
var72,
var76,
hasLight(var0, var1) ? ColorLight.toObject(var0, var1 + 76) : null,
PacketIO.requireFinite(var0.get(PacketIO.PROTO_DOUBLE, var1 + 80), "Durability"),
var0.get(PacketIO.PROTO_INT, var1 + 88),
var0.get(PacketIO.PROTO_INT, var1 + 92),
var80,
var86,
var93,
var100,
var107,
var111,
var115,
var122,
var129,
hasPullbackConfig(var0, var1) ? ItemPullbackConfiguration.toObject(var0, var1 + 96) : null,
(var0.get(PacketIO.PROTO_BYTE, var1 + 145) & 1) != 0,
(var0.get(PacketIO.PROTO_BYTE, var1 + 145) & 2) != 0,
var134
);
if (var2 != null) {
var2.position = var3 + var4;
}
class="kw">return var138;
}
class="kw">public int serialize(@Nonnull MemorySegment var1, int var2) {
byte var3 = 0;
if (this.iconProperties != null) {
var3 = (byte)(var3 | 1);
}
if (this.gliderConfig != null) {
var3 = (byte)(var3 | 2);
}
if (this.blockSelectorTool != null) {
var3 = (byte)(var3 | 4);
}
if (this.light != null) {
var3 = (byte)(var3 | 8);
}
if (this.pullbackConfig != null) {
var3 = (byte)(var3 | 16);
}
if (this.id != null) {
var3 = (byte)(var3 | 32);
}
if (this.model != null) {
var3 = (byte)(var3 | 64);
}
if (this.texture != null) {
var3 = (byte)(var3 | 128);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 0, var3);
var3 = 0;
if (this.animation != null) {
var3 = (byte)(var3 | 1);
}
if (this.playerAnimationsId != null) {
var3 = (byte)(var3 | 2);
}
if (this.icon != null) {
var3 = (byte)(var3 | 4);
}
if (this.translationProperties != null) {
var3 = (byte)(var3 | 8);
}
if (this.resourceTypes != null) {
var3 = (byte)(var3 | 16);
}
if (this.tool != null) {
var3 = (byte)(var3 | 32);
}
if (this.weapon != null) {
var3 = (byte)(var3 | 64);
}
if (this.armor != null) {
var3 = (byte)(var3 | 128);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 1, var3);
var3 = 0;
if (this.utility != null) {
var3 = (byte)(var3 | 1);
}
if (this.builderToolData != null) {
var3 = (byte)(var3 | 2);
}
if (this.itemEntity != null) {
var3 = (byte)(var3 | 4);
}
if (this.set != null) {
var3 = (byte)(var3 | 8);
}
if (this.categories != null) {
var3 = (byte)(var3 | 16);
}
if (this.subCategory != null) {
var3 = (byte)(var3 | 32);
}
if (this.particles != null) {
var3 = (byte)(var3 | 64);
}
if (this.firstPersonParticles != null) {
var3 = (byte)(var3 | 128);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 2, var3);
var3 = 0;
if (this.trails != null) {
var3 = (byte)(var3 | 1);
}
if (this.interactions != null) {
var3 = (byte)(var3 | 2);
}
if (this.carryInteractions != null) {
var3 = (byte)(var3 | 4);
}
if (this.carryHudInputBindings != null) {
var3 = (byte)(var3 | 8);
}
if (this.interactionVars != null) {
var3 = (byte)(var3 | 16);
}
if (this.interactionConfig != null) {
var3 = (byte)(var3 | 32);
}
if (this.droppedItemAnimation != null) {
var3 = (byte)(var3 | 64);
}
if (this.tagIndexes != null) {
var3 = (byte)(var3 | 128);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 3, var3);
var3 = 0;
if (this.itemAppearanceConditions != null) {
var3 = (byte)(var3 | 1);
}
if (this.displayEntityStatsHUD != null) {
var3 = (byte)(var3 | 2);
}
if (this.hudUI != null) {
var3 = (byte)(var3 | 4);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 4, var3);
PacketIO.requireFinite(this.scale, "Scale");
var1.set(PacketIO.PROTO_FLOAT, var2 + 5, this.scale);
var1.set(PacketIO.PROTO_BOOL, var2 + 9, this.usePlayerAnimations);
var1.set(PacketIO.PROTO_INT, var2 + 10, this.maxStack);
var1.set(PacketIO.PROTO_INT, var2 + 14, this.reticleIndex);
if (this.iconProperties != null) {
this.iconProperties.serialize(var1, var2 + 18);
} else {
var1.asSlice(var2 + 18, 25L).fill((byte)0);
}
var1.set(PacketIO.PROTO_INT, var2 + 43, this.itemLevel);
var1.set(PacketIO.PROTO_INT, var2 + 47, this.qualityIndex);
byte var4 = 0;
if (this.consumable) {
var4 = (byte)(var4 | 1);
}
if (this.variant) {
var4 = (byte)(var4 | 2);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 51 + 0, var4);
var1.set(PacketIO.PROTO_INT, var2 + 52, this.blockId);
if (this.gliderConfig != null) {
this.gliderConfig.serialize(var1, var2 + 56);
} else {
var1.asSlice(var2 + 56, 16L).fill((byte)0);
}
if (this.blockSelectorTool != null) {
this.blockSelectorTool.serialize(var1, var2 + 72);
} else {
var1.asSlice(var2 + 72, 4L).fill((byte)0);
}
if (this.light != null) {
this.light.serialize(var1, var2 + 76);
} else {
var1.asSlice(var2 + 76, 4L).fill((byte)0);
}
PacketIO.requireFinite(this.durability, "Durability");
var1.set(PacketIO.PROTO_DOUBLE, var2 + 80, this.durability);
var1.set(PacketIO.PROTO_INT, var2 + 88, this.soundEventIndex);
var1.set(PacketIO.PROTO_INT, var2 + 92, this.itemSoundSetIndex);
if (this.pullbackConfig != null) {
this.pullbackConfig.serialize(var1, var2 + 96);
} else {
var1.asSlice(var2 + 96, 49L).fill((byte)0);
}
byte var5 = 0;
if (this.clipsGeometry) {
var5 = (byte)(var5 | 1);
}
if (this.renderDeployablePreview) {
var5 = (byte)(var5 | 2);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 145 + 0, var5);
int var6 = var2 + 266;
if (this.id != null) {
var1.set(PacketIO.PROTO_INT, var2 + 146, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.id, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 146, -1);
}
if (this.model != null) {
var1.set(PacketIO.PROTO_INT, var2 + 150, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.model, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 150, -1);
}
if (this.texture != null) {
var1.set(PacketIO.PROTO_INT, var2 + 154, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.texture, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 154, -1);
}
if (this.animation != null) {
var1.set(PacketIO.PROTO_INT, var2 + 158, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.animation, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 158, -1);
}
if (this.playerAnimationsId != null) {
var1.set(PacketIO.PROTO_INT, var2 + 162, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.playerAnimationsId, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 162, -1);
}
if (this.icon != null) {
var1.set(PacketIO.PROTO_INT, var2 + 166, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.icon, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 166, -1);
}
if (this.translationProperties != null) {
var1.set(PacketIO.PROTO_INT, var2 + 170, var6 - var2 - 266);
var6 += this.translationProperties.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 170, -1);
}
if (this.resourceTypes != null) {
var1.set(PacketIO.PROTO_INT, var2 + 174, var6 - var2 - 266);
if (this.resourceTypes.length > 4096000) {
throw ProtocolException.arrayTooLong("ResourceTypes", this.resourceTypes.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.resourceTypes.length);
int var7 = 0;
for (int var8 = 0; var8 < this.resourceTypes.length; var8++) {
var7 += this.resourceTypes[var8].serialize(var1, var6 + var7);
}
var6 += var7;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 174, -1);
}
if (this.tool != null) {
var1.set(PacketIO.PROTO_INT, var2 + 178, var6 - var2 - 266);
var6 += this.tool.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 178, -1);
}
if (this.weapon != null) {
var1.set(PacketIO.PROTO_INT, var2 + 182, var6 - var2 - 266);
var6 += this.weapon.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 182, -1);
}
if (this.armor != null) {
var1.set(PacketIO.PROTO_INT, var2 + 186, var6 - var2 - 266);
var6 += this.armor.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 186, -1);
}
if (this.utility != null) {
var1.set(PacketIO.PROTO_INT, var2 + 190, var6 - var2 - 266);
var6 += this.utility.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 190, -1);
}
if (this.builderToolData != null) {
var1.set(PacketIO.PROTO_INT, var2 + 194, var6 - var2 - 266);
var6 += this.builderToolData.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 194, -1);
}
if (this.itemEntity != null) {
var1.set(PacketIO.PROTO_INT, var2 + 198, var6 - var2 - 266);
var6 += this.itemEntity.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 198, -1);
}
if (this.set != null) {
var1.set(PacketIO.PROTO_INT, var2 + 202, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.set, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 202, -1);
}
if (this.categories != null) {
var1.set(PacketIO.PROTO_INT, var2 + 206, var6 - var2 - 266);
if (this.categories.length > 4096000) {
throw ProtocolException.arrayTooLong("Categories", this.categories.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.categories.length);
int var30 = 0;
for (int var40 = 0; var40 < this.categories.length; var40++) {
var30 += PacketIO.writeVarString(var1, var6 + var30, this.categories[var40], 4096000);
}
var6 += var30;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 206, -1);
}
if (this.subCategory != null) {
var1.set(PacketIO.PROTO_INT, var2 + 210, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.subCategory, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 210, -1);
}
if (this.particles != null) {
var1.set(PacketIO.PROTO_INT, var2 + 214, var6 - var2 - 266);
if (this.particles.length > 4096000) {
throw ProtocolException.arrayTooLong("Particles", this.particles.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.particles.length);
int var31 = 0;
for (int var41 = 0; var41 < this.particles.length; var41++) {
var31 += this.particles[var41].serialize(var1, var6 + var31);
}
var6 += var31;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 214, -1);
}
if (this.firstPersonParticles != null) {
var1.set(PacketIO.PROTO_INT, var2 + 218, var6 - var2 - 266);
if (this.firstPersonParticles.length > 4096000) {
throw ProtocolException.arrayTooLong("FirstPersonParticles", this.firstPersonParticles.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.firstPersonParticles.length);
int var32 = 0;
for (int var42 = 0; var42 < this.firstPersonParticles.length; var42++) {
var32 += this.firstPersonParticles[var42].serialize(var1, var6 + var32);
}
var6 += var32;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 218, -1);
}
if (this.trails != null) {
var1.set(PacketIO.PROTO_INT, var2 + 222, var6 - var2 - 266);
if (this.trails.length > 4096000) {
throw ProtocolException.arrayTooLong("Trails", this.trails.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.trails.length);
int var33 = 0;
for (int var43 = 0; var43 < this.trails.length; var43++) {
var33 += this.trails[var43].serialize(var1, var6 + var33);
}
var6 += var33;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 222, -1);
}
if (this.interactions != null) {
var1.set(PacketIO.PROTO_INT, var2 + 226, var6 - var2 - 266);
if (this.interactions.size() > 4096000) {
throw ProtocolException.dictionaryTooLarge("Interactions", this.interactions.size(), 4096000);
}
var6 += VarInt.set(var1, var6, this.interactions.size());
for (Entry var44 : this.interactions.entrySet()) {
var1.set(PacketIO.PROTO_BYTE, var6, (byte)var44.getKey().getValue());
var1.set(PacketIO.PROTO_INT, ++var6, var44.getValue());
var6 += 4;
}
} else {
var1.set(PacketIO.PROTO_INT, var2 + 226, -1);
}
if (this.carryInteractions != null) {
var1.set(PacketIO.PROTO_INT, var2 + 230, var6 - var2 - 266);
if (this.carryInteractions.size() > 4096000) {
throw ProtocolException.dictionaryTooLarge("CarryInteractions", this.carryInteractions.size(), 4096000);
}
var6 += VarInt.set(var1, var6, this.carryInteractions.size());
for (Entry var45 : this.carryInteractions.entrySet()) {
var1.set(PacketIO.PROTO_BYTE, var6, (byte)var45.getKey().getValue());
var1.set(PacketIO.PROTO_INT, ++var6, var45.getValue());
var6 += 4;
}
} else {
var1.set(PacketIO.PROTO_INT, var2 + 230, -1);
}
if (this.carryHudInputBindings != null) {
var1.set(PacketIO.PROTO_INT, var2 + 234, var6 - var2 - 266);
if (this.carryHudInputBindings.size() > 4096000) {
throw ProtocolException.dictionaryTooLarge("CarryHudInputBindings", this.carryHudInputBindings.size(), 4096000);
}
var6 += VarInt.set(var1, var6, this.carryHudInputBindings.size());
for (Entry var46 : this.carryHudInputBindings.entrySet()) {
var1.set(PacketIO.PROTO_BYTE, var6, (byte)var46.getKey().getValue());
var6 = ++var6 + PacketIO.writeVarString(var1, var6, var46.getValue(), 4096000);
}
} else {
var1.set(PacketIO.PROTO_INT, var2 + 234, -1);
}
if (this.interactionVars != null) {
var1.set(PacketIO.PROTO_INT, var2 + 238, var6 - var2 - 266);
if (this.interactionVars.size() > 4096000) {
throw ProtocolException.dictionaryTooLarge("InteractionVars", this.interactionVars.size(), 4096000);
}
var6 += VarInt.set(var1, var6, this.interactionVars.size());
for (Entry var47 : this.interactionVars.entrySet()) {
var6 += PacketIO.writeVarString(var1, var6, var47.getKey(), 4096000);
var1.set(PacketIO.PROTO_INT, var6, var47.getValue());
var6 += 4;
}
} else {
var1.set(PacketIO.PROTO_INT, var2 + 238, -1);
}
if (this.interactionConfig != null) {
var1.set(PacketIO.PROTO_INT, var2 + 242, var6 - var2 - 266);
var6 += this.interactionConfig.serialize(var1, var6);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 242, -1);
}
if (this.droppedItemAnimation != null) {
var1.set(PacketIO.PROTO_INT, var2 + 246, var6 - var2 - 266);
var6 += PacketIO.writeVarString(var1, var6, this.droppedItemAnimation, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 246, -1);
}
if (this.tagIndexes != null) {
var1.set(PacketIO.PROTO_INT, var2 + 250, var6 - var2 - 266);
if (this.tagIndexes.length > 4096000) {
throw ProtocolException.arrayTooLong("TagIndexes", this.tagIndexes.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.tagIndexes.length);
MemorySegment.copy(this.tagIndexes, 0, var1, PacketIO.PROTO_INT, var6, this.tagIndexes.length);
var6 += this.tagIndexes.length * 4;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 250, -1);
}
if (this.itemAppearanceConditions != null) {
var1.set(PacketIO.PROTO_INT, var2 + 254, var6 - var2 - 266);
if (this.itemAppearanceConditions.size() > 4096000) {
throw ProtocolException.dictionaryTooLarge("ItemAppearanceConditions", this.itemAppearanceConditions.size(), 4096000);
}
var6 += VarInt.set(var1, var6, this.itemAppearanceConditions.size());
for (Entry var48 : this.itemAppearanceConditions.entrySet()) {
var1.set(PacketIO.PROTO_INT, var6, var48.getKey());
var6 += 4;
var6 += VarInt.set(var1, var6, var48.getValue().length);
for (ItemAppearanceCondition var12 : var48.getValue()) {
var6 += var12.serialize(var1, var6);
}
}
} else {
var1.set(PacketIO.PROTO_INT, var2 + 254, -1);
}
if (this.displayEntityStatsHUD != null) {
var1.set(PacketIO.PROTO_INT, var2 + 258, var6 - var2 - 266);
if (this.displayEntityStatsHUD.length > 4096000) {
throw ProtocolException.arrayTooLong("DisplayEntityStatsHUD", this.displayEntityStatsHUD.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.displayEntityStatsHUD.length);
MemorySegment.copy(this.displayEntityStatsHUD, 0, var1, PacketIO.PROTO_INT, var6, this.displayEntityStatsHUD.length);
var6 += this.displayEntityStatsHUD.length * 4;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 258, -1);
}
if (this.hudUI != null) {
var1.set(PacketIO.PROTO_INT, var2 + 262, var6 - var2 - 266);
if (this.hudUI.length > 4096000) {
throw ProtocolException.arrayTooLong("HudUI", this.hudUI.length, 4096000);
}
var6 += VarInt.set(var1, var6, this.hudUI.length);
int var39 = 0;
for (int var49 = 0; var49 < this.hudUI.length; var49++) {
var39 += this.hudUI[var49].serialize(var1, var6 + var39);
}
var6 += var39;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 262, -1);
}
class="kw">return var6 - var2;
}
class="kw">public int computeSize() {
int var1 = 266;
if (this.id != null) {
var1 += PacketIO.stringSize(this.id);
}
if (this.model != null) {
var1 += PacketIO.stringSize(this.model);
}
if (this.texture != null) {
var1 += PacketIO.stringSize(this.texture);
}
if (this.animation != null) {
var1 += PacketIO.stringSize(this.animation);
}
if (this.playerAnimationsId != null) {
var1 += PacketIO.stringSize(this.playerAnimationsId);
}
if (this.icon != null) {
var1 += PacketIO.stringSize(this.icon);
}
if (this.translationProperties != null) {
var1 += this.translationProperties.computeSize();
}
if (this.resourceTypes != null) {
int var2 = 0;
for (ItemResourceType var6 : this.resourceTypes) {
var2 += var6.computeSize();
}
var1 += VarInt.size(this.resourceTypes.length) + var2;
}
if (this.tool != null) {
var1 += this.tool.computeSize();
}
if (this.weapon != null) {
var1 += this.weapon.computeSize();
}
if (this.armor != null) {
var1 += this.armor.computeSize();
}
if (this.utility != null) {
var1 += this.utility.computeSize();
}
if (this.builderToolData != null) {
var1 += this.builderToolData.computeSize();
}
if (this.itemEntity != null) {
var1 += this.itemEntity.computeSize();
}
if (this.set != null) {
var1 += PacketIO.stringSize(this.set);
}
if (this.categories != null) {
int var7 = 0;
for (String var36 : this.categories) {
var7 += PacketIO.stringSize(var36);
}
var1 += VarInt.size(this.categories.length) + var7;
}
if (this.subCategory != null) {
var1 += PacketIO.stringSize(this.subCategory);
}
if (this.particles != null) {
int var8 = 0;
for (ModelParticle var37 : this.particles) {
var8 += var37.computeSize();
}
var1 += VarInt.size(this.particles.length) + var8;
}
if (this.firstPersonParticles != null) {
int var9 = 0;
for (ModelParticle var38 : this.firstPersonParticles) {
var9 += var38.computeSize();
}
var1 += VarInt.size(this.firstPersonParticles.length) + var9;
}
if (this.trails != null) {
int var10 = 0;
for (ModelTrail var39 : this.trails) {
var10 += var39.computeSize();
}
var1 += VarInt.size(this.trails.length) + var10;
}
if (this.interactions != null) {
var1 += VarInt.size(this.interactions.size()) + this.interactions.size() * 5;
}
if (this.carryInteractions != null) {
var1 += VarInt.size(this.carryInteractions.size()) + this.carryInteractions.size() * 5;
}
if (this.carryHudInputBindings != null) {
int var11 = 0;
for (Entry var27 : this.carryHudInputBindings.entrySet()) {
var11 += 1 + PacketIO.stringSize(var27.getValue());
}
var1 += VarInt.size(this.carryHudInputBindings.size()) + var11;
}
if (this.interactionVars != null) {
int var12 = 0;
for (Entry var28 : this.interactionVars.entrySet()) {
var12 += PacketIO.stringSize(var28.getKey()) + 4;
}
var1 += VarInt.size(this.interactionVars.size()) + var12;
}
if (this.interactionConfig != null) {
var1 += this.interactionConfig.computeSize();
}
if (this.droppedItemAnimation != null) {
var1 += PacketIO.stringSize(this.droppedItemAnimation);
}
if (this.tagIndexes != null) {
var1 += VarInt.size(this.tagIndexes.length) + this.tagIndexes.length * 4;
}
if (this.itemAppearanceConditions != null) {
int var13 = 0;
for (Entry var29 : this.itemAppearanceConditions.entrySet()) {
var13 += 4 + VarInt.size(var29.getValue().length) + Arrays.stream(var29.getValue()).mapToInt(var0 -> var0.computeSize()).sum();
}
var1 += VarInt.size(this.itemAppearanceConditions.size()) + var13;
}
if (this.displayEntityStatsHUD != null) {
var1 += VarInt.size(this.displayEntityStatsHUD.length) + this.displayEntityStatsHUD.length * 4;
}
if (this.hudUI != null) {
int var14 = 0;
for (ItemHudUI var40 : this.hudUI) {
var14 += var40.computeSize();
}
var1 += VarInt.size(this.hudUI.length) + var14;
}
class="kw">return var1;
}
class="kw">public ItemBase clone() {
ItemBase var1 = new ItemBase();
var1.id = this.id;
var1.model = this.model;
var1.scale = this.scale;
var1.texture = this.texture;
var1.animation = this.animation;
var1.playerAnimationsId = this.playerAnimationsId;
var1.usePlayerAnimations = this.usePlayerAnimations;
var1.maxStack = this.maxStack;
var1.reticleIndex = this.reticleIndex;
var1.icon = this.icon;
var1.iconProperties = this.iconProperties != null ? this.iconProperties.clone() : null;
var1.translationProperties = this.translationProperties != null ? this.translationProperties.clone() : null;
var1.itemLevel = this.itemLevel;
var1.qualityIndex = this.qualityIndex;
var1.resourceTypes = this.resourceTypes != null ? Arrays.stream(this.resourceTypes).map(var0 -> var0.clone()).toArray(ItemResourceType[]::new) : null;
var1.consumable = this.consumable;
var1.variant = this.variant;
var1.blockId = this.blockId;
var1.tool = this.tool != null ? this.tool.clone() : null;
var1.weapon = this.weapon != null ? this.weapon.clone() : null;
var1.armor = this.armor != null ? this.armor.clone() : null;
var1.gliderConfig = this.gliderConfig != null ? this.gliderConfig.clone() : null;
var1.utility = this.utility != null ? this.utility.clone() : null;
var1.blockSelectorTool = this.blockSelectorTool != null ? this.blockSelectorTool.clone() : null;
var1.builderToolData = this.builderToolData != null ? this.builderToolData.clone() : null;
var1.itemEntity = this.itemEntity != null ? this.itemEntity.clone() : null;
var1.set = this.set;
var1.categories = this.categories != null ? Arrays.copyOf(this.categories, this.categories.length) : null;
var1.subCategory = this.subCategory;
var1.particles = this.particles != null ? Arrays.stream(this.particles).map(var0 -> var0.clone()).toArray(ModelParticle[]::new) : null;
var1.firstPersonParticles = this.firstPersonParticles != null
? Arrays.stream(this.firstPersonParticles).map(var0 -> var0.clone()).toArray(ModelParticle[]::new)
: null;
var1.trails = this.trails != null ? Arrays.stream(this.trails).map(var0 -> var0.clone()).toArray(ModelTrail[]::new) : null;
var1.light = this.light != null ? this.light.clone() : null;
var1.durability = this.durability;
var1.soundEventIndex = this.soundEventIndex;
var1.itemSoundSetIndex = this.itemSoundSetIndex;
var1.interactions = this.interactions != null ? new HashMap<>(this.interactions) : null;
var1.carryInteractions = this.carryInteractions != null ? new HashMap<>(this.carryInteractions) : null;
var1.carryHudInputBindings = this.carryHudInputBindings != null ? new HashMap<>(this.carryHudInputBindings) : null;
var1.interactionVars = this.interactionVars != null ? new HashMap<>(this.interactionVars) : null;
var1.interactionConfig = this.interactionConfig != null ? this.interactionConfig.clone() : null;
var1.droppedItemAnimation = this.droppedItemAnimation;
var1.tagIndexes = this.tagIndexes != null ? Arrays.copyOf(this.tagIndexes, this.tagIndexes.length) : null;
if (this.itemAppearanceConditions != null) {
Map var2 = new HashMap<>();
for (Entry var4 : this.itemAppearanceConditions.entrySet()) {
var2.put(var4.getKey(), Arrays.stream(var4.getValue()).map(var0 -> var0.clone()).toArray(ItemAppearanceCondition[]::new));
}
var1.itemAppearanceConditions = var2;
}
var1.displayEntityStatsHUD = this.displayEntityStatsHUD != null ? Arrays.copyOf(this.displayEntityStatsHUD, this.displayEntityStatsHUD.length) : null;
var1.pullbackConfig = this.pullbackConfig != null ? this.pullbackConfig.clone() : null;
var1.clipsGeometry = this.clipsGeometry;
var1.renderDeployablePreview = this.renderDeployablePreview;
var1.hudUI = this.hudUI != null ? Arrays.stream(this.hudUI).map(var0 -> var0.clone()).toArray(ItemHudUI[]::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 ItemBase var2)
? false
: Objects.equals(this.id, var2.id)
&& Objects.equals(this.model, var2.model)
&& this.scale == var2.scale
&& Objects.equals(this.texture, var2.texture)
&& Objects.equals(this.animation, var2.animation)
&& Objects.equals(this.playerAnimationsId, var2.playerAnimationsId)
&& this.usePlayerAnimations == var2.usePlayerAnimations
&& this.maxStack == var2.maxStack
&& this.reticleIndex == var2.reticleIndex
&& Objects.equals(this.icon, var2.icon)
&& Objects.equals(this.iconProperties, var2.iconProperties)
&& Objects.equals(this.translationProperties, var2.translationProperties)
&& this.itemLevel == var2.itemLevel
&& this.qualityIndex == var2.qualityIndex
&& Arrays.equals(this.resourceTypes, var2.resourceTypes)
&& this.consumable == var2.consumable
&& this.variant == var2.variant
&& this.blockId == var2.blockId
&& Objects.equals(this.tool, var2.tool)
&& Objects.equals(this.weapon, var2.weapon)
&& Objects.equals(this.armor, var2.armor)
&& Objects.equals(this.gliderConfig, var2.gliderConfig)
&& Objects.equals(this.utility, var2.utility)
&& Objects.equals(this.blockSelectorTool, var2.blockSelectorTool)
&& Objects.equals(this.builderToolData, var2.builderToolData)
&& Objects.equals(this.itemEntity, var2.itemEntity)
&& Objects.equals(this.set, var2.set)
&& Arrays.equals(this.categories, var2.categories)
&& Objects.equals(this.subCategory, var2.subCategory)
&& Arrays.equals(this.particles, var2.particles)
&& Arrays.equals(this.firstPersonParticles, var2.firstPersonParticles)
&& Arrays.equals(this.trails, var2.trails)
&& Objects.equals(this.light, var2.light)
&& this.durability == var2.durability
&& this.soundEventIndex == var2.soundEventIndex
&& this.itemSoundSetIndex == var2.itemSoundSetIndex
&& Objects.equals(this.interactions, var2.interactions)
&& Objects.equals(this.carryInteractions, var2.carryInteractions)
&& Objects.equals(this.carryHudInputBindings, var2.carryHudInputBindings)
&& Objects.equals(this.interactionVars, var2.interactionVars)
&& Objects.equals(this.interactionConfig, var2.interactionConfig)
&& Objects.equals(this.droppedItemAnimation, var2.droppedItemAnimation)
&& Arrays.equals(this.tagIndexes, var2.tagIndexes)
&& Objects.equals(this.itemAppearanceConditions, var2.itemAppearanceConditions)
&& Arrays.equals(this.displayEntityStatsHUD, var2.displayEntityStatsHUD)
&& Objects.equals(this.pullbackConfig, var2.pullbackConfig)
&& this.clipsGeometry == var2.clipsGeometry
&& this.renderDeployablePreview == var2.renderDeployablePreview
&& Arrays.equals(this.hudUI, var2.hudUI);
}
}
@Override
class="kw">public int hashCode() {
int var1 = 1;
var1 = 31 * var1 + Objects.hashCode(this.id);
var1 = 31 * var1 + Objects.hashCode(this.model);
var1 = 31 * var1 + Float.hashCode(this.scale);
var1 = 31 * var1 + Objects.hashCode(this.texture);
var1 = 31 * var1 + Objects.hashCode(this.animation);
var1 = 31 * var1 + Objects.hashCode(this.playerAnimationsId);
var1 = 31 * var1 + Boolean.hashCode(this.usePlayerAnimations);
var1 = 31 * var1 + Integer.hashCode(this.maxStack);
var1 = 31 * var1 + Integer.hashCode(this.reticleIndex);
var1 = 31 * var1 + Objects.hashCode(this.icon);
var1 = 31 * var1 + Objects.hashCode(this.iconProperties);
var1 = 31 * var1 + Objects.hashCode(this.translationProperties);
var1 = 31 * var1 + Integer.hashCode(this.itemLevel);
var1 = 31 * var1 + Integer.hashCode(this.qualityIndex);
var1 = 31 * var1 + Arrays.hashCode(this.resourceTypes);
var1 = 31 * var1 + Boolean.hashCode(this.consumable);
var1 = 31 * var1 + Boolean.hashCode(this.variant);
var1 = 31 * var1 + Integer.hashCode(this.blockId);
var1 = 31 * var1 + Objects.hashCode(this.tool);
var1 = 31 * var1 + Objects.hashCode(this.weapon);
var1 = 31 * var1 + Objects.hashCode(this.armor);
var1 = 31 * var1 + Objects.hashCode(this.gliderConfig);
var1 = 31 * var1 + Objects.hashCode(this.utility);
var1 = 31 * var1 + Objects.hashCode(this.blockSelectorTool);
var1 = 31 * var1 + Objects.hashCode(this.builderToolData);
var1 = 31 * var1 + Objects.hashCode(this.itemEntity);
var1 = 31 * var1 + Objects.hashCode(this.set);
var1 = 31 * var1 + Arrays.hashCode(this.categories);
var1 = 31 * var1 + Objects.hashCode(this.subCategory);
var1 = 31 * var1 + Arrays.hashCode(this.particles);
var1 = 31 * var1 + Arrays.hashCode(this.firstPersonParticles);
var1 = 31 * var1 + Arrays.hashCode(this.trails);
var1 = 31 * var1 + Objects.hashCode(this.light);
var1 = 31 * var1 + Double.hashCode(this.durability);
var1 = 31 * var1 + Integer.hashCode(this.soundEventIndex);
var1 = 31 * var1 + Integer.hashCode(this.itemSoundSetIndex);
var1 = 31 * var1 + Objects.hashCode(this.interactions);
var1 = 31 * var1 + Objects.hashCode(this.carryInteractions);
var1 = 31 * var1 + Objects.hashCode(this.carryHudInputBindings);
var1 = 31 * var1 + Objects.hashCode(this.interactionVars);
var1 = 31 * var1 + Objects.hashCode(this.interactionConfig);
var1 = 31 * var1 + Objects.hashCode(this.droppedItemAnimation);
var1 = 31 * var1 + Arrays.hashCode(this.tagIndexes);
var1 = 31 * var1 + Objects.hashCode(this.itemAppearanceConditions);
var1 = 31 * var1 + Arrays.hashCode(this.displayEntityStatsHUD);
var1 = 31 * var1 + Objects.hashCode(this.pullbackConfig);
var1 = 31 * var1 + Boolean.hashCode(this.clipsGeometry);
var1 = 31 * var1 + Boolean.hashCode(this.renderDeployablePreview);
class="kw">return 31 * var1 + Arrays.hashCode(this.hudUI);
}
}