Comments (15)
I'd say, need to make ;;repeat argumented.
from archived-bot.
Yeah, that's what I'm thinking, but what would the usage be like? What do we call modes 2 and 3?
from archived-bot.
;;repeat single_track
and ;;repeat queue
maybe?
from archived-bot.
that'd be better.
Just 2,3 toggling is ok
from archived-bot.
can you tell us how queue are handled?
from archived-bot.
from archived-bot.
How the audio queue works
The queue in FredBoat is partially held in the GuildPlayer
and the SimpleTrackProvider
. When an AudioTrack
is queued, commonly by the AudioLoader
, the track is added to the provider's internal ConcurrentLinkedQueue
. This queue is completely independent of shuffle. The shuffled list is sorted when it is requested and cached until the provider is modified.
The SimpleTrackProvider's purpose is to provide audio tracks upon request by the GuildPlayer
, which keeps the currently playing (or paused) AudioTrack
for itself. If the end of a track is reached (eg not stopped/skipped) and the player is in the current repeat mode, the track is simply restarted.
from archived-bot.
What I'm thinking is this:
;;repeat off // Disables repeat
;;repeat single // Repeats a single track until skipped
;;repeat all // Ended tracks are moved back into the queue
;;repeat // Displays usage information
from archived-bot.
Why not both?
I understand the two modes not as exclusive.
repeat all
boils down to never kicking a song out of the queue, instead putting it back in after it has finished playing.
That's not exclusive to having the first song in front of the queue playing over and over again.
imo solve this by just adding a ;;repeatall
command that will cause finished tracks to get added to the back of the queue.
Let me know if my proposal makes sense or you prefer the three-mode thing, so I can implement the preferred solution.
from archived-bot.
Hmm.
I'd like to prefer theree-mode
from archived-bot.
@napstr I don't think that is a very intuitive approach. It can be hard for the user to expect what modes are currently active when we don't have some sort of GUI. Why would the user even think there are two settings of repeating to begin with without reading the docs? Moreover, consider why Spotify allows you to switch between these 3 modes with a single button.
from archived-bot.
Indeed, my proposal isn't great for user experience.
What is the expected behavior of the skip
command in repeat all
mode? Should the track be kept in the queue (added to the back of it like unskipped played tracks) or be removed completely out of the queue?
from archived-bot.
If repeat all is enabled, the track would be moved to the tail of the queue.
from archived-bot.
This can be closed. #93 was merged
from archived-bot.
True, thanks for reminding me
from archived-bot.
Related Issues (20)
- Bot got stuck in connecting to VC after discord server crash HOT 5
- Bot doesn't leave when left alone HOT 4
- Bot not responding while doing searching tracks from Spotify in YouTube
- DanceCommand is broken
- FredBoat Music Failures HOT 1
- Prioritized tracks remain prioritized with the 'all' repeat mode HOT 6
- Compatibility issue with Clyp.it HOT 1
- Youtube error with Twitch streams HOT 1
- Feature: Gracefully handling Lavalink restarts HOT 1
- Edit the message sent when ;;help is executed HOT 3
- Feature: Add build instructions to CONTRIBUTING.md HOT 4
- [Feature Request] playfirst command HOT 1
- Use more updated version of gradle
- Add youtube title to ;;export output. HOT 1
- Configuration option to restrict DJs from skipping Admin's songs.
- SELFHOSTED - stop command makes the bot leave the channel HOT 3
- Youtube search is broken
- Feature request: Allow FredBoat to DM me track announcements HOT 1
- [Feature Request] Play direct links to mp3, wav, or other music files HOT 2
- SayCommand is not secure HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from archived-bot.