Kod Evet / Hayır Butonlu

uwu

awesomebadname#0000
Katılım
4 Haz 2022
Mesajlar
50
Tepkime puanı
4
Şehir
Aksaray
DiscordJs Sürüm: v14
functions/YesOrNo.js
JavaScript:
const {
    Colors,
    ChatInputCommandInteraction,
    ActionRowBuilder,
    ButtonBuilder,
    ButtonStyle,
  } = require("discord.js");
  /**
   *
   * @param {ChatInputCommandInteraction} interaction
   * @param {String} text
   * @returns
   */
  module.exports = async (interaction, text, reply, sendFalse = true) => {
    return new Promise(async (relsove) => {
      if (reply) {
        await reply.edit({
          embeds: [
            {
              description: text,
              color: Colors.Orange,
            },
          ],
          components: [
            new ActionRowBuilder().setComponents(
              new ButtonBuilder()
                .setCustomId("yes")
                .setLabel("Evet")
                .setStyle(ButtonStyle.Success),
              new ButtonBuilder()
                .setCustomId("no")
                .setLabel("Hayır")
                .setStyle(ButtonStyle.Danger)
            ),
          ],
        });
      } else
        reply = await interaction.reply({
          embeds: [
            {
              description: text,
              color: Colors.Orange,
            },
          ],
          components: [
            new ActionRowBuilder().setComponents(
              new ButtonBuilder()
                .setCustomId("yes")
                .setLabel("Evet")
                .setStyle(ButtonStyle.Success),
              new ButtonBuilder()
                .setCustomId("no")
                .setLabel("Hayır")
                .setStyle(ButtonStyle.Danger)
            ),
          ],
        });
      const coll = reply.createMessageComponentCollector({
        filter: (x) => x.user.id == interaction.user.id,
        max: 1,
      });
 
      coll.on("collect", async (int) => {
        if (int.customId == "yes") {
          relsove(true);
          return;
        } else {
          if (sendFalse) {
            await interaction.editReply({
              embeds: [{ description: "İşlem İptal edildi", color: Colors.Red }],
              components: [],
            });
          }
          relsove(false);
          return;
        }
      });
    });
  };
Örnek Kullanım;
Kod:
const YesOrNo = require("./functions/YesOrNo.js")
YesOrNo(
          interaction,
          "Zaten Kayıtlı bir veri var, üzerine yazmak istiyor musunuz?",
          undefined /* Önceden Yanıtlandıysa yanıtlanmış mesajı göster */,
          false
        ).then(async (value) => {
          if (value) {
            return await interaction.editReply({content:"Desende yapmayacaktımki :D"})
          }
        });
Bir hata olursa bana bildirmeyi unutmayın
 
  • Beğen
Tepkiler: lexaa

Konuyu 1 kişi okuyor. (0 kayıtlı üye ve 1 ziyaretçi)

  • Bilgi