ParticleSpawner class
Пакет: com.hypixel.hytale.protocol
Файл: com/hypixel/hytale/protocol/ParticleSpawner.java
Поля (90)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
int |
NULLABLE_BIT_FIELD_SIZE |
|
int |
var1 |
|
ParticleSpawner |
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 |
|
int |
var10 |
|
long |
var11 |
|
int |
var13 |
|
int |
var14 |
|
Particle |
var16 |
|
|
var16 |
|
UVMotion |
var17 |
|
|
var17 |
|
ParticleSpawner |
var19 |
|
long |
var2 |
|
int |
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 |
|
long |
var3 |
|
int |
var3 |
|
byte |
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
|
var3 |
|
int |
var4 |
|
int |
var4 |
|
|
var4 |
|
|
var4 |
|
|
var4 |
|
byte |
var4 |
|
|
var4 |
|
|
var4 |
|
int |
var5 |
|
int |
var5 |
|
ReadCursor |
var5 |
|
int |
var5 |
|
int |
var6 |
|
String |
var6 |
|
|
var6 |
|
int |
var6 |
|
ParticleAttractor[] |
var7 |
|
int |
var7 |
|
long |
var8 |
|
ParticleAttractor[] |
var9 |
|
|
var9 |
Методы (131)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
ParticleSpawner |
cloneParticleSpawner clone() |
public |
int |
computeSizeint computeSize() |
|
|
for for(int var8 = 0; var8 < var5; var8++) |
|
|
for for(int var15 = 0; var15 < var13; var15++) |
|
|
for for(int var7 = 0; var7 < this.attractors.length; var7++) |
abstract |
return |
getAttractorsreturn getAttractors(var0, 0) |
static |
float |
getCameraOffsetfloat getCameraOffset(MemorySegment var0) |
static |
float |
getCameraOffsetfloat getCameraOffset(MemorySegment var0, int var1) |
abstract |
return |
getCameraOffsetreturn getCameraOffset(var0, 0) |
abstract |
return |
getEmitOffsetreturn getEmitOffset(var0, 0) |
abstract |
return |
getIdreturn getId(var0, 0) |
abstract |
return |
getInitialVelocityreturn getInitialVelocity(var0, 0) |
abstract |
return |
getIntersectionHighlightreturn getIntersectionHighlight(var0, 0) |
static |
boolean |
getIsLowResboolean getIsLowRes(MemorySegment var0) |
static |
boolean |
getIsLowResboolean getIsLowRes(MemorySegment var0, int var1) |
abstract |
return |
getIsLowResreturn getIsLowRes(var0, 0) |
static |
float |
getLifeSpanfloat getLifeSpan(MemorySegment var0) |
static |
float |
getLifeSpanfloat getLifeSpan(MemorySegment var0, int var1) |
abstract |
return |
getLifeSpanreturn getLifeSpan(var0, 0) |
static |
float |
getLightInfluencefloat getLightInfluence(MemorySegment var0) |
static |
float |
getLightInfluencefloat getLightInfluence(MemorySegment var0, int var1) |
abstract |
return |
getLightInfluencereturn getLightInfluence(var0, 0) |
static |
boolean |
getLinearFilteringboolean getLinearFiltering(MemorySegment var0) |
static |
boolean |
getLinearFilteringboolean getLinearFiltering(MemorySegment var0, int var1) |
abstract |
return |
getLinearFilteringreturn getLinearFiltering(var0, 0) |
static |
int |
getMaxConcurrentParticlesint getMaxConcurrentParticles(MemorySegment var0) |
static |
int |
getMaxConcurrentParticlesint getMaxConcurrentParticles(MemorySegment var0, int var1) |
abstract |
return |
getMaxConcurrentParticlesreturn getMaxConcurrentParticles(var0, 0) |
abstract |
return |
getParticlereturn getParticle(var0, 0) |
abstract |
return |
getParticleCollisionreturn getParticleCollision(var0, 0) |
abstract |
return |
getParticleLifeSpanreturn getParticleLifeSpan(var0, 0) |
static |
boolean |
getParticleRotateWithSpawnerboolean getParticleRotateWithSpawner(MemorySegment var0) |
static |
boolean |
getParticleRotateWithSpawnerboolean getParticleRotateWithSpawner(MemorySegment var0, int var1) |
abstract |
return |
getParticleRotateWithSpawnerreturn getParticleRotateWithSpawner(var0, 0) |
static |
ParticleRotationInfluence |
getParticleRotationInfluenceParticleRotationInfluence getParticleRotationInfluence(MemorySegment var0) |
static |
ParticleRotationInfluence |
getParticleRotationInfluenceParticleRotationInfluence getParticleRotationInfluence(MemorySegment var0, int var1) |
abstract |
return |
getParticleRotationInfluencereturn getParticleRotationInfluence(var0, 0) |
static |
FXRenderMode |
getRenderModeFXRenderMode getRenderMode(MemorySegment var0) |
static |
FXRenderMode |
getRenderModeFXRenderMode getRenderMode(MemorySegment var0, int var1) |
abstract |
return |
getRenderModereturn getRenderMode(var0, 0) |
static |
EmitShape |
getShapeEmitShape getShape(MemorySegment var0) |
static |
EmitShape |
getShapeEmitShape getShape(MemorySegment var0, int var1) |
abstract |
return |
getShapereturn getShape(var0, 0) |
static |
boolean |
getSpawnBurstboolean getSpawnBurst(MemorySegment var0) |
static |
boolean |
getSpawnBurstboolean getSpawnBurst(MemorySegment var0, int var1) |
abstract |
return |
getSpawnBurstreturn getSpawnBurst(var0, 0) |
abstract |
return |
getSpawnRatereturn getSpawnRate(var0, 0) |
abstract |
return |
getTotalParticlesreturn getTotalParticles(var0, 0) |
static |
float |
getTrailSpawnerPositionMultiplierfloat getTrailSpawnerPositionMultiplier(MemorySegment var0) |
static |
float |
getTrailSpawnerPositionMultiplierfloat getTrailSpawnerPositionMultiplier(MemorySegment var0, int var1) |
abstract |
return |
getTrailSpawnerPositionMultiplierreturn getTrailSpawnerPositionMultiplier(var0, 0) |
static |
float |
getTrailSpawnerRotationMultiplierfloat getTrailSpawnerRotationMultiplier(MemorySegment var0) |
static |
float |
getTrailSpawnerRotationMultiplierfloat getTrailSpawnerRotationMultiplier(MemorySegment var0, int var1) |
abstract |
return |
getTrailSpawnerRotationMultiplierreturn getTrailSpawnerRotationMultiplier(var0, 0) |
static |
boolean |
getUseEmitDirectionboolean getUseEmitDirection(MemorySegment var0) |
static |
boolean |
getUseEmitDirectionboolean getUseEmitDirection(MemorySegment var0, int var1) |
abstract |
return |
getUseEmitDirectionreturn getUseEmitDirection(var0, 0) |
abstract |
return |
getUvMotionreturn getUvMotion(var0, 0) |
static |
int |
getValidatedOffsetint getValidatedOffset(MemorySegment var0, int var1, int var2, int var3, String var4) |
static |
float |
getVelocityStretchMultiplierfloat getVelocityStretchMultiplier(MemorySegment var0) |
static |
float |
getVelocityStretchMultiplierfloat getVelocityStretchMultiplier(MemorySegment var0, int var1) |
abstract |
return |
getVelocityStretchMultiplierreturn getVelocityStretchMultiplier(var0, 0) |
abstract |
return |
getWaveDelayreturn getWaveDelay(var0, 0) |
static |
boolean |
hasAttractorsboolean hasAttractors(MemorySegment var0, int var1) |
static |
boolean |
hasEmitOffsetboolean hasEmitOffset(MemorySegment var0, int var1) |
static |
boolean |
hasIdboolean hasId(MemorySegment var0, int var1) |
static |
boolean |
hasInitialVelocityboolean hasInitialVelocity(MemorySegment var0, int var1) |
static |
boolean |
hasIntersectionHighlightboolean hasIntersectionHighlight(MemorySegment var0, int var1) |
static |
boolean |
hasParticleboolean hasParticle(MemorySegment var0, int var1) |
static |
boolean |
hasParticleCollisionboolean hasParticleCollision(MemorySegment var0, int var1) |
static |
boolean |
hasParticleLifeSpanboolean hasParticleLifeSpan(MemorySegment var0, int var1) |
static |
boolean |
hasSpawnRateboolean hasSpawnRate(MemorySegment var0, int var1) |
static |
boolean |
hasTotalParticlesboolean hasTotalParticles(MemorySegment var0, int var1) |
static |
boolean |
hasUvMotionboolean hasUvMotion(MemorySegment var0, int var1) |
static |
boolean |
hasWaveDelayboolean hasWaveDelay(MemorySegment var0, int var1) |
|
|
if if(var1 < 0) |
|
|
if if(var3 == -1L) |
|
|
if if(var5 > 4096000) |
|
|
if if(var4 != var2) |
|
|
if if(var11 == -1L) |
|
|
if if(var13 > 4096000) |
|
|
if if(var2 != null) |
|
|
if if(this.emitOffset != null) |
|
|
if if(this.spawnRate != null) |
|
|
if if(this.waveDelay != null) |
|
|
if if(this.totalParticles != null) |
|
|
if if(this.initialVelocity != null) |
|
|
if if(this.particleCollision != null) |
|
|
if if(this.particleLifeSpan != null) |
|
|
if if(this.intersectionHighlight != null) |
|
|
if if(this.id != null) |
|
|
if if(this.particle != null) |
|
|
if if(this.uvMotion != null) |
|
|
if if(this.attractors != null) |
|
|
if if(this.emitOffset != null) |
|
|
if if(this.spawnRate != null) |
|
|
if if(this.waveDelay != null) |
|
|
if if(this.totalParticles != null) |
|
|
if if(this.initialVelocity != null) |
|
|
if if(this.particleRotateWithSpawner) |
|
|
if if(this.isLowRes) |
|
|
if if(this.particleCollision != null) |
|
|
if if(this.particleLifeSpan != null) |
|
|
if if(this.intersectionHighlight != null) |
|
|
if if(this.id != null) |
|
|
if if(this.particle != null) |
|
|
if if(this.uvMotion != null) |
|
|
if if(this.attractors != null) |
|
|
if if(this.attractors.length > 4096000) |
|
|
if if(this.id != null) |
|
|
if if(this.particle != null) |
|
|
if if(this.uvMotion != null) |
|
|
if if(this.attractors != 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 + 130, var4, "Id") |
abstract |
|
requireSlot requireSlot(var0, var1 + 130, -1, "Id") |
abstract |
|
requireSlot requireSlot(var0, var1 + 134, var4, "Particle") |
abstract |
|
requireSlot requireSlot(var0, var1 + 134, -1, "Particle") |
abstract |
|
requireSlot requireSlot(var0, var1 + 138, var4, "UvMotion") |
abstract |
|
requireSlot requireSlot(var0, var1 + 138, -1, "UvMotion") |
abstract |
|
requireSlot requireSlot(var0, var1 + 142, var4, "Attractors") |
abstract |
|
requireSlot requireSlot(var0, var1 + 142, -1, "Attractors") |
public |
int |
serializeint serialize(@Nonnull MemorySegment var1, int var2) |
static |
ParticleSpawner |
toObjectParticleSpawner toObject(MemorySegment var0) |
static |
ParticleSpawner |
toObjectParticleSpawner toObject(MemorySegment var0, int var1) |
static |
ParticleSpawner |
toObjectParticleSpawner toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) |
abstract |
return |
toObjectreturn toObject(var0, 0, null) |
abstract |
return |
toObjectreturn toObject(var0, var1, null) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.protocol;
class="kw">import com.hypixel.hytale.protocol.io.PacketIO;
class="kw">import com.hypixel.hytale.protocol.io.ProtocolException;
class="kw">import com.hypixel.hytale.protocol.io.ReadCursor;
class="kw">import com.hypixel.hytale.protocol.io.VarInt;
class="kw">import java.lang.foreign.MemorySegment;
class="kw">import java.util.Arrays;
class="kw">import java.util.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class ParticleSpawner {
class="kw">public class="kw">static class="kw">final int NULLABLE_BIT_FIELD_SIZE = 2;
class="kw">public class="kw">static class="kw">final int FIXED_BLOCK_SIZE = 130;
class="kw">public class="kw">static class="kw">final int VARIABLE_FIELD_COUNT = 4;
class="kw">public class="kw">static class="kw">final int VARIABLE_BLOCK_START = 146;
class="kw">public class="kw">static class="kw">final int MAX_SIZE = 651264347;
@Nullable
class="kw">public String id;
@Nullable
class="kw">public Particle particle;
@Nonnull
class="kw">public EmitShape shape = EmitShape.Sphere;
@Nullable
class="kw">public RangeVector3f emitOffset;
class="kw">public float cameraOffset;
class="kw">public boolean useEmitDirection;
class="kw">public float lifeSpan;
@Nullable
class="kw">public Rangef spawnRate;
class="kw">public boolean spawnBurst;
@Nullable
class="kw">public Rangef waveDelay;
@Nullable
class="kw">public Range totalParticles;
class="kw">public int maxConcurrentParticles;
@Nullable
class="kw">public InitialVelocity initialVelocity;
class="kw">public float velocityStretchMultiplier;
@Nonnull
class="kw">public ParticleRotationInfluence particleRotationInfluence = ParticleRotationInfluence.None;
class="kw">public boolean particleRotateWithSpawner;
class="kw">public boolean isLowRes;
class="kw">public float trailSpawnerPositionMultiplier;
class="kw">public float trailSpawnerRotationMultiplier;
@Nullable
class="kw">public ParticleCollision particleCollision;
@Nonnull
class="kw">public FXRenderMode renderMode = FXRenderMode.BlendLinear;
class="kw">public float lightInfluence;
class="kw">public boolean linearFiltering;
@Nullable
class="kw">public Rangef particleLifeSpan;
@Nullable
class="kw">public UVMotion uvMotion;
@Nullable
class="kw">public ParticleAttractor[] attractors;
@Nullable
class="kw">public IntersectionHighlight intersectionHighlight;
class="kw">public ParticleSpawner() {
}
class="kw">public ParticleSpawner(
@Nullable String var1,
@Nullable Particle var2,
@Nonnull EmitShape var3,
@Nullable RangeVector3f var4,
float var5,
boolean var6,
float var7,
@Nullable Rangef var8,
boolean var9,
@Nullable Rangef var10,
@Nullable Range var11,
int var12,
@Nullable InitialVelocity var13,
float var14,
@Nonnull ParticleRotationInfluence var15,
boolean var16,
boolean var17,
float var18,
float var19,
@Nullable ParticleCollision var20,
@Nonnull FXRenderMode var21,
float var22,
boolean var23,
@Nullable Rangef var24,
@Nullable UVMotion var25,
@Nullable ParticleAttractor[] var26,
@Nullable IntersectionHighlight var27
) {
this.id = var1;
this.particle = var2;
this.shape = var3;
this.emitOffset = var4;
this.cameraOffset = var5;
this.useEmitDirection = var6;
this.lifeSpan = var7;
this.spawnRate = var8;
this.spawnBurst = var9;
this.waveDelay = var10;
this.totalParticles = var11;
this.maxConcurrentParticles = var12;
this.initialVelocity = var13;
this.velocityStretchMultiplier = var14;
this.particleRotationInfluence = var15;
this.particleRotateWithSpawner = var16;
this.isLowRes = var17;
this.trailSpawnerPositionMultiplier = var18;
this.trailSpawnerRotationMultiplier = var19;
this.particleCollision = var20;
this.renderMode = var21;
this.lightInfluence = var22;
this.linearFiltering = var23;
this.particleLifeSpan = var24;
this.uvMotion = var25;
this.attractors = var26;
this.intersectionHighlight = var27;
}
class="kw">public ParticleSpawner(@Nonnull ParticleSpawner var1) {
this.id = var1.id;
this.particle = var1.particle;
this.shape = var1.shape;
this.emitOffset = var1.emitOffset;
this.cameraOffset = var1.cameraOffset;
this.useEmitDirection = var1.useEmitDirection;
this.lifeSpan = var1.lifeSpan;
this.spawnRate = var1.spawnRate;
this.spawnBurst = var1.spawnBurst;
this.waveDelay = var1.waveDelay;
this.totalParticles = var1.totalParticles;
this.maxConcurrentParticles = var1.maxConcurrentParticles;
this.initialVelocity = var1.initialVelocity;
this.velocityStretchMultiplier = var1.velocityStretchMultiplier;
this.particleRotationInfluence = var1.particleRotationInfluence;
this.particleRotateWithSpawner = var1.particleRotateWithSpawner;
this.isLowRes = var1.isLowRes;
this.trailSpawnerPositionMultiplier = var1.trailSpawnerPositionMultiplier;
this.trailSpawnerRotationMultiplier = var1.trailSpawnerRotationMultiplier;
this.particleCollision = var1.particleCollision;
this.renderMode = var1.renderMode;
this.lightInfluence = var1.lightInfluence;
this.linearFiltering = var1.linearFiltering;
this.particleLifeSpan = var1.particleLifeSpan;
this.uvMotion = var1.uvMotion;
this.attractors = var1.attractors;
this.intersectionHighlight = var1.intersectionHighlight;
}
class="kw">public class="kw">static void requireBounds(MemorySegment var0, int var1) {
if (var1 < 0) {
throw ProtocolException.invalidOffset("ParticleSpawner", var1, (int)var0.byteSize());
}
long var2 = var1 + 146L;
if (var2 > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("ParticleSpawner", (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, 130, 146, "Id"), 4096000) : null;
}
@Nullable
class="kw">public class="kw">static Particle getParticle(MemorySegment var0) {
class="kw">return getParticle(var0, 0);
}
@Nullable
class="kw">public class="kw">static Particle getParticle(MemorySegment var0, int var1) {
class="kw">return hasParticle(var0, var1) ? Particle.toObject(var0, var1 + getValidatedOffset(var0, var1, 134, 146, "Particle")) : null;
}
class="kw">public class="kw">static EmitShape getShape(MemorySegment var0) {
class="kw">return getShape(var0, 0);
}
class="kw">public class="kw">static EmitShape getShape(MemorySegment var0, int var1) {
class="kw">return EmitShape.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 2));
}
@Nullable
class="kw">public class="kw">static RangeVector3f getEmitOffset(MemorySegment var0) {
class="kw">return getEmitOffset(var0, 0);
}
@Nullable
class="kw">public class="kw">static RangeVector3f getEmitOffset(MemorySegment var0, int var1) {
class="kw">return hasEmitOffset(var0, var1) ? RangeVector3f.toObject(var0, var1 + 3) : null;
}
class="kw">public class="kw">static float getCameraOffset(MemorySegment var0) {
class="kw">return getCameraOffset(var0, 0);
}
class="kw">public class="kw">static float getCameraOffset(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 28), "CameraOffset");
}
class="kw">public class="kw">static boolean getUseEmitDirection(MemorySegment var0) {
class="kw">return getUseEmitDirection(var0, 0);
}
class="kw">public class="kw">static boolean getUseEmitDirection(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_BOOL, var1 + 32);
}
class="kw">public class="kw">static float getLifeSpan(MemorySegment var0) {
class="kw">return getLifeSpan(var0, 0);
}
class="kw">public class="kw">static float getLifeSpan(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 33), "LifeSpan");
}
@Nullable
class="kw">public class="kw">static Rangef getSpawnRate(MemorySegment var0) {
class="kw">return getSpawnRate(var0, 0);
}
@Nullable
class="kw">public class="kw">static Rangef getSpawnRate(MemorySegment var0, int var1) {
class="kw">return hasSpawnRate(var0, var1) ? Rangef.toObject(var0, var1 + 37) : null;
}
class="kw">public class="kw">static boolean getSpawnBurst(MemorySegment var0) {
class="kw">return getSpawnBurst(var0, 0);
}
class="kw">public class="kw">static boolean getSpawnBurst(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_BOOL, var1 + 45);
}
@Nullable
class="kw">public class="kw">static Rangef getWaveDelay(MemorySegment var0) {
class="kw">return getWaveDelay(var0, 0);
}
@Nullable
class="kw">public class="kw">static Rangef getWaveDelay(MemorySegment var0, int var1) {
class="kw">return hasWaveDelay(var0, var1) ? Rangef.toObject(var0, var1 + 46) : null;
}
@Nullable
class="kw">public class="kw">static Range getTotalParticles(MemorySegment var0) {
class="kw">return getTotalParticles(var0, 0);
}
@Nullable
class="kw">public class="kw">static Range getTotalParticles(MemorySegment var0, int var1) {
class="kw">return hasTotalParticles(var0, var1) ? Range.toObject(var0, var1 + 54) : null;
}
class="kw">public class="kw">static int getMaxConcurrentParticles(MemorySegment var0) {
class="kw">return getMaxConcurrentParticles(var0, 0);
}
class="kw">public class="kw">static int getMaxConcurrentParticles(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 62);
}
@Nullable
class="kw">public class="kw">static InitialVelocity getInitialVelocity(MemorySegment var0) {
class="kw">return getInitialVelocity(var0, 0);
}
@Nullable
class="kw">public class="kw">static InitialVelocity getInitialVelocity(MemorySegment var0, int var1) {
class="kw">return hasInitialVelocity(var0, var1) ? InitialVelocity.toObject(var0, var1 + 66) : null;
}
class="kw">public class="kw">static float getVelocityStretchMultiplier(MemorySegment var0) {
class="kw">return getVelocityStretchMultiplier(var0, 0);
}
class="kw">public class="kw">static float getVelocityStretchMultiplier(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 91), "VelocityStretchMultiplier");
}
class="kw">public class="kw">static ParticleRotationInfluence getParticleRotationInfluence(MemorySegment var0) {
class="kw">return getParticleRotationInfluence(var0, 0);
}
class="kw">public class="kw">static ParticleRotationInfluence getParticleRotationInfluence(MemorySegment var0, int var1) {
class="kw">return ParticleRotationInfluence.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 95));
}
class="kw">public class="kw">static boolean getParticleRotateWithSpawner(MemorySegment var0) {
class="kw">return getParticleRotateWithSpawner(var0, 0);
}
class="kw">public class="kw">static boolean getParticleRotateWithSpawner(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 96) & 1) != 0;
}
class="kw">public class="kw">static boolean getIsLowRes(MemorySegment var0) {
class="kw">return getIsLowRes(var0, 0);
}
class="kw">public class="kw">static boolean getIsLowRes(MemorySegment var0, int var1) {
class="kw">return (var0.get(PacketIO.PROTO_BYTE, var1 + 96) & 2) != 0;
}
class="kw">public class="kw">static float getTrailSpawnerPositionMultiplier(MemorySegment var0) {
class="kw">return getTrailSpawnerPositionMultiplier(var0, 0);
}
class="kw">public class="kw">static float getTrailSpawnerPositionMultiplier(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 97), "TrailSpawnerPositionMultiplier");
}
class="kw">public class="kw">static float getTrailSpawnerRotationMultiplier(MemorySegment var0) {
class="kw">return getTrailSpawnerRotationMultiplier(var0, 0);
}
class="kw">public class="kw">static float getTrailSpawnerRotationMultiplier(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 101), "TrailSpawnerRotationMultiplier");
}
@Nullable
class="kw">public class="kw">static ParticleCollision getParticleCollision(MemorySegment var0) {
class="kw">return getParticleCollision(var0, 0);
}
@Nullable
class="kw">public class="kw">static ParticleCollision getParticleCollision(MemorySegment var0, int var1) {
class="kw">return hasParticleCollision(var0, var1) ? ParticleCollision.toObject(var0, var1 + 105) : null;
}
class="kw">public class="kw">static FXRenderMode getRenderMode(MemorySegment var0) {
class="kw">return getRenderMode(var0, 0);
}
class="kw">public class="kw">static FXRenderMode getRenderMode(MemorySegment var0, int var1) {
class="kw">return FXRenderMode.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 108));
}
class="kw">public class="kw">static float getLightInfluence(MemorySegment var0) {
class="kw">return getLightInfluence(var0, 0);
}
class="kw">public class="kw">static float getLightInfluence(MemorySegment var0, int var1) {
class="kw">return PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 109), "LightInfluence");
}
class="kw">public class="kw">static boolean getLinearFiltering(MemorySegment var0) {
class="kw">return getLinearFiltering(var0, 0);
}
class="kw">public class="kw">static boolean getLinearFiltering(MemorySegment var0, int var1) {
class="kw">return var0.get(PacketIO.PROTO_BOOL, var1 + 113);
}
@Nullable
class="kw">public class="kw">static Rangef getParticleLifeSpan(MemorySegment var0) {
class="kw">return getParticleLifeSpan(var0, 0);
}
@Nullable
class="kw">public class="kw">static Rangef getParticleLifeSpan(MemorySegment var0, int var1) {
class="kw">return hasParticleLifeSpan(var0, var1) ? Rangef.toObject(var0, var1 + 114) : null;
}
@Nullable
class="kw">public class="kw">static UVMotion getUvMotion(MemorySegment var0) {
class="kw">return getUvMotion(var0, 0);
}
@Nullable
class="kw">public class="kw">static UVMotion getUvMotion(MemorySegment var0, int var1) {
class="kw">return hasUvMotion(var0, var1) ? UVMotion.toObject(var0, var1 + getValidatedOffset(var0, var1, 138, 146, "UvMotion")) : null;
}
@Nullable
class="kw">public class="kw">static ParticleAttractor[] getAttractors(MemorySegment var0) {
class="kw">return getAttractors(var0, 0);
}
@Nullable
class="kw">public class="kw">static ParticleAttractor[] getAttractors(MemorySegment var0, int var1) {
if (!hasAttractors(var0, var1)) {
class="kw">return null;
}
int var2 = var1 + getValidatedOffset(var0, var1, 142, 146, "Attractors");
long var3 = VarInt.getWithLength(var0, var2);
if (var3 == -1L) {
throw ProtocolException.invalidVarInt("Attractors");
}
int var5 = (int)var3;
if (var5 > 4096000) {
throw ProtocolException.arrayTooLong("Attractors", var5, 4096000);
}
int var6 = (int)(var3 >>> 32);
if (var2 + var6 + var5 * 85L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Attractors", (int)Math.min(var2 + var6 + var5 * 85L, 2147483647L), (int)var0.byteSize());
}
var2 += var6;
ParticleAttractor[] var7 = new ParticleAttractor[var5];
for (int var8 = 0; var8 < var5; var8++) {
var7[var8] = ParticleAttractor.toObject(var0, var2 + var8 * 85);
}
class="kw">return var7;
}
@Nullable
class="kw">public class="kw">static IntersectionHighlight getIntersectionHighlight(MemorySegment var0) {
class="kw">return getIntersectionHighlight(var0, 0);
}
@Nullable
class="kw">public class="kw">static IntersectionHighlight getIntersectionHighlight(MemorySegment var0, int var1) {
class="kw">return hasIntersectionHighlight(var0, var1) ? IntersectionHighlight.toObject(var0, var1 + 122) : null;
}
class="kw">public class="kw">static boolean hasEmitOffset(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 hasSpawnRate(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 hasWaveDelay(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 hasTotalParticles(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 hasInitialVelocity(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 hasParticleCollision(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 hasParticleLifeSpan(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 hasIntersectionHighlight(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 hasId(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 hasParticle(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 hasUvMotion(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 hasAttractors(MemorySegment var0, int var1) {
byte var2 = var0.get(PacketIO.PROTO_BYTE, var1 + 1);
class="kw">return (var2 & 8) != 0;
}
class="kw">private class="kw">static int getValidatedOffset(MemorySegment var0, int var1, int var2, int var3, String var4) {
int var5 = var0.get(PacketIO.PROTO_INT, var1 + var2);
if (var5 >= 0 && var5 <= var0.byteSize() - var1 - var3) {
class="kw">return var3 + var5;
} else {
throw ProtocolException.invalidOffset(var4, var5, (int)var0.byteSize());
}
}
class="kw">private class="kw">static void requireSlot(MemorySegment var0, int var1, int var2, String var3) {
int var4 = var0.get(PacketIO.PROTO_INT, var1);
if (var4 != var2) {
throw ProtocolException.nonCanonicalLayout(var3, var4, var2);
}
}
class="kw">public class="kw">static ParticleSpawner toObject(MemorySegment var0) {
class="kw">return toObject(var0, 0, null);
}
class="kw">public class="kw">static ParticleSpawner toObject(MemorySegment var0, int var1) {
class="kw">return toObject(var0, var1, null);
}
class="kw">public class="kw">static ParticleSpawner toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) {
requireBounds(var0, var1);
int var3 = var1 + 146;
int var4 = 0;
ReadCursor var5 = var2 != null ? var2 : new ReadCursor();
String var6 = null;
if (hasId(var0, var1)) {
requireSlot(var0, var1 + 130, 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 + 130, -1, "Id");
}
Particle var16 = null;
if (hasParticle(var0, var1)) {
requireSlot(var0, var1 + 134, var4, "Particle");
var16 = Particle.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 134, -1, "Particle");
}
UVMotion var17 = null;
if (hasUvMotion(var0, var1)) {
requireSlot(var0, var1 + 138, var4, "UvMotion");
var17 = UVMotion.toObject(var0, var3 + var4, var5);
var4 = var5.position - var3;
} else {
requireSlot(var0, var1 + 138, -1, "UvMotion");
}
ParticleAttractor[] var9 = null;
if (hasAttractors(var0, var1)) {
requireSlot(var0, var1 + 142, var4, "Attractors");
int var10 = var3 + var4;
long var11 = VarInt.getWithLength(var0, var10);
if (var11 == -1L) {
throw ProtocolException.invalidVarInt("Attractors");
}
int var13 = (int)var11;
if (var13 > 4096000) {
throw ProtocolException.arrayTooLong("Attractors", var13, 4096000);
}
int var14 = (int)(var11 >>> 32);
if (var10 + var14 + var13 * 85L > var0.byteSize()) {
throw ProtocolException.bufferTooSmall("Attractors", (int)Math.min(var10 + var14 + var13 * 85L, 2147483647L), (int)var0.byteSize());
}
var10 += var14;
var9 = new ParticleAttractor[var13];
for (int var15 = 0; var15 < var13; var15++) {
var9[var15] = ParticleAttractor.toObject(var0, var10 + var15 * 85);
}
var4 = var10 + var13 * 85 - var3;
} else {
requireSlot(var0, var1 + 142, -1, "Attractors");
}
ParticleSpawner var19 = new ParticleSpawner(
var6,
var16,
EmitShape.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 2)),
hasEmitOffset(var0, var1) ? RangeVector3f.toObject(var0, var1 + 3) : null,
PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 28), "CameraOffset"),
var0.get(PacketIO.PROTO_BOOL, var1 + 32),
PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 33), "LifeSpan"),
hasSpawnRate(var0, var1) ? Rangef.toObject(var0, var1 + 37) : null,
var0.get(PacketIO.PROTO_BOOL, var1 + 45),
hasWaveDelay(var0, var1) ? Rangef.toObject(var0, var1 + 46) : null,
hasTotalParticles(var0, var1) ? Range.toObject(var0, var1 + 54) : null,
var0.get(PacketIO.PROTO_INT, var1 + 62),
hasInitialVelocity(var0, var1) ? InitialVelocity.toObject(var0, var1 + 66) : null,
PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 91), "VelocityStretchMultiplier"),
ParticleRotationInfluence.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 95)),
(var0.get(PacketIO.PROTO_BYTE, var1 + 96) & 1) != 0,
(var0.get(PacketIO.PROTO_BYTE, var1 + 96) & 2) != 0,
PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 97), "TrailSpawnerPositionMultiplier"),
PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 101), "TrailSpawnerRotationMultiplier"),
hasParticleCollision(var0, var1) ? ParticleCollision.toObject(var0, var1 + 105) : null,
FXRenderMode.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 108)),
PacketIO.requireFinite(var0.get(PacketIO.PROTO_FLOAT, var1 + 109), "LightInfluence"),
var0.get(PacketIO.PROTO_BOOL, var1 + 113),
hasParticleLifeSpan(var0, var1) ? Rangef.toObject(var0, var1 + 114) : null,
var17,
var9,
hasIntersectionHighlight(var0, var1) ? IntersectionHighlight.toObject(var0, var1 + 122) : null
);
if (var2 != null) {
var2.position = var3 + var4;
}
class="kw">return var19;
}
class="kw">public int serialize(@Nonnull MemorySegment var1, int var2) {
byte var3 = 0;
if (this.emitOffset != null) {
var3 = (byte)(var3 | 1);
}
if (this.spawnRate != null) {
var3 = (byte)(var3 | 2);
}
if (this.waveDelay != null) {
var3 = (byte)(var3 | 4);
}
if (this.totalParticles != null) {
var3 = (byte)(var3 | 8);
}
if (this.initialVelocity != null) {
var3 = (byte)(var3 | 16);
}
if (this.particleCollision != null) {
var3 = (byte)(var3 | 32);
}
if (this.particleLifeSpan != null) {
var3 = (byte)(var3 | 64);
}
if (this.intersectionHighlight != null) {
var3 = (byte)(var3 | 128);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 0, var3);
var3 = 0;
if (this.id != null) {
var3 = (byte)(var3 | 1);
}
if (this.particle != null) {
var3 = (byte)(var3 | 2);
}
if (this.uvMotion != null) {
var3 = (byte)(var3 | 4);
}
if (this.attractors != null) {
var3 = (byte)(var3 | 8);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 1, var3);
var1.set(PacketIO.PROTO_BYTE, var2 + 2, (byte)this.shape.getValue());
if (this.emitOffset != null) {
this.emitOffset.serialize(var1, var2 + 3);
} else {
var1.asSlice(var2 + 3, 25L).fill((byte)0);
}
PacketIO.requireFinite(this.cameraOffset, "CameraOffset");
var1.set(PacketIO.PROTO_FLOAT, var2 + 28, this.cameraOffset);
var1.set(PacketIO.PROTO_BOOL, var2 + 32, this.useEmitDirection);
PacketIO.requireFinite(this.lifeSpan, "LifeSpan");
var1.set(PacketIO.PROTO_FLOAT, var2 + 33, this.lifeSpan);
if (this.spawnRate != null) {
this.spawnRate.serialize(var1, var2 + 37);
} else {
var1.asSlice(var2 + 37, 8L).fill((byte)0);
}
var1.set(PacketIO.PROTO_BOOL, var2 + 45, this.spawnBurst);
if (this.waveDelay != null) {
this.waveDelay.serialize(var1, var2 + 46);
} else {
var1.asSlice(var2 + 46, 8L).fill((byte)0);
}
if (this.totalParticles != null) {
this.totalParticles.serialize(var1, var2 + 54);
} else {
var1.asSlice(var2 + 54, 8L).fill((byte)0);
}
var1.set(PacketIO.PROTO_INT, var2 + 62, this.maxConcurrentParticles);
if (this.initialVelocity != null) {
this.initialVelocity.serialize(var1, var2 + 66);
} else {
var1.asSlice(var2 + 66, 25L).fill((byte)0);
}
PacketIO.requireFinite(this.velocityStretchMultiplier, "VelocityStretchMultiplier");
var1.set(PacketIO.PROTO_FLOAT, var2 + 91, this.velocityStretchMultiplier);
var1.set(PacketIO.PROTO_BYTE, var2 + 95, (byte)this.particleRotationInfluence.getValue());
byte var4 = 0;
if (this.particleRotateWithSpawner) {
var4 = (byte)(var4 | 1);
}
if (this.isLowRes) {
var4 = (byte)(var4 | 2);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 96 + 0, var4);
PacketIO.requireFinite(this.trailSpawnerPositionMultiplier, "TrailSpawnerPositionMultiplier");
var1.set(PacketIO.PROTO_FLOAT, var2 + 97, this.trailSpawnerPositionMultiplier);
PacketIO.requireFinite(this.trailSpawnerRotationMultiplier, "TrailSpawnerRotationMultiplier");
var1.set(PacketIO.PROTO_FLOAT, var2 + 101, this.trailSpawnerRotationMultiplier);
if (this.particleCollision != null) {
this.particleCollision.serialize(var1, var2 + 105);
} else {
var1.asSlice(var2 + 105, 3L).fill((byte)0);
}
var1.set(PacketIO.PROTO_BYTE, var2 + 108, (byte)this.renderMode.getValue());
PacketIO.requireFinite(this.lightInfluence, "LightInfluence");
var1.set(PacketIO.PROTO_FLOAT, var2 + 109, this.lightInfluence);
var1.set(PacketIO.PROTO_BOOL, var2 + 113, this.linearFiltering);
if (this.particleLifeSpan != null) {
this.particleLifeSpan.serialize(var1, var2 + 114);
} else {
var1.asSlice(var2 + 114, 8L).fill((byte)0);
}
if (this.intersectionHighlight != null) {
this.intersectionHighlight.serialize(var1, var2 + 122);
} else {
var1.asSlice(var2 + 122, 8L).fill((byte)0);
}
int var5 = var2 + 146;
if (this.id != null) {
var1.set(PacketIO.PROTO_INT, var2 + 130, var5 - var2 - 146);
var5 += PacketIO.writeVarString(var1, var5, this.id, 4096000);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 130, -1);
}
if (this.particle != null) {
var1.set(PacketIO.PROTO_INT, var2 + 134, var5 - var2 - 146);
var5 += this.particle.serialize(var1, var5);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 134, -1);
}
if (this.uvMotion != null) {
var1.set(PacketIO.PROTO_INT, var2 + 138, var5 - var2 - 146);
var5 += this.uvMotion.serialize(var1, var5);
} else {
var1.set(PacketIO.PROTO_INT, var2 + 138, -1);
}
if (this.attractors != null) {
var1.set(PacketIO.PROTO_INT, var2 + 142, var5 - var2 - 146);
if (this.attractors.length > 4096000) {
throw ProtocolException.arrayTooLong("Attractors", this.attractors.length, 4096000);
}
var5 += VarInt.set(var1, var5, this.attractors.length);
int var6 = 0;
for (int var7 = 0; var7 < this.attractors.length; var7++) {
var6 += this.attractors[var7].serialize(var1, var5 + var6);
}
var5 += var6;
} else {
var1.set(PacketIO.PROTO_INT, var2 + 142, -1);
}
class="kw">return var5 - var2;
}
class="kw">public int computeSize() {
int var1 = 146;
if (this.id != null) {
var1 += PacketIO.stringSize(this.id);
}
if (this.particle != null) {
var1 += this.particle.computeSize();
}
if (this.uvMotion != null) {
var1 += this.uvMotion.computeSize();
}
if (this.attractors != null) {
var1 += VarInt.size(this.attractors.length) + this.attractors.length * 85;
}
class="kw">return var1;
}
class="kw">public ParticleSpawner clone() {
ParticleSpawner var1 = new ParticleSpawner();
var1.id = this.id;
var1.particle = this.particle != null ? this.particle.clone() : null;
var1.shape = this.shape;
var1.emitOffset = this.emitOffset != null ? this.emitOffset.clone() : null;
var1.cameraOffset = this.cameraOffset;
var1.useEmitDirection = this.useEmitDirection;
var1.lifeSpan = this.lifeSpan;
var1.spawnRate = this.spawnRate != null ? this.spawnRate.clone() : null;
var1.spawnBurst = this.spawnBurst;
var1.waveDelay = this.waveDelay != null ? this.waveDelay.clone() : null;
var1.totalParticles = this.totalParticles != null ? this.totalParticles.clone() : null;
var1.maxConcurrentParticles = this.maxConcurrentParticles;
var1.initialVelocity = this.initialVelocity != null ? this.initialVelocity.clone() : null;
var1.velocityStretchMultiplier = this.velocityStretchMultiplier;
var1.particleRotationInfluence = this.particleRotationInfluence;
var1.particleRotateWithSpawner = this.particleRotateWithSpawner;
var1.isLowRes = this.isLowRes;
var1.trailSpawnerPositionMultiplier = this.trailSpawnerPositionMultiplier;
var1.trailSpawnerRotationMultiplier = this.trailSpawnerRotationMultiplier;
var1.particleCollision = this.particleCollision != null ? this.particleCollision.clone() : null;
var1.renderMode = this.renderMode;
var1.lightInfluence = this.lightInfluence;
var1.linearFiltering = this.linearFiltering;
var1.particleLifeSpan = this.particleLifeSpan != null ? this.particleLifeSpan.clone() : null;
var1.uvMotion = this.uvMotion != null ? this.uvMotion.clone() : null;
var1.attractors = this.attractors != null ? Arrays.stream(this.attractors).map(var0 -> var0.clone()).toArray(ParticleAttractor[]::new) : null;
var1.intersectionHighlight = this.intersectionHighlight != null ? this.intersectionHighlight.clone() : 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 ParticleSpawner var2)
? false
: Objects.equals(this.id, var2.id)
&& Objects.equals(this.particle, var2.particle)
&& Objects.equals(this.shape, var2.shape)
&& Objects.equals(this.emitOffset, var2.emitOffset)
&& this.cameraOffset == var2.cameraOffset
&& this.useEmitDirection == var2.useEmitDirection
&& this.lifeSpan == var2.lifeSpan
&& Objects.equals(this.spawnRate, var2.spawnRate)
&& this.spawnBurst == var2.spawnBurst
&& Objects.equals(this.waveDelay, var2.waveDelay)
&& Objects.equals(this.totalParticles, var2.totalParticles)
&& this.maxConcurrentParticles == var2.maxConcurrentParticles
&& Objects.equals(this.initialVelocity, var2.initialVelocity)
&& this.velocityStretchMultiplier == var2.velocityStretchMultiplier
&& Objects.equals(this.particleRotationInfluence, var2.particleRotationInfluence)
&& this.particleRotateWithSpawner == var2.particleRotateWithSpawner
&& this.isLowRes == var2.isLowRes
&& this.trailSpawnerPositionMultiplier == var2.trailSpawnerPositionMultiplier
&& this.trailSpawnerRotationMultiplier == var2.trailSpawnerRotationMultiplier
&& Objects.equals(this.particleCollision, var2.particleCollision)
&& Objects.equals(this.renderMode, var2.renderMode)
&& this.lightInfluence == var2.lightInfluence
&& this.linearFiltering == var2.linearFiltering
&& Objects.equals(this.particleLifeSpan, var2.particleLifeSpan)
&& Objects.equals(this.uvMotion, var2.uvMotion)
&& Arrays.equals(this.attractors, var2.attractors)
&& Objects.equals(this.intersectionHighlight, var2.intersectionHighlight);
}
}
@Override
class="kw">public int hashCode() {
int var1 = 1;
var1 = 31 * var1 + Objects.hashCode(this.id);
var1 = 31 * var1 + Objects.hashCode(this.particle);
var1 = 31 * var1 + Objects.hashCode(this.shape);
var1 = 31 * var1 + Objects.hashCode(this.emitOffset);
var1 = 31 * var1 + Float.hashCode(this.cameraOffset);
var1 = 31 * var1 + Boolean.hashCode(this.useEmitDirection);
var1 = 31 * var1 + Float.hashCode(this.lifeSpan);
var1 = 31 * var1 + Objects.hashCode(this.spawnRate);
var1 = 31 * var1 + Boolean.hashCode(this.spawnBurst);
var1 = 31 * var1 + Objects.hashCode(this.waveDelay);
var1 = 31 * var1 + Objects.hashCode(this.totalParticles);
var1 = 31 * var1 + Integer.hashCode(this.maxConcurrentParticles);
var1 = 31 * var1 + Objects.hashCode(this.initialVelocity);
var1 = 31 * var1 + Float.hashCode(this.velocityStretchMultiplier);
var1 = 31 * var1 + Objects.hashCode(this.particleRotationInfluence);
var1 = 31 * var1 + Boolean.hashCode(this.particleRotateWithSpawner);
var1 = 31 * var1 + Boolean.hashCode(this.isLowRes);
var1 = 31 * var1 + Float.hashCode(this.trailSpawnerPositionMultiplier);
var1 = 31 * var1 + Float.hashCode(this.trailSpawnerRotationMultiplier);
var1 = 31 * var1 + Objects.hashCode(this.particleCollision);
var1 = 31 * var1 + Objects.hashCode(this.renderMode);
var1 = 31 * var1 + Float.hashCode(this.lightInfluence);
var1 = 31 * var1 + Boolean.hashCode(this.linearFiltering);
var1 = 31 * var1 + Objects.hashCode(this.particleLifeSpan);
var1 = 31 * var1 + Objects.hashCode(this.uvMotion);
var1 = 31 * var1 + Arrays.hashCode(this.attractors);
class="kw">return 31 * var1 + Objects.hashCode(this.intersectionHighlight);
}
}