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.
Mishanya _
Ученик
(178)
1 год назад
уже поздно, ну ладно
скрипт будет иногда не работать если он лежит не в том месте
в данном случае скрипт не будет работать в SoundService ведь это место для звуков а не для скриптов, если это обычный скрипт, то лучше будет поместить его в ServerScriptServers(хз забыл как пишется) или в Workspace, и другие сервисы с приставкой Starter, если это локальный то в workspace и в сервисы с приставкой Starter
Мне нужно чтобы на сервере играла музыка поочерёдно, но мой скрипт почему-то не работает.
Сам скрипт: Находится он по пути Game.SoundService.script
Музыки тоже находятся по этому пути.
Что делать?
Помогите пожалуйста.