mirror of
https://github.com/BluemediaDev/muse.git
synced 2025-05-10 12:11:35 +02:00
Various bug fixes
This commit is contained in:
parent
15d4e251f2
commit
c058ec95fe
7 changed files with 36 additions and 35 deletions
|
@ -1,4 +1,4 @@
|
|||
import {TextChannel, Message} from 'discord.js';
|
||||
import {TextChannel, Message, GuildChannel} from 'discord.js';
|
||||
import {injectable} from 'inversify';
|
||||
import {Settings} from '../models';
|
||||
import errorMsg from '../utils/error-msg';
|
||||
|
@ -50,7 +50,13 @@ export default class implements Command {
|
|||
}
|
||||
|
||||
case 'channel': {
|
||||
const channel = msg.guild!.channels.cache.find(c => c.name === args[1]);
|
||||
let channel: GuildChannel | undefined;
|
||||
|
||||
if (args[1].includes('<#') && args[1].includes('>')) {
|
||||
channel = msg.guild!.channels.cache.find(c => c.id === args[1].slice(2, args[1].indexOf('>')));
|
||||
} else {
|
||||
channel = msg.guild!.channels.cache.find(c => c.name === args[1]);
|
||||
}
|
||||
|
||||
if (channel && channel.type === 'text') {
|
||||
await Settings.update({channel: channel.id}, {where: {guildId: msg.guild!.id}});
|
||||
|
|
|
@ -25,12 +25,12 @@ export default class implements Command {
|
|||
public async execute(msg: Message, args: string []): Promise<void> {
|
||||
const queue = this.queueManager.get(msg.guild!.id);
|
||||
|
||||
if (queue.get().length === 0) {
|
||||
if (!queue.getCurrent()) {
|
||||
await msg.channel.send(errorMsg('nothing is playing'));
|
||||
return;
|
||||
}
|
||||
|
||||
if (queue.get()[0].isLive) {
|
||||
if (queue.getCurrent()?.isLive) {
|
||||
await msg.channel.send(errorMsg('can\'t seek in a livestream'));
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -268,7 +268,10 @@ export default class implements Command {
|
|||
|
||||
if (this.playerManager.get(msg.guild!.id).voiceConnection === null) {
|
||||
await this.playerManager.get(msg.guild!.id).connect(targetVoiceChannel);
|
||||
}
|
||||
|
||||
if (this.queueManager.get(msg.guild!.id).size() === 0) {
|
||||
// Only auto-play on first song added
|
||||
await this.playerManager.get(msg.guild!.id).play();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,12 +26,12 @@ export default class implements Command {
|
|||
public async execute(msg: Message, args: string []): Promise<void> {
|
||||
const queue = this.queueManager.get(msg.guild!.id);
|
||||
|
||||
if (queue.get().length === 0) {
|
||||
if (!queue.getCurrent()) {
|
||||
await msg.channel.send(errorMsg('nothing is playing'));
|
||||
return;
|
||||
}
|
||||
|
||||
if (queue.get()[0].isLive) {
|
||||
if (queue.getCurrent()?.isLive) {
|
||||
await msg.channel.send(errorMsg('can\'t seek in a livestream'));
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@ export default class implements Command {
|
|||
try {
|
||||
queue.forward();
|
||||
|
||||
if (queue.isEmpty()) {
|
||||
if (queue.isEmpty() && !queue.getCurrent()) {
|
||||
this.playerManager.get(msg.guild!.id).disconnect();
|
||||
} else {
|
||||
await this.playerManager.get(msg.guild!.id).play();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue