Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package pl.lotus.core.listeners;
- import pl.lotus.core.data.base.DropData;
- import org.bukkit.Material;
- import pl.lotus.core.data.base.DropType;
- import pl.lotus.core.managers.DropManager;
- import org.bukkit.event.EventPriority;
- import org.bukkit.event.EventHandler;
- import java.util.Iterator;
- import pl.lotus.core.data.base.Guild;
- import pl.lotus.core.utils.TimeUtil;
- import pl.lotus.core.lang.Config;
- import org.bukkit.command.CommandSender;
- import java.util.Collection;
- import pl.lotus.core.utils.Util;
- import pl.lotus.core.lang.Lang;
- import org.bukkit.block.Block;
- import pl.lotus.core.managers.GuildManager;
- import org.bukkit.event.entity.EntityExplodeEvent;
- import org.bukkit.event.Listener;
- public class EntityExplodeListener implements Listener
- {
- @EventHandler(priority = EventPriority.HIGHEST)
- public void onEntityExplode(final EntityExplodeEvent e) {
- Guild g = GuildManager.getGuild(e.getEntity().getLocation());
- if (g == null) {
- for (final Block b : e.blockList()) {
- if (g != null) {
- continue;
- }
- final Guild o = GuildManager.getGuild(b.getLocation());
- if (o == null) {
- continue;
- }
- g = o;
- }
- }
- if (g == null) {
- return;
- }
- g.setLastExplodeTime(System.currentTimeMillis());
- Util.sendMsg((Collection<? extends CommandSender>)g.getOnlineMembers(), Lang.MSG_EXPLODE_EXPLODETNT);
- if (!Config.TNT_CUBOID_PROTECTION_ENABLED) {
- return;
- }
- if (g.getCreateTime() + TimeUtil.HOUR.getTime(Config.TNT_CUBOID_PROTECTION_HOWHOUR) > System.currentTimeMillis()) {
- e.setCancelled(true);
- }
- }
- @EventHandler(priority = EventPriority.MONITOR)
- public void onEntityExplode312(final EntityExplodeEvent event) {
- if (event.isCancelled()) {
- return;
- }
- final Iterator<Block> blocks = event.blockList().iterator();
- Block b = null;
- while (blocks.hasNext()) {
- b = blocks.next();
- final DropData d = DropManager.getDropData(b.getType());
- if (d.getDropType() == DropType.CANCEL_DROP) {
- b.setType(Material.AIR);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement