make detector work again

This commit is contained in:
Raoul Van den Berge
2016-01-02 18:41:32 +01:00
parent 5bffb80190
commit 56b9adb0a2
5 changed files with 35 additions and 19 deletions

View File

@@ -47,14 +47,23 @@ public class BlockDetector extends BlockMachine
return new TileDetector();
}
public int isProvidingWeakPower(IBlockAccess world, BlockPos pos, IBlockState state, EnumFacing side)
@Override
public int getWeakPower(IBlockAccess world, BlockPos pos, IBlockState state, EnumFacing side)
{
return ((TileDetector) world.getTileEntity(pos)).isPowered() ? 15 : 0;
TileDetector detector = (TileDetector) world.getTileEntity(pos);
if (detector.getDirection() == side.getOpposite())
{
return detector.isPowered() ? 15 : 0;
}
public int isProvidingStrongPower(IBlockAccess world, BlockPos pos, IBlockState state, EnumFacing side)
return 0;
}
@Override
public int getStrongPower(IBlockAccess world, BlockPos pos, IBlockState state, EnumFacing side)
{
return ((TileDetector) world.getTileEntity(pos)).isPowered() ? 15 : 0;
return getWeakPower(world, pos, state, side);
}
public boolean canProvidePower()

View File

@@ -36,6 +36,14 @@ public class TileDetector extends TileMachine implements IInventory, ISidedInven
this.redstoneControlled = false;
}
@Override
public void onDisconnected()
{
super.onDisconnected();
powered = false;
}
@Override
public int getEnergyUsage()
{
@@ -101,7 +109,6 @@ public class TileDetector extends TileMachine implements IInventory, ISidedInven
if (powered != lastPowered)
{
worldObj.markBlockForUpdate(pos);
worldObj.notifyNeighborsOfStateChange(pos, StorageCraftBlocks.DETECTOR);
}
}
@@ -199,7 +206,6 @@ public class TileDetector extends TileMachine implements IInventory, ISidedInven
if (powered != lastPowered)
{
worldObj.markBlockForUpdate(pos);
worldObj.notifyNeighborsOfStateChange(pos, StorageCraftBlocks.DETECTOR);
}
}

View File

@@ -3,13 +3,16 @@
"defaults": {
"model": "orientable",
"textures": {
"side": "storagecraft:blocks/detector_unpowered",
"top": "storagecraft:blocks/detector_unpowered",
"side": "storagecraft:blocks/side",
"top": "storagecraft:blocks/side",
"front": "storagecraft:blocks/detector_unpowered"
}
},
"variants": {
"inventory": [
{
"y": 0
},
{
"y": 0
}
@@ -20,6 +23,15 @@
"false": {
}
},
"powered": {
"true": {
"textures": {
"front": "storagecraft:blocks/detector_powered"
}
},
"false": {
}
},
"direction": {
"north": {
"y": 0
@@ -39,17 +51,6 @@
"down": {
"x": 90
}
},
"powered": {
"true": {
"textures": {
"side": "storagecraft:blocks/detector_powered",
"top": "storagecraft:blocks/detector_powered",
"front": "storagecraft:blocks/detector_powered"
}
},
"false": {
}
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 178 B