CT is working except add recipes
This commit is contained in:
@@ -121,23 +121,26 @@ public class BloomeryBase extends CustomContainerFacing implements ITileEntityPr
|
||||
ItemStackHelper.loadAllItems(tag, dropList);
|
||||
CrucibleCrafting recipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4));
|
||||
if (recipe != null) {
|
||||
Integer minTemp = recipe.getCookTemp();
|
||||
Integer cookCounter = tile.getCookCounter();
|
||||
Integer idealTime = recipe.getCookTime();
|
||||
Integer remainingTime = idealTime - cookCounter;
|
||||
if(!recipe.isHidden()) {
|
||||
if (!recipe.isDisabled()) {
|
||||
Integer minTemp = recipe.getCookTemp();
|
||||
Integer cookCounter = tile.getCookCounter();
|
||||
Integer idealTime = recipe.getCookTime();
|
||||
Integer remainingTime = idealTime - cookCounter;
|
||||
|
||||
String display1 =
|
||||
"Cooking: " + tileItem1.getDisplayName() +
|
||||
" Target Temp: " + minTemp.toString() +
|
||||
" Time Left: " + remainingTime.toString();
|
||||
String display2 = tileItem1.getDisplayName() + "finished.";
|
||||
ITextComponent itextcomponent1 = null;
|
||||
if (tileItem1.getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
itextcomponent1 = new TextComponentString(display2);
|
||||
} else itextcomponent1 = new TextComponentString(display1);
|
||||
|
||||
player.sendStatusMessage(itextcomponent1, false);
|
||||
String display1 =
|
||||
"Cooking: " + tileItem1.getDisplayName() +
|
||||
" Target Temp: " + minTemp.toString() +
|
||||
" Time Left: " + remainingTime.toString();
|
||||
String display2 = tileItem1.getDisplayName() + "finished.";
|
||||
ITextComponent itextcomponent1 = null;
|
||||
if (tileItem1.getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
itextcomponent1 = new TextComponentString(display2);
|
||||
} else itextcomponent1 = new TextComponentString(display1);
|
||||
|
||||
player.sendStatusMessage(itextcomponent1, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
package nmd.primal.forgecraft.compat.CT;
|
||||
package nmd.primal.forgecraft.compat.ct;
|
||||
|
||||
|
||||
import crafttweaker.CraftTweakerAPI;
|
||||
import crafttweaker.IAction;
|
||||
import crafttweaker.annotations.ModOnly;
|
||||
import crafttweaker.annotations.ZenRegister;
|
||||
import crafttweaker.api.item.IIngredient;
|
||||
import crafttweaker.api.item.IItemStack;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.Ingredient;
|
||||
import nmd.primal.core.common.PrimalCore;
|
||||
@@ -15,9 +13,7 @@ import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||
import stanhebben.zenscript.annotations.ZenClass;
|
||||
import stanhebben.zenscript.annotations.ZenMethod;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ZenClass("mods.primal.NBTCrucible")
|
||||
@ZenClass("mods.forgecraft.NBTCrucible")
|
||||
@ModOnly(ModInfo.MOD_ID)
|
||||
@ZenRegister
|
||||
public class CTCrucible {
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI;
|
||||
package nmd.primal.forgecraft.compat.jei;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import mezz.jei.api.gui.IDrawable;
|
||||
@@ -1,22 +1,22 @@
|
||||
package nmd.primal.forgecraft.compat.JEI;
|
||||
package nmd.primal.forgecraft.compat.jei;
|
||||
|
||||
import mezz.jei.api.*;
|
||||
import mezz.jei.api.gui.ICraftingGridHelper;
|
||||
import mezz.jei.api.recipe.IRecipeCategoryRegistration;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
import nmd.primal.forgecraft.compat.JEI.anvil.AnvilRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.JEI.anvil.AnvilRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.JEI.anvil.AnvilRecipeHandler;
|
||||
import nmd.primal.forgecraft.compat.JEI.casting.CastingRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.JEI.casting.CastingRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.JEI.casting.CastingRecipeHandler;
|
||||
import nmd.primal.forgecraft.compat.JEI.crucible.CrucibleRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.JEI.crucible.CrucibleRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.JEI.crucible.CrucibleRecipeHandler;
|
||||
import nmd.primal.forgecraft.compat.JEI.forge.ForgeRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.JEI.forge.ForgeRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.JEI.forge.ForgeRecipeHandler;
|
||||
import nmd.primal.forgecraft.compat.jei.anvil.AnvilRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.anvil.AnvilRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.jei.anvil.AnvilRecipeHandler;
|
||||
import nmd.primal.forgecraft.compat.jei.casting.CastingRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.casting.CastingRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.jei.casting.CastingRecipeHandler;
|
||||
import nmd.primal.forgecraft.compat.jei.crucible.CrucibleRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.crucible.CrucibleRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.jei.crucible.CrucibleRecipeHandler;
|
||||
import nmd.primal.forgecraft.compat.jei.forge.ForgeRecipeCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.forge.ForgeRecipeChecker;
|
||||
import nmd.primal.forgecraft.compat.jei.forge.ForgeRecipeHandler;
|
||||
import nmd.primal.forgecraft.crafting.AnvilCrafting;
|
||||
import nmd.primal.forgecraft.crafting.CastingCrafting;
|
||||
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.anvil;
|
||||
package nmd.primal.forgecraft.compat.jei.anvil;
|
||||
|
||||
import mezz.jei.api.IGuiHelper;
|
||||
import mezz.jei.api.gui.IDrawable;
|
||||
@@ -11,7 +11,7 @@ import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import nmd.primal.core.common.helper.CommonUtils;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
import nmd.primal.forgecraft.compat.JEI.AbstractCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.AbstractCategory;
|
||||
import nmd.primal.forgecraft.init.ModItems;
|
||||
import nmd.primal.forgecraft.items.parts.ToolPart;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.anvil;
|
||||
package nmd.primal.forgecraft.compat.jei.anvil;
|
||||
|
||||
import nmd.primal.forgecraft.crafting.AnvilCrafting;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.anvil;
|
||||
package nmd.primal.forgecraft.compat.jei.anvil;
|
||||
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
import mezz.jei.api.recipe.IRecipeWrapperFactory;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.anvil;
|
||||
package nmd.primal.forgecraft.compat.jei.anvil;
|
||||
|
||||
import mezz.jei.api.ingredients.IIngredients;
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.casting;
|
||||
package nmd.primal.forgecraft.compat.jei.casting;
|
||||
|
||||
import mezz.jei.api.IGuiHelper;
|
||||
import mezz.jei.api.gui.IDrawable;
|
||||
@@ -10,7 +10,7 @@ import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import nmd.primal.core.common.helper.CommonUtils;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
import nmd.primal.forgecraft.compat.JEI.AbstractCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.AbstractCategory;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.casting;
|
||||
package nmd.primal.forgecraft.compat.jei.casting;
|
||||
|
||||
import nmd.primal.forgecraft.crafting.CastingCrafting;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.casting;
|
||||
package nmd.primal.forgecraft.compat.jei.casting;
|
||||
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
import mezz.jei.api.recipe.IRecipeWrapperFactory;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.casting;
|
||||
package nmd.primal.forgecraft.compat.jei.casting;
|
||||
|
||||
import mezz.jei.api.ingredients.IIngredients;
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.crucible;
|
||||
package nmd.primal.forgecraft.compat.jei.crucible;
|
||||
|
||||
import mezz.jei.api.IGuiHelper;
|
||||
import mezz.jei.api.gui.IDrawable;
|
||||
@@ -11,7 +11,7 @@ import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import nmd.primal.core.common.helper.CommonUtils;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
import nmd.primal.forgecraft.compat.JEI.AbstractCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.AbstractCategory;
|
||||
import nmd.primal.forgecraft.init.ModBlocks;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.crucible;
|
||||
package nmd.primal.forgecraft.compat.jei.crucible;
|
||||
|
||||
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||
|
||||
@@ -12,8 +12,12 @@ public class CrucibleRecipeChecker {
|
||||
|
||||
public static List<CrucibleCrafting> getRecipes() {
|
||||
List<CrucibleCrafting> recipes = new ArrayList<>();
|
||||
for (CrucibleCrafting recipe : CrucibleCrafting.getCrucibleCrafting()) {
|
||||
recipes.add(recipe);
|
||||
for (CrucibleCrafting recipe : CrucibleCrafting.getRECIPES()) {
|
||||
if(!recipe.isDisabled()) {
|
||||
if(!recipe.isHidden()) {
|
||||
recipes.add(recipe);
|
||||
}
|
||||
}
|
||||
}
|
||||
return recipes;
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.crucible;
|
||||
package nmd.primal.forgecraft.compat.jei.crucible;
|
||||
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
import mezz.jei.api.recipe.IRecipeWrapperFactory;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.crucible;
|
||||
package nmd.primal.forgecraft.compat.jei.crucible;
|
||||
|
||||
import mezz.jei.api.ingredients.IIngredients;
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.forge;
|
||||
package nmd.primal.forgecraft.compat.jei.forge;
|
||||
|
||||
import mezz.jei.api.IGuiHelper;
|
||||
import mezz.jei.api.gui.IDrawable;
|
||||
@@ -12,7 +12,7 @@ import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import nmd.primal.core.common.helper.CommonUtils;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
import nmd.primal.forgecraft.compat.JEI.AbstractCategory;
|
||||
import nmd.primal.forgecraft.compat.jei.AbstractCategory;
|
||||
import nmd.primal.forgecraft.init.ModBlocks;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.forge;
|
||||
package nmd.primal.forgecraft.compat.jei.forge;
|
||||
|
||||
import nmd.primal.forgecraft.crafting.ForgeCrafting;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.forge;
|
||||
package nmd.primal.forgecraft.compat.jei.forge;
|
||||
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
import mezz.jei.api.recipe.IRecipeWrapperFactory;
|
||||
@@ -1,4 +1,4 @@
|
||||
package nmd.primal.forgecraft.compat.JEI.forge;
|
||||
package nmd.primal.forgecraft.compat.jei.forge;
|
||||
|
||||
import mezz.jei.api.ingredients.IIngredients;
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
@@ -22,13 +22,18 @@ public class CrucibleCrafting extends AbstractRecipe<CrucibleCrafting> { //exten
|
||||
|
||||
public static final String RECIPE_PREFIX = "crucible";
|
||||
public static final IForgeRegistry<CrucibleCrafting> REGISTRY = ModInfo.Registries.CRUCIBLE_CRAFTING;
|
||||
public static final Collection<CrucibleCrafting> RECIPES = REGISTRY.getValuesCollection();
|
||||
|
||||
public static ArrayList<CrucibleCrafting> getCrucibleCrafting() {
|
||||
return crucibleCrafting;
|
||||
public static Collection<CrucibleCrafting> getRECIPES() {
|
||||
return RECIPES;
|
||||
}
|
||||
|
||||
private static ArrayList<CrucibleCrafting> crucibleCrafting = new ArrayList<>();
|
||||
public static final Collection<CrucibleCrafting> RECIPES = REGISTRY.getValuesCollection();
|
||||
|
||||
//public static ArrayList<CrucibleCrafting> getCrucibleCrafting() {
|
||||
//return crucibleCrafting;
|
||||
//}
|
||||
|
||||
//private static ArrayList<CrucibleCrafting> crucibleCrafting = new ArrayList<>();
|
||||
|
||||
private int cookTemp;
|
||||
private int cookTime;
|
||||
@@ -114,15 +119,8 @@ public class CrucibleCrafting extends AbstractRecipe<CrucibleCrafting> { //exten
|
||||
this.coolTime = coolTime;
|
||||
}
|
||||
|
||||
public static void addRecipe(Ingredient i0, Ingredient i1, Ingredient i2, Ingredient i3, Ingredient i4,
|
||||
ItemStack outputRaw, ItemStack outputCooked,
|
||||
Integer temp, Integer cookTime, Integer coolTime)
|
||||
{
|
||||
crucibleCrafting.add(new CrucibleCrafting(i0, i1, i2, i3, i4, outputRaw, outputCooked, temp, cookTime, coolTime));
|
||||
}
|
||||
|
||||
public static boolean isRecipe(ItemStack i0, ItemStack i1, ItemStack i2, ItemStack i3, ItemStack i4){
|
||||
for(CrucibleCrafting recipe : crucibleCrafting){
|
||||
for(CrucibleCrafting recipe : RECIPES){
|
||||
if(recipe.ing0.apply(i0) && recipe.ing1.apply(i1) && recipe.ing2.apply(i2) && recipe.ing3.apply(i3) && recipe.ing4.apply(i4) ){
|
||||
return true;
|
||||
}
|
||||
@@ -131,7 +129,7 @@ public class CrucibleCrafting extends AbstractRecipe<CrucibleCrafting> { //exten
|
||||
}
|
||||
|
||||
public static CrucibleCrafting getRecipe(ItemStack i0, ItemStack i1, ItemStack i2, ItemStack i3, ItemStack i4){
|
||||
for(CrucibleCrafting recipe : crucibleCrafting){
|
||||
for(CrucibleCrafting recipe : RECIPES){
|
||||
if(recipe.ing0.test(i0) && recipe.ing1.test(i1) && recipe.ing2.test(i2) && recipe.ing3.test(i3) && recipe.ing4.test(i4) ){
|
||||
return recipe;
|
||||
}
|
||||
@@ -140,7 +138,7 @@ public class CrucibleCrafting extends AbstractRecipe<CrucibleCrafting> { //exten
|
||||
}
|
||||
|
||||
public static boolean isValidIngredient(ItemStack checkStack){
|
||||
for(CrucibleCrafting recipe : crucibleCrafting) {
|
||||
for(CrucibleCrafting recipe : RECIPES) {
|
||||
if (recipe.ing0.apply(checkStack) ||
|
||||
recipe.ing1.apply(checkStack) ||
|
||||
recipe.ing2.apply(checkStack) ||
|
||||
|
||||
@@ -78,30 +78,32 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
|
||||
ItemStackHelper.loadAllItems(tag, dropList);
|
||||
CrucibleCrafting recipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4));
|
||||
if (recipe != null) {
|
||||
if (this.getHeat() >= recipe.getCookTemp() &&
|
||||
!this.getSlotStack(1).getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
cookCounter++;
|
||||
//this.getSlotStack(1).getSubCompound("BlockEntityTag").setBoolean("hot", true);
|
||||
//System.out.println("Cooking");
|
||||
this.updateBlock();
|
||||
this.markDirty();
|
||||
}
|
||||
if (cookCounter >= (recipe.getCookTime()/4) && !this.getSlotStack(1).getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
this.getSlotStack(1).getSubCompound("BlockEntityTag").setInteger("hot", 15);
|
||||
//System.out.println("hot");
|
||||
this.updateBlock();
|
||||
this.markDirty();
|
||||
}
|
||||
if (cookCounter >= recipe.getCookTime() && !this.getSlotStack(1).getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
this.getSlotStack(1).getSubCompound("BlockEntityTag").setBoolean("status", true);
|
||||
this.getSlotStack(1).getSubCompound("BlockEntityTag").setInteger("heat", this.getHeat());
|
||||
cookCounter = 0;
|
||||
//System.out.println("Cooked");
|
||||
this.updateBlock();
|
||||
this.markDirty();
|
||||
}
|
||||
if (this.getSlotStack(1).isEmpty()) {
|
||||
this.cookCounter = 0;
|
||||
if(!recipe.isDisabled()) {
|
||||
if (this.getHeat() >= recipe.getCookTemp() &&
|
||||
!this.getSlotStack(1).getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
cookCounter++;
|
||||
//this.getSlotStack(1).getSubCompound("BlockEntityTag").setBoolean("hot", true);
|
||||
//System.out.println("Cooking");
|
||||
this.updateBlock();
|
||||
this.markDirty();
|
||||
}
|
||||
if (cookCounter >= (recipe.getCookTime() / 4) && !this.getSlotStack(1).getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
this.getSlotStack(1).getSubCompound("BlockEntityTag").setInteger("hot", 15);
|
||||
//System.out.println("hot");
|
||||
this.updateBlock();
|
||||
this.markDirty();
|
||||
}
|
||||
if (cookCounter >= recipe.getCookTime() && !this.getSlotStack(1).getSubCompound("BlockEntityTag").getBoolean("status")) {
|
||||
this.getSlotStack(1).getSubCompound("BlockEntityTag").setBoolean("status", true);
|
||||
this.getSlotStack(1).getSubCompound("BlockEntityTag").setInteger("heat", this.getHeat());
|
||||
cookCounter = 0;
|
||||
//System.out.println("Cooked");
|
||||
this.updateBlock();
|
||||
this.markDirty();
|
||||
}
|
||||
if (this.getSlotStack(1).isEmpty()) {
|
||||
this.cookCounter = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user