Відтворення звуків 1.21.8
Задавалися питанням як відтворювати звукові події? Прочитайте про це тут!
WARNING
Ця сторінка написана для версії 1.21.8. Документація для старіших версій може бути неповною.
Minecraft має великий вибір звуків, з яких ви можете вибрати. Перевірте клас SoundEvents, щоб переглянути всі екземпляри звукових подій, наданих Mojang.
Використання звуків у вашому моді
Під час використання звуків обов’язково запустіть метод playSound() на стороні логічного сервера!
У цьому прикладі методи interactLivingEntity() і useOn() для спеціального інтерактивного елемента використовуються для відтворення «розміщення мідного блоку» та звуку грабіжника.
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
Метод playSound() використовується з об’єктом LivingEntity. Треба вказати лише SoundEvent, гучність і висоту звуку. Ви також можете використовувати метод playSound() з екземпляра світу, щоб отримати вищий рівень контролю.
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 і SoundCategory
SoundEvent визначає, який звук буде відтворюватися. Ви також можете зареєструвати власні SoundEvents, щоб включити свій власний звук.
Minecraft має кілька звукових повзунків у налаштуваннях гри. Перелік SoundSource використовується, щоб визначити, який повзунок регулюватиме гучність звуку.
Гучність і висота
Параметр гучності може трохи ввести в оману. У діапазоні 0.0f - 1.0f можна змінити фактичну гучність звуку. Якщо число стає більшим за це, використовуватиметься гучність 1.0f, і регулюється лише відстань, на якій можна почути ваш звук. Відстань блоку можна приблизно розрахувати за допомогою volume * 16.
Параметр висоти збільшує або зменшує значення висоти звуку, а також змінює тривалість звуку. У діапазоні (0,5f - 1,0f) висота і швидкість зменшуються, тоді як більші числа збільшують висоту і швидкість. Числа нижче 0,5f залишатимуться на рівні 0,5f.

