Published by
v14 Buttonlu Oylama
Discord.js V14 uyumlu gelişmiş butonlu oylama sistemidir.
- License MIT
- Publication Date 20/02/2023 - 22:03
- Version Discord.js V14
- Command Type Prefix
- Views 97
- Downloads 5
- Files 2
- Images 1
xairys
komutta hata var, 1 kişi sınırsız bir şekilde oy verebiliyor.
11/22/2023 | 06:50
const { EmbedBuilder } = require("discord.js");
const Discord = require("discord.js");
const db = require("croxydb");
exports.run = async (client, message, args) => {
let aciklama = args.slice(0).join(" ");
if (!aciklama) return message.reply("Lütfen oylamanı yaz!");
const embed = new EmbedBuilder()
.setTitle(" - Oylama Sistemi!")
.setDescription(`Oylama: **${aciklama}**\n\nEvet: **1**\n\nHayır: **1**`)
.setColor("#ff0000");
const row = new Discord.ActionRowBuilder().addComponents(
new Discord.ButtonBuilder()
.setLabel("Evet")
.setStyle(Discord.ButtonStyle.Success)
.setCustomId("evet"),
new Discord.ButtonBuilder()
.setLabel("Hayır")
.setStyle(Discord.ButtonStyle.Danger)
.setCustomId("hayır")
);
message.channel.send({ embeds: [embed], components: [row] }).then((mesaj) => {
db.set(`oylama_${mesaj.id}`, aciklama);
db.push(`evet_${mesaj.id}`, message.author.id);
db.push(`hayir_${mesaj.id}`, message.author.id);
});
};
exports.conf = {
aliases: [],
};
exports.help = {
name: "oylama",
};
client.on("interactionCreate", async (interaction) => {
if (!interaction.isButton()) return;
let message = await interaction.channel.messages.fetch(
interaction.message.id
);
if (interaction.customId == "evet") {
const db = require("croxydb");
db.push(`evet_${interaction.message.id}`, interaction.user.id);
interaction.reply({
content: "Başarıyla Oyunu **Evet** Olarak Verdin!",
ephemeral: true,
});
const evet = db.get(`evet_${interaction.message.id}`).length;
const hayir = db.get(`hayir_${interaction.message.id}`).length;
const aciklama = db.get(`oylama_${interaction.message.id}`);
const embed = new EmbedBuilder()
.setTitle("Oylama Sistemi!")
.setDescription(
`Oylama: **${aciklama}**\n\nEvet: **${evet}**\n\nHayır: **${hayir}**`
)
.setColor("#ff0000");
await message.edit({ embeds: [embed] });
}
});
client.on("interactionCreate", async (interaction) => {
if (!interaction.isButton()) return;
let message = await interaction.channel.messages.fetch(
interaction.message.id
);
if (interaction.customId == "hayır") {
const db = require("croxydb");
db.push(`hayir_${interaction.message.id}`, interaction.user.id);
interaction.reply({
content: "Başarıyla Oyunu **Hayır** Olarak Verdin!",
ephemeral: true,
});
const evet = db.get(`evet_${interaction.message.id}`).length;
const hayir = db.get(`hayir_${interaction.message.id}`).length;
const aciklama = db.get(`oylama_${interaction.message.id}`);
const embed = new EmbedBuilder()
.setTitle("Oylama Sistemi!")
.setDescription(
`Oylama: **${aciklama}**\n\nEvet: **${evet}**\n\nHayır: **${hayir}**`
)
.setColor("#ff0000");
await message.edit({ embeds: [embed] });
}
});