Перейти к содержанию

Как сделать чтобы при помощи /playsound проигрывать фоновую музыку в определенной области


Рекомендуемые сообщения

В теме 7 сообщений

Не могу разобраться как сделать, чтобы музыка работала только в пределах УСЛОВНО 5х5 блоков и более. Вышел за пределы радиуса и звук стихает

Ссылка на комментарий
Поделиться на другие сайты

Какая версия? Если например 1.16.5 и выше должно всё равно работать.
В общем на нужной тебе зоне, где хочешь, чтобы запускалась музыка опускаешься на два блока и ставишь любые блоки например золотые. После тебе понадобятся два цикличный, два цепных и один импульсивный командный блок и один компаратор. Где то за картой ставишь цикличный командный блок и вводишь эту команду:
execute at @e[type=minecraft:player] if block ~ ~-2 ~ [твои блоки] run seed
После ставишь компаратор так возле цикличного кб так, чтобы загорающийся "маячок" стоял спереди импульсивного и после вводишь уже сам /playsound:
playsound [твоя музыка] [если хочешь, чтобы громкость музыки можно регулировать другими опциями] [селектор существо например @p] ~ ~ ~ [громкость по желанию] [высота по желанию]
Теперь ставишь над ним цепной кб, однако так, чтобы стрелки импульсивного кб смотрели также, как и цепной и вводишь уже эту команду, с помощью которой будет спавнится редстоуновый блок запускающий цикличный кб:
setblock [координаты рядом с цикличным кб] minecraft:air
Теперь ещё рядом ставишь ещё один цикличный кб и вводишь похожую команду:
execute at @e[type=minecraft:player] unless block ~ ~-2 ~ [твои блоки] run stopsound [селектор существ] [если хочешь, чтобы громкость музыки можно регулировать другими опциями] [твоя музыка]
Всё над кб ставишь цепной блок (обязательно также как и с импульсивным), ставишь (обязательно) с безусловный на условный и вводишь следующую команду которая убирает редстоуновый блок там где добавил корды который запускает первый цикличный кб:
setblock [твои корды на месте должны быть корды редстоунового блока] minecraft:redstone_block keep

Надеюсь что помог. Думаю должно работать.

Ссылка на комментарий
Поделиться на другие сайты

8 часов назад, Hibbe сказал:

execute at @e[type=minecraft:player] if block ~ ~-2 ~ [твои блоки] run seed

если использовать run, компаратор не даст сигнала. для этого необходимо сделать так: execute at @a if block ~ ~ ~ (block)

 

8 часов назад, Hibbe сказал:

Надеюсь что помог.

насколько я понял, человек спросил про громкость, для этого твои команды не помогут

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, PhoenixTechu сказал:

если использовать run, компаратор не даст сигнала. для этого необходимо сделать так: execute at @a if block ~ ~ ~ (block)

 

ну можно всегда что то упростить даже в командах.
 

 

1 час назад, PhoenixTechu сказал:

насколько я понял, человек спросил про громкость, для этого твои команды не помогут

а вот тут рил не понял. изначально понял что игрок должен заходить в зону и играть музыка потом выходишь и исчезает, но если она воспроизводится один раз то тогда еще проще, однако все равно нужно минимум двое кб ведь вроде автор просил чтоб музыка играла в определенной зоне. Тогда один цикличный кб который делает команду execute второй удаляет рядом с ним стоящий редстоуновый блок.

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, Hibbe сказал:

ну можно всегда что то упростить даже в командах.

это называется не упрощение, я исправил ошибку, из-за которой схема не работала

 

2 часа назад, Hibbe сказал:

а вот тут рил не понял. изначально понял что игрок должен заходить в зону и играть музыка потом выходишь и исчезает, но если она воспроизводится один раз то тогда еще проще, однако все равно нужно минимум двое кб ведь вроде автор просил чтоб музыка играла в определенной зоне. Тогда один цикличный кб который делает команду execute второй удаляет рядом с ним стоящий редстоуновый блок.

в команде /playsound есть параметр volume (громкость) который отвечает за распространение звука в радиусе, именно это было необходимо автору и не обязательно делать сложную схему определения места воспроизведения, ведь в команде можно указать координату

/playsound ambient.cave ambient @a (координаты) (радиус) (скорость)

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, PhoenixTechu сказал:

в команде /playsound есть параметр volume (громкость) который отвечает за распространение звука в радиусе, именно это было необходимо автору и не обязательно делать сложную схему определения места воспроизведения, ведь в команде можно указать координату

/playsound ambient.cave ambient @a (координаты) (радиус) (скорость)

если автору нужна была только сама команда playsound то да достаточно было прост корд, но если он хотел чтобы воспроизводился только тогда когда игрок зайдёт в нужную зону (что я так изначально и думал) то уже надо через execute или ещё сложнее чтобы звук воспроизводился каждый раз когда зайдет в зону а потом убирался выйдя из неё (что я тоже так раньше думал). Вариант выше когда игрок зайдя в зону воспроизводится звук и удаляется выйдя из неё.
Ещё стоит чуть чуть подкорректировать команду:
/playsound ambient.cave ambient @a (координаты) (громкость) (высота) (минимальная громкость)

Ссылка на комментарий
Поделиться на другие сайты

В 29.10.2025 в 15:55, Hibbe сказал:

если автору нужна была только сама команда playsound то да достаточно было прост корд, но если он хотел чтобы воспроизводился только тогда когда игрок зайдёт в нужную зону (что я так изначально и думал) то уже надо через execute или ещё сложнее чтобы звук воспроизводился каждый раз когда зайдет в зону а потом убирался выйдя из неё (что я тоже так раньше думал). Вариант выше когда игрок зайдя в зону воспроизводится звук и удаляется выйдя из неё.
Ещё стоит чуть чуть подкорректировать команду:
/playsound ambient.cave ambient @a (координаты) (громкость) (высота) (минимальная громкость)

спасибо большое и вам и всем, реально проще так сделать. Все робит как надо

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...