Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package pw.trollkit.troll;
- import java.util.ArrayList;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.GameMode;
- import org.bukkit.Material;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.potion.PotionEffect;
- import org.bukkit.potion.PotionEffectType;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.SkullMeta;
- // Need this for listeners
- public class Troll extends JavaPlugin implements Listener {
- @Override
- public void onEnable() {
- // You don't need this....
- getLogger().info("Trolling Plugin");
- // Got to register it
- }
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- // If console just cancel everything (return)
- if(!(sender instanceof Player))
- return true;
- Player p = (Player) sender;
- if (cmd.getName().equalsIgnoreCase("troll")) {
- if (p.getGameMode().equals(GameMode.SURVIVAL)) {
- p.setGameMode(GameMode.CREATIVE);
- }
- }
- ItemStack item = new ItemStack(Material.SULPHUR, 1);
- ItemStack item1 = new ItemStack(Material.BOOK, 1);
- ItemStack item2 = new ItemStack(Material.COMPASS, 1);
- p.getInventory().setItem(4, item);
- p.getInventory().setItem(8, item1);
- p.getInventory().setItem(0, item2);
- p.sendMessage(ChatColor.BOLD + "Troll Mode Activated");
- return false;
- }
- private void openGUI(Player player) {
- Inventory i = getServer().createInventory(null, 27, ChatColor.RED + "Troll Menu"); {
- // Add item for every player
- for (Player pl : Bukkit.getOnlinePlayers()){
- ItemStack skull = new ItemStack(Material.SKULL_ITEM, 1, (short) 3);
- SkullMeta meta = (SkullMeta) skull.getItemMeta();
- // Owner = Player's name for the head, name = what shows up to you
- meta.setDisplayName(ChatColor.DARK_PURPLE + "Teleport to " + pl.getName());
- meta.setOwner(pl.getName());
- skull.setItemMeta(meta);
- i.addItem(skull);
- }
- player.openInventory(i);
- }
- }
- @EventHandler
- public void onPlayerInteract(PlayerInteractEvent e) {
- Action a = e.getAction();
- ItemStack is = e.getItem();
- if (e.getAction() == Action.RIGHT_CLICK_BLOCK || e.getAction() == Action.RIGHT_CLICK_AIR) {
- Player player = (e.getPlayer());
- if(a == Action.PHYSICAL || is == null || is.getType() == Material.AIR)
- return;
- if( is.getType() == Material.COMPASS){
- openGUI(e.getPlayer());
- }
- }
- }
- // TODO Auto-generated method stub
- // TODO Auto-generated method stub
- // Return true, bukkit thinks an error happened if you return false
- //TODO
- // Get clicked item's name from inventory through item meta.
- // If online (not null), teleport to them then close inv }
- // TODO Auto-generated method stub
- @EventHandler
- public void onInventoryClick(InventoryClickEvent event) {
- if(!ChatColor.stripColor(event.getInventory().getName())
- .equalsIgnoreCase("Troll Menu"))
- return;
- Player player = (Player) event.getWhoClicked();
- event.setCancelled(true);
- if(event.getCurrentItem()==null
- || event.getCurrentItem().getType()==Material.AIR
- || !event.getCurrentItem().hasItemMeta()) {
- player.closeInventory();
- return;
- }
- switch (event.getCurrentItem().getType()) {
- case SKULL_ITEM:
- player.sendMessage(ChatColor.DARK_PURPLE + "Teleport to " + Bukkit.getOnlinePlayers());
- player.teleport(player);
- break;
- default:
- player.closeInventory();
- break;
- }
- if(event.getCurrentItem()==null
- || event.getCurrentItem().getType()==Material.AIR
- || !event.getCurrentItem().hasItemMeta()) {
- player.closeInventory();
- return;
- }
- }
- @EventHandler
- public void onPlayerInteract2(PlayerInteractEvent e) {
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- Action a = e.getAction();
- ItemStack is = e.getItem();
- if (e.getAction() == Action.RIGHT_CLICK_BLOCK || e.getAction() == Action.RIGHT_CLICK_AIR) {
- Player player = (e.getPlayer());
- if( is.getType() == Material.SULPHUR) {
- ItemStack item5 = new ItemStack(Material.REDSTONE, 1);
- player.getInventory().setItem(4, item5);
- if(is.getType() == Material.SULPHUR) {
- if(player.getInventory().contains(Material.SULPHUR)) {
- player.addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, 1000, 1));
- player.sendMessage(ChatColor.ITALIC + "You have been vanished!");
- }
- }
- }
- }
- }
- @EventHandler
- public void onPlayerInteract21(PlayerInteractEvent e) {
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- Action a = e.getAction();
- ItemStack is = e.getItem();
- if (e.getAction() == Action.RIGHT_CLICK_BLOCK || e.getAction() == Action.RIGHT_CLICK_AIR) {
- Player player = (e.getPlayer());
- if(a == Action.PHYSICAL || is == null || is.getType() == Material.AIR)
- if( is.getType() == Material.REDSTONE) {
- ItemStack item5 = new ItemStack(Material.SULPHUR, 1);
- player.getInventory().setItem(4, item5);
- if(is.getType() == Material.REDSTONE) {
- if(player.getInventory().contains(Material.SULPHUR)) {
- if (player.hasPotionEffect(PotionEffectType.INVISIBILITY) == true)
- player.removePotionEffect(PotionEffectType.INVISIBILITY);
- player.sendMessage(ChatColor.ITALIC + "You are no longer vanished!");
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement