Hoş Geldin!

MinecraftTR.COM - Türkiye'nin en büyük minecraft platformu.

MinecraftTR.COM minecraftla alakalı araçları kullanıma sunuyor. Her şey burada; skript, plugin, doku paketleri, shaderlar, modlar, mcpe, minecraft sunucu kurulumu ve sunucularınızla alakalı yaşadığınız sorunları çözmenize yardımcı olabilecek rehberler ve tüm minecraft haberleri.

Sitemize kayıt olarak topluluğumuzun diğer üyeleriyle tartışabilir, paylaşabilir ve özel mesaj gönderebilirsiniz.

Giriş Yap veya Kayıt Ol!
batihost minecraft server kirala
Minecraft Sunucu Kiralama
MinecraftTR Reklam Alanı
MinecraftTR Reklam Alanı
MinecraftTR Reklam Alanı
MinecraftTR Reklam Alanı
Reklam satın al!
Reklam satın al!

>>THELEGEND<< - Kendi banka plugininizi yapın! - Videolu!

dı lejınd derler
Onaylı Satıcı
Katılım
22 Ekim 2019
Mesajlar
18
Tepki puanı
22
Puanları
1,025
Discord
>>TheLegend<<#6052
Yazarken çekmemi istediğiniz herhangi bir plugin olursa, lütfen belirtin.

(1/2)

(2/2)

Test

Kaynak kodları:
Ana.class:
JavaScript:
package tr.thelegend.basitbanka;

import java.io.File;
import java.util.logging.Level;
import java.util.logging.Logger;

import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;

import net.milkbowl.vault.economy.Economy;
import tr.thelegend.basitbanka.cmds.BankaCmd;

public class Ana extends JavaPlugin {
    public static final Logger logcuamca=Logger.getLogger("Minecraft");
    public String yzr=">>TheLegend<<";
    public File d;
    public FileConfiguration c;
    public Economy econ=null;
    public File d2;
    public YamlConfiguration c2;
    public void a1() {
        c=getConfig();
        d=new File(getDataFolder(),"config.yml");
        saveDefaultConfig();
    }
    public void a2() {
        d2=new File(getDataFolder(),"bakiyeler.yml");
        c2=YamlConfiguration.loadConfiguration(d2);
    }
    public void l(String x) {
        logcuamca.log(Level.INFO,x);
    }
    private boolean ekonomiKur() {
        if (getServer().getPluginManager().getPlugin("Vault")==null) {
            return false;
        }
        RegisteredServiceProvider rsp=getServer().getServicesManager().getRegistration(Economy.class);
        if (rsp==null) {
            return false;
        }
        econ=((Economy)rsp.getProvider());
        return econ!=null;
    }
    public void cmds() {
        getCommand("banka").setExecutor(new BankaCmd(this));
    }
    public void onEnable() {
        a1();
        a2();
        cmds();
        l("===================== [ BasitBanka v1.0 ] ======================");
        l(" ");
        l(" ");
        l("Eklenti aktif ediliyor...");
        l(" ");
        l(" ");
        if (!ekonomiKur()){
            logcuamca.log(Level.SEVERE,"Vault plugini veya onunla uyumlu herhangi bir ekonomi eklentisi bulunamadi! BasitBanka v1.0 calismayacak!");
            getServer().getPluginManager().disablePlugin(this);
            return;
        }
        l("Eklenti aktif!");
        l(" ");
        l(" ");
        l("===================== [ BasitBanka v1.0 ] ======================");
    }
}

BankCmd.class:
JavaScript:
package tr.thelegend.basitbanka.cmds;

import java.io.IOException;

import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import tr.thelegend.basitbanka.Ana;

public class BankaCmd implements CommandExecutor {
    private Ana plugin;
    public BankaCmd(Ana plugin) {
        this.plugin=plugin;
    }
    public boolean onCommand(CommandSender gonderen, Command komut, String label, String[] args) {
        if (komut.getName().equalsIgnoreCase("banka")) {
            if (!(gonderen instanceof Player)) {
                gonderen.sendMessage("Bu komut sadece oyun icerisinde yollanabilir!");
                return false;
            }
            if (!gonderen.hasPermission("basitbanka.komutlar.banka")) {
                gonderen.sendMessage(ChatColor.RED+"Bunun icin gerekli izine sahip degilsiniz!");
                return false;
            }
            if (args.length!=2) {
                gonderen.sendMessage("§f§lLutfen argumanlari dogru girdiginizden emin olun!");
                gonderen.sendMessage("§3§l/banka §f§lcek §3§l<miktar>");
                gonderen.sendMessage("§3§l/banka §f§lyatir §3§l<miktar>");
                return true;
            }
            if ((args.length==2) && args[0].equalsIgnoreCase("cek")) {
                double miktar;
                try {
                    miktar=Double.parseDouble(args[1]);
                } catch (Exception e) {
                    gonderen.sendMessage(ChatColor.RED+"Lutfen gecerli bir miktar girin!");
                    return false;
                }
                Player o=(Player)gonderen;
                double obakiye=plugin.c2.getDouble(o.getName());
                if (miktar>obakiye) {
                    gonderen.sendMessage(ChatColor.RED+"Cekmek istediginiz miktar bakiyenizden yuksek!");
                    return false;
                }
                plugin.c2.set(o.getName(), obakiye-miktar);
                try {
                    plugin.c2.save(plugin.d2);
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                plugin.econ.depositPlayer(o, miktar);
                gonderen.sendMessage("§3§lBanka hesabinizdan basariyla "+miktar+"TL para cektiniz!");
                return true;
            }
            if ((args.length==2) && args[0].equalsIgnoreCase("yatir")) {
                double miktar;
                try {
                    miktar=Double.parseDouble(args[1]);
                } catch (Exception e) {
                    gonderen.sendMessage(ChatColor.RED+"Lutfen gecerli bir miktar girin!");
                    return false;
                }
                Player o=(Player)gonderen;
                double bakiye=plugin.econ.getBalance(o);
                if (bakiye<miktar){
                    gonderen.sendMessage(ChatColor.RED+"Yatirmak istediginiz miktar sizin bakiyenizden fazla!");
                    return false;
                }
                plugin.econ.withdrawPlayer(o, miktar);
                double obakiye=plugin.c2.getDouble(o.getName());
                double ybakiye=obakiye+miktar;
                plugin.c2.set(o.getName(), ybakiye);
                try {
                    plugin.c2.save(plugin.d2);
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                o.sendMessage(ChatColor.RED+"§c"+miktar+"TL hesabiniza basariyla yatirildi!");
                return true;
            }
        }
        return false;
    }
}

plugin.yml:
JavaScript:
name: BasitBanka
version: 1.0
author: thelegend
main: tr.thelegend.basitbanka.Ana
commands:
    banka:
        description: Ana komut
        usage: /banka cek/yatir <miktar>
permissions:
    basitbanka.komutlar.banka:
        description: Ana komuta erisim izini.
        default: true

Ekli dosyayı görüntüle 91694
Discord: >>TheLegend<<#6052​
 
Seçkin madenci.
Katılım
26 Eylül 2018
Mesajlar
56
Tepki puanı
27
Puanları
1,025
Discord
Akif B. | 19#5635
Beyaz Ekranda kodlama ilgiç :D Siyah Ekran + IntelJ IDEA Tavsiye ederim,
Açıkçası Buradan bakarak hatasız yapaçak adam oldugunu sanmıyorum. Az çok bişeyler bilen adam belki :D
(Beni soruyorsan bakmadanda yapabilirim)
Beraber ortak plugin yazabiliriz İstersen ekleyebilirsin Discordum : Akif B. | 19#5635
 

Üst