Changing extension handling

This commit is contained in:
= 2021-06-28 18:11:32 -04:00
parent 232244068a
commit 52327a897d
2 changed files with 44 additions and 33 deletions

View File

@ -23,9 +23,9 @@ module.exports = {
if (debug) console.log(client.gifs);
},
getPastaFiles(client) {
client.pasta = new Discord.Collection();
client.pastas = new Discord.Collection();
for (const file of pastaFiles) {
const pasta = require(`./pasta/${file}`);
const pasta = require(`./pastas/${file}`);
client.pastas.set(pasta.name, pasta);
}
if (debug) console.log(client.pastas);
@ -33,7 +33,7 @@ module.exports = {
getExtension(args) {
const finalWord = args.pop();
const file = finalWord.split('.');
return file[1];
return file;
},
extCheck(content) {
const lastFour = content.slice(-4);

View File

@ -26,53 +26,64 @@ client.login(process.env.TOKEN);
client.on('message', message => {
const args = message.content.trim().split(/ +/);
const extension = functions.getExtension(args);
if ((!message.content.startsWith(prefix) && extension != undefined) || message.author.bot) return;
// TODO this will surely break something when trying to use non-filename commands
const file = functions.getExtension(args);
// If the message is from a bot, or doesn't have the prefix or a file extension, stop here.
if ((!message.content.startsWith(prefix) && file[1] == undefined) || message.author.bot) return;
// If the message starts with the prefix,
if (message.content.startsWith(prefix)) {
// Extract the command
const command = args.shift().toLowerCase().slice(prefix.length);
if (debug) console.log(args);
// If the command collection doesn't contain the given command, stop here.
if (!client.commands.has(command)) return;
try {
// Attempt to execute the command
client.commands.get(command).execute(message, args);
} catch (error) {
// Log errors and let the user know something went wrong.
console.error(error);
message.channel.send('There was an error trying to execute that command.');
message.guild.owner
}
}
const query = message.content.slice(0, -4);
switch (extension) {
case '.gif':
if (debug) console.log(query);
// If there is a file extension
if (file[1] != undefined) {
const query = message.content.slice(0, -4);
switch (file[1]) {
case 'gif':
if (debug) console.log(query);
if (!client.gifs.has(query)) {
giphy.search(query, (err, res) => {
if (res.data[0] != undefined) {
message.channel.send(res.data[0].embed_url).then().catch(console.error);
} else {
message.channel.send('I was unable to find a gif of ' + query);
}
if (err) console.error(err);
});
} else {
message.channel.send(client.gifs.get(query).embed_url);
}
break;
case '.pasta':
const pastaName = args[0].splice(args[0].search(/\.(?:.(?!\\))+$/gim))
if (debug) console.log(query);
if (!client.gifs.has(file[0])) {
giphy.search(query, (err, res) => {
if (res.data[0] != undefined) {
message.channel.send(res.data[0].embed_url).then().catch(console.error);
} else {
message.channel.send('I was unable to find a gif of ' + query);
}
if (err) console.error(err);
});
} else {
message.channel.send(client.gifs.get(query).embed_url);
}
break;
case 'pasta':
// const pastaName = args[0].splice(args[0].search(/\.(?:.(?!\\))+$/gim))
if (debug) console.log(file[0]);
if (!client.pastas.has(query)) {
message.reply('Sorry I couldn\'t find that gif.');
} else {
message.channel.send(client.pastas.get(query).content);
if (!client.pastas.has(file[0])) {
message.reply('Sorry I couldn\'t find that gif.');
} else {
message.channel.send(client.pastas.get(file[0]).content);
}
break;
default:
break;
}
break;
default:
break;
}
});