Agora atualizado para a Discord.JS v14! Caso queira usar a versão da v13 use npm i starify-discord-br@1.0.6-1
starify-discord-br é um framework em biblioteca node.js que torna fácil criar e gerenciar starboards!
- muito customizável!
- muito fácil de usar!
- suporte para vários bancos de dados (SQLite, Postgres, MySQL, Microsoft SQL Server, MariaDB)!
- habilidade de haver starboards "secretas" que só funcionam em canais específicos!
- habilidade de restringir starboards para membros com certo cargo ou ignorar um certo cargo!
- e mais!
npm install starify-discord-br
const Discord = require("discord.js");
const { StarboardsManager } = require("starify-discord");
const client = new Discord.Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.Guild_Messages, GatewayIntentBits.Guild_Message_Reactions] });
client.starboardManager = new StarboardsManager(client, {
storage: {
type: "sqlite",
file: "./starboards.sqlite",
name: "database",
username: "user",
password: "password",
host: "localhost",
},
default: {
emoji: "⭐",
color: "#f0ec0e",
selfStar: false,
botStar: false,
ignoreMembers: null,
ignoreMessages: null,
},
});
client.starboardManager.create({
channelID: message.channelId,
emoji: "⭐",
threshold: 10,
color: "#f0ec0e",
selfStar: false,
botStar: false,
ignoreMembers: null,
ignoreMessages: null,
});
const starboardID = client.starboardManager.starboards.find(starboard => starboard.channelID == "" && starboard.emoji == "").id;
client.starboardManager.delete(starboardID);
A função ignoreMessages
irá ignorar todas as mensagens que não sejam de especificos canais!
client.starboardManager.create({
channelID: message.channelId,
emoji: "⭐",
threshold: 10,
color: "#f0ec0e",
selfStar: false,
botStar: false,
ignoreMembers: null,
ignoreMessages: (message => !["ID do canal 1", "ID do canal 2"].includes(message.channelId)),
});
A função ignoreMembers
não contará reações de membros que tenham o específico cargo!
client.starboardManager.create({
channelID: message.channelId,
emoji: "⭐",
threshold: 10,
color: "#f0ec0e",
selfStar: false,
botStar: false,
ignoreMembers: (member => member.roles.cache.has("ID do cargo")),
ignoreMessages: null,
});
// Disparado quando uma mensagem é adicionada ao starboard
client.starboardManager.on("starboardMessagePosted", (message, starboard) => {
console.log(message); // a mensagem que foi publicada na starboard
console.log(starboard); // a starboard que disparou isso
}
// Disparado quando a starboard é criada
client.starboardManager.on("starboardCreated", (starboard) => {
console.log(starboard); // A starboard que foi criada
}
// Disparado quando a starboard é apagada
client.starboardManager.on("starboardDeleted", (starboard) => {
console.log(starboard); // A starboard que foi apagada
}