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.Source
telling 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
- Since:
- 4.0.0
- See Also:
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
A builder for sound instances.static interface
An emitter of sounds.static enum
The sound source.static interface
A sound type. -
Method Summary
Modifier and TypeMethodDescription@NotNull SoundStop
asStop()
Gets theSoundStop
that will stop this specific sound.@NotNull Key
name()
Gets the name.float
pitch()
Gets the pitch.@NotNull OptionalLong
seed()
Get the seed used for playback of weighted sound effects.static @NotNull Sound.Builder
sound()
Create a new builder forSound
instances.static @NotNull Sound
sound
(@NotNull Consumer<Sound.Builder> configurer) Create a newSound
instance configured by the provided function.static @NotNull Sound
sound
(@NotNull Supplier<? extends Sound.Type> type, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.static @NotNull Sound
sound
(@NotNull Supplier<? extends Sound.Type> type, @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.static @NotNull Sound
sound
(@NotNull Key name, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.static @NotNull Sound
sound
(@NotNull Key name, @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.static @NotNull Sound.Builder
Create a new builder forSound
instances.static @NotNull Sound
sound
(@NotNull Sound.Type type, @NotNull Sound.Source.Provider source, float volume, float pitch) Creates a new sound.static @NotNull Sound
sound
(@NotNull Sound.Type type, @NotNull Sound.Source source, float volume, float pitch) Creates a new sound.@NotNull Sound.Source
source()
Gets the source.float
volume()
Gets the volume.Methods inherited from interface net.kyori.examination.Examinable
examinableName, examinableProperties, examine
-
Method Details
-
sound
Create a new builder forSound
instances.- Returns:
- a new builder
- Since:
- 4.12.0
-
sound
Create a new builder forSound
instances.- Parameters:
existing
- an existing sound to populate the builder with- Returns:
- a new builder
- Since:
- 4.12.0
-
sound
Create a newSound
instance 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 theSoundStop
that will stop this specific sound.- Returns:
- the sound stop
- Since:
- 4.8.0
-