Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.UntouchedOdin0.ItemGUI;
- import java.awt.List;
- import java.util.Iterator;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.player.AsyncPlayerChatEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.plugin.java.JavaPlugin;
- public class ItemGUI
- extends JavaPlugin
- implements Listener
- {
- boolean mute = false;
- public void onEnable()
- {
- PluginManager pm = Bukkit.getPluginManager();
- pm.registerEvents(this, this);
- saveDefaultConfig();
- getConfig().options().copyDefaults(true);
- getCommand("StaffChat").setExecutor((CommandExecutor) new StaffChat());
- }
- public void openGUI(Player p)
- {
- Inventory inv = Bukkit.createInventory(null, 9, ChatColor.BLUE + "Staff GUI");
- ItemStack Filter = new ItemStack(Material.NETHER_STAR);
- ItemMeta FilterName = Filter.getItemMeta();
- FilterName.setDisplayName(ChatColor.BOLD + "Chat Filter");
- Filter.setItemMeta(FilterName);
- ItemStack CC = new ItemStack(Material.REDSTONE_BLOCK);
- ItemMeta CCName = CC.getItemMeta();
- CCName.setDisplayName(ChatColor.BOLD + "Clear Chat");
- CC.setItemMeta(CCName);
- ItemStack MC;
- ItemMeta Credits = (ItemMeta) new ItemStack(Material.DIAMOND);
- ((ItemStack) Credits).getItemMeta().setDisplayName(ChatColor.BOLD + "Credits");
- ((ItemStack) Credits).setItemMeta(Credits);
- if (this.mute) {
- MC = new ItemStack(Material.REDSTONE_TORCH_ON);
- } else {
- MC = new ItemStack(Material.REDSTONE_TORCH_ON);
- }
- ItemMeta MCName = MC.getItemMeta();
- if (this.mute) {
- MCName.setDisplayName("" + ChatColor.RED + ChatColor.BOLD + "Unmute Chat");
- } else {
- MCName.setDisplayName("" + ChatColor.RED + ChatColor.BOLD + "Mute Chat");
- }
- MC.setItemMeta(MCName);
- inv.setItem(3, CC);
- inv.setItem(4, Filter);
- inv.setItem(5, MC);
- inv.setItem(8, (ItemStack) Credits);
- p.openInventory(inv);
- }
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
- {
- if ((cmd.getName().equalsIgnoreCase("chat")) && (sender.hasPermission("ItemGUI.Open"))) {
- openGUI((Player)sender);
- }
- return true;
- }
- @EventHandler
- public void InventoryClick(InventoryClickEvent e)
- {
- Player p = (Player)e.getWhoClicked();
- if ((p.hasPermission("ItemGUI.Open")) && (e.getClickedInventory().getTitle().equals(ChatColor.BLUE + "Staff GUI")) && (e.getCurrentItem() != null) && (e.getCurrentItem().getItemMeta().hasDisplayName()))
- {
- if (e.getCurrentItem().getItemMeta().getDisplayName().equals(ChatColor.BOLD + "Clear Chat"))
- {
- for (int i = 0; i < 99; i++) {
- Bukkit.broadcastMessage(" ");
- }
- Bukkit.broadcastMessage(ChatColor.YELLOW + "Chat has been cleared by " + ChatColor.RED + ChatColor.BOLD + p.getName() + " " + ChatColor.YELLOW + ChatColor.BOLD + "!");
- }
- else if ((e.getCurrentItem().getItemMeta().getDisplayName().equals("" + ChatColor.RED + ChatColor.BOLD + "Mute Chat")) || (e.getCurrentItem().getItemMeta().getDisplayName().equals("" + ChatColor.RED + ChatColor.BOLD + "Unmute Chat")))
- {
- if (this.mute)
- {
- this.mute = false;
- p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat is now" + ChatColor.GREEN + ChatColor.BOLD + " unmuted!");
- }
- else
- {
- this.mute = true;
- p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat is muted!");
- }
- }
- else if (e.getCurrentItem().getItemMeta().getDisplayName().equals(ChatColor.BOLD + "Chat Filter"))
- {
- if (getConfig().getBoolean("ChatFilterEnable"))
- {
- getConfig().set("ChatFilterEnable", Boolean.valueOf(false));
- p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat filter has been Disabled!");
- }
- else
- {
- getConfig().set("ChatFilterEnable", Boolean.valueOf(true));
- p.sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat filter has been" + ChatColor.GREEN + ChatColor.BOLD + " Enabled!");
- p.sendMessage("" + ChatColor.YELLOW + ChatColor.BOLD + "Your chat is now" + ChatColor.GREEN + ChatColor.BOLD + " Protected");
- }
- }
- e.setCancelled(true);
- p.closeInventory();
- }
- }
- @EventHandler
- public void PlayerChat(AsyncPlayerChatEvent e)
- {
- if ((this.mute) && (!e.getPlayer().hasPermission("ItemGUI.Chat")))
- {
- e.setCancelled(true);
- e.getPlayer().sendMessage("" + ChatColor.RED + ChatColor.BOLD + "Chat is muted.");
- return;
- }
- if (getConfig().getBoolean("ChatFilterEnable"))
- {
- List blockedwords = (List) getConfig().getStringList("BlockedWords");
- Iterator iterator = ((Inventory) blockedwords).iterator();
- boolean containsBadWord = false;
- while (iterator.hasNext())
- {
- String Word = (String)iterator.next();
- if (e.getMessage().toLowerCase().contains(Word.toLowerCase())) {
- containsBadWord = true;
- }
- }
- if (containsBadWord)
- {
- e.setCancelled(true);
- e.getPlayer().sendMessage(ChatColor.RED + "Hey, please don't say bad words on this server.");
- }
- }
- }
- @EventHandler
- public void PlayerInteract(PlayerInteractEvent e)
- {
- if ((e.getPlayer().getItemInHand().getType() == Material.COMPASS) && (e.getPlayer().hasPermission("ItemGUI.Open")))
- {
- openGUI(e.getPlayer());
- e.getPlayer().sendMessage("" + ChatColor.YELLOW + ChatColor.BOLD + "(!)" + ChatColor.GREEN + "GUI Opened Successfully!");
- return;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment