Prevent boats from destroying lily pads
This commit is contained in:
@@ -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() {
|
||||
|
||||
27
src/de/anura/core/events/EntityChangeBlock.java
Normal file
27
src/de/anura/core/events/EntityChangeBlock.java
Normal 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());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user