Rehber >>TheLegend<< Videolu Plugin Eğitimi - Kendi WARP plugininizi yapın!

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

>>TheLegend<<

Легенды никогда не умирают
Katılım
2 Temmuz 2016
Mesajlar
305
Elmaslar
425
Puan
15.025
Yaş
28
Discord İzni
Minecraft
THELEGEND

Discord:

>>TheLegend<<#6052



Ana.class
Java:
package tr.thelegend.warp;

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

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

import tr.thelegend.warp.cmds.SetwarpCMD;
import tr.thelegend.warp.cmds.WarpCMD;

public class Ana extends JavaPlugin {
    public File d;
    public FileConfiguration c;
    public static final Logger logcuamca=Logger.getLogger("Minecraft");
    public void l(String x) {
        logcuamca.log(Level.INFO, x);
    }
    public void onEnable() {
        c=getConfig();
        d=new File(getDataFolder(),"config.yml");
        saveDefaultConfig();
        getCommand("setwarp").setExecutor(new SetwarpCMD(this));
        getCommand("warp").setExecutor(new WarpCMD(this));
        l("============== [ Warp ] ==============");
        l("- Eklenti aktif ediliyor!");
    }
}
SetwarpCMD.class
Java:
package tr.thelegend.warp.cmds;

import java.io.IOException;

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

import tr.thelegend.warp.Ana;

public class SetwarpCMD implements CommandExecutor {
    private Ana plugin;
    public SetwarpCMD(Ana plugin) {
        this.plugin=plugin;
    }
    public boolean onCommand(CommandSender gonderen, Command komut, String label, String[] args) {
        if (komut.getName().equalsIgnoreCase("setwarp")) {
            if (!gonderen.hasPermission("warp.setwarp")) {
                gonderen.sendMessage("Bunun icin yetkin yok!");
            }
            if (!(gonderen instanceof Player)) {
                gonderen.sendMessage("Sadece oyun ici!");
                return true;
            }
            if (args.length!=1) {
                gonderen.sendMessage("Komutu yanlis kullaniyorsunuz! /setwarp <warp-adi>");
                return true;
            }
            Player o=(Player)gonderen;
            String warpadi=args[0];
            Location loc=o.getLocation();
            plugin.c.set(warpadi+".w", o.getWorld().getName());
            plugin.c.set(warpadi+".x", loc.getX());
            plugin.c.set(warpadi+".y", loc.getY());
            plugin.c.set(warpadi+".z", loc.getZ());
            plugin.c.set(warpadi+".yaw", loc.getYaw());
            plugin.c.set(warpadi+".pitch", loc.getPitch());
            try {
                plugin.c.save(plugin.d);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            gonderen.sendMessage(warpadi+" adli warpiniz basariyla olusturuldu!");
            return true;
        }
        return false;
    }
}
WarpCMD.class
Java:
package tr.thelegend.warp.cmds;

import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import tr.thelegend.warp.Ana;

public class WarpCMD implements CommandExecutor {
    private Ana plugin;
    public WarpCMD(Ana plugin) {
        this.plugin=plugin;
    }
    public boolean onCommand(CommandSender gonderen, Command komut, String label, String[] args) {
        if (komut.getName().equalsIgnoreCase("warp")) {
            if (!gonderen.hasPermission("warp.warp")) {
                gonderen.sendMessage("Iznin yok!");
                return true;
            }
            if (!(gonderen instanceof Player)) {
                gonderen.sendMessage("Yalnizca oyun ici!");
                return true;
            }
            if (args.length!=1) {
                gonderen.sendMessage("Yanlis kullanim! /warp <warp-adi>");
                return true;
            }
            String warpadi=args[0];
            String wi=plugin.c.getString(warpadi+".w");
            World world=Bukkit.getServer().getWorld(wi);
            double x=plugin.c.getDouble(warpadi+".x");
            double y=plugin.c.getDouble(warpadi+".y");
            double z=plugin.c.getDouble(warpadi+".z");
            float yaw=(float)plugin.c.getDouble(warpadi+".yaw");
            float pitch=(float)plugin.c.getDouble(warpadi+".pitch");
            Location loc=new Location(world,x,y,z);
            loc.setYaw(yaw);
            Player o=(Player)gonderen;
            o.getLocation().setPitch(pitch);
            o.teleport(loc);
            gonderen.sendMessage(warpadi+" isimli warpa isinlandiniz!");
            return true;
        }
        return false;
    }
}
Eğer yeni başlıyorsanız, aynı çerçeveyi kullanarak modifikasyonlar yapmaya çalışın! Warpa gitmeleri için oyunculardan para almaya çalış, warp kullanmaları için bir cooldown sistemi oluşturmaya çalış, eğer hareket ederlerse giderken bozmaya çalış, deneme-yanılma yöntemi en güzel öğrenme yöntemidir. Diğer rehberlerime de göz atmayı unutmayın, ayrıca eğer herhangi bir konuda yardıma ihtiyacınız olursa daima yazabilirsiniz. Discord: >>TheLegend<<#6052

 

Böyle güzel eğitimin üstüne kimsenin yorum atmaması oldukça üzücü olmuş ki emek verilmiş. Özellikle de videolu eğitim çok işlevli olmuş.
 
Başarılı bir çalışma olmuş, Başarılarının devamını dilerim
 
Çok teşekkürler kodlama ya merakım hep olmuştu videoyu izlemeye gidiyorum şimdi ?
 
Müthiş bir eğitimdir kesin. En yakın zamanda izleyeceğim buradan izletmeyen internet sağlayıcıma selamlar..
 
Gerçekten bu işlere girmek isteyenler için güzel ve detaylı bir video. Teşekkürler video için.
 
Çok yararlı, teşekkürler
 
Teşekkürler, kendimi geliştiriyorum.
 
Keşke ders vermeye devam etseydin.
Gönderi otomatik olarak birleştirildi:

Sesli olsaydı çok daha mükemmel+ olurdu.
 
Yaptığın İş Harika Bişey Fakat Seside Olsa chesininde deiği gibi çok çok daha güzel olursdu başarılar
 
Gayet başarılı bir konu. Videolu olması ayrıca beni çok mutlu ediyor. Çünkü çoğu insan gibi sanki destan yazılmış yazıları okumak sıkıyor
 
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