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

Conflicts:
	gradle.properties
	src/main/java/appeng/facade/FacadeContainer.java
	src/main/java/appeng/facade/FacadePart.java
	src/main/java/appeng/integration/abstraction/IBC.java
	src/main/java/appeng/integration/modules/BC.java
	src/main/java/appeng/integration/modules/BCHelpers/BCPipeHandler.java
	src/main/java/appeng/integration/modules/BCHelpers/BCPipeInventory.java
	src/main/java/appeng/items/tools/ToolNetworkTool.java
	src/main/java/appeng/items/tools/quartz/ToolQuartzWrench.java
	src/main/java/appeng/parts/CableBusStorage.java
	src/main/java/appeng/parts/layers/LayerIPipeConnection.java
	src/main/java/appeng/parts/misc/PartStorageBus.java
	src/main/java/appeng/parts/p2p/PartP2PItems.java
	src/main/java/appeng/util/inv/AdaptorBCPipe.java
	src/main/java/appeng/util/inv/WrapperBCPipe.java
This commit is contained in:
thatsIch
2015-06-08 01:41:35 +02:00
committed by thatsIch
parent 3b5b9b68ce
commit 97f23cf955
30 changed files with 1167 additions and 1408 deletions
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -19,6 +19,8 @@
package appeng.parts;
import javax.annotation.Nullable;
import appeng.api.implementations.parts.IPartCable;
import appeng.api.parts.IFacadePart;
import appeng.api.parts.IPart;
@@ -128,7 +130,7 @@ public class CableBusStorage
return null;
}
public void setFacade( int x, IFacadePart facade )
public void setFacade( int x, @Nullable IFacadePart facade )
{
if( this.facades != null && this.facades.length > x && facade == null )
{
@@ -57,7 +57,7 @@ import appeng.core.sync.packets.PacketPartPlacement;
import appeng.facade.IFacadeItem;
import appeng.integration.IntegrationRegistry;
import appeng.integration.IntegrationType;
import appeng.integration.abstraction.IBC;
import appeng.integration.abstraction.IBuildCraftTransport;
import appeng.integration.abstraction.IFMP;
import appeng.util.LookDirection;
import appeng.util.Platform;
@@ -419,9 +419,9 @@ public class PartPlacement
return ( (IFacadeItem) held.getItem() ).createPartFromItemStack( held, side );
}
if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.BC ) )
if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.BuildCraftTransport ) )
{
IBC bc = (IBC) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BC );
IBuildCraftTransport bc = (IBuildCraftTransport) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BuildCraftTransport );
if( bc.isFacade( held ) )
{
return bc.createFacadePart( held, side );
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -24,8 +24,10 @@ import buildcraft.api.transport.IPipeTile.PipeType;
import appeng.api.parts.IPart;
import appeng.api.parts.LayerBase;
import appeng.api.util.ForgeDirection;
import appeng.helpers.Reflected;
@Reflected
public class LayerIPipeConnection extends LayerBase implements IPipeConnection
{
@@ -1,6 +1,6 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
@@ -83,8 +83,9 @@ import appeng.util.Platform;
import appeng.util.prioitylist.FuzzyPriorityList;
import appeng.util.prioitylist.PrecisePriorityList;
// TODO: BC PIPE INTEGRATION
//@Interface( iname = "BC", iface = "buildcraft.api.transport.IPipeConnection" ) - IPipeConnection
// TODO: BC Integration
//@Interface( iname = "BuildCraftCore", iface = "buildcraft.api.transport.IPipeConnection" )
public class PartStorageBus extends PartUpgradeable implements IGridTickable, ICellContainer, IMEMonitorHandlerReceiver<IAEItemStack>, IPriorityHost
{
final BaseActionSource mySrc;
@@ -560,8 +561,8 @@ public class PartStorageBus extends PartUpgradeable implements IGridTickable, IC
// TODO: BC PIPE INTEGRATION
/*
@Override
@Method( iname = "BC" )
public ConnectOverride overridePipeConnection( PipeType type, AEPartLocation with )
@Method( iname = "BuildCraftCore" )
public ConnectOverride overridePipeConnection( PipeType type, ForgeDirection with )
{
return type == PipeType.ITEM && with == this.side ? ConnectOverride.CONNECT : ConnectOverride.DISCONNECT;
}
@@ -30,6 +30,7 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.tileentity.TileEntityChest;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IChatComponent;
import appeng.api.networking.IGridNode;
import appeng.api.networking.events.MENetworkBootingStatusChange;
import appeng.api.networking.events.MENetworkChannelsChanged;
@@ -39,16 +40,20 @@ import appeng.api.networking.ticking.IGridTickable;
import appeng.api.networking.ticking.TickRateModulation;
import appeng.api.networking.ticking.TickingRequest;
import appeng.core.settings.TickRates;
import appeng.integration.IntegrationRegistry;
import appeng.integration.IntegrationType;
import appeng.integration.abstraction.IBuildCraftTransport;
import appeng.me.GridAccessException;
import appeng.me.cache.helpers.TunnelCollection;
import appeng.tile.inventory.AppEngNullInventory;
import appeng.util.Platform;
import appeng.util.inv.WrapperBCPipe;
import appeng.util.inv.WrapperChainedInventory;
import appeng.util.inv.WrapperMCISidedInventory;
// TODO: BUILD CRAFT INTEGRATION
// @Interface( iface = "buildcraft.api.transport.IPipeConnection", iname = "BC" ) IPipeConnection
// TODO: BC Integration
//@Integration.Interface( iface = "buildcraft.api.transport.IPipeConnection", iname = "BuildCraftCore" )
public class PartP2PItems extends PartP2PTunnel<PartP2PItems> implements ISidedInventory, IGridTickable
{
@@ -128,26 +133,20 @@ public class PartP2PItems extends PartP2PTunnel<PartP2PItems> implements ISidedI
this.which.add( this );
/*
// TODO: BUILD CRAFT INTEGRATION
if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.BC ) )
if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.BuildCraftTransport ) )
{
IBC buildcraft = (IBC) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BC );
if( buildcraft != null )
final IBuildCraftTransport buildcraft = (IBuildCraftTransport) IntegrationRegistry.INSTANCE.getInstance( IntegrationType.BuildCraftTransport );
if( buildcraft.isPipe( te, this.side.getOpposite() ) )
{
if( buildcraft.isPipe( te, this.side.getOpposite() ) )
try
{
output = new WrapperBCPipe( te, this.side.getFacing().getOpposite() );
}
catch( Throwable ignore )
{
try
{
output = new WrapperBCPipe( te, this.side.getFacing().getOpposite() );
}
catch( Throwable ignore )
{
}
}
}
}
*/
/*
* if ( AppEng.INSTANCE.isIntegrationEnabled( "TE" ) ) { ITE thermal = (ITE) AppEng.INSTANCE.getIntegration(
@@ -382,7 +381,7 @@ public class PartP2PItems extends PartP2PTunnel<PartP2PItems> implements ISidedI
int id,
int value )
{
}
@Override
@@ -403,13 +402,11 @@ public class PartP2PItems extends PartP2PTunnel<PartP2PItems> implements ISidedI
return null;
}
/*
// TODO: BUILD CRAFT INTEGRATION
@Override
@Method( iname = "BC" )
public ConnectOverride overridePipeConnection( PipeType type, AEPartLocation with )
{
return this.side == with && type == PipeType.ITEM ? ConnectOverride.CONNECT : ConnectOverride.DEFAULT;
}
*/
// TODO: BC Integration
// @Override
// @Method( iname = "BuildCraftCore" )
// public ConnectOverride overridePipeConnection( PipeType type, ForgeDirection with )
// {
// return this.side == with && type == PipeType.ITEM ? ConnectOverride.CONNECT : ConnectOverride.DEFAULT;
// }
}