Get the Genshin Impact character's constellations details by using this prefix command !gi-const <name> (eg. !gi-const ganyu)
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});
const genshin = require('genshin-api');
const result = await lib.http.request['@1.1.7'].get({
url: `https://api.genshin.dev/characters/`,
});
const CHARACTERS = result.data;
let characterName =
context.params.event.content.split(' ')?.slice(1).join('') || '';
if (characterName && CHARACTERS.includes(characterName.toLowerCase())) {
const data = await genshin.Characters(characterName);
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});
let fieldsList = data.constellations.map((s) => {
return {
name: s.name + ' Lv.' + s.level,
value: s.description,
};
});
await lib.discord.channels['@0.3.0'].messages.create({
channel_id: `${context.params.event.channel_id}`,
content: '',
tts: false,
message_reference: {
message_id: `${context.params.event.id}`,
},
embeds: [
{
type: 'rich',
title: `${data.name}'s Skills`,
description: ``,
color: 0x00ffff,
fields: fieldsList,
thumbnail: {
url: `https://cdn.discordapp.com/attachments/990077404661837854/1007950564379873290/de8hzqj-45443592-d7d8-4a12-bed7-663747aa5d0c.png`,
height: 0,
width: 0,
},
image: {
url: `${data.image}`,
height: 0,
width: 0,
},
footer: {
text: `by fidilen#1432`,
icon_url: `https://cdn.discordapp.com/attachments/990077404661837854/1007947114837463160/ganyu.gif`,
},
},
],
});
} else {
let counter = 0;
let formattedChars = CHARACTERS.map((c) => {
++counter;
if (counter % 4 == 0) {
return '\n`' + c + '`';
}
return '`' + c + '`';
});
await lib.discord.channels['@0.3.0'].messages.create({
channel_id: `${context.params.event.channel_id}`,
content: '',
tts: false,
embeds: [
{
type: 'rich',
title: `:x: Invalid Character Name`,
description: [
`Please choose a character name from below:`,
formattedChars.join(' | '),
'\n\nUse the prefix on this format:\n`!gi-const ` (eg. !gi-const ganyu).',
].join('\n'),
color: 0xff0000,
thumbnail: {
url: `https://cdn.discordapp.com/attachments/990077404661837854/1007950564379873290/de8hzqj-45443592-d7d8-4a12-bed7-663747aa5d0c.png`,
height: 0,
width: 0,
},
footer: {
text: `by fidilen#1432`,
icon_url: `https://cdn.discordapp.com/attachments/990077404661837854/1007947114837463160/ganyu.gif`,
},
},
],
});
}