Updated music system

This commit is contained in:
2025-03-01 21:40:35 +01:00
parent dae76df165
commit 2d21b0874f
5 changed files with 868 additions and 177 deletions

View File

@@ -37,19 +37,18 @@
"author": "Taken", "author": "Taken",
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"dependencies": { "dependencies": {
"@discord-player/extractor": "^4.5.1", "@discord-player/extractor": "^7.1.0",
"@evan/opus": "^1.0.3",
"@swc/cli": "^0.6.0", "@swc/cli": "^0.6.0",
"@swc/core": "^1.11.5", "@swc/core": "^1.11.5",
"anilist": "^0.12.4", "anilist": "^0.12.4",
"axios": "^1.8.1", "axios": "^1.8.1",
"chalk": "^5.4.1", "chalk": "^5.4.1",
"cron": "^4.1.0", "cron": "^4.1.0",
"discord-player": "^6.7.1", "discord-player": "^7.1.0",
"discord-player-youtubei": "^1.4.2",
"discord.js": "^14.18.0", "discord.js": "^14.18.0",
"drizzle-orm": "^0.40.0", "drizzle-orm": "^0.40.0",
"ioredis": "^5.5.0", "ioredis": "^5.5.0",
"mediaplex": "^1.0.0",
"ms": "^2.1.3", "ms": "^2.1.3",
"postgres": "^3.4.5", "postgres": "^3.4.5",
"pretty-ms": "^9.2.0", "pretty-ms": "^9.2.0",

1025
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -20,9 +20,10 @@ const cmd: SubCommand = async (interaction) => {
} }
if (amount > queue.size) { if (amount > queue.size) {
queue.delete()
await interaction.editReply({ await interaction.editReply({
embeds: [{ embeds: [{
description: `There are only ${queue.size} song${queue.size === 1 ? "" : "s"} in the queue`, description: "Skipped all songs in the queue",
color: embedColor color: embedColor
}] }]
}) })

View File

@@ -19,9 +19,11 @@ export default {
const player = useMainPlayer() const player = useMainPlayer()
const { tracks } = await player.search(focusedOption.value, { const { tracks } = await player.search(focusedOption.value, {
searchEngine: QueryType.YOUTUBE_SEARCH searchEngine: QueryType.SPOTIFY_SEARCH
}) })
console.log(tracks)
const results = tracks.map(track => ({ const results = tracks.map(track => ({
name: `${track.title.slice(0, 20)} [${track.author}]`, name: `${track.title.slice(0, 20)} [${track.author}]`,
value: track.url value: track.url

View File

@@ -1,5 +1,5 @@
import { DefaultExtractors } from "@discord-player/extractor"
import { Player } from "discord-player" import { Player } from "discord-player"
import { YoutubeiExtractor } from "discord-player-youtubei"
import { Redis } from "ioredis" import { Redis } from "ioredis"
import { ExtendedClient as Client } from "~/utils/Client.js" import { ExtendedClient as Client } from "~/utils/Client.js"
import env from "~/utils/Env.js" import env from "~/utils/Env.js"
@@ -20,9 +20,7 @@ if (process.env.NODE_ENV === "dev" && process.env.TYPESCRIPT === "true") {
class Illegitimate { class Illegitimate {
async start() { async start() {
await loadAllEvents(client, ft) await loadAllEvents(client, ft)
// await player.extractors.loadDefault() await player.extractors.loadMulti(DefaultExtractors)
await player.extractors.loadDefault(ext => ext != "YouTubeExtractor")
await player.extractors.register(YoutubeiExtractor, {})
await client.start() await client.start()
await this.databases() await this.databases()
this.loadMethods() this.loadMethods()