Solved NEED PLUGIN HELP!

Discussion in 'Bukkit Help' started by MrDent009, Jun 24, 2012.

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

    MrDent009

    I need help with this new minecraft/bukkit plugin.
    I keep getting an error when I export. I need your help to tell me what I am doing wrong! [Plugin Name = BadBlock] This plugin will disable users to place specific blocks. Here is the classes!


    BadBlock.java [errors]



    package me.Dent009.BadBlock;

    import java.util.logging.Logger;

    import org.bukkit.event.Event;
    import org.bukkit.plugin.PluginDescriptionFile;
    import org.bukkit.plugin.PluginManager;
    import org.bukkit.plugin.java.JavaPlugin;

    public class BadBlock extends JavaPlugin {
    public static BadBlock plugin;
    public final Logger logger = Logger.getLogger("Minecraft");
    public final MyBlockListener BlockListener = new MyBlockListener(this); <------ERROR

    public void onDisable() {
    PluginDescriptionFile pdfFile = this.getDescription();
    this.logger.info(pdfFile.getName() + " is now disabled ");

    }

    public void onEnable() {
    PluginDescriptionFile pdfFile = this.getDescription();
    this.logger.info(pdfFile.getName() + " is now enabled! ");
    } <---------ERROR


    -----------------------------------------------------LINEBREAK [not in real code]----------------------------------------------

    MyBlockListener.java[this has no errors.]

    package me.Dent009.BadBlock;

    import org.bukkit.ChatColor;
    import org.bukkit.Material;
    import org.bukkit.entity.Player;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.BlockBreakEvent;
    import org.bukkit.event.block.BlockIgniteEvent;
    import org.bukkit.event.block.BlockPlaceEvent;

    public class MyBlockListener implements Listener {

    public static BadBlock plugin;
    public static Material[] placedBlacklist = {Material.TNT, Material.LAVA_BUCKET, Material.LAVA};
    public static Material[] destroyedBlacklist = {Material.TNT, Material.GLOWSTONE};

    public MyBlockListener(BadBlock instance) {
    plugin = instance;
    }

    public void onBlockPlace (BlockPlaceEvent event) {
    Material block = event.getBlock().getType();
    Player player = event.getPlayer();
    for (Material blockedBlock : placedBlacklist) {
    if(blockedBlock == block) {
    player.sendMessage(ChatColor.AQUA + " No! That is a BadBlock! " + player.getDisplayName());
    event.setCancelled(true);
    }
    }
    }
    public void onBlockBreak (BlockBreakEvent event) {
    Material block = event.getBlock().getType();
    Player player = event.getPlayer();
    for (Material blockedBlock : destroyedBlacklist) {
    if(blockedBlock == block) {
    player.sendMessage(ChatColor.AQUA + " No! That is a BadBlock! " + player.getDisplayName());
    event.setCancelled(true);
    }
    }
    }

    public void onBlockIgnite(BlockIgniteEvent event) {
    Player player = event.getPlayer();
    player.sendMessage(ChatColor.AQUA + " No! That is a BadBlock! " + player.getDisplayName());
    event.setCancelled(true);
    }


    }
     
  2. Offline

    CRAZYxMUNK3Y

    1) This should have been in Plugin Development
    2) Change to the following (Commented what i changed)
    Main
    Code:java
    1.  
    2. package me.Dent009.BadBlock;
    3.  
    4. import java.util.logging.Logger;
    5.  
    6. import org.bukkit.plugin.PluginDescriptionFile;
    7. import org.bukkit.plugin.java.JavaPlugin;
    8.  
    9. public class BadBlock extends JavaPlugin {
    10. // Removed plugin variable, not needed
    11. public Logger logger = Logger.getLogger("Minecraft"); // Removed final modifier
    12. public MyBlockListener BlockListener; // Added rest to onEnable method
    13.  
    14. public void onDisable() {
    15. PluginDescriptionFile pdfFile = this.getDescription();
    16. this.logger.info(pdfFile.getName() + " is now disabled ");
    17.  
    18. }
    19.  
    20. public void onEnable() {
    21. PluginDescriptionFile pdfFile = this.getDescription();
    22. this.logger.info(pdfFile.getName() + " is now enabled! ");
    23. BlockListener = new MyBlockListener(this);
    24. }
    25. }
    26.  


    Listener
    Code:java
    1.  
    2. package me.Dent009.BadBlock;
    3.  
    4. import org.bukkit.ChatColor;
    5. import org.bukkit.Material;
    6. import org.bukkit.entity.Player;
    7. import org.bukkit.event.Listener;
    8. import org.bukkit.event.block.BlockBreakEvent;
    9. import org.bukkit.event.block.BlockIgniteEvent;
    10. import org.bukkit.event.block.BlockPlaceEvent;
    11.  
    12. public class MyBlockListener implements Listener {
    13.  
    14. public BadBlock plugin; // Removed static modifier
    15. public static Material[] placedBlacklist = { Material.TNT,
    16. Material.LAVA_BUCKET, Material.LAVA };
    17. public static Material[] destroyedBlacklist = { Material.TNT,
    18. Material.GLOWSTONE };
    19.  
    20. public MyBlockListener(BadBlock instance) {
    21. plugin = instance;
    22. }
    23.  
    24. public void onBlockPlace(BlockPlaceEvent event) {
    25. Material block = event.getBlock().getType();
    26. Player player = event.getPlayer();
    27. for (Material blockedBlock : placedBlacklist) {
    28. if (blockedBlock == block) {
    29. player.sendMessage(ChatColor.AQUA + " No! That is a BadBlock! "
    30. + player.getDisplayName());
    31. event.setCancelled(true);
    32. }
    33. }
    34. }
    35.  
    36. public void onBlockBreak(BlockBreakEvent event) {
    37. Material block = event.getBlock().getType();
    38. Player player = event.getPlayer();
    39. for (Material blockedBlock : destroyedBlacklist) {
    40. if (blockedBlock == block) {
    41. player.sendMessage(ChatColor.AQUA + " No! That is a BadBlock! "
    42. + player.getDisplayName());
    43. event.setCancelled(true);
    44. }
    45. }
    46. }
    47.  
    48. public void onBlockIgnite(BlockIgniteEvent event) {
    49. Player player = event.getPlayer();
    50. player.sendMessage(ChatColor.AQUA + " No! That is a BadBlock! "
    51. + player.getDisplayName());
    52. event.setCancelled(true);
    53. }
    54.  
    55. }
    56.  
     
Thread Status:
Not open for further replies.

Share This Page