org.bukkit.event.entity.EntityChangeBlockEvent Java Examples
The following examples show how to use
org.bukkit.event.entity.EntityChangeBlockEvent.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: BukkitPlotListener.java From PlotMe-Core with GNU General Public License v3.0 | 6 votes |
@EventHandler(ignoreCancelled = true) public void onSandCannon(EntityChangeBlockEvent event) { BukkitEntity entity = new BukkitEntity(event.getEntity()); if (manager.isPlotWorld(entity) && event.getEntityType().equals(EntityType.FALLING_BLOCK)) { if (event.getTo().equals(Material.AIR)) { entity.setMetadata("plotFallBlock", new FixedMetadataValue(plugin, event.getBlock().getLocation())); } else { List<MetadataValue> values = entity.getMetadata("plotFallBlock"); if (!values.isEmpty()) { org.bukkit.Location spawn = (org.bukkit.Location) (values.get(0).value()); org.bukkit.Location createdNew = event.getBlock().getLocation(); if (spawn.getBlockX() != createdNew.getBlockX() || spawn.getBlockZ() != createdNew.getBlockZ()) { event.setCancelled(true); } } } } }
Example #2
Source File: FlyingMobEvents.java From askyblock with GNU General Public License v2.0 | 6 votes |
/** * Withers change blocks to air after they are hit (don't know why) * This prevents this when the wither has been spawned by a visitor * @param e - event */ @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void WitherChangeBlocks(final EntityChangeBlockEvent e) { if (DEBUG) { plugin.getLogger().info(e.getEventName()); } // Only cover withers in the island world if (e.getEntityType() != EntityType.WITHER || !IslandGuard.inWorld(e.getEntity()) ) { return; } if (mobSpawnInfo.containsKey(e.getEntity())) { // We know about this wither if (DEBUG) { plugin.getLogger().info("DEBUG: We know about this wither"); } if (!mobSpawnInfo.get(e.getEntity()).inIslandSpace(e.getEntity().getLocation())) { // Cancel the block changes if (DEBUG) { plugin.getLogger().info("DEBUG: cancelled wither block change"); } e.setCancelled(true); } } }
Example #3
Source File: BlockDropsMatchModule.java From PGM with GNU Affero General Public License v3.0 | 6 votes |
private void replaceBlock(BlockDrops drops, Block block, MatchPlayer player) { if (drops.replacement != null) { EntityChangeBlockEvent event = new EntityChangeBlockEvent( player.getBukkit(), block, drops.replacement.getItemType(), drops.replacement.getData()); match.callEvent(event); if (!event.isCancelled()) { BlockState state = block.getState(); state.setType(drops.replacement.getItemType()); state.setData(drops.replacement); state.update(true, true); } } }
Example #4
Source File: IslandGuard.java From askyblock with GNU General Public License v2.0 | 6 votes |
/** * Allows or prevents enderman griefing */ @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onEndermanGrief(final EntityChangeBlockEvent e) { if (DEBUG) { plugin.getLogger().info(e.getEventName()); } if (!(e.getEntity() instanceof Enderman)) { return; } if (!inWorld(e.getEntity())) { return; } // Prevent Enderman griefing at spawn if (plugin.getGrid() != null && plugin.getGrid().isAtSpawn(e.getEntity().getLocation())) { e.setCancelled(true); } if (Settings.allowEndermanGriefing) return; // Stop the Enderman from griefing // plugin.getLogger().info("Enderman stopped from griefing); e.setCancelled(true); }
Example #5
Source File: ShopProtectionListener.java From QuickShop-Reremake with GNU General Public License v3.0 | 6 votes |
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) public void onMobChangeBlock(EntityChangeBlockEvent event) { if (!useEnhanceProtection) { return; } final Shop shop = getShopNature(event.getBlock().getLocation(), true); if (shop == null) { return; } if (plugin.getConfig().getBoolean("protect.entity")) { event.setCancelled(true); return; } plugin.log("Deleting shop "+shop+" request by mob changing."); shop.delete(); }
Example #6
Source File: LWCBlockListener.java From Modern-LWC with MIT License | 6 votes |
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) public void onEntityChangeBlock(EntityChangeBlockEvent event) { if (!LWC.ENABLED) { return; } LWC lwc = LWC.getInstance(); Block block = event.getBlock(); if (!lwc.isProtectable(block)) { return; } Protection protection = lwc.findProtection(block); if (protection != null) { event.setCancelled(true); } }
Example #7
Source File: BlockListener.java From civcraft with GNU General Public License v2.0 | 6 votes |
@EventHandler(priority = EventPriority.NORMAL) public void onEntityBlockChange(EntityChangeBlockEvent event) { bcoord.setFromLocation(event.getBlock().getLocation()); StructureBlock sb = CivGlobal.getStructureBlock(bcoord); if (sb != null) { event.setCancelled(true); return; } RoadBlock rb = CivGlobal.getRoadBlock(bcoord); if (rb != null) { event.setCancelled(true); return; } CampBlock cb = CivGlobal.getCampBlock(bcoord); if (cb != null) { event.setCancelled(true); return; } return; }
Example #8
Source File: WorldListener.java From BedWars with GNU Lesser General Public License v3.0 | 5 votes |
@EventHandler public void onEntityChangeBlock(EntityChangeBlockEvent event) { if (event.isCancelled()) { return; } for (String gameName : Main.getGameNames()) { Game game = Main.getGame(gameName); if (GameCreator.isInArea(event.getBlock().getLocation(), game.getPos1(), game.getPos2())) { if (game.getStatus() == GameStatus.RUNNING || game.getStatus() == GameStatus.GAME_END_CELEBRATING) { if (event.getEntityType() == EntityType.FALLING_BLOCK && game.getOriginalOrInheritedAllowBlockFalling()) { if (event.getBlock().getType() != event.getTo()) { if (!game.getRegion().isBlockAddedDuringGame(event.getBlock().getLocation())) { if (event.getBlock().getType() != Material.AIR) { game.getRegion().putOriginalBlock(event.getBlock().getLocation(), event.getBlock().getState()); } game.getRegion().addBuiltDuringGame(event.getBlock().getLocation()); } } return; // allow block fall } } if (game.getStatus() != GameStatus.DISABLED) { event.setCancelled(true); } } } }
Example #9
Source File: BlockPhysicsListener.java From Slimefun4 with GNU General Public License v3.0 | 5 votes |
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true) public void onBlockFall(EntityChangeBlockEvent e) { if (e.getEntity().getType() == EntityType.FALLING_BLOCK && BlockStorage.hasBlockInfo(e.getBlock())) { e.setCancelled(true); FallingBlock block = (FallingBlock) e.getEntity(); if (block.getDropItem()) { block.getWorld().dropItemNaturally(block.getLocation(), new ItemStack(block.getBlockData().getMaterial(), 1)); } } }
Example #10
Source File: WitherListener.java From Slimefun4 with GNU General Public License v3.0 | 5 votes |
@EventHandler(ignoreCancelled = true) public void onWitherDestroy(EntityChangeBlockEvent e) { if (e.getEntity().getType() == EntityType.WITHER) { String id = BlockStorage.checkID(e.getBlock()); if (id != null) { WitherProof witherproof = SlimefunPlugin.getRegistry().getWitherProofBlocks().get(id); if (witherproof != null) { e.setCancelled(true); witherproof.onAttack(e.getBlock(), (Wither) e.getEntity()); } } } }
Example #11
Source File: SeismicAxeListener.java From Slimefun4 with GNU General Public License v3.0 | 5 votes |
@EventHandler public void onBlockFall(EntityChangeBlockEvent e) { if (seismicAxe == null || seismicAxe.isDisabled()) { return; } if (e.getEntity().getType() == EntityType.FALLING_BLOCK && e.getEntity().hasMetadata("seismic_axe")) { e.setCancelled(true); e.getEntity().removeMetadata("seismic_axe", SlimefunPlugin.instance); e.getEntity().remove(); } }
Example #12
Source File: PlayerEvents.java From uSkyBlock with GNU General Public License v3.0 | 5 votes |
@EventHandler public void onLavaAbsorption(EntityChangeBlockEvent event) { if (!plugin.getWorldManager().isSkyWorld(event.getBlock().getWorld())) { return; } if (isLavaSource(event.getBlock().getBlockData())) { if (event.getTo() != Material.LAVA) { event.setCancelled(true); // TODO: R4zorax - 21-07-2018: missing datavalue (might convert stuff - exploit) ItemStack item = new ItemStack(event.getTo(), 1); Location above = event.getBlock().getLocation().add(0, 1, 0); event.getBlock().getWorld().dropItemNaturally(above, item); } } }
Example #13
Source File: ChunkListener.java From FastAsyncWorldedit with GNU General Public License v3.0 | 5 votes |
@EventHandler(priority = EventPriority.LOWEST) public void onBlockChange(EntityChangeBlockEvent event) { if (physicsFreeze) { event.setCancelled(true); return; } Block block = event.getBlock(); int x = block.getX(); int z = block.getZ(); int cx = x >> 4; int cz = z >> 4; int[] count = getCount(cx, cz); if (count[1] >= Settings.IMP.TICK_LIMITER.FALLING) { event.setCancelled(true); return; } if (event.getEntityType() == EntityType.FALLING_BLOCK) { if (++count[1] >= Settings.IMP.TICK_LIMITER.FALLING) { // Only cancel falling blocks when it's lagging if (Fawe.get().getTimer().getTPS() < 18) { cancelNearby(cx, cz); if (rateLimit <= 0) { rateLimit = 20; Fawe.debug("[FAWE `tick-limiter`] Detected and cancelled falling block lag source at " + block.getLocation()); } event.setCancelled(true); return; } else { count[1] = 0; } } } }
Example #14
Source File: FlagAnvilSpleef.java From HeavySpleef with GNU General Public License v3.0 | 5 votes |
@SuppressWarnings("deprecation") @EventHandler public void onEntityChangeBlockEvent(EntityChangeBlockEvent e) { EntityType type = e.getEntityType(); if (type != EntityType.FALLING_BLOCK) { return; } Entity entity = e.getEntity(); if (!fallingAnvils.contains(entity)) { return; } Block block = e.getBlock(); Block under = block.getRelative(BlockFace.DOWN); fallingAnvils.remove(entity); e.setCancelled(true); if (!game.canSpleef(under)) { entity.remove(); return; } Material material = under.getType(); under.setType(Material.AIR); World world = under.getWorld(); Sound anvilLandSound = Game.getSoundEnumType("ANVIL_LAND"); if (anvilLandSound != null) { world.playSound(block.getLocation(), anvilLandSound, 1.0f, 1.0f); } if (game.getPropertyValue(GameProperty.PLAY_BLOCK_BREAK)) { world.playEffect(under.getLocation(), Effect.STEP_SOUND, material.getId()); } }
Example #15
Source File: SignListener.java From PlayerVaults with GNU General Public License v3.0 | 5 votes |
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true) public void onEntityChangeBlock(EntityChangeBlockEvent event) { if (!PlayerVaults.getInstance().getConf().isSigns()) { return; } blockChangeCheck(event.getBlock().getLocation()); }
Example #16
Source File: BlockTransformListener.java From ProjectAres with GNU Affero General Public License v3.0 | 5 votes |
@EventWrapper public void onEntityChangeBlock(final EntityChangeBlockEvent event) { // Igniting TNT with an arrow is already handled from the ExplosionPrimeEvent if(event.getEntity() instanceof Arrow && event.getBlock().getType() == Material.TNT && event.getTo() == Material.AIR) return; callEvent(event, event.getBlock().getState(), BlockStateUtils.cloneWithMaterial(event.getBlock(), event.getToData()), entityResolver.getOwner(event.getEntity())); }
Example #17
Source File: BlockDropsMatchModule.java From ProjectAres with GNU Affero General Public License v3.0 | 5 votes |
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true) public void onFallingBlockLand(BlockTransformEvent event) { if(event.getCause() instanceof EntityChangeBlockEvent) { Entity entity = ((EntityChangeBlockEvent) event.getCause()).getEntity(); if(entity instanceof FallingBlock && this.fallingBlocksThatWillNotLand.remove(entity)) { event.setCancelled(true); } } }
Example #18
Source File: BlockDropsMatchModule.java From ProjectAres with GNU Affero General Public License v3.0 | 5 votes |
private void replaceBlock(BlockDrops drops, Block block, MatchPlayer player) { if(drops.replacement != null) { EntityChangeBlockEvent event = new EntityChangeBlockEvent(player.getBukkit(), block, drops.replacement); getMatch().callEvent(event); if(!event.isCancelled()) { BlockState state = block.getState(); state.setType(drops.replacement.getItemType()); state.setData(drops.replacement); state.update(true, true); } } }
Example #19
Source File: WorldListener.java From BedWars with GNU Lesser General Public License v3.0 | 5 votes |
@EventHandler public void onEntityChangeBlock(EntityChangeBlockEvent event) { if (event.isCancelled()) { return; } for (String gameName : Main.getGameNames()) { Game game = Main.getGame(gameName); if (GameCreator.isInArea(event.getBlock().getLocation(), game.getPos1(), game.getPos2())) { if (game.getStatus() == GameStatus.RUNNING || game.getStatus() == GameStatus.GAME_END_CELEBRATING) { if (event.getEntityType() == EntityType.FALLING_BLOCK && game.getOriginalOrInheritedAllowBlockFalling()) { if (event.getBlock().getType() != event.getTo()) { if (!game.getRegion().isBlockAddedDuringGame(event.getBlock().getLocation())) { if (event.getBlock().getType() != Material.AIR) { game.getRegion().putOriginalBlock(event.getBlock().getLocation(), event.getBlock().getState()); } game.getRegion().addBuiltDuringGame(event.getBlock().getLocation()); } } return; // allow block fall } } if (game.getStatus() != GameStatus.DISABLED) { event.setCancelled(true); } } } }
Example #20
Source File: BlockTransformListener.java From PGM with GNU Affero General Public License v3.0 | 5 votes |
@EventWrapper public void onEntityChangeBlock(final EntityChangeBlockEvent event) { callEvent( event, event.getBlock().getState(), BlockStates.cloneWithMaterial(event.getBlock(), event.getTo(), event.getData()), Trackers.getOwner(event.getEntity())); }
Example #21
Source File: BlockDropsMatchModule.java From PGM with GNU Affero General Public License v3.0 | 5 votes |
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true) public void onFallingBlockLand(BlockTransformEvent event) { if (event.getCause() instanceof EntityChangeBlockEvent) { Entity entity = ((EntityChangeBlockEvent) event.getCause()).getEntity(); if (entity instanceof FallingBlock && this.fallingBlocksThatWillNotLand.remove(entity)) { event.setCancelled(true); } } }
Example #22
Source File: BlockEventTracker.java From GriefDefender with MIT License | 5 votes |
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onBlockSpawnFalling(EntityChangeBlockEvent event) { final Entity entity = event.getEntity(); if (entity instanceof FallingBlock) { final GDEntity gdEntity = EntityTracker.getCachedEntity(event.getEntity().getEntityId()); if (gdEntity != null) { final GDPermissionUser user = PermissionHolderCache.getInstance().getOrCreateUser(gdEntity.getOwnerUUID()); final GDClaimManager claimWorldManager = GriefDefenderPlugin.getInstance().dataStore.getClaimWorldManager(event.getBlock().getWorld().getUID()); final GDChunk gdChunk = claimWorldManager.getChunk(event.getBlock().getChunk()); gdChunk.addTrackedBlockPosition(event.getBlock(), user.getUniqueId(), PlayerTracker.Type.OWNER); } } }
Example #23
Source File: CoreObjective.java From CardinalPGM with MIT License | 4 votes |
@EventHandler public void onEntityChangeBlock(EntityChangeBlockEvent event) { if (lava.contains(event.getBlock())) event.setCancelled(true); }
Example #24
Source File: LivingEntityShopListener.java From Shopkeepers with GNU General Public License v3.0 | 4 votes |
@EventHandler(ignoreCancelled = true) void onEntityChangeBlock(EntityChangeBlockEvent event) { if (plugin.isShopkeeper(event.getEntity())) { event.setCancelled(true); } }
Example #25
Source File: BlockPlaceRegion.java From CardinalPGM with MIT License | 4 votes |
@EventHandler public void onEntityChangeBlock(EntityChangeBlockEvent event) { if (!event.isCancelled() && region.contains(new BlockRegion(null, event.getBlock().getLocation().toVector())) && filter.evaluate(event, event.getBlock()).equals(FilterState.DENY)) { event.setCancelled(true); } }
Example #26
Source File: WoolObjective.java From CardinalPGM with MIT License | 4 votes |
@EventHandler public void onEntityChangeBlock(EntityChangeBlockEvent event) { if (place.getBlock().equals(event.getBlock())) event.setCancelled(true); }
Example #27
Source File: BlockPhysics.java From FunnyGuilds with Apache License 2.0 | 4 votes |
@EventHandler public void onFall(EntityChangeBlockEvent event) { if (event.getEntityType() == EntityType.FALLING_BLOCK && GuildHeartProtectionHandler.isGuildHeart(event.getBlock())) { event.setCancelled(true); } }
Example #28
Source File: IslandGuard.java From askyblock with GNU General Public License v2.0 | 4 votes |
/** * Trap TNT being primed by flaming arrows * @param e - event */ @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true) public void onTNTPrimed(final EntityChangeBlockEvent e) { if (DEBUG) { plugin.getLogger().info(e.getEventName()); plugin.getLogger().info("DEBUG: block = " + e.getBlock().getType()); plugin.getLogger().info("DEBUG: entity = " + e.getEntityType()); plugin.getLogger().info("DEBUG: material changing to " + e.getTo()); } if (actionAllowed(e.getEntity().getLocation(), SettingsFlag.FIRE)) { return; } if (e.getBlock() == null) { return; } // Check for TNT if (!e.getBlock().getType().equals(Material.TNT)) { //plugin.getLogger().info("DEBUG: not tnt"); return; } // Check world if (!inWorld(e.getBlock())) { return; } // Check if this is on an island Island island = plugin.getGrid().getIslandAt(e.getBlock().getLocation()); if (island == null || island.isSpawn()) { return; } // Stop TNT from being damaged if it is being caused by a visitor with a flaming arrow if (e.getEntity() instanceof Projectile) { //plugin.getLogger().info("DEBUG: projectile"); Projectile projectile = (Projectile) e.getEntity(); // Find out who fired it if (projectile.getShooter() instanceof Player) { //plugin.getLogger().info("DEBUG: player shot arrow. Fire ticks = " + projectile.getFireTicks()); if (projectile.getFireTicks() > 0) { //plugin.getLogger().info("DEBUG: arrow on fire"); Player shooter = (Player)projectile.getShooter(); if (!plugin.getGrid().locationIsAtHome(shooter, true, e.getBlock().getLocation())) { //plugin.getLogger().info("DEBUG: shooter is not at home"); // Only say it once a second // Debounce event (it can be called twice for the same action) if (!tntBlocks.contains(e.getBlock().getLocation())) { Util.sendMessage(shooter, ChatColor.RED + plugin.myLocale(shooter.getUniqueId()).islandProtected); tntBlocks.add(e.getBlock().getLocation()); plugin.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { tntBlocks.remove(e.getBlock().getLocation()); }}, 20L); } // Remove the arrow projectile.remove(); e.setCancelled(true); } } } } }
Example #29
Source File: EvtEntityBlockChange.java From Skript with GNU General Public License v3.0 | 4 votes |
@Override public boolean check(final Event e) { if (!(e instanceof EntityChangeBlockEvent)) return false; return event.checker.check((EntityChangeBlockEvent) e); }
Example #30
Source File: EvtEntityBlockChange.java From Skript with GNU General Public License v3.0 | 4 votes |
private ChangeEvent(final String pattern, final Checker<EntityChangeBlockEvent> c) { this.pattern = pattern; checker = c; }