Development Assistance Right clicking signs

Discussion in 'Plugin Help/Development/Requests' started by Misteroid, Mar 7, 2015.

Thread Status:
Not open for further replies.
  1. Offline

    Misteroid

    I have made a sign "help" plugin that only works for ops all the time and only 1 sign works for non ops please help! Here is my code:

    Code:
    package me.Misteroid.XeonPVPEssentials.SpawnSignHelp;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import org.bukkit.Bukkit;
    import org.bukkit.Material;
    import org.bukkit.block.Sign;
    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.player.PlayerInteractEvent;
    import org.bukkit.inventory.ItemStack;
    import org.bukkit.inventory.meta.ItemMeta;
    
    public class HelpSign implements Listener{
    
        @EventHandler
        public void onRightClick(final PlayerInteractEvent event){
            final Player player = event.getPlayer();
           
            if(event.getAction() == Action.RIGHT_CLICK_BLOCK){
                if(event.getClickedBlock().getType() == Material.WALL_SIGN || event.getClickedBlock().getType() == Material.SIGN_POST){
                    Sign sign = (Sign)(event.getClickedBlock().getState());
                   
                        if(sign.getLine(0).equalsIgnoreCase("§d§lWarp Menu")){
                            if(sign.getLine(2).equals("§lRight Click")){
                                if(sign.getLine(3).equals("§ofor help!")){
                                    player.sendMessage("Help Menu");
                            }
                        }
                    }
                }
            }
           
            if(event.getAction() == Action.RIGHT_CLICK_BLOCK){
                if(event.getClickedBlock().getType() == Material.WALL_SIGN || event.getClickedBlock().getType() == Material.SIGN_POST){
                    Sign sign = (Sign)(event.getClickedBlock().getState());
                   
                    if(player.hasPermission("xeonpvp.sign")){
                        if(sign.getLine(0).equalsIgnoreCase("§d§lWarp Menu")){
                            if(sign.getLine(2).equals("§lRight Click")){
                                if(sign.getLine(3).equals("§ofor an item!")){
                                    player.sendMessage("Give Menu");
                                }
                            }
                        }
                    }
                }
            }
           
            if(event.getAction() == Action.RIGHT_CLICK_BLOCK){
                if(event.getClickedBlock().getType() == Material.WALL_SIGN || event.getClickedBlock().getType() == Material.SIGN_POST){
                    Sign sign = (Sign)(event.getClickedBlock().getState());
                   
                        if(sign.getLine(0).equalsIgnoreCase("§9§lParkour")){
                            if(sign.getLine(2).equals("§l Right Click")){
                                if(sign.getLine(3).equals("§ofor info!")){
                                    player.sendMessage("§9§lReward: §7§o 1 Nether Star or 1 Mystical Crate");
                                    player.sendMessage("§c§lDiffulculty: §eIntermediate");
                                    player.sendMessage("§d§lCooldown: §a1 hour");
                            }
                        }
                    }
                }
            }
           
            if(event.getAction() == Action.RIGHT_CLICK_BLOCK){
                if(event.getClickedBlock().getType() == Material.WALL_SIGN || event.getClickedBlock().getType() == Material.SIGN_POST){
                    Sign sign = (Sign)(event.getClickedBlock().getState());
                   
                        if(sign.getLine(0).equalsIgnoreCase("§e§lReward:")){
                            if(sign.getLine(1).equals("§lRight Click")){
                                if(sign.getLine(2).equals("§ofor a reward!")){
                                    if(sign.getLine(3).equals("§9Mystical Crate")){
                                        player.teleport(player.getWorld().getSpawnLocation());
                                        player.teleport(player.getWorld().getSpawnLocation());
                                       
                                        ItemStack item = new ItemStack(Material.CHEST, 1);
                                        ItemMeta meta = item.getItemMeta();
                                        meta.setDisplayName("§9Mystical Crate");
                                        List<String> lore = new ArrayList<String>();
                                        lore.add("§bA mysterious box from our store!");
                                        lore.add("§7Hold Shift + Right Click to open this!");
                                        meta.setLore(lore);
                                        item.setItemMeta(meta);
                                        player.getInventory().addItem(item);
                                        Bukkit.broadcastMessage("§7§l[§d§lParkour§7§l]§9 " + player.getDisplayName() + " §7looted §e1 §9Mystical Crate!");
                                        player.updateInventory();
                                }
                            }
                        }
                    }
                }
            }
            if(event.getAction() == Action.RIGHT_CLICK_BLOCK){
                if(event.getClickedBlock().getType() == Material.WALL_SIGN || event.getClickedBlock().getType() == Material.SIGN_POST){
                    Sign sign = (Sign)(event.getClickedBlock().getState());
                   
                        if(sign.getLine(0).equalsIgnoreCase("§e§lReward:")){
                            if(sign.getLine(1).equals("§lRight Click")){
                                if(sign.getLine(2).equals("§ofor a reward!")){
                                    if(sign.getLine(3).equals("§fNether Star")){
                                        player.teleport(player.getWorld().getSpawnLocation());
                                        player.teleport(player.getWorld().getSpawnLocation());
                                       
                                        ItemStack item = new ItemStack(Material.NETHER_STAR, 1);
                                        Bukkit.broadcastMessage("§7§l[§d§lParkour§7§l]§9 " + player.getDisplayName() + " §7looted §e1 §9Nether Star!");
                                        player.getInventory().addItem(item);
                                        player.updateInventory();
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    
    Thanks
     
Thread Status:
Not open for further replies.

Share This Page