const fs = require ('fs')
const Discord = require('discord.js')
var sunucuyaözelayarlarOtorol = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
exports.run = async (bot, message, args) =>
{
let profil = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
var mentionedChannel = message.mentions.channels.first();
if (!mentionedChannel && args[0] !== "sıfırla") return message.channel.send("Ayarlamam İçin Bir Rol Etiketlemelisin. \nRolü Etiketleyemiyorsan **Rolün Etiketleme Seçeneğini Aktif Etmeyi Unutma** \nÖrnek Kullanım : ::otorol @rol #kanal \n**Oto Yazı Kapatmak İstiyorsan ::kapat otoyazı**");
if (message.guild.member(message.author.id).hasPermission(0x8))
{
var mentionedRole = message.mentions.roles.first();
if (!mentionedRole) return message.channel.send("**Doğru Kullanım = ::otorol @<roladı> #<metinkanalı>**".then(msg => msg.delete(5000)));
if(!profil[message.guild.id]){
profil[message.guild.id] = {
sayi: mentionedRole.id,
kanal: mentionedChannel.id
};
}
profil[message.guild.id].sayi = mentionedRole.id
profil[message.guild.id].kanal = mentionedChannel.id
fs.writeFile("./otorol.json", JSON.stringify(profil), (err) => {
console.log(err)
})
const embed = new Discord.RichEmbed()
.setDescription(`:white_check_mark: Otorol başarıyla ${args[0]} olarak ayarlandı! \nOtorol Mesaj kanalı başarıyla ${mentionedChannel} olarak ayarlandı.\n\nOto Mesaj'ı kapatabilmek için **+otomesajkapat** yazabilirsiniz!`)
.setColor("RANDOM")
.setTimestamp()
message.channel.send({embed})
}
}
exports.conf =
{
enabled: true,
guildOnly: true,
aliases: ["setautorole", "otorol", "otoroldeğiştir"]
}
exports.help =
{
name: 'Otorol',
description: 'Sunucuya Girenlere Verilecek Olan Otorolü Ayarlar.',
usage: 'otorolayarla'
}
const Discord = require('discord.js')
const fs = require('fs')
exports.run = async (client, message, args) => {
let sunucuyaözelayarlarOtorol = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
if(!sunucuyaözelayarlarOtorol[message.guild.id]) {
const embed = new Discord.RichEmbed()
.setDescription(`Otorolü Ayarlamadığın İçin Kapatamazsın!`)
.setColor("RED")
.setTimestamp('Ayarlamak İçin ::otorol @roladi')
message.channel.send({embed})
return
}
exports.run = async (client, message, args, member) => {
let giriscikis = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
delete giriscikis[message.guild.id]
fs.writeFile("./otorol.json", JSON.stringify(giriscikis), (err) => {
})
const embed = new Discord.RichEmbed()
.setDescription(`Otorol Mesajları Başarıyla Kapatıldı`)
.setColor("RANDOM")
.setTimestamp()
message.channel.send({embed})
return
}}
exports.conf = {
enabled: true,
guildOnly: false,
aliases: ["kapatotoyazı"],
permLevel: 0
};
exports.help = {
name: 'otorolmesajkapat',
description: 'Slots oyunu oynar',
usage: 'otorolmesajkapat'
};
const Discord = require('discord.js')
const fs = require('fs')
exports.run = async (client, message, args) => {
let sunucuyaözelayarlarOtorol = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
if(!sunucuyaözelayarlarOtorol[message.guild.id]) {
const embed = new Discord.RichEmbed()
.setDescription(`Otorolü Ayarlamadığın İçin Kapatamazsın!`)
.setColor("RED")
.setTimestamp('Ayarlamak İçin ::otorol @roladi')
message.channel.send({embed})
return
}
exports.run = async (client, message, args, member) => {
let giriscikis = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
delete giriscikis[message.guild.id]
fs.writeFile("./otorol.json", JSON.stringify(giriscikis), (err) => {
})
const embed = new Discord.RichEmbed()
.setDescription(`Otorol Mesajları Başarıyla Kapatıldı`)
.setColor("RANDOM")
.setTimestamp()
message.channel.send({embed})
return
}}
exports.conf = {
enabled: true,
guildOnly: false,
aliases: ["otorolmesaj"],
permLevel: 0
};
exports.help = {
name: 'Otorol Mesaj Kapat',
description: 'Slots oyunu oynar',
usage: 'otorolmesajkapat'
};
const Discord = require('discord.js')
const fs = require('fs')
exports.run = async (client, message, args) => {
let sunucuyaözelayarlarOtorol = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
let otorolkapat = JSON.parse(fs.readFileSync("./otorol.json", "utf8"));
if(!sunucuyaözelayarlarOtorol[message.guild.id]) {
const embed = new Discord.RichEmbed()
.setDescription(`Otorolü Ayarlamadığın İçin Sıfırlayamazsın!`)
.setColor("RED")
.setTimestamp('Ayarlamak İçin ::otorol @roladi')
message.channel.send({embed})
return
}
delete sunucuyaözelayarlarOtorol[message.guild.id]
fs.writeFile("./otorol.json", JSON.stringify(sunucuyaözelayarlarOtorol), (err) => {
console.log(err)
})
const embed = new Discord.RichEmbed()
.setDescription(`Otorol Başarıyla Sıfırlandı`)
.setColor("RANDOM")
.setTimestamp()
message.channel.send({embed})
return
}
exports.conf = {
enabled: true,
guildOnly: false,
aliases: ["otorolsıfırla"],
permLevel: 0
};
exports.help = {
name: 'Otorol Kapat',
description: 'Slots oyunu oynar',
usage: 'otorolkapat'
};
Dostum bak şimdi hızlı bir özet geçeceğim "komutlar" adında bir klasör oluştur ve botun asıl çalışmasına yarayan .js dosyasına;hocam discord botlarında yeniyim birşey merak ettim birden fazla .js dosyasını aynı anda nasıl çalıştırıcaz?
const fs = require('fs');
const moment = require('moment');
const log = message => {
console.log(`[${moment().format('YYYY-MM-DD HH:mm:ss')}] ${message}`);
};
client.commands = new Discord.Collection();
client.aliases = new Discord.Collection();
fs.readdir('./komutlar/', (err, files) => {
if (err) console.error(err);
log(`${files.length} komut yüklenecek.`);
files.forEach(f => {
let props = require(`./komutlar/${f}`);
log(`Yüklenen komut: ${props.help.name}.`);
client.commands.set(props.help.name, props);
props.conf.aliases.forEach(alias => {
client.aliases.set(alias, props.help.name);
});
});
});
client.reload = command => {
return new Promise((resolve, reject) => {
try {
delete require.cache[require.resolve(`./komutlar/${command}`)];
let cmd = require(`./komutlar/${command}`);
client.commands.delete(command);
client.aliases.forEach((cmd, alias) => {
if (cmd === command) client.aliases.delete(alias);
});
client.commands.set(command, cmd);
cmd.conf.aliases.forEach(alias => {
client.aliases.set(alias, cmd.help.name);
});
resolve();
} catch (e){
reject(e);
}
});
};
client.load = command => {
return new Promise((resolve, reject) => {
try {
let cmd = require(`./komutlar/${command}`);
client.commands.set(command, cmd);
cmd.conf.aliases.forEach(alias => {
client.aliases.set(alias, cmd.help.name);
});
resolve();
} catch (e){
reject(e);
}
});
};
client.unload = command => {
return new Promise((resolve, reject) => {
try {
delete require.cache[require.resolve(`./komutlar/${command}`)];
let cmd = require(`./komutlar/${command}`);
client.commands.delete(command);
client.aliases.forEach((cmd, alias) => {
if (cmd === command) client.aliases.delete(alias);
});
resolve();
} catch (e){
reject(e);
}
});
};
command handler kullanman gerek internette aratırsan yabancı kaynaklardan izleyerek yaparsın.hocam discord botlarında yeniyim birşey merak ettim birden fazla .js dosyasını aynı anda nasıl çalıştırıcaz?
EyvallahDostum bak şimdi hızlı bir özet geçeceğim "komutlar" adında bir klasör oluştur ve botun asıl çalışmasına yarayan .js dosyasına;
komutlarını yaz. Bu sayede otomatik olarak komutlar klasöründeki dosyaları çalıştırabilirsin.JavaScript:const fs = require('fs'); const moment = require('moment'); const log = message => { console.log(`[${moment().format('YYYY-MM-DD HH:mm:ss')}] ${message}`); }; client.commands = new Discord.Collection(); client.aliases = new Discord.Collection(); fs.readdir('./komutlar/', (err, files) => { if (err) console.error(err); log(`${files.length} komut yüklenecek.`); files.forEach(f => { let props = require(`./komutlar/${f}`); log(`Yüklenen komut: ${props.help.name}.`); client.commands.set(props.help.name, props); props.conf.aliases.forEach(alias => { client.aliases.set(alias, props.help.name); }); }); }); client.reload = command => { return new Promise((resolve, reject) => { try { delete require.cache[require.resolve(`./komutlar/${command}`)]; let cmd = require(`./komutlar/${command}`); client.commands.delete(command); client.aliases.forEach((cmd, alias) => { if (cmd === command) client.aliases.delete(alias); }); client.commands.set(command, cmd); cmd.conf.aliases.forEach(alias => { client.aliases.set(alias, cmd.help.name); }); resolve(); } catch (e){ reject(e); } }); }; client.load = command => { return new Promise((resolve, reject) => { try { let cmd = require(`./komutlar/${command}`); client.commands.set(command, cmd); cmd.conf.aliases.forEach(alias => { client.aliases.set(alias, cmd.help.name); }); resolve(); } catch (e){ reject(e); } }); }; client.unload = command => { return new Promise((resolve, reject) => { try { delete require.cache[require.resolve(`./komutlar/${command}`)]; let cmd = require(`./komutlar/${command}`); client.commands.delete(command); client.aliases.forEach((cmd, alias) => { if (cmd === command) client.aliases.delete(alias); }); resolve(); } catch (e){ reject(e); } }); };
Onuda denicem hocam eyvallah.command handler kullanman gerek internette aratırsan yabancı kaynaklardan izleyerek yaparsın.
Rica ederim kardeşim özel mesaj yolu ile birilerinin istemeleri üzerinde paylaştım.Hocam bu lazım idi , sağ olasın.
json dosyasını bulamıyor doğru yaptığına emin olkomutlar/otorol.json adı dosya oluşturup içine {} yazdım. Ancak...
fs.js:115
throw err;
^
Error: ENOENT: no such file or directory, open './otorol.json'
at Object.openSync (fs.js:436:3)
at Object.readFileSync (fs.js:341:35)
at Object.<anonymous> (C:\Users\Lenovo\Desktop\Cortex BETA\komutlar\otorol.js:3:47)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
...böyle bir hata alıyorum. Ne yapabilirim?
komutlar otorol değil açıp içine {} atmıyorsun, düz, klasörsüz otorol.json olarak aç içine {} eklekomutlar/otorol.json adı dosya oluşturup içine {} yazdım. Ancak...
fs.js:115
throw err;
^
Error: ENOENT: no such file or directory, open './otorol.json'
at Object.openSync (fs.js:436:3)
at Object.readFileSync (fs.js:341:35)
at Object.<anonymous> (C:\Users\Lenovo\Desktop\Cortex BETA\komutlar\otorol.js:3:47)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
...böyle bir hata alıyorum. Ne yapabilirim?
Kısaca sanırım komutta sıkıntı var, yakında bende paylaşırımKolay gelsin hocam, yazdığınız her şeyi eksiksiz yaptım herhangi bir hatada almıyorum ama bot rol vermiyor? Komut çalışıyor ayarlıyorum rolü ama bot yeni girene rol vermiyor, kanalada mesaj atmıyor. (Botun tam yetkisi var ve üye rolünden üstün) Yardımcı olabilecek var mı ?
npm install modüladı örn => npm install discord.jsAga modül nası yüklüyoruz?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?