Solved Need help with GUI

Discussion in 'Plugin Development' started by kekistar, Aug 19, 2014.

Thread Status:
Not open for further replies.
  1. Well I was watching a video, it was a tutorial on how to make a GUI, I copied the code to make changes and see how it works (I typed it from the video). But it doesn't work, can someone tell me where I messed up?

    Code:java
    1. package GUI;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.ChatColor;
    5. import org.bukkit.Material;
    6. import org.bukkit.entity.Player;
    7. import org.bukkit.event.EventHandler;
    8. import org.bukkit.event.Listener;
    9. import org.bukkit.event.block.Action;
    10. import org.bukkit.event.inventory.InventoryClickEvent;
    11. import org.bukkit.event.player.PlayerInteractEvent;
    12. import org.bukkit.event.player.PlayerJoinEvent;
    13. import org.bukkit.inventory.Inventory;
    14. import org.bukkit.inventory.ItemStack;
    15. import org.bukkit.inventory.meta.ItemMeta;
    16. import org.bukkit.plugin.java.JavaPlugin;
    17.  
    18. public class main extends JavaPlugin implements Listener{
    19.  
    20. public void onEnable() {
    21. getLogger().info("[Wardrobe] has just been enabled. Running version 1.0");
    22. }
    23.  
    24. public void onDisable() {
    25. getLogger().info("[Wardrobe] has just been disabled. Running version 1.0");
    26. }
    27.  
    28. private void openGUI(Player player) {
    29. Inventory inv = Bukkit.createInventory(null, 9, ChatColor.DARK_GREEN
    30. + "Server Selector");
    31. ItemStack survival = new ItemStack(Material.DIAMOND_CHESTPLATE);
    32. ItemMeta survivalMeta = survival.getItemMeta();
    33. ItemStack creative = new ItemStack(Material.GRASS);
    34. ItemMeta creativeMeta = creative.getItemMeta();
    35.  
    36. survivalMeta.setDisplayName(ChatColor.DARK_RED + "survival");
    37. survival.setItemMeta(survivalMeta);
    38.  
    39. creativeMeta.setDisplayName(ChatColor.GREEN + "Creative");
    40. creative.setItemMeta(creativeMeta);
    41.  
    42. inv.setItem(3, survival);
    43. inv.setItem(5, creative);
    44.  
    45. player.openInventory(inv);
    46. }
    47.  
    48. @EventHandler
    49.  
    50. public void onInventoryClick(InventoryClickEvent event) {
    51. if(!ChatColor.stripColor(event.getInventory().getName()).equalsIgnoreCase("Server Selector"))
    52. return;
    53. Player player = (Player) event.getWhoClicked();
    54. event.setCancelled(true);
    55.  
    56. if(event.getCurrentItem()==null || event.getCurrentItem().getType()==Material.AIR || event.getCurrentItem().hasItemMeta())
    57. player.closeInventory();
    58. return;
    59. }
    60.  
    61. switch(event.getCurrentItem().getType()) {
    62. case DIAMOND_CHESTPLATE:
    63. teleportInWorld(player, 0, 50, 0);
    64. player.sendMessage(String.format("%sTeleported To %sSurvival%s!", ChatColor.GOLD, ChatColor.DARK_RED, ChatColor.GOLD));
    65. break;
    66. case GRASS:
    67. teleportInWorld(player, 20, 50, 20);
    68. player.sendMessage(String.format("%sTeleported To %sCreative%s!", ChatColor.GOLD, ChatColor.GREEN, ChatColor.GOLD));
    69. break;
    70. default:
    71. player.closeInventory();
    72. break;
    73. }
    74.  
    75. @EventHandler
    76.  
    77. public void onPlayerJoin(PlayerJoinEvent event) {
    78. event.getPlayer().getInventory().addItem(new ItemStack(Material.COMPASS));
    79. }
    80.  
    81. public void onPlayerInteract(PlayerInteractEvent event) {
    82. Action a = event.getAction();
    83. ItemStack is = event.getItem();
    84.  
    85. if (a== Action.PHYSICAL || is ==null || is.getType() == Material.AIR)
    86. return;
    87. }
    88.  
    89. }
     
  2. What doesn't work?
     
  3. Nothing works, the plugin doesn't even work and has some error. I'll try to work it out after I have lunch, but I want to see what you guys think.
     
  4. kekistar Post the stacktrace

    kekistar You need to register the events also the last event doesn't have the @EventHandler

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 9, 2016
  5. Solved,thanks everyone.
     
Thread Status:
Not open for further replies.

Share This Page