Merge branch 'master' of https://github.com/calclavia/Assembly-Line.git
|
@ -1 +1 @@
|
|||
75
|
||||
77
|
||||
|
|
4
info.txt
|
@ -65,6 +65,8 @@ x AssemblyLine_v0.2.4.64.jar AssemblyLine_v0.2.4.64_api.zip
|
|||
@ AssemblyLine_v0.2.5.70.jar AssemblyLine_v0.2.5.70_api.zip
|
||||
@ AssemblyLine_v0.2.5.71.jar AssemblyLine_v0.2.5.71_api.zip
|
||||
@ AssemblyLine_v0.2.5.72.jar AssemblyLine_v0.2.5.72_api.zip
|
||||
* AssemblyLine_v0.2.5.73.jar AssemblyLine_v0.2.5.73_api.zip
|
||||
@ AssemblyLine_v0.2.5.73.jar AssemblyLine_v0.2.5.73_api.zip
|
||||
@ AssemblyLine_v0.2.5.74.jar AssemblyLine_v0.2.5.74_api.zip
|
||||
@ AssemblyLine_v0.2.5.75.jar AssemblyLine_v0.2.5.75_api.zip
|
||||
* AssemblyLine_v0.2.5.76.jar AssemblyLine_v0.2.5.76_api.zip
|
||||
@ AssemblyLine_v0.2.6.77.jar AssemblyLine_v0.2.6.77_api.zip
|
||||
|
|
|
@ -1 +1 @@
|
|||
0.2.5
|
||||
0.2.6
|
Before Width: | Height: | Size: 7 KiB After Width: | Height: | Size: 7 KiB |
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 718 B After Width: | Height: | Size: 718 B |
Before Width: | Height: | Size: 338 B |
|
@ -2,7 +2,7 @@
|
|||
{
|
||||
"modid" : "AssemblyLine",
|
||||
"name" : "Assembly Line",
|
||||
"version" : "0.2.5",
|
||||
"version" : "0.2.6",
|
||||
"url" : "http://calclavia.com/universalelectricity/?m=18",
|
||||
"credits" : "",
|
||||
"authors": [
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package assemblyline.api;
|
||||
|
||||
public interface ICraneStructure extends ICraneConnectable
|
||||
{
|
||||
|
||||
}
|
||||
package assemblyline.api;
|
||||
|
||||
public interface ICraneStructure extends ICraneConnectable
|
||||
{
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
package assemblyline.client.render;
|
||||
|
||||
import static org.lwjgl.opengl.GL11.*;
|
||||
import static org.lwjgl.opengl.GL11.GL_LIGHTING;
|
||||
import static org.lwjgl.opengl.GL11.glEnable;
|
||||
import static org.lwjgl.opengl.GL11.glPopMatrix;
|
||||
import static org.lwjgl.opengl.GL11.glPushMatrix;
|
||||
import static org.lwjgl.opengl.GL11.glRotatef;
|
||||
import static org.lwjgl.opengl.GL11.glTranslated;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraftforge.common.ForgeDirection;
|
||||
import assemblyline.client.model.ModelCraneController;
|
||||
|
@ -9,8 +14,8 @@ import assemblyline.common.machine.crane.TileEntityCraneController;
|
|||
|
||||
public class RenderCraneController extends RenderImprintable
|
||||
{
|
||||
public static final String TEXTURE = "quarryControllerOff.png";
|
||||
public static final String TEXTURE_VALID = "quarryControllerValid.png";
|
||||
public static final String TEXTURE = "crane_controller_off.png";
|
||||
public static final String TEXTURE_VALID = "crane_controller_on.png";
|
||||
public static final ModelCraneController MODEL = new ModelCraneController();
|
||||
|
||||
@Override
|
||||
|
@ -21,8 +26,11 @@ public class RenderCraneController extends RenderImprintable
|
|||
this.bindTextureByName(AssemblyLine.TEXTURE_PATH + (((TileEntityCraneController) tileEntity).isCraneValid() ? TEXTURE_VALID : TEXTURE));
|
||||
ForgeDirection rot = ForgeDirection.getOrientation(tileEntity.worldObj.getBlockMetadata(tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord));
|
||||
float angle = 0f;
|
||||
|
||||
switch (rot)
|
||||
{
|
||||
default:
|
||||
break;
|
||||
case NORTH:
|
||||
{
|
||||
angle = 90f;
|
||||
|
|
|
@ -15,7 +15,7 @@ import assemblyline.common.machine.crane.TileEntityCraneRail;
|
|||
|
||||
public class RenderCraneRail extends RenderImprintable
|
||||
{
|
||||
public static final String TEXTURE = "craneRail.png";
|
||||
public static final String TEXTURE = "crane_rail.png";
|
||||
public static final ModelCraneRail MODEL = new ModelCraneRail();
|
||||
|
||||
@Override
|
||||
|
@ -50,4 +50,4 @@ public class RenderCraneRail extends RenderImprintable
|
|||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -89,25 +89,11 @@ public class RenderCrate extends TileEntitySpecialRenderer
|
|||
GL11.glPopMatrix();
|
||||
}
|
||||
/*
|
||||
switch (tileEntity.getTier())
|
||||
{
|
||||
default:
|
||||
{
|
||||
itemName = "\u00a7a" + itemName;
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
itemName = "\u00a74" + itemName;
|
||||
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
itemName = "\u00a79" + itemName;
|
||||
break;
|
||||
}
|
||||
}*/
|
||||
* switch (tileEntity.getTier()) { default: { itemName = "\u00a7a" + itemName;
|
||||
* break; } case 1: { itemName = "\u00a74" + itemName;
|
||||
*
|
||||
* break; } case 2: { itemName = "\u00a79" + itemName; break; } }
|
||||
*/
|
||||
|
||||
this.renderText(itemName, side, 0.02f, x, y - 0.35f, z);
|
||||
|
||||
|
|
|
@ -55,7 +55,7 @@ public class AssemblyLine
|
|||
|
||||
public static final String NAME = "Assembly Line";
|
||||
|
||||
public static final String VERSION = "0.2.5";
|
||||
public static final String VERSION = "0.2.6";
|
||||
|
||||
public static final String CHANNEL = "AssemblyLine";
|
||||
|
||||
|
|
|
@ -9,7 +9,6 @@ import net.minecraft.entity.player.EntityPlayerMP;
|
|||
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 universalelectricity.core.implement.IItemElectric;
|
||||
import universalelectricity.core.vector.Vector3;
|
||||
|
@ -169,7 +168,7 @@ public class BlockCrate extends BlockMachine
|
|||
|
||||
public void tryEject(TileEntityCrate tileEntity, EntityPlayer player, boolean allMode)
|
||||
{
|
||||
if (allMode)
|
||||
if (allMode && !player.isSneaking())
|
||||
{
|
||||
this.ejectItems(tileEntity, player, tileEntity.getMaxLimit());
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package assemblyline.common.machine.armbot;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
@ -18,8 +20,6 @@ public class BlockArmbot extends BlockMachine
|
|||
public BlockArmbot(int id)
|
||||
{
|
||||
super("armbot", id, UniversalElectricity.machine);
|
||||
this.setResistance(5.0f);
|
||||
this.setHardness(5.0f);
|
||||
this.setCreativeTab(TabAssemblyLine.INSTANCE);
|
||||
}
|
||||
|
||||
|
@ -62,6 +62,12 @@ public class BlockArmbot extends BlockMachine
|
|||
super.breakBlock(world, x, y, z, par5, par6);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int quantityDropped(Random par1Random)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World var1)
|
||||
{
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package assemblyline.common.machine.crane;
|
||||
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
|
|
@ -18,12 +18,12 @@ public class CraneHelper
|
|||
* The maximum size that a crane can be
|
||||
*/
|
||||
public static final int MAX_SIZE = 64;
|
||||
|
||||
|
||||
public static boolean isCraneBlock(World world, int x, int y, int z)
|
||||
{
|
||||
return world.getBlockTileEntity(x, y, z) != null && world.getBlockTileEntity(x, y, z) instanceof ICraneConnectable;
|
||||
}
|
||||
|
||||
|
||||
public static boolean isCraneStructureBlock(World world, int x, int y, int z)
|
||||
{
|
||||
return world.getBlockTileEntity(x, y, z) != null && world.getBlockTileEntity(x, y, z) instanceof ICraneStructure;
|
||||
|
@ -38,7 +38,7 @@ public class CraneHelper
|
|||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
public static ForgeDirection rotateClockwise(ForgeDirection direction)
|
||||
{
|
||||
if (direction == ForgeDirection.NORTH)
|
||||
|
@ -51,7 +51,7 @@ public class CraneHelper
|
|||
return ForgeDirection.NORTH;
|
||||
return ForgeDirection.UNKNOWN;
|
||||
}
|
||||
|
||||
|
||||
public static ForgeDirection rotateCounterClockwise(ForgeDirection direction)
|
||||
{
|
||||
if (direction == ForgeDirection.NORTH)
|
||||
|
|
|
@ -10,7 +10,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
int width, height, depth;
|
||||
boolean isCraneValid;
|
||||
long ticks;
|
||||
|
||||
|
||||
public TileEntityCraneController()
|
||||
{
|
||||
super();
|
||||
|
@ -18,7 +18,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
isCraneValid = false;
|
||||
ticks = 0;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void updateEntity()
|
||||
{
|
||||
|
@ -28,12 +28,12 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
validateCrane();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public boolean isCraneValid()
|
||||
{
|
||||
return isCraneValid;
|
||||
}
|
||||
|
||||
|
||||
private void validateCrane()
|
||||
{
|
||||
isCraneValid = false;
|
||||
|
@ -46,7 +46,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
isCraneValid = isFrameValid();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private boolean isFrameValid()
|
||||
{
|
||||
for (int x = Math.min(0, width); x <= Math.max(0, width); x++)
|
||||
|
@ -79,7 +79,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Find x size and store in this.width
|
||||
*/
|
||||
|
@ -107,13 +107,13 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
x--;
|
||||
}
|
||||
}
|
||||
width = x; //can be negative
|
||||
width = x; // can be negative
|
||||
if (width < 0)
|
||||
width++;
|
||||
if (width > 0)
|
||||
width--;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Find y size and store in this.height
|
||||
*/
|
||||
|
@ -132,7 +132,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
}
|
||||
height = y - 1;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Find x size and store in this.depth
|
||||
*/
|
||||
|
@ -160,7 +160,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
z--;
|
||||
}
|
||||
}
|
||||
depth = z; //can be negative
|
||||
depth = z; // can be negative
|
||||
if (depth < 0)
|
||||
depth++;
|
||||
if (depth > 0)
|
||||
|
@ -179,7 +179,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void writeToNBT(NBTTagCompound nbt)
|
||||
{
|
||||
|
@ -189,7 +189,7 @@ public class TileEntityCraneController extends TileEntityAssemblyNetwork impleme
|
|||
nbt.setInteger("depth", depth);
|
||||
nbt.setBoolean("isValid", isCraneValid);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void readFromNBT(NBTTagCompound nbt)
|
||||
{
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package assemblyline.common.machine.crane;
|
||||
|
||||
import net.minecraftforge.common.ForgeDirection;
|
||||
import assemblyline.api.ICraneConnectable;
|
||||
import assemblyline.api.ICraneStructure;
|
||||
import assemblyline.common.machine.TileEntityAssemblyNetwork;
|
||||
|
||||
|
|
|
@ -5,7 +5,6 @@ import java.util.Random;
|
|||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.item.EntityItem;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.IInventory;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
|
|
@ -25,14 +25,14 @@ public class ContainerImprinter extends Container implements ISlotWatcher
|
|||
{
|
||||
for (int y = 0; y < 3; y++)
|
||||
{
|
||||
this.addSlotToContainer(new Slot(this.tileEntity, y + x * 3, 9 + y * 18, 16 + x * 18));
|
||||
this.addSlotToContainer(new WatchedSlot(this.tileEntity, y + x * 3, 9 + y * 18, 16 + x * 18, this));
|
||||
}
|
||||
}
|
||||
|
||||
// Imprint Input for Imprinting
|
||||
this.addSlotToContainer(new SlotCustom(this.tileEntity, TileEntityImprinter.IMPRINTER_MATRIX_START, 68, 34, new ItemStack(AssemblyLine.itemImprint)));
|
||||
// Item to be imprinted
|
||||
this.addSlotToContainer(new Slot(this.tileEntity, TileEntityImprinter.IMPRINTER_MATRIX_START + 1, 92, 34));
|
||||
this.addSlotToContainer(new WatchedSlot(this.tileEntity, TileEntityImprinter.IMPRINTER_MATRIX_START + 1, 92, 34, this));
|
||||
// Result of Crafting/Imprinting
|
||||
this.addSlotToContainer(new SlotCraftingResult(this, this.tileEntity, TileEntityImprinter.IMPRINTER_MATRIX_START + 2, 148, 34));
|
||||
|
||||
|
@ -97,7 +97,7 @@ public class ContainerImprinter extends Container implements ISlotWatcher
|
|||
this.tileEntity.setInventorySlotContents(this.tileEntity.INVENTORY_START - 1, null);
|
||||
}
|
||||
|
||||
if (slot > this.tileEntity.getSizeInventory())
|
||||
if (slot > this.tileEntity.getSizeInventory() - 1)
|
||||
{
|
||||
if (this.getSlot(this.tileEntity.IMPRINTER_MATRIX_START).isItemValid(slotStack))
|
||||
{
|
||||
|
@ -134,7 +134,6 @@ public class ContainerImprinter extends Container implements ISlotWatcher
|
|||
}
|
||||
|
||||
this.slotContentsChanged();
|
||||
|
||||
return copyStack;
|
||||
}
|
||||
|
||||
|
@ -142,5 +141,6 @@ public class ContainerImprinter extends Container implements ISlotWatcher
|
|||
public void slotContentsChanged()
|
||||
{
|
||||
this.tileEntity.onInventoryChanged();
|
||||
this.detectAndSendChanges();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,13 +5,13 @@ import net.minecraft.inventory.IInventory;
|
|||
import net.minecraft.inventory.Slot;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class SlotCraftingResult extends Slot
|
||||
public class SlotCraftingResult extends WatchedSlot
|
||||
{
|
||||
private ContainerImprinter container;
|
||||
|
||||
public SlotCraftingResult(ContainerImprinter container, IInventory inventory, int par2, int par3, int par4)
|
||||
{
|
||||
super(inventory, par2, par3, par4);
|
||||
super(inventory, par2, par3, par4, container);
|
||||
this.container = container;
|
||||
}
|
||||
|
||||
|
@ -30,8 +30,7 @@ public class SlotCraftingResult extends Slot
|
|||
@Override
|
||||
public void onPickupFromSlot(EntityPlayer entityPlayer, ItemStack itemStack)
|
||||
{
|
||||
super.onPickupFromSlot(entityPlayer, itemStack);
|
||||
|
||||
this.container.tileEntity.onPickUpFromResult(entityPlayer, itemStack);
|
||||
super.onPickupFromSlot(entityPlayer, itemStack);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -268,98 +268,100 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
|
|||
@Override
|
||||
public void onInventoryChanged()
|
||||
{
|
||||
|
||||
/**
|
||||
* Makes the stamping recipe for filters
|
||||
*/
|
||||
this.isImprinting = false;
|
||||
|
||||
if (this.isMatrixEmpty() && this.imprinterMatrix[0] != null && this.imprinterMatrix[1] != null)
|
||||
if (!this.worldObj.isRemote)
|
||||
{
|
||||
if (this.imprinterMatrix[0].getItem() instanceof ItemImprinter)
|
||||
{
|
||||
ItemStack outputStack = this.imprinterMatrix[0].copy();
|
||||
outputStack.stackSize = 1;
|
||||
ArrayList<ItemStack> filters = ItemImprinter.getFilters(outputStack);
|
||||
boolean filteringItemExists = false;
|
||||
|
||||
for (ItemStack filteredStack : filters)
|
||||
{
|
||||
if (filteredStack.isItemEqual(this.imprinterMatrix[1]))
|
||||
{
|
||||
filters.remove(filteredStack);
|
||||
filteringItemExists = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!filteringItemExists)
|
||||
{
|
||||
filters.add(this.imprinterMatrix[1]);
|
||||
}
|
||||
|
||||
ItemImprinter.setFilters(outputStack, filters);
|
||||
this.imprinterMatrix[2] = outputStack;
|
||||
this.isImprinting = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (!this.isImprinting)
|
||||
{
|
||||
this.imprinterMatrix[2] = null;
|
||||
|
||||
/**
|
||||
* Try to craft from crafting grid. If not possible, then craft from imprint.
|
||||
* Makes the stamping recipe for filters
|
||||
*/
|
||||
boolean didCraft = false;
|
||||
this.isImprinting = false;
|
||||
|
||||
/**
|
||||
* Simulate an Inventory Crafting Instance
|
||||
*/
|
||||
InventoryCrafting inventoryCrafting = this.getCraftingMatrix();
|
||||
|
||||
if (inventoryCrafting != null)
|
||||
{
|
||||
ItemStack matrixOutput = CraftingManager.getInstance().findMatchingRecipe(inventoryCrafting, this.worldObj);
|
||||
|
||||
if (matrixOutput != null)
|
||||
{
|
||||
this.imprinterMatrix[2] = matrixOutput;
|
||||
didCraft = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (this.imprinterMatrix[0] != null && !didCraft)
|
||||
if (this.isMatrixEmpty() && this.imprinterMatrix[0] != null && this.imprinterMatrix[1] != null)
|
||||
{
|
||||
if (this.imprinterMatrix[0].getItem() instanceof ItemImprinter)
|
||||
{
|
||||
ArrayList<ItemStack> filters = ItemImprinter.getFilters(this.imprinterMatrix[0]);
|
||||
ItemStack outputStack = this.imprinterMatrix[0].copy();
|
||||
outputStack.stackSize = 1;
|
||||
ArrayList<ItemStack> filters = ItemImprinter.getFilters(outputStack);
|
||||
boolean filteringItemExists = false;
|
||||
|
||||
for (ItemStack outputStack : filters)
|
||||
for (ItemStack filteredStack : filters)
|
||||
{
|
||||
if (outputStack != null)
|
||||
if (filteredStack.isItemEqual(this.imprinterMatrix[1]))
|
||||
{
|
||||
Pair<ItemStack, ItemStack[]> idealRecipe = this.getIdealRecipe(outputStack);
|
||||
filters.remove(filteredStack);
|
||||
filteringItemExists = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (idealRecipe != null)
|
||||
if (!filteringItemExists)
|
||||
{
|
||||
filters.add(this.imprinterMatrix[1]);
|
||||
}
|
||||
|
||||
ItemImprinter.setFilters(outputStack, filters);
|
||||
this.imprinterMatrix[2] = outputStack;
|
||||
this.isImprinting = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (!this.isImprinting)
|
||||
{
|
||||
this.imprinterMatrix[2] = null;
|
||||
|
||||
/**
|
||||
* Try to craft from crafting grid. If not possible, then craft from imprint.
|
||||
*/
|
||||
boolean didCraft = false;
|
||||
|
||||
/**
|
||||
* Simulate an Inventory Crafting Instance
|
||||
*/
|
||||
InventoryCrafting inventoryCrafting = this.getCraftingMatrix();
|
||||
|
||||
if (inventoryCrafting != null)
|
||||
{
|
||||
ItemStack matrixOutput = CraftingManager.getInstance().findMatchingRecipe(inventoryCrafting, this.worldObj);
|
||||
|
||||
if (matrixOutput != null)
|
||||
{
|
||||
this.imprinterMatrix[2] = matrixOutput;
|
||||
didCraft = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (this.imprinterMatrix[0] != null && !didCraft)
|
||||
{
|
||||
if (this.imprinterMatrix[0].getItem() instanceof ItemImprinter)
|
||||
{
|
||||
ArrayList<ItemStack> filters = ItemImprinter.getFilters(this.imprinterMatrix[0]);
|
||||
|
||||
for (ItemStack outputStack : filters)
|
||||
{
|
||||
if (outputStack != null)
|
||||
{
|
||||
ItemStack recipeOutput = idealRecipe.getKey();
|
||||
Pair<ItemStack, ItemStack[]> idealRecipe = this.getIdealRecipe(outputStack);
|
||||
|
||||
if (recipeOutput != null & recipeOutput.stackSize > 0)
|
||||
if (idealRecipe != null)
|
||||
{
|
||||
this.imprinterMatrix[2] = recipeOutput;
|
||||
didCraft = true;
|
||||
break;
|
||||
ItemStack recipeOutput = idealRecipe.getKey();
|
||||
|
||||
if (recipeOutput != null & recipeOutput.stackSize > 0)
|
||||
{
|
||||
this.imprinterMatrix[2] = recipeOutput;
|
||||
didCraft = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!didCraft)
|
||||
{
|
||||
this.imprinterMatrix[2] = null;
|
||||
if (!didCraft)
|
||||
{
|
||||
this.imprinterMatrix[2] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|