From 3826cbb1223a25a6d476486d9369d65a22090aec Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Sun, 23 Oct 2016 07:36:05 +1000 Subject: % Massive Material Backend Changes. (Nothing noticeable to players) + Added Chemical Compounds to Dust stacks, so you know how to make/use them. + As an idea, added Deci and Centi dusts, each representing .10 and point .01 of a full dust. (Probably will remove these, or use them for unique crafting options) % Moved Radiation data to Material class. % Created a BaseItemComponent and made all machine components except ingots/dusts utilise it. (Saves boiler-plating 30 lines per class and also it's using OOP for it's real job) --- .../core/util/materials/MaterialUtils.java | 80 +++++++++++++++++++++- 1 file changed, 78 insertions(+), 2 deletions(-) (limited to 'src/Java/gtPlusPlus/core/util/materials') diff --git a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java index 0eae02d827..61171e3688 100644 --- a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java +++ b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java @@ -1,6 +1,7 @@ package gtPlusPlus.core.util.materials; import gregtech.api.enums.Dyes; +import gregtech.api.enums.Element; import gregtech.api.enums.Materials; import gregtech.api.enums.TC_Aspects.TC_AspectStack; import gregtech.api.enums.TextureSet; @@ -51,8 +52,83 @@ public class MaterialUtils { int boiling = material.mBlastFurnaceTemp; long protons = material.getProtons(); long neutrons = material.getNeutrons(); - boolean blastFurnace = material.mBlastFurnaceRequired; - return new Material(name, rgba, melting, boiling, protons, neutrons, blastFurnace, null); + boolean blastFurnace = material.mBlastFurnaceRequired; + String chemicalFormula = material.mChemicalFormula; + Element element = material.mElement; + int radioactivity = 0; + if (material.isRadioactive()){ + radioactivity = 1; + } + if (hasValidRGBA(rgba)){ + return new Material(name, rgba, melting, boiling, protons, neutrons, blastFurnace, null, chemicalFormula, radioactivity); + } + return null; + + } + + public static Material generateQuickMaterial(String materialName, short[] colour, int sRadioactivity) { + Material temp = new Material( + materialName, + colour, + 1000, //melting + 3000, //boiling + 50, //Protons + 50, //Neutrons + false, + null, + sRadioactivity); + return temp; + } + + public static boolean hasValidRGBA(short[] rgba){ + boolean test1 = false; + boolean test2 = false; + boolean test3 = false; + for (int r=0;r Date: Sun, 23 Oct 2016 20:32:22 +1000 Subject: - Disabled generation of Deci/Centi dusts for now. + Added a check for Growthcraft versioning, newer versions past 2.3.1 will not have extra support loaded. + Improved Chemical Compound tooltip generation on dusts. --- src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/Java/gtPlusPlus/core/util/materials') diff --git a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java index 61171e3688..52e925df0e 100644 --- a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java +++ b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java @@ -60,6 +60,8 @@ public class MaterialUtils { radioactivity = 1; } if (hasValidRGBA(rgba)){ + //ModItems.itemBaseDecidust = UtilsItems.generateDecidust(material); + //ModItems.itemBaseCentidust = UtilsItems.generateCentidust(material); return new Material(name, rgba, melting, boiling, protons, neutrons, blastFurnace, null, chemicalFormula, radioactivity); } return null; -- cgit From 39ba9e4d5f528b21397977807eae5eb9e62988d1 Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Wed, 26 Oct 2016 06:43:17 +1000 Subject: % Turned lots of logging off, moved it to debug logging. % Changed up the Alloys a bit to make them more unique. % Tweaked Chemical Formula handling, now it brackets compounds and crashes less. % Made mixer recipes generate for materials with 4 or less input stacks. % Got every material except 3 working within the Blast Smelter. (Hastelloy X & W, Zirconium Carbide) + Added Helium Blobs to dustHydrogen oreDict name. --- src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/Java/gtPlusPlus/core/util/materials') diff --git a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java index 52e925df0e..35605169c5 100644 --- a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java +++ b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java @@ -59,7 +59,7 @@ public class MaterialUtils { if (material.isRadioactive()){ radioactivity = 1; } - if (hasValidRGBA(rgba)){ + if (hasValidRGBA(rgba) || element == Element.H){ //ModItems.itemBaseDecidust = UtilsItems.generateDecidust(material); //ModItems.itemBaseCentidust = UtilsItems.generateCentidust(material); return new Material(name, rgba, melting, boiling, protons, neutrons, blastFurnace, null, chemicalFormula, radioactivity); -- cgit From b074293f70fec5df93a6d0610d99a5183dd2cbfd Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Thu, 27 Oct 2016 01:47:39 +1000 Subject: % Cleaned up material/Material.java using PMD to a rather decent level. > Inadvertently this refactored things in other classes. % Changed the Blast Smelter Casing Block textures. --- .../core/util/materials/MaterialUtils.java | 38 +++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) (limited to 'src/Java/gtPlusPlus/core/util/materials') diff --git a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java index 35605169c5..dac1162357 100644 --- a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java +++ b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java @@ -62,7 +62,7 @@ public class MaterialUtils { if (hasValidRGBA(rgba) || element == Element.H){ //ModItems.itemBaseDecidust = UtilsItems.generateDecidust(material); //ModItems.itemBaseCentidust = UtilsItems.generateCentidust(material); - return new Material(name, rgba, melting, boiling, protons, neutrons, blastFurnace, null, chemicalFormula, radioactivity); + return new Material(name, rgba, melting, boiling, protons, neutrons, blastFurnace, chemicalFormula, radioactivity); } return null; @@ -133,6 +133,42 @@ public class MaterialUtils { return str; } + public static int getTierOfMaterial(int M){ + if (M >= 0 && M <= 750){ + return 1; + } + else if(M >= 751 && M <= 1250){ + return 2; + } + else if(M >= 1251 && M <= 1750){ + return 3; + } + else if(M >= 1751 && M <= 2250){ + return 4; + } + else if(M >= 2251 && M <= 2750){ + return 5; + } + else if(M >= 2751 && M <= 3250){ + return 6; + } + else if(M >= 3251 && M <= 3750){ + return 7; + } + else if(M >= 3751 && M <= 4250){ + return 8; + } + else if(M >= 4251 && M <= 4750){ + return 9; + } + else if(M >= 4751 && M <= 9999){ + return 10; + } + else { + return 0; + } + } + /* * That's shown, many times, in the EnumHelper code, all the add functions just wrap the addEnum function. -- cgit From 3e2a9a9cf154f717696ae391fe8b998a6e3bbd29 Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Thu, 27 Oct 2016 04:37:30 +1000 Subject: + Made Recipes and Material init all runnable classes, now items should generate in a proper fashion. $ Fixed the Alloy Blast Furnace using the wrong recipe map and not outputting fluids. % Separated GT Material and my Material recipe generation for the Blast Alloy Smelter. --- src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/Java/gtPlusPlus/core/util/materials') diff --git a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java index dac1162357..1ccb0f771c 100644 --- a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java +++ b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java @@ -77,7 +77,7 @@ public class MaterialUtils { 50, //Protons 50, //Neutrons false, - null, + "", sRadioactivity); return temp; } -- cgit