Package com.destroystokyo.paper
Class ParticleBuilder
java.lang.Object
com.destroystokyo.paper.ParticleBuilder
- All Implemented Interfaces:
- Cloneable
Helps prepare a particle to be sent to players.
 
 Usage of the builder is preferred over the super long World.spawnParticle(Particle, Location, int, double, double, double, double, Object) API
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionSends this particle to all players in the world.clone()color(int color) Sets the particle Color.color(int r, int g, int b) Sets the particle Color.color(int a, int r, int g, int b) Sets the particle Color.Sets the particle Color.Sets the particle Color and size.colorTransition(int fromRgb, int toRgb) Sets the particle Color Transition.colorTransition(int fromRed, int fromGreen, int fromBlue, int toRed, int toGreen, int toBlue) Sets the particle Color Transition.colorTransition(Color fromColor, Color toColor) Sets the particle Color Transition.colorTransition(Color fromColor, Color toColor, float size) Sets the particle Color Transition and size.intcount()count(int count) Sets the number of particles to spawn<T> @Nullable Tdata()Gets the particle custom data.<T> ParticleBuilderSets the particle custom data.doubleextra()Gets the Particle extra data.extra(double extra) Sets the particle extra data.booleanforce()force(boolean force) Sets whether the particle is forcefully shown to the player.booleanExample use:location()Sets the location of where to spawn the particleSets the location of where to spawn the particleoffset(double offsetX, double offsetY, double offsetZ) Sets the particle offset.doubleoffsetX()Particle offset X.doubleoffsetY()Particle offset Y.doubleoffsetZ()Particle offset Z.particle()Changes what particle will be sentreceivers(int radius) Selects all players within a cuboid selection around the particle location, within the specified bounding box.receivers(int radius, boolean byDistance) Selects all players within the specified radius around the particle location.receivers(int xzRadius, int yRadius) Selects all players within a cuboid selection around the particle location, within the specified bounding box.receivers(int xzRadius, int yRadius, boolean byDistance) Selects all players within the specified radius around the particle location.receivers(int xRadius, int yRadius, int zRadius) Selects all players within a cuboid selection around the particle location, within the specified bounding box.receivers(@Nullable Collection<Player> receivers) source()Sets the source of this particle for visibility concerns (Vanish API)spawn()Sends the particle to all receiving players (or all).
- 
Constructor Details- 
ParticleBuilder
 
- 
- 
Method Details- 
spawnSends the particle to all receiving players (or all). This method is safe to use Asynchronously- Returns:
- a reference to this object.
 
- 
particle- Returns:
- The particle going to be sent
 
- 
particleChanges what particle will be sent- Parameters:
- particle- The particle
- Returns:
- a reference to this object.
 
- 
receivers- Returns:
- List of players who will receive the particle, or null for all in world
 
- 
hasReceiverspublic boolean hasReceivers()Example use:builder.receivers(16); if (builder.hasReceivers()) { sendParticleAsync(builder); } - Returns:
- If this particle is going to be sent to someone
 
- 
allPlayersSends this particle to all players in the world. This is rather silly, and you should likely not be doing this.Just be a logical person and use receivers by radius or collection. - Returns:
- a reference to this object.
 
- 
receivers- Parameters:
- receivers- List of players to receive this particle, or null for all players in the world
- Returns:
- a reference to this object.
 
- 
receivers- Parameters:
- receivers- List of players to receive this particle, or null for all players in the world
- Returns:
- a reference to this object.
 
- 
receivers- Parameters:
- receivers- List of players to receive this particle, or null for all players in the world
- Returns:
- a reference to this object.
 
- 
receiversSelects all players within a cuboid selection around the particle location, within the specified bounding box. If you want a more spherical check, seereceivers(int, boolean)- Parameters:
- radius- amount to add on all axis
- Returns:
- a reference to this object.
 
- 
receiversSelects all players within the specified radius around the particle location. If byDistance is false, behavior uses cuboid selection the same asreceivers(int, int)If byDistance is true, radius is tested by distance in a spherical shape- Parameters:
- radius- amount to add on each axis
- byDistance- true to use a spherical radius, false to use a cuboid
- Returns:
- a reference to this object.
 
- 
receiversSelects all players within a cuboid selection around the particle location, within the specified bounding box. Allows specifying a different Y size than X and Z If you want a more cylinder check, seereceivers(int, int, boolean)If you want a more spherical check, seereceivers(int, boolean)- Parameters:
- xzRadius- amount to add on the x/z axis
- yRadius- amount to add on the y axis
- Returns:
- a reference to this object.
 
- 
receiversSelects all players within the specified radius around the particle location. If byDistance is false, behavior uses cuboid selection the same asreceivers(int, int)If byDistance is true, radius is tested by distance on the y plane and on the x/z plane, in a cylinder shape.- Parameters:
- xzRadius- amount to add on the x/z axis
- yRadius- amount to add on the y axis
- byDistance- true to use a cylinder shape, false to use cuboid
- Returns:
- a reference to this object.
- Throws:
- IllegalStateException- if a location hasn't been specified yet
 
- 
receiversSelects all players within a cuboid selection around the particle location, within the specified bounding box. If you want a more cylinder check, seereceivers(int, int, boolean)If you want a more spherical check, seereceivers(int, boolean)- Parameters:
- xRadius- amount to add on the x axis
- yRadius- amount to add on the y axis
- zRadius- amount to add on the z axis
- Returns:
- a reference to this object.
 
- 
source- Returns:
- The player considered the source of this particle (for Visibility concerns), or null
 
- 
sourceSets the source of this particle for visibility concerns (Vanish API)- Parameters:
- source- The player who is considered the source
- Returns:
- a reference to this object.
 
- 
location- Returns:
- Location of where the particle will spawn
 
- 
locationSets the location of where to spawn the particle- Parameters:
- location- The location of the particle
- Returns:
- a reference to this object.
 
- 
locationSets the location of where to spawn the particle- Parameters:
- world- World to spawn particle in
- x- X location
- y- Y location
- z- Z location
- Returns:
- a reference to this object.
 
- 
countpublic int count()- Returns:
- Number of particles to spawn
 
- 
countSets the number of particles to spawn- Parameters:
- count- Number of particles
- Returns:
- a reference to this object.
 
- 
offsetXpublic double offsetX()Particle offset X. Varies by particle on how this is used- Returns:
- Particle offset X.
 
- 
offsetYpublic double offsetY()Particle offset Y. Varies by particle on how this is used- Returns:
- Particle offset Y.
 
- 
offsetZpublic double offsetZ()Particle offset Z. Varies by particle on how this is used- Returns:
- Particle offset Z.
 
- 
offsetSets the particle offset. Varies by particle on how this is used- Parameters:
- offsetX- Particle offset X
- offsetY- Particle offset Y
- offsetZ- Particle offset Z
- Returns:
- a reference to this object.
 
- 
extrapublic double extra()Gets the Particle extra data. Varies by particle on how this is used- Returns:
- the extra particle data
 
- 
extraSets the particle extra data. Varies by particle on how this is used- Parameters:
- extra- the extra particle data
- Returns:
- a reference to this object.
 
- 
dataGets the particle custom data. Varies by particle on how this is used- Type Parameters:
- T- The Particle data type
- Returns:
- the ParticleData for this particle
 
- 
dataSets the particle custom data. Varies by particle on how this is used- Type Parameters:
- T- The Particle data type
- Parameters:
- data- The new particle data
- Returns:
- a reference to this object.
 
- 
forcepublic boolean force()- Returns:
- whether the particle is forcefully shown to players.
 
- 
forceSets whether the particle is forcefully shown to the player. If forced, the particle will show faraway, as far as the player's view distance allows. If false, the particle will show according to the client's particle settings.- Parameters:
- force- true to force, false for normal
- Returns:
- a reference to this object.
 
- 
colorSets the particle Color. Only valid for particles with a data type ofColororParticle.DustOptions.- Parameters:
- color- the new particle color
- Returns:
- a reference to this object.
 
- 
colorSets the particle Color and size. Only valid for particles with a data type ofParticle.DustOptions.- Parameters:
- color- the new particle color
- size- the size of the particle
- Returns:
- a reference to this object.
 
- 
colorSets the particle Color. Only valid for particles with a data type ofColororParticle.DustOptions.- Parameters:
- r- red color component
- g- green color component
- b- blue color component
- Returns:
- a reference to this object.
 
- 
colorSets the particle Color. Only valid for particles with a data type ofColororParticle.DustOptions.This method detects if the provided color integer is in RGB or ARGB format. If the alpha channel is zero, it treats the color as RGB. Otherwise, it treats it as ARGB. - Parameters:
- color- an integer representing the color components. If the highest byte (alpha channel) is zero, the color is treated as RGB. Otherwise, it is treated as ARGB.
- Returns:
- a reference to this object.
 
- 
colorSets the particle Color. Only valid for particles with a data type ofColororParticle.DustOptions.- Parameters:
- a- alpha color component
- r- red color component
- g- green color component
- b- blue color component
- Returns:
- a reference to this object.
 
- 
colorTransitionSets the particle Color Transition. Only valid forParticle.DUST_COLOR_TRANSITION.- Parameters:
- fromColor- the new particle from color
- toColor- the new particle to color
- Returns:
- a reference to this object.
- Throws:
- IllegalArgumentException- if the particle builder's- particle()isn't- Particle.DUST_COLOR_TRANSITION.
 
- 
colorTransitionpublic ParticleBuilder colorTransition(int fromRed, int fromGreen, int fromBlue, int toRed, int toGreen, int toBlue) Sets the particle Color Transition. Only valid forParticle.DUST_COLOR_TRANSITION.- Parameters:
- fromRed- red color component for the "from" color
- fromGreen- green color component for the "from" color
- fromBlue- blue color component for the "from" color
- toRed- red color component for the to color
- toGreen- green color component for the to color
- toBlue- blue color component for the to color
- Returns:
- a reference to this object.
- Throws:
- IllegalArgumentException- if the particle builder's- particle()isn't- Particle.DUST_COLOR_TRANSITION.
 
- 
colorTransitionSets the particle Color Transition. Only valid forParticle.DUST_COLOR_TRANSITION.- Parameters:
- fromRgb- an integer representing the red, green, and blue color components for the "from" color
- toRgb- an integer representing the red, green, and blue color components for the "to" color
- Returns:
- a reference to this object.
- Throws:
- IllegalArgumentException- if the particle builder's- particle()isn't- Particle.DUST_COLOR_TRANSITION.
 
- 
colorTransitionSets the particle Color Transition and size. Only valid forParticle.DUST_COLOR_TRANSITION.- Parameters:
- fromColor- the new particle color for the "from" color.
- toColor- the new particle color for the "to" color.
- size- the size of the particle
- Returns:
- a reference to this object.
- Throws:
- IllegalArgumentException- if the particle builder's- particle()isn't- Particle.DUST_COLOR_TRANSITION.
 
- 
clone
 
-