package chemicraft.tileentity;
import java.io.DataOutputStream;
+import java.util.ArrayList;
-import com.google.common.io.ByteArrayDataInput;
-
-import chemicraft.inventory.InventoryChemicalCombinationTableMaterial;
-import chemicraft.inventory.InventoryChemicalCombinationTableResult;
-import chemicraft.system.PacketHandler;
import net.minecraft.src.ItemStack;
import net.minecraft.src.NBTTagCompound;
import net.minecraft.src.NBTTagList;
import net.minecraft.src.Packet;
import net.minecraft.src.TileEntity;
+import chemicraft.inventory.InventoryChemicalCombinationTableMaterial;
+import chemicraft.inventory.InventoryChemicalCombinationTableResult;
+import chemicraft.system.PacketHandler;
+
+import com.google.common.io.ByteArrayDataInput;
public class TileEntityChemicalCombinationTable extends TileEntity {
private InventoryChemicalCombinationTableMaterial invm = new InventoryChemicalCombinationTableMaterial();
private InventoryChemicalCombinationTableResult invr = new InventoryChemicalCombinationTableResult();
- private String atomsList = "";
+ private ArrayList<String> atomsList = new ArrayList<String>();
+ private ArrayList<Integer> atomsAmountList = new ArrayList<Integer>();
+ private int atomsListSize = 0;
@Override
public void readFromNBT(NBTTagCompound par1){
}
}
- this.atomsList = par1.getString("AtomsList");
- }
+ this.atomsListSize = par1.getInteger("atomsListSize");
- @Override
- public Packet getDescriptionPacket() {
- return PacketHandler.getPacket(this);
+ for(int i = 0;i < this.atomsListSize;i++){
+ this.atomsList.add(par1.getString("atomsList") + i);
+ }
+
+ for(int i = 0;i < this.atomsListSize;i++){
+ this.atomsAmountList.add(par1.getInteger("atomsAmountList") + i);
+ }
}
@Override
}
par1.setTag("Items2", var5);
- par1.setString("AtomsList", this.atomsList);
+ this.atomsList.trimToSize();
+ this.atomsAmountList.trimToSize();
+ for(int i = 0;i < this.atomsList.size();i++){
+ par1.setString("atoms" + i, this.atomsList.get(i));
+ }
+ for(int i = 0;i < this.atomsAmountList.size();i++){
+ par1.setInteger("atomsAmount" + i, this.atomsAmountList.get(i));
+ }
+
+ this.atomsListSize = this.atomsList.size();
+ par1.setInteger("atomsListSize", this.atomsListSize);
+
+ }
+
+ @Override
+ public Packet getDescriptionPacket() {
+ return PacketHandler.getPacket(this);
}
public void readPacket(ByteArrayDataInput data) {
this.invr.setInventorySlotContents(i, null);
}
}
+
} catch (Exception e) {
e.printStackTrace();
}
}
-
public void writePacket(DataOutputStream dos){
try {
for(int i = 0;i < this.invm.getSizeInventory();i++){
dos.writeInt(0);
}
}
+
} catch (Exception e) {
e.printStackTrace();
}
}
public void setAtoms(String par1){
- this.atomsList = this.atomsList + par1;
+
+ }
+
+ public String getAtoms(){
+ return this.atomsList;
+ }
+
+ public ArrayList<String> getAtomsList(){
+ return this.atomsList;
+ }
+
+ public ArrayList<Integer> getAtomsAmountList(){
+ return this.atomsAmountList;
+ }
+
+ protected boolean isNumber(String par1){
+ try {
+ int var1 = Integer.valueOf(new String(par1));
+ } catch (Exception e) {
+ return false;
+ }
+ return true;
}
public InventoryChemicalCombinationTableMaterial getInvMaterial(){