Advertisement
Guest User

CODE

a guest
Jun 6th, 2015
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.78 KB | None | 0 0
  1. package com.DidactCraft.Pot;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.ChatColor;
  7. import org.bukkit.Material;
  8. import org.bukkit.block.Sign;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.EventHandler;
  11. import org.bukkit.event.Listener;
  12. import org.bukkit.event.block.Action;
  13. import org.bukkit.event.block.SignChangeEvent;
  14. import org.bukkit.event.inventory.InventoryClickEvent;
  15. import org.bukkit.event.player.PlayerInteractEvent;
  16. import org.bukkit.event.player.PlayerJoinEvent;
  17. import org.bukkit.event.player.PlayerRespawnEvent;
  18. import org.bukkit.inventory.Inventory;
  19. import org.bukkit.inventory.ItemStack;
  20. import org.bukkit.inventory.PlayerInventory;
  21. import org.bukkit.inventory.meta.ItemMeta;
  22. import org.bukkit.plugin.java.JavaPlugin;
  23. import org.bukkit.potion.Potion;
  24. import org.bukkit.potion.PotionType;
  25.  
  26. public class Main extends JavaPlugin implements Listener {
  27.  
  28. public void onEnable() {
  29. Bukkit.getServer().getPluginManager().registerEvents(this, this);
  30. }
  31.  
  32. @EventHandler
  33. public void invClickEvent(InventoryClickEvent e) {
  34.  
  35. ItemStack kitselector = new ItemStack(Material.COMPASS);
  36. ArrayList<String> kitselectorLore = new ArrayList<String>();
  37. ItemMeta kitselectorMeta = kitselector.getItemMeta();
  38. kitselectorMeta.setDisplayName("§a§lKit Selector");
  39. kitselectorLore.add("§8-----");
  40. kitselectorLore.add("§aSelect your kit!");
  41. kitselectorMeta.setLore(kitselectorLore);
  42. kitselector.setItemMeta(kitselectorMeta);
  43.  
  44. final Player p = (Player) e.getWhoClicked();
  45. PlayerInventory pi = p.getInventory();
  46. // getLogger().info("BASIC("+e.getCurrentItem().getItemMeta().getDisplayName()+")="+e.getCurrentItem().getItemMeta().getDisplayName().contains("Basic"));
  47.  
  48. if (!e.getCurrentItem().hasItemMeta()) {
  49. return;
  50. }
  51.  
  52. if (e.getSlot() == -1) {
  53. e.setCancelled(true);
  54. }
  55.  
  56. if (e.getCurrentItem().getItemMeta().getDisplayName()
  57. .contains("§c§lPotSelector")) {
  58. e.setCancelled(true);
  59. }
  60.  
  61. }
  62.  
  63. @EventHandler
  64. public void playerJoin(PlayerJoinEvent e) {
  65.  
  66. }
  67.  
  68. @EventHandler
  69. public void onPlayerInteractEvent(PlayerInteractEvent e) {
  70.  
  71. Player p = e.getPlayer();
  72.  
  73. ArrayList<String> potSelectLore = new ArrayList<String>();
  74. ItemStack potSelector = new ItemStack(Material.BEACON);
  75. ItemMeta potMeta = potSelector.getItemMeta();
  76. potMeta.setDisplayName("§c§lPotSelector");
  77. potSelectLore.add("§8-----");
  78. potSelectLore.add("§cSelect your pots!");
  79. potMeta.setLore(potSelectLore);
  80. potSelector.setItemMeta(potMeta);
  81.  
  82. Action a = e.getAction();
  83. ItemStack is = e.getItem();
  84.  
  85. if (a == Action.PHYSICAL || is == null || is.getType() == Material.AIR) {
  86.  
  87. return;
  88.  
  89. }
  90. if (is.getType() == Material.BEACON) {
  91.  
  92. guiPot(p);
  93.  
  94. }
  95.  
  96. }
  97.  
  98. @EventHandler
  99. public void onPlayerDeath(PlayerRespawnEvent e) {
  100.  
  101. /*
  102. * final PlayerInventory pi = e.getPlayer().getInventory();
  103. * ArrayList<String> potSelectLore = new ArrayList<String>(); final
  104. * ItemStack potSelector = new ItemStack(Material.BEACON); ItemMeta
  105. * potMeta = potSelector.getItemMeta();
  106. * potMeta.setDisplayName("§c§lPotSelector");
  107. * potSelectLore.add("§8-----");
  108. * potSelectLore.add("§cSelect your pots!");
  109. * potMeta.setLore(potSelectLore); potSelector.setItemMeta(potMeta);
  110. *
  111. * Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new
  112. * Runnable() { public void run() { pi.addItem(potSelector); } }, 10);
  113. */
  114.  
  115. }
  116.  
  117. public void guiPot(Player player) {
  118.  
  119. ItemStack potSelector = new ItemStack(Material.BEACON);
  120. ItemMeta potMeta = potSelector.getItemMeta();
  121. potMeta.setDisplayName("§c§lPotSelector");
  122.  
  123. Inventory pot = Bukkit.getServer().createInventory(null, 27,
  124. "§c§lPot Selector");
  125. ItemStack stack = new ItemStack(Material.POTION, 1, (short) 16421);
  126.  
  127. Potion potion2 = new Potion(PotionType.SPEED);
  128. ItemStack stack2 = new ItemStack(Material.POTION, 1, (short) 2);
  129. potion2.apply(stack2);
  130.  
  131. Potion potion3 = new Potion(PotionType.STRENGTH);
  132. ItemStack stack3 = new ItemStack(Material.POTION, 1);
  133. potion3.apply(stack3);
  134.  
  135. Potion potion4 = new Potion(PotionType.FIRE_RESISTANCE);
  136. ItemStack stack4 = new ItemStack(Material.POTION, 1);
  137. potion4.apply(stack4);
  138.  
  139. pot.setItem(0, stack);
  140. pot.setItem(1, stack);
  141. pot.setItem(2, stack);
  142. pot.setItem(3, stack);
  143. pot.setItem(4, stack);
  144. pot.setItem(5, stack);
  145. pot.setItem(6, stack);
  146. pot.setItem(7, stack);
  147. pot.setItem(8, stack);
  148. pot.setItem(9, stack);
  149. pot.setItem(10, stack);
  150. pot.setItem(11, stack);
  151. pot.setItem(12, stack);
  152. pot.setItem(13, stack);
  153. pot.setItem(14, stack);
  154. pot.setItem(15, stack);
  155. pot.setItem(16, stack);
  156. pot.setItem(17, stack);
  157. pot.setItem(18, stack);
  158. pot.setItem(19, stack);
  159. pot.setItem(20, stack);
  160. pot.setItem(21, stack);
  161. pot.setItem(22, stack);
  162. pot.setItem(23, stack);
  163. pot.setItem(24, stack);
  164. pot.setItem(25, stack);
  165. pot.setItem(26, stack);
  166.  
  167. player.openInventory(pot);
  168.  
  169. }
  170.  
  171. @EventHandler
  172. public void onSignChange(SignChangeEvent e) {
  173. if (e.getLine(0).equalsIgnoreCase("Pot")) {
  174. e.setLine(0, "§8[§b§lPotions§8]");
  175. e.setLine(1, "§3§lLEFT-CLICK");
  176. }
  177.  
  178. if (e.getLine(0).equalsIgnoreCase("center")) {
  179. e.setLine(0, "§0§lTeleport Center");
  180. e.setLine(1, "§8----");
  181. }
  182. if (e.getLine(0).equalsIgnoreCase("south")) {
  183. e.setLine(0, "§0§lTeleport South");
  184. e.setLine(1, "§8----");
  185. }
  186. if (e.getLine(0).equalsIgnoreCase("north")) {
  187. e.setLine(0, "§0§lTeleport North");
  188. e.setLine(1, "§8----");
  189. }
  190. if (e.getLine(0).equalsIgnoreCase("east")) {
  191. e.setLine(0, "§0§lTeleport East");
  192. e.setLine(1, "§8----");
  193. }
  194. if (e.getLine(0).equalsIgnoreCase("west")) {
  195. e.setLine(0, "§0§lTeleport West");
  196. e.setLine(1, "§8----");
  197. }
  198. }
  199.  
  200. public void ImperialKit(Player player) {
  201.  
  202. /*
  203. * ItemStack kitselector = new ItemStack(Material.COMPASS);
  204. * ArrayList<String> kitselectorLore = new ArrayList<String>(); ItemMeta
  205. * kitselectorMeta = kitselector.getItemMeta();
  206. * kitselectorMeta.setDisplayName("§a§lKit Selector");
  207. * kitselectorLore.add("§8-----");
  208. * kitselectorLore.add("§aSelect your kit!");
  209. * kitselectorMeta.setLore(kitselectorLore);
  210. * kitselector.setItemMeta(kitselectorMeta);
  211. */
  212.  
  213. ItemStack chainHelm = new ItemStack(Material.CHAINMAIL_HELMET);
  214.  
  215. ItemStack chainChestplate = new ItemStack(Material.CHAINMAIL_CHESTPLATE);
  216.  
  217. ItemStack chainLeggings = new ItemStack(Material.CHAINMAIL_LEGGINGS);
  218.  
  219. ItemStack chainBoots = new ItemStack(Material.CHAINMAIL_BOOTS);
  220.  
  221. ItemStack goldSword = new ItemStack(Material.GOLD_SWORD);
  222.  
  223. ItemStack fishingRod = new ItemStack(Material.FISHING_ROD);
  224.  
  225. ItemStack bow = new ItemStack(Material.BOW);
  226.  
  227. ItemStack arrow = new ItemStack(Material.ARROW, 24);
  228.  
  229. ItemStack goldenApple = new ItemStack(Material.GOLDEN_APPLE, 3);
  230.  
  231. PlayerInventory pi = player.getInventory();
  232. /*
  233. * if (pi.contains(kitselector)) {
  234. *
  235. * pi.remove(kitselector);
  236. *
  237. * }
  238. */
  239. pi.setHelmet(chainHelm);
  240. pi.setChestplate(chainChestplate);
  241. pi.setLeggings(chainLeggings);
  242. pi.setBoots(chainBoots);
  243. pi.addItem(goldSword);
  244. pi.addItem(bow);
  245. pi.addItem(fishingRod);
  246. pi.addItem(arrow);
  247. pi.addItem(goldenApple);
  248.  
  249. }
  250.  
  251. public String Color(String msg) {
  252. return ChatColor.translateAlternateColorCodes('&', msg);
  253.  
  254.  
  255.  
  256. }
  257.  
  258. @EventHandler
  259. public void onPlayerInteract(PlayerInteractEvent e) {
  260.  
  261. PlayerInventory pi = e.getPlayer().getInventory();
  262.  
  263. ItemStack stack = new ItemStack(Material.POTION, 1, (short) 16421);
  264. Player p = e.getPlayer();
  265. if (e.getClickedBlock().getState() instanceof Sign) {
  266. if (!(e.getAction() == Action.RIGHT_CLICK_BLOCK)) return;
  267.  
  268. Sign s = (Sign) e.getClickedBlock().getState();
  269. if (s.getLine(0).equalsIgnoreCase("§0§lTeleport Center")) {
  270. ImperialKit(p);
  271. p.performCommand("warp center");
  272. p.sendMessage(Color("&3You have been teleported!"));
  273. }
  274.  
  275. if (s.getLine(0).equalsIgnoreCase("§0§lTeleport South")) {
  276. ImperialKit(p);
  277. p.performCommand("warp south");
  278. p.sendMessage(Color("&3You have been teleported!"));
  279. }
  280.  
  281. if (s.getLine(0).equalsIgnoreCase("§0§lTeleport North")) {
  282. ImperialKit(p);
  283. p.performCommand("warp north");
  284. p.sendMessage(Color("&3You have been teleported!"));
  285. }
  286.  
  287. if (s.getLine(0).equalsIgnoreCase("§0§lTeleport East")) {
  288. p.performCommand("warp east");
  289. p.sendMessage(Color("&3You have been teleported!"));
  290. ImperialKit(p);
  291. }
  292.  
  293. if (s.getLine(0).equalsIgnoreCase("§0§lTeleport West")) {
  294. ImperialKit(p);
  295. p.sendMessage(Color("&3You have been teleported!"));
  296. p.performCommand("/warp west");
  297. }
  298.  
  299. if (s.getLine(0).equalsIgnoreCase("§8[§b§lPotions§8]")) {
  300. guiPot(p);
  301. }
  302. }
  303. }
  304. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement