Skip to content

Instantly share code, notes, and snippets.

@kksym
Created November 30, 2012 21:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kksym/4178590 to your computer and use it in GitHub Desktop.
Save kksym/4178590 to your computer and use it in GitHub Desktop.
SayNoToBonemeal bukkit mod
name: SayNoToBonemeal
main: com.github.kksym.saynotobonemeal.SayNoToBonemeal
version: 1.0.0
package com.github.kksym.saynotobonemeal;
import org.bukkit.Material;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
public class SayNoToBonemeal extends JavaPlugin {
private PluginDescriptionFile description;
private class PlayerInteractListener implements Listener {
// Disables Bone Meal for growing trees
@EventHandler(priority = EventPriority.NORMAL)
public void onPlayerInteract(PlayerInteractEvent event) {
if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
// Get the item involved in the event
ItemStack item = event.getItem();
// Check if the item is an Ink Sack with data as 15 (Bone Meal)
if (item.getType() == Material.INK_SACK
&& item.getData().getData() == 15) {
// When the event has a block and it's a sapling of some
// sort, cancel the event
if (event.hasBlock()
&& event.getClickedBlock().getType() == Material.SAPLING) {
event.setCancelled(true);
}
}
}
}
}
@Override
public void onEnable() {
description = getDescription();
PluginManager manager = getServer().getPluginManager();
manager.registerEvents(new PlayerInteractListener(), this);
getLogger().info(description.getName() + " v" + description.getVersion() + " enabled!");
}
@Override
public void onDisable() {
getLogger().info(description.getName() + " v" + description.getVersion() + " disabled!");
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment