Merge remote-tracking branch 'origin/master'

This commit is contained in:
Tntrololol 2015-05-07 12:40:09 -05:00
commit 85e7503aa6
3 changed files with 82 additions and 0 deletions

View file

@ -0,0 +1,45 @@
package techreborn.api;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class AlloySmelterRecipe {
ItemStack input1, input2;
ItemStack output1;
int tickTime;
int minHeat;
public AlloySmelterRecipe(ItemStack input1, ItemStack input2, ItemStack output1 ,int tickTime) {
this.input1 = input1;
this.input2 = input2;
this.output1 = output1;
this.tickTime = tickTime;
}
public AlloySmelterRecipe(Item input1, Item input2, int inputAmount, Item output1, int tickTime) {
if(input1 != null)
this.input1 = new ItemStack(input1, inputAmount);
if(input2 != null)
this.input2 = new ItemStack(input1, inputAmount);
if (output1 != null)
this.output1 = new ItemStack(output1);
this.tickTime = tickTime;
}
public ItemStack getInput1() {
return input1;
}
public ItemStack getInput2() {
return input2;
}
public ItemStack getOutput1() {
return output1;
}
public int getTickTime() {
return tickTime;
}
}

View file

@ -9,6 +9,8 @@ public final class TechRebornAPI {
public static ArrayList<CentrifugeRecipie> centrifugeRecipies = new ArrayList<CentrifugeRecipie>();
public static ArrayList<BlastFurnaceRecipe> blastFurnaceRecipes = new ArrayList<BlastFurnaceRecipe>();
public static ArrayList<AlloySmelterRecipe> alloySmelterRecipes = new ArrayList<AlloySmelterRecipe>();
public static void registerCentrifugeRecipe(CentrifugeRecipie recipie)
{
@ -60,6 +62,27 @@ public final class TechRebornAPI {
blastFurnaceRecipes.add(new BlastFurnaceRecipe(recipie.getInput2(), recipie.getInput1(), recipie.output1, recipie.output2, recipie.tickTime, recipie.minHeat));
}
}
public static void registerAlloySmelterRecipe(AlloySmelterRecipe recipie) {
boolean shouldAdd = true;
for (AlloySmelterRecipe alloySmelterRecipe : alloySmelterRecipes) {
if (ItemUtils.isItemEqual(alloySmelterRecipe.getInput1(), recipie.getInput1(), false, true) && ItemUtils.isItemEqual(alloySmelterRecipe.getInput2(), recipie.getInput2(), false, true)) {
{
try {
throw new RegisteredItemRecipe(
"Item "
+ recipie.getInput1()
.getUnlocalizedName()
+ " and " + recipie.getInput2().getUnlocalizedName() + " is already being used in a recipe for the Alloy Smelter");
} catch (RegisteredItemRecipe registeredItemRecipe) {
registeredItemRecipe.printStackTrace();
shouldAdd = false;
}
}
}
}
}
public static void addRollingMachinceRecipe(ItemStack output,

View file

@ -4,6 +4,7 @@ import ic2.api.energy.prefab.BasicSink;
import ic2.api.tile.IWrenchable;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import techreborn.config.ConfigTechReborn;
import techreborn.init.ModBlocks;
import techreborn.util.Inventory;
@ -13,6 +14,19 @@ public class TileAlloySmelter extends TileMachineBase implements IWrenchable {
public BasicSink energy;
public Inventory inventory = new Inventory(3, "TileAlloySmelter", 64);
public TileAlloySmelter()
{
//TODO configs
energy = new BasicSink(this, 1000, 2);
}
@Override
public void updateEntity()
{
super.updateEntity();
energy.updateEntity();
}
@Override
public boolean wrenchCanSetFacing(EntityPlayer entityPlayer, int side)