[英]DJS v14 How to count every embed message it's been sent?
我想讓它依賴於發送到 +1 文本頻道的每個嵌入? 例如,用戶寫入文本通道。 BOT 將接收該消息,將其刪除並通過標記他發布並將嵌入計數為 #1 等。在此先感謝!
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const v10_1 = require("discord-api-types/v10");
const discord_js_1 = require("discord.js");
const Events_1 = require("../../structures/Events");
exports.default = new Events_1.Event("messageCreate", async (message) => {
try {
if (message.author.bot)
return;
if (message.channelId !== process.env.reviewsChannelId)
return;
if (message.channel.type !== v10_1.ChannelType.GuildNewsThread &&
message.channel.type !== v10_1.ChannelType.GuildText)
return;
const content = message?.content;
if (!content)
return await message.delete();
const reviews = new discord_js_1.EmbedBuilder()
.setTitle(`[ <:review:1005784096120782888> ] - Review - [ <:review:1005784096120782888> ]`)
.setColor(`#fdaf17`)
.setDescription(`**${content}**`)
.setTimestamp();
await message.channel.send({ embeds: [reviews] });
await message.delete();
}
catch (error) {
return console.log(error);
}
});
你有 2 個選擇,一個簡單的變量,比如
let count = 1;
並在每次await message.channel.send({ embeds: [reviews] });
你用count++;
並在您通過示例編寫的嵌入中.setFooter({text: "Embed #" + count})
但是這個解決方案的問題是,如果你的機器人重新啟動,你會失去實際的嵌入計數。
因此,您可以使用相同的方式,但不是使用簡單的變量,而是使用 json 文件來存儲變量或數據庫。
希望這可以幫助你!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.