2023-03-15 14:09:09 +00:00
import MusicCommand from "../../classes/musicCommand.js" ;
class ToggleCommand extends MusicCommand {
async run ( ) {
this . success = false ;
if ( ! this . guild ) return "This command only works in servers!" ;
if ( ! this . member . voiceState ) return "You need to be in a voice channel first!" ;
if ( ! this . guild . voiceStates . has ( this . client . user . id ) ) return "I'm not in a voice channel!" ;
if ( ! this . connection ) return "I haven't completely connected yet!" ;
2023-03-15 14:12:35 +00:00
if ( this . connection . host !== this . author && ! this . member . permissions . has ( "MANAGE_CHANNELS" ) ) return "Only the current voice session host can pause/resume the music!" ;
2023-03-15 14:09:09 +00:00
const player = this . connection . player ;
player . setPaused ( ! player . paused ? true : false ) ;
this . success = true ;
return ` 🔊 The player has been ${ player . paused ? "paused" : "resumed" } . ` ;
}
static description = "Pauses/resumes the current song" ;
static aliases = [ "pause" , "resume" ] ;
}
export default ToggleCommand ;