Package me.deecaad.core.emitter
Class EmitterSettings
java.lang.Object
me.deecaad.core.emitter.EmitterSettings
- Direct Known Subclasses:
DisplayEntityEmitterSettings,ParticleEmitterSettings
Immutable common configuration for an
Emitter: shape, fallback emission direction,
speed, lifetime, emission rate, burst pattern, and per-emitted-item lifetime. Built via a
subclass EmitterSettings.Builder; the runtime emitter holds only mutable per-instance state.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classEmitterSettings.Builder<B extends EmitterSettings.Builder<B>>Recursive-generic builder so subclass builders chain fluently. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint> 0switches to burst mode: emit this many items everygetBurstInterval()ticks.int@NotNull VectorProviderint-1= infinite (runs until externally stopped).intintdoublegetRate()Items emitted per tick (continuous mode).@NotNull ShapegetShape()doublegetSpeed()
-
Constructor Details
-
EmitterSettings
-
-
Method Details
-
getShape
-
getDirection
-
getSpeed
public double getSpeed() -
getDurationTicks
public int getDurationTicks()-1= infinite (runs until externally stopped). -
getRate
public double getRate()Items emitted per tick (continuous mode). Fractional values are accumulated across ticks. -
getBurstCount
public int getBurstCount()> 0switches to burst mode: emit this many items everygetBurstInterval()ticks. -
getBurstInterval
public int getBurstInterval() -
getEmittedLifetimeTicks
public int getEmittedLifetimeTicks() -
getLiveCap
public int getLiveCap()
-