diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java index fd7024646..2690ac8e0 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java @@ -68,10 +68,9 @@ public class BlockColoredLamp extends BlockBase{ public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing side, float hitX, float hitY, float hitZ){ ItemStack stack = player.getHeldItem(hand); //Turning On - if(player.isSneaking()){ - if(!world.isRemote){ - world.setBlockState(pos, (this.isOn ? InitBlocks.blockColoredLamp : InitBlocks.blockColoredLampOn).getStateFromMeta(this.getMetaFromState(state)), 2); - } + if(stack.isEmpty() && player.isSneaking()){ + world.setBlockState(pos, (this.isOn ? InitBlocks.blockColoredLamp : InitBlocks.blockColoredLampOn).getDefaultState().withProperty(TYPE, state.getValue(TYPE)), 2); + world.notifyLightSet(pos); return true; } @@ -96,13 +95,12 @@ public class BlockColoredLamp extends BlockBase{ } } } - return false; } @Override @SideOnly(Side.CLIENT) - public void getSubBlocks(CreativeTabs tab, NonNullList list){ + public void getSubBlocks(CreativeTabs tab, NonNullList list){ for(int j = 0; j < ALL_LAMP_TYPES.length; j++){ list.add(new ItemStack(this, 1, j)); } @@ -168,4 +166,4 @@ public class BlockColoredLamp extends BlockBase{ return InitBlocks.blockColoredLamp.getUnlocalizedName()+"_"+ALL_LAMP_TYPES[stack.getItemDamage()].regName; } } -} \ No newline at end of file +}