Sol Reklam

Rehber discord.js | Minecraft Başarım Kazanma Kodu

Durum
Mesaj gönderimine kapalı.

twond.

愛を作ろう
Katılım
13 Ocak 2018
Mesajlar
501
Elmaslar
361
Puanlar
14.480
Yaş
24
Yer
İstanbul
Minecraft
metebae
Selam MC-TR ailesi. Uzun süre ardından yeni bir rehber konusuyla karşınızdayım.
Bu konumuzda sizlere discord.js kütüphanesini kullanarak nasıl başarım kazanma görseli yapabileceğimizi anlatacağım.
İlk başta kodu anlamayanlar için örnek bir görsel gösterelim.


1533097103703.png


Gördüğünüz gibi komutumuz bu şekilde olacak.
İlk öncelikle yeni bir dosya oluşturuyoruz ve kodlama dilini JavaScript olarak değiştiriyoruz.


1533097181441.png


Ardından aşağıdaki kodu dosyanın en üstüne ekliyoruz. Bu kodu eklediğimiz zaman discord.js ve snekfetch kütüphanelerini kullandığımızı belirmiş olacağız.
JavaScript:
const Discord = require('discord.js');
const snekfetch = require('snekfetch');

Kütüphanemizi de belirttiğimize göre şimdi başlayabiliriz. Öncelikle modülümüzü ekleyelim.
JavaScript:
exports.run = (client, message, args) => {

Modülümüzü ekledik. Şimdi başlık belirtilmezse başlığı otomatik olarak Basarim Kazanildi! yapmasını ve koda - eklendiği zaman açıklamaya geçmesini ayarlayacağız.
JavaScript:
  let [title, contents] = args.join(" ").split("-");
  if(!contents) {
    [title, contents] = ["Basarim Kazanildi", title];
  }

Bunu da ayarladık. Şimdi ayarlayacağımız şey aşağıda fotoğrafını göstereceğim küçük resim ikonlarını rastgeleleştirme.

1533097857977.png


Gördüğünüz gibi kırmızıyla işaretlediğim yerde bir ikon var. Bunun rastgele olarak değişmesini sağlayacağız.
JavaScript:
  let rnd = Math.floor((Math.random() * 39) + 1);
  if(args.join(" ").toLowerCase().includes("burn")) rnd = 38;
  if(args.join(" ").toLowerCase().includes("cookie")) rnd = 21;
  if(args.join(" ").toLowerCase().includes("cake")) rnd = 10;
  if(args.join(" ").toLowerCase().includes("sword")) rnd = 34;

Bunu da hallettiğimize göre artık açık kapatma zamanı geldi. Eğer başlık veya açıklama 22 karakteri geçerse yazılar dışarı taşacak ve çirkin bir görüntü oluşacak. Bunu engellemek için aşağıdaki kodu ekliyoruz.
JavaScript:
 if(title.length > 22 || contents.length > 22) return message.channel.send("Maksimum uzunluk 22 karakter.").then(message.delete.bind(message), 2000);

Yukarıdaki kod sayesinde eğer başlık veya açıklama 22 karakteri geçmişse Maksimum uzunluk 22 karakter mesajını gönderecek.

Geriye bir şey kalmadı, mesajın gönderilmesini ayarlayacağız. Aşağıda ekleyeceğimiz kod sayesinde botumuz apiden ikonları alacak ve mesaj gönderilmiş olacak.
JavaScript:
  const url = `https://www.minecraftskinstealer.com/achievement/a.php?i=${rnd}&h=${encodeURIComponent(title)}&t=${encodeURIComponent(contents)}`;
  snekfetch.get(url)
   .then(r=>message.channel.send("", {files:[{attachment: r.body}]}));

Tamamdır. Şimdi modülü kapatıyoruz ve kodumuz tamamlanmış oluyor.
JavaScript:
};

Kodun bitmiş hali:
JavaScript:
const Discord = require('discord.js');
const snekfetch = require('snekfetch');

exports.run = (client, message, args) => {
  let [title, contents] = args.join(" ").split("-");
  if(!contents) {
    [title, contents] = ["Basarim Kazanildi", title];
  }
  let rnd = Math.floor((Math.random() * 39) + 1);
  if(args.join(" ").toLowerCase().includes("burn")) rnd = 38;
  if(args.join(" ").toLowerCase().includes("cookie")) rnd = 21;
  if(args.join(" ").toLowerCase().includes("cake")) rnd = 10;
  if(args.join(" ").toLowerCase().includes("sword")) rnd = 34;

  if(title.length > 22 || contents.length > 22) return message.channel.send("Maksimum uzunluk 22 karakter.").then(message.delete.bind(message), 2000);
  const url = `https://www.minecraftskinstealer.com/achievement/a.php?i=${rnd}&h=${encodeURIComponent(title)}&t=${encodeURIComponent(contents)}`;
  snekfetch.get(url)
   .then(r=>message.channel.send("", {files:[{attachment: r.body}]}));

};

1533098250870.png
 
I

IrfanDmn

Ziyaretçi
Çok yararlı bir konu olmuş, teşekkür ederiz kral :D
 

twond.

愛を作ろう
Katılım
13 Ocak 2018
Mesajlar
501
Elmaslar
361
Puanlar
14.480
Yaş
24
Yer
İstanbul
Minecraft
metebae

ryna

forever

Discord:

ryna#0104

Katılım
30 Mayıs 2018
Mesajlar
195
Elmaslar
167
Puanlar
9.070
Yaş
21
Minecraft
NRack
Selam MC-TR ailesi. Uzun süre ardından yeni bir rehber konusuyla karşınızdayım.
Bu konumuzda sizlere discord.js kütüphanesini kullanarak nasıl başarım kazanma görseli yapabileceğimizi anlatacağım.
İlk başta kodu anlamayanlar için örnek bir görsel gösterelim.


Eki Görüntüle 37208

Gördüğünüz gibi komutumuz bu şekilde olacak.
İlk öncelikle yeni bir dosya oluşturuyoruz ve kodlama dilini JavaScript olarak değiştiriyoruz.


Eki Görüntüle 37209

Ardından aşağıdaki kodu dosyanın en üstüne ekliyoruz. Bu kodu eklediğimiz zaman discord.js ve snekfetch kütüphanelerini kullandığımızı belirmiş olacağız.
JavaScript:
const Discord = require('discord.js');
const snekfetch = require('snekfetch');

Kütüphanemizi de belirttiğimize göre şimdi başlayabiliriz. Öncelikle modülümüzü ekleyelim.
JavaScript:
exports.run = (client, message, args) => {

Modülümüzü ekledik. Şimdi başlık belirtilmezse başlığı otomatik olarak Basarim Kazanildi! yapmasını ve koda - eklendiği zaman açıklamaya geçmesini ayarlayacağız.
JavaScript:
  let [title, contents] = args.join(" ").split("-");
  if(!contents) {
    [title, contents] = ["Basarim Kazanildi", title];
  }

Bunu da ayarladık. Şimdi ayarlayacağımız şey aşağıda fotoğrafını göstereceğim küçük resim ikonlarını rastgeleleştirme.

Eki Görüntüle 37210

Gördüğünüz gibi kırmızıyla işaretlediğim yerde bir ikon var. Bunun rastgele olarak değişmesini sağlayacağız.
JavaScript:
  let rnd = Math.floor((Math.random() * 39) + 1);
  if(args.join(" ").toLowerCase().includes("burn")) rnd = 38;
  if(args.join(" ").toLowerCase().includes("cookie")) rnd = 21;
  if(args.join(" ").toLowerCase().includes("cake")) rnd = 10;
  if(args.join(" ").toLowerCase().includes("sword")) rnd = 34;

Bunu da hallettiğimize göre artık açık kapatma zamanı geldi. Eğer başlık veya açıklama 22 karakteri geçerse yazılar dışarı taşacak ve çirkin bir görüntü oluşacak. Bunu engellemek için aşağıdaki kodu ekliyoruz.
JavaScript:
 if(title.length > 22 || contents.length > 22) return message.channel.send("Maksimum uzunluk 22 karakter.").then(message.delete.bind(message), 2000);

Yukarıdaki kod sayesinde eğer başlık veya açıklama 22 karakteri geçmişse Maksimum uzunluk 22 karakter mesajını gönderecek.

Geriye bir şey kalmadı, mesajın gönderilmesini ayarlayacağız. Aşağıda ekleyeceğimiz kod sayesinde botumuz apiden ikonları alacak ve mesaj gönderilmiş olacak.
JavaScript:
  const url = `https://www.minecraftskinstealer.com/achievement/a.php?i=${rnd}&h=${encodeURIComponent(title)}&t=${encodeURIComponent(contents)}`;
  snekfetch.get(url)
   .then(r=>message.channel.send("", {files:[{attachment: r.body}]}));

Tamamdır. Şimdi modülü kapatıyoruz ve kodumuz tamamlanmış oluyor.
JavaScript:
};

Kodun bitmiş hali:
JavaScript:
const Discord = require('discord.js');
const snekfetch = require('snekfetch');

exports.run = (client, message, args) => {
  let [title, contents] = args.join(" ").split("-");
  if(!contents) {
    [title, contents] = ["Basarim Kazanildi", title];
  }
  let rnd = Math.floor((Math.random() * 39) + 1);
  if(args.join(" ").toLowerCase().includes("burn")) rnd = 38;
  if(args.join(" ").toLowerCase().includes("cookie")) rnd = 21;
  if(args.join(" ").toLowerCase().includes("cake")) rnd = 10;
  if(args.join(" ").toLowerCase().includes("sword")) rnd = 34;

  if(title.length > 22 || contents.length > 22) return message.channel.send("Maksimum uzunluk 22 karakter.").then(message.delete.bind(message), 2000);
  const url = `https://www.minecraftskinstealer.com/achievement/a.php?i=${rnd}&h=${encodeURIComponent(title)}&t=${encodeURIComponent(contents)}`;
  snekfetch.get(url)
   .then(r=>message.channel.send("", {files:[{attachment: r.body}]}));

};

Şu discord.js olaylarını gram anlamıyorum ama konun başarılı olmuş.
Acıkda olsa anladım. :;P​
 

twond.

愛を作ろう
Katılım
13 Ocak 2018
Mesajlar
501
Elmaslar
361
Puanlar
14.480
Yaş
24
Yer
İstanbul
Minecraft
metebae

mehmet3162

Birisi mi Spawnlandı?
Katılım
1 Ağustos 2018
Mesajlar
5
Elmaslar
3
Puanlar
0
Yaş
25
+1 Yararlı Eline Sağlık .
 

Aegrison

Kendisinin rakibi

Discord:

The Aegrison#7049

Katılım
5 Ekim 2017
Mesajlar
43
Elmaslar
41
Puanlar
0
Yaş
25
Yer
Dünya
Minecraft
Aegrison
Her ne kadar yarısını anlamasamda ilgili olanlar için yararlı bence.
 

crackle'

Birisi mi Spawnlandı?

Discord:

EmreGDR#1990

Katılım
1 Ağustos 2018
Mesajlar
8
Elmaslar
7
Puanlar
0
Yaş
23
Minecraft
doctorhealer
Güzel ve sade bir anlatım olmuş. Kod da başarılı fakat Türkçe karakter desteği eklenebilirdi.
 

austin

Birisi mi Spawnlandı?
Katılım
2 Ağustos 2018
Mesajlar
6
Elmaslar
21
Puanlar
0
Discord Moderatör'ü olmalısınız, evet bunu hak ediyorsunuz. :8
 
Durum
Mesaj gönderimine kapalı.
Neden altınlarını Discord sunucumuzda kazmıyorsun? TIKLA VE KATIL!
Yukarı