Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.zero.cc;
- import java.util.HashMap;
- import java.util.List;
- import java.util.UUID;
- import net.md_5.bungee.api.ChatColor;
- import net.minecraft.server.v1_8_R1.NBTTagString;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.EventPriority;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.inventory.InventoryInteractEvent;
- import org.bukkit.event.inventory.InventoryOpenEvent;
- import org.bukkit.event.player.AsyncPlayerChatEvent;
- import org.bukkit.event.player.PlayerCommandPreprocessEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerItemHeldEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerKickEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.event.server.ServerCommandEvent;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.InventoryView;
- import org.bukkit.inventory.ItemFlag;
- import org.bukkit.inventory.meta.BookMeta;
- import org.bukkit.material.MaterialData;
- public class EventListener implements Listener{
- private BlockSpawnerChange main;
- private ChatManager ch = new ChatManager();
- private HashMap<UUID, Boolean> isReadingBook = new HashMap<UUID, Boolean>();
- public EventListener(BlockSpawnerChange main){
- this.main = main;
- }
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onUse(PlayerInteractEvent e){
- if(main.config.getBoolean("disablechanging")){
- if(main.config.getBoolean("only-change-if-perm")){
- if(e.getAction().equals(Action.RIGHT_CLICK_BLOCK)){
- if(e.getClickedBlock().getType().equals(Material.MOB_SPAWNER)){
- if(e.getPlayer().getItemInHand().getType().equals(Material.MONSTER_EGG) || e.getPlayer().getItemInHand().getType().equals(Material.MONSTER_EGGS)){
- if(!e.getPlayer().hasPermission("BSC.change")){
- e.getPlayer().sendMessage(ch.ColorIt(main.config.getString("Message.no-perm")));
- e.setCancelled(true);
- }else{
- e.getPlayer().sendMessage(ch.ColorIt(main.config.getString("Message.enough-perm")));
- }
- }
- }
- }
- }else{
- if(e.getAction().equals(Action.RIGHT_CLICK_BLOCK)){
- if(e.getClickedBlock().getType().equals(Material.MOB_SPAWNER)){
- if(e.getPlayer().getItemInHand().getType().equals(Material.MONSTER_EGG) || e.getPlayer().getItemInHand().getType().equals(Material.MONSTER_EGGS)){
- for(String s : (List<String>)main.config.getList("disallow-changing to this")){
- MaterialData mei = e.getPlayer().getItemInHand().getData();
- if(mei.toString().toUpperCase().contains(s.toUpperCase())){
- if(!e.getPlayer().hasPermission("BSC.change")){
- e.setCancelled(true);
- e.getPlayer().sendMessage(ch.ColorIt(main.config.getString("Message.disallowed-mob").replace("<mob>", s)));
- break;
- }
- }
- }
- }
- }
- }
- }
- }
- }
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onClick(PlayerInteractEvent event){
- if(event.getPlayer().getItemInHand().getType().equals(Material.WRITTEN_BOOK)){
- if(isReadingBook.containsKey(event.getPlayer().getUniqueId())){
- isReadingBook.put(event.getPlayer().getUniqueId(), true);
- }else{
- isReadingBook.put(event.getPlayer().getUniqueId(), true);
- }
- }else{
- if(isReadingBook.containsKey(event.getPlayer().getUniqueId())){
- isReadingBook.put(event.getPlayer().getUniqueId(), false);
- }else{
- isReadingBook.put(event.getPlayer().getUniqueId(), false);
- }
- }
- }
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onChatWhileOpenBook(AsyncPlayerChatEvent event){
- if(isReadingBook.containsKey(event.getPlayer().getUniqueId())){
- if(isReadingBook.get(event.getPlayer().getUniqueId())){
- if(event.getPlayer().getInventory().getItemInHand().getType().equals(Material.WRITTEN_BOOK)){
- event.getPlayer().sendMessage(ChatManager.ColorIt(main.config.getString("Message.chat-block").replace("<cmd>", event.getMessage())));
- isReadingBook.put(event.getPlayer().getUniqueId(), false);
- event.setCancelled(true);
- }else{
- isReadingBook.put(event.getPlayer().getUniqueId(), false);
- }
- }
- }
- }
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onOpenBookAndCommand(PlayerCommandPreprocessEvent event){
- if(isReadingBook.containsKey(event.getPlayer().getUniqueId())){
- if(isReadingBook.get(event.getPlayer().getUniqueId())){
- if(event.getPlayer().getInventory().getItemInHand().getType().equals(Material.WRITTEN_BOOK)){
- event.getPlayer().sendMessage(ChatManager.ColorIt(main.config.getString("Message.cmd-block").replace("<cmd>", event.getMessage())));
- isReadingBook.put(event.getPlayer().getUniqueId(), false);
- event.setCancelled(true);
- }else{
- isReadingBook.put(event.getPlayer().getUniqueId(), false);
- }
- }
- }
- }
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onPlayerJoin(PlayerJoinEvent e){
- if(main.config.getBoolean("disable-join-msg")){
- e.setJoinMessage("");
- }
- }
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onPlayerLeft(PlayerQuitEvent e){
- if(main.config.getBoolean("disable-left-msg")){
- e.setQuitMessage("");
- }
- }
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onPlayerKick(PlayerKickEvent e){
- if(main.config.getBoolean("disable-left-msg")){
- e.setLeaveMessage("");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement