net.minecraft.block.BlockSnow Java Examples
The following examples show how to use
net.minecraft.block.BlockSnow.
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: MaterialCache.java From litematica with GNU Lesser General Public License v3.0 | 5 votes |
protected void overrideStackSize(IBlockState state, ItemStack stack) { if (state.getBlock() instanceof BlockSlab && ((BlockSlab) state.getBlock()).isDouble()) { stack.setCount(2); } else if (state.getBlock() == Blocks.SNOW_LAYER) { stack.setCount(state.getValue(BlockSnow.LAYERS)); } }
Example #2
Source File: ItemSnow.java From customstuff4 with GNU General Public License v3.0 | 5 votes |
@Override public boolean canPlaceBlockOnSide(World world, BlockPos pos, EnumFacing side, EntityPlayer player, ItemStack stack) { IBlockState state = world.getBlockState(pos); return (state.getBlock() == block && state.getValue(BlockSnow.LAYERS) <= 7) || super.canPlaceBlockOnSide(world, pos, side, player, stack); }
Example #3
Source File: BuildBattleDecoratorImplementation.java From malmo with MIT License | 5 votes |
@SubscribeEvent public void onPlayerInteract(PlayerInteractEvent event) { // Disallow creating or destroying events in the player structure: if (event instanceof PlayerInteractEvent.LeftClickBlock) { // Destroy block if (blockInBounds(event.getPos(), this.sourceBounds)) event.setCanceled(true); } else if (event instanceof PlayerInteractEvent.RightClickBlock) { // Place block - need to work out *where* the block would be placed. // This code was cribbed from ItemBlock.onItemUse() IBlockState iblockstate = event.getWorld().getBlockState(event.getPos()); Block block = iblockstate.getBlock(); EnumFacing side = event.getFace(); BlockPos pos = event.getPos(); if (block == Blocks.SNOW_LAYER && ((Integer)iblockstate.getValue(BlockSnow.LAYERS)).intValue() < 1) { side = EnumFacing.UP; } else if (!block.isReplaceable(event.getWorld(), pos)) { pos = pos.offset(side); } if (blockInBounds(pos, this.sourceBounds)) event.setCanceled(true); } }
Example #4
Source File: BWBlock.java From NOVA-Core with GNU Lesser General Public License v3.0 | 5 votes |
@Override public boolean shouldDisplacePlacement() { if (block() == Blocks.SNOW_LAYER && (blockState().getValue(BlockSnow.LAYERS) < 1)) { return false; } if (block() == Blocks.VINE || block() == Blocks.TALLGRASS || block() == Blocks.DEADBUSH || block().isReplaceable(blockAccess(), blockPos())) { return false; } return super.shouldDisplacePlacement(); }
Example #5
Source File: BWBlock.java From NOVA-Core with GNU Lesser General Public License v3.0 | 5 votes |
@Override public boolean shouldDisplacePlacement() { if (mcBlock == Blocks.snow_layer && ((int) blockState().getValue(BlockSnow.LAYERS) < 1)) { return false; } if (mcBlock == Blocks.vine || mcBlock == Blocks.tallgrass || mcBlock == Blocks.deadbush || mcBlock.isReplaceable((net.minecraft.world.World) blockAccess(), blockPos())) { return false; } return super.shouldDisplacePlacement(); }
Example #6
Source File: Teleport.java From LiquidBounce with GNU General Public License v3.0 | 4 votes |
@EventTarget public void onRender3D(final Render3DEvent event) { if(modeValue.get().equals("AAC3.5.0")) return; final Vec3 lookVec = new Vec3(mc.thePlayer.getLookVec().xCoord * 300, mc.thePlayer.getLookVec().yCoord * 300, mc.thePlayer.getLookVec().zCoord * 300); final Vec3 posVec = new Vec3(mc.thePlayer.posX, mc.thePlayer.posY + 1.62, mc.thePlayer.posZ); objectPosition = mc.thePlayer.worldObj.rayTraceBlocks(posVec, posVec.add(lookVec), false, ignoreNoCollision.get(), false); if (objectPosition == null || objectPosition.getBlockPos() == null) return; final BlockPos belowBlockPos = new BlockPos(objectPosition.getBlockPos().getX(), objectPosition.getBlockPos().getY() - 1, objectPosition.getBlockPos().getZ()); fixedY = BlockUtils.getBlock(objectPosition.getBlockPos()) instanceof BlockFence ? (mc.theWorld.getCollidingBoundingBoxes(mc.thePlayer, mc.thePlayer.getEntityBoundingBox().offset(objectPosition.getBlockPos().getX() + 0.5D - mc.thePlayer.posX, objectPosition.getBlockPos().getY() + 1.5D - mc.thePlayer.posY, objectPosition.getBlockPos().getZ() + 0.5D - mc.thePlayer.posZ)).isEmpty() ? 0.5D : 0D) : BlockUtils.getBlock(belowBlockPos) instanceof BlockFence ? (!mc.theWorld.getCollidingBoundingBoxes(mc.thePlayer, mc.thePlayer.getEntityBoundingBox().offset(objectPosition.getBlockPos().getX() + 0.5D - mc.thePlayer.posX, objectPosition.getBlockPos().getY() + 0.5D - mc.thePlayer.posY, objectPosition.getBlockPos().getZ() + 0.5D - mc.thePlayer.posZ)).isEmpty() || BlockUtils.getBlock(objectPosition.getBlockPos()).getCollisionBoundingBox(mc.theWorld, objectPosition.getBlockPos(), BlockUtils.getBlock(objectPosition.getBlockPos()).getDefaultState()) == null ? 0D : 0.5D - BlockUtils.getBlock(objectPosition.getBlockPos()).getBlockBoundsMaxY()) : BlockUtils.getBlock(objectPosition.getBlockPos()) instanceof BlockSnow ? BlockUtils.getBlock(objectPosition.getBlockPos()).getBlockBoundsMaxY() - 0.125D : 0D; final int x = objectPosition.getBlockPos().getX(); final double y = (BlockUtils.getBlock(objectPosition.getBlockPos()).getCollisionBoundingBox(mc.theWorld, objectPosition.getBlockPos(), BlockUtils.getBlock(objectPosition.getBlockPos()).getDefaultState()) == null ? objectPosition.getBlockPos().getY() + BlockUtils.getBlock(objectPosition.getBlockPos()).getBlockBoundsMaxY() : BlockUtils.getBlock(objectPosition.getBlockPos()).getCollisionBoundingBox(mc.theWorld, objectPosition.getBlockPos(), BlockUtils.getBlock(objectPosition.getBlockPos()).getDefaultState()).maxY) - 1D + fixedY; final int z = objectPosition.getBlockPos().getZ(); if(!(BlockUtils.getBlock(objectPosition.getBlockPos()) instanceof BlockAir)) { final RenderManager renderManager = mc.getRenderManager(); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glEnable(GL_BLEND); glLineWidth(2F); glDisable(GL_TEXTURE_2D); glDisable(GL_DEPTH_TEST); glDepthMask(false); RenderUtils.glColor(modeValue.get().equalsIgnoreCase("minesucht") && mc.thePlayer.getPosition().getY() != y + 1 ? new Color(255, 0, 0, 90) : !mc.theWorld.getCollidingBoundingBoxes(mc.thePlayer, mc.thePlayer.getEntityBoundingBox().offset(x + 0.5D - mc.thePlayer.posX, y + 1D - mc.thePlayer.posY, z + 0.5D - mc.thePlayer.posZ)).isEmpty() ? new Color(255, 0, 0, 90) : new Color(0, 255, 0, 90)); RenderUtils.drawFilledBox(new AxisAlignedBB(x - renderManager.renderPosX, (y + 1) - renderManager.renderPosY, z - renderManager.renderPosZ, x - renderManager.renderPosX + 1.0D, y + 1.2D - renderManager.renderPosY, z - renderManager.renderPosZ + 1.0D)); glEnable(GL_TEXTURE_2D); glEnable(GL_DEPTH_TEST); glDepthMask(true); glDisable(GL_BLEND); RenderUtils.renderNameTag(Math.round(mc.thePlayer.getDistance(x + 0.5D, y + 1D, z + 0.5D)) + "m", x + 0.5, y + 1.7, z + 0.5); GlStateManager.resetColor(); } }
Example #7
Source File: ItemSnow.java From customstuff4 with GNU General Public License v3.0 | 4 votes |
@Override public EnumActionResult onItemUse(EntityPlayer player, World worldIn, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { ItemStack itemstack = player.getHeldItem(hand); if (!itemstack.isEmpty() && player.canPlayerEdit(pos, facing, itemstack)) { IBlockState iblockstate = worldIn.getBlockState(pos); Block block = iblockstate.getBlock(); BlockPos blockpos = pos; if ((facing != EnumFacing.UP || block != this.block) && !block.isReplaceable(worldIn, pos)) { blockpos = pos.offset(facing); iblockstate = worldIn.getBlockState(blockpos); block = iblockstate.getBlock(); } if (block == this.block) { int i = iblockstate.getValue(BlockSnow.LAYERS); if (i < 8) { IBlockState iblockstate1 = iblockstate.withProperty(BlockSnow.LAYERS, i + 1); AxisAlignedBB axisalignedbb = iblockstate1.getCollisionBoundingBox(worldIn, blockpos); if (axisalignedbb != Block.NULL_AABB && worldIn.checkNoEntityCollision(axisalignedbb.offset(blockpos)) && worldIn.setBlockState(blockpos, iblockstate1, 10)) { SoundType soundtype = this.block.getSoundType(iblockstate1, worldIn, pos, player); worldIn.playSound(player, blockpos, soundtype.getPlaceSound(), SoundCategory.BLOCKS, (soundtype.getVolume() + 1.0F) / 2.0F, soundtype.getPitch() * 0.8F); if (player instanceof EntityPlayerMP) { CriteriaTriggers.PLACED_BLOCK.trigger((EntityPlayerMP)player, pos, itemstack); } itemstack.shrink(1); return EnumActionResult.SUCCESS; } } } return super.onItemUse(player, worldIn, pos, hand, facing, hitX, hitY, hitZ); } else { return EnumActionResult.FAIL; } }
Example #8
Source File: ModuleEffectFrost.java From Wizardry with GNU Lesser General Public License v3.0 | 4 votes |
@Override public boolean run(@NotNull World world, ModuleInstanceEffect instance, @Nonnull SpellData spell, @Nonnull SpellRing spellRing) { Entity targetEntity = spell.getVictim(world); BlockPos targetPos = spell.getTargetPos(); Entity caster = spell.getCaster(world); double range = spellRing.getAttributeValue(world, AttributeRegistry.AREA, spell) / 2; double time = spellRing.getAttributeValue(world, AttributeRegistry.DURATION, spell) * 10; if (!spellRing.taxCaster(world, spell, true)) return false; if (targetEntity != null) { world.playSound(null, targetEntity.getPosition(), ModSounds.FROST_FORM, SoundCategory.NEUTRAL, 1, 1); targetEntity.extinguish(); if (targetEntity instanceof EntityLivingBase) { ((EntityLivingBase) targetEntity).addPotionEffect(new PotionEffect(ModPotions.SLIPPERY, (int) time, 0, true, false)); } } if (targetPos != null) { world.playSound(null, targetPos, ModSounds.FROST_FORM, SoundCategory.NEUTRAL, 1, 1); for (BlockPos pos : BlockPos.getAllInBox(targetPos.add(-range, -range, -range), targetPos.add(range + 1, range + 1, range + 1))) { double dist = pos.distanceSq(targetPos); if (dist > range) continue; for (EnumFacing facing : EnumFacing.VALUES) { IBlockState state = world.getBlockState(pos.offset(facing)); if (state.getBlock() == Blocks.FIRE) { BlockUtils.breakBlock(world, pos.offset(facing), state, BlockUtils.makeBreaker(world, pos, caster)); } } BlockPos up = pos.offset(EnumFacing.UP); if (world.getBlockState(pos).isSideSolid(world, pos, EnumFacing.UP) && world.isAirBlock(up)) { int layerSize = (int) (Math.max(1, Math.min(8, Math.max(1, (dist / range) * 6.0)))); layerSize = Math.max(1, Math.min(layerSize + RandUtil.nextInt(-1, 1), 8)); BlockUtils.placeBlock(world, up, Blocks.SNOW_LAYER.getDefaultState().withProperty(BlockSnow.LAYERS, layerSize), BlockUtils.makePlacer(world, up, caster)); } if (world.getBlockState(pos).getBlock() == Blocks.WATER) { BlockUtils.placeBlock(world, pos, Blocks.ICE.getDefaultState(), BlockUtils.makePlacer(world, pos, caster)); } } } return true; }