From 50787529e12663685e9d0657c2e136ff4ae9ff7f Mon Sep 17 00:00:00 2001 From: Jordan Byrne Date: Sun, 4 Feb 2018 23:55:17 +1000 Subject: $ Finished the Fishing Pond. $ Made the Fishing Pond cache reflection data from WeightedRandomFishable objects. $ Fixed the Fish Pond not outputting correct stack sizes. (They were all 0) --- src/Java/gregtech/api/util/FishPondFakeRecipe.java | 75 ++++++++++++++++++++++ src/Java/gregtech/api/util/Recipe_GT.java | 2 + 2 files changed, 77 insertions(+) create mode 100644 src/Java/gregtech/api/util/FishPondFakeRecipe.java (limited to 'src/Java/gregtech/api/util') diff --git a/src/Java/gregtech/api/util/FishPondFakeRecipe.java b/src/Java/gregtech/api/util/FishPondFakeRecipe.java new file mode 100644 index 0000000000..5aef1bcd8a --- /dev/null +++ b/src/Java/gregtech/api/util/FishPondFakeRecipe.java @@ -0,0 +1,75 @@ +package gregtech.api.util; + +import java.util.ArrayList; + +import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.core.recipe.common.CI; +import gtPlusPlus.core.util.array.AutoMap; +import gtPlusPlus.core.util.reflect.ReflectionUtils; +import net.minecraft.item.ItemStack; +import net.minecraft.util.WeightedRandomFishable; +import net.minecraftforge.common.FishingHooks; +import net.minecraftforge.fluids.FluidStack; + +public class FishPondFakeRecipe { + + public static ArrayList fish = new ArrayList(); + public static ArrayList junk = new ArrayList(); + public static ArrayList treasure = new ArrayList(); + + @SuppressWarnings("unchecked") + public static boolean generateFishPondRecipes() { + + try { + fish = (ArrayList) ReflectionUtils.getField(FishingHooks.class, "fish").get(null); + junk = (ArrayList) ReflectionUtils.getField(FishingHooks.class, "junk").get(null); + treasure = (ArrayList) ReflectionUtils.getField(FishingHooks.class, "treasure").get(null); + } + catch (IllegalArgumentException | IllegalAccessException | NoSuchFieldException e) { + Logger.INFO("Error generating Fish Pond Recipes. [1]"); + e.printStackTrace(); + } + + AutoMap> mega = new AutoMap>(); + mega.put(fish); + mega.put(junk); + mega.put(treasure); + + int mType = 14; + for (ArrayList f : mega.values()) { + for (int e=0;e(300), "gt.recipe.componentassembler", "Component Assembler", null, RES_PATH_GUI + "basicmachines/Assembler", 6, 1, 1, 0, 1, E, 1, E, true, true); + public static final GT_Recipe_Map sFishPondRecipes = new GT_Recipe_Map(new HashSet(3), "gt.recipe.fishpond", "Zhuhai - Fishing Port", null, RES_PATH_GUI + "basicmachines/PotionBrewer", 0, 1, 0, 0, 1, E, 1, E, true, true); + /** -- cgit