Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Roblox Studio скрипт

Кирилл Белов Ученик (233), закрыт 1 год назад
Помогите с простым скриптом:
Мне нужно чтобы на сервере играла музыка поочерёдно, но мой скрипт почему-то не работает.
Сам скрипт:
 while true do 
game.SoundService.Song1:Play()
wait(180)
game.SoundService.Song2:Play()
wait(370)
game.SoundService.Song3:Play()
wait(80)
game.SoundService.Song4:Play()
wait(212)
end
Находится он по пути Game.SoundService.script
Музыки тоже находятся по этому пути.
Что делать?
Помогите пожалуйста.
Лучший ответ
Professional Professional Мудрец (16353) 1 год назад
Ваш скрипт выглядит верным и должен работать, если вы правильно расположили файлы. Убедитесь, что все объекты Sound имеют имена "Song1", "Song2", "Song3" и "Song4" и находятся в объекте "SoundService" (и что их пути соответствуют вашему скрипту).

Вы также можете использовать функцию `Played` для отслеживания завершения воспроизведения текущей аудиозаписи перед переходом к следующей.

Основываясь на вашем коде, я предлагаю немного измененный вариант, с использованием события `Played`:

local Songs = game.SoundService:GetChildren()
local currentSongIndex = 1

local function playNextSong()
currentSongIndex = currentSongIndex + 1
if currentSongIndex > #Songs then
currentSongIndex = 1
end
Songs[currentSongIndex]:Play()
end

for _, song in ipairs(Songs) do
if song:IsA("Sound") then
song.Played:Connect(playNextSong)
end
end

Songs[currentSongIndex]:Play()


Этот скрипт получает все аудиозаписи в объекте SoundService, использует события `Played` для отслеживания их завершения и проигрывает их по очереди. Это может предотвратить проблемы, связанные с разной продолжительностью песен и событиями `wait()`.

Поместите этот скрипт в папку "ServerScriptService" в Roblox Studio. Затем убедитесь, что объекты Sound (Song1, Song2 и т. д.) находятся в объекте SoundService.

Если у вас до сих пор возникают проблемы, убедитесь, что следующие условия соблюдены:

1. Звуковые файлы загружены и отображаются в параметрах каждого объекта Sound.
2. Разрешите играть звуки больше, чем в одном экземпляре одновременно (если это необходимо).
3. Убедитесь, что громкость звука находится на подходящем уровне и звук воспроизводится через правильные аудиоисточники (настройки Spatial и т. д.).

Надеюсь, это решит вашу проблему!
Кирилл БеловУченик (233) 1 год назад
Благодарю! Еще не проверил, но думаю сработает т.к. я изначально поместил сам скрипт в SoundService, а не в ServerScriptService.
Остальные ответы
Ахмад Горкмазаров Ученик (80) 1 год назад
Учи программирование чтобы понять, а не играй в роблокс.
Кирилл БеловУченик (233) 1 год назад
Идиот, я не играю, я програмирую.
Андрей ПосхалкичМастер (1721) 1 год назад
Cтyлиcь пж, а?
Алексей Смелянский Мыслитель (7136) 1 год назад
Попробуй в workspace создать папку и скинуть туда всю музыку. Убедись что у всех звуков есть ids loaded.
В эту папку добавь скрипт. В него вставляешь:

local folder = script.Parent
local m1 = folder.song1
local m2 = folder.song2
local m3 = folder.song3
local m4 = folder.song4
while true do
m1:Play()
wait(180)
m2:Play()
wait(370)
m3:Play()
wait(80)
m4:Play()
wait(212)
end
Mishanya _ Ученик (178) 1 год назад
уже поздно, ну ладно

скрипт будет иногда не работать если он лежит не в том месте

в данном случае скрипт не будет работать в SoundService ведь это место для звуков а не для скриптов, если это обычный скрипт, то лучше будет поместить его в ServerScriptServers(хз забыл как пишется) или в Workspace, и другие сервисы с приставкой Starter, если это локальный то в workspace и в сервисы с приставкой Starter
Похожие вопросы