Solved Crafting permissions

Discussion in 'Plugin Development' started by inventorman101, Aug 2, 2013.

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

    inventorman101

    I have been working on a plugin and it has so far worked. I am adding new crafting recipes and permissions for those recipes. The permissions work when a player doesn't have them but when they do have them they still can't craft the item

    Code:java
    1.  
    2. public class CraftingEvent implements Listener
    3. {
    4.  
    5. @EventHandler(priority = EventPriority.HIGHEST)
    6. public void PICE(PrepareItemCraftEvent event)
    7. {
    8. Player p = (Player) event.getView().getPlayer();
    9. System.out.println("Player: " + p.getDisplayName());
    10.  
    11. if (!p.hasPermission("spawnercage.cage") && event.getInventory().getResult().getType()==Material.MOB_SPAWNER)
    12. {
    13. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    14. event.getInventory().setResult(null);
    15. }
    16.  
    17. else if (!p.hasPermission("spawnercage.creeper") && itemCheck(event, "Creeper Cage")==true)
    18. {
    19. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    20. event.getInventory().setResult(null);
    21. }
    22.  
    23. else if (!p.hasPermission("spawnercage.skeleton") && itemCheck(event, "Skeleton Cage")==true)
    24. {
    25. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    26. event.getInventory().setResult(null);
    27. }
    28.  
    29. else if (!p.hasPermission("spawnercage.spider") && itemCheck(event, "Spider Cage")==true)
    30. {
    31. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    32. event.getInventory().setResult(null);
    33. }
    34.  
    35. else if (!p.hasPermission("spawnercage.zombie") && itemCheck(event, "Zombie Cage")==true)
    36. {
    37. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    38. event.getInventory().setResult(null);
    39. }
    40.  
    41. else if (!p.hasPermission("spawnercage.slime") && itemCheck(event, "Slime Cage")==true)
    42. {
    43. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    44. event.getInventory().setResult(null);
    45. }
    46.  
    47. else if (!p.hasPermission("spawnercage.ghast") && itemCheck(event, "Ghast Cage")==true)
    48. {
    49. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    50. event.getInventory().setResult(null);
    51. }
    52.  
    53. else if (!p.hasPermission("spawnercage.pigman") && itemCheck(event, "Zombie Pigman Cage")==true)
    54. {
    55. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    56. event.getInventory().setResult(null);
    57. }
    58.  
    59. else if (!p.hasPermission("spawnercage.enderman") && itemCheck(event, "Enderman Cage")==true)
    60. {
    61. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    62. event.getInventory().setResult(null);
    63. }
    64.  
    65. else if (!p.hasPermission("spawnercage.cavespider") && itemCheck(event, "Cavespider Cage")==true)
    66. {
    67. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    68. event.getInventory().setResult(null);
    69. }
    70.  
    71. else if (!p.hasPermission("spawnercage.silverfish") && itemCheck(event, "Silverfish Cage")==true)
    72. {
    73. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    74. event.getInventory().setResult(null);
    75. }
    76.  
    77. else if (!p.hasPermission("spawnercage.blaze") && itemCheck(event, "Blaze Cage")==true)
    78. {
    79. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    80. event.getInventory().setResult(null);
    81. }
    82.  
    83. else if (!p.hasPermission("spawnercage.magma") && itemCheck(event, "Magma Cube Cage")==true)
    84. {
    85. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    86. event.getInventory().setResult(null);
    87. }
    88.  
    89. else if (!p.hasPermission("spawnercage.bat") && itemCheck(event, "Bat Cage")==true)
    90. {
    91. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    92. event.getInventory().setResult(null);
    93. }
    94.  
    95. else if (!p.hasPermission("spawnercage.witch") && itemCheck(event, "Witch Cage")==true)
    96. {
    97. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    98. event.getInventory().setResult(null);
    99. }
    100.  
    101. else if (!p.hasPermission("spawnercage.sheep") && itemCheck(event, "Sheep Cage")==true)
    102. {
    103. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    104. event.getInventory().setResult(null);
    105. }
    106.  
    107. else if (!p.hasPermission("spawnercage.cow") && itemCheck(event, "Cow Cage")==true)
    108. {
    109. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    110. event.getInventory().setResult(null);
    111. }
    112.  
    113. else if (!p.hasPermission("spawnercage.chicken") && itemCheck(event, "Chicken Cage")==true)
    114. {
    115. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    116. event.getInventory().setResult(null);
    117. }
    118.  
    119. else if (!p.hasPermission("spawnercage.squid") && itemCheck(event, "Squid Cage")==true)
    120. {
    121. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    122. event.getInventory().setResult(null);
    123. }
    124.  
    125. else if (!p.hasPermission("spawnercage.wolf") && itemCheck(event, "Wolf Cage")==true)
    126. {
    127. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    128. event.getInventory().setResult(null);
    129. }
    130.  
    131. else if (!p.hasPermission("spawnercage.mooshroom") && itemCheck(event, "Mooshroom Cage")==true)
    132. {
    133. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    134. event.getInventory().setResult(null);
    135. }
    136.  
    137. else if (!p.hasPermission("spawnercage.ocelot") && itemCheck(event, "Ocelot Cage")==true)
    138. {
    139. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    140. event.getInventory().setResult(null);
    141. }
    142.  
    143. else if (!p.hasPermission("spawnercage.horse") && itemCheck(event, "Horse Cage")==true)
    144. {
    145. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    146. event.getInventory().setResult(null);
    147. }
    148.  
    149. else if (!p.hasPermission("spawnercage.villager") && itemCheck(event, "Villager Cage")==true)
    150. {
    151. p.sendMessage(ChatColor.RED + "You don't have permission to craft this item!");
    152. event.getInventory().setResult(null);
    153. }
    154. }
    155.  
    156. public boolean itemCheck(PrepareItemCraftEvent event, String name)
    157. {
    158.  
    159. boolean returnValue = false;
    160.  
    161. ItemStack i = event.getInventory().getResult();
    162. if(i == null)return false; // Fail the test if there is no item in hand
    163. if(!i.hasItemMeta())return false; // Fail the test if item does not have metadata
    164. ItemMeta im = i.getItemMeta();
    165. if(!im.hasDisplayName())return false; // Fail the test if the item doesn't have a display name
    166. String dn = im.getDisplayName();
    167. List<String> lore = im.getLore();
    168. if(lore != null)
    169. {
    170. if(dn.indexOf(name) > -1 && i.getType() == ItemStack(Material.MOB_SPAWNER, 1))
    171. {
    172. returnValue = true;
    173. }
    174. }
    175.  
    176. return returnValue;
    177. }
    178.  
    179. private Material ItemStack(Material mobSpawner, int i) {
    180. // TODO Auto-generated method stub
    181. return null;
    182. }
    183. }
    184.  
     
  2. Offline

    17nhammond

    Have you tried the API?
     
    inventorman101 likes this.
  3. Offline

    inventorman101

    Ok? 17nhammond

    bump.

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

Share This Page