aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-10-23 16:39:30 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-10-23 16:39:30 +1000
commit6754387bca14ef3c2bdc5e69d0f4920ca7568553 (patch)
treeb6bd67e213a66bce0e418105b8a7ac51a141b6a0 /src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java
parent3826cbb1223a25a6d476486d9369d65a22090aec (diff)
downloadGT5-Unofficial-6754387bca14ef3c2bdc5e69d0f4920ca7568553.tar.gz
GT5-Unofficial-6754387bca14ef3c2bdc5e69d0f4920ca7568553.tar.bz2
GT5-Unofficial-6754387bca14ef3c2bdc5e69d0f4920ca7568553.zip
% Moved more recipe generation to separate classes, now the order of item generation isn't important because recipe generation now happens after, not during item creation.
% Most Generated Item classes are now < 10 lines. > This should slightly improve the startup time by 10-15 seconds, maybe more, maybe less.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java')
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java117
1 files changed, 117 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java
new file mode 100644
index 0000000000..0f9a1bca7f
--- /dev/null
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java
@@ -0,0 +1,117 @@
+package gtPlusPlus.xmod.gregtech.loaders;
+
+import gregtech.api.GregTech_API;
+import gregtech.api.enums.ItemList;
+import gregtech.api.util.GT_Recipe;
+import gtPlusPlus.core.material.Material;
+import gtPlusPlus.core.util.Utils;
+import net.minecraft.item.ItemStack;
+
+public class RecipeGen_Extruder {
+
+ public static void generateRecipes(Material material){
+
+ int tVoltageMultiplier = material.getMeltingPoint_K() >= 2800 ? 64 : 16;
+ ItemStack itemIngot = material.getIngot(1);
+ ItemStack plate_Single = material.getPlate(1);
+ ItemStack itemGear = material.getGear(1);
+
+ ItemStack shape_Plate = ItemList.Shape_Extruder_Plate.get(0);
+ ItemStack shape_Ring = ItemList.Shape_Extruder_Ring.get(0);
+ ItemStack shape_Gear = ItemList.Shape_Extruder_Gear.get(0);
+ ItemStack shape_Rod = ItemList.Shape_Extruder_Rod.get(0);
+ ItemStack shape_Bolt = ItemList.Shape_Extruder_Bolt.get(0);
+
+ Utils.LOG_INFO("Generating Extruder recipes for "+material.getLocalizedName());
+
+
+ //Plate Recipe
+ if (addExtruderRecipe(
+ itemIngot,
+ shape_Plate,
+ plate_Single,
+ 10, 4 * tVoltageMultiplier)){
+ Utils.LOG_INFO("Extruder Plate Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Utils.LOG_INFO("Extruder Plate Recipe: "+material.getLocalizedName()+" - Failed");
+ }
+
+ //Ring Recipe
+ if (!material.isRadioactive){
+ if (addExtruderRecipe(
+ itemIngot,
+ shape_Ring,
+ material.getRing(4),
+ (int) Math.max(material.getMass() * 2L * 1, 1),
+ 6 * material.vVoltageMultiplier)){
+ Utils.LOG_INFO("Extruder Ring Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Utils.LOG_INFO("Extruder Ring Recipe: "+material.getLocalizedName()+" - Failed");
+ }
+ }
+
+
+ //Gear Recipe
+ if (!material.isRadioactive){
+ if (addExtruderRecipe(
+ material.getIngot(8),
+ shape_Gear,
+ itemGear,
+ (int) Math.max(material.getMass() * 5L, 1),
+ 8 * material.vVoltageMultiplier)){
+ Utils.LOG_INFO("Extruder Gear Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Utils.LOG_INFO("Extruder Gear Recipe: "+material.getLocalizedName()+" - Failed");
+ }
+ }
+
+
+ //Rod Recipe
+ if (addExtruderRecipe(
+ itemIngot,
+ shape_Rod,
+ material.getRod(2),
+ (int) Math.max(material.getMass() * 2L * 1, 1),
+ 6 * material.vVoltageMultiplier)){
+ Utils.LOG_INFO("Extruder Rod Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Utils.LOG_INFO("Extruder Rod Recipe: "+material.getLocalizedName()+" - Failed");
+ }
+
+
+ //Bolt Recipe
+ if (!material.isRadioactive){
+ if (addExtruderRecipe(
+ itemIngot,
+ shape_Bolt,
+ material.getBolt(8),
+ (int) Math.max(material.getMass() * 2L * 1, 1),
+ 8 * material.vVoltageMultiplier)){
+ Utils.LOG_INFO("Extruder Bolt Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Utils.LOG_INFO("Extruder Bolt Recipe: "+material.getLocalizedName()+" - Failed");
+ }
+ }
+
+ }
+
+
+ public static boolean addExtruderRecipe(ItemStack aInput, ItemStack aShape, ItemStack aOutput, int aDuration, int aEUt) {
+ if ((aInput == null) || (aShape == null) || (aOutput == null)) {
+ return false;
+ }
+ if ((aDuration = GregTech_API.sRecipeFile.get("extruder", aOutput, aDuration)) <= 0) {
+ return false;
+ }
+ GT_Recipe.GT_Recipe_Map.sExtruderRecipes.addRecipe(true, new ItemStack[]{aInput, aShape}, new ItemStack[]{aOutput}, null, null, null, aDuration, aEUt, 0);
+ return true;
+ }
+
+
+
+}