Minecraft hat eine große Auswahl an Sounds, aus denen du wählen kannst. Schau dir die Klasse SoundEvents an, um alle von Mojang bereitgestellten SoundEvent Instanzen zu sehen.
Sounds in deinem Mod verwenden
Stelle sicher, dass du die Methode playSound() auf der logischen Serverseite ausführst, wenn du Sounds verwendest!
In diesem Beispiel wird die Methode interactLivingEntity() und useOn() für ein benutzerdefiniertes interaktives Item verwendet, um einen "platzierenden Kupferblock" und einen Plünderer-Sound abzuspielen.
java
@Override
public InteractionResult interactLivingEntity(ItemStack stack, Player user, LivingEntity entity, InteractionHand hand) {
// As stated above, don't use the playSound() method on the client side
// ... it won't work!
if (!entity.level().isClientSide()) {
// Play the sound as if it was coming from the entity.
entity.playSound(SoundEvents.PILLAGER_AMBIENT, 2f, 0.7f);
}
return super.interactLivingEntity(stack, user, entity, hand);
}1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
Die Methode playSound() wird mit dem LivingEntity Objekt verwendet. Nur das SoundEvent, die Lautstärke und die Tonhöhe müssen angegeben werden. Du kannst auch die Methode playSound() aus der Levelinstanz verwenden werden, um mehr Möglichkeiten bei der Parameterauswahl zu haben.
java
@Override
public InteractionResult useOn(UseOnContext context) {
if (!context.getLevel().isClientSide()) {
// Play the sound and specify location, category and who made the sound.
// No entity made the sound, so we specify null.
context.getLevel().playSound(null, context.getClickedPos(),
SoundEvents.COPPER_PLACE, SoundSource.PLAYERS,
1f, 1f);
}
return super.useOn(context);
}1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
SoundEvent und SoundCategory
Das SoundEvent legt fest, welcher Sound abgespielt wird. Du kannst auch deine eigenen SoundEvents registrieren, um deinen eigenen Sound einzubinden.
Minecraft hat mehrere Audioregler in den Spieleinstellungen. Das Enum SoundCategory wird verwendet, um zu bestimmen, mit welchem Schieberegler die Lautstärke des Sounds eingestellt wird.
Lautstärke und Tonhöhe
Der Lautstärke-Parameter kann ein wenig irreführend sein. Im Bereich von 0.0f - 1.0f kann die aktuelle Lautstärke des Tons verändert werden. Wenn der Wert größer ist, wird die Lautstärke von 1.0f verwendet und nur die Reichweite, in der der Ton zu hören ist, wird angepasst. Die Blockdistanz kann grob durch Lautstärke * 16 berechnet werden.
Der Pitch-Parameter erhöht oder verringert den Wert der Tonhöhe und ändert auch die Dauer des Sounds. Im Bereich von (0.5f - 1.0f) wird die Tonhöhe und die Geschwindigkeit verringert, während größere Werte die Tonhöhe und die Geschwindigkeit erhöhen. Werte unter 0.5f bleiben auf dem Wert der Tonhöhe von 0.5f.

