Use "!meme save" and reply the message that have meme, or sent the meme picture with command to save meme to the server. And use "!meme" to see random meme in the server that saved!
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});
if ((await lib.keyvalue.store['@0.1.16'].get({key: `meme`})) == null) {
await lib.keyvalue.store['@0.1.16'].set({
key: `meme`,
value: [],
});
}
let get = await lib.keyvalue.store['@0.1.16'].get({key: `meme`});
let index = -1;
for (let i = 0; i < get.length; i++) {
if (get[i].id == context.params.event.guild_id) {
index = i;
}
}
if (index == -1) {
get.push({id: context.params.event.guild_id, memelink: []});
await lib.keyvalue.store['@0.1.16'].set({
key: `meme`,
value: get,
});
}
get = await lib.keyvalue.store['@0.1.16'].get({
key: `meme`,
});
for (let i = 0; i < get.length; i++) {
if (get[i].id == context.params.event.guild_id) {
index = i;
}
}
//!meme save
if (context.params.event.content.split(" ").slice(1) == 'save') {
if (context.params.event.attachments[0]) {
get[index].memelink.push(context.params.event.attachments[0].url)
await lib.discord.channels['@0.1.1'].messages.create({
channel_id: `${context.params.event.channel_id}`,
content: `Save meme done!`,
});
}
if (context.params.event.referenced_message != null && context.params.event.referenced_message.attachments[0]) {
get[index].memelink.push(context.params.event.referenced_message.attachments[0].url)
await lib.discord.channels['@0.1.1'].messages.create({
channel_id: `${context.params.event.channel_id}`,
content: `Save meme done!`,
});
}
} else if (!context.params.event.content.split(" ")[1]) {
let random = Math.floor(Math.random() * get[index].memelink.length)
await lib.discord.channels['@0.3.0'].messages.create({
"channel_id": `${context.params.event.channel_id}`,
"content": "",
"tts": false,
"embeds": [
{
"type": "rich",
"title": `Meme ${random+1}/${get[index].memelink.length}`,
"description": "",
"color": 0x00FFFF,
"image": {
"url": `${get[index].memelink[random]}`,
"height": 0,
"width": 0
}
}
]
});
}
await lib.keyvalue.store['@0.1.16'].set({
key: `meme`,
value: get,
});