Added seek
This commit is contained in:
		
							parent
							
								
									340ef45b17
								
							
						
					
					
						commit
						0aafe950f7
					
				
					 1 changed files with 24 additions and 0 deletions
				
			
		
							
								
								
									
										24
									
								
								commands/music/seek.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								commands/music/seek.js
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,24 @@
 | 
				
			||||||
 | 
					import { Rest } from "lavacord";
 | 
				
			||||||
 | 
					import MusicCommand from "../../classes/musicCommand.js";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class SeekCommand extends MusicCommand {
 | 
				
			||||||
 | 
					  async run() {
 | 
				
			||||||
 | 
					    if (!this.message.channel.guild) return "This command only works in servers!";
 | 
				
			||||||
 | 
					    if (!this.message.member.voiceState.channelID) return "You need to be in a voice channel first!";
 | 
				
			||||||
 | 
					    if (!this.message.channel.guild.members.get(this.client.user.id).voiceState.channelID) return "I'm not in a voice channel!";
 | 
				
			||||||
 | 
					    if (this.connection.host !== this.message.author.id) return "Only the current voice session host can seek the music!";
 | 
				
			||||||
 | 
					    const player = this.connection.player;
 | 
				
			||||||
 | 
					    const track = await Rest.decode(player.node, player.track);
 | 
				
			||||||
 | 
					    if (!track.isSeekable) return "This track isn't seekable!";
 | 
				
			||||||
 | 
					    const seconds = parseInt(this.args[0]);
 | 
				
			||||||
 | 
					    if (isNaN(seconds) || (seconds * 1000) > track.length || (seconds * 1000) < 0) return "That's not a valid position!";
 | 
				
			||||||
 | 
					    player.seek(seconds * 1000);
 | 
				
			||||||
 | 
					    return `🔊 Seeked track to ${seconds} seconds.`;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  static description = "Seeks to a different position in the music";
 | 
				
			||||||
 | 
					  static aliases = ["pos"];
 | 
				
			||||||
 | 
					  static arguments = ["[seconds]"];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export default SeekCommand;
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue