Update MFR Rednet API
This commit is contained in:
parent
27772725d8
commit
9b65cc210d
8 changed files with 43 additions and 133 deletions
|
@ -22,6 +22,8 @@ import net.minecraft.util.Vec3;
|
||||||
import net.minecraft.world.IBlockAccess;
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import net.minecraftforge.common.util.ForgeDirection;
|
||||||
|
import powercrystals.minefactoryreloaded.api.rednet.connectivity.IRedNetConnection;
|
||||||
|
import powercrystals.minefactoryreloaded.api.rednet.connectivity.RedNetConnectionType;
|
||||||
import appeng.api.parts.IPart;
|
import appeng.api.parts.IPart;
|
||||||
import appeng.api.parts.IPartHost;
|
import appeng.api.parts.IPartHost;
|
||||||
import appeng.api.parts.PartItemStack;
|
import appeng.api.parts.PartItemStack;
|
||||||
|
@ -42,11 +44,14 @@ import appeng.parts.NullCableBusContainer;
|
||||||
import appeng.tile.AEBaseTile;
|
import appeng.tile.AEBaseTile;
|
||||||
import appeng.tile.networking.TileCableBus;
|
import appeng.tile.networking.TileCableBus;
|
||||||
import appeng.tile.networking.TileCableBusTESR;
|
import appeng.tile.networking.TileCableBusTESR;
|
||||||
|
import appeng.transformer.annotations.integration.Interface;
|
||||||
|
import appeng.transformer.annotations.integration.Method;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
import cpw.mods.fml.relauncher.Side;
|
import cpw.mods.fml.relauncher.Side;
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
import cpw.mods.fml.relauncher.SideOnly;
|
||||||
|
|
||||||
public class BlockCableBus extends AEBaseBlock
|
@Interface(iface = "powercrystals.minefactoryreloaded.api.rednet.connectivity.IRedNetConnection", iname = "MFR")
|
||||||
|
public class BlockCableBus extends AEBaseBlock implements IRedNetConnection
|
||||||
{
|
{
|
||||||
|
|
||||||
static private ICableBusContainer nullCB = new NullCableBusContainer();
|
static private ICableBusContainer nullCB = new NullCableBusContainer();
|
||||||
|
@ -416,4 +421,10 @@ public class BlockCableBus extends AEBaseBlock
|
||||||
*/
|
*/
|
||||||
boolean ImmibisMicroblocks_TransformableBlockMarker = true;
|
boolean ImmibisMicroblocks_TransformableBlockMarker = true;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Method(iname = "MFR")
|
||||||
|
public RedNetConnectionType getConnectionType(World world, int x, int y, int z, ForgeDirection side)
|
||||||
|
{
|
||||||
|
return cb( world, x, y, z ).canConnectRedstone( EnumSet.allOf( ForgeDirection.class ) ) ? RedNetConnectionType.CableSingle : RedNetConnectionType.None;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,9 +18,7 @@ import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.AxisAlignedBB;
|
import net.minecraft.util.AxisAlignedBB;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.Vec3;
|
import net.minecraft.util.Vec3;
|
||||||
import net.minecraft.world.World;
|
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import net.minecraftforge.common.util.ForgeDirection;
|
||||||
import powercrystals.minefactoryreloaded.api.rednet.RedNetConnectionType;
|
|
||||||
import appeng.api.networking.IGridNode;
|
import appeng.api.networking.IGridNode;
|
||||||
import appeng.api.parts.IFacadeContainer;
|
import appeng.api.parts.IFacadeContainer;
|
||||||
import appeng.api.parts.IFacadePart;
|
import appeng.api.parts.IFacadePart;
|
||||||
|
@ -503,36 +501,6 @@ public class CableBusPart extends JCuboidPart implements JNormalOcclusion, IReds
|
||||||
cb.securityBreak();
|
cb.securityBreak();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public RedNetConnectionType getConnectionType(World world, int x, int y, int z, ForgeDirection side)
|
|
||||||
{
|
|
||||||
return cb.getConnectionType( world, x, y, z, side );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int[] getOutputValues(World world, int x, int y, int z, ForgeDirection side)
|
|
||||||
{
|
|
||||||
return cb.getOutputValues( world, x, y, z, side );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getOutputValue(World world, int x, int y, int z, ForgeDirection side, int subnet)
|
|
||||||
{
|
|
||||||
return cb.getOutputValue( world, x, y, z, side, subnet );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onInputsChanged(World world, int x, int y, int z, ForgeDirection side, int[] inputValues)
|
|
||||||
{
|
|
||||||
cb.onInputsChanged( world, x, y, z, side, inputValues );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onInputChanged(World world, int x, int y, int z, ForgeDirection side, int inputValue)
|
|
||||||
{
|
|
||||||
cb.onInputChanged( world, x, y, z, side, inputValue );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isEmpty()
|
public boolean isEmpty()
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,12 +1,9 @@
|
||||||
package appeng.helpers;
|
package appeng.helpers;
|
||||||
|
|
||||||
import powercrystals.minefactoryreloaded.api.rednet.IConnectableRedNet;
|
|
||||||
import appeng.api.networking.IGridHost;
|
import appeng.api.networking.IGridHost;
|
||||||
import appeng.api.parts.IPartHost;
|
import appeng.api.parts.IPartHost;
|
||||||
import appeng.transformer.annotations.integration.Interface;
|
|
||||||
|
|
||||||
@Interface(iface = "powercrystals.minefactoryreloaded.api.rednet.IConnectableRedNet", iname = "MFR")
|
public interface AEMultiTile extends IGridHost, IPartHost
|
||||||
public interface AEMultiTile extends IGridHost, IPartHost, IConnectableRedNet
|
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
package appeng.integration.modules;
|
package appeng.integration.modules;
|
||||||
|
|
||||||
import powercrystals.minefactoryreloaded.api.rednet.RedNetConnectionType;
|
import powercrystals.minefactoryreloaded.api.rednet.connectivity.IRedNetConnection;
|
||||||
import appeng.integration.BaseModule;
|
import appeng.integration.BaseModule;
|
||||||
|
|
||||||
public class MFR extends BaseModule
|
public class MFR extends BaseModule
|
||||||
|
@ -9,7 +9,7 @@ public class MFR extends BaseModule
|
||||||
public static MFR instance;
|
public static MFR instance;
|
||||||
|
|
||||||
public MFR() {
|
public MFR() {
|
||||||
TestClass( RedNetConnectionType.class );
|
TestClass( IRedNetConnection.class );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -20,7 +20,6 @@ import net.minecraft.util.AxisAlignedBB;
|
||||||
import net.minecraft.util.Vec3;
|
import net.minecraft.util.Vec3;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import net.minecraftforge.common.util.ForgeDirection;
|
||||||
import powercrystals.minefactoryreloaded.api.rednet.RedNetConnectionType;
|
|
||||||
import appeng.api.AEApi;
|
import appeng.api.AEApi;
|
||||||
import appeng.api.exceptions.FailedConnection;
|
import appeng.api.exceptions.FailedConnection;
|
||||||
import appeng.api.implementations.parts.IPartCable;
|
import appeng.api.implementations.parts.IPartCable;
|
||||||
|
@ -322,7 +321,8 @@ public class CableBusContainer implements AEMultiTile, ICableBusContainer
|
||||||
|
|
||||||
private static final ThreadLocal<Boolean> isLoading = new ThreadLocal();
|
private static final ThreadLocal<Boolean> isLoading = new ThreadLocal();
|
||||||
|
|
||||||
public static boolean isLoading() {
|
public static boolean isLoading()
|
||||||
|
{
|
||||||
Boolean is = isLoading.get();
|
Boolean is = isLoading.get();
|
||||||
return is != null && is == true;
|
return is != null && is == true;
|
||||||
}
|
}
|
||||||
|
@ -980,38 +980,6 @@ public class CableBusContainer implements AEMultiTile, ICableBusContainer
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public RedNetConnectionType getConnectionType(World world, int x, int y, int z, ForgeDirection side)
|
|
||||||
{
|
|
||||||
return getPart( side ).canConnectRedstone() ? RedNetConnectionType.CableSingle : RedNetConnectionType.None;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int[] getOutputValues(World world, int x, int y, int z, ForgeDirection side)
|
|
||||||
{
|
|
||||||
// never called
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getOutputValue(World world, int x, int y, int z, ForgeDirection side, int subnet)
|
|
||||||
{
|
|
||||||
// never called
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onInputsChanged(World world, int x, int y, int z, ForgeDirection side, int[] inputValues)
|
|
||||||
{
|
|
||||||
// never called
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onInputChanged(World world, int x, int y, int z, ForgeDirection side, int inputValue)
|
|
||||||
{
|
|
||||||
// never called
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void securityBreak()
|
public void securityBreak()
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,6 +26,12 @@ public class PartUpgradeable extends PartBasicState implements ISegmentedInvento
|
||||||
return upgrades.getInstalledUpgrades( u );
|
return upgrades.getInstalledUpgrades( u );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canConnectRedstone()
|
||||||
|
{
|
||||||
|
return upgrades.getMaxInstalled( Upgrades.REDSTONE ) > 0;
|
||||||
|
}
|
||||||
|
|
||||||
protected int getUpgradeSlots()
|
protected int getUpgradeSlots()
|
||||||
{
|
{
|
||||||
return 4;
|
return 4;
|
||||||
|
|
|
@ -62,7 +62,7 @@ public class UpgradeInventory extends AppEngInternalInventory implements IAEAppE
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getMaxInstalled(Upgrades u)
|
public int getMaxInstalled(Upgrades u)
|
||||||
{
|
{
|
||||||
Integer max = null;
|
Integer max = null;
|
||||||
for (ItemStack is : u.getSupported().keySet())
|
for (ItemStack is : u.getSupported().keySet())
|
||||||
|
|
|
@ -4,7 +4,6 @@ import io.netty.buffer.ByteBuf;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.EnumSet;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
@ -17,7 +16,6 @@ import net.minecraft.util.AxisAlignedBB;
|
||||||
import net.minecraft.util.Vec3;
|
import net.minecraft.util.Vec3;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import net.minecraftforge.common.util.ForgeDirection;
|
||||||
import powercrystals.minefactoryreloaded.api.rednet.RedNetConnectionType;
|
|
||||||
import appeng.api.networking.IGridNode;
|
import appeng.api.networking.IGridNode;
|
||||||
import appeng.api.parts.IFacadeContainer;
|
import appeng.api.parts.IFacadeContainer;
|
||||||
import appeng.api.parts.IPart;
|
import appeng.api.parts.IPart;
|
||||||
|
@ -34,7 +32,6 @@ import appeng.parts.CableBusContainer;
|
||||||
import appeng.tile.AEBaseTile;
|
import appeng.tile.AEBaseTile;
|
||||||
import appeng.tile.events.AETileEventHandler;
|
import appeng.tile.events.AETileEventHandler;
|
||||||
import appeng.tile.events.TileEventType;
|
import appeng.tile.events.TileEventType;
|
||||||
import appeng.transformer.annotations.integration.Method;
|
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
public class TileCableBus extends AEBaseTile implements AEMultiTile, ICustomCollision
|
public class TileCableBus extends AEBaseTile implements AEMultiTile, ICustomCollision
|
||||||
|
@ -308,43 +305,6 @@ public class TileCableBus extends AEBaseTile implements AEMultiTile, ICustomColl
|
||||||
return cb.hasRedstone( side );
|
return cb.hasRedstone( side );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@Method(iname = "MFR")
|
|
||||||
public RedNetConnectionType getConnectionType(World world, int x, int y, int z, ForgeDirection side)
|
|
||||||
{
|
|
||||||
return cb.canConnectRedstone( EnumSet.of( side ) ) ? RedNetConnectionType.CableSingle : RedNetConnectionType.None;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@Method(iname = "MFR")
|
|
||||||
public int[] getOutputValues(World world, int x, int y, int z, ForgeDirection side)
|
|
||||||
{
|
|
||||||
// never called!
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@Method(iname = "MFR")
|
|
||||||
public int getOutputValue(World world, int x, int y, int z, ForgeDirection side, int subnet)
|
|
||||||
{
|
|
||||||
// never called!
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@Method(iname = "MFR")
|
|
||||||
public void onInputsChanged(World world, int x, int y, int z, ForgeDirection side, int[] inputValues)
|
|
||||||
{
|
|
||||||
// never called!
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@Method(iname = "MFR")
|
|
||||||
public void onInputChanged(World world, int x, int y, int z, ForgeDirection side, int inputValue)
|
|
||||||
{
|
|
||||||
// never called!
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isEmpty()
|
public boolean isEmpty()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue