51 lines
1.9 KiB
JavaScript
51 lines
1.9 KiB
JavaScript
const { SlashCommandBuilder } = require('discord.js');
|
|
const dofusdude = require('dofusdude-js');
|
|
const { EmbedBuilder } = require('discord.js');
|
|
|
|
module.exports = {
|
|
data: new SlashCommandBuilder()
|
|
.setName('almanax')
|
|
.setDescription("Offrande du jour de l'Almanax !"),
|
|
async execute(interaction) {
|
|
await interaction.deferReply();
|
|
const api = new dofusdude.AlmanaxApi()
|
|
const language = 'fr'; // {String} code
|
|
const date = new Date(); // {Date} yyyy-mm-dd
|
|
date.setHours(date.getHours()+1);
|
|
console.log(date.toISOString());
|
|
const dateFormatted = date.toISOString().slice(0,10);
|
|
api.getAlmanaxDate(language, dateFormatted, (error, data, response) => {
|
|
if (error) {
|
|
console.error(error);
|
|
return;
|
|
} else {
|
|
console.log('Dofusdude API called successfully.');
|
|
// interaction.editReply('Item du jour : ' + data.tribute.item.name + ' x' + data.tribute.quantity);
|
|
|
|
interaction.editReply({ embeds:
|
|
[returnEmbeddedAlmanax(
|
|
dateFormatted,
|
|
data.tribute.item.name,
|
|
data.tribute.quantity,
|
|
data.bonus.type.name,
|
|
data.bonus.description,
|
|
data.tribute.item.image_urls.sd
|
|
)]
|
|
});
|
|
}
|
|
});
|
|
},
|
|
};
|
|
|
|
function returnEmbeddedAlmanax(date, itemName, quantity, bonusName, bonusDesc, imgUrl) {
|
|
console.log(date)
|
|
const embed = new EmbedBuilder()
|
|
.setTitle('Almanax du ' + date.slice(8,10) + '/' + date.slice(5,7) + '/' + date.slice(0,4))
|
|
.setURL('https://www.krosmoz.com/fr/almanax/' + date)
|
|
.setThumbnail(imgUrl)
|
|
.addFields(
|
|
{ name: 'Offrande du jour', value: itemName+' x'+quantity},
|
|
{ name : bonusName, value: bonusDesc}
|
|
)
|
|
return embed;
|
|
} |