Advertisement
Guest User

Untitled

a guest
Apr 19th, 2015
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.41 KB | None | 0 0
  1. package net.unionmc.uTools.plots;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import java.util.List;
  6. import java.util.UUID;
  7.  
  8. import net.unionmc.uTools.Main;
  9.  
  10. import org.bukkit.Bukkit;
  11. import org.bukkit.Location;
  12. import org.bukkit.Material;
  13. import org.bukkit.block.Block;
  14. import org.bukkit.entity.Player;
  15. import org.bukkit.event.EventHandler;
  16. import org.bukkit.event.Listener;
  17. import org.bukkit.event.block.BlockBreakEvent;
  18. import org.bukkit.event.block.BlockPlaceEvent;
  19. import org.bukkit.event.player.PlayerJoinEvent;
  20. import org.bukkit.metadata.FixedMetadataValue;
  21.  
  22. public class SpawnerControl implements Listener{
  23. private Main plugin;
  24.  
  25. public SpawnerControl(Main plugin) {
  26. this.plugin = plugin;
  27. }
  28.  
  29. List<String> locList = new ArrayList<String>();
  30. @EventHandler
  31. public void onBlockPlace(BlockPlaceEvent e){
  32. Player p = e.getPlayer();
  33. UUID u = e.getPlayer().getUniqueId();
  34. Block b = e.getBlock();
  35. if(b.getType().equals(Material.MOB_SPAWNER)){
  36. if(p.getWorld().getName().equals("world")){
  37. if(plugin.getConfig().contains("players."+u)){
  38.  
  39. int newCount = plugin.getConfig().getInt("players."+u) +1;
  40. if(newCount < 16){
  41. plugin.getConfig().set("players."+u, newCount);
  42. String loc = b.getLocation().toString();
  43. loc = b.getLocation().getWorld().getName()+";"+ b.getLocation().getX() + ";" + b.getLocation().getY() + ";" + b.getLocation().getZ();
  44. locList.add(loc);
  45. Bukkit.broadcastMessage(""+loc);
  46.  
  47. plugin.getConfig().set("spawners."+u, locList);
  48. //locList.clear();
  49.  
  50. //b.setMetadata("owner", new FixedMetadataValue(plugin,u));
  51. //Bukkit.broadcastMessage(""+b.getMetadata("owner"));
  52. }else{
  53. p.sendMessage("§8[§4§lUnion §c§lMC§8]§4 » §cYou can only place up to 15 spawners in the plot world.");
  54. e.setCancelled(true);
  55. newCount--;
  56. }
  57. }else{
  58. plugin.getConfig().set("players." + u, 1);
  59. //b.setMetadata("owner", new FixedMetadataValue(plugin,u));
  60. }
  61. plugin.saveConfig();
  62.  
  63. }
  64. }
  65. }
  66.  
  67. @EventHandler
  68. public void onBlockBreak(BlockBreakEvent e){
  69. Player p = e.getPlayer();
  70. UUID u = e.getPlayer().getUniqueId();
  71. Block b = e.getBlock();
  72.  
  73. if(isBlockOwner(e.getBlock(), e.getPlayer())){
  74. int newMinusCount = plugin.getConfig().getInt("players"+u)-1;
  75. Bukkit.broadcastMessage("Hello there");
  76. p.sendMessage(""+newMinusCount);
  77. }else{
  78. p.sendMessage("§8[§4§lUnion §c§lMC§8]§4 » §cThis is not your spawner and you cannot mine it.");
  79. e.setCancelled(true);
  80. }
  81. }
  82.  
  83. public boolean isBlockOwner(Block b, Player p){
  84. Location l = b.getLocation();
  85. UUID u = p.getUniqueId();
  86. double x = b.getLocation().getX();
  87. double y = b.getLocation().getY();
  88. double z = b.getLocation().getZ();
  89.  
  90. int counter = 0;
  91. for(String loc : plugin.getConfig().getStringList("spawners."+u)){
  92. String split = loc;
  93. String[] parts = split.split(";");
  94. String sW = parts[0];
  95. String sX = parts[1];
  96. String sY = parts[2];
  97. String sZ = parts[3];
  98.  
  99. Bukkit.broadcastMessage(""+ sW + "-"+sX+"-"+sY+"-"+sZ);
  100. if(sW.equals(l.getWorld().getName()) && sX.equals(String.valueOf(b.getX())) && sY.equals(String.valueOf(b.getY())) && sZ.equals(String.valueOf(b.getZ()))){
  101. Bukkit.broadcastMessage("true");
  102. return true;
  103.  
  104. }
  105. counter++;
  106. }
  107. if(counter >15){
  108. return false;
  109. }else{
  110. return true;
  111. }
  112. }
  113. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement