2016-01-08 09:12:31 -05:00
|
|
|
package WayofTime.bloodmagic.api.registry;
|
|
|
|
|
2016-03-17 13:00:44 -07:00
|
|
|
import WayofTime.bloodmagic.api.recipe.TartaricForgeRecipe;
|
2016-01-08 09:12:31 -05:00
|
|
|
import net.minecraft.item.ItemStack;
|
2016-03-17 13:00:44 -07:00
|
|
|
import net.minecraft.util.math.BlockPos;
|
2016-01-08 09:12:31 -05:00
|
|
|
import net.minecraft.world.World;
|
2016-03-17 13:00:44 -07:00
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
2016-01-08 09:12:31 -05:00
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public class TartaricForgeRecipeRegistry {
|
2016-01-09 10:47:36 -05:00
|
|
|
private static List<TartaricForgeRecipe> recipeList = new ArrayList<TartaricForgeRecipe>();
|
2016-01-08 09:12:31 -05:00
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static void registerRecipe(TartaricForgeRecipe recipe) {
|
2016-01-08 09:12:31 -05:00
|
|
|
recipeList.add(recipe);
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static void registerRecipe(ItemStack outputStack, double minimulSouls, double drain, Object... objects) {
|
2016-01-09 10:47:36 -05:00
|
|
|
registerRecipe(new TartaricForgeRecipe(outputStack, minimulSouls, drain, objects));
|
2016-01-08 09:12:31 -05:00
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static void removeRecipe(TartaricForgeRecipe recipe) {
|
2017-06-01 22:16:24 -07:00
|
|
|
recipeList.remove(recipe);
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static TartaricForgeRecipe getMatchingRecipe(List<ItemStack> itemList, World world, BlockPos pos) {
|
|
|
|
for (TartaricForgeRecipe recipe : recipeList) {
|
|
|
|
if (recipe.matches(itemList, world, pos)) {
|
2016-01-08 09:12:31 -05:00
|
|
|
return recipe;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
2016-02-18 09:49:12 -08:00
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static List<TartaricForgeRecipe> getRecipeList() {
|
2016-02-18 09:49:12 -08:00
|
|
|
return new ArrayList<TartaricForgeRecipe>(recipeList);
|
|
|
|
}
|
2016-01-08 09:12:31 -05:00
|
|
|
}
|