Skip to content

Commit

Permalink
1.12.2-2.4c: fix #84
Browse files Browse the repository at this point in the history
  • Loading branch information
WanionCane committed Mar 17, 2018
1 parent 616f424 commit 985e43f
Show file tree
Hide file tree
Showing 5 changed files with 32 additions and 5 deletions.
4 changes: 2 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ apply plugin: 'net.minecraftforge.gradle.forge'
//Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.


version = "1.12.2-2.4"
version = "1.12.2-2.4c"
group = "wanion.unidict" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "UniDict"

Expand All @@ -21,7 +21,7 @@ compileJava {
}

minecraft {
version = "1.12.2-14.23.1.2555"
version = "1.12.2-14.23.2.2611"
runDir = "run"

// the mappings can be changed at any time, and must be in the following format.
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/wanion/unidict/common/Reference.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public final class Reference
{
public static final String MOD_ID = "unidict";
public static final String MOD_NAME = "UniDict";
public static final String MOD_VERSION = "1.12.2-2.4";
public static final String MOD_VERSION = "1.12.2-2.4c";
public static final String DEPENDENCIES = "required-after:wanionlib@[1.12.2-1.5,);after:*";
public static final char SLASH = separatorChar;
public static final String MC_VERSION = "[1.12,]";
Expand Down
20 changes: 20 additions & 0 deletions src/main/java/wanion/unidict/recipe/ForgeRecipeResearcher.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import net.minecraft.item.crafting.Ingredient;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.oredict.OreIngredient;
import net.minecraftforge.oredict.ShapedOreRecipe;
import net.minecraftforge.oredict.ShapelessOreRecipe;
import wanion.lib.recipe.RecipeAttributes;
Expand All @@ -24,13 +25,28 @@
import wanion.unidict.resource.UniResourceContainer;

import javax.annotation.Nonnull;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class ForgeRecipeResearcher extends AbstractRecipeResearcher<ShapedOreRecipe, ShapelessOreRecipe>
{
private final Field oresField;

public ForgeRecipeResearcher()
{
Field dummyOresField = null;
try {
dummyOresField = OreIngredient.class.getDeclaredField("ores");
dummyOresField.setAccessible(true);
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
oresField = dummyOresField;
}

@Override
public int getShapedRecipeKey(@Nonnull final ShapedOreRecipe recipe)
{
Expand Down Expand Up @@ -88,6 +104,10 @@ public ShapedOreRecipe getNewShapedRecipe(@Nonnull final ShapedOreRecipe recipe)
final ItemStack itemStack = ingredient.getMatchingStacks()[0];
final UniResourceContainer container = resourceHandler.getContainer(itemStack);
newRecipeInputs[y * root + x] = container != null ? (itemStacksOnly ? container.getMainEntry(itemStack) : container.name) : itemStack;
} else if (ingredient instanceof OreIngredient) {
try {
newRecipeInputs[y * root + x] = uniOreDictionary.getName(oresField.get(ingredient));
} catch (IllegalAccessException e) { e.printStackTrace(); }
}
}
}
Expand Down
9 changes: 8 additions & 1 deletion src/main/java/wanion/unidict/recipe/IC2RecipeResearcher.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import ic2.core.recipe.AdvRecipe;
import ic2.core.recipe.AdvShapelessRecipe;
import ic2.core.recipe.RecipeInputOreDict;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.oredict.ShapedOreRecipe;
Expand All @@ -32,6 +33,8 @@

public class IC2RecipeResearcher extends AbstractRecipeResearcher<AdvRecipe, AdvShapelessRecipe>
{
private final Item ic2ForgeHammer = Item.REGISTRY.getObject(new ResourceLocation("ic2", "forge_hammer"));

@Override
public int getShapedRecipeKey(@Nonnull AdvRecipe recipe)
{
Expand Down Expand Up @@ -166,8 +169,12 @@ public ShapelessOreRecipe getNewShapelessRecipe(@Nonnull final AdvShapelessRecip
newInputs.add(oreName);
else if (notEmpty)
newInputs.add(recipeInput.getInputs().get(0));
} else
} else {
if (oreName.equals("craftingToolForgeHammer") && ic2ForgeHammer != null)
newInputs.add(new ItemStack(ic2ForgeHammer, 1, 32767));
else
newInputs.add(oreName);
}
}
}
final UniResourceContainer outputContainer = resourceHandler.getContainer(recipe.getRecipeOutput());
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/mcmod.info
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"modid": "unidict",
"name": "UniDict",
"description": "a mod about unifying all the things.",
"version": "1.12.2-2.4",
"version": "1.12.2-2.4c",
"mcversion": "${mcversion}",
"url": "http://minecraft.curseforge.com/projects/unidict",
"updateUrl": "",
Expand Down

0 comments on commit 985e43f

Please sign in to comment.