mirror of
https://github.com/arthur-pbty/gestion.git
synced 2026-06-05 22:01:41 +02:00
grand commit que tutur attend ( marche pas le raidmode en dev)
sinon il y a pleins de truc comme les anti raid , des coorectif ect
This commit is contained in:
+137
-16
@@ -17,18 +17,126 @@ module.exports = {
|
||||
const embed = new EmbedBuilder()
|
||||
.setTitle("Arguments de messages")
|
||||
.addFields(
|
||||
{ name: '{MemberMention}', value: `Mentionne le membre concerné` , inline: true },
|
||||
{ name: '{MemberName}', value: `Le nom du membre concerné` , inline: true },
|
||||
{ name: '{MemberDisplayName}', value:'Le pseudo de serveur du membre concerné', inline: true },
|
||||
{ name: '{MemberJoinedAt}',value: `La date à la quelle le membre concerné a rejoint le serveur`, inline: true },
|
||||
{ name: '{MemberID}', value: `L'ID du membre concerné` , inline: true },
|
||||
{ name: '{MemberPic}', value:'La photo de profil du membre concerné' , inline: true },
|
||||
{ name: '{MemberCreatedAt}', value: 'La date de création du compte du membre concerné ', inline: true },
|
||||
{ name: '{ServerName}', value: 'Le nom du serveur concerné', inline: true },
|
||||
{ name: '{ServerMembersCount}', value: 'Le nombre total de membres sur le serveur', inline: true }
|
||||
)
|
||||
{ name: '{MemberMention}', value: `Mentionne le membre concerné (\`exemple\`: **<@${message.author.id}>**)`, inline: true },
|
||||
{ name: '{MemberName}', value: `Le nom du membre concerné (\`exemple\`: **${message.author.username}**)`, inline: true },
|
||||
{ name: '{MemberDisplayName}', value: `Le pseudo de serveur du membre concerné (\`exemple\`: **${message.member.displayName}**)`, inline: true },
|
||||
{ name: '{MemberJoinedAt}', value: `La date à laquelle le membre concerné a rejoint le serveur (\`exemple\`: **${new Date(message.member.joinedAt).toLocaleDateString('fr-FR')}**)`, inline: true },
|
||||
{ name: '{MemberID}', value: `L\'ID du membre concerné (\`exemple\`: **${message.author.id}**)`, inline: true },
|
||||
{ name: '{MemberPic}', value: `La photo de profil du membre concerné (\`exemple\`: **${message.author.displayAvatarURL({dynamic: true})}**)`, inline: true },
|
||||
{ name: '{MemberCreatedAt}', value: `La date de création du compte du membre concerné (\`exemple\`: **${new Date(message.author.createdAt).toLocaleDateString('fr-FR')}**)`, inline: true },
|
||||
{ name: '{ServerName}', value: `Le nom du serveur concerné (\`exemple\`: **${message.guild.name}**)`, inline: true },
|
||||
{ name: '{ServerMembersCount}', value: `Le nombre total de membres sur le serveur (\`exemple\`: **${message.guild.memberCount}**)`, inline: true }
|
||||
)
|
||||
return message.reply({ embeds: [embed] });
|
||||
}
|
||||
} else if (args[0] === 'antiraid' ) {
|
||||
const embed = new EmbedBuilder()
|
||||
.setTitle("Help AntiRaid")
|
||||
.setDescription(`
|
||||
**AntiRaid Configuration**
|
||||
|
||||
La commande \`antiraid\` permet de configurer la protection anti-raid pour votre serveur. Voici comment vous pouvez la configurer :
|
||||
|
||||
**Syntaxe :**
|
||||
\`\`\`
|
||||
+antiraid [type] [action]
|
||||
\`\`\`
|
||||
|
||||
**Types disponibles :**
|
||||
- \`whitelist\` : Permet de limiter l'accès aux actions anti-raid uniquement au whitelist du serveur et aux owners et buyer du bot.
|
||||
- \`owner\` : Permet de limiter l'accès aux actions anti-raid uniquement au owners et buyer du bot.
|
||||
- \`buyer\` : Permet de limiter l'accès aux actions anti-raid uniquement aux buyer du bot.
|
||||
- \`off\` : Désactive la protection anti-raid.
|
||||
|
||||
**Actions disponibles :**
|
||||
- \`derank\` : Retire les rôles dangereux des utilisateurs qui tentent de déclencher un raid.
|
||||
- \`kick\` : Expulse les utilisateurs qui tentent de déclencher un raid.
|
||||
- \`ban\` : Bannit les utilisateurs qui tentent de déclencher un raid.
|
||||
- \`nothing\` : Ne fait rien en réponse à un raid.
|
||||
|
||||
**Exemples d'utilisation :**
|
||||
- Pour activer la protection anti-raid avec une liste blanche : \`+antiraid whitelist derank\`
|
||||
- Pour désactiver la protection anti-raid : \`+antiraid off\`
|
||||
|
||||
Note : Assurez-vous d'avoir les permissions nécessaires pour exécuter cette commande.
|
||||
`)
|
||||
return message.reply({ embeds: [embed] });
|
||||
} else if (args[0] === 'backup') {
|
||||
const embed = new EmbedBuilder()
|
||||
.setTitle("Aide pour la commande Backup")
|
||||
.setDescription(`
|
||||
**Gestion des sauvegardes**
|
||||
|
||||
La commande \`backup\` permet de créer, lister, charger ou supprimer des sauvegardes du serveur. Voici comment vous pouvez l'utiliser :
|
||||
|
||||
**Syntaxe :**
|
||||
\`\`\`
|
||||
+backup <paramètres>
|
||||
\`\`\`
|
||||
|
||||
**Paramètres disponibles :**
|
||||
- \`create\` : Crée une sauvegarde du serveur actuel.
|
||||
- \`list\` : Affiche la liste de toutes les sauvegardes disponibles.
|
||||
- \`load\` : Charge une sauvegarde sur le serveur. Vous devez spécifier l'ID de la sauvegarde à charger.
|
||||
- \`delete\` : Supprime une sauvegarde. Vous devez spécifier l'ID de la sauvegarde à supprimer.
|
||||
|
||||
**Exemples d'utilisation :**
|
||||
* Pour créer une sauvegarde : \`+backup create\`
|
||||
* Pour afficher la liste des sauvegardes : \`+backup list\`
|
||||
* Pour charger une sauvegarde (remplacez \`<backupId>\` par l'ID de la sauvegarde) : \`+backup load <backupId>\`
|
||||
* Pour supprimer une sauvegarde (remplacez \`<backupId>\` par l'ID de la sauvegarde) : \`+backup delete <backupId>\`
|
||||
|
||||
Note : Assurez-vous d'avoir les permissions nécessaires pour exécuter cette commande.
|
||||
`)
|
||||
return message.reply({ embeds: [embed] });
|
||||
} else if (args[0] === 'rolelimit') {
|
||||
const embed = new EmbedBuilder()
|
||||
.setTitle("Aide pour la commande RoleLimit")
|
||||
.setDescription(`
|
||||
**Gestion des limites de rôles**
|
||||
|
||||
La commande \`rolelimit\` permet de gérer les limites de rôles pour les utilisateurs. Voici comment vous pouvez l'utiliser :
|
||||
|
||||
**Syntaxe :**
|
||||
\`\`\`
|
||||
+rolelimit
|
||||
\`\`\`
|
||||
|
||||
**Fonctionnalités :**
|
||||
- **Ajouter une limite de rôle :** Utilisez le bouton "Add" pour ajouter une limite à un rôle spécifique. Vous devrez mentionner le rôle ou fournir son ID et spécifier la limite.
|
||||
- **Supprimer une limite de rôle :** Utilisez le bouton "Remove" pour supprimer une limite de rôle. Vous devrez mentionner le rôle ou fournir son ID.
|
||||
|
||||
**Exemples d'utilisation :**
|
||||
- Pour ajouter une limite de rôle : Sélectionnez le bouton "Add", mentionnez le rôle et spécifiez la limite.
|
||||
- Pour supprimer une limite de rôle : Sélectionnez le bouton "Remove", mentionnez le rôle.
|
||||
|
||||
Note : Assurez-vous d'avoir les permissions nécessaires pour exécuter cette commande.
|
||||
`)
|
||||
return message.reply({ embeds: [embed] });
|
||||
} else if (args[0] === 'confession') {
|
||||
const embed = new EmbedBuilder()
|
||||
.setTitle("Aide pour le système de confession")
|
||||
.setDescription(`
|
||||
**Configuration du système de confession**
|
||||
|
||||
Le système de confession permet aux utilisateurs de partager leurs confessions de manière anonyme. Voici comment vous pouvez le configurer :
|
||||
|
||||
**Syntaxe :**
|
||||
\`\`\`
|
||||
+setconfession [channel|send] [channelID|#channel]
|
||||
\`\`\`
|
||||
|
||||
**Paramètres disponibles :**
|
||||
- \`channel\` : Définit le salon de confession pour le serveur. Vous devez spécifier l'ID du salon ou mentionner le salon.
|
||||
- \`send\` : Envoie un embed avec un bouton pour ajouter une confession dans le salon spécifié. Vous devez spécifier l'ID du salon ou mentionner le salon.
|
||||
|
||||
**Exemples d'utilisation :**
|
||||
- Pour définir le salon de confession : \`+setconfession channel <channelID|#channel>\`
|
||||
- Pour envoyer un embed de confession : \`+setconfession send <channelID|#channel>\`
|
||||
|
||||
**Note : **Assurez-vous d'avoir les permissions nécessaires pour exécuter cette commande.
|
||||
`)
|
||||
return message.reply({ embeds: [embed] });
|
||||
} else {
|
||||
let data = await new Promise((resolve, reject) => {
|
||||
db.get('SELECT value FROM gestion WHERE id = ?', [botId], (err, row) => {
|
||||
if (err) {
|
||||
@@ -43,7 +151,7 @@ module.exports = {
|
||||
let mainPrefix = data.prefixes && data.prefixes.main ? data.prefixes.main : defaultPrefix;
|
||||
let serverPrefix = data.prefixes && data.prefixes[guildId];
|
||||
const prefix = serverPrefix !== undefined ? serverPrefix : mainPrefix;
|
||||
if (args[0]) {
|
||||
if (args[0] && client.commands.has(args[0])) {
|
||||
const command = client.commands.get(args[0]);
|
||||
if (!command) {
|
||||
return message.reply(`Je n'ai pas trouvé de commande nommée "${args[0]}".`);
|
||||
@@ -74,7 +182,7 @@ module.exports = {
|
||||
{ name: 'Permissions', value: commandPerm === 11 ? 'buyer' : commandPerm === 10 ? 'owner' : `Perm level: ${commandPerm}`, inline: true },
|
||||
)
|
||||
.setTimestamp()
|
||||
.setFooter({text: `${client.user.tag} © 2024`, iconURL: client.user.displayAvatarURL({dynamic: true})})
|
||||
.setFooter({text: `By Valou336 and tuturp33`, iconURL: client.user.displayAvatarURL({dynamic: true})})
|
||||
|
||||
return message.reply({ embeds: [embed_command] });
|
||||
}
|
||||
@@ -87,9 +195,21 @@ module.exports = {
|
||||
game: [],
|
||||
gestion: [],
|
||||
utils: [],
|
||||
invitation: [],
|
||||
other: [],
|
||||
};
|
||||
|
||||
const categoryEmojis = {
|
||||
antiraid: '🛡️',
|
||||
botcontrol: '🛠️',
|
||||
moderation: '⚖️',
|
||||
buyer: '💰',
|
||||
game: '🎮',
|
||||
gestion: '📝',
|
||||
utils: '⚙️',
|
||||
invitation: '📩',
|
||||
other: '❓',
|
||||
};
|
||||
|
||||
let liste = [];
|
||||
for (const command of client.commands.values()) {
|
||||
const existingCommand = liste.find(cmd => cmd.name === command.name);
|
||||
@@ -144,13 +264,13 @@ module.exports = {
|
||||
.setPlaceholder('Sélectionnez une catégorie')
|
||||
.addOptions([
|
||||
{ label: 'Accueil', value: 'home' },
|
||||
...Object.keys(categories).map(category => ({ label: `Catégorie ${category}`, value: category })),
|
||||
...Object.keys(categories).map(category => ({ label: `${categoryEmojis[category]} ${category}`, value: category })),
|
||||
]);
|
||||
|
||||
const row = new ActionRowBuilder()
|
||||
.addComponents(menu);
|
||||
const sentMessage = await message.reply({ embeds: [embeds[args[0]] || embeds.home], components: [row] });
|
||||
|
||||
const sentMessage = await message.reply({ embeds: [embeds.home], components: [row] });
|
||||
|
||||
const filter = i => i.customId === 'help_menu' && i.user.id === message.author.id;
|
||||
const collector = sentMessage.createMessageComponentCollector({ filter, time: 60000 });
|
||||
@@ -161,5 +281,6 @@ module.exports = {
|
||||
collector.on('end', () => {
|
||||
sentMessage.edit({ components: [] });
|
||||
});
|
||||
}
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user