Advertisement
BrainRTP

ArmorStandi

Apr 2nd, 2017
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 8.62 KB | None | 0 0
  1. package ru.Listeners;
  2.  
  3. import org.bukkit.Sound;
  4. import org.bukkit.entity.ArmorStand;
  5. import org.bukkit.entity.Player;
  6. import org.bukkit.event.EventHandler;
  7. import org.bukkit.event.Listener;
  8. import org.bukkit.event.player.PlayerInteractAtEntityEvent;
  9. import org.bukkit.metadata.FixedMetadataValue;
  10. import org.bukkit.metadata.MetadataValue;
  11. import org.bukkit.plugin.Plugin;
  12. import ru.Config;
  13. import ru.EasterEggs;
  14. import ru.FeatherBoard;
  15.  
  16. public class ArmorStandi implements Listener {
  17.  
  18.     @EventHandler
  19.     public void onArmorStandInteract(PlayerInteractAtEntityEvent e) {
  20.         if (e.getPlayer().hasPermission("eastereggs.default")) {
  21.             String prefix = Config.getConfig().getString("Prefix").replace("&", "§");
  22.             EasterEggs.setupEconomy();
  23.             int cooldownTime = 1;
  24.             Player player = e.getPlayer();
  25.  
  26.             if (player.hasMetadata("EasterEggs")) {
  27.                 for (MetadataValue value : player.getMetadata("EasterEggs")) {
  28.                     if (((FixedMetadataValue) value).asString().equalsIgnoreCase("ArmorStandMode")) {
  29.                         player.removeMetadata("EasterEggs", EasterEggs.getPlugin());
  30.                         EasterEggs.mode = false;
  31.                         String name = ((ArmorStand) e.getRightClicked()).getName();
  32.                         int x = ((ArmorStand) e.getRightClicked()).getLocation().getBlockX();
  33.                         int y = ((ArmorStand) e.getRightClicked()).getLocation().getBlockY();
  34.                         int z = ((ArmorStand) e.getRightClicked()).getLocation().getBlockZ();
  35.  
  36.                         try {
  37.                             if (Config.getPresentsConfig().isConfigurationSection("ArmorStand")) {
  38.                                 for (String number : Config.getPresentsConfig().getConfigurationSection("ArmorStand").getKeys(false)) {
  39.                                     int x1 = Config.getPresentsConfig().getInt("ArmorStand." + Integer.valueOf(number) + ".locX");
  40.                                     int y1 = Config.getPresentsConfig().getInt("ArmorStand." + Integer.valueOf(number) + ".locY");
  41.                                     int z1 = Config.getPresentsConfig().getInt("ArmorStand." + Integer.valueOf(number) + ".locZ");
  42.                                     if (x == x1 && y == y1 && z == z1) {
  43.                                         player.sendMessage(prefix + Config.getConfig().getString("ArmorStand_already_set").replace("%name%", name).replace("%x%", String.valueOf(x)).replace("%y%", String.valueOf(y)).replace("%z%", String.valueOf(z)).replaceAll("&", "§"));
  44.                                         return;
  45.                                     }
  46.                                 }
  47.                             }
  48.  
  49.                             e.getPlayer().sendMessage(prefix + "§dArmorStand §a'§e" + name + "§a'§d сохранен!!");
  50.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".name", name);
  51.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".locX", x);
  52.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".locY", y);
  53.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".locZ", z);
  54.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".messages", EasterEggs.messages.toArray(new String[EasterEggs.messages.size()]));
  55.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".commands", EasterEggs.plugin.commands);
  56.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".money", 100);
  57.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".sounds.LEVEL_UP.volume", 1.0);
  58.                             Config.getPresentsConfig().set("ArmorStand." + EasterEggs.onumber + ".sounds.LEVEL_UP.pitch", 1.0);
  59.                             EasterEggs.onumber++;
  60.                             Config.presents.save(Config.presentsf);
  61.  
  62.                         } catch (Exception ea) {
  63.                             return;
  64.                         }
  65.                     }
  66.                 }
  67.             } else {
  68.                 try {
  69.                     int x = ((ArmorStand) e.getRightClicked()).getLocation().getBlockX();
  70.                     int y = ((ArmorStand) e.getRightClicked()).getLocation().getBlockY();
  71.                     int z = ((ArmorStand) e.getRightClicked()).getLocation().getBlockZ();
  72.                     player.sendMessage("1"); // Аля дебаг
  73.                     if (Config.getPresentsConfig().isConfigurationSection("ArmorStand")) {
  74.                         player.sendMessage("2"); // Аля дебаг
  75.                         for (String number : Config.getPresentsConfig().getConfigurationSection("ArmorStand").getKeys(false)) {
  76.                             player.sendMessage("3"); // Аля дебаг
  77.                             int x1 = Config.getPresentsConfig().getInt("ArmorStand." + Integer.valueOf(number) + ".locX");
  78.                             int y1 = Config.getPresentsConfig().getInt("ArmorStand." + Integer.valueOf(number) + ".locY");
  79.                             int z1 = Config.getPresentsConfig().getInt("ArmorStand." + Integer.valueOf(number) + ".locZ");
  80.                             if (x == x1 && y == y1 && z == z1 && !Config.getUsersConfig().getBoolean(player.getName() + ".ArmorStand." + Integer.valueOf(number))) {
  81.                                 player.sendMessage("4"); // Аля дебаг
  82.                                 int money = Config.getPresentsConfig().getInt("ArmorStand." + Integer.valueOf(number) + ".money");
  83.                                 if (!Config.getUsersConfig().getBoolean(e.getPlayer().getName() + ".ArmorStand." + Integer.valueOf(number))) {
  84.                                     player.sendMessage("5"); // Аля дебаг
  85.                                     Config.getUsersConfig().set(e.getPlayer().getName() + ".ArmorStand." + Integer.valueOf(number), true);
  86.                                     EasterEggs.economy.depositPlayer(e.getPlayer().getName(), money); //depositPlayer - выдать | withdrawPlayer - снять
  87.  
  88.                                     for (final String message : Config.getPresentsConfig().getStringList("ArmorStand." + Integer.valueOf(number) + ".messages")) {
  89.                                         player.sendMessage("6"); // Аля дебаг
  90.                                         player.sendMessage(message. replace("&", "§").replace("%one%", String.valueOf(EasterEggs.One(e.getPlayer().getPlayer()))).replace("%all%", String.valueOf(EasterEggs.All(e.getPlayer().getPlayer()))));
  91.                                     }
  92.  
  93.                                     for (final String s : Config.getPresentsConfig().getConfigurationSection("ArmorStand." + number + ".sounds").getKeys(false)) {
  94.                                         player.sendMessage("7"); // Аля дебаг
  95.                                         player.playSound(e.getRightClicked().getLocation(), Sound.valueOf(s), (float) Config.getPresentsConfig().getDouble("ArmorStand." + number + ".sounds." + s + ".volume"), (float) Config.getPresentsConfig().getDouble("ArmorStand." + number + ".sounds." + s + ".pitch"));
  96.                                     }
  97.  
  98.                                     player.sendMessage("8"); // Аля дебаг
  99.                                     FeatherBoard.place1();
  100.                                     Config.users.save(Config.usersf);
  101.                                     return;
  102.                                 }
  103.                             }
  104.                             if (x == x1 && y == y1 && z == z1 && Config.getUsersConfig().getBoolean(player.getName() + ".ArmorStand." + Integer.valueOf(number))) {
  105.                                 if (EasterEggs.cooldowns.containsKey(player.getName())) {
  106.                                     long secondsLeft = ((EasterEggs.cooldowns.get(player.getName()) / 1000) + cooldownTime) - (System.currentTimeMillis() / 1000);
  107.                                     if (secondsLeft > 0)
  108.                                         return;
  109.                                 }
  110.                                 player.sendMessage(prefix + Config.getConfig().getString("Present_find").replace("&", "§"));
  111.                                 EasterEggs.cooldowns.put(String.valueOf(player.getName()), System.currentTimeMillis());
  112.                             }
  113.                         }
  114.                     }
  115.                 } catch (Exception ea) {
  116.                     return;
  117.                 }
  118.             }
  119.         }
  120.     }
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement