@SubscribeEvent public void onZombieSummonAid(SummonAidEvent event) { if (event.entity instanceof EntityEvolvedZombie) { event.customSummonedAid = new EntityEvolvedZombie(event.world); if (((EntityLivingBase) event.entity).getRNG().nextFloat() < ((EntityEvolvedZombie) event.entity).getEntityAttribute(((EntityEvolvedZombie) event.entity).getReinforcementsAttribute()).getAttributeValue()) { event.setResult(Result.ALLOW); } else { event.setResult(Result.DENY); } } }
public void replaceBlocksForBiome(int p_147422_1_, int p_147422_2_, Block[] p_147422_3_, byte[] p_147422_4_, BiomeGenBase[] p_147422_5_) { ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, p_147422_1_, p_147422_2_, p_147422_3_, p_147422_5_); MinecraftForge.EVENT_BUS.post(event); if (event.getResult() == Result.DENY) { return; } double d0 = 0.03125D; this.stoneNoise = this.field_147430_m.func_151599_a(this.stoneNoise, p_147422_1_ * 16, p_147422_2_ * 16, 16, 16, d0 * 2.0D, d0 * 2.0D, 1.0D); for (int k = 0; k < 16; ++k) { for (int l = 0; l < 16; ++l) { BiomeGenBase biomegenbase = p_147422_5_[(l + k * 16)]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, p_147422_3_, p_147422_4_, p_147422_1_ * 16 + k, p_147422_2_ * 16 + l, this.stoneNoise[(l + k * 16)]); } } }
protected int func_151557_c(Block p_151557_1_, int p_151557_2_) { BiomeEvent.GetVillageBlockMeta event = new BiomeEvent.GetVillageBlockMeta(startPiece == null ? null : startPiece.biome, p_151557_1_, p_151557_2_); MinecraftForge.TERRAIN_GEN_BUS.post(event); if (event.getResult() == Result.DENY) return event.replacement; if (this.field_143014_b) { if (p_151557_1_ == Blocks.log || p_151557_1_ == Blocks.log2) { return 0; } if (p_151557_1_ == Blocks.cobblestone) { return 0; } if (p_151557_1_ == Blocks.planks) { return 2; } } return p_151557_2_; }
public void replaceBlocksForBiome(int par1, int par2, Block[] blocks, byte[] par3ArrayOfByte, BiomeGenBase[] par4ArrayOfBiomeGenBase) { GameLogHelper.writeToLog(Level.INFO, "Replacing block for biome."); @SuppressWarnings("deprecation") ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, par1, par2, blocks, par3ArrayOfByte, par4ArrayOfBiomeGenBase); MinecraftForge.EVENT_BUS.post(event); if (event.getResult() == Result.DENY) return; double d0 = 0.03125D; this.stoneNoise = this.noisePerl.func_151599_a(this.stoneNoise, (double)(par1 * 16), (double)(par2 * 16), 16, 16, d0 * 2.0D, d0 * 2.0D, 1.0D); /*for (int k = 0; k < 16; ++k) { for (int l = 0; l < 16; ++l) { BiomeGenPat biomegenbase = (BiomeGenPat) par4ArrayOfBiomeGenBase[l + k * 16]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, blocks, par3ArrayOfByte, par1 * 16 + k, par2 * 16 + l, this.stoneNoise[l + k * 16]); } for (int l = 0; l < 8; ++l) { BiomeGenJen biomegenbase = (BiomeGenJen) par4ArrayOfBiomeGenBase[l + k * 16]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, blocks, par3ArrayOfByte, par1 * 16 + k, par2 * 16 + l, this.stoneNoise[l + k * 16]); } }*/ }
@SubscribeEvent(priority = EventPriority.LOWEST) public void onWorldDecoration(DecorateBiomeEvent.Decorate event) { if ((event.getResult() == Result.ALLOW || event.getResult() == Result.DEFAULT) && event.type == EventType.FLOWERS) { for(int i = 0; i < 2; i++) { int x = event.chunkX + event.rand.nextInt(16) + 8; int z = event.chunkZ + event.rand.nextInt(16) + 8; int y = event.world.getTopSolidOrLiquidBlock(x, z); if(event.world.isAirBlock(x, y, z) && Blocks.flower_pot.canBlockStay(event.world, x, y, z) && ConfigPrimitiveCraft.genrocks) { event.world.setBlock(x, y, z, ModBlocks.rock); } else if(event.world.getBlock(x, y, z) == Blocks.water && ConfigPrimitiveCraft.genshale) { event.world.setBlock(x, y-1, z, ModBlocks.shale); } } } }
@SubscribeEvent public void onEntityJoinWorldEvent(EntityJoinWorldEvent event) { if (event.entity instanceof EntityGuard){ EntityGuard guard = (EntityGuard) event.entity; // If spawned by WorldGen, it will not be looking for home if (guard.isLookingForHome()) { if (okToSpawnNearVillage(event, 50)) { // LogHelper.info("EntityJoinWorldEvent: Do spawn " + guard.getGuardType() + " at: " + guard.posX + ", " + guard.posY + ", " + guard.posZ); // If I set to ALLOW, need to do all own checks here, so use DEFAULT event.setResult(Result.DEFAULT); } else { // Prevents spawns not in a village // LogHelper.info("onLivingCheckSpawnEvent: Don't spawn Guard at: " + guard.posX + ", " + guard.posY + ", " + guard.posZ); event.setResult(Result.DENY); } } } }
@SubscribeEvent public void use(PlayerInteractEvent event){ ItemStack item = event.entityPlayer.getEquipmentInSlot(0); if(item == null) return; if(item.hasTagCompound()) if(item.getTagCompound().hasKey("Fidelis")) { String fidelisID = item.getTagCompound().getString("Fidelis"); if(event.entityPlayer.getGameProfile().getId().toString().equals(fidelisID)) return; else if(fidelisID.equals("")) { item.getTagCompound().setString("Fidelis", event.entityPlayer.getGameProfile().getId().toString()); item.getTagCompound().setString("FidelisDisplay", event.entityPlayer.getDisplayName()); } else{ event.setCanceled(true); event.useItem = Result.DENY; } } }
public void replaceBlocksForBiome(int p_147422_1_, int p_147422_2_, Block[] p_147422_3_, byte[] p_147422_4_, BiomeGenBase[] p_147422_5_) { ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, p_147422_1_, p_147422_2_, p_147422_3_, p_147422_4_, p_147422_5_); MinecraftForge.EVENT_BUS.post(event); if (event.getResult() == Result.DENY) return; double d0 = 0.03125D; this.stoneNoise = this.field_147430_m.func_151599_a(this.stoneNoise, (double)(p_147422_1_ * 16), (double)(p_147422_2_ * 16), 16, 16, d0 * 2.0D, d0 * 2.0D, 1.0D); for (int k = 0; k < 16; ++k) { for (int l = 0; l < 16; ++l) { BiomeGenBase biomegenbase = p_147422_5_[l + k * 16]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, p_147422_3_, p_147422_4_, p_147422_1_ * 16 + k, p_147422_2_ * 16 + l, this.stoneNoise[l + k * 16]); } } }
public void replaceBlocksForBiome(int p_147422_1_, int p_147422_2_, Block[] p_147422_3_, byte[] p_147422_4_, BiomeGenBase[] p_147422_5_) { ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, p_147422_1_, p_147422_2_, p_147422_3_, p_147422_4_, p_147422_5_, this.worldObj); MinecraftForge.EVENT_BUS.post(event); if (event.getResult() == Result.DENY) return; double d0 = 0.03125D; this.stoneNoise = this.field_147430_m.func_151599_a(this.stoneNoise, (double)(p_147422_1_ * 16), (double)(p_147422_2_ * 16), 16, 16, d0 * 2.0D, d0 * 2.0D, 1.0D); for (int k = 0; k < 16; ++k) { for (int l = 0; l < 16; ++l) { BiomeGenBase biomegenbase = p_147422_5_[l + k * 16]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, p_147422_3_, p_147422_4_, p_147422_1_ * 16 + k, p_147422_2_ * 16 + l, this.stoneNoise[l + k * 16]); } } }
@SubscribeEvent public void onWorldGen(OreGenEvent.GenerateMinable event) { if(event.world.provider instanceof WorldProviderPlanet && DimensionManager.getInstance().getDimensionProperties(event.world.provider.dimensionId).getOreGenProperties(event.world) != null) { switch(event.type) { case COAL: case DIAMOND: case GOLD: case IRON: case LAPIS: case QUARTZ: case REDSTONE: case CUSTOM: event.setResult(Result.DENY); break; default: event.setResult(Result.DEFAULT); } } }
@SuppressWarnings("deprecation") public void replaceBlocksForBiome(int p_147422_1_, int p_147422_2_, Block[] p_147422_3_, byte[] p_147422_4_, BiomeGenBase[] p_147422_5_) { ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, p_147422_1_, p_147422_2_, p_147422_3_, p_147422_4_, p_147422_5_); MinecraftForge.EVENT_BUS.post(event); if (event.getResult() == Result.DENY) return; double d0 = 0.03125D; this.stoneNoise = this.noiseGen4.func_151599_a(this.stoneNoise, (double) (p_147422_1_ * 16), (double) (p_147422_2_ * 16), 16, 16, d0 * 2.0D, d0 * 2.0D, 1.0D); for (int k = 0; k < 16; ++k) { for (int l = 0; l < 16; ++l) { BiomeGenBase biomegenbase = p_147422_5_[l + k * 16]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, p_147422_3_, p_147422_4_, p_147422_1_ * 16 + k, p_147422_2_ * 16 + l, this.stoneNoise[l + k * 16]); } } }
public void replaceBlocksForBiome(int p_147422_1_, int p_147422_2_, Block[] p_147422_3_, byte[] p_147422_4_, BiomeGenBase[] p_147422_5_) { ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, p_147422_1_, p_147422_2_, p_147422_3_, p_147422_5_); MinecraftForge.EVENT_BUS.post(event); if (event.getResult() == Result.DENY) return; double d0 = 0.03125D; this.stoneNoise = this.field_147430_m.func_151599_a(this.stoneNoise, (double)(p_147422_1_ * 16), (double)(p_147422_2_ * 16), 16, 16, d0 * 2.0D, d0 * 2.0D, 1.0D); for (int k = 0; k < 16; ++k) { for (int l = 0; l < 16; ++l) { BiomeGenBase biomegenbase = p_147422_5_[l + k * 16]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, p_147422_3_, p_147422_4_, p_147422_1_ * 16 + k, p_147422_2_ * 16 + l, this.stoneNoise[l + k * 16]); } } }
@SubscribeEvent public void interact(PlayerInteractEvent evt){ EntityPlayer p = evt.entityPlayer; PlayerRpgInventory inv = PlayerRpgInventory.get(p); ItemStack shield = inv.getShield(); if(shield == null) return; ItemRpgInvArmor theShield = (ItemRpgInvArmor) shield.getItem(); if(inv.isBlocking() && p.isSneaking()){ evt.setResult(Result.DENY); evt.setCanceled(true); } }
@SubscribeEvent public void genOre(GenerateMinable event) { switch (event.type) { //case EMERALD: case QUARTZ: case IRON: case GOLD: case LAPIS: case REDSTONE: case DIAMOND: case COAL: event.setResult(Result.DENY); break; default: event.setResult(Result.ALLOW); } }
public static boolean syphonFromNetworkWhileInContainer(ItemStack ist, int damageToBeDone) { String ownerName = ""; if (ist.getTagCompound() != null && !(ist.getTagCompound().getString("ownerName").equals(""))) { ownerName = ist.getTagCompound().getString("ownerName"); } ItemDrainInContainerEvent event = new ItemDrainInContainerEvent(ist, ownerName, damageToBeDone); if(MinecraftForge.EVENT_BUS.post(event) || event.getResult() == Result.DENY) { return false; } return syphonFromNetwork(event.ownerNetwork, event.drainAmount) >= damageToBeDone; }
public void replaceBlocksForBiome(int p_147422_1_, int p_147422_2_, Block[] p_147422_3_, byte[] p_147422_4_, BiomeGenBase[] p_147422_5_) { ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, p_147422_1_, p_147422_2_, p_147422_3_, p_147422_5_); MinecraftForge.EVENT_BUS.post(event); if (event.getResult() == Result.DENY) return; double d0 = 0.03125D; this.stoneNoise = this.field_147430_m.func_151599_a(this.stoneNoise, p_147422_1_ * 16, p_147422_2_ * 16, 16, 16, d0 * 2.0D, d0 * 2.0D, 1.0D); for (int k = 0; k < 16; ++k) { for (int l = 0; l < 16; ++l) { BiomeGenBase biomegenbase = p_147422_5_[l + k * 16]; biomegenbase.genTerrainBlocks(this.worldObj, this.rand, p_147422_3_, p_147422_4_, p_147422_1_ * 16 + k, p_147422_2_ * 16 + l, this.stoneNoise[l + k * 16]); } } }
@SubscribeEvent public void onBonemealClick(BonemealEvent event) { World world = event.world; if (event.block.equals(mod_Rediscovered.CherrySapling)) { event.setResult(Result.ALLOW); if (!world.isRemote) { double chance = 0.45D; if (world.rand.nextFloat() < chance) { //grow tree ((BlockCherrySapling)mod_Rediscovered.CherrySapling).func_149878_d(event.world, event.x, event.y, event.z, event.world.rand); } } } }
@SubscribeEvent public void bonemealUsed(BonemealEvent event) { int plantMetadata = event.world.getBlockMetadata(event.x, event.y, event.z); if (event.world.getBlock(event.x, event.y, event.z) == ModBlocks.riceBlock) { if (plantMetadata != 7) { event.world.setBlockMetadataWithNotify(event.x, event.y, event.z, plantMetadata + 1, 2); event.setResult(Result.ALLOW); } } if (event.world.getBlock(event.x, event.y, event.z) == ModBlocks.strawberryBlock) { if (plantMetadata != 7) { event.world.setBlockMetadataWithNotify(event.x, event.y, event.z, plantMetadata + 1, 2); event.setResult(Result.ALLOW); } } if (event.world.getBlock(event.x, event.y, event.z) == ModBlocks.grapeBlock) { if (plantMetadata != 7) { event.world.setBlockMetadataWithNotify(event.x, event.y, event.z, plantMetadata + 1, 2); event.setResult(Result.ALLOW); } } }
public static void onHoeEvent(UseHoeEvent event) { if (EtFuturum.enableCoarseDirt) { World world = event.world; if (world.getBlock(event.x, event.y, event.z) == ModBlocks.coarse_dirt) { world.setBlock(event.x, event.y, event.z, Blocks.dirt); world.playSoundEffect(event.x + 0.5F, event.y + 0.5F, event.z + 0.5F, Block.soundTypeGravel.getStepResourcePath(), 1.0F, 0.8F); event.setResult(Result.ALLOW); } } }
@SubscribeEvent public void onBucketFill(FillBucketEvent event) { MovingObjectPosition pos = event.target; ItemStack ret = fillBucket(event.world, pos); if (ret == null) { return; } event.result = ret; event.setResult(Result.ALLOW); }
protected Block func_151558_b(Block p_151558_1_, int p_151558_2_) { BiomeEvent.GetVillageBlockID event = new BiomeEvent.GetVillageBlockID(startPiece == null ? null : startPiece.biome, p_151558_1_, p_151558_2_); MinecraftForge.TERRAIN_GEN_BUS.post(event); if (event.getResult() == Result.DENY) return event.replacement; if (this.field_143014_b) { if (p_151558_1_ == Blocks.log || p_151558_1_ == Blocks.log2) { return Blocks.sandstone; } if (p_151558_1_ == Blocks.cobblestone) { return Blocks.sandstone; } if (p_151558_1_ == Blocks.planks) { return Blocks.sandstone; } if (p_151558_1_ == Blocks.oak_stairs) { return Blocks.sandstone_stairs; } if (p_151558_1_ == Blocks.stone_stairs) { return Blocks.sandstone_stairs; } if (p_151558_1_ == Blocks.gravel) { return Blocks.sandstone; } } return p_151558_1_; }
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ) { if (!player.canPlayerEdit(x, y, z, side, stack)) { return false; } else { UseHoeEvent event = new UseHoeEvent(player, stack, world, x, y, z); if (MinecraftForge.EVENT_BUS.post(event)) { return false; } if (event.getResult() == Result.ALLOW) { stack.damageItem(1, player); return true; } Block block = world.getBlock(x, y, z); if (side != 0 && world.getBlock(x, y + 1, z).isAir(world, x, y + 1, z) && (block == Blocks.grass || block == Blocks.dirt)) { Block block1 = Blocks.farmland; world.playSoundEffect((double)((float)x + 0.5F), (double)((float)y + 0.5F), (double)((float)z + 0.5F), block1.stepSound.getStepResourcePath(), (block1.stepSound.getVolume() + 1.0F) / 2.0F, block1.stepSound.getPitch() * 0.8F); if (world.isRemote) { return true; } else { world.setBlock(x, y, z, block1); stack.damageItem(1, player); return true; } } else { return false; } } }
@SubscribeEvent public void onFillBucket(FillBucketEvent event) { ItemStack itemInHand = event.entityPlayer.getCurrentEquippedItem(); if(event.getResult() != Result.DENY && itemInHand.getItem() == TFCItems.woodenBucketEmpty) { if(event.result != null && event.result.getItem() == BuildCraftEnergy.bucketOil) { event.result = new ItemStack(TFPItems.CustomBucketOil); } } }
@SubscribeEvent(receiveCanceled = false) public void onBlockInteract(final PlayerInteractEvent event) { final World world = event.entityPlayer.worldObj; if (world.isRemote) return; final TileEntity te = world.getTileEntity(event.x, event.y, event.z); if (te instanceof TileEntitySign) { String playerMessage = null; final EntityPlayerMP player = (EntityPlayerMP) event.entityPlayer; final TileEntitySign sign = (TileEntitySign) te; switch (InteractionType.getInteractionType(event)) { case Configure: if(TeleportSignTracking.canBeConfigured(sign)) { TeleportSignTracking.configureSign(sign); event.useItem = Result.DENY; } else playerMessage = StatCollector.translateToLocal("msg.Pathways.IncorrectSignFormat"); break; case Use: if(TeleportSignTracking.canBeUsed(sign)) { final String target = TeleportSignTracking.getTargetName(sign); TargetManager.execute(player, target, false); } break; case Nothing: default: ; } if (playerMessage != null && !playerMessage.isEmpty()) player.addChatComponentMessage(new ChatComponentText(playerMessage)); } }
@SubscribeEvent public void onBucketFill(FillBucketEvent event) { ItemStack result = fillCustomBucket(event.world, event.target); if (result == null) return; event.result = result; event.setResult(Result.ALLOW); }