Tanıtım Basit Biliyorum Ama İlk Pluginim :) | ADAFLY Plugini

Sizce güzel mi?


  • Kullanılan toplam oy
    12
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Buhari

mbuharigkz.com
Yönetici
Onaylı Satıcı
Hosting Görevlisi
Katılım
6 Eylül 2017
Mesajlar
2.057
Elmaslar
1.248
Puan
18.150
Discord İzni
Minecraft
xBuhari

Discord:

xBuhari

Ne işe yarar bu eklenti anlat bakalım ?
Bu eklenti bir dünyada yetki verilen kişinin uçma modunu düzenlemeyi sağlıyor.
Eklentinin listede görünümü:
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.


Ey adam peki biz bunu nasıl kullanacağız ?
Anlatıyorum az sabır.
Komutlar ve açıklamaları:
/adafly = Ayar (config.yml) dosyasında olan dünyada oyuncunun uçuşunu açma veya kapamayı sağlar.
/adaflyadmin = Şuanlık tek reload var yakında yeni komutlar gelebilir. Config dosyasının yüklenmesini sağlar.
Görüntüler:
/adafly:
Açma:

Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.

Kapama:
1554838233206.png

/adaflyadmin:
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.


DEFAULT Config Dosyası Görüntüsü:
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.


Evet eklenti basit, küçük bir eklenti ama bu benim ilk eklentim :). Saygı gösterirseniz sevinirim. Sunucularınızda kullanabilirsiniz. Çok İstek Gelirse Source Code yi paylaşabilirim.

Plugin Spigot ve CraftBukkitin 1.8 sürümlerinde çalışmaktadır paper denemedim!

Linkler:

Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.


Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.


Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.
 
Son düzenleme:
paket isminde düzeltme yapman gerek, herkesin uyduğu ancak zorunlu olmayan kurallara göre olması gereken
'me.ggcraft.adafly'
class isimleri küçük harf ile başlamaz.
komutlara gelirsek,
Java:
if (/*vs*/){
//kodlar vs.
} else {
//hata mesajı
}
yerine
Java:
if(/*olmaması gereken şey*/) {
    //hata mesajı
    return
}

//kodların devamı vs.
bu şekilde yaparsan kodun daha okunabilir ve anlaşılır olur, ayrıca komutları başka classlarda kullanmayı öğrenmek olsun ilk işin.

config kısmına gelirsen bir sürü set kullanmışsın eğer dosya yoksa diye ama
Java:
getConfig().options().copyDefaults(true);
saveConfig();
saveDefaultConfig();
bunlar zaten o işi yapıyor senin yerine, sen bide set yapmana gerek yok

güzel olmuş eklentin, devam et böyle.
 
paket isminde düzeltme yapman gerek, herkesin uyduğu ancak zorunlu olmayan kurallara göre olması gereken
'me.ggcraft.adafly'
class isimleri küçük harf ile başlamaz.
komutlara gelirsek,
Java:
if (/*vs*/){
//kodlar vs.
} else {
//hata mesajı
}
yerine
Java:
if(/*olmaması gereken şey*/) {
    //hata mesajı
    return
}

//kodların devamı vs.
bu şekilde yaparsan kodun daha okunabilir ve anlaşılır olur, ayrıca komutları başka classlarda kullanmayı öğrenmek olsun ilk işin.

güzel olmuş eklentin, devam et böyle.

Yorumunuz için çok teşekür ederim inşallah yavaş yavaş öğrenicem. :)
 
Benim sunucumda çalışırmısın
 
Eline sağlık başlangıç için güzel bir çalışma başarılarının devamını dilerim, sana tavsiyem efekt koyabilirsin, fly açılıdığında bir efekt kapandığında bir efekt güzel olabilir.
 
Benim sunucumda çalışırmısın
Hocam discord ekleyin konuşalım ama dediğim gibi javada yeniyim.

xBuhariPvP#8356
Gönderi otomatik olarak birleştirildi:

Devam Devam, durmak yok.

ANE-LX1 cihazımdan Tapatalk kullanılarak gönderildi
İnşallah.
Gönderi otomatik olarak birleştirildi:

Eline sağlık başlangıç için güzel bir çalışma başarılarının devamını dilerim, sana tavsiyem efekt koyabilirsin, fly açılıdığında bir efekt kapandığında bir efekt güzel olabilir.
v2 Sürümüne ekleyeyim.Yorumunuz için teşekürler.
Gönderi otomatik olarak birleştirildi:

paket isminde düzeltme yapman gerek, herkesin uyduğu ancak zorunlu olmayan kurallara göre olması gereken
'me.ggcraft.adafly'
class isimleri küçük harf ile başlamaz.
komutlara gelirsek,
Java:
if (/*vs*/){
//kodlar vs.
} else {
//hata mesajı
}
yerine
Java:
if(/*olmaması gereken şey*/) {
    //hata mesajı
    return
}

//kodların devamı vs.
bu şekilde yaparsan kodun daha okunabilir ve anlaşılır olur, ayrıca komutları başka classlarda kullanmayı öğrenmek olsun ilk işin.

config kısmına gelirsen bir sürü set kullanmışsın eğer dosya yoksa diye ama
Java:
getConfig().options().copyDefaults(true);
saveConfig();
saveDefaultConfig();
bunlar zaten o işi yapıyor senin yerine, sen bide set yapmana gerek yok

güzel olmuş eklentin, devam et böyle.
Hocam şey sorucam ilk seti almadan nasıl deault alıcak onu anlamadım.
 
Son düzenleme:
Hocam şey sorucam ilk seti almadan nasıl deault alıcak onu anlamadım.
o methodu incelersen içine girip, resource dosyandan config'i çekiyor, sonra file input/outpu stream ile dosyaya yazıyor

Java:
public void saveDefaultConfig() {
    if (!this.configFile.exists()) {
        this.saveResource("config.yml", false);
    }
}

public void saveResource(String resourcePath, boolean replace) {
    if (resourcePath != null && !resourcePath.equals("")) {
        resourcePath = resourcePath.replace('\\', '/');
        InputStream in = this.getResource(resourcePath);
        if (in == null) {
            throw new IllegalArgumentException("The embedded resource '" + resourcePath + "' cannot be found in " + this.file);
        } else {
            File outFile = new File(this.dataFolder, resourcePath);
            int lastIndex = resourcePath.lastIndexOf(47);
            File outDir = new File(this.dataFolder, resourcePath.substring(0, lastIndex >= 0 ? lastIndex : 0));
            if (!outDir.exists()) {
                outDir.mkdirs();
            }
            try {
                if (outFile.exists() && !replace) {
                    this.logger.log(Level.WARNING, "Could not save " + outFile.getName() + " to " + outFile + " because " + outFile.getName() + " already exists.");
                } else {
                    OutputStream out = new FileOutputStream(outFile);
                    byte[] buf = new byte[1024];
                    int len;
                    while((len = in.read(buf)) > 0) {
                        out.write(buf, 0, len);
                    }
                    out.close();
                    in.close();
                }
            } catch (IOException var10) {
                this.logger.log(Level.SEVERE, "Could not save " + outFile.getName() + " to " + outFile, var10);
            }
        }
    } else {
        throw new IllegalArgumentException("ResourcePath cannot be null or empty");
    }
}
 
o methodu incelersen içine girip, resource dosyandan config'i çekiyor, sonra file input/outpu stream ile dosyaya yazıyor

Java:
public void saveDefaultConfig() {
    if (!this.configFile.exists()) {
        this.saveResource("config.yml", false);
    }
}

public void saveResource(String resourcePath, boolean replace) {
    if (resourcePath != null && !resourcePath.equals("")) {
        resourcePath = resourcePath.replace('\\', '/');
        InputStream in = this.getResource(resourcePath);
        if (in == null) {
            throw new IllegalArgumentException("The embedded resource '" + resourcePath + "' cannot be found in " + this.file);
        } else {
            File outFile = new File(this.dataFolder, resourcePath);
            int lastIndex = resourcePath.lastIndexOf(47);
            File outDir = new File(this.dataFolder, resourcePath.substring(0, lastIndex >= 0 ? lastIndex : 0));
            if (!outDir.exists()) {
                outDir.mkdirs();
            }
            try {
                if (outFile.exists() && !replace) {
                    this.logger.log(Level.WARNING, "Could not save " + outFile.getName() + " to " + outFile + " because " + outFile.getName() + " already exists.");
                } else {
                    OutputStream out = new FileOutputStream(outFile);
                    byte[] buf = new byte[1024];
                    int len;
                    while((len = in.read(buf)) > 0) {
                        out.write(buf, 0, len);
                    }
                    out.close();
                    in.close();
                }
            } catch (IOException var10) {
                this.logger.log(Level.SEVERE, "Could not save " + outFile.getName() + " to " + outFile, var10);
            }
        }
    } else {
        throw new IllegalArgumentException("ResourcePath cannot be null or empty");
    }
}
Teşekür ederim.
 
Hocam discord ekleyin konuşalım ama dediğim gibi javada yeniyim.

xBuhariPvP#8356
Gönderi otomatik olarak birleştirildi:


İnşallah.
Gönderi otomatik olarak birleştirildi:


v2 Sürümüne ekleyeyim.Yorumunuz için teşekürler.
Gönderi otomatik olarak birleştirildi:


Hocam şey sorucam ilk seti almadan nasıl deault alıcak onu anlamadım.
Eklenmedi sen beni eklesen mustafa#7077
 
İlk eklentin olduğu için gayet başarılı, başarılarının devamını dilerim birde title destekli olursa daha güzel olur.
 
Skript kullanmayan arkadaşlar için faydalı :D gelişmen dileğiyle
 
Bunun gibi bir Skript'i eklentiye dökmek zor olsa gerek :D
Skript kullanmayan arkadaşlar için faydalı :D gelişmen dileğiyle

:D Yorumlarınız için teşekürler.
İlk eklentin olduğu için gayet başarılı, başarılarının devamını dilerim birde title destekli olursa daha güzel olur.
Yorumun için teşekürler. v2 de ekliyeyim :)
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst