Çözüldü Discord.js kodu hata veriyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

499337

Hectopat
Katılım
6 Kasım 2021
Mesajlar
7.325
Makaleler
2
Çözümler
21
Yer
Istanbul
Daha fazla  
Cinsiyet
Erkek
Meslek
Öğrenci
Herkese merhaba, Discord Botu için Java kodlamayı deniyorum ve bu konudan bakıyorum. Aynı komudu yazdım aynen şöyle:



Sonra PowerShell penceresinde node bot.js yazdığımda şu hatayı alıyorum:



Var mıdır çözümü?
 
2. satırı bu şekilde değiştirin:
Kod:
const client = new Discord.Client({intents: [Discord.Intents.FLAGS.GUILDS, Discord.Intents.FLAGS.GUILD_MESSAGES]});
Oldu hocam çok teşekkürler. Gerekirse sizi etiketlememde sakınca yok değil mi
 
Rehber hazırlanacaksa kullanılan her şeyin versiyonunun yazılması veya kodun yazıldığı haliyle GitHub'a yüklenip linkinin paylaşılması gerekli, diğer türlü versiyon uyumsuzlukları oluyor. Büyük ihtimalle rehberde "discord.js v12" kullanılırken sen "discord.js v13" kullanıyorsun("npm install discord.js" ile yüklediğin için güncel versiyonu yüklüyor). v13'te Client'ı tanımlarken yetkileri/amacını da ayarlaman gerekiyor. Örnek kullanımı paylaşıyorum, kendi ihtiyacına göre düzenleyebilirsin.
JavaScript:
const client = new Discord.Client({
    intents: [
        Intents.FLAGS.GUILDS,
        Intents.FLAGS.GUILD_MEMBERS,
        Intents.FLAGS.GUILD_MESSAGES,
    ],
})
 
Anladım mantığı, evet v13 olmalı benimki.

2. satırı bu şekilde değiştirin:
Kod:
const client = new Discord.Client({intents: [Discord.Intents.FLAGS.GUILDS, Discord.Intents.FLAGS.GUILD_MESSAGES]});
 
Ayrıca Java değil JavaScript öğrenmektesiniz. Arada fark var.
const Discord = require('discord.js');
const db = require('quick.db');

exports.run = async (client, message, args) => {
let channel = message.mentions.channels.first();

if (!channel) {
return message.channel.send('Bir kanal etiketlemelisin!');
}

let channelId = channel.id;

db.set(coinChannel_${message.guild.id}, channelId);

const embed = new Discord.RichEmbed()
.setColor('#FB529C')
.setTitle('Coin Kanal Ayarlandı')
.setDescription(Coin kanal olarak ${channel} seçildi. Bu kanalda mesaj atan kullanıcıya mesaj sayısı kadar betscoin eklenir.)
.setFooter(client.user.username + 'Keyifli Kullanımlar diler.')
.addBlankField()
.setTimestamp();

message.channel.send(embed);

client.on('message', async (msg) => {
let channelId = db.fetch(coinChannel_${msg.guild.id});

if (msg.channel.id === channelId) {
let userId = msg.author.id;
let lastCoinMessageId = await db.fetch(lastCoinMessageId_${userId}) || null;

if (msg.id !== lastCoinMessageId) {
let userCoin = await db.fetch(bitcoin_${userId}) || 0;
let newCoin = userCoin + 1;
db.set(bitcoin_${userId}, newCoin);
db.set(lastCoinMessageId_${userId}, msg.id);
}
}
});
};

exports.conf = {
enabled: true,
guildOnly: false,
aliases: [],
permLevel: 0
};

exports.help = {
name: 'coin-kanal',
description: 'Belirtilen kanalda mesaj atan kullanıcıya mesaj sayısı kadar betscoin ekler.',
usage: 'coin-kanal #channel'
};
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…