Java Code Examples for net.minecraft.world.World#isBlockPowered()

The following examples show how to use net.minecraft.world.World#isBlockPowered() . These examples are extracted from open source projects. 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
public static void placeDoor(World worldIn, BlockPos pos, EnumFacing facing, Block door, boolean isRightHinge) {
    BlockPos blockpos = pos.offset(facing.rotateY());
    BlockPos blockpos1 = pos.offset(facing.rotateYCCW());
    int i = (worldIn.getBlockState(blockpos1).isNormalCube() ? 1 : 0) + (worldIn.getBlockState(blockpos1.up()).isNormalCube() ? 1 : 0);
    int j = (worldIn.getBlockState(blockpos).isNormalCube() ? 1 : 0) + (worldIn.getBlockState(blockpos.up()).isNormalCube() ? 1 : 0);
    boolean flag = worldIn.getBlockState(blockpos1).getBlock() == door || worldIn.getBlockState(blockpos1.up()).getBlock() == door;
    boolean flag1 = worldIn.getBlockState(blockpos).getBlock() == door || worldIn.getBlockState(blockpos.up()).getBlock() == door;

    if ((!flag || flag1) && j <= i) {
        if (flag1 && !flag || j < i) {
            isRightHinge = false;
        }
    }
    else {
        isRightHinge = true;
    }

    BlockPos blockpos2 = pos.up();
    boolean flag2 = worldIn.isBlockPowered(pos) || worldIn.isBlockPowered(blockpos2);
    IBlockState iblockstate = door.getDefaultState().withProperty(BlockDoor.FACING, facing).withProperty(BlockDoor.HINGE, isRightHinge ? BlockDoor.EnumHingePosition.RIGHT : BlockDoor.EnumHingePosition.LEFT).withProperty(BlockDoor.POWERED, Boolean.valueOf(flag2)).withProperty(BlockDoor.OPEN, Boolean.valueOf(flag2));
    worldIn.setBlockState(pos, iblockstate.withProperty(BlockDoor.HALF, BlockDoor.EnumDoorHalf.LOWER), 2);
    worldIn.setBlockState(blockpos2, iblockstate.withProperty(BlockDoor.HALF, BlockDoor.EnumDoorHalf.UPPER), 2);
    worldIn.notifyNeighborsOfStateChange(pos, door, false);
    worldIn.notifyNeighborsOfStateChange(blockpos2, door, false);
}
 
Example 2
public void neighborChanged(IBlockState state, World worldIn, BlockPos pos, Block blockIn, BlockPos fromPos)
{
	boolean powered = worldIn.isBlockPowered(pos) || worldIn.isBlockPowered(pos.up());

	if (powered)
	{
		if(!state.getValue(POWERED))
		{
			worldIn.scheduleUpdate(pos, this, this.tickRate(worldIn));
			worldIn.setBlockState(pos, state.withProperty(POWERED, true));
			worldIn.playSound(null, pos, SoundEvents.BLOCK_GLASS_BREAK, SoundCategory.BLOCKS, 1F, 0.25F + worldIn.rand.nextFloat());
		}
	}
	else
	{
		if(state.getValue(POWERED))
		{
			worldIn.scheduleUpdate(pos, this, this.tickRate(worldIn));
			worldIn.setBlockState(pos, state.withProperty(POWERED, false));
			worldIn.playSound(null, pos, SoundEvents.BLOCK_NOTE_BASEDRUM, SoundCategory.BLOCKS, 1F, 0.25F + worldIn.rand.nextFloat());
		}
	}
}
 
Example 3
public static void placeDoor(World worldIn, BlockPos pos, EnumFacing facing, Block door, boolean isRightHinge) {
    BlockPos blockpos = pos.offset(facing.rotateY());
    BlockPos blockpos1 = pos.offset(facing.rotateYCCW());
    int i = (worldIn.getBlockState(blockpos1).isNormalCube() ? 1 : 0) + (worldIn.getBlockState(blockpos1.up()).isNormalCube() ? 1 : 0);
    int j = (worldIn.getBlockState(blockpos).isNormalCube() ? 1 : 0) + (worldIn.getBlockState(blockpos.up()).isNormalCube() ? 1 : 0);
    boolean flag = worldIn.getBlockState(blockpos1).getBlock() == door || worldIn.getBlockState(blockpos1.up()).getBlock() == door;
    boolean flag1 = worldIn.getBlockState(blockpos).getBlock() == door || worldIn.getBlockState(blockpos.up()).getBlock() == door;

    if ((!flag || flag1) && j <= i) {
        if (flag1 && !flag || j < i) {
            isRightHinge = false;
        }
    } else {
        isRightHinge = true;
    }

    BlockPos blockpos2 = pos.up();
    boolean flag2 = worldIn.isBlockPowered(pos) || worldIn.isBlockPowered(blockpos2);
    IBlockState iblockstate = door.getDefaultState().withProperty(BlockDoor.FACING, facing).withProperty(BlockDoor.HINGE, isRightHinge ? BlockDoor.EnumHingePosition.RIGHT : BlockDoor.EnumHingePosition.LEFT).withProperty(BlockDoor.POWERED, Boolean.valueOf(flag2)).withProperty(BlockDoor.OPEN, Boolean.valueOf(flag2));
    worldIn.setBlockState(pos, iblockstate.withProperty(BlockDoor.HALF, BlockDoor.EnumDoorHalf.LOWER), 2);
    worldIn.setBlockState(blockpos2, iblockstate.withProperty(BlockDoor.HALF, BlockDoor.EnumDoorHalf.UPPER), 2);
    worldIn.notifyNeighborsOfStateChange(pos, door, false);
    worldIn.notifyNeighborsOfStateChange(blockpos2, door, false);
}
 
Example 4
@Override
public void neighborChanged(IBlockState state, World worldIn, BlockPos pos, Block blockIn, BlockPos fromPos)
{
    if (!worldIn.isRemote && content.opensWithRedstone)
    {
        boolean flag = worldIn.isBlockPowered(pos);

        if (state.getValue(POWERED) != flag)
        {
            worldIn.setBlockState(pos, state.withProperty(POWERED, flag).withProperty(OPEN, flag), 2);

            if (state.getValue(OPEN) != flag)
            {
                worldIn.playEvent(null, flag ? 1008 : 1014, pos, 0);
            }
        }
    }
}
 
Example 5
@Override
public Vector getBlockForceInShipSpace(World world, BlockPos pos, IBlockState state,
    PhysicsObject physicsObject, double secondsToApply) {
    Vector acting = new Vector(0, 0, 0);
    if (!world.isBlockPowered(pos)) {
        return acting;
    }

    TileEntity tileEntity = world.getTileEntity(pos);
    if (tileEntity instanceof TileEntityPropellerEngine) {
        //Just set the Thrust to be the maximum
        ((TileEntityPropellerEngine) tileEntity)
            .setThrustMultiplierGoal(this.getEnginePower(world, pos, state, physicsObject));
        ((TileEntityPropellerEngine) tileEntity).updateTicksSinceLastRecievedSignal();
        ((TileEntityPropellerEngine) tileEntity).setThrustMultiplierGoal(1D);
        return ((TileEntityPropellerEngine) tileEntity)
            .getForceOutputUnoriented(secondsToApply, physicsObject);
    }

    return acting;
}
 
Example 6
public void onBlockAdded(World worldIn, BlockPos pos, IBlockState state)
{
	if(worldIn.isBlockPowered(pos))
	{
		worldIn.scheduleUpdate(new BlockPos(pos), this, this.tickRate(worldIn));
		worldIn.setBlockState(pos, state.withProperty(POWERED, true));
	}
}
 
Example 7
@Override
public IBlockState getStateForPlacement(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer)
{
    boolean flag = worldIn.isBlockPowered(pos);
    return this.getDefaultState()
               .withProperty(FACING, placer.getHorizontalFacing())
               .withProperty(OPEN, flag)
               .withProperty(POWERED, flag)
               .withProperty(IN_WALL, Boolean.FALSE);
}
 
Example 8
@Override
public void neighborChanged(IBlockState state, World worldIn, BlockPos pos, Block blockIn, BlockPos fromPos)
{
    if (worldIn.isRemote == false && worldIn.isBlockPowered(pos))
    {
        this.scheduleBlockUpdate(worldIn, pos, state, 1, true);
    }
}
 
Example 9
@Override
public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
{
    if (worldIn.isRemote == false && worldIn.isBlockPowered(pos))
    {
        convertBlockToFallingBlockEntity(worldIn, pos.offset(state.getValue(FACING)));
    }
}
 
Example 10
@Override
public void neighborChanged(IBlockState state, World worldIn, BlockPos pos, Block blockIn, BlockPos fromPos)
{
    if (worldIn.isRemote == false)
    {
        boolean powered = worldIn.isBlockPowered(pos);

        if (powered != state.getValue(POWERED))
        {
            worldIn.setBlockState(pos, state.withProperty(POWERED, powered), 2);
        }
    }
}
 
Example 11
@Override
public void onNeighborBlockChange(World worldIn, BlockPos pos, IBlockState state, Block blockIn)
{
    boolean redstone = worldIn.isBlockPowered(pos);

    if (redstone != this.redstoneState && redstone)
    {
        this.activateByRedstone(worldIn.getRedstonePowerFromNeighbors(pos) < 8);
    }

    this.redstoneState = redstone;
}