Compare commits

..

8 Commits

4 changed files with 27 additions and 14 deletions

View File

@ -20,7 +20,7 @@ const responses = [
"Vous pouvez répéter la question ?",
"Bon sang, mais c'est bien sûr !",
"Mais vous êtes fous !",
"Mais evidemment !",
"Mais évidemment !",
"Bizarrement, oui.",
"Essaye plus tard",
"Essaye encore",
@ -51,8 +51,7 @@ module.exports = {
async execute(interaction) {
const question = interaction.options.get('question').value;
const i = Math.floor(Math.random() * responses.length);
const reply = "*" + interaction.user.username + " a demandé : " + question + "*\n" + quote( responses[i] ) ;
//const reply = responses[i] + "\n >>> " + question;
const reply = "*" + interaction.member.displayName + " a demandé : " + question + "*\n" + quote( responses[i] ) ;
await interaction.reply(reply)
.then(console.log("Reply sent to 8ball command."))
.catch(console.error);

View File

@ -5,6 +5,6 @@ module.exports = {
.setName('server')
.setDescription('Replies with Server info!'),
async execute(interaction) {
await interaction.reply(`Server name: ${interaction.guild.name}\nTotal members: ${interaction.guild.memberCount}`);
await interaction.reply({content:`Server name: ${interaction.guild.name}\nTotal members: ${interaction.guild.memberCount}` , ephemeral:true});
},
};

View File

@ -5,6 +5,6 @@ module.exports = {
.setName('user')
.setDescription('Replies with User info!'),
async execute(interaction) {
await interaction.reply(`Your tag: ${interaction.user.tag}\nYour id: ${interaction.user.id}`);
await interaction.reply({content: 'Your tag: ${interaction.user.tag}\nYour id: ${interaction.user.id}', ephemeral:true});
},
};

View File

@ -6,7 +6,7 @@ var wwId = 1;
/**
* This function aims to do word wars inside a discord channel.
* Someone launches a wordwar and other people can join in by clicking on the react icon.
* Someone launches a wrdwar and other people can join in by clicking on the react icon.
* First argument is the time of duration of the wordwar.
* Second argument is the waiting time before the wordwar.
**/
@ -85,7 +85,7 @@ module.exports = {
ongoingww.set(interaction.user.id, wwRole.name);
interaction.member.roles.add(wwRole.id);
commandReply = "Une wordwar a été initiée. Elle commencera dans " + wwdelay + " minutes et durera " + wwtimer + " minutes.";
const commandReply = getRegistered(wwRole.name,wwdelay,wwtimer);
const row = new MessageActionRow()
.addComponents(
@ -114,13 +114,14 @@ module.exports = {
collectorParticipate.on('collect', async i => {
if (i.member.roles.cache.has(wwRole.id)) {
OnlyReply('Vous êtes déjà enregistré pour cette wordwar', i, wwRole);
OnlyReply('Vous êtes déjà enregistré.e pour cette wordwar', i, wwRole);
} else if (ongoingww.has(i.user.id)) {
OnlyReply('Vous êtes déjà enregistré dans la wordwar ' + ongoingww.get(i.user.id), i, wwRole);
OnlyReply('Vous êtes déjà enregistré.e dans la wordwar ' + ongoingww.get(i.user.id), i, wwRole);
} else {
i.member.roles.add(wwRole);
ongoingww.set(i.user.ida, wwRole);
OnlyReply('Participation est enregistrée', i, wwRole);
ongoingww.set(i.user.id, wwRole.name);
i.message.edit(getRegistered(wwRole.name, wwdelay, wwtimer));
i.deferUpdate();
}
});
@ -134,9 +135,10 @@ module.exports = {
if (!i.member.roles.cache.has(wwRole.id)) {
OnlyReply('Vous n\'êtes pas enregistré pour cette wordwar', i, wwRole);
} else {
OnlyReply('Participation est annulée', i, wwRole);
i.member.roles.remove(wwRole);
ongoingww.delete(i.user.id);
console.log(ongoingww);
i.deferUpdate();
// Si l'utilisateur qui annule est le dernier dans cette wordwar
if (typeof ongoingww.find(wordWar => wordWar == wwRole.name) == "undefined") {
@ -152,6 +154,8 @@ module.exports = {
}
console.log(wwRole.name + ' canceled');
return;
}else{
i.message.edit(getRegistered(wwRole.name, wwdelay, wwtimer));
}
}
});
@ -159,12 +163,12 @@ module.exports = {
setTimeout(async () => {
if (wwRole.deleted != true) {
console.log(wwRole.name + ' launched');
var participantStart = '\nLa wordwar ' + wwRole.name + ' commence. Vous pouvez toujours la rejoindre si vous le désirez. Bonne chance à tou.te.s !! ' + roleMention(wwRole.id) + '\n';
var participantStart = '\nLa ' + wwRole.name + ' commence. Vous pouvez toujours la rejoindre si vous le désirez. Bonne chance à tou.te.s !! ' + roleMention(wwRole.id) + '\n';
publicReplies = await interaction.channel.send({ content: participantStart, fetchReply: true });
setTimeout(async () => {
if (wwRole.deleted != true) {
console.log(wwRole.name + ' ended');
var participantEnd = 'La wordwar ' + wwRole.name + ' est maintenant terminée, merci d\'y avoir participé \! ' + roleMention(wwRole.id) + '\n';
var participantEnd = 'La ' + wwRole.name + ' est maintenant terminée, merci d\'y avoir participé \! ' + roleMention(wwRole.id) + '\n';
await interaction.channel.send({ content: participantEnd, fetchReply: true });
ongoingww.forEach((value,key,ongoingww) => {
if (value == wwRole.name) {
@ -198,4 +202,14 @@ function OnlyReply(str, int, ww) {
intTable.get(ww.name + int.user.id).editReply({ content: str, ephemeral: true, fetchReply: true });
int.deferUpdate();
}
}
function getRegistered(ww,d, t) {
var str = "";
ongoingww.forEach(async (value, key) => {
if (value == ww){
str += userMention(key) + ' ';
}
});
return "la " + ww + " a été initiée. Elle commencera dans " + d + " minutes et durera " + t + " minutes.\nInscrits : " + str;
}