AL 0.2.5 Release

This commit is contained in:
Henry Mao 2013-02-07 00:31:18 +08:00
parent 3388b3cbdc
commit 9d31ee73ae
11 changed files with 71 additions and 28 deletions

View file

@ -1 +1 @@
72
73

View file

@ -65,3 +65,4 @@ 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

View file

@ -1 +1 @@
0.2.4
0.2.5

View file

@ -29,6 +29,8 @@ public class GuiImprinter extends GuiContainer
@Override
protected void drawGuiContainerForegroundLayer(int par1, int par2)
{
this.fontRenderer.drawString("Use Inventories:", 70, 58, 4210752);
this.fontRenderer.drawString("" + this.tileEntity.searchInventories, 105, 67, 4210752);
this.fontRenderer.drawString(TranslationHelper.getLocal("tile.imprinter.name"), 68, 6, 4210752);
}

View file

@ -164,13 +164,18 @@ public class BlockCrate extends BlockMachine
*/
public boolean insertAllItems(TileEntityCrate tileEntity, EntityPlayer player)
{
ItemStack requestStack = player.getCurrentEquippedItem();
ItemStack requestStack = null;
if (requestStack == null && tileEntity.getStackInSlot(0) != null)
if (tileEntity.getStackInSlot(0) != null)
{
requestStack = tileEntity.getStackInSlot(0).copy();
}
if (requestStack == null)
{
requestStack = player.getCurrentEquippedItem();
}
if (requestStack != null)
{
if (requestStack.isStackable())

View file

@ -7,7 +7,6 @@ import net.minecraftforge.common.ForgeDirection;
import universalelectricity.core.UniversalElectricity;
import universalelectricity.prefab.BlockMachine;
import assemblyline.client.render.BlockRenderingHandler;
import assemblyline.common.TabAssemblyLine;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -19,7 +18,7 @@ public class BlockCraneController extends BlockMachine
super("cranecontroller", id, UniversalElectricity.machine);
this.setResistance(5.0f);
this.setHardness(5.0f);
//this.setCreativeTab(TabAssemblyLine.INSTANCE);
// this.setCreativeTab(TabAssemblyLine.INSTANCE);
}
@Override

View file

@ -2,7 +2,6 @@ package assemblyline.common.machine.crane;
import net.minecraft.block.material.Material;
import universalelectricity.prefab.BlockMachine;
import assemblyline.common.TabAssemblyLine;
public class BlockCraneParts extends BlockMachine
{

View file

@ -54,6 +54,20 @@ public class BlockImprinter extends BlockMachine
}
public boolean onUseWrench(World par1World, int x, int y, int z, EntityPlayer par5EntityPlayer, int side, float hitX, float hitY, float hitZ)
{
TileEntity tileEntity = par1World.getBlockTileEntity(x, y, z);
if (tileEntity instanceof TileEntityImprinter)
{
((TileEntityImprinter) tileEntity).searchInventories = !((TileEntityImprinter) tileEntity).searchInventories;
par1World.markBlockForUpdate(x, y, z);
return true;
}
return false;
}
@Override
public TileEntity createNewTileEntity(World var1)
{

View file

@ -9,7 +9,7 @@ import assemblyline.common.AssemblyLine;
public class ContainerImprinter extends Container implements ISlotWatcher
{
private InventoryPlayer inventoryPlayer;
public InventoryPlayer inventoryPlayer;
public TileEntityImprinter tileEntity;
public ContainerImprinter(InventoryPlayer inventoryPlayer, TileEntityImprinter tileEntity)
@ -60,6 +60,15 @@ public class ContainerImprinter extends Container implements ISlotWatcher
{
this.addSlotToContainer(new WatchedSlot(inventoryPlayer, var3, 8 + var3 * 18, 178, this));
}
this.tileEntity.openChest();
}
@Override
public void onCraftGuiClosed(EntityPlayer par1EntityPlayer)
{
super.onCraftGuiClosed(par1EntityPlayer);
this.tileEntity.closeChest();
}
@Override

View file

@ -25,8 +25,6 @@ public class SlotCraftingResult extends Slot
public boolean canTakeStack(EntityPlayer player)
{
return true;
// this.getStack() == null ? false :
// this.container.tileEntity.getIdealRecipe(this.getStack()) != null;
}
@Override
@ -36,19 +34,4 @@ public class SlotCraftingResult extends Slot
this.container.tileEntity.onPickUpFromResult(entityPlayer, itemStack);
}
/*
* private boolean playerHasRequiredIngredients(EntityPlayer player, ItemStack desiredItem) { if
* (this.getStack() != null) { ItemStack[] idealRecipe =
* this.container.tileEntity.getIdealRecipe(this.getStack()).getValue(); if (idealRecipe !=
* null) { ItemStack[] requiredItems = idealRecipe.clone(); int foundItems = 0;
*
* if (requiredItems != null) { for (ItemStack searchStack : requiredItems) { for (int i = 0; i
* < player.inventory.getSizeInventory(); i++) { ItemStack checkStack =
* player.inventory.getStackInSlot(i);
*
* if (checkStack != null) { if (searchStack.isItemEqual(checkStack)) { foundItems++; } } } } }
*
* if (foundItems >= requiredItems.length) return true; } } return false; }
*/
}

View file

@ -13,6 +13,9 @@ import net.minecraft.item.crafting.ShapedRecipes;
import net.minecraft.item.crafting.ShapelessRecipes;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.tileentity.TileEntityChest;
import net.minecraftforge.common.ForgeDirection;
@ -24,14 +27,20 @@ import net.minecraftforge.oredict.ShapelessOreRecipe;
import universalelectricity.core.vector.Vector3;
import universalelectricity.prefab.TranslationHelper;
import universalelectricity.prefab.multiblock.TileEntityMulti;
import universalelectricity.prefab.network.IPacketReceiver;
import universalelectricity.prefab.network.PacketManager;
import universalelectricity.prefab.tile.TileEntityAdvanced;
import assemblyline.api.IArmbot;
import assemblyline.api.IArmbotUseable;
import assemblyline.common.AssemblyLine;
import assemblyline.common.Pair;
import com.google.common.io.ByteArrayDataInput;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.ReflectionHelper;
public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInventory, IArmbotUseable
public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInventory, IArmbotUseable, IPacketReceiver
{
public static final int IMPRINTER_MATRIX_START = 9;
public static final int INVENTORY_START = IMPRINTER_MATRIX_START + 3;
@ -203,11 +212,13 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
@Override
public void openChest()
{
this.onInventoryChanged();
}
@Override
public void closeChest()
{
this.onInventoryChanged();
}
/**
@ -257,6 +268,7 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
@Override
public void onInventoryChanged()
{
/**
* Makes the stamping recipe for filters
*/
@ -721,7 +733,8 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
try
{
// TODO: Get Client Side Working.
// TODO: Get Client Side Working. The issue is that the client side doesn't know
// about the chest, and hence does not get the correct data.
TileEntity simulatedTileEntity = tileEntity.getClass().newInstance();
simulatedTileEntity.worldObj = tileEntity.worldObj;
@ -753,6 +766,21 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
return simulatedInventories;
}
@Override
public Packet getDescriptionPacket()
{
return PacketManager.getPacket(AssemblyLine.CHANNEL, this, this.searchInventories);
}
@Override
public void handlePacketData(INetworkManager network, int packetType, Packet250CustomPayload packet, EntityPlayer player, ByteArrayDataInput dataStream)
{
if (this.worldObj.isRemote)
{
this.searchInventories = dataStream.readBoolean();
}
}
/**
* NBT Data
*/
@ -776,6 +804,8 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
this.setInventorySlotContents(var5, ItemStack.loadItemStackFromNBT(var4));
}
}
this.searchInventories = nbt.getBoolean("searchInventories");
}
/**
@ -800,6 +830,8 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
}
nbt.setTag("Items", var2);
nbt.setBoolean("searchInventories", this.searchInventories);
}
/**
@ -819,5 +851,4 @@ public class TileEntityImprinter extends TileEntityAdvanced implements ISidedInv
return false;
}
}