config help and disabling a public void?

Discussion in 'Plugin Development' started by SandKastle, Jul 7, 2013.

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

    SandKastle

    So i am trying to add a config to my plugin for disabling permissions or not. Would it be possible to disable a public void if something were set to true in the config and enable it if false?

    Source
    Code:java
    1. package me.sandkastle.craftablehorsearmor;
    2.  
    3. import org.bukkit.ChatColor;
    4. import org.bukkit.Material;
    5. import org.bukkit.Server;
    6. import org.bukkit.entity.Player;
    7. import org.bukkit.event.EventHandler;
    8. import org.bukkit.event.EventPriority;
    9. import org.bukkit.event.Listener;
    10. import org.bukkit.event.inventory.CraftItemEvent;
    11. import org.bukkit.inventory.ItemStack;
    12. import org.bukkit.inventory.ShapedRecipe;
    13. import org.bukkit.plugin.java.JavaPlugin;
    14.  
    15. public class Main extends JavaPlugin implements Listener{
    16. public void onEnable(){
    17. Server server = getServer();
    18. getServer().getPluginManager().registerEvents(this, this);
    19.  
    20. ShapedRecipe iha = new ShapedRecipe(new ItemStack(417));
    21. iha.shape(new String[] { " I", "IBI", "III" });
    22. iha.setIngredient('I', Material.IRON_INGOT);
    23. iha.setIngredient('B', Material.WOOL, 15);
    24.  
    25. ShapedRecipe gha = new ShapedRecipe(new ItemStack(418));
    26. gha.shape(new String[] { " I", "IBI", "III" });
    27. gha.setIngredient('I', Material.GOLD_INGOT);
    28. gha.setIngredient('B', Material.WOOL, 14);
    29.  
    30. ShapedRecipe dha = new ShapedRecipe(new ItemStack(419));
    31. dha.shape(new String[] { " I", "IBI", "III" });
    32. dha.setIngredient('I', Material.DIAMOND);
    33. dha.setIngredient('B', Material.WOOL, 11);
    34.  
    35. ShapedRecipe saddle = new ShapedRecipe(new ItemStack(329));
    36. saddle.shape(new String[] { "III", "IBI" });
    37. saddle.setIngredient('I', Material.LEATHER);
    38. saddle.setIngredient('B', Material.IRON_INGOT);
    39.  
    40. ShapedRecipe tag = new ShapedRecipe(new ItemStack(421));
    41. tag.shape(new String[] { " I", " B ", "B " });
    42. tag.setIngredient('I', Material.STRING);
    43. tag.setIngredient('B', Material.PAPER);
    44.  
    45. server.addRecipe(iha);
    46. server.addRecipe(gha);
    47. server.addRecipe(dha);
    48. server.addRecipe(saddle);
    49. server.addRecipe(tag);
    50. }
    51.  
    52. @EventHandler(priority=EventPriority.HIGHEST)
    53. public void onItemEvent(CraftItemEvent e) {
    54. if(e == null){
    55. return;
    56. }
    57. if(e.getInventory().getResult() == null){
    58. return;
    59. }
    60. Player p = (Player)e.getView().getPlayer();
    61. if ((!p.hasPermission("cha.saddle")) && (e.getInventory().getResult().getTypeId() == 329)) {
    62. p.sendMessage(ChatColor.RED + "You don't have permission to craft a saddle!");
    63. e.getInventory().setResult(null);
    64. }
    65.  
    66. else if ((!p.hasPermission("cha.iha")) && (e.getInventory().getResult().getTypeId() == 417)) {
    67. p.sendMessage(ChatColor.RED + "You don't have permission to craft iron horse armor!");
    68. e.getInventory().setResult(null);
    69. }
    70.  
    71. else if ((!p.hasPermission("cha.gha")) && (e.getInventory().getResult().getTypeId() == 418)) {
    72. p.sendMessage(ChatColor.RED + "You don't have permission to craft gold horse armor!");
    73. e.getInventory().setResult(null);
    74. }
    75.  
    76. else if ((!p.hasPermission("cha.dha")) && (e.getInventory().getResult().getTypeId() == 419)) {
    77. p.sendMessage(ChatColor.RED + "You don't have permission to craft diamond horse armor!");
    78. e.getInventory().setResult(null);
    79. }
    80.  
    81. else if ((!p.hasPermission("cha.tag")) && (e.getInventory().getResult().getTypeId() == 421)) {
    82. p.sendMessage(ChatColor.RED + "You don't have permission to craft a nametag!");
    83. e.getInventory().setResult(null);
    84. }
    85. }
    86. }


    I do not know how to fully use a config file yet so i am asking here.
     
  2. Offline

    SnipsRevival

    I am not sure if there is a better way, but I guess you could immediately return in the method if the config is set to true.
     
  3. Offline

    SandKastle


    how would i do this? I know how to return it if its true but how would i make the use the config file itself?
     
  4. Offline

    SnipsRevival

    if(getConfig().getBoolean("ConfigPath") == true) return; SandKastle
     
  5. Offline

    SandKastle


    I mean thats what i know how to do, its i dont know how generate the config file itself.
     
  6. Offline

    SnipsRevival

  7. Offline

    SandKastle

Thread Status:
Not open for further replies.

Share This Page