Package net.kyori.adventure.sound
Interface Sound
- All Superinterfaces:
 net.kyori.examination.Examinable
@NonExtendable
public interface Sound
extends net.kyori.examination.Examinable
Represents an in-game sound which can be played to the client.
 
A sound consists of:
- key/type
 - the resource location of this sound (e.g minecraft:ambient.cave or my_plugin:custom_sound
 - source
 - a 
Sound.Sourcetelling the game where the sound is coming from - volume
 - a number in the range [0,∞) representing how loud the sound should be played. Increasing volume does not actually play the sound louder, but increases the radius of where it can be heard
 - pitch
 - a number in the range [0,2] representing which pitch the sound should be played at
 
There are some bugs that are of note when using sounds:
- Since:
 - 4.0.0
 - See Also:
 
- 
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceA builder for sound instances.static interfaceAn emitter of sounds.static enumThe sound source.static interfaceA sound type. - 
Method Summary
Modifier and TypeMethodDescription@NotNull SoundStopasStop()Gets theSoundStopthat will stop this specific sound.@NotNull Keyname()Gets the name.floatpitch()Gets the pitch.@NotNull OptionalLongseed()Get the seed used for playback of weighted sound effects.static @NotNull Sound.Buildersound()Create a new builder forSoundinstances.static @NotNull Soundsound(@NotNull Consumer<Sound.Builder> configurer) Create a newSoundinstance configured by the provided function.static @NotNull Soundsound(@NotNull Supplier<? extends Sound.Type> type, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.static @NotNull Soundsound(@NotNull Supplier<? extends Sound.Type> type, @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.static @NotNull Soundsound(@NotNull Key name, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.static @NotNull Soundsound(@NotNull Key name, @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.static @NotNull Sound.BuilderCreate a new builder forSoundinstances.static @NotNull Soundsound(@NotNull Sound.Type type, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.static @NotNull Soundsound(@NotNull Sound.Type type, @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.@NotNull Sound.Sourcesource()Gets the source.floatvolume()Gets the volume.Methods inherited from interface net.kyori.examination.Examinable
examinableName, examinableProperties, examine 
- 
Method Details
- 
sound
Create a new builder forSoundinstances.- Returns:
 - a new builder
 - Since:
 - 4.12.0
 
 - 
sound
Create a new builder forSoundinstances.- Parameters:
 existing- an existing sound to populate the builder with- Returns:
 - a new builder
 - Since:
 - 4.12.0
 
 - 
sound
Create a newSoundinstance configured by the provided function.- Parameters:
 configurer- a function that configures a builder- Returns:
 - a new builder
 - Since:
 - 4.12.0
 
 - 
sound
@NotNull static @NotNull Sound sound(@NotNull @NotNull Key name, @NotNull @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.- Parameters:
 name- the namesource- the sourcevolume- the volumepitch- the pitch- Returns:
 - the sound
 - Since:
 - 4.0.0
 
 - 
sound
@NotNull static @NotNull Sound sound(@NotNull @NotNull Sound.Type type, @NotNull @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.- Parameters:
 type- the typesource- the sourcevolume- the volumepitch- the pitch- Returns:
 - the sound
 - Since:
 - 4.0.0
 
 - 
sound
@NotNull static @NotNull Sound sound(@NotNull @NotNull Supplier<? extends Sound.Type> type, @NotNull @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.- Parameters:
 type- the typesource- the sourcevolume- the volumepitch- the pitch- Returns:
 - the sound
 - Since:
 - 4.0.0
 
 - 
sound
@NotNull static @NotNull Sound sound(@NotNull @NotNull Key name, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.- Parameters:
 name- the namesource- the sourcevolume- the volumepitch- the pitch- Returns:
 - the sound
 - Since:
 - 4.8.0
 
 - 
sound
@NotNull static @NotNull Sound sound(@NotNull @NotNull Sound.Type type, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.- Parameters:
 type- the typesource- the sourcevolume- the volumepitch- the pitch- Returns:
 - the sound
 - Since:
 - 4.8.0
 
 - 
sound
@NotNull static @NotNull Sound sound(@NotNull @NotNull Supplier<? extends Sound.Type> type, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.- Parameters:
 type- the typesource- the sourcevolume- the volumepitch- the pitch- Returns:
 - the sound
 - Since:
 - 4.8.0
 
 - 
name
Gets the name.- Returns:
 - the name
 - Since:
 - 4.0.0
 
 - 
source
Gets the source.- Returns:
 - the source
 - Since:
 - 4.0.0
 
 - 
volume
float volume()Gets the volume.- Returns:
 - the volume
 - Since:
 - 4.0.0
 
 - 
pitch
float pitch()Gets the pitch.- Returns:
 - the pitch
 - Since:
 - 4.0.0
 
 - 
seed
Get the seed used for playback of weighted sound effects.When the seed is not provided, the seed of the receiver's world will be used instead.
- Returns:
 - the seed to use
 - Since:
 - 4.12.0
 
 - 
asStop
Gets theSoundStopthat will stop this specific sound.- Returns:
 - the sound stop
 - Since:
 - 4.8.0
 
 
 -