untested basic update to 1.5

Still have to bug test and add textures but it looks to be mostly done.
This commit is contained in:
Rseifert 2013-03-18 00:08:52 -04:00
parent 5b6781e811
commit 9e0cfe6201
27 changed files with 220 additions and 131 deletions

View file

@ -1,16 +1,17 @@
package assemblyline.common.machine;
import net.minecraft.block.material.Material;
import assemblyline.common.TabAssemblyLine;
import assemblyline.common.block.BlockALMachine;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
public class BlockBeltSorter extends BlockALMachine
{
public BlockBeltSorter(int id)
{
super("BlockBeltSorter", id, Material.iron, TabAssemblyLine.INSTANCE);
super(id, Material.iron);
this.setCreativeTab(TabAssemblyLine.INSTANCE);
this.setUnlocalizedName("BeltSorter");
}
}

View file

@ -28,7 +28,7 @@ public class BlockManipulator extends BlockImprintable
@Override
public AxisAlignedBB getSelectedBoundingBoxFromPool(World par1World, int par2, int par3, int par4)
{
return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) par2, (double) par3, (double) par4, (double) par2 + 1, (double) par3 + 1, (double) par4 + 1);
return AxisAlignedBB.getAABBPool().getAABB((double) par2, (double) par3, (double) par4, (double) par2 + 1, (double) par3 + 1, (double) par4 + 1);
}
@Override
@ -78,7 +78,7 @@ public class BlockManipulator extends BlockImprintable
}
@Override
public TileEntity createNewTileEntity(World var1, int metadata)
public TileEntity createTileEntity(World var1, int metadata)
{
return new TileEntityManipulator();
}

View file

@ -17,7 +17,7 @@ public class BlockRejector extends BlockImprintable
}
@Override
public TileEntity createNewTileEntity(World var1, int metadata)
public TileEntity createTileEntity(World var1, int metadata)
{
return new TileEntityRejector();
}

View file

@ -9,6 +9,7 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.tileentity.TileEntityChest;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
import net.minecraftforge.common.ISidedInventory;
import universalelectricity.core.vector.Vector3;
@ -481,4 +482,10 @@ public class TileEntityManipulator extends TileEntityFilterable implements IRota
{
this.isRedstonePowered = false;
}
@Override
public boolean canConnect(ForgeDirection dir)
{
return dir != this.getDirection();
}
}

View file

@ -133,4 +133,10 @@ public class TileEntityRejector extends TileEntityFilterable
super.writeToNBT(nbt);
nbt.setBoolean("piston", this.firePiston);
}
@Override
public boolean canConnect(ForgeDirection dir)
{
return dir != this.getDirection();
}
}

View file

@ -7,13 +7,14 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraftforge.common.ForgeDirection;
import universalelectricity.prefab.network.IPacketReceiver;
import universalelectricity.prefab.tile.TileEntityElectricityReceiver;
import universalelectricity.prefab.tile.TileEntityElectricityRunnable;
import assemblyline.common.machine.belt.TileEntityConveyorBelt;
import com.google.common.io.ByteArrayDataInput;
public class TileEntityRoboticSorter extends TileEntityElectricityReceiver implements IPacketReceiver, IInventory
public class TileEntityRoboticSorter extends TileEntityElectricityRunnable implements IPacketReceiver, IInventory
{
/**
* The items this container contains.
@ -211,4 +212,22 @@ public class TileEntityRoboticSorter extends TileEntityElectricityReceiver imple
{
return 1;
}
@Override
public boolean canConnect(ForgeDirection dir)
{
return dir == ForgeDirection.DOWN;
}
@Override
public boolean func_94042_c()
{
return false;
}
@Override
public boolean func_94041_b(int i, ItemStack itemstack)
{
return false;
}
}

View file

@ -21,7 +21,7 @@ public class BlockArmbot extends BlockALMachine
public BlockArmbot(int id)
{
super(id, UniversalElectricity.machine);
this.setBlockName("armbot");
this.setUnlocalizedName("armbot");
this.setCreativeTab(TabAssemblyLine.INSTANCE);
}
@ -95,21 +95,4 @@ public class BlockArmbot extends BlockALMachine
return true;
}
@Override
public boolean isProvidingStrongPower(IBlockAccess world, int x, int y, int z, int side)
{
TileEntity ent = world.getBlockTileEntity(x, y, z);
// if (ent instanceof TileEntityArmbot) { return ((TileEntityArmbot)
// ent).isProvidingPowerSide(ForgeDirection.getOrientation(side)); }
// if (ent instanceof TileEntityArmbot) { return ((TileEntityArmbot)
// ent).getFacingDirectionFromAngle().getOpposite() == ForgeDirection.getOrientation(side);}
return false;
}
@Override
public boolean isProvidingWeakPower(IBlockAccess world, int x, int y, int z, int side)
{
return this.isProvidingStrongPower(world, x, y, z, side);
}
}

View file

@ -4,7 +4,6 @@ import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.EnumSet;
import java.util.Iterator;
import java.util.List;
@ -23,8 +22,7 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.MathHelper;
import net.minecraftforge.common.ForgeDirection;
import universalelectricity.core.electricity.ElectricityConnections;
import universalelectricity.core.implement.IJouleStorage;
import universalelectricity.core.block.IElectricityStorage;
import universalelectricity.core.vector.Vector3;
import universalelectricity.prefab.TranslationHelper;
import universalelectricity.prefab.multiblock.IMultiBlock;
@ -53,7 +51,7 @@ import dan200.computer.api.IComputerAccess;
import dan200.computer.api.IPeripheral;
import dark.minecraft.helpers.ItemWorldHelper;
public class TileEntityArmbot extends TileEntityAssemblyNetwork implements IMultiBlock, IInventory, IPacketReceiver, IJouleStorage, IArmbot, IPeripheral
public class TileEntityArmbot extends TileEntityAssemblyNetwork implements IMultiBlock, IInventory, IPacketReceiver, IElectricityStorage, IArmbot, IPeripheral
{
private final CommandManager commandManager = new CommandManager();
private static final int PACKET_COMMANDS = 128;
@ -92,13 +90,6 @@ public class TileEntityArmbot extends TileEntityAssemblyNetwork implements IMult
*/
public EntityItem renderEntityItem = null;
@Override
public void initiate()
{
ElectricityConnections.registerConnector(this, EnumSet.of(ForgeDirection.DOWN));
this.onInventoryChanged();
}
@Override
public void onUpdate()
{
@ -558,19 +549,19 @@ public class TileEntityArmbot extends TileEntityAssemblyNetwork implements IMult
}
@Override
public double getJoules(Object... data)
public double getJoules()
{
return this.wattsReceived;
}
@Override
public void setJoules(double joules, Object... data)
public void setJoules(double joules)
{
this.wattsReceived = joules;
}
@Override
public double getMaxJoules(Object... data)
public double getMaxJoules()
{
return 1000;
}
@ -673,10 +664,8 @@ public class TileEntityArmbot extends TileEntityAssemblyNetwork implements IMult
@Override
public void onDestroy(TileEntity callingBlock)
{
Vector3 destroyPosition = new Vector3(callingBlock);
destroyPosition.add(new Vector3(0, 1, 0));
destroyPosition.setBlockWithNotify(this.worldObj, 0);
this.worldObj.setBlockWithNotify(this.xCoord, this.yCoord, this.zCoord, 0);
this.worldObj.setBlockAndMetadataWithNotify(this.xCoord, this.yCoord, this.zCoord, 0, 0, 3);
this.worldObj.setBlockAndMetadataWithNotify(this.xCoord, this.yCoord + 1, this.zCoord, 0, 0, 3);
}
@Override
@ -973,4 +962,23 @@ public class TileEntityArmbot extends TileEntityAssemblyNetwork implements IMult
}
}
@Override
public boolean canConnect(ForgeDirection direction)
{
return direction == ForgeDirection.DOWN;
}
@Override
public boolean func_94042_c()
{
// TODO Auto-generated method stub
return false;
}
@Override
public boolean func_94041_b(int i, ItemStack itemstack)
{
return false;
}
}

View file

@ -6,6 +6,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.MathHelper;
@ -30,7 +31,7 @@ public class BlockConveyorBelt extends BlockALMachine
public BlockConveyorBelt(int id)
{
super(id, UniversalElectricity.machine);
this.setBlockName("conveyorBelt");
this.setUnlocalizedName("conveyorBelt");
this.setBlockBounds(0, 0, 0, 1, 0.3f, 1);
this.setCreativeTab(TabAssemblyLine.INSTANCE);
}
@ -68,11 +69,17 @@ public class BlockConveyorBelt extends BlockALMachine
{
TileEntityConveyorBelt tileEntity = (TileEntityConveyorBelt) t;
if (tileEntity.getSlant() == SlantType.UP || tileEntity.getSlant() == SlantType.DOWN) { return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + 1, (double) y + 1, (double) z + 1); }
if (tileEntity.getSlant() == SlantType.TOP) { return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + 0.68f, (double) z + this.minZ, (double) x + this.maxX, (double) y + 0.98f, (double) z + this.maxZ); }
if (tileEntity.getSlant() == SlantType.UP || tileEntity.getSlant() == SlantType.DOWN)
{
return AxisAlignedBB.getAABBPool().getAABB((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + 1, (double) y + 1, (double) z + 1);
}
if (tileEntity.getSlant() == SlantType.TOP)
{
return AxisAlignedBB.getAABBPool().getAABB((double) x + this.minX, (double) y + 0.68f, (double) z + this.minZ, (double) x + this.maxX, (double) y + 0.98f, (double) z + this.maxZ);
}
}
return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + this.maxX, (double) y + this.maxY, (double) z + this.maxZ);
return AxisAlignedBB.getAABBPool().getAABB((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + this.maxX, (double) y + this.maxY, (double) z + this.maxZ);
}
@Override
@ -86,7 +93,7 @@ public class BlockConveyorBelt extends BlockALMachine
if (tileEntity.getSlant() == SlantType.UP || tileEntity.getSlant() == SlantType.DOWN)
{
AxisAlignedBB boundBottom = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.3, z + 1);
AxisAlignedBB boundBottom = AxisAlignedBB.getAABBPool().getAABB(x, y, z, x + 1, y + 0.3, z + 1);
AxisAlignedBB boundTop = null;
ForgeDirection direction = tileEntity.getDirection();
@ -95,38 +102,38 @@ public class BlockConveyorBelt extends BlockALMachine
{
if (direction.offsetX > 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x + (float) direction.offsetX / 2, y, z, x + 1, y + 0.8, z + 1);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x + (float) direction.offsetX / 2, y, z, x + 1, y + 0.8, z + 1);
}
else if (direction.offsetX < 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + (float) direction.offsetX / -2, y + 0.8, z + 1);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x, y, z, x + (float) direction.offsetX / -2, y + 0.8, z + 1);
}
else if (direction.offsetZ > 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z + (float) direction.offsetZ / 2, x + 1, y + 0.8, z + 1);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x, y, z + (float) direction.offsetZ / 2, x + 1, y + 0.8, z + 1);
}
else if (direction.offsetZ < 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.8, z + (float) direction.offsetZ / -2);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x, y, z, x + 1, y + 0.8, z + (float) direction.offsetZ / -2);
}
}
else if (tileEntity.getSlant() == SlantType.DOWN)
{
if (direction.offsetX > 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + (float) direction.offsetX / 2, y + 0.8, z + 1);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x, y, z, x + (float) direction.offsetX / 2, y + 0.8, z + 1);
}
else if (direction.offsetX < 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x + (float) direction.offsetX / -2, y, z, x + 1, y + 0.8, z + 1);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x + (float) direction.offsetX / -2, y, z, x + 1, y + 0.8, z + 1);
}
else if (direction.offsetZ > 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.8, z + (float) direction.offsetZ / 2);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x, y, z, x + 1, y + 0.8, z + (float) direction.offsetZ / 2);
}
else if (direction.offsetZ < 0)
{
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z + (float) direction.offsetZ / -2, x + 1, y + 0.8, z + 1);
boundTop = AxisAlignedBB.getAABBPool().getAABB(x, y, z + (float) direction.offsetZ / -2, x + 1, y + 0.8, z + 1);
}
}
@ -144,7 +151,7 @@ public class BlockConveyorBelt extends BlockALMachine
if (tileEntity.getSlant() == SlantType.TOP)
{
AxisAlignedBB newBounds = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y + 0.68, z, x + 1, y + 0.98, z + 1);
AxisAlignedBB newBounds = AxisAlignedBB.getAABBPool().getAABB(x, y + 0.68, z, x + 1, y + 0.98, z + 1);
if (newBounds != null && par5AxisAlignedBB.intersectsWith(newBounds))
{
@ -155,7 +162,7 @@ public class BlockConveyorBelt extends BlockALMachine
}
}
AxisAlignedBB newBounds = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.3, z + 1);
AxisAlignedBB newBounds = AxisAlignedBB.getAABBPool().getAABB(x, y, z, x + 1, y + 0.3, z + 1);
if (newBounds != null && par5AxisAlignedBB.intersectsWith(newBounds))
{
@ -164,7 +171,7 @@ public class BlockConveyorBelt extends BlockALMachine
}
@Override
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLiving par5EntityLiving)
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLiving par5EntityLiving, ItemStack stack)
{
int angle = MathHelper.floor_double((par5EntityLiving.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;
int change = 2;
@ -185,7 +192,7 @@ public class BlockConveyorBelt extends BlockALMachine
break;
}
world.setBlockMetadataWithNotify(x, y, z, change);
world.setBlockMetadataWithNotify(x, y, z, change, 3);
}
@Override
@ -211,7 +218,7 @@ public class BlockConveyorBelt extends BlockALMachine
}
world.setBlockMetadataWithNotify(x, y, z, change);
world.setBlockMetadataWithNotify(x, y, z, change, 3);
return true;
}
@ -241,7 +248,10 @@ public class BlockConveyorBelt extends BlockALMachine
{
TileEntityConveyorBelt tileEntity = (TileEntityConveyorBelt) world.getBlockTileEntity(x, y, z);
tileEntity.updatePowerTransferRange();
if (tileEntity.IgnoreList.contains(entity)) { return; }
if (tileEntity.IgnoreList.contains(entity))
{
return;
}
if (tileEntity.isRunning() && !world.isBlockIndirectlyGettingPowered(x, y, z))
{
float acceleration = tileEntity.acceleration;

View file

@ -12,8 +12,8 @@ import net.minecraft.network.packet.Packet;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
import universalelectricity.core.electricity.ElectricityConnections;
import universalelectricity.prefab.implement.IRotatable;
import universalelectricity.prefab.network.IPacketReceiver;
import universalelectricity.prefab.network.PacketManager;
@ -46,16 +46,12 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
private int animFrame = 0; // this is from 0 to 15
private SlantType slantType = SlantType.NONE;
public List<Entity> IgnoreList = new ArrayList<Entity>();// Entities that need to be ignored to prevent movement
public TileEntityConveyorBelt()
{
super();
ElectricityConnections.registerConnector(this, EnumSet.of(ForgeDirection.DOWN));
}
public List<Entity> IgnoreList = new ArrayList<Entity>();// Entities that need to be ignored to
// prevent movement
/**
* This function is overriden to allow conveyor belts to power belts that are diagonally going up.
* This function is overriden to allow conveyor belts to power belts that are diagonally going
* up.
*/
@Override
public void updatePowerTransferRange()
@ -118,7 +114,7 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
{
PacketManager.sendPacketToClients(this.getDescriptionPacket());
}
/* PROCESSES IGNORE LIST AND REMOVES UNNEED ENTRIES */
List<Entity> newList = new ArrayList<Entity>();
for (Entity ent : IgnoreList)
@ -271,17 +267,27 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
}
@Override
public void setDirection(ForgeDirection facingDirection)
public void setDirection(World world, int x, int y, int z, ForgeDirection facingDirection)
{
this.worldObj.setBlockMetadataWithNotify(this.xCoord, this.yCoord, this.zCoord, facingDirection.ordinal());
this.worldObj.setBlockMetadataWithNotify(this.xCoord, this.yCoord, this.zCoord, facingDirection.ordinal(), 3);
}
@Override
public ForgeDirection getDirection()
public ForgeDirection getDirection(World world, int x, int y, int z)
{
return ForgeDirection.getOrientation(this.getBlockMetadata());
}
public ForgeDirection getDirection()
{
return this.getDirection(worldObj, xCoord, yCoord, zCoord);
}
public void setDirection(ForgeDirection facingDirection)
{
this.setDirection(worldObj, xCoord, yCoord, zCoord, facingDirection);
}
@Override
public List<Entity> getAffectedEntities()
{
@ -333,7 +339,7 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
if (worldObj != null)
{
worldObj.setBlockMetadataWithNotify(this.xCoord, this.yCoord, this.zCoord, nbt.getInteger("rotation"));
worldObj.setBlockMetadataWithNotify(this.xCoord, this.yCoord, this.zCoord, nbt.getInteger("rotation"), 3);
}
}
@ -361,4 +367,10 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
}
}
@Override
public boolean canConnect(ForgeDirection direction)
{
return direction == ForgeDirection.DOWN;
}
}

View file

@ -42,7 +42,7 @@ public class CommandBreak extends Command
this.tileEntity.grabEntity(new EntityItem(this.world, (double) serachPosition.intX() + 0.5D, (double) serachPosition.intY() + 0.5D, (double) serachPosition.intZ() + 0.5D, items.get(0)));
}
serachPosition.setBlockWithNotify(this.world, 0);
world.setBlockAndMetadataWithNotify(serachPosition.intX(),serachPosition.intY(),serachPosition.intZ(), 0, 0, 3);
return false;
}

View file

@ -76,7 +76,7 @@ public class CommandFire extends Command
if (item.getEntityItem().stackSize > 0)
{
stack.stackSize--;
item.func_92058_a(stack);
item.setEntityItemStack(stack);
}
else
{

View file

@ -62,11 +62,11 @@ public class CommandPlace extends Command
int blockID = plantable.getPlantID(this.world, serachPosition.intX(), serachPosition.intY(), serachPosition.intZ());
int blockMetadata = plantable.getPlantMetadata(this.world, serachPosition.intX(), serachPosition.intY(), serachPosition.intZ());
if (this.world.setBlockAndMetadataWithNotify(serachPosition.intX(), serachPosition.intY(), serachPosition.intZ(), blockID, blockMetadata))
if (this.world.setBlockAndMetadataWithNotify(serachPosition.intX(), serachPosition.intY(), serachPosition.intZ(), blockID, blockMetadata, 3))
{
if (this.world.getBlockId(serachPosition.intX(), serachPosition.intY(), serachPosition.intZ()) == blockID)
{
Block.blocksList[blockID].onBlockPlacedBy(world, serachPosition.intX(), serachPosition.intY(), serachPosition.intZ(), null);
Block.blocksList[blockID].onBlockPlacedBy(world, serachPosition.intX(), serachPosition.intY(), serachPosition.intZ(), null, itemStack);
Block.blocksList[blockID].onPostBlockPlaced(world, serachPosition.intX(), serachPosition.intY(), serachPosition.intZ(), blockMetadata);
this.tileEntity.dropEntity(entity);
return false;

View file

@ -1,12 +1,12 @@
package assemblyline.common.machine.crane;
import net.minecraft.entity.EntityLiving;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
import universalelectricity.core.UniversalElectricity;
import assemblyline.client.render.BlockRenderingHandler;
import assemblyline.common.TabAssemblyLine;
import assemblyline.common.block.BlockALMachine;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -15,7 +15,8 @@ public class BlockCraneController extends BlockALMachine
{
public BlockCraneController(int id)
{
super("craneController", id, UniversalElectricity.machine);
super(id, UniversalElectricity.machine);
this.setUnlocalizedName("craneController");
// this.setCreativeTab(TabAssemblyLine.INSTANCE);
}
@ -32,29 +33,29 @@ public class BlockCraneController extends BlockALMachine
}
@Override
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLiving entity)
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLiving entity, ItemStack stack)
{
int rot = (int) Math.min(((entity.rotationYaw + 315f) % 360f) / 90f, 3);
switch (rot)
{
case 0: // WEST
{
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.WEST.ordinal());
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.WEST.ordinal(), 3);
break;
}
case 1: // NORTH
{
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.NORTH.ordinal());
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.NORTH.ordinal(), 3);
break;
}
case 2: // EAST
{
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.EAST.ordinal());
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.EAST.ordinal(), 3);
break;
}
default: // SOUTH
{
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.SOUTH.ordinal());
world.setBlockMetadataWithNotify(x, y, z, ForgeDirection.SOUTH.ordinal(), 3);
break;
}
}
@ -68,7 +69,7 @@ public class BlockCraneController extends BlockALMachine
}
@Override
public TileEntity createNewTileEntity(World world, int metadata)
public TileEntity createTileEntity(World world, int metadata)
{
return new TileEntityCraneController();
}

View file

@ -7,7 +7,6 @@ import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
import universalelectricity.core.UniversalElectricity;
import assemblyline.client.render.BlockRenderingHandler;
import assemblyline.common.TabAssemblyLine;
import assemblyline.common.block.BlockALMachine;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -16,8 +15,9 @@ public class BlockCraneFrame extends BlockALMachine
{
public BlockCraneFrame(int id)
{
super("craneFrame", id, UniversalElectricity.machine);
//this.setCreativeTab(TabAssemblyLine.INSTANCE);
super(id, UniversalElectricity.machine);
this.setUnlocalizedName("craneFrame");
// this.setCreativeTab(TabAssemblyLine.INSTANCE);
this.setBlockBounds(0.25f, 0.25f, 0.25f, 0.75f, 0.75f, 0.75f);
}
@ -136,7 +136,7 @@ public class BlockCraneFrame extends BlockALMachine
}
@Override
public TileEntity createNewTileEntity(World world, int metadata)
public TileEntity createTileEntity(World world, int metadata)
{
return new TileEntityCraneRail();
}

View file

@ -199,4 +199,10 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
depth = nbt.getInteger("depth");
isCraneValid = nbt.getBoolean("isValid");
}
@Override
public boolean canConnect(ForgeDirection direction)
{
return true;
}
}

View file

@ -13,4 +13,10 @@ public class TileEntityCraneRail extends TileEntityAssemblyNetwork implements IC
return true;
}
@Override
public boolean canConnect(ForgeDirection direction)
{
return false;
}
}

View file

@ -3,12 +3,12 @@ package assemblyline.common.machine.detector;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Icon;
import net.minecraft.util.MathHelper;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
import universalelectricity.core.UniversalElectricity;
import assemblyline.common.AssemblyLine;
import assemblyline.common.TabAssemblyLine;
import assemblyline.common.machine.imprinter.BlockImprintable;
@ -20,8 +20,6 @@ public class BlockDetector extends BlockImprintable
public BlockDetector(int blockID, int texture)
{
super("detector", blockID, UniversalElectricity.machine, TabAssemblyLine.INSTANCE);
this.blockIndexInTexture = texture;
this.setTextureFile(AssemblyLine.BLOCK_TEXTURE_PATH);
}
@Override
@ -55,11 +53,11 @@ public class BlockDetector extends BlockImprintable
change = ForgeDirection.UP.ordinal();
}
world.setBlockMetadataWithNotify(x, y, z, change);
world.setBlockMetadataWithNotify(x, y, z, change,3);
}
@Override
public int getBlockTexture(IBlockAccess iBlockAccess, int x, int y, int z, int side)
public Icon getBlockTexture(IBlockAccess iBlockAccess, int x, int y, int z, int side)
{
TileEntity tileEntity = iBlockAccess.getBlockTileEntity(x, y, z);
if (tileEntity instanceof TileEntityDetector)
@ -80,14 +78,7 @@ public class BlockDetector extends BlockImprintable
return this.blockIndexInTexture;
}
@Override
public boolean onUseWrench(World world, int x, int y, int z, EntityPlayer par5EntityPlayer, int side, float hitX, float hitY, float hitZ)
{
world.setBlockMetadataWithNotify(x, y, z, side);
return true;
}
@Override
public int getBlockTextureFromSideAndMetadata(int side, int metadata)
{
@ -98,6 +89,14 @@ public class BlockDetector extends BlockImprintable
return this.blockIndexInTexture;
}
@Override
public boolean onUseWrench(World world, int x, int y, int z, EntityPlayer par5EntityPlayer, int side, float hitX, float hitY, float hitZ)
{
world.setBlockMetadataWithNotify(x, y, z, side,3);
return true;
}
@Override
public void onNeighborBlockChange(World world, int x, int y, int z, int blockID)
@ -140,7 +139,7 @@ public class BlockDetector extends BlockImprintable
}
@Override
public boolean isProvidingStrongPower(IBlockAccess world, int x, int y, int z, int direction)
public int isProvidingStrongPower(IBlockAccess world, int x, int y, int z, int direction)
{
TileEntity tileEntity = world.getBlockTileEntity(x, y, z);
@ -148,11 +147,11 @@ public class BlockDetector extends BlockImprintable
{
return ((TileEntityDetector) tileEntity).isPoweringTo(ForgeDirection.getOrientation(direction));
}
return false;
return 0;
}
@Override
public boolean isProvidingWeakPower(IBlockAccess world, int x, int y, int z, int direction)
public int isProvidingWeakPower(IBlockAccess world, int x, int y, int z, int direction)
{
return isProvidingStrongPower(world, x, y, z, direction);
}

View file

@ -95,13 +95,13 @@ public class TileEntityDetector extends TileEntityFilterable
tag.setBoolean("powering", this.powering);
}
public boolean isPoweringTo(ForgeDirection side)
public int isPoweringTo(ForgeDirection side)
{
return this.powering && this.getDirection() != side.getOpposite();
}
public boolean isIndirectlyPoweringTo(ForgeDirection side)
{
return this.isPoweringTo(side);
return this.isPoweringTo(side) > 0;
}
}

View file

@ -14,10 +14,8 @@ public class BlockEncoder extends BlockALMachine
public BlockEncoder(int id, int texture)
{
super(id, Material.wood);
this.blockIndexInTexture = texture;
this.setBlockName("encoder");
this.setUnlocalizedName("encoder");
this.setCreativeTab(TabAssemblyLine.INSTANCE);
this.setTextureFile(AssemblyLine.BLOCK_TEXTURE_PATH);
}
/**
@ -61,7 +59,7 @@ public class BlockEncoder extends BlockALMachine
}
@Override
public TileEntity createNewTileEntity(World world, int metadata)
public TileEntity createTileEntity(World world, int metadata)
{
return new TileEntityEncoder();
}

View file

@ -16,11 +16,9 @@ public class ItemDisk extends Item
public ItemDisk(int id)
{
super(id);
this.setItemName("disk");
this.setIconIndex(0);
this.setUnlocalizedName("disk");
this.setCreativeTab(TabAssemblyLine.INSTANCE);
this.setHasSubtypes(true);
this.setTextureFile(AssemblyLine.ITEM_TEXTURE_PATH);
}
@Override

View file

@ -201,4 +201,18 @@ public class TileEntityEncoder extends TileEntityAdvanced implements IPacketRece
}
}
@Override
public boolean func_94042_c()
{
//TODO ?
return false;
}
@Override
public boolean func_94041_b(int i, ItemStack itemstack)
{
// TODO Auto-generated method stub
return false;
}
}

View file

@ -24,7 +24,7 @@ public abstract class BlockImprintable extends BlockALMachine
public BlockImprintable(String name, int id, Material material, CreativeTabs creativeTab)
{
super(id, material);
this.setBlockName(name);
this.setUnlocalizedName(name);
this.setCreativeTab(creativeTab);
}
@ -114,7 +114,7 @@ public abstract class BlockImprintable extends BlockALMachine
}
@Override
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLiving par5EntityLiving)
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLiving par5EntityLiving, ItemStack stack)
{
int angle = MathHelper.floor_double((par5EntityLiving.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;
int change = 2;
@ -135,7 +135,7 @@ public abstract class BlockImprintable extends BlockALMachine
break;
}
world.setBlockMetadataWithNotify(x, y, z, change);
world.setBlockMetadataWithNotify(x, y, z, change,3);
}
@Override
@ -161,7 +161,7 @@ public abstract class BlockImprintable extends BlockALMachine
}
world.setBlockMetadataWithNotify(x, y, z, change);
world.setBlockMetadataWithNotify(x, y, z, change,3);
return true;
}

View file

@ -19,10 +19,8 @@ public class BlockImprinter extends BlockALMachine
public BlockImprinter(int id, int texture)
{
super(id, Material.wood);
this.blockIndexInTexture = texture;
this.setBlockName("imprinter");
this.setUnlocalizedName("imprinter");
this.setCreativeTab(TabAssemblyLine.INSTANCE);
this.setTextureFile(AssemblyLine.BLOCK_TEXTURE_PATH);
}
/**

View file

@ -19,11 +19,9 @@ public class ItemImprinter extends Item
public ItemImprinter(int id)
{
super(id);
this.setItemName("imprint");
this.setIconIndex(1);
this.setUnlocalizedName("imprint");
this.setCreativeTab(TabAssemblyLine.INSTANCE);
this.setHasSubtypes(true);
this.setTextureFile(AssemblyLine.ITEM_TEXTURE_PATH);
}

View file

@ -11,6 +11,7 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
import universalelectricity.prefab.implement.IRotatable;
import universalelectricity.prefab.network.IPacketReceiver;
@ -95,15 +96,25 @@ public abstract class TileEntityFilterable extends TileEntityAssemblyNetwork imp
}
@Override
public ForgeDirection getDirection()
public ForgeDirection getDirection(World world, int x, int y, int z)
{
return ForgeDirection.getOrientation(this.getBlockMetadata());
}
@Override
public void setDirection(World world, int x, int y, int z, ForgeDirection facingDirection)
{
this.worldObj.setBlockMetadataWithNotify(this.xCoord, this.yCoord, this.zCoord, facingDirection.ordinal(), 3);
}
public void setDirection(ForgeDirection facingDirection)
{
this.worldObj.setBlockMetadataWithNotify(this.xCoord, this.yCoord, this.zCoord, facingDirection.ordinal());
this.setDirection(worldObj, xCoord, yCoord, zCoord, facingDirection);
}
public ForgeDirection getDirection()
{
return this.getDirection(worldObj, xCoord, yCoord, zCoord);
}
/**

View file

@ -855,4 +855,18 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
return false;
}
@Override
public boolean func_94042_c()
{
// TODO Auto-generated method stub
return false;
}
@Override
public boolean func_94041_b(int i, ItemStack itemstack)
{
// TODO Auto-generated method stub
return false;
}
}