Привет! на днях использовал код, который предложил
BlesseNtumble
Написал . Сделал всё как надо. Когда подаёшь сигнал- он превращается в onlamp а когда сигнала нет- обратного не происходит. Догадываюсь что надо написать что-то вроде
if. onlamp не имеет силу редстоуна
world set block BlockAdvancedLamp
Или как-то так.
вот код:
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);
}
}