Compare commits
No commits in common. "d4d3858ac750c11915e95f3c3bc5145bdf2ff81e" and "9d5c65bf9dd8d5d111def01ce56853f92b5d60eb" have entirely different histories.
d4d3858ac7
...
9d5c65bf9d
5 changed files with 11 additions and 177 deletions
|
@ -11,8 +11,8 @@ une [Pull Request](https://git.kennel.ml/ConfrerieDuKassoulait/Botanique/pulls).
|
||||||
## Sommaire <!-- omit in toc -->
|
## Sommaire <!-- omit in toc -->
|
||||||
- [Recevoir de l'aide](#recevoir-de-laide)
|
- [Recevoir de l'aide](#recevoir-de-laide)
|
||||||
- [Langues](#langues)
|
- [Langues](#langues)
|
||||||
- [Ajouter une langue](#ajouter-une-langue)
|
- [Ajouter une langue](#ajouter-une-langue)
|
||||||
- [Mettre à jour une langue](#mettre-à-jour-une-langue)
|
- [Mettre à jour une langue](#mettre-à-jour-une-langue)
|
||||||
- [Projet](#projet)
|
- [Projet](#projet)
|
||||||
- [Ajouter une commande](#ajouter-une-commande)
|
- [Ajouter une commande](#ajouter-une-commande)
|
||||||
- [Ajouter un évènement](#ajouter-un-évènement)
|
- [Ajouter un évènement](#ajouter-un-évènement)
|
||||||
|
@ -39,12 +39,7 @@ La norme pour les nom dans les fichiers est la suivante :
|
||||||
- `c_NOM-COMMANDE_desc` : Description de la commande
|
- `c_NOM-COMMANDE_desc` : Description de la commande
|
||||||
- `c_NOM-COMMANDE_optX_name` : Nom de l'option X
|
- `c_NOM-COMMANDE_optX_name` : Nom de l'option X
|
||||||
- `c_NOM-COMMANDE_optX_desc` : Description de l'option X
|
- `c_NOM-COMMANDE_optX_desc` : Description de l'option X
|
||||||
- `c_NOM-COMMANDE_subX_name` : Nom de la sous-commande X
|
|
||||||
- `c_NOM-COMMANDE_subX_desc` : Description de la sous-commande X
|
|
||||||
- `c_NOM-COMMANDEX` : `X` le numéro de la chaîne de caractère
|
- `c_NOM-COMMANDEX` : `X` le numéro de la chaîne de caractère
|
||||||
|
|
||||||
Évidemment ça peut s'additionner,
|
|
||||||
par exemple : `c_NOM-COMMANDE_subX_optX_desc`.
|
|
||||||
- Chaîne de charactère des évènements :
|
- Chaîne de charactère des évènements :
|
||||||
`e` est utilisé pour `E`vènements.
|
`e` est utilisé pour `E`vènements.
|
||||||
- `e_NOM-EVENEMENT_N` : `N` le nom de la chaîne de caractère
|
- `e_NOM-EVENEMENT_N` : `N` le nom de la chaîne de caractère
|
||||||
|
@ -96,7 +91,7 @@ nouvelle catégorie si votre commande n'entre dans aucune qui existe déjà.
|
||||||
Le contenu du fichier doit commencer comme suit :
|
Le contenu du fichier doit commencer comme suit :
|
||||||
```typescript
|
```typescript
|
||||||
import { SlashCommandBuilder } from '@discordjs/builders';
|
import { SlashCommandBuilder } from '@discordjs/builders';
|
||||||
import { Client, ChatInputCommandInteraction } from 'discord.js';
|
import { Client, CommandInteraction } from 'discord.js';
|
||||||
import { getLocale, getLocalizations } from '../../utils/locales';
|
import { getLocale, getLocalizations } from '../../utils/locales';
|
||||||
import { getFilename } from '../../utils/misc';
|
import { getFilename } from '../../utils/misc';
|
||||||
|
|
||||||
|
@ -115,7 +110,7 @@ export default {
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
interaction: async (interaction: ChatInputCommandInteraction, client: Client) => {
|
interaction: async (interaction: CommandInteraction, client: Client) => {
|
||||||
const loc = getLocale(client, interaction.locale);
|
const loc = getLocale(client, interaction.locale);
|
||||||
|
|
||||||
/* Votre code ici */
|
/* Votre code ici */
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import { SlashCommandBuilder } from '@discordjs/builders';
|
import { SlashCommandBuilder } from '@discordjs/builders';
|
||||||
import { Locale } from 'discord-api-types/v9';
|
import { Locale } from 'discord-api-types/v9';
|
||||||
import { Client, ChatInputCommandInteraction, EmbedBuilder } from 'discord.js';
|
import { Client, CommandInteraction, EmbedBuilder } from 'discord.js';
|
||||||
import { getLocale, getLocalizations } from '../../utils/locales';
|
import { getLocale, getLocalizations } from '../../utils/locales';
|
||||||
import { getFilename } from '../../utils/misc';
|
import { getFilename } from '../../utils/misc';
|
||||||
import '../../modules/string';
|
import '../../modules/string';
|
||||||
|
@ -31,12 +31,12 @@ export default {
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
interaction: async (interaction: ChatInputCommandInteraction, client: Client) => {
|
interaction: async (interaction: CommandInteraction, client: Client) => {
|
||||||
const loc = getLocale(client, interaction.locale);
|
const loc = getLocale(client, interaction.locale);
|
||||||
const desired_command = interaction.options.getString(client
|
const desired_command = interaction.options.get(client
|
||||||
.locales
|
.locales
|
||||||
.get(client.config.default_lang)
|
.get(client.config.default_lang)
|
||||||
?.get(`c_${getFilename(__filename)}_opt1_name`) ?? '');
|
?.get(`c_${getFilename(__filename)}_opt1_name`) ?? '')?.value as string;
|
||||||
|
|
||||||
// If a command isn't specified
|
// If a command isn't specified
|
||||||
if (!desired_command) {
|
if (!desired_command) {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import { SlashCommandBuilder } from '@discordjs/builders';
|
import { SlashCommandBuilder } from '@discordjs/builders';
|
||||||
import { ChatInputCommandInteraction, Client, Message } from 'discord.js';
|
import { Client, CommandInteraction, Message } from 'discord.js';
|
||||||
import { getLocale, getLocalizations } from '../../utils/locales';
|
import { getLocale, getLocalizations } from '../../utils/locales';
|
||||||
import { getFilename } from '../../utils/misc';
|
import { getFilename } from '../../utils/misc';
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ export default {
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
interaction: async (interaction: ChatInputCommandInteraction, client: Client) => {
|
interaction: async (interaction: CommandInteraction, client: Client) => {
|
||||||
const loc = getLocale(client, interaction.locale);
|
const loc = getLocale(client, interaction.locale);
|
||||||
|
|
||||||
const sent = await interaction.reply({
|
const sent = await interaction.reply({
|
||||||
|
|
|
@ -1,144 +0,0 @@
|
||||||
import { SlashCommandBuilder } from '@discordjs/builders';
|
|
||||||
import { Client, ChatInputCommandInteraction } from 'discord.js';
|
|
||||||
import { getLocale, getLocalizations } from '../../utils/locales';
|
|
||||||
import { getFilename } from '../../utils/misc';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
data: (client: Client) => {
|
|
||||||
const filename = getFilename(__filename);
|
|
||||||
const loc_default = client.locales.get(client.config.default_lang);
|
|
||||||
if (!loc_default) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
return new SlashCommandBuilder()
|
|
||||||
// Command
|
|
||||||
.setName(filename.toLowerCase())
|
|
||||||
.setDescription(loc_default.get(`c_${filename}_desc`) ?? '')
|
|
||||||
.setNameLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_name`, true)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_desc`)
|
|
||||||
)
|
|
||||||
|
|
||||||
// New reminder
|
|
||||||
.addSubcommand(subcommand => subcommand
|
|
||||||
.setName(
|
|
||||||
loc_default.get(`c_${filename}_sub1_name`)
|
|
||||||
?.toLowerCase() ?? ''
|
|
||||||
).setDescription(
|
|
||||||
loc_default.get(`c_${filename}_sub1_desc`) ?? ''
|
|
||||||
).setNameLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub1_name`, true)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub1_desc`)
|
|
||||||
)
|
|
||||||
|
|
||||||
// Specified Time
|
|
||||||
.addStringOption(option => option
|
|
||||||
.setName(
|
|
||||||
loc_default.get(`c_${filename}_sub1_opt1_name`)
|
|
||||||
?.toLowerCase() ?? ''
|
|
||||||
).setDescription(
|
|
||||||
loc_default.get(`c_${filename}_sub1_opt1_desc`) ?? ''
|
|
||||||
).setNameLocalizations(
|
|
||||||
getLocalizations(
|
|
||||||
client,
|
|
||||||
`c_${filename}_sub1_opt1_name`,
|
|
||||||
true
|
|
||||||
)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub1_opt1_desc`)
|
|
||||||
).setRequired(true)
|
|
||||||
)
|
|
||||||
|
|
||||||
// Specified message (not required)
|
|
||||||
.addStringOption(option => option
|
|
||||||
.setName(
|
|
||||||
loc_default.get(`c_${filename}_sub1_opt2_name`)
|
|
||||||
?.toLowerCase() ?? ''
|
|
||||||
).setDescription(
|
|
||||||
loc_default.get(`c_${filename}_sub1_opt2_desc`) ?? ''
|
|
||||||
).setNameLocalizations(
|
|
||||||
getLocalizations(
|
|
||||||
client,
|
|
||||||
`c_${filename}_sub1_opt2_name`,
|
|
||||||
true
|
|
||||||
)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub1_opt2_desc`)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
// List reminders
|
|
||||||
.addSubcommand(subcommand => subcommand
|
|
||||||
.setName(
|
|
||||||
loc_default.get(`c_${filename}_sub2_name`)
|
|
||||||
?.toLowerCase() ?? ''
|
|
||||||
).setDescription(
|
|
||||||
loc_default.get(`c_${filename}_sub2_desc`) ?? ''
|
|
||||||
).setNameLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub2_name`, true)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub2_desc`)
|
|
||||||
)
|
|
||||||
|
|
||||||
// User
|
|
||||||
.addStringOption(option => option
|
|
||||||
.setName(
|
|
||||||
loc_default.get(`c_${filename}_sub2_opt1_name`)
|
|
||||||
?.toLowerCase() ?? ''
|
|
||||||
).setDescription(
|
|
||||||
loc_default.get(`c_${filename}_sub2_opt1_desc`) ?? ''
|
|
||||||
).setNameLocalizations(
|
|
||||||
getLocalizations(
|
|
||||||
client,
|
|
||||||
`c_${filename}_sub2_opt1_name`,
|
|
||||||
true
|
|
||||||
)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub2_opt1_desc`)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
// Delete a reminder
|
|
||||||
.addSubcommand(subcommand => subcommand
|
|
||||||
.setName(
|
|
||||||
loc_default.get(`c_${filename}_sub3_name`)
|
|
||||||
?.toLowerCase() ?? ''
|
|
||||||
).setDescription(
|
|
||||||
loc_default.get(`c_${filename}_sub3_desc`) ?? ''
|
|
||||||
).setNameLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub3_name`, true)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub3_desc`)
|
|
||||||
)
|
|
||||||
|
|
||||||
// ID
|
|
||||||
.addStringOption(option => option
|
|
||||||
.setName(
|
|
||||||
loc_default.get(`c_${filename}_sub3_opt1_name`)
|
|
||||||
?.toLowerCase() ?? ''
|
|
||||||
).setDescription(
|
|
||||||
loc_default.get(`c_${filename}_sub3_opt1_desc`) ?? ''
|
|
||||||
).setNameLocalizations(
|
|
||||||
getLocalizations(
|
|
||||||
client,
|
|
||||||
`c_${filename}_sub3_opt1_name`,
|
|
||||||
true
|
|
||||||
)
|
|
||||||
).setDescriptionLocalizations(
|
|
||||||
getLocalizations(client, `c_${filename}_sub3_opt1_desc`)
|
|
||||||
).setRequired(true)
|
|
||||||
),
|
|
||||||
);
|
|
||||||
},
|
|
||||||
|
|
||||||
interaction: async (interaction: ChatInputCommandInteraction, client: Client) => {
|
|
||||||
const loc = getLocale(client, interaction.locale);
|
|
||||||
|
|
||||||
/* Votre code ici */
|
|
||||||
},
|
|
||||||
};
|
|
|
@ -14,22 +14,5 @@
|
||||||
"c_help2": "`/help <commande>` pour obtenir plus d'informations sur une commande.",
|
"c_help2": "`/help <commande>` pour obtenir plus d'informations sur une commande.",
|
||||||
"c_help3": "Impossible de trouver :",
|
"c_help3": "Impossible de trouver :",
|
||||||
|
|
||||||
"u_time_at": "à",
|
"u_time_at": "à"
|
||||||
|
|
||||||
"c_reminder_name": "rappel",
|
|
||||||
"c_reminder_desc": "Commande relative aux rappels",
|
|
||||||
"c_reminder_sub1_name": "nouveau",
|
|
||||||
"c_reminder_sub1_desc": "Met en place un rappel",
|
|
||||||
"c_reminder_sub1_opt1_name": "temps",
|
|
||||||
"c_reminder_sub1_opt1_desc": "Temps désiré avant le rappel",
|
|
||||||
"c_reminder_sub1_opt2_name": "message",
|
|
||||||
"c_reminder_sub1_opt2_desc": "Message du rappel",
|
|
||||||
"c_reminder_sub2_name": "liste",
|
|
||||||
"c_reminder_sub2_desc": "Affiche la liste des rappels d'un utilisateur",
|
|
||||||
"c_reminder_sub2_opt1_name": "utilisateur",
|
|
||||||
"c_reminder_sub2_opt1_desc": "Affiche la liste de l'utilisateur en question",
|
|
||||||
"c_reminder_sub3_name": "efface",
|
|
||||||
"c_reminder_sub3_desc": "Supprime un rappel",
|
|
||||||
"c_reminder_sub3_opt1_name": "ID",
|
|
||||||
"c_reminder_sub3_opt1_desc": "Rappel à supprimé"
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue