I can't seem to get my inventory plugin to work right

Discussion in 'Plugin Development' started by PerezHD, Oct 19, 2014.

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

    PerezHD

    Well hey guys, I have been starting to create a inventory plugin, and know I am finished, when I load it in game and type the command in-game, it opens the inventory I created, but it doesn't run the command I setup for it, all it does is just lets me take the items and keep them. Please help me
    Code:java
    1. package me.perezhd.flexkit;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.ChatColor;
    5. import org.bukkit.Material;
    6. import org.bukkit.command.Command;
    7. import org.bukkit.command.CommandSender;
    8. import org.bukkit.entity.Player;
    9. import org.bukkit.event.EventHandler;
    10. import org.bukkit.event.Listener;
    11. import org.bukkit.event.inventory.InventoryClickEvent;
    12. import org.bukkit.inventory.Inventory;
    13. import org.bukkit.inventory.ItemStack;
    14. import org.bukkit.inventory.meta.ItemMeta;
    15. import org.bukkit.plugin.java.JavaPlugin;
    16.  
    17. public class Main extends JavaPlugin implements Listener
    18. {
    19. public void onEnable()
    20. {
    21. saveDefaultConfig();
    22. Bukkit.getServer().getLogger().info("FlexKitGUI has been loaded");
    23. Bukkit.getServer().getPluginManager().registerEvents(this, this);
    24. }
    25. {
    26. }
    27.  
    28. @EventHandler
    29. public void ClickListener(InventoryClickEvent event) {
    30. Player pal = (Player)event.getWhoClicked();
    31.  
    32. if (pal.hasPermission("kitselector.open")) {
    33. if (event.getInventory().getName() == ChatColor.AQUA + "" + ChatColor.BOLD + "Flex" + ChatColor.YELLOW + "" + ChatColor.BOLD + "Kits") {
    34. if (event.getSlot() == 0) {
    35. Player pl = (Player)event.getWhoClicked();
    36. pl.closeInventory();
    37. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.one.command"));
    38. }
    39. if (event.getSlot() == 2) {
    40. Player pl = (Player)event.getWhoClicked();
    41. pl.closeInventory();
    42. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.two.command"));
    43. }
    44.  
    45. if (event.getSlot() == 3) {
    46. Player pl = (Player)event.getWhoClicked();
    47. pl.closeInventory();
    48. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.three.command"));
    49. }
    50. if (event.getSlot() == 4) {
    51. Player pl = (Player)event.getWhoClicked();
    52. pl.closeInventory();
    53. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.four.command"));
    54. }
    55. if (event.getSlot() == 5) {
    56. Player pl = (Player)event.getWhoClicked();
    57. pl.closeInventory();
    58. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.five.command"));
    59. }
    60. if (event.getSlot() == 6) {
    61. Player pl = (Player)event.getWhoClicked();
    62. pl.closeInventory();
    63. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.six.command"));
    64. }
    65.  
    66. if (event.getSlot() == 9) {
    67. Player pl = (Player)event.getWhoClicked();
    68. pl.closeInventory();
    69. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.nine.command"));
    70. }
    71.  
    72. if (event.getSlot() == 11) {
    73. Player pl = (Player)event.getWhoClicked();
    74. pl.closeInventory();
    75. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.eleven.command"));
    76. }
    77.  
    78. if (event.getSlot() == 12) {
    79. Player pl = (Player)event.getWhoClicked();
    80. pl.closeInventory();
    81. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.twelve.command"));
    82. }
    83.  
    84. if (event.getSlot() == 13) {
    85. Player pl = (Player)event.getWhoClicked();
    86. pl.closeInventory();
    87. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.thirteen.command"));
    88. }
    89.  
    90. if (event.getSlot() == 14) {
    91. Player pl = (Player)event.getWhoClicked();
    92. pl.closeInventory();
    93. pl.chat(Main.this.getConfig().getString("FlexSelectorGUI.fourteen.command"));
    94. }
    95. }
    96. }
    97. }
    98.  
    99. public void onDisable()
    100. {
    101. System.out.println("[FlexKitGUI]: Plugin Disabled...");
    102. }
    103.  
    104. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
    105. {
    106. if ((sender instanceof Player)) {
    107. Player p = (Player)sender;
    108. if ((cmd.getName().equals("kit") || cmd.getName().equals("kits")) &&
    109. (p.hasPermission("kitselector.open")))
    110. {
    111. ItemStack slot0 = new ItemStack(Material.CHEST, 1);
    112. ItemStack slot2 = new ItemStack(Material.DIAMOND_SWORD, 1);
    113. ItemStack slot3 = new ItemStack(Material.GLASS_BOTTLE, 1);
    114. ItemStack slot4 = new ItemStack(Material.DIAMOND_CHESTPLATE, 1);
    115. ItemStack slot5 = new ItemStack(Material.GOLD_SWORD, 1);
    116. ItemStack slot6 = new ItemStack(Material.BOW, 1);
    117. ItemStack slot9 = new ItemStack(Material.CHEST, 1);
    118. ItemStack slot11 = new ItemStack(Material.IRON_BARDING, 1);
    119. ItemStack slot12 = new ItemStack(Material.GOLD_BARDING, 1);
    120. ItemStack slot13 = new ItemStack(Material.DIAMOND_BARDING, 1);
    121. ItemStack slot14 = new ItemStack(Material.NETHER_STAR, 1);
    122.  
    123. ItemMeta meta0 = slot0.getItemMeta();
    124. ItemMeta meta2 = slot2.getItemMeta();
    125. ItemMeta meta3 = slot3.getItemMeta();
    126. ItemMeta meta4 = slot4.getItemMeta();
    127. ItemMeta meta5 = slot5.getItemMeta();
    128. ItemMeta meta6 = slot6.getItemMeta();
    129. ItemMeta meta9 = slot9.getItemMeta();
    130. ItemMeta meta11 = slot11.getItemMeta();
    131. ItemMeta meta12 = slot12.getItemMeta();
    132. ItemMeta meta13 = slot13.getItemMeta();
    133. ItemMeta meta14 = slot14.getItemMeta();
    134.  
    135. meta0.setDisplayName(ChatColor.AQUA + "" + ChatColor.BOLD + getConfig().getString("FlexSelectorGUI.one.title"));
    136. meta2.setDisplayName(ChatColor.RED + getConfig().getString("FlexSelectorGUI.two.title"));
    137. meta3.setDisplayName(ChatColor.LIGHT_PURPLE + getConfig().getString("FlexSelectorGUI.three.title"));
    138. meta4.setDisplayName(ChatColor.LIGHT_PURPLE + getConfig().getString("FlexSelectorGUI.four.title"));
    139. meta5.setDisplayName(ChatColor.LIGHT_PURPLE + getConfig().getString("FlexSelectorGUI.five.title"));
    140. meta6.setDisplayName(ChatColor.LIGHT_PURPLE + getConfig().getString("FlexSelectorGUI.six.title"));
    141. meta9.setDisplayName(ChatColor.AQUA + "" + ChatColor.BOLD + getConfig().getString("FlexSelectorGUI.nine.title"));
    142. meta11.setDisplayName(ChatColor.DARK_PURPLE + getConfig().getString("FlexSelectorGUI.eleven.title"));
    143. meta12.setDisplayName(ChatColor.DARK_AQUA + getConfig().getString("FlexSelectorGUI.twelve.title"));
    144. meta13.setDisplayName(ChatColor.LIGHT_PURPLE + getConfig().getString("FlexSelectorGUI.thirteen.title"));
    145. meta14.setDisplayName(ChatColor.YELLOW + getConfig().getString("FlexSelectorGUI.fourteen.title"));
    146.  
    147. slot0.setItemMeta(meta0);
    148. slot2.setItemMeta(meta2);
    149. slot3.setItemMeta(meta3);
    150. slot4.setItemMeta(meta4);
    151. slot5.setItemMeta(meta5);
    152. slot6.setItemMeta(meta6);
    153. slot9.setItemMeta(meta9);
    154. slot11.setItemMeta(meta11);
    155. slot12.setItemMeta(meta12);
    156. slot13.setItemMeta(meta13);
    157. slot14.setItemMeta(meta14);
    158.  
    159. Inventory x100 = Bukkit.createInventory(null, 18, ChatColor.AQUA + "" + ChatColor.BOLD + "Flex" + ChatColor.YELLOW + "" + ChatColor.BOLD + "Kits");
    160.  
    161. x100.setItem(0, slot0);
    162. x100.setItem(2, slot2);
    163. x100.setItem(3, slot3);
    164. x100.setItem(4, slot4);
    165. x100.setItem(5, slot5);
    166. x100.setItem(6, slot6);
    167. x100.setItem(9, slot9);
    168. x100.setItem(11, slot11);
    169. x100.setItem(12, slot12);
    170. x100.setItem(13, slot13);
    171. x100.setItem(14, slot14);
    172.  
    173. p.openInventory(x100);
    174. }
    175. }
    176. return true;
    177. }
    178. }
     
  2. Offline

    teej107

  3. Offline

    yewtree8

    This is also really messy, try creating a method to setup the inventory, then apply it on the command, this way the method could also be retrieved universally, and stops is so that you copy and paste the same code, just a suggestion:)
     
Thread Status:
Not open for further replies.

Share This Page