Updates BuildCraft to 7.0.9

Split dependency logic on the BuildCraft modules.
Config needs to be reset, if BuildCraft was disabled actively,
because now there are 3 BC modules to be taken account of
This commit is contained in:
thatsIch
2015-06-08 01:41:35 +02:00
parent 57836848ae
commit 71ce42f26a
25 changed files with 947 additions and 621 deletions
@@ -28,24 +28,23 @@ import net.minecraftforge.common.util.ForgeDirection;
import appeng.api.config.FuzzyMode;
import appeng.integration.IntegrationRegistry;
import appeng.integration.IntegrationType;
import appeng.integration.abstraction.IBC;
import appeng.integration.abstraction.IBuildCraftTransport;
import appeng.util.InventoryAdaptor;
import appeng.util.iterators.NullIterator;
public class AdaptorBCPipe extends InventoryAdaptor
{
private final IBC bc;
private final IBuildCraftTransport buildCraft;
private final TileEntity i;
private final ForgeDirection d;
public AdaptorBCPipe( TileEntity s, ForgeDirection dd )
{
this.bc = (IBC) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BC );
if( this.bc != null )
this.buildCraft = (IBuildCraftTransport) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BuildCraftTransport );
if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.BuildCraftTransport ) )
{
if( this.bc.isPipe( s, dd ) )
if( this.buildCraft.isPipe( s, dd ) )
{
this.i = s;
this.d = dd;
@@ -96,7 +95,7 @@ public class AdaptorBCPipe extends InventoryAdaptor
return null;
}
if( this.bc.addItemsToPipe( this.i, toBeAdded, this.d ) )
if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.BuildCraftTransport ) && this.buildCraft.addItemsToPipe( this.i, toBeAdded, this.d ) )
{
return null;
}
@@ -27,19 +27,19 @@ import net.minecraftforge.common.util.ForgeDirection;
import appeng.integration.IntegrationRegistry;
import appeng.integration.IntegrationType;
import appeng.integration.abstraction.IBC;
import appeng.integration.abstraction.IBuildCraftTransport;
public class WrapperBCPipe implements IInventory
{
private final IBC bc;
private final IBuildCraftTransport bc;
private final TileEntity ad;
private final ForgeDirection dir;
public WrapperBCPipe( TileEntity te, ForgeDirection d )
{
this.bc = (IBC) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BC );
this.bc = (IBuildCraftTransport) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BuildCraftTransport );
this.ad = te;
this.dir = d;
}
@@ -71,7 +71,10 @@ public class WrapperBCPipe implements IInventory
@Override
public void setInventorySlotContents( int i, ItemStack itemstack )
{
this.bc.addItemsToPipe( this.ad, itemstack, this.dir );
if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.BuildCraftTransport ) )
{
this.bc.addItemsToPipe( this.ad, itemstack, this.dir );
}
}
@Override