Есть список названий песен, и отслеживать, где вы находятся в списке с переменной. Используете ли вы pygame.mixer.music
или pygame.mixer.Sound
, когда нажата кнопка «Далее», просто измените переменную на единицу, а затем остановите песню, а песня - вместо нее.
Пример кода для pygame.mixer.Sound
:
#setup pygame above this
#load sounds
sound1 = pygame.mixer.Sound("soundone.ogg")
sound2 = pygame.mixer.Sound("soundtwo.ogg")
queue = [sound1, sound2] #note that the list holds the sounds, not strings
var = 0
sound1.play()
while 1:
if next(): #whatever the next button trigger is
queue[var].stop() # stop current song
if var == len(queue - 1): # if it's the last song
var = 0 # set the var to represent the first song
else:
var += 1 # else, next song
queue[var].play() # play the song var corresponds to
Вы должны включить то, что вы уже пробовали, что не работает, и что вы ожидаете, что делать. Pygame имеет функцию [queue] (http://www.pygame.org/docs/ref/music.html#pygame.mixer.music.queue), но она воспроизводит только следующую песню, если она заканчивается естественным образом. Таким образом, вы сами реализуете систему очередей, если хотите, чтобы вы могли переключать песни в середине одного (или предыдущего). Это не сложно реализовать (это в основном список, загрузка из списка и отслеживание индекса в списке), но вы должны показать, что вы пробовали в первую очередь. –
Вы читали документацию PyGame? то есть. [pygame.mixer.music] (http://pygame.org/docs/ref/music.html) – furas
Чтобы продлить: нам нужно знать ваши текущие знания о проблеме, чтобы дать ответ, который не проходит фундаментальная семантика python/pygame (которая является пустой тратой вашего и нашего времени), а не ответ, который слишком сложно понять. Если вы попробуете простую попытку, мы сможем быстро понять, что означает ваша отправная точка и предоставить помощь. Возможно, ссылки на документацию достаточны или объясняют, как загружать песни из списка и т. Д. Это будет сузить вопрос и сделать его менее широким и более ответственным. Это также покажет нам, что вы просто не хотите код, но на самом деле учитесь. –