Discord Bot Kodları Kelime Oyunu Komutu
Discord bot kod paylaşımlarında bu yazımda discord botunuz için güzel ve kullanışlı bir kod ile beraberiz. Discord Bot Kodları Kelime Oyunu Komutu. 

Kurulum için adımları izleyin:

  • Kod projenizde komutlar klasörüne atılacaktır. Komut eklemeyi bilmiyorsan buradaki yazımızı okuyarak öğrenebilirsin.
  • Komut içerisindeki gerekli yerleri kendinize göre düzenleyin.
  • Gereken modüller kod içerisinde const kısımlarında.
//---Bu Kod komutlar klasörüne atılacaktır. 
//###CodeMareFi tarafından hazırlanmıştır - - - Ekleyen //###MareFi

const Discord = require('discord.js');
const { stripIndents } = require('common-tags');
const { randomRange, verify } = require('../util/Util.js');
let oyndurum = new Set();

exports.run = async (client, message, args) => {
  
	let opponent = message.mentions.users.first()
	if (!opponent) return message.reply("Oynamak istediğin kişiyi etiketlemelisin!")
  
  if (opponent.bot) return message.reply('Botlar ile kelime oyunu oynayamazsın!');
  if (opponent.id === message.author.id) return message.reply('Kendin ile kelime oyunu oynayamazsın!');
		if (oyndurum.has(message.channel.id)) return message.reply('Kanal başına sadece bir kelime oyunu meydana gelebilir.');
		try {
			if (!opponent.bot) {
        await message.channel.send(`${opponent}, kelime oyunu isteği geldi. İsteği kabul ediyor musun? (\`evet\` veya \`hayır\` olarak cevap veriniz.)`);
				const verification = await verify(message.channel, opponent);
				if (!verification) {
					this.fighting.delete(message.channel.id);
					return message.channel.send(`Düello kabul edilmedi...`);
				}
			}
      
   message.channel.send('Kelime, yükleniyor!').then(message => {
     oyndurum.add(message.channel.id)
      var kelimeler = ['sd', 's', 'sal'];
      var kelime = kelimeler[Math.floor(Math.random() * kelimeler.length)];
      message.edit(`Hey hemen \`${kelime}\` demen lazım!`);
     
     const filter = res => {
			const value = res.content.toLowerCase();
			return res.author.id === message.author.id | opponent.id && (kelime.includes(value));
		};
     
     
     message.channel.awaitMessages(filter, {
          max: 1,
          time: 100000
        })
       .then((collected) => {
            const embed = new Discord.RichEmbed()
            .setDescription(`:tada: Tebrikler, Kazanannn: ${collected.first().author}`)
            .setColor("green")
            message.channel.send(embed)
            oyndurum.delete(message.channel.id)
          })
          .catch(function(){
            message.channel.send('Size verilen süre doldu');
            oyndurum.delete(message.channel.id)
          });
   })
		} catch (err) {
			oyndurum.delete(message.channel.id);
			console.log(err)
		}
  }

exports.conf = {
  enabled: true,
  guildOnly: false,
  aliases: ['kelimeoyunu'],
  permLevel: `Yetki gerekmiyor.`
};

exports.help = {
  name: 'kelime-oyunu',
  description: 'İstediğiniz bir kişi ile kelime düellosu atarsınız!',
  usage: 'kelime-oyunu @kullanıcı'
};
util/Util.js oluşturup içerisine bunu atınız (Büyük küçük harflere dikkat ediniz!); 
//###CodeMareFi tarafından hazırlanmıştır - - - Ekleyen //###MareFi

const request = require('node-superfetch');
const crypto = require('crypto');
const { IMGUR_KEY } = process.env;
const yes = ['evet'];
const no = ['hayır']

const deleteCommandMessages = function (msg, client) { // eslint-disable-line consistent-return
	if (msg.deletable && client.provider.get('global', 'deletecommandmessages', false)) {
	  return msg.delete();
	}
  };

class Util {
	static wait(ms) {
		return new Promise(resolve => setTimeout(resolve, ms));
	}

	static shuffle(array) {
		const arr = array.slice(0);
		for (let i = arr.length - 1; i >= 0; i--) {
			const j = Math.floor(Math.random() * (i + 1));
			const temp = arr[i];
			arr[i] = arr[j];
			arr[j] = temp;
		}
		return arr;
	}

	static list(arr, conj = 'and') {
		const len = arr.length;
		return `${arr.slice(0, -1).join(', ')}${len > 1 ? `${len > 2 ? ',' : ''} ${conj} ` : ''}${arr.slice(-1)}`;
	}

	static shorten(text, maxLen = 2000) {
		return text.length > maxLen ? `${text.substr(0, maxLen - 3)}...` : text;
	}

	static duration(ms) {
		const sec = Math.floor((ms / 1000) % 60).toString();
		const min = Math.floor((ms / (1000 * 60)) % 60).toString();
		const hrs = Math.floor(ms / (1000 * 60 * 60)).toString();
		return `${hrs.padStart(2, '0')}:${min.padStart(2, '0')}:${sec.padStart(2, '0')}`;
	}

	static randomRange(min, max) {
		return Math.floor(Math.random() * (max - min + 1)) + min;
	}

	static trimArray(arr, maxLen = 10) {
		if (arr.length > maxLen) {
			const len = arr.length - maxLen;
			arr = arr.slice(0, maxLen);
			arr.push(`${len} more...`);
		}
		return arr;
	}

	static base64(text, mode = 'encode') {
		if (mode === 'encode') return Buffer.from(text).toString('base64');
		if (mode === 'decode') return Buffer.from(text, 'base64').toString('utf8') || null;
		throw new TypeError(`${mode} is not a supported base64 mode.`);
	}

	static hash(text, algorithm) {
		return crypto.createHash(algorithm).update(text).digest('hex');
	}

	static async randomFromImgurAlbum(album) {
		const { body } = await request
			.get(`https://api.imgur.com/3/album/${album}`)
			.set({ Authorization: `Client-ID ${IMGUR_KEY}` });
		if (!body.data.images.length) return null;
		return body.data.images[Math.floor(Math.random() * body.data.images.length)].link;
	}

	static today(timeZone) {
		const now = new Date();
		if (timeZone) now.setUTCHours(now.getUTCHours() + timeZone);
		now.setHours(0);
		now.setMinutes(0);
		now.setSeconds(0);
		now.setMilliseconds(0);
		return now;
	}

	static tomorrow(timeZone) {
		const today = Util.today(timeZone);
		today.setDate(today.getDate() + 1);
		return today;
	}

	static async awaitPlayers(msg, max, min, { text = 'join game', time = 30000 } = {}) {
		const joined = [];
		joined.push(msg.author.id);
		const filter = res => {
			if (msg.author.bot) return false;
			if (joined.includes(res.author.id)) return false;
			if (res.content.toLowerCase() !== text.toLowerCase()) return false;
			joined.push(res.author.id);
			return true;
		};
		const verify = await msg.channel.awaitMessages(filter, { max, time });
		verify.set(msg.id, msg);
		if (verify.size < min) return false;
		return verify.map(message => message.author);
	}

	static async verify(channel, user, time = 30000) {
		const filter = res => {
			const value = res.content.toLowerCase();
			return res.author.id === user.id && (yes.includes(value) || no.includes(value));
		};
		const verify = await channel.awaitMessages(filter, {
			max: 1,
			time
		});
		if (!verify.size) return 0;
		const choice = verify.first().content.toLowerCase();
		if (yes.includes(choice)) return true;
		if (no.includes(choice)) return false;
		return false;
	}
}
Yapamadığınız veya takıldığınız yerleri yorum ile bizlere bildirin yardımcı oluruz.
CodeMareFi

Admin MareFi

CodeMareFi CodeMareFi CodeMareFi CodeMareFi CodeMareFi CodeMareFi CodeMareFi CodeMareFi CodeMareFi

CodeMareFi Bir çok konuda fikir sahibi olduğu kategorilere yönelip kullanıcıya en iyi ve en özgün bilgiyi sunmayı amaç edinmiştir. CMF Teknoloji, İnternet, Program, Blogger Konuları , Blogger Temaları, Blogger Eklentileri, Discord Konuları, Discord Bot konuları, Discord Bot Komut Paylaşımları ve bir çok konuda Genel Güncel Paylaşım Sitesidir...

Yorum Yap:

0 Hiç Yorum Yapılmamış İlk Yorumu Sen Yapmak İstermisin:

Yorum Yaparken:
* Yorumlarınızda Din , Dil , Irk , Cinsiyet , Küfür(Hakaret) ve Siyaset içerikli yorumlar onaylanmadığını hatırlatmak isterim.
* Yorumlarınızı anlaşılır bir dilde yazınız ve mümkünse detaylı bir şekilde açıklama yapınız.
* Yorum yaparken tavsiyemiz olarak yorum profilinizi google @gmail profilinizi seçerek yorum yapınız, ayrıca (anonim) veya Ad/Url gibi seçeneklerle de yorum yapabilirsiniz.
Konu ile ilgili olmayan sorularınız için ise Chat veya İletişim sayfalarını kullanın

Kullanmak istediğiniz emojileri kopyalayıp yorumda kullanabilirsiniz. CTRL + C

☝☺✊✋✌❤👀👄👎👍👌💓💔💕💖💗💘💝💞💟💢💣💤💥😀😁😂😃😄😅😆😇😈😉😊😋😌😍😎😏😐😑😒😓😔😕😖😗😘😙😚😛😜😝😞😟😠😡😢😣😤😥😦😧😨😩😪😫😬😭😮😯😰😱😲😳😴😵😶😷👐👤👥👦👦👧👨👩👳👴👵👿👾👽👻👅