updating to discord v13

This commit is contained in:
John Facey
2022-06-29 19:49:03 -05:00
parent 4a421391f6
commit 3d6747f72b
13 changed files with 812 additions and 189 deletions

View File

@@ -1,18 +1,29 @@
var libFlayer = require("../libFlayer.js");
var libTrivia = require("../libTrivia.js");
module.exports = {
name: 'answer',
description: 'Answer',
description: 'Answer to Play',
async execute(message, args) {
if (args.length < 1) {
message.reply(`Please use in !answer [number] format`);
return;
}
try {
if (args.length < 1) {
message.reply(`Please use in !answer [question] format`);
return;
}
var question = encodeURIComponent(args.join(" "));
let questions = libTrivia.getQuestions();
let thisQuestion = questions[libTrivia.getCurrentQuestion()];
var answerData = await libFlayer.getAnswer(question);
message.reply(`**Question**: ${decodeURIComponent(question)}\n\n**Answer**: ${answerData.text}\n\n **Source**: ${answerData.source}`);
let selectedAnswerIndex = parseInt(args[0] - 1);
let selectedAnswer = questions[libTrivia.getCurrentQuestion()].randomAnswers[parseInt(selectedAnswerIndex)];
let correctAnswer = thisQuestion.answers[0];
if (selectedAnswer == correctAnswer) {
message.reply(`**You got it right** - *${thisQuestion.explain}*`);
} else {
message.reply(`**You got it wrong** - *Try again*`);
}
} catch (err) {
message.reply(err.toString());
}

64
commands/find.js Normal file
View File

@@ -0,0 +1,64 @@
var libFlayer = require("../libFlayer.js");
module.exports = {
name: 'find',
description: 'Find RSS Sources',
execute(message, args) {
try {
if (args.length < 1) {
message.reply(`Missing arguments`);
return;
}
var search = args.join(" ");
var found = false;
let i = 0;
let iSave = 0
let count = 0;
var feedArray = libFlayer.getFeeds();
var searchString = "";
var foundError = false;
feedArray.forEach(linkFlay => {
try {
if (linkFlay.title.toLowerCase().indexOf(search.toLowerCase()) > -1) {
iSave = i;
found = true;
console.log(linkFlay.title);
searchString += `Use !get ${i} to view: ${linkFlay.title} \n`;
count++;
if (count > 5) {
message.reply(searchString);
searchString = "";
}
}
i++;
} catch (error) {
foundError = true;
console.log(error);
}
});
if (foundError) {
message.reply("Error in search");
return;
} else {
message.reply(searchString);
}
if (count == 1) {
//message.channel.send('Displaying 1 result');
//message.channel.send('!get '+iSave);
}
if (!found) {
message.reply(`No results found for: ${search}`);
}
} catch (error) {
message.reply(error.toString());
}
}
};

View File

@@ -5,7 +5,7 @@ module.exports = {
description: 'Help',
execute(message) {
message.reply(
`!help - Lists the available commands
`**!help** - *Lists the available commands*
**!key** - Testing remote Airtable: *!key url*
**!categories** - Displays Categories: *!categories*
**!search** - Searches the RSS Sources: *!search google*
@@ -15,9 +15,11 @@ module.exports = {
**!quote** - Selects a random quote: *!quote*
**!random** - Selects a random article: *!random*
**!random category** - Selects a random article by category: *!random sports*
**!answer** - Instant Live Search: *!answer salesforce*
**!search** - Instant Live Search: *!search salesforce*
**!slang** - Urban Dictionary Search: *!slang slang*
**!stock** - AlphaVantage Stock Search: *!stock IBM*
**!play** - Plays a trivia game question: *!play*
**!answer** - Answers for a question above: *!answer 1*
`
);
}

25
commands/play.js Normal file
View File

@@ -0,0 +1,25 @@
var libTrivia = require("../libTrivia.js");
module.exports = {
name: 'play',
description: 'Play',
async execute(message, args) {
try {
let questions = libTrivia.getQuestions();
var i = Math.floor(Math.random() * (questions.length - 0) + 0);
message.reply(`**Question**: *${questions[i].question}*
**Select an Answer: **
**[!answer 1]**. *${questions[i].randomAnswers[0]}*
**[!answer 2]**. *${questions[i].randomAnswers[1]}*
**[!answer 3]**. *${questions[i].randomAnswers[2]}*
**[!answer 4]**. *${questions[i].randomAnswers[3]}*
`);
libTrivia.setCurrentQuestion(i);
} catch (err) {
message.reply(err.toString());
}
}
};

47
commands/play2.js Normal file
View File

@@ -0,0 +1,47 @@
var libTrivia = require("../libTrivia.js");
module.exports = {
name: 'play2',
description: 'Play2',
async execute(message, args) {
try {
let questions = libTrivia.getQuestions();
var i = Math.floor(Math.random() * (questions.length - 0) + 0);
libTrivia.setCurrentQuestion(i);
const { MessageActionRow, MessageEmbed, MessageSelectMenu } = require('discord.js');
const row = new MessageActionRow()
.addComponents(
new MessageSelectMenu()
.setCustomId('select')
.setPlaceholder('Nothing selected')
.addOptions([
{
label: 'Answer 1',
description: `${questions[i].randomAnswers[0]}`,
value: `${questions[i].randomAnswers[0]}`,
},
{
label: 'Answer 2',
description: `${questions[i].randomAnswers[1]}`,
value: `${questions[i].randomAnswers[1]}`,
},
{
label: 'Answer 3',
description: `${questions[i].randomAnswers[2]}`,
value: `${questions[i].randomAnswers[2]}`,
},
{
label: 'Answer 4',
description: `${questions[i].randomAnswers[3]}`,
value: `${questions[i].randomAnswers[3]}`,
}
]),
);
await message.reply({ content: `${questions[i].question}`, components: [row] });
} catch (err) {
message.reply(err.toString());
}
}
};

View File

@@ -1,64 +1,20 @@
var libFlayer = require("../libFlayer.js");
module.exports = {
name: 'search',
description: 'Search RSS Sources',
execute(message, args) {
try {
if (args.length < 1) {
message.reply(`Missing arguments`);
return;
}
var search = args.join(" ");
var found = false;
let i = 0;
let iSave = 0
let count = 0;
var feedArray = libFlayer.getFeeds();
var searchString = "";
var foundError = false;
feedArray.forEach(linkFlay => {
try {
if (linkFlay.title.toLowerCase().indexOf(search.toLowerCase()) > -1) {
iSave = i;
found = true;
console.log(linkFlay.title);
searchString += `Use !get ${i} to view: ${linkFlay.title} \n`;
count++;
if (count > 5) {
message.reply(searchString);
searchString = "";
}
}
i++;
} catch (error) {
foundError = true;
console.log(error);
}
});
if (foundError) {
message.reply("Error in search");
return;
} else {
message.reply(searchString);
}
if (count == 1) {
//message.channel.send('Displaying 1 result');
//message.channel.send('!get '+iSave);
}
if (!found) {
message.reply(`No results found for: ${search}`);
}
} catch (error) {
message.reply(error.toString());
}
name: 'search',
description: 'Search',
async execute(message, args) {
try {
if (args.length < 1) {
message.reply(`Please use in !search [question] format`);
return;
}
var question = encodeURIComponent(args.join(" "));
var answerData = await libFlayer.search(question);
message.reply(`**Question**: ${decodeURIComponent(question)}\n\n**Answer**: ${answerData.text}\n\n **Source**: ${answerData.source}`);
} catch (err) {
message.reply(err.toString());
}
}
};