Описать такие функции как плейлист, очередь, завершение воспроизведения, переключение трека, очистка очереди, добавление в очередь.
Так же стоит использовать объектный подход, поскольку плеер должен по-разному работать при различных состояниях (пустая очередь, есть очередь и на паузе, есть очередь и играет) и работать с такой лестницей условий как в коде выше просто неудобно.