Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- main.java :
- package main;
- import org.bukkit.Bukkit;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.PlayerDeathEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- public class main extends JavaPlugin implements Listener {
- public void onEnable() {
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- System.out.println("[PointSystem] Plugin wurde aktiviert");
- new SignShop(this);
- getConfig().options().copyDefaults(true);
- saveConfig();
- }
- public void onDisable(){
- System.out.println("[PointSystem] Plugin wurde deaktiviert");
- }
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- Player s = (Player) sender;
- if(cmd.getName().equalsIgnoreCase("stats")) {
- if(args.length == 1) {
- Player target = Bukkit.getPlayer(args[0]);
- s.sendMessage("§7[§6Stats§7] §cStats von §a" + target.getName());
- s.sendMessage("§7[§6Stats§7] §cPunkte: §b" + getConfig().getInt(target.getName() + ".points"));
- s.sendMessage("§7[§6Stats§7] §cKills: §b" + getConfig().getInt(target.getName() + ".kills"));
- s.sendMessage("§7[§6Stats§7] §cTode: §b" + getConfig().getInt(target.getName() + ".deaths"));
- if(getConfig().getInt(target.getName()+ ".deaths") > 0) {
- double a = getConfig().getInt(target.getName() + ".kills");
- double b = getConfig().getInt(target.getName() + ".deaths");
- double i = a/b;
- s.sendMessage("§7§6Stats§7] §cKillstreak: §b" + i);
- }else {
- s.sendMessage("§7[§6Stats§7] §cDu hast noch §ekeine §cTode aus der die §eKD §cErechnet werden kann");
- }
- return true;
- } else {
- if(args.length == 0) {
- s.sendMessage("§7[§6Stats§7] §cStats von §a" + s.getName());
- s.sendMessage("§7[§6Stats§7] §cPunkte: §b" + getConfig().getInt(s.getName() + ".points"));
- s.sendMessage("§7[§6Stats§7] §cKills: §b" + getConfig().getInt(s.getName() + ".kills"));
- s.sendMessage("§7[§6Stats§7] §cTode: §b" + getConfig().getInt(s.getName() + ".deaths"));
- if(getConfig().getInt(s.getName()+ ".deaths") > 0) {
- double a = getConfig().getInt(s.getName() + ".kills");
- double b = getConfig().getInt(s.getName() + ".deaths");
- double i = a / b;
- s.sendMessage("§7[§6Stats§7] §cKD:" + i);
- }else {
- s.sendMessage("§7[§6Stats§7] §cDu hast noch §ekeine §cTode aus der die §eKD §cErechnet werden kann");
- }
- return true;
- }else {
- s.sendMessage("§7[§6Stats§7] §eBenutze /stats Spieler");
- return true;
- }
- }
- }
- return false;
- }
- @EventHandler
- public void onJoin(PlayerJoinEvent e) {
- Player p = e.getPlayer();
- if(getConfig().contains(p.getName())) {
- getConfig().set(p.getName() + ".points", 0);
- getConfig().set(p.getName() + ".kills", 0);
- getConfig().set(p.getName() + ".deaths", 0);
- saveConfig();
- }
- }
- @EventHandler
- public void onDeath(PlayerDeathEvent e) {
- Player v = e.getEntity();
- Player k = v.getKiller();
- if(v instanceof Player && k instanceof Player) {
- getConfig().set(v.getName() + ".deaths", getConfig().getInt(v.getName() + ".deaths") + 1);
- getConfig().set(k.getName() + ".kills", getConfig().getInt(k.getName() + ".kills") + 1);
- getConfig().set(k.getName() + ".points", getConfig().getInt(k.getName() + ".points") + 20);
- saveConfig();
- }
- }
- }
- SignShop.java :
- package main;
- import org.bukkit.Material;
- import org.bukkit.Sound;
- import org.bukkit.block.Sign;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.block.SignChangeEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.ItemStack;
- public class SignShop implements Listener {
- private main pl;
- public SignShop(main pl) {
- pl.getServer().getPluginManager().registerEvents(this, pl);
- this.pl = pl;
- }
- @EventHandler
- public void onSignPlace(SignChangeEvent e) {
- Player p = e.getPlayer();
- if(e.getLine(0).equalsIgnoreCase("[shop]")) {
- if(!e.getLine(1).isEmpty() || !e.getLine(2).isEmpty() || !e.getLine(3).isEmpty()) {
- e.setLine(0, "§7[§6Shop§7]");
- } else {
- p.sendMessage("§7[§6Stats§7] §cKonfiguriere das schild richtig!");
- }
- }
- }
- @SuppressWarnings("deprecation")
- @EventHandler
- public void onSignClick(PlayerInteractEvent e) {
- Player p = e.getPlayer();
- if(e.getAction() == Action.RIGHT_CLICK_BLOCK) {
- if(e.getClickedBlock().getType() == Material.WALL_SIGN || e.getClickedBlock().getType() == Material.SIGN) {
- Sign s = (Sign) e.getClickedBlock().getState();
- if(s.getLine(0).equalsIgnoreCase("§7[§6Shop§7]")) {
- String line2 = s.getLine(1);
- int itemid = Integer.parseInt(line2);
- String line3 = s.getLine(2);
- int anzahl = Integer.parseInt(line3);
- String line4 = s.getLine(3);
- int preis = Integer.parseInt(line4);
- if(pl.getConfig().getInt(p.getName() + ".points") >= preis) {
- p.getInventory().addItem(new ItemStack(itemid, anzahl));
- p.updateInventory();
- p.sendMessage("§7[§6Shop§7] §aDu hast denn kauf erfolgreich abgeschlossen");
- p.playSound(p.getLocation(), Sound.LEVEL_UP, 3, 2);
- pl.getConfig().set(p.getName() + ".points", pl.getConfig().getInt(p.getName() + ".points") - preis);
- }else {
- p.sendMessage("§7[§6Shop§7] §cDu hast nicht genügent Punkte auf LeviMC.net");
- }
- }
- }
- }
- }
- }
- plugin.yml :
- name: Point
- version: 1.0
- author: Leviplays
- main: main.main
- commands:
- stats:
- usage: /<command>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement