Some work on the new api

This commit is contained in:
modmuss50 2016-04-03 14:07:45 +01:00
parent 3d819967be
commit df61729d6f
69 changed files with 1380 additions and 1413 deletions

View file

@ -79,6 +79,7 @@ public class Core
recipeCompact = new RecipeCompact(); recipeCompact = new RecipeCompact();
TechRebornAPI.recipeCompact = recipeCompact; TechRebornAPI.recipeCompact = recipeCompact;
TechRebornAPI.subItemRetriever = new SubItemRetriever();
for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules)
{ {

View file

@ -0,0 +1,61 @@
package techreborn.api;
import net.minecraft.item.ItemStack;
public interface ISubItemRetriever {
ItemStack getCellByName(String name);
ItemStack getCellByName(String name, int count);
ItemStack getCellByName(String name, int count, boolean lookForIC2);
ItemStack getCrushedOreByName(String name);
ItemStack getCrushedOreByName(String name, int count);
ItemStack getDustByName(String name);
ItemStack getDustByName(String name, int count);
ItemStack getSmallDustByName(String name);
ItemStack getSmallDustByName(String name, int count);
ItemStack getGemByName(String name);
ItemStack getGemByName(String name, int count);
ItemStack getIngotByName(String name);
ItemStack getIngotByName(String name, int count);
ItemStack getNuggetByName(String name);
ItemStack getNuggetByName(String name, int count);
ItemStack getPartByName(String name);
ItemStack getPartByName(String name, int count);
ItemStack getPlateByName(String name);
ItemStack getPlateByName(String name, int count);
ItemStack getPurifiedCrushedOreByName(String name);
ItemStack getPurifiedCrushedOreByName(String name, int count);
ItemStack getUpgradeByName(String name);
ItemStack getUpgradeByName(String name, int count);
ItemStack getOreByName(String name);
ItemStack getOreByName(String name, int count);
ItemStack getStorageBlockByName(String name);
ItemStack getStorageBlockByName(String name, int count);
}

View file

@ -0,0 +1,47 @@
package techreborn.api;
import net.minecraft.item.Item.ToolMaterial;
import net.minecraft.item.ItemArmor.ArmorMaterial;
import net.minecraft.util.text.translation.I18n;
import net.minecraftforge.common.util.EnumHelper;
import techreborn.lib.ModInfo;
/**
* This contains some static stuff used in recipes and other things
*/
public class Reference {
public static ToolMaterial BRONZE = EnumHelper.addToolMaterial("BRONZE", 2, 375, 6.0F, 2.25F, 8);
public static ArmorMaterial BRONZE_ARMOUR = EnumHelper.addArmorMaterial("BRONZE", ModInfo.MOD_ID + ":bronze", 17,
new int[]{3, 6, 5, 2}, 8, null/* TODO: SoundEvent */);
public static ToolMaterial RUBY = EnumHelper.addToolMaterial("RUBY", 2, 320, 6.2F, 2.7F, 10);
public static ArmorMaterial RUBY_ARMOUR = EnumHelper.addArmorMaterial("RUBY", ModInfo.MOD_ID + ":ruby", 16,
new int[]{2, 7, 5, 2}, 10, null/* TODO: SoundEvent */);
public static ToolMaterial SAPPHIRE = EnumHelper.addToolMaterial("SAPPHIRE", 2, 620, 5.0F, 2F, 8);
public static ArmorMaterial SAPPHIRE_ARMOUR = EnumHelper.addArmorMaterial("SAPPHIRE", ModInfo.MOD_ID + ":sapphire",
19, new int[]{4, 4, 4, 4}, 8, null/* TODO: SoundEvent */);
public static ToolMaterial PERIDOT = EnumHelper.addToolMaterial("PERIDOT", 2, 400, 7.0F, 2.4F, 16);
public static ArmorMaterial PERIDOT_ARMOUR = EnumHelper.addArmorMaterial("PERIDOT", ModInfo.MOD_ID + ":peridot", 17,
new int[]{3, 8, 3, 2}, 16, null/* TODO: SoundEvent */);
public static String alloySmelteRecipe = I18n.translateToLocal("techreborn.recipe.alloysmelter");
public static String assemblingMachineRecipe = I18n.translateToLocal("techreborn.recipe.assemblingmachine");
public static String blastFurnaceRecipe = I18n.translateToLocal("techreborn.recipe.blastfurnace");
public static String centrifugeRecipe = I18n.translateToLocal("techreborn.recipe.centrifuge");
public static String chemicalReactorRecipe = I18n.translateToLocal("techreborn.recipe.chemicalReactor");
public static String industrialGrinderRecipe = I18n.translateToLocal("techreborn.recipe.grinder");
public static String implosionCompressorRecipe = I18n.translateToLocal("techreborn.recipe.implosioncompressor");
public static String industrialElectrolyzerRecipe = I18n
.translateToLocal("techreborn.recipe.industrialelectrolyzer");
public static String industrialSawmillRecipe = I18n.translateToLocal("techreborn.recipe.industrialsawmill");
public static String latheRecipe = I18n.translateToLocal("techreborn.recipe.lathe");
public static String plateCuttingMachineRecipe = I18n.translateToLocal("techreborn.recipe.platecuttingmachine");
public static String vacuumFreezerRecipe = I18n.translateToLocal("tile.techreborn.vacuumfreezer.name");
public static String grinderRecipe = I18n.translateToLocal("tile.techreborn.grinder.name");
public static String extractorRecipe = I18n.translateToLocal("tile.techreborn.extractor.name");
public static String compressorRecipe = I18n.translateToLocal("tile.techreborn.compressor.name");
public static String recyclerRecipe = I18n.translateToLocal("tile.techreborn.recycler.name");
public static String scrapboxRecipe = I18n.translateToLocal("techreborn.recipe.scrapbox");
}

View file

@ -1,9 +1,5 @@
package techreborn.api; package techreborn.api;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.inventory.InventoryCrafting; import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.Item; import net.minecraft.item.Item;
@ -15,42 +11,38 @@ import net.minecraft.world.World;
import net.minecraftforge.oredict.ShapedOreRecipe; import net.minecraftforge.oredict.ShapedOreRecipe;
import net.minecraftforge.oredict.ShapelessOreRecipe; import net.minecraftforge.oredict.ShapelessOreRecipe;
public class RollingMachineRecipe import java.util.ArrayList;
{ import java.util.HashMap;
import java.util.List;
public class RollingMachineRecipe {
public static final RollingMachineRecipe instance = new RollingMachineRecipe(); public static final RollingMachineRecipe instance = new RollingMachineRecipe();
private final List<IRecipe> recipes = new ArrayList<IRecipe>(); private final List<IRecipe> recipes = new ArrayList<IRecipe>();
public void addShapedOreRecipe(ItemStack outputItemStack, Object... objectInputs) public void addShapedOreRecipe(ItemStack outputItemStack, Object... objectInputs) {
{
recipes.add(new ShapedOreRecipe(outputItemStack, objectInputs)); recipes.add(new ShapedOreRecipe(outputItemStack, objectInputs));
} }
public void addShapelessOreRecipe(ItemStack outputItemStack, Object... objectInputs) public void addShapelessOreRecipe(ItemStack outputItemStack, Object... objectInputs) {
{
recipes.add(new ShapelessOreRecipe(outputItemStack, objectInputs)); recipes.add(new ShapelessOreRecipe(outputItemStack, objectInputs));
} }
public void addRecipe(ItemStack output, Object... components) public void addRecipe(ItemStack output, Object... components) {
{
String s = ""; String s = "";
int i = 0; int i = 0;
int j = 0; int j = 0;
int k = 0; int k = 0;
if (components[i] instanceof String[]) if (components[i] instanceof String[]) {
{
String as[] = (String[]) components[i++]; String as[] = (String[]) components[i++];
for (int l = 0; l < as.length; l++) for (int l = 0; l < as.length; l++) {
{
String s2 = as[l]; String s2 = as[l];
k++; k++;
j = s2.length(); j = s2.length();
s = (new StringBuilder()).append(s).append(s2).toString(); s = (new StringBuilder()).append(s).append(s2).toString();
} }
} else } else {
{ while (components[i] instanceof String) {
while (components[i] instanceof String)
{
String s1 = (String) components[i++]; String s1 = (String) components[i++];
k++; k++;
j = s1.length(); j = s1.length();
@ -58,32 +50,25 @@ public class RollingMachineRecipe
} }
} }
HashMap hashmap = new HashMap(); HashMap hashmap = new HashMap();
for (; i < components.length; i += 2) for (; i < components.length; i += 2) {
{
Character character = (Character) components[i]; Character character = (Character) components[i];
ItemStack itemstack1 = null; ItemStack itemstack1 = null;
if (components[i + 1] instanceof Item) if (components[i + 1] instanceof Item) {
{
itemstack1 = new ItemStack((Item) components[i + 1]); itemstack1 = new ItemStack((Item) components[i + 1]);
} else if (components[i + 1] instanceof Block) } else if (components[i + 1] instanceof Block) {
{
itemstack1 = new ItemStack((Block) components[i + 1], 1, -1); itemstack1 = new ItemStack((Block) components[i + 1], 1, -1);
} else if (components[i + 1] instanceof ItemStack) } else if (components[i + 1] instanceof ItemStack) {
{
itemstack1 = (ItemStack) components[i + 1]; itemstack1 = (ItemStack) components[i + 1];
} }
hashmap.put(character, itemstack1); hashmap.put(character, itemstack1);
} }
ItemStack recipeArray[] = new ItemStack[j * k]; ItemStack recipeArray[] = new ItemStack[j * k];
for (int i1 = 0; i1 < j * k; i1++) for (int i1 = 0; i1 < j * k; i1++) {
{
char c = s.charAt(i1); char c = s.charAt(i1);
if (hashmap.containsKey(Character.valueOf(c))) if (hashmap.containsKey(Character.valueOf(c))) {
{
recipeArray[i1] = ((ItemStack) hashmap.get(Character.valueOf(c))).copy(); recipeArray[i1] = ((ItemStack) hashmap.get(Character.valueOf(c))).copy();
} else } else {
{
recipeArray[i1] = null; recipeArray[i1] = null;
} }
} }
@ -91,27 +76,21 @@ public class RollingMachineRecipe
recipes.add(new ShapedRecipes(j, k, recipeArray, output)); recipes.add(new ShapedRecipes(j, k, recipeArray, output));
} }
public void addShapelessRecipe(ItemStack output, Object... components) public void addShapelessRecipe(ItemStack output, Object... components) {
{
List<ItemStack> ingredients = new ArrayList<ItemStack>(); List<ItemStack> ingredients = new ArrayList<ItemStack>();
for (int j = 0; j < components.length; j++) for (int j = 0; j < components.length; j++) {
{
Object obj = components[j]; Object obj = components[j];
if (obj instanceof ItemStack) if (obj instanceof ItemStack) {
{
ingredients.add(((ItemStack) obj).copy()); ingredients.add(((ItemStack) obj).copy());
continue; continue;
} }
if (obj instanceof Item) if (obj instanceof Item) {
{
ingredients.add(new ItemStack((Item) obj)); ingredients.add(new ItemStack((Item) obj));
continue; continue;
} }
if (obj instanceof Block) if (obj instanceof Block) {
{
ingredients.add(new ItemStack((Block) obj)); ingredients.add(new ItemStack((Block) obj));
} else } else {
{
throw new RuntimeException("Invalid shapeless recipe!"); throw new RuntimeException("Invalid shapeless recipe!");
} }
} }
@ -119,13 +98,10 @@ public class RollingMachineRecipe
recipes.add(new ShapelessRecipes(output, ingredients)); recipes.add(new ShapelessRecipes(output, ingredients));
} }
public ItemStack findMatchingRecipe(InventoryCrafting inv, World world) public ItemStack findMatchingRecipe(InventoryCrafting inv, World world) {
{ for (int k = 0; k < recipes.size(); k++) {
for (int k = 0; k < recipes.size(); k++)
{
IRecipe irecipe = (IRecipe) recipes.get(k); IRecipe irecipe = (IRecipe) recipes.get(k);
if (irecipe.matches(inv, world)) if (irecipe.matches(inv, world)) {
{
return irecipe.getCraftingResult(inv); return irecipe.getCraftingResult(inv);
} }
} }
@ -133,8 +109,7 @@ public class RollingMachineRecipe
return null; return null;
} }
public List<IRecipe> getRecipeList() public List<IRecipe> getRecipeList() {
{
return recipes; return recipes;
} }

View file

@ -1,28 +1,39 @@
package techreborn.api; package techreborn.api;
import net.minecraft.item.ItemStack;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import net.minecraft.item.ItemStack; /**
import techreborn.Core; * Use this to add items to the scrap box and to check if an item is present
* there
public class ScrapboxList */
{ public class ScrapboxList {
/**
* This full list of items that is registered with this api
*/
public static List<ItemStack> stacks = new ArrayList<>(); public static List<ItemStack> stacks = new ArrayList<>();
public static void addItemStackToList(ItemStack stack) /**
{ * Use this to add an item stack to the list
if (!hasItems(stack)) *
{ * @param stack the itemstack you want to add
*/
public static void addItemStackToList(ItemStack stack) {
if (!hasItems(stack)) {
stacks.add(stack); stacks.add(stack);
} }
} }
private static boolean hasItems(ItemStack stack) /**
{ * @param stack the itemstack you want to test
for (ItemStack s : stacks) * @return if the scrapbox can output this this item
{ */
private static boolean hasItems(ItemStack stack) {
for (ItemStack s : stacks) {
// TODO why do this!!!!!!!!!
if (stack.getDisplayName().equals(s.getDisplayName())) if (stack.getDisplayName().equals(s.getDisplayName()))
return true; return true;
} }

View file

@ -1,25 +0,0 @@
package techreborn.api;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
import techreborn.api.upgrade.IMachineUpgrade;
public class SlotUpgrade extends Slot
{
public SlotUpgrade(IInventory inventoryIn, int index, int xPosition, int yPosition)
{
super(inventoryIn, index, xPosition, yPosition);
}
@Override
public boolean isItemValid(ItemStack stack)
{
if (stack.getItem() instanceof IMachineUpgrade)
{
return true;
} else
return false;
}
}

View file

@ -1,39 +1,81 @@
package techreborn.api; package techreborn.api;
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.recipe.IRecipeCompact; import techreborn.api.recipe.IRecipeCompact;
public final class TechRebornAPI public final class TechRebornAPI {
{
/**
* Use this to get the instance of IRecipeCompat
*/
public static IRecipeCompact recipeCompact; public static IRecipeCompact recipeCompact;
public static void addRollingOreMachinceRecipe(ItemStack output, Object... components) public static ISubItemRetriever subItemRetriever;
{
public static void addRollingOreMachinceRecipe(ItemStack output, Object... components) {
RollingMachineRecipe.instance.addShapedOreRecipe(output, components); RollingMachineRecipe.instance.addShapedOreRecipe(output, components);
} }
public static void addShapelessOreRollingMachinceRecipe(ItemStack output, Object... components) public static void addShapelessOreRollingMachinceRecipe(ItemStack output, Object... components) {
{
RollingMachineRecipe.instance.addShapelessOreRecipe(output, components); RollingMachineRecipe.instance.addShapelessOreRecipe(output, components);
} }
public static void addRollingMachinceRecipe(ItemStack output, Object... components) public static void addRollingMachinceRecipe(ItemStack output, Object... components) {
{
RollingMachineRecipe.instance.addRecipe(output, components); RollingMachineRecipe.instance.addRecipe(output, components);
} }
public static void addShapelessRollingMachinceRecipe(ItemStack output, Object... components) public static void addShapelessRollingMachinceRecipe(ItemStack output, Object... components) {
{
RollingMachineRecipe.instance.addShapelessRecipe(output, components); RollingMachineRecipe.instance.addShapelessRecipe(output, components);
} }
/**
* Use this to get an item from techrebonrn, @see <a href=
* "https://github.com/TechReborn/TechReborn/blob/1.9/src/main/java/techreborn/init/ModItems.java">
* ModItems.java</a> for the full list
*
* @param name
* @return
*/
public static Item getItem(String name) {
try {
Object e = Class.forName("techreborn.init.ModItems").getField(name).get(null);
return e instanceof Item ? (Item) e : null;
} catch (NoSuchFieldException e1) {
e1.printStackTrace();
return null;
} catch (IllegalAccessException e) {
e.printStackTrace();
return null;
} catch (ClassNotFoundException e) {
e.printStackTrace();
return null;
}
} }
class RegisteredItemRecipe extends Exception /**
{ * Use this to get an block from techrebonrn, @see <a href=
public RegisteredItemRecipe(String message) * "https://github.com/TechReborn/TechReborn/blob/1.9/src/main/java/techreborn/init/ModBlocks.java">
{ * ModBlocks.java</a> for the full list
super(message); *
* @param name
* @return
*/
public static Block getBlock(String name) {
try {
Object e = Class.forName("techreborn.init.ModBlocks").getField(name).get(null);
return e instanceof Block ? (Block) e : null;
} catch (NoSuchFieldException e1) {
e1.printStackTrace();
return null;
} catch (IllegalAccessException e) {
e.printStackTrace();
return null;
} catch (ClassNotFoundException e) {
e.printStackTrace();
return null;
} }
} }
}

View file

@ -1,49 +0,0 @@
package techreborn.api;
import net.minecraft.block.Block;
public class TechRebornBlocks
{
public static Block getBlock(String name)
{
try
{
Object e = Class.forName("techreborn.init.ModBlocks").getField(name).get(null);
return e instanceof Block ? (Block) e : null;
} catch (NoSuchFieldException e1)
{
e1.printStackTrace();
return null;
} catch (IllegalAccessException e)
{
e.printStackTrace();
return null;
} catch (ClassNotFoundException e)
{
e.printStackTrace();
return null;
}
}
/**
*
* Full list of blocks.
*
* thermalGenerator quantumTank quantumChest digitalChest centrifuge
* RollingMachine MachineCasing BlastFurnace AlloySmelter Grinder
* ImplosionCompressor MatterFabricator ChunkLoader HighAdvancedMachineBlock
* Dragoneggenergysiphoner Magicenergeyconverter AssemblyMachine
* DieselGenerator IndustrialElectrolyzer MagicalAbsorber Semifluidgenerator
* Gasturbine AlloyFurnace ChemicalReactor lathe platecuttingmachine Idsu
* Aesu Lesu Supercondensator Woodenshelf Metalshelf LesuStorage
* Distillationtower ElectricCraftingTable VacuumFreezer PlasmaGenerator
* FusionControlComputer ComputerCube FusionCoil LightningRod heatGenerator
* industrialSawmill chargeBench farm
*
* ore storage storage2 machineframe
*
*
*/
}

View file

@ -1,48 +0,0 @@
package techreborn.api;
import net.minecraft.item.Item;
public class TechRebornItems
{
public static Item getItem(String name)
{
try
{
Object e = Class.forName("techreborn.init.ModItems").getField(name).get(null);
return e instanceof Item ? (Item) e : null;
} catch (NoSuchFieldException e1)
{
e1.printStackTrace();
return null;
} catch (IllegalAccessException e)
{
e.printStackTrace();
return null;
} catch (ClassNotFoundException e)
{
e.printStackTrace();
return null;
}
}
/*
*
* Items
*
* gems ingots nuggets dusts smallDusts tinyDusts parts cells rockCutter
* lithiumBatpack lapotronpack omniTool advancedDrill lapotronicOrb manuel
* uuMatter plate rods crushedOre purifiedCrushedOre cloakingDevice
*
* bucketBerylium bucketcalcium bucketcalciumcarbonate bucketChlorite
* bucketDeuterium bucketGlyceryl bucketHelium bucketHelium3
* bucketHeliumplasma bucketHydrogen bucketLithium bucketMercury
* bucketMethane bucketNitrocoalfuel bucketNitrofuel bucketNitrogen
* bucketNitrogendioxide bucketPotassium bucketSilicon bucketSodium
* bucketSodiumpersulfate bucketTritium bucketWolframium
*
* hammerIron hammerDiamond upgrades farmPatten
*
*/
}

View file

@ -0,0 +1,21 @@
package techreborn.api.gui;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
import techreborn.api.upgrade.IMachineUpgrade;
public class SlotUpgrade extends Slot {
public SlotUpgrade(IInventory inventoryIn, int index, int xPosition, int yPosition) {
super(inventoryIn, index, xPosition, yPosition);
}
@Override
public boolean isItemValid(ItemStack stack) {
if (stack.getItem() instanceof IMachineUpgrade) {
return true;
} else
return false;
}
}

View file

@ -0,0 +1,4 @@
@API(apiVersion = "@MODVERSION@", owner = "techreborn", provides = "techrebornAPI")
package techreborn.api.gui;
import net.minecraftforge.fml.common.API;

View file

@ -2,26 +2,25 @@ package techreborn.api.reactor;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
public class FusionReactorRecipe public class FusionReactorRecipe {
{
/** /**
* This is the item stack that is required in the top slot * This is the item stack that is required in the top slot
* * <p>
* This cannot be null * This cannot be null
*/ */
ItemStack topInput; ItemStack topInput;
/** /**
* This is the item stack that is required in the bottom slot * This is the item stack that is required in the bottom slot
* * <p>
* This can be null * This can be null
*/ */
ItemStack bottomInput; ItemStack bottomInput;
/** /**
* This is the output stack * This is the output stack
* * <p>
* This cannot be null * This cannot be null
*/ */
ItemStack output; ItemStack output;
@ -43,23 +42,15 @@ public class FusionReactorRecipe
int tickTime; int tickTime;
/** /**
* * @param topInput This is the top slot stack
* @param topInput * @param bottomInput This is the bottom slot stack
* This is the top slot stack * @param output This is the output stack
* @param bottomInput * @param startEU This is the inital EU amount
* This is the bottom slot stack * @param euTick This is the eu that is transfured every tick
* @param output * @param tickTime This is the time the recipe takes to process
* This is the output stack
* @param startEU
* This is the inital EU amount
* @param euTick
* This is the eu that is transfured every tick
* @param tickTime
* This is the time the recipe takes to process
*/ */
public FusionReactorRecipe(ItemStack topInput, ItemStack bottomInput, ItemStack output, double startEU, public FusionReactorRecipe(ItemStack topInput, ItemStack bottomInput, ItemStack output, double startEU,
double euTick, int tickTime) double euTick, int tickTime) {
{
this.topInput = topInput; this.topInput = topInput;
this.bottomInput = bottomInput; this.bottomInput = bottomInput;
this.output = output; this.output = output;
@ -68,33 +59,27 @@ public class FusionReactorRecipe
this.tickTime = tickTime; this.tickTime = tickTime;
} }
public ItemStack getTopInput() public ItemStack getTopInput() {
{
return topInput; return topInput;
} }
public ItemStack getBottomInput() public ItemStack getBottomInput() {
{
return bottomInput; return bottomInput;
} }
public ItemStack getOutput() public ItemStack getOutput() {
{
return output; return output;
} }
public double getStartEU() public double getStartEU() {
{
return startEU; return startEU;
} }
public double getEuTick() public double getEuTick() {
{
return euTick; return euTick;
} }
public int getTickTime() public int getTickTime() {
{
return tickTime; return tickTime;
} }
} }

View file

@ -2,8 +2,7 @@ package techreborn.api.reactor;
import java.util.ArrayList; import java.util.ArrayList;
public class FusionReactorRecipeHelper public class FusionReactorRecipeHelper {
{
/** /**
* This is the list of all the recipes * This is the list of all the recipes
@ -13,11 +12,9 @@ public class FusionReactorRecipeHelper
/** /**
* Register your reactor recipe here * Register your reactor recipe here
* *
* @param reactorRecipe * @param reactorRecipe the recipe you want to add
* the recipe you want to add
*/ */
public static void registerRecipe(FusionReactorRecipe reactorRecipe) public static void registerRecipe(FusionReactorRecipe reactorRecipe) {
{
reactorRecipes.add(reactorRecipe); reactorRecipes.add(reactorRecipe);
} }
} }

View file

@ -1,16 +1,15 @@
package techreborn.api.recipe; package techreborn.api.recipe;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import java.util.ArrayList;
import java.util.List;
/** /**
* Extend this to add a recipe * Extend this to add a recipe
*/ */
public abstract class BaseRecipe implements IBaseRecipeType, Cloneable public abstract class BaseRecipe implements IBaseRecipeType, Cloneable {
{
public ArrayList<ItemStack> inputs; public ArrayList<ItemStack> inputs;
public String name; public String name;
@ -18,10 +17,9 @@ public abstract class BaseRecipe implements IBaseRecipeType, Cloneable
public int euPerTick; public int euPerTick;
private ArrayList<ItemStack> outputs; private ArrayList<ItemStack> outputs;
public BaseRecipe(String name, int tickTime, int euPerTick) public BaseRecipe(String name, int tickTime, int euPerTick) {
{ inputs = new ArrayList<>();
inputs = new ArrayList<ItemStack>(); outputs = new ArrayList<>();
outputs = new ArrayList<ItemStack>();
this.name = name; this.name = name;
// This adds all new recipes // This adds all new recipes
this.tickTime = tickTime; this.tickTime = tickTime;
@ -29,73 +27,61 @@ public abstract class BaseRecipe implements IBaseRecipeType, Cloneable
} }
@Override @Override
public ItemStack getOutput(int i) public ItemStack getOutput(int i) {
{
return outputs.get(i).copy(); return outputs.get(i).copy();
} }
@Override @Override
public int getOutputsSize() public int getOutputsSize() {
{
return outputs.size(); return outputs.size();
} }
public void addOutput(ItemStack stack) public void addOutput(ItemStack stack) {
{
outputs.add(stack); outputs.add(stack);
} }
@Override @Override
public List<ItemStack> getInputs() public List<ItemStack> getInputs() {
{
return inputs; return inputs;
} }
@Override @Override
public String getRecipeName() public String getRecipeName() {
{
return name; return name;
} }
@Override @Override
public int tickTime() public int tickTime() {
{
return tickTime; return tickTime;
} }
@Override @Override
public int euPerTick() public int euPerTick() {
{
return euPerTick; return euPerTick;
} }
@Override @Override
public boolean canCraft(TileEntity tile) public boolean canCraft(TileEntity tile) {
{
return true; return true;
} }
@Override @Override
public boolean onCraft(TileEntity tile) public boolean onCraft(TileEntity tile) {
{
return true; return true;
} }
@Override @Override
public Object clone() throws CloneNotSupportedException public Object clone() throws CloneNotSupportedException {
{
return super.clone(); return super.clone();
} }
@Override @Override
public boolean useOreDic() public boolean useOreDic() {
{
return true; return true;
} }
@Override @Override
public List<ItemStack> getOutputs() public List<ItemStack> getOutputs() {
{
return outputs; return outputs;
} }
} }

View file

@ -1,15 +1,14 @@
package techreborn.api.recipe; package techreborn.api.recipe;
import java.util.List;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import java.util.List;
/** /**
* This is the base recipe class implement this to make a recipe handler * This is the base recipe class implement this to make a recipe handler
*/ */
public interface IBaseRecipeType public interface IBaseRecipeType {
{
/** /**
* Use this to get all of the inputs * Use this to get all of the inputs
@ -21,8 +20,7 @@ public interface IBaseRecipeType
/** /**
* This gets the output form the array list * This gets the output form the array list
* *
* @param i * @param i get output form position in arraylist
* get output form position in arraylist
* @return the output * @return the output
*/ */
public ItemStack getOutput(int i); public ItemStack getOutput(int i);
@ -68,15 +66,13 @@ public interface IBaseRecipeType
public int euPerTick(); public int euPerTick();
/** /**
* @param tile * @param tile the tile that is doing the crafting
* the tile that is doing the crafting
* @return if true the recipe will craft, if false it will not * @return if true the recipe will craft, if false it will not
*/ */
public boolean canCraft(TileEntity tile); public boolean canCraft(TileEntity tile);
/** /**
* @param tile * @param tile the tile that is doing the crafting
* the tile that is doing the crafting
* @return return true if fluid was taken and should craft * @return return true if fluid was taken and should craft
*/ */
public boolean onCraft(TileEntity tile); public boolean onCraft(TileEntity tile);

View file

@ -2,8 +2,7 @@ package techreborn.api.recipe;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
public interface IRecipeCompact public interface IRecipeCompact {
{
ItemStack getItem(String name); ItemStack getItem(String name);
} }

View file

@ -1,18 +1,15 @@
package techreborn.api.recipe; package techreborn.api.recipe;
import net.minecraft.item.ItemStack;
import org.apache.commons.lang3.time.StopWatch;
import reborncore.common.util.ItemUtils;
import techreborn.Core;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import net.minecraft.item.ItemStack; public class RecipeHandler {
import org.apache.commons.lang3.time.StopWatch;
import reborncore.common.util.ItemUtils;
import techreborn.Core;
public class RecipeHandler
{
/** /**
* This is the array list of all of the recipes for all of the machines * This is the array list of all of the recipes for all of the machines
@ -28,29 +25,22 @@ public class RecipeHandler
/** /**
* Use this to get all of the recipes form a recipe name * Use this to get all of the recipes form a recipe name
* *
* @param name * @param name the name that the recipe was resisted as.
* the name that the recipe was resisted as.
* @return A list of all the recipes of a given name. * @return A list of all the recipes of a given name.
*/ */
public static List<IBaseRecipeType> getRecipeClassFromName(String name) public static List<IBaseRecipeType> getRecipeClassFromName(String name) {
{
List<IBaseRecipeType> baseRecipeList = new ArrayList<IBaseRecipeType>(); List<IBaseRecipeType> baseRecipeList = new ArrayList<IBaseRecipeType>();
for (IBaseRecipeType baseRecipe : recipeList) for (IBaseRecipeType baseRecipe : recipeList) {
{ if (baseRecipe.getRecipeName().equals(name)) {
if (baseRecipe.getRecipeName().equals(name))
{
baseRecipeList.add(baseRecipe); baseRecipeList.add(baseRecipe);
} }
} }
return baseRecipeList; return baseRecipeList;
} }
public static String getUserFreindlyName(String name) public static String getUserFreindlyName(String name) {
{ for (IBaseRecipeType baseRecipe : recipeList) {
for (IBaseRecipeType baseRecipe : recipeList) if (baseRecipe.getRecipeName().equals(name)) {
{
if (baseRecipe.getRecipeName().equals(name))
{
return baseRecipe.getUserFreindlyName(); return baseRecipe.getUserFreindlyName();
} }
} }
@ -60,53 +50,40 @@ public class RecipeHandler
/** /**
* Add a recipe to the system * Add a recipe to the system
* *
* @param recipe * @param recipe The recipe to add to the system.
* The recipe to add to the system.
*/ */
public static void addRecipe(IBaseRecipeType recipe) public static void addRecipe(IBaseRecipeType recipe) {
{ if (recipe == null) {
if (recipe == null)
{
return; return;
} }
if (recipeList.contains(recipe)) if (recipeList.contains(recipe)) {
{
return; return;
} }
// if (!RecipeConfigManager.canLoadRecipe(recipe)) { // if (!RecipeConfigManager.canLoadRecipe(recipe)) {
// return; // return;
// } // }
if (!machineNames.contains(recipe.getRecipeName())) if (!machineNames.contains(recipe.getRecipeName())) {
{
machineNames.add(recipe.getRecipeName()); machineNames.add(recipe.getRecipeName());
} }
recipeList.add(recipe); recipeList.add(recipe);
StringBuffer buffer = new StringBuffer(); StringBuffer buffer = new StringBuffer();
for (StackTraceElement ste : Thread.currentThread().getStackTrace()) for (StackTraceElement ste : Thread.currentThread().getStackTrace()) {
{
buffer.append(ste); buffer.append(ste);
} }
stackMap.put(recipe, buffer.toString()); stackMap.put(recipe, buffer.toString());
} }
public static void scanForDupeRecipes() throws Exception public static void scanForDupeRecipes() throws Exception {
{
StopWatch watch = new StopWatch(); StopWatch watch = new StopWatch();
watch.start(); watch.start();
for (IBaseRecipeType baseRecipeType : recipeList) for (IBaseRecipeType baseRecipeType : recipeList) {
{ for (IBaseRecipeType recipe : recipeList) {
for (IBaseRecipeType recipe : recipeList) if (baseRecipeType != recipe && baseRecipeType.getRecipeName().equals(recipe.getRecipeName())) {
{ for (int i = 0; i < baseRecipeType.getInputs().size(); i++) {
if (baseRecipeType != recipe && baseRecipeType.getRecipeName().equals(recipe.getRecipeName()))
{
for (int i = 0; i < baseRecipeType.getInputs().size(); i++)
{
if (ItemUtils.isItemEqual(baseRecipeType.getInputs().get(i), recipe.getInputs().get(i), true, if (ItemUtils.isItemEqual(baseRecipeType.getInputs().get(i), recipe.getInputs().get(i), true,
false, false)) false, false)) {
{
StringBuffer itemInfo = new StringBuffer(); StringBuffer itemInfo = new StringBuffer();
for (ItemStack inputs : baseRecipeType.getInputs()) for (ItemStack inputs : baseRecipeType.getInputs()) {
{
itemInfo.append(":" + inputs.getItem().getUnlocalizedName() + "," itemInfo.append(":" + inputs.getItem().getUnlocalizedName() + ","
+ inputs.getDisplayName() + "," + inputs.stackSize); + inputs.getDisplayName() + "," + inputs.stackSize);
} }

View file

@ -1,23 +1,20 @@
package techreborn.api.recipe; package techreborn.api.recipe;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.items.ItemParts; import techreborn.items.ItemParts;
import techreborn.lib.Reference;
//THIS is only here to trick JEI into showing recipes for the recycler //THIS is only here to trick JEI into showing recipes for the recycler
public class RecyclerRecipe extends BaseRecipe public class RecyclerRecipe extends BaseRecipe {
{
public RecyclerRecipe(ItemStack input) public RecyclerRecipe(ItemStack input) {
{
super(Reference.recyclerRecipe, 0, 0); super(Reference.recyclerRecipe, 0, 0);
inputs.add(input); inputs.add(input);
addOutput(ItemParts.getPartByName("scrap")); addOutput(ItemParts.getPartByName("scrap"));
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Recycler"; return "Recycler";
} }
} }

View file

@ -1,22 +1,19 @@
package techreborn.api.recipe; package techreborn.api.recipe;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.init.ModItems; import techreborn.api.Reference;
import techreborn.lib.Reference; import techreborn.api.TechRebornAPI;
public class ScrapboxRecipe extends BaseRecipe public class ScrapboxRecipe extends BaseRecipe {
{
public ScrapboxRecipe(ItemStack output) public ScrapboxRecipe(ItemStack output) {
{
super(Reference.scrapboxRecipe, 0, 0); super(Reference.scrapboxRecipe, 0, 0);
inputs.add(new ItemStack(ModItems.scrapBox)); inputs.add(new ItemStack(TechRebornAPI.getItem("scrapBox")));
addOutput(output); addOutput(output);
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Scrapbox"; return "Scrapbox";
} }
} }

View file

@ -1,14 +1,12 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class AlloySmelterRecipe extends BaseRecipe public class AlloySmelterRecipe extends BaseRecipe {
{
public AlloySmelterRecipe(ItemStack input1, ItemStack input2, ItemStack output1, int tickTime, int euPerTick) public AlloySmelterRecipe(ItemStack input1, ItemStack input2, ItemStack output1, int tickTime, int euPerTick) {
{
super(Reference.alloySmelteRecipe, tickTime, euPerTick); super(Reference.alloySmelteRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -19,8 +17,7 @@ public class AlloySmelterRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Alloy Smelter"; return "Alloy Smelter";
} }
} }

View file

@ -1,14 +1,12 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class AssemblingMachineRecipe extends BaseRecipe public class AssemblingMachineRecipe extends BaseRecipe {
{
public AssemblingMachineRecipe(ItemStack input1, ItemStack input2, ItemStack output1, int tickTime, int euPerTick) public AssemblingMachineRecipe(ItemStack input1, ItemStack input2, ItemStack output1, int tickTime, int euPerTick) {
{
super(Reference.assemblingMachineRecipe, tickTime, euPerTick); super(Reference.assemblingMachineRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -19,8 +17,7 @@ public class AssemblingMachineRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Assembling Machine"; return "Assembling Machine";
} }
} }

View file

@ -2,18 +2,16 @@ package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
import techreborn.tiles.TileBlastFurnace; import techreborn.tiles.TileBlastFurnace;
public class BlastFurnaceRecipe extends BaseRecipe public class BlastFurnaceRecipe extends BaseRecipe {
{
public int neededHeat; public int neededHeat;
public BlastFurnaceRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2, int tickTime, public BlastFurnaceRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2, int tickTime,
int euPerTick, int neededHeat) int euPerTick, int neededHeat) {
{
super(Reference.blastFurnaceRecipe, tickTime, euPerTick); super(Reference.blastFurnaceRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -28,16 +26,13 @@ public class BlastFurnaceRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Blast Furnace"; return "Blast Furnace";
} }
@Override @Override
public boolean canCraft(TileEntity tile) public boolean canCraft(TileEntity tile) {
{ if (tile instanceof TileBlastFurnace) {
if (tile instanceof TileBlastFurnace)
{
TileBlastFurnace blastFurnace = (TileBlastFurnace) tile; TileBlastFurnace blastFurnace = (TileBlastFurnace) tile;
return blastFurnace.getHeat() >= neededHeat; return blastFurnace.getHeat() >= neededHeat;
} }
@ -45,8 +40,7 @@ public class BlastFurnaceRecipe extends BaseRecipe
} }
@Override @Override
public boolean onCraft(TileEntity tile) public boolean onCraft(TileEntity tile) {
{
return super.onCraft(tile); return super.onCraft(tile);
} }
} }

View file

@ -1,17 +1,15 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class CentrifugeRecipe extends BaseRecipe public class CentrifugeRecipe extends BaseRecipe {
{
boolean useOreDic = false; boolean useOreDic = false;
public CentrifugeRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2, ItemStack output3, public CentrifugeRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2, ItemStack output3,
ItemStack output4, int tickTime, int euPerTick) ItemStack output4, int tickTime, int euPerTick) {
{
super(Reference.centrifugeRecipe, tickTime, euPerTick); super(Reference.centrifugeRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -28,15 +26,13 @@ public class CentrifugeRecipe extends BaseRecipe
} }
public CentrifugeRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2, ItemStack output3, public CentrifugeRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2, ItemStack output3,
ItemStack output4, int tickTime, int euPerTick, boolean useOreDic) ItemStack output4, int tickTime, int euPerTick, boolean useOreDic) {
{
this(input1, input2, output1, output2, output3, output4, tickTime, euPerTick); this(input1, input2, output1, output2, output3, output4, tickTime, euPerTick);
this.useOreDic = useOreDic; this.useOreDic = useOreDic;
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Centrifuge"; return "Centrifuge";
} }

View file

@ -1,14 +1,12 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class ChemicalReactorRecipe extends BaseRecipe public class ChemicalReactorRecipe extends BaseRecipe {
{
public ChemicalReactorRecipe(ItemStack input1, ItemStack input2, ItemStack output1, int tickTime, int euPerTick) public ChemicalReactorRecipe(ItemStack input1, ItemStack input2, ItemStack output1, int tickTime, int euPerTick) {
{
super(Reference.chemicalReactorRecipe, tickTime, euPerTick); super(Reference.chemicalReactorRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -19,8 +17,7 @@ public class ChemicalReactorRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Chemical Reactor"; return "Chemical Reactor";
} }
} }

View file

@ -1,14 +1,12 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class CompressorRecipe extends BaseRecipe public class CompressorRecipe extends BaseRecipe {
{
public CompressorRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) public CompressorRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) {
{
super(Reference.compressorRecipe, tickTime, euPerTick); super(Reference.compressorRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -17,8 +15,7 @@ public class CompressorRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Compressor"; return "Compressor";
} }
} }

View file

@ -1,14 +1,12 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class ExtractorRecipe extends BaseRecipe public class ExtractorRecipe extends BaseRecipe {
{
public ExtractorRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) public ExtractorRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) {
{
super(Reference.extractorRecipe, tickTime, euPerTick); super(Reference.extractorRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -17,8 +15,7 @@ public class ExtractorRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Extractor"; return "Extractor";
} }
} }

View file

@ -1,14 +1,12 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class GrinderRecipe extends BaseRecipe public class GrinderRecipe extends BaseRecipe {
{
public GrinderRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) public GrinderRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) {
{
super(Reference.grinderRecipe, tickTime, euPerTick); super(Reference.grinderRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -17,8 +15,7 @@ public class GrinderRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Grinder"; return "Grinder";
} }
} }

View file

@ -1,15 +1,13 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class ImplosionCompressorRecipe extends BaseRecipe public class ImplosionCompressorRecipe extends BaseRecipe {
{
public ImplosionCompressorRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2, public ImplosionCompressorRecipe(ItemStack input1, ItemStack input2, ItemStack output1, ItemStack output2,
int tickTime, int euPerTick) int tickTime, int euPerTick) {
{
super(Reference.implosionCompressorRecipe, tickTime, euPerTick); super(Reference.implosionCompressorRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -22,8 +20,7 @@ public class ImplosionCompressorRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Implosion Compressor"; return "Implosion Compressor";
} }
} }

View file

@ -1,17 +1,15 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class IndustrialElectrolyzerRecipe extends BaseRecipe public class IndustrialElectrolyzerRecipe extends BaseRecipe {
{
private boolean useOreDictionary = true; private boolean useOreDictionary = true;
public IndustrialElectrolyzerRecipe(ItemStack inputCells, ItemStack input2, ItemStack output1, ItemStack output2, public IndustrialElectrolyzerRecipe(ItemStack inputCells, ItemStack input2, ItemStack output1, ItemStack output2,
ItemStack output3, ItemStack output4, int tickTime, int euPerTick) ItemStack output3, ItemStack output4, int tickTime, int euPerTick) {
{
super(Reference.industrialElectrolyzerRecipe, tickTime, euPerTick); super(Reference.industrialElectrolyzerRecipe, tickTime, euPerTick);
if (inputCells != null) if (inputCells != null)
inputs.add(inputCells); inputs.add(inputCells);
@ -28,14 +26,12 @@ public class IndustrialElectrolyzerRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Industrial Electrolyzer"; return "Industrial Electrolyzer";
} }
@Override @Override
public boolean useOreDic() public boolean useOreDic() {
{
return useOreDictionary; return useOreDictionary;
} }
} }

View file

@ -3,18 +3,16 @@ package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
import techreborn.tiles.TileIndustrialGrinder; import techreborn.tiles.TileIndustrialGrinder;
public class IndustrialGrinderRecipe extends BaseRecipe public class IndustrialGrinderRecipe extends BaseRecipe {
{
public FluidStack fluidStack; public FluidStack fluidStack;
public IndustrialGrinderRecipe(ItemStack input1, ItemStack input2, FluidStack fluidStack, ItemStack output1, public IndustrialGrinderRecipe(ItemStack input1, ItemStack input2, FluidStack fluidStack, ItemStack output1,
ItemStack output2, ItemStack output3, ItemStack output4, int tickTime, int euPerTick) ItemStack output2, ItemStack output3, ItemStack output4, int tickTime, int euPerTick) {
{
super(Reference.industrialGrinderRecipe, tickTime, euPerTick); super(Reference.industrialGrinderRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -32,29 +30,22 @@ public class IndustrialGrinderRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "IndustrialGrinder"; return "IndustrialGrinder";
} }
@Override @Override
public boolean canCraft(TileEntity tile) public boolean canCraft(TileEntity tile) {
{ if (fluidStack == null) {
if (fluidStack == null)
{
return true; return true;
} }
if (tile instanceof TileIndustrialGrinder) if (tile instanceof TileIndustrialGrinder) {
{
TileIndustrialGrinder grinder = (TileIndustrialGrinder) tile; TileIndustrialGrinder grinder = (TileIndustrialGrinder) tile;
if (grinder.tank.getFluid() == null) if (grinder.tank.getFluid() == null) {
{
return false; return false;
} }
if (grinder.tank.getFluid() == fluidStack) if (grinder.tank.getFluid() == fluidStack) {
{ if (grinder.tank.getFluidAmount() >= fluidStack.amount) {
if (grinder.tank.getFluidAmount() >= fluidStack.amount)
{
return true; return true;
} }
} }
@ -63,29 +54,21 @@ public class IndustrialGrinderRecipe extends BaseRecipe
} }
@Override @Override
public boolean onCraft(TileEntity tile) public boolean onCraft(TileEntity tile) {
{ if (fluidStack == null) {
if (fluidStack == null)
{
return true; return true;
} }
if (tile instanceof TileIndustrialGrinder) if (tile instanceof TileIndustrialGrinder) {
{
TileIndustrialGrinder grinder = (TileIndustrialGrinder) tile; TileIndustrialGrinder grinder = (TileIndustrialGrinder) tile;
if (grinder.tank.getFluid() == null) if (grinder.tank.getFluid() == null) {
{
return false; return false;
} }
if (grinder.tank.getFluid() == fluidStack) if (grinder.tank.getFluid() == fluidStack) {
{ if (grinder.tank.getFluidAmount() >= fluidStack.amount) {
if (grinder.tank.getFluidAmount() >= fluidStack.amount) if (grinder.tank.getFluidAmount() > 0) {
{
if (grinder.tank.getFluidAmount() > 0)
{
grinder.tank.setFluid(new FluidStack(fluidStack.getFluid(), grinder.tank.setFluid(new FluidStack(fluidStack.getFluid(),
grinder.tank.getFluidAmount() - fluidStack.amount)); grinder.tank.getFluidAmount() - fluidStack.amount));
} else } else {
{
grinder.tank.setFluid(null); grinder.tank.setFluid(null);
} }
return true; return true;

View file

@ -3,20 +3,18 @@ package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
import techreborn.tiles.TileIndustrialSawmill; import techreborn.tiles.TileIndustrialSawmill;
public class IndustrialSawmillRecipe extends BaseRecipe public class IndustrialSawmillRecipe extends BaseRecipe {
{
public FluidStack fluidStack; public FluidStack fluidStack;
public boolean canUseOreDict = false; public boolean canUseOreDict = false;
public IndustrialSawmillRecipe(ItemStack input1, ItemStack input2, FluidStack fluidStack, ItemStack output1, public IndustrialSawmillRecipe(ItemStack input1, ItemStack input2, FluidStack fluidStack, ItemStack output1,
ItemStack output2, ItemStack output3, int tickTime, int euPerTick) ItemStack output2, ItemStack output3, int tickTime, int euPerTick) {
{
super(Reference.industrialSawmillRecipe, tickTime, euPerTick); super(Reference.industrialSawmillRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -32,8 +30,7 @@ public class IndustrialSawmillRecipe extends BaseRecipe
} }
public IndustrialSawmillRecipe(ItemStack input1, ItemStack input2, FluidStack fluidStack, ItemStack output1, public IndustrialSawmillRecipe(ItemStack input1, ItemStack input2, FluidStack fluidStack, ItemStack output1,
ItemStack output2, ItemStack output3, int tickTime, int euPerTick, boolean canUseOreDict) ItemStack output2, ItemStack output3, int tickTime, int euPerTick, boolean canUseOreDict) {
{
super(Reference.industrialSawmillRecipe, tickTime, euPerTick); super(Reference.industrialSawmillRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -50,29 +47,22 @@ public class IndustrialSawmillRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Industrial Sawmill"; return "Industrial Sawmill";
} }
@Override @Override
public boolean canCraft(TileEntity tile) public boolean canCraft(TileEntity tile) {
{ if (fluidStack == null) {
if (fluidStack == null)
{
return true; return true;
} }
if (tile instanceof TileIndustrialSawmill) if (tile instanceof TileIndustrialSawmill) {
{
TileIndustrialSawmill sawmill = (TileIndustrialSawmill) tile; TileIndustrialSawmill sawmill = (TileIndustrialSawmill) tile;
if (sawmill.tank.getFluid() == null) if (sawmill.tank.getFluid() == null) {
{
return false; return false;
} }
if (sawmill.tank.getFluid() == fluidStack) if (sawmill.tank.getFluid() == fluidStack) {
{ if (sawmill.tank.getFluidAmount() >= fluidStack.amount) {
if (sawmill.tank.getFluidAmount() >= fluidStack.amount)
{
return true; return true;
} }
} }
@ -81,29 +71,21 @@ public class IndustrialSawmillRecipe extends BaseRecipe
} }
@Override @Override
public boolean onCraft(TileEntity tile) public boolean onCraft(TileEntity tile) {
{ if (fluidStack == null) {
if (fluidStack == null)
{
return true; return true;
} }
if (tile instanceof TileIndustrialSawmill) if (tile instanceof TileIndustrialSawmill) {
{
TileIndustrialSawmill sawmill = (TileIndustrialSawmill) tile; TileIndustrialSawmill sawmill = (TileIndustrialSawmill) tile;
if (sawmill.tank.getFluid() == null) if (sawmill.tank.getFluid() == null) {
{
return false; return false;
} }
if (sawmill.tank.getFluid() == fluidStack) if (sawmill.tank.getFluid() == fluidStack) {
{ if (sawmill.tank.getFluidAmount() >= fluidStack.amount) {
if (sawmill.tank.getFluidAmount() >= fluidStack.amount) if (sawmill.tank.getFluidAmount() > 0) {
{
if (sawmill.tank.getFluidAmount() > 0)
{
sawmill.tank.setFluid(new FluidStack(fluidStack.getFluid(), sawmill.tank.setFluid(new FluidStack(fluidStack.getFluid(),
sawmill.tank.getFluidAmount() - fluidStack.amount)); sawmill.tank.getFluidAmount() - fluidStack.amount));
} else } else {
{
sawmill.tank.setFluid(null); sawmill.tank.setFluid(null);
} }
return true; return true;
@ -114,8 +96,7 @@ public class IndustrialSawmillRecipe extends BaseRecipe
} }
@Override @Override
public boolean useOreDic() public boolean useOreDic() {
{
return canUseOreDict; return canUseOreDict;
} }
} }

View file

@ -1,14 +1,12 @@
package techreborn.api.recipe.machines; package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
public class PlateCuttingMachineRecipe extends BaseRecipe public class PlateCuttingMachineRecipe extends BaseRecipe {
{
public PlateCuttingMachineRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) public PlateCuttingMachineRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) {
{
super(Reference.plateCuttingMachineRecipe, tickTime, euPerTick); super(Reference.plateCuttingMachineRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
inputs.add(input1); inputs.add(input1);
@ -17,8 +15,7 @@ public class PlateCuttingMachineRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Plate Cutting Machine"; return "Plate Cutting Machine";
} }
} }

View file

@ -2,15 +2,13 @@ package techreborn.api.recipe.machines;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import techreborn.api.Reference;
import techreborn.api.recipe.BaseRecipe; import techreborn.api.recipe.BaseRecipe;
import techreborn.lib.Reference;
import techreborn.tiles.TileVacuumFreezer; import techreborn.tiles.TileVacuumFreezer;
public class VacuumFreezerRecipe extends BaseRecipe public class VacuumFreezerRecipe extends BaseRecipe {
{
public VacuumFreezerRecipe(ItemStack input, ItemStack output, int tickTime, int euPerTick) public VacuumFreezerRecipe(ItemStack input, ItemStack output, int tickTime, int euPerTick) {
{
super(Reference.vacuumFreezerRecipe, tickTime, euPerTick); super(Reference.vacuumFreezerRecipe, tickTime, euPerTick);
if (input != null) if (input != null)
inputs.add(input); inputs.add(input);
@ -19,18 +17,14 @@ public class VacuumFreezerRecipe extends BaseRecipe
} }
@Override @Override
public String getUserFreindlyName() public String getUserFreindlyName() {
{
return "Vacuum Freezer"; return "Vacuum Freezer";
} }
@Override @Override
public boolean canCraft(TileEntity tile) public boolean canCraft(TileEntity tile) {
{ if (tile instanceof TileVacuumFreezer) {
if (tile instanceof TileVacuumFreezer) if (((TileVacuumFreezer) tile).multiBlockStatus == 1) {
{
if (((TileVacuumFreezer) tile).multiBlockStatus == 1)
{
return true; return true;
} }
} }

View file

@ -1,7 +1,6 @@
package techreborn.api.recipe.recipeConfig; package techreborn.api.recipe.recipeConfig;
public class ConfigItem public class ConfigItem {
{
String localName; String localName;
@ -11,43 +10,35 @@ public class ConfigItem
int stackSize; int stackSize;
public String getItemName() public String getItemName() {
{
return itemName; return itemName;
} }
public void setItemName(String itemName) public void setItemName(String itemName) {
{
this.itemName = itemName; this.itemName = itemName;
} }
public int getMeta() public int getMeta() {
{
return meta; return meta;
} }
public void setMeta(int meta) public void setMeta(int meta) {
{
this.meta = meta; this.meta = meta;
} }
public int getStackSize() public int getStackSize() {
{
return stackSize; return stackSize;
} }
public void setStackSize(int stackSize) public void setStackSize(int stackSize) {
{
this.stackSize = stackSize; this.stackSize = stackSize;
} }
public String getLocalName() public String getLocalName() {
{
return localName; return localName;
} }
public void setLocalName(String localName) public void setLocalName(String localName) {
{
this.localName = localName; this.localName = localName;
} }
} }

View file

@ -2,8 +2,7 @@ package techreborn.api.recipe.recipeConfig;
import java.util.ArrayList; import java.util.ArrayList;
public class RecipeConfig public class RecipeConfig {
{
ArrayList<ConfigItem> inputs; ArrayList<ConfigItem> inputs;
@ -13,59 +12,47 @@ public class RecipeConfig
String machine; String machine;
public ArrayList<ConfigItem> getInputs() public ArrayList<ConfigItem> getInputs() {
{
return inputs; return inputs;
} }
public void setInputs(ArrayList<ConfigItem> inputs) public void setInputs(ArrayList<ConfigItem> inputs) {
{
this.inputs = inputs; this.inputs = inputs;
} }
public ArrayList<ConfigItem> getOutputs() public ArrayList<ConfigItem> getOutputs() {
{
return outputs; return outputs;
} }
public void setOutputs(ArrayList<ConfigItem> outputs) public void setOutputs(ArrayList<ConfigItem> outputs) {
{
this.outputs = outputs; this.outputs = outputs;
} }
public Boolean getEnabled() public Boolean getEnabled() {
{
return enabled; return enabled;
} }
public void setEnabled(Boolean enabled) public void setEnabled(Boolean enabled) {
{
this.enabled = enabled; this.enabled = enabled;
} }
public String getMachine() public String getMachine() {
{
return machine; return machine;
} }
public void setMachine(String machine) public void setMachine(String machine) {
{
this.machine = machine; this.machine = machine;
} }
public void addInputs(ConfigItem item) public void addInputs(ConfigItem item) {
{ if (inputs == null) {
if (inputs == null)
{
inputs = new ArrayList<ConfigItem>(); inputs = new ArrayList<ConfigItem>();
} }
inputs.add(item); inputs.add(item);
} }
public void addOutputs(ConfigItem item) public void addOutputs(ConfigItem item) {
{ if (outputs == null) {
if (outputs == null)
{
outputs = new ArrayList<ConfigItem>(); outputs = new ArrayList<ConfigItem>();
} }
outputs.add(item); outputs.add(item);

View file

@ -1,59 +1,48 @@
package techreborn.api.recipe.recipeConfig; package techreborn.api.recipe.recipeConfig;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import net.minecraft.item.ItemStack;
import techreborn.api.recipe.IBaseRecipeType;
import java.io.File; import java.io.File;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import net.minecraft.item.ItemStack; public class RecipeConfigManager {
import techreborn.api.recipe.IBaseRecipeType;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
public class RecipeConfigManager
{
public static ArrayList<RecipeConfig> configs = new ArrayList<RecipeConfig>(); public static ArrayList<RecipeConfig> configs = new ArrayList<RecipeConfig>();
static File configFile = null; static File configFile = null;
public static void load(File configDir) public static void load(File configDir) {
{ if (configFile == null) {
if (configFile == null)
{
configFile = new File(configDir, "techRebornRecipes.json"); configFile = new File(configDir, "techRebornRecipes.json");
} }
} }
public static void save() public static void save() {
{ if (configFile.exists()) {
if (configFile.exists())
{
configFile.delete(); configFile.delete();
} }
Gson gson = new GsonBuilder().setPrettyPrinting().create(); Gson gson = new GsonBuilder().setPrettyPrinting().create();
String json = gson.toJson(configs); String json = gson.toJson(configs);
try try {
{
FileWriter writer = new FileWriter(configFile); FileWriter writer = new FileWriter(configFile);
writer.write(json); writer.write(json);
writer.close(); writer.close();
} catch (IOException e) } catch (IOException e) {
{
e.printStackTrace(); e.printStackTrace();
} }
} }
public static boolean canLoadRecipe(IBaseRecipeType recipeType) public static boolean canLoadRecipe(IBaseRecipeType recipeType) {
{
RecipeConfig config = new RecipeConfig(); RecipeConfig config = new RecipeConfig();
for (ItemStack stack : recipeType.getInputs()) for (ItemStack stack : recipeType.getInputs()) {
{
config.addInputs(itemToConfig(stack)); config.addInputs(itemToConfig(stack));
} }
for (ItemStack stack : recipeType.getOutputs()) for (ItemStack stack : recipeType.getOutputs()) {
{
config.addOutputs(itemToConfig(stack)); config.addOutputs(itemToConfig(stack));
} }
config.enabled = true; config.enabled = true;
@ -62,8 +51,7 @@ public class RecipeConfigManager
return config.enabled; return config.enabled;
} }
public static ConfigItem itemToConfig(ItemStack stack) public static ConfigItem itemToConfig(ItemStack stack) {
{
ConfigItem newItem = new ConfigItem(); ConfigItem newItem = new ConfigItem();
newItem.setItemName(stack.getItem().getUnlocalizedName()); newItem.setItemName(stack.getItem().getUnlocalizedName());
newItem.setMeta(stack.getItemDamage()); newItem.setMeta(stack.getItemDamage());

View file

@ -1,10 +1,9 @@
package techreborn.api.upgrade; package techreborn.api.upgrade;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
public interface IMachineUpgrade public interface IMachineUpgrade {
{
public void processUpgrade(RecipeCrafter crafter, ItemStack stack); public void processUpgrade(RecipeCrafter crafter, ItemStack stack);
} }

View file

@ -1,13 +1,12 @@
package techreborn.api.upgrade; package techreborn.api.upgrade;
import java.util.ArrayList;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
public class UpgradeHandler import java.util.ArrayList;
{
public class UpgradeHandler {
RecipeCrafter crafter; RecipeCrafter crafter;
@ -15,27 +14,22 @@ public class UpgradeHandler
ArrayList<Integer> slots = new ArrayList<Integer>(); ArrayList<Integer> slots = new ArrayList<Integer>();
public UpgradeHandler(RecipeCrafter crafter, Inventory inventory, int... slots) public UpgradeHandler(RecipeCrafter crafter, Inventory inventory, int... slots) {
{
this.crafter = crafter; this.crafter = crafter;
this.inventory = inventory; this.inventory = inventory;
for (int slot : slots) for (int slot : slots) {
{
this.slots.add(slot); this.slots.add(slot);
} }
} }
public void tick() public void tick() {
{
if (crafter.parentTile.getWorld().isRemote) if (crafter.parentTile.getWorld().isRemote)
return; return;
crafter.resetPowerMulti(); crafter.resetPowerMulti();
crafter.resetSpeedMulti(); crafter.resetSpeedMulti();
for (int slot : this.slots) for (int slot : this.slots) {
{
ItemStack stack = inventory.getStackInSlot(slot); ItemStack stack = inventory.getStackInSlot(slot);
if (stack != null && stack.getItem() instanceof IMachineUpgrade) if (stack != null && stack.getItem() instanceof IMachineUpgrade) {
{
((IMachineUpgrade) stack.getItem()).processUpgrade(crafter, stack); ((IMachineUpgrade) stack.getItem()).processUpgrade(crafter, stack);
} }
} }

View file

@ -59,7 +59,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
return new ItemStack(ModBlocks.ore, count, i); return new ItemStack(ModBlocks.ore, count, i);
} }
} }
throw new InvalidParameterException("The ore block " + name + " could not be found."); return BlockOre2.getOreByName(name, count);
} }
public static ItemStack getOreByName(String name) public static ItemStack getOreByName(String name)

View file

@ -3,7 +3,7 @@ package techreborn.client.container;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot; import net.minecraft.inventory.Slot;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.TileAlloySmelter; import techreborn.tiles.TileAlloySmelter;
public class ContainerAlloySmelter extends ContainerCrafting public class ContainerAlloySmelter extends ContainerCrafting

View file

@ -3,7 +3,7 @@ package techreborn.client.container;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot; import net.minecraft.inventory.Slot;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.TileAssemblingMachine; import techreborn.tiles.TileAssemblingMachine;
public class ContainerAssemblingMachine extends ContainerCrafting public class ContainerAssemblingMachine extends ContainerCrafting

View file

@ -3,7 +3,7 @@ package techreborn.client.container;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot; import net.minecraft.inventory.Slot;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.TileCentrifuge; import techreborn.tiles.TileCentrifuge;
public class ContainerCentrifuge extends ContainerCrafting public class ContainerCentrifuge extends ContainerCrafting

View file

@ -3,7 +3,7 @@ package techreborn.client.container;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot; import net.minecraft.inventory.Slot;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.TileChemicalReactor; import techreborn.tiles.TileChemicalReactor;
public class ContainerChemicalReactor extends ContainerCrafting public class ContainerChemicalReactor extends ContainerCrafting

View file

@ -3,7 +3,7 @@ package techreborn.client.container;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot; import net.minecraft.inventory.Slot;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.teir1.TileCompressor; import techreborn.tiles.teir1.TileCompressor;
public class ContainerCompressor extends ContainerCrafting public class ContainerCompressor extends ContainerCrafting

View file

@ -4,7 +4,7 @@ import net.minecraft.inventory.ICrafting;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.container.RebornContainer; import reborncore.common.container.RebornContainer;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
public abstract class ContainerCrafting extends RebornContainer public abstract class ContainerCrafting extends RebornContainer
{ {

View file

@ -6,7 +6,7 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import reborncore.common.container.RebornContainer; import reborncore.common.container.RebornContainer;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.teir1.TileElectricFurnace; import techreborn.tiles.teir1.TileElectricFurnace;
public class ContainerElectricFurnace extends RebornContainer public class ContainerElectricFurnace extends RebornContainer

View file

@ -3,7 +3,7 @@ package techreborn.client.container;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot; import net.minecraft.inventory.Slot;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.teir1.TileExtractor; import techreborn.tiles.teir1.TileExtractor;
public class ContainerExtractor extends ContainerCrafting public class ContainerExtractor extends ContainerCrafting

View file

@ -3,7 +3,7 @@ package techreborn.client.container;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot; import net.minecraft.inventory.Slot;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.teir1.TileGrinder; import techreborn.tiles.teir1.TileGrinder;
public class ContainerGrinder extends ContainerCrafting public class ContainerGrinder extends ContainerCrafting

View file

@ -6,7 +6,7 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import reborncore.common.container.RebornContainer; import reborncore.common.container.RebornContainer;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.teir1.TileRecycler; import techreborn.tiles.teir1.TileRecycler;
public class ContainerRecycler extends RebornContainer public class ContainerRecycler extends RebornContainer

View file

@ -6,7 +6,7 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.client.gui.SlotOutput; import reborncore.client.gui.SlotOutput;
import reborncore.common.container.RebornContainer; import reborncore.common.container.RebornContainer;
import techreborn.api.SlotUpgrade; import techreborn.api.gui.SlotUpgrade;
import techreborn.tiles.TileScrapboxinator; import techreborn.tiles.TileScrapboxinator;
public class ContainerScrapboxinator extends RebornContainer public class ContainerScrapboxinator extends RebornContainer

View file

@ -19,8 +19,7 @@ import techreborn.items.armor.ItemLapotronPack;
import techreborn.items.armor.ItemLithiumBatpack; import techreborn.items.armor.ItemLithiumBatpack;
import techreborn.items.armor.ItemTRArmour; import techreborn.items.armor.ItemTRArmour;
import techreborn.items.tools.*; import techreborn.items.tools.*;
import techreborn.lib.Reference; import techreborn.api.Reference;
import techreborn.parts.ItemStandaloneCables;
public class ModItems public class ModItems
{ {

View file

@ -0,0 +1,157 @@
package techreborn.init;
import net.minecraft.item.ItemStack;
import techreborn.api.ISubItemRetriever;
import techreborn.blocks.BlockOre;
import techreborn.blocks.BlockStorage;
import techreborn.items.ItemCells;
import techreborn.items.ItemCrushedOre;
import techreborn.items.ItemDusts;
import techreborn.items.ItemDustsSmall;
import techreborn.items.ItemGems;
import techreborn.items.ItemIngots;
import techreborn.items.ItemNuggets;
import techreborn.items.ItemParts;
import techreborn.items.ItemPlates;
import techreborn.items.ItemPurifiedCrushedOre;
import techreborn.items.ItemUpgrades;
/**
* Created by Mark on 03/04/2016.
*/
public class SubItemRetriever implements ISubItemRetriever {
@Override
public ItemStack getCellByName(String name) {
return ItemCells.getCellByName(name);
}
@Override
public ItemStack getCellByName(String name, int count) {
return ItemCells.getCellByName(name, count);
}
@Override
public ItemStack getCellByName(String name, int count, boolean lookForIC2) {
return ItemCells.getCellByName(name, count, lookForIC2);
}
@Override
public ItemStack getCrushedOreByName(String name) {
return ItemCrushedOre.getCrushedOreByName(name);
}
@Override
public ItemStack getCrushedOreByName(String name, int count) {
return ItemCrushedOre.getCrushedOreByName(name, count);
}
@Override
public ItemStack getDustByName(String name) {
return ItemDusts.getDustByName(name);
}
@Override
public ItemStack getDustByName(String name, int count) {
return ItemDusts.getDustByName(name, count);
}
@Override
public ItemStack getSmallDustByName(String name) {
return ItemDustsSmall.getSmallDustByName(name);
}
@Override
public ItemStack getSmallDustByName(String name, int count) {
return ItemDustsSmall.getSmallDustByName(name, count);
}
@Override
public ItemStack getGemByName(String name) {
return ItemGems.getGemByName(name);
}
@Override
public ItemStack getGemByName(String name, int count) {
return ItemGems.getGemByName(name, count);
}
@Override
public ItemStack getIngotByName(String name) {
return ItemIngots.getIngotByName(name);
}
@Override
public ItemStack getIngotByName(String name, int count) {
return ItemIngots.getIngotByName(name, count);
}
@Override
public ItemStack getNuggetByName(String name) {
return ItemNuggets.getNuggetByName(name);
}
@Override
public ItemStack getNuggetByName(String name, int count) {
return ItemNuggets.getNuggetByName(name, count);
}
@Override
public ItemStack getPartByName(String name) {
return ItemParts.getPartByName(name);
}
@Override
public ItemStack getPartByName(String name, int count) {
return ItemParts.getPartByName(name, count);
}
@Override
public ItemStack getPlateByName(String name) {
return ItemPlates.getPlateByName(name);
}
@Override
public ItemStack getPlateByName(String name, int count) {
return ItemPlates.getPlateByName(name, count);
}
@Override
public ItemStack getPurifiedCrushedOreByName(String name) {
return ItemPurifiedCrushedOre.getPurifiedCrushedOreByName(name);
}
@Override
public ItemStack getPurifiedCrushedOreByName(String name, int count) {
return ItemPurifiedCrushedOre.getPurifiedCrushedOreByName(name, count);
}
@Override
public ItemStack getUpgradeByName(String name) {
return ItemUpgrades.getUpgradeByName(name);
}
@Override
public ItemStack getUpgradeByName(String name, int count) {
return ItemUpgrades.getUpgradeByName(name, count);
}
@Override
public ItemStack getOreByName(String name) {
return BlockOre.getOreByName(name);
}
@Override
public ItemStack getOreByName(String name, int count) {
return BlockOre.getOreByName(name, count);
}
@Override
public ItemStack getStorageBlockByName(String name) {
return BlockStorage.getStorageBlockByName(name);
}
@Override
public ItemStack getStorageBlockByName(String name, int count) {
return BlockStorage.getStorageBlockByName(name, count);
}
}

View file

@ -4,13 +4,12 @@ import java.security.InvalidParameterException;
import java.util.List; import java.util.List;
import me.modmuss50.jsonDestroyer.api.ITexturedItem; import me.modmuss50.jsonDestroyer.api.ITexturedItem;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.text.TextFormatting; import net.minecraft.util.text.TextFormatting;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.api.upgrade.IMachineUpgrade; import techreborn.api.upgrade.IMachineUpgrade;
import techreborn.client.TechRebornCreativeTabMisc; import techreborn.client.TechRebornCreativeTabMisc;
import techreborn.init.ModItems; import techreborn.init.ModItems;

View file

@ -1,43 +0,0 @@
package techreborn.lib;
import net.minecraft.item.Item.ToolMaterial;
import net.minecraft.item.ItemArmor.ArmorMaterial;
import net.minecraft.util.text.translation.I18n;
import net.minecraftforge.common.util.EnumHelper;
public class Reference {
public static ToolMaterial BRONZE = EnumHelper.addToolMaterial("BRONZE", 2, 375, 6.0F, 2.25F, 8);
public static ArmorMaterial BRONZE_ARMOUR = EnumHelper.addArmorMaterial("BRONZE", ModInfo.MOD_ID + ":bronze", 17,
new int[] { 3, 6, 5, 2 }, 8, null/* TODO: SoundEvent */);
public static ToolMaterial RUBY = EnumHelper.addToolMaterial("RUBY", 2, 320, 6.2F, 2.7F, 10);
public static ArmorMaterial RUBY_ARMOUR = EnumHelper.addArmorMaterial("RUBY", ModInfo.MOD_ID + ":ruby", 16,
new int[] { 2, 7, 5, 2 }, 10, null/* TODO: SoundEvent */);
public static ToolMaterial SAPPHIRE = EnumHelper.addToolMaterial("SAPPHIRE", 2, 620, 5.0F, 2F, 8);
public static ArmorMaterial SAPPHIRE_ARMOUR = EnumHelper.addArmorMaterial("SAPPHIRE", ModInfo.MOD_ID + ":sapphire",
19, new int[] { 4, 4, 4, 4 }, 8, null/* TODO: SoundEvent */);
public static ToolMaterial PERIDOT = EnumHelper.addToolMaterial("PERIDOT", 2, 400, 7.0F, 2.4F, 16);
public static ArmorMaterial PERIDOT_ARMOUR = EnumHelper.addArmorMaterial("PERIDOT", ModInfo.MOD_ID + ":peridot", 17,
new int[] { 3, 8, 3, 2 }, 16, null/* TODO: SoundEvent */);
public static String alloySmelteRecipe = I18n.translateToLocal("techreborn.recipe.alloysmelter");
public static String assemblingMachineRecipe = I18n.translateToLocal("techreborn.recipe.assemblingmachine");
public static String blastFurnaceRecipe = I18n.translateToLocal("techreborn.recipe.blastfurnace");
public static String centrifugeRecipe = I18n.translateToLocal("techreborn.recipe.centrifuge");
public static String chemicalReactorRecipe = I18n.translateToLocal("techreborn.recipe.chemicalReactor");
public static String industrialGrinderRecipe = I18n.translateToLocal("techreborn.recipe.grinder");
public static String implosionCompressorRecipe = I18n.translateToLocal("techreborn.recipe.implosioncompressor");
public static String industrialElectrolyzerRecipe = I18n
.translateToLocal("techreborn.recipe.industrialelectrolyzer");
public static String industrialSawmillRecipe = I18n.translateToLocal("techreborn.recipe.industrialsawmill");
public static String latheRecipe = I18n.translateToLocal("techreborn.recipe.lathe");
public static String plateCuttingMachineRecipe = I18n.translateToLocal("techreborn.recipe.platecuttingmachine");
public static String vacuumFreezerRecipe = I18n.translateToLocal("tile.techreborn.vacuumfreezer.name");
public static String grinderRecipe = I18n.translateToLocal("tile.techreborn.grinder.name");
public static String extractorRecipe = I18n.translateToLocal("tile.techreborn.extractor.name");
public static String compressorRecipe = I18n.translateToLocal("tile.techreborn.compressor.name");
public static String recyclerRecipe = I18n.translateToLocal("tile.techreborn.recycler.name");
public static String scrapboxRecipe = I18n.translateToLocal("techreborn.recipe.scrapbox");
}

View file

@ -21,7 +21,7 @@ import reborncore.common.util.ItemUtils;
import techreborn.api.recipe.IBaseRecipeType; import techreborn.api.recipe.IBaseRecipeType;
import techreborn.api.recipe.RecipeHandler; import techreborn.api.recipe.RecipeHandler;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileAlloyFurnace extends TileMachineBase implements IWrenchable, IInventory public class TileAlloyFurnace extends TileMachineBase implements IWrenchable, IInventory

View file

@ -10,10 +10,10 @@ import net.minecraft.util.text.ITextComponent;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.api.upgrade.UpgradeHandler; import techreborn.api.upgrade.UpgradeHandler;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileAlloySmelter extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory public class TileAlloySmelter extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory

View file

@ -10,9 +10,9 @@ import net.minecraft.util.text.ITextComponent;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileAssemblingMachine extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory public class TileAssemblingMachine extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory

View file

@ -17,11 +17,11 @@ import reborncore.common.misc.Location;
import reborncore.common.multiblock.IMultiblockPart; import reborncore.common.multiblock.IMultiblockPart;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.blocks.BlockMachineCasing; import techreborn.blocks.BlockMachineCasing;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import techreborn.multiblocks.MultiBlockCasing; import techreborn.multiblocks.MultiBlockCasing;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;

View file

@ -13,10 +13,10 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PoweredItem; import reborncore.common.powerSystem.PoweredItem;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import java.util.List; import java.util.List;

View file

@ -10,9 +10,9 @@ import net.minecraft.util.text.ITextComponent;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileChemicalReactor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory public class TileChemicalReactor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory

View file

@ -13,10 +13,10 @@ import reborncore.api.power.EnumPowerTier;
import reborncore.common.misc.Location; import reborncore.common.misc.Location;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.blocks.BlockMachineCasing; import techreborn.blocks.BlockMachineCasing;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileImplosionCompressor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory public class TileImplosionCompressor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory

View file

@ -10,9 +10,9 @@ import net.minecraft.util.text.ITextComponent;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileIndustrialElectrolyzer extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory public class TileIndustrialElectrolyzer extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory

View file

@ -19,11 +19,11 @@ import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.FluidUtils; import reborncore.common.util.FluidUtils;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import reborncore.common.util.Tank; import reborncore.common.util.Tank;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.init.ModFluids; import techreborn.init.ModFluids;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileIndustrialGrinder extends TilePowerAcceptor public class TileIndustrialGrinder extends TilePowerAcceptor

View file

@ -21,11 +21,11 @@ import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.FluidUtils; import reborncore.common.util.FluidUtils;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import reborncore.common.util.Tank; import reborncore.common.util.Tank;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.blocks.BlockMachineCasing; import techreborn.blocks.BlockMachineCasing;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.init.ModFluids; import techreborn.init.ModFluids;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileIndustrialSawmill extends TilePowerAcceptor public class TileIndustrialSawmill extends TilePowerAcceptor

View file

@ -11,10 +11,10 @@ import net.minecraft.util.text.ITextComponent;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.blocks.BlockMachineCasing; import techreborn.blocks.BlockMachineCasing;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileVacuumFreezer extends TilePowerAcceptor implements IWrenchable, IInventory public class TileVacuumFreezer extends TilePowerAcceptor implements IWrenchable, IInventory

View file

@ -10,9 +10,9 @@ import net.minecraft.util.text.ITextComponent;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileCompressor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory public class TileCompressor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory

View file

@ -10,9 +10,9 @@ import net.minecraft.util.text.ITextComponent;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
public class TileExtractor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory public class TileExtractor extends TilePowerAcceptor implements IWrenchable, IInventory, ISidedInventory

View file

@ -11,9 +11,9 @@ import reborncore.api.IListInfoProvider;
import reborncore.api.power.EnumPowerTier; import reborncore.api.power.EnumPowerTier;
import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import techreborn.api.recipe.RecipeCrafter; import techreborn.utils.RecipeCrafter;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.lib.Reference; import techreborn.api.Reference;
import ic2.api.tile.IWrenchable; import ic2.api.tile.IWrenchable;
import java.util.List; import java.util.List;

View file

@ -1,4 +1,4 @@
package techreborn.api.recipe; package techreborn.utils;
import java.util.ArrayList; import java.util.ArrayList;
@ -9,6 +9,8 @@ import reborncore.common.blocks.BlockMachineBase;
import reborncore.common.tile.TileMachineBase; import reborncore.common.tile.TileMachineBase;
import reborncore.common.util.Inventory; import reborncore.common.util.Inventory;
import reborncore.common.util.ItemUtils; import reborncore.common.util.ItemUtils;
import techreborn.api.recipe.IBaseRecipeType;
import techreborn.api.recipe.RecipeHandler;
/** /**
* Use this in your tile entity to craft things * Use this in your tile entity to craft things