SHARE
TWEET

Untitled

a guest Oct 14th, 2019 83 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package de.Tommunity.Villager;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.Material;
  7. import org.bukkit.command.Command;
  8. import org.bukkit.command.CommandExecutor;
  9. import org.bukkit.command.CommandSender;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.entity.Villager;
  12. import org.bukkit.entity.Witch;
  13. import org.bukkit.event.EventHandler;
  14. import org.bukkit.event.Listener;
  15. import org.bukkit.event.entity.EntityDamageByEntityEvent;
  16. import org.bukkit.event.inventory.InventoryClickEvent;
  17. import org.bukkit.event.player.PlayerInteractEntityEvent;
  18. import org.bukkit.inventory.Inventory;
  19. import org.bukkit.inventory.ItemStack;
  20. import org.bukkit.inventory.meta.ItemMeta;
  21.  
  22. import de.Tommunity.Commands.EconomySystem;
  23. import de.Tommunity.Main.Main;
  24.  
  25. public class MagierHandler implements CommandExecutor, Listener {
  26.  
  27. private final String GUI_NAME = "§1§lMagier-Menü";
  28.    
  29.         EconomySystem es = new EconomySystem();
  30.  
  31.     @Override
  32.     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  33.         if(!(sender instanceof Player)) {
  34.             sender.sendMessage(Main.pre + " §cDazu musst du ein Spieler sein!");
  35.         }
  36.         Player p = (Player) sender;
  37.        
  38.         if(!p.hasPermission("Tom.spawnNPC")) {
  39.             p.sendMessage(Main.pre + " §cDazu hast du keine Rechte!");
  40.             return true;
  41.         }
  42.         if(args.length == 0) {
  43.             new Magier(p.getLocation());
  44.             p.sendMessage(Main.pre + " §3Du hast den §eMagier §3erfolgreich erstellt");
  45.         }else {
  46.             p.sendMessage(Main.pre + " §3Bitte benutze §6/spawnMagier");
  47.         }
  48.         return true;
  49.            
  50.     }
  51.    
  52.     @EventHandler
  53.     public void handlerMagierInteract(PlayerInteractEntityEvent e) {
  54.  
  55.             Player p = e.getPlayer();
  56.            
  57.             Inventory inventory = Bukkit.createInventory(null, 9 * 7, GUI_NAME);
  58.            
  59.             ItemStack item1 = new ItemStack(Material.STAINED_GLASS_PANE);
  60.            
  61.             inventory.setItem(0, item1);
  62.             inventory.setItem(1, item1);
  63.             inventory.setItem(2, item1);
  64.             inventory.setItem(3, item1);
  65.            
  66.             ItemStack item2 = new ItemStack(Material.PAPER);
  67.             ItemMeta im1 = item2.getItemMeta();
  68.             im1.setDisplayName("Hier ist das Magier Menü");
  69.             item2.setItemMeta(im1);
  70.            
  71.             inventory.setItem(4, item2);
  72.            
  73.             inventory.setItem(5, item1);
  74.             inventory.setItem(6, item1);
  75.             inventory.setItem(7, item1);
  76.             inventory.setItem(8, item1);
  77.             inventory.setItem(9, item1);
  78.             inventory.setItem(17, item1);
  79.             inventory.setItem(18, item1);
  80.             inventory.setItem(26, item1);
  81.             inventory.setItem(27, item1);
  82.             inventory.setItem(35, item1);
  83.             inventory.setItem(36, item1);
  84.             inventory.setItem(44, item1);
  85.             inventory.setItem(45, item1);
  86.             inventory.setItem(53, item1);
  87.             inventory.setItem(54, item1);
  88.             inventory.setItem(55, item1);
  89.             inventory.setItem(56, item1);
  90.             inventory.setItem(57, item1);
  91.             inventory.setItem(58, item1);
  92.             inventory.setItem(59, item1);
  93.             inventory.setItem(60, item1);
  94.             inventory.setItem(61, item1);
  95.             inventory.setItem(62, item1);
  96.            
  97.            
  98.            
  99.            
  100.             ArrayList<String> dirt = new ArrayList<String>();
  101.             ItemStack item = new ItemStack(Material.DIRT);
  102.             ItemMeta im = item.getItemMeta();
  103.             im.setDisplayName("§6Dreck");
  104.             dirt.add("§aKaufen: 20");
  105.             dirt.add("§cVerkaufen: -");
  106.             im.setLore(dirt);
  107.             item.setItemMeta(im);
  108.  
  109.             inventory.setItem(10, item);
  110.                
  111.             ArrayList<String> faden = new ArrayList<String>();
  112.             ItemStack item3 = new ItemStack(Material.STRING);
  113.             ItemMeta im2 = item3.getItemMeta();
  114.             im2.setDisplayName("§6Faden");
  115.             faden.add("§aKaufen: 100");
  116.             faden.add("§cVerkaufen: 30");
  117.             im2.setLore(faden);
  118.             item3.setItemMeta(im2);
  119.            
  120.             inventory.setItem(11, item3);
  121.            
  122.            
  123.             e.getPlayer().openInventory(inventory);
  124.                
  125.             p.sendMessage(Main.pre + " §3Du hast den §eMagier §3geöffnet");
  126.         }
  127.            
  128.            
  129.    
  130.    
  131.     @EventHandler
  132.     public void handleMagierMenuClick(InventoryClickEvent e) {
  133.         if (!(e.getWhoClicked() instanceof Player))
  134.             return;
  135.         Player p = (Player) e.getWhoClicked();
  136.         if (e.getClickedInventory().getTitle().equals(GUI_NAME)) {
  137.             e.setCancelled(true);
  138.             switch (e.getCurrentItem().getType()) {
  139.             case DIRT:
  140.                
  141.                  if(e.getClick().isLeftClick()) {
  142.                     if(es.hasEnoughMoney(p.getName(), 20)) {
  143.                    
  144.                     ItemStack item = new ItemStack(Material.DIRT);
  145.                    
  146.                     p.getInventory().addItem(item);
  147.                     es.removeMoney(p.getName(), 20);
  148.                 }else {
  149.                     p.sendMessage(Main.pre + " §cDu hast nich genug Geld");
  150.                 }
  151.                 }else if(e.getClick().isRightClick()) {
  152.                     p.sendMessage(Main.pre + " §cDiese Item Kannst du nicht verkaufen");
  153.                 }
  154.                 break;
  155.                 case STRING:
  156.                      if(e.getClick().isLeftClick()) {
  157.                             if(es.hasEnoughMoney(p.getName(), 100)) {
  158.                                 ItemStack item1 = new ItemStack(Material.STRING);
  159.                                 p.getInventory().addItem(item1);
  160.                                 es.removeMoney(p.getName(), 100);
  161.                             }else {
  162.                                 p.sendMessage(Main.pre + " §cDu hast nich genug Geld");
  163.                             }
  164.                             }else if(e.getClick().isRightClick()) {
  165.                                 ItemStack item = new ItemStack(Material.STRING);
  166.                            
  167.                                
  168.                         }
  169.                     }
  170.                 }
  171.             }
  172.        
  173.    
  174.    
  175.     @EventHandler
  176.     public void handleMagierDamage(EntityDamageByEntityEvent e) {
  177.         if(!(e.getEntity() instanceof Witch)) return;
  178.         Witch magier = (Witch) e.getEntity();
  179.         if(!magier.getCustomName().equals(Magier.WITCHNAME)) return;
  180.         e.setCancelled(true);
  181.        
  182.         if(!(e.getDamager() instanceof Player)) return;
  183.         Player p = (Player) e.getDamager();
  184.         if(p.hasPermission("Tom.killNPC")) {
  185.             if(p.getItemInHand().getType() == Material.DIAMOND_SWORD) {
  186.                 magier.setHealth(0);
  187.                 p.sendMessage(Main.pre + " §3Du hast den §eMagier §3erfolgreich entfernt");
  188.             }
  189.         }
  190.     }
  191.    
  192. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top