UntouchedOdin0

Untitled

Aug 25th, 2015
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.83 KB | None | 0 0
  1. package me.UntouchedOdin0.ItemGUI;
  2.  
  3. import java.awt.List;
  4. import java.util.Iterator;
  5.  
  6. import org.bukkit.Bukkit;
  7. import org.bukkit.ChatColor;
  8. import org.bukkit.Material;
  9. import org.bukkit.command.Command;
  10. import org.bukkit.command.CommandExecutor;
  11. import org.bukkit.command.CommandSender;
  12. import org.bukkit.entity.Player;
  13. import org.bukkit.event.EventHandler;
  14. import org.bukkit.event.Listener;
  15. import org.bukkit.event.inventory.InventoryClickEvent;
  16. import org.bukkit.event.player.AsyncPlayerChatEvent;
  17. import org.bukkit.event.player.PlayerInteractEvent;
  18. import org.bukkit.inventory.Inventory;
  19. import org.bukkit.inventory.ItemStack;
  20. import org.bukkit.inventory.meta.ItemMeta;
  21. import org.bukkit.plugin.PluginManager;
  22. import org.bukkit.plugin.java.JavaPlugin;
  23.  
  24. public class ItemGUI
  25. extends JavaPlugin
  26. implements Listener
  27. {
  28. boolean mute = false;
  29.  
  30. public void onEnable()
  31. {
  32. PluginManager pm = Bukkit.getPluginManager();
  33. pm.registerEvents(this, this);
  34. saveDefaultConfig();
  35. getConfig().options().copyDefaults(true);
  36. getCommand("StaffChat").setExecutor((CommandExecutor) new StaffChat());
  37. }
  38.  
  39. public void openGUI(Player p)
  40. {
  41. Inventory inv = Bukkit.createInventory(null, 9, ChatColor.BLUE + "Staff GUI");
  42. ItemStack Filter = new ItemStack(Material.NETHER_STAR);
  43. ItemMeta FilterName = Filter.getItemMeta();
  44. FilterName.setDisplayName(ChatColor.BOLD + "Chat Filter");
  45. Filter.setItemMeta(FilterName);
  46. ItemStack CC = new ItemStack(Material.REDSTONE_BLOCK);
  47. ItemMeta CCName = CC.getItemMeta();
  48. CCName.setDisplayName(ChatColor.BOLD + "Clear Chat");
  49. CC.setItemMeta(CCName);
  50. ItemStack MC;
  51. ItemMeta Credits = (ItemMeta) new ItemStack(Material.DIAMOND);
  52. ((ItemStack) Credits).getItemMeta().setDisplayName(ChatColor.BOLD + "Credits");
  53. ((ItemStack) Credits).setItemMeta(Credits);
  54. if (this.mute) {
  55. MC = new ItemStack(Material.REDSTONE_TORCH_ON);
  56. } else {
  57. MC = new ItemStack(Material.REDSTONE_TORCH_ON);
  58. }
  59. ItemMeta MCName = MC.getItemMeta();
  60. if (this.mute) {
  61. MCName.setDisplayName("" + ChatColor.RED + ChatColor.BOLD + "Unmute Chat");
  62. } else {
  63. MCName.setDisplayName("" + ChatColor.RED + ChatColor.BOLD + "Mute Chat");
  64. }
  65. MC.setItemMeta(MCName);
  66. inv.setItem(3, CC);
  67. inv.setItem(4, Filter);
  68. inv.setItem(5, MC);
  69. inv.setItem(8, (ItemStack) Credits);
  70. p.openInventory(inv);
  71. }
  72.  
  73. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
  74. {
  75. if ((cmd.getName().equalsIgnoreCase("chat")) && (sender.hasPermission("ItemGUI.Open"))) {
  76. openGUI((Player)sender);
  77. }
  78. return true;
  79. }
  80.  
  81. @EventHandler
  82. public void InventoryClick(InventoryClickEvent e)
  83. {
  84. Player p = (Player)e.getWhoClicked();
  85. if ((p.hasPermission("ItemGUI.Open")) && (e.getClickedInventory().getTitle().equals(ChatColor.BLUE + "Staff GUI")) && (e.getCurrentItem() != null) && (e.getCurrentItem().getItemMeta().hasDisplayName()))
  86. {
  87. if (e.getCurrentItem().getItemMeta().getDisplayName().equals(ChatColor.BOLD + "Clear Chat"))
  88. {
  89. for (int i = 0; i < 99; i++) {
  90. Bukkit.broadcastMessage(" ");
  91. }
  92. Bukkit.broadcastMessage(ChatColor.YELLOW + "Chat has been cleared by " + ChatColor.RED + ChatColor.BOLD + p.getName() + " " + ChatColor.YELLOW + ChatColor.BOLD + "!");
  93. }
  94. else if ((e.getCurrentItem().getItemMeta().getDisplayName().equals("" + ChatColor.RED + ChatColor.BOLD + "Mute Chat")) || (e.getCurrentItem().getItemMeta().getDisplayName().equals("" + ChatColor.RED + ChatColor.BOLD + "Unmute Chat")))
  95. {
  96. if (this.mute)
  97. {
  98. this.mute = false;
  99. p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat is now" + ChatColor.GREEN + ChatColor.BOLD + " unmuted!");
  100. }
  101. else
  102. {
  103. this.mute = true;
  104. p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat is muted!");
  105. }
  106. }
  107. else if (e.getCurrentItem().getItemMeta().getDisplayName().equals(ChatColor.BOLD + "Chat Filter"))
  108. {
  109. if (getConfig().getBoolean("ChatFilterEnable"))
  110. {
  111. getConfig().set("ChatFilterEnable", Boolean.valueOf(false));
  112. p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat filter has been Disabled!");
  113. }
  114. else
  115. {
  116. getConfig().set("ChatFilterEnable", Boolean.valueOf(true));
  117. p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat filter has been" + ChatColor.GREEN + ChatColor.BOLD + " Enabled!");
  118. p.sendMessage("" + ChatColor.YELLOW + ChatColor.BOLD + "Your chat is now" + ChatColor.GREEN + ChatColor.BOLD + " Protected");
  119. }
  120. }
  121. e.setCancelled(true);
  122. p.closeInventory();
  123. }
  124. }
  125.  
  126. @EventHandler
  127. public void PlayerChat(AsyncPlayerChatEvent e)
  128. {
  129. if ((this.mute) && (!e.getPlayer().hasPermission("ItemGUI.Chat")))
  130. {
  131. e.setCancelled(true);
  132. e.getPlayer().sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat is muted.");
  133. return;
  134. }
  135. if (getConfig().getBoolean("ChatFilterEnable"))
  136. {
  137. List blockedwords = (List) getConfig().getStringList("BlockedWords");
  138. Iterator iterator = ((Inventory) blockedwords).iterator();
  139. boolean containsBadWord = false;
  140. while (iterator.hasNext())
  141. {
  142. String Word = (String)iterator.next();
  143. if (e.getMessage().toLowerCase().contains(Word.toLowerCase())) {
  144. containsBadWord = true;
  145. }
  146. }
  147. if (containsBadWord)
  148. {
  149. e.setCancelled(true);
  150. e.getPlayer().sendMessage(ChatColor.RED + "Hey, please don't say bad words on this server.");
  151. }
  152. }
  153. }
  154.  
  155. @EventHandler
  156. public void PlayerInteract(PlayerInteractEvent e)
  157. {
  158. if ((e.getPlayer().getItemInHand().getType() == Material.COMPASS) && (e.getPlayer().hasPermission("ItemGUI.Open")))
  159. {
  160. openGUI(e.getPlayer());
  161. e.getPlayer().sendMessage("" + ChatColor.YELLOW + ChatColor.BOLD + "(!)" + ChatColor.GREEN + "GUI Opened Successfully!");
  162. return;
  163. }
  164.  
  165. }
  166. }
Advertisement
Add Comment
Please, Sign In to add comment