Аналог лампы из ванилы(исправляем баги)

Версия Minecraft
1.7.10
Привет! на днях использовал код, который предложил
BlesseNtumble
Написал . Сделал всё как надо. Когда подаёшь сигнал- он превращается в onlamp а когда сигнала нет- обратного не происходит. Догадываюсь что надо написать что-то вроде
if. onlamp не имеет силу редстоуна
world set block BlockAdvancedLamp
Или как-то так.
вот код:
Java:
public class BlockAdvancedLamp extends Block {
    
    protected BlockAdvancedLamp(Material glass) {
        super(glass);
        this.setCreativeTab(HardmineModMain.Hardmine);
        this.setBlockName("advancedLamp");
        this.setBlockTextureName("offlamp");
        this.setHardness(2F);
        this.setResistance(5F);
    }


    private boolean isEnable;

    public void BlockRedstoneLight(boolean status){

        this.isEnable = status;

        if (status)
    {
            this.setLightLevel(1.0F);
    }
    
}
    public void onBlockAdded(World world, int x, int y, int z)
    {
        if (!world.isRemote)
        {
            if (this.isEnable && !world.isBlockIndirectlyGettingPowered(x, y, z))
            {
                world.scheduleBlockUpdate(x, y, z, this, 4);
            }
            else if (!this.isEnable && world.isBlockIndirectlyGettingPowered(x, y, z))
            {
                world.setBlock(x, y, z, HardmineModMain.onlamp, 0, 2);
            }
        }
    }
    public void onNeighborBlockChange(World world, int x, int y, int z, Block block)
    {
        if (!world.isRemote)
        {
            if (this.isEnable && !world.isBlockIndirectlyGettingPowered(x, y, z))
            {
                world.scheduleBlockUpdate(x, y, z, this, 4);
            }
            else if (!this.isEnable && world.isBlockIndirectlyGettingPowered(x, y, z))
            {
                world.setBlock(x, y, z, HardmineModMain.onlamp, 0, 2);
            }
        }
    }
    public void updateTick(World world, int x, int y, int z, Random rand)
    {
        if (!world.isRemote && this.isEnable && !world.isBlockIndirectlyGettingPowered(x, y, z))
        {
            world.setBlock(x, y, z, HardmineModMain.BlockAdvancedLamp, 0, 2);
        }
    }
    public Item getItemDropped(int p_149650_1_, Random rand, int fortune)
    {
        return Item.getItemFromBlock(HardmineModMain.offlamp);
    }

    @SideOnly(Side.CLIENT)
    public Item getItem(World world, int x, int y, int z)
    {
        return Item.getItemFromBlock(HardmineModMain.BlockAdvancedLamp);
    }
    protected ItemStack createStackedBlock(int p_149644_1_)
    {
        return new ItemStack(HardmineModMain.BlockAdvancedLamp);
    }
}
 
Сверху