Prevent boats from destroying lily pads

This commit is contained in:
kaenganxt
2014-12-24 18:16:22 +01:00
parent 284e181abf
commit 5375bcf7d4
2 changed files with 28 additions and 0 deletions

View File

@@ -71,6 +71,7 @@ public class Setup {
new InvClick(Core.getMainClass());
new BlockSpread(Core.getMainClass());
new DropItem(Core.getMainClass());
new EntityChangeBlock(Core.getMainClass());
}
public static void setupClasses() {

View File

@@ -0,0 +1,27 @@
package de.anura.core.events;
import de.anura.core.API.Core;
import de.anura.core.AnuraCore;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityChangeBlockEvent;
public class EntityChangeBlock implements Listener {
public EntityChangeBlock(AnuraCore plugin) {
plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
@EventHandler
public void onEntityChangeBlock(EntityChangeBlockEvent event) {
if (event.getEntityType() == EntityType.BOAT && event.getEntity().getPassenger() instanceof Player && Core.getMainClass().getConfig().getBoolean("no-change-blocks")) {
Player P = (Player) event.getEntity().getPassenger();
if (!P.hasPermission("core.rules.blocks.break")) {
event.setCancelled(true);
P.sendBlockChange(event.getBlock().getLocation(), event.getBlock().getType(), event.getBlock().getData());
}
}
}
}