aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/enums/Materials.java16
-rw-r--r--src/main/java/gregtech/api/recipe/RecipeMaps.java6
-rw-r--r--src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java36
-rw-r--r--src/main/java/gregtech/api/recipe/maps/PurificationUnitParticleExtractorFrontend.java36
4 files changed, 85 insertions, 9 deletions
diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java
index b7b9c63ebd..8bfbc94699 100644
--- a/src/main/java/gregtech/api/enums/Materials.java
+++ b/src/main/java/gregtech/api/enums/Materials.java
@@ -150,14 +150,14 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
public static Materials Ytterbium = new Materials( 77, TextureSet.SET_SHINY , 1.0F, 0, 2, 1|2 |8 |32 , 44, 199, 80, 0, "Ytterbium" , "Ytterbium" , 0, 0, 1097, 1097, true, false, 4, 1, 1, Dyes._NULL , Element.Yb , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1)));
public static Materials Yttrium = new Materials( 45, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 220, 250, 220, 0, "Yttrium" , "Yttrium" , 0, 0, 1799, 1799, true, false, 4, 1, 1, Dyes._NULL , Element.Y , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1)));
public static Materials Zinc = new Materials( 36, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1|2 |8 |32 , 250, 240, 240, 0, "Zinc" , "Zinc" , 0, 0, 692, 0, false, false, 2, 1, 1, Dyes.dyeWhite , Element.Zn , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.SANO, 1)));
- public static Materials Grade1PurifiedWater = new Materials( 554, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 34, 35, 52, 0, "Grade1PurifiedWater" , "Grade 1 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
- public static Materials Grade2PurifiedWater = new Materials( 555, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 42, 41, 77, 0, "Grade2PurifiedWater" , "Grade 2 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
- public static Materials Grade3PurifiedWater = new Materials( 556, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 49, 47, 103, 0, "Grade3PurifiedWater" , "Grade 3 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
- public static Materials Grade4PurifiedWater = new Materials( 557, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 54, 53, 132, 0, "Grade4PurifiedWater" , "Grade 4 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
- public static Materials Grade5PurifiedWater = new Materials( 558, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 58, 58, 161, 0, "Grade5PurifiedWater" , "Grade 5 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
- public static Materials Grade6PurifiedWater = new Materials( 559, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 61, 64, 191, 0, "Grade6PurifiedWater" , "Grade 6 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
- public static Materials Grade7PurifiedWater = new Materials( 560, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 63, 70, 221, 0, "Grade7PurifiedWater" , "Grade 7 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
- public static Materials Grade8PurifiedWater = new Materials( 561, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 63, 76, 253, 0, "Grade8PurifiedWater" , "Grade 8 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade1PurifiedWater = new Materials( 554, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 63, 76, 253, 0, "Grade1PurifiedWater" , "Grade 1 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade2PurifiedWater = new Materials( 555, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 93, 93, 254, 0, "Grade2PurifiedWater" , "Grade 2 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade3PurifiedWater = new Materials( 556, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 115, 109, 254, 0, "Grade3PurifiedWater" , "Grade 3 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade4PurifiedWater = new Materials( 557, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 135, 126, 255, 0, "Grade4PurifiedWater" , "Grade 4 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade5PurifiedWater = new Materials( 558, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 152, 144, 255, 0, "Grade5PurifiedWater" , "Grade 5 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade6PurifiedWater = new Materials( 559, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 168, 161, 255, 0, "Grade6PurifiedWater" , "Grade 6 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade7PurifiedWater = new Materials( 560, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 183, 179, 255, 0, "Grade7PurifiedWater" , "Grade 7 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
+ public static Materials Grade8PurifiedWater = new Materials( 561, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 197, 197, 255, 0, "Grade8PurifiedWater" , "Grade 8 Purified Water" , 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
public static Materials FlocculationWasteLiquid = new Materials(562, TextureSet.SET_FLUID, 1.0f, 0, 2, 16, 61, 58, 82, 0, "FlocculationWasteLiquid", "Flocculation Waste Liquid", 0, 0, 273, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Collections.singletonList(new TC_AspectStack(TC_Aspects.AQUA, 1))).setHasCorrespondingFluid(true);
//GT++ materials
diff --git a/src/main/java/gregtech/api/recipe/RecipeMaps.java b/src/main/java/gregtech/api/recipe/RecipeMaps.java
index 6d614d27d0..a2f053922c 100644
--- a/src/main/java/gregtech/api/recipe/RecipeMaps.java
+++ b/src/main/java/gregtech/api/recipe/RecipeMaps.java
@@ -61,7 +61,9 @@ import gregtech.api.recipe.maps.OilCrackerBackend;
import gregtech.api.recipe.maps.PrinterBackend;
import gregtech.api.recipe.maps.PurificationUnitClarifierFrontend;
import gregtech.api.recipe.maps.PurificationUnitFlocculatorFrontend;
+import gregtech.api.recipe.maps.PurificationUnitLaserFrontend;
import gregtech.api.recipe.maps.PurificationUnitOzonationFrontend;
+import gregtech.api.recipe.maps.PurificationUnitParticleExtractorFrontend;
import gregtech.api.recipe.maps.PurificationUnitPhAdjustmentFrontend;
import gregtech.api.recipe.maps.PurificationUnitPlasmaHeaterFrontend;
import gregtech.api.recipe.maps.RecyclerBackend;
@@ -1225,9 +1227,10 @@ public final class RecipeMaps {
.build();
public static final RecipeMap<RecipeMapBackend> purificationUVTreatmentRecipes = RecipeMapBuilder
.of("gt.recipe.purificationplantuvtreatment")
- .maxIO(0, 0, 1, 1)
+ .maxIO(9, 0, 1, 1)
.minInputs(0, 1)
.progressBar(GT_UITextures.PROGRESSBAR_ARROW)
+ .frontend(PurificationUnitLaserFrontend::new)
.disableOptimize()
.build();
public static final RecipeMap<RecipeMapBackend> purificationDegasifierRecipes = RecipeMapBuilder
@@ -1242,6 +1245,7 @@ public final class RecipeMaps {
.maxIO(2, 1, 1, 2)
.minInputs(0, 1)
.progressBar(GT_UITextures.PROGRESSBAR_ARROW)
+ .frontend(PurificationUnitParticleExtractorFrontend::new)
.disableOptimize()
.build();
public static final RecipeMap<RecipeMapBackend> ic2NuclearFakeRecipes = RecipeMapBuilder.of("gt.recipe.ic2nuke")
diff --git a/src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java b/src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java
new file mode 100644
index 0000000000..df42259864
--- /dev/null
+++ b/src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java
@@ -0,0 +1,36 @@
+package gregtech.api.recipe.maps;
+
+import java.util.List;
+
+import net.minecraft.item.ItemStack;
+
+import com.gtnewhorizons.modularui.api.math.Pos2d;
+
+import codechicken.nei.PositionedStack;
+import gregtech.api.recipe.BasicUIPropertiesBuilder;
+import gregtech.api.recipe.NEIRecipePropertiesBuilder;
+import gregtech.api.recipe.RecipeMapFrontend;
+import gregtech.common.gui.modularui.UIHelper;
+import gregtech.common.tileentities.machines.multi.purification.GT_MetaTileEntity_PurificationUnitUVTreatment;
+import gregtech.nei.GT_NEI_DefaultHandler;
+
+public class PurificationUnitLaserFrontend extends RecipeMapFrontend {
+
+ public PurificationUnitLaserFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder,
+ NEIRecipePropertiesBuilder neiPropertiesBuilder) {
+ super(uiPropertiesBuilder, neiPropertiesBuilder);
+ }
+
+ @Override
+ public void drawNEIOverlays(GT_NEI_DefaultHandler.CachedDefaultRecipe neiCachedRecipe) {
+ final int numLenses = GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS.size();
+ List<Pos2d> positions = UIHelper.getGridPositions(numLenses, 12, -4, 3, 3);
+ // Put in lens items
+ for (int i = 0; i < numLenses; ++i) {
+ Pos2d position = positions.get(i);
+ ItemStack lens = GT_MetaTileEntity_PurificationUnitUVTreatment.LENS_ITEMS.get(i);
+ neiCachedRecipe.mInputs.add(new PositionedStack(lens, position.x, position.y, false));
+ }
+ super.drawNEIOverlays(neiCachedRecipe);
+ }
+}
diff --git a/src/main/java/gregtech/api/recipe/maps/PurificationUnitParticleExtractorFrontend.java b/src/main/java/gregtech/api/recipe/maps/PurificationUnitParticleExtractorFrontend.java
new file mode 100644
index 0000000000..bbbd88fd5f
--- /dev/null
+++ b/src/main/java/gregtech/api/recipe/maps/PurificationUnitParticleExtractorFrontend.java
@@ -0,0 +1,36 @@
+package gregtech.api.recipe.maps;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import net.minecraft.item.ItemStack;
+
+import com.gtnewhorizons.modularui.api.math.Pos2d;
+
+import codechicken.nei.PositionedStack;
+import gregtech.api.recipe.BasicUIPropertiesBuilder;
+import gregtech.api.recipe.NEIRecipePropertiesBuilder;
+import gregtech.api.recipe.RecipeMapFrontend;
+import gregtech.common.gui.modularui.UIHelper;
+import gregtech.nei.GT_NEI_DefaultHandler;
+
+public class PurificationUnitParticleExtractorFrontend extends RecipeMapFrontend {
+
+ public static final ArrayList<ItemStack> inputItems = new ArrayList<>();
+ public static final ArrayList<ItemStack> inputItemsShuffled = new ArrayList<>();
+
+ public PurificationUnitParticleExtractorFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder,
+ NEIRecipePropertiesBuilder neiPropertiesBuilder) {
+ super(uiPropertiesBuilder, neiPropertiesBuilder);
+ }
+
+ @Override
+ public void drawNEIOverlays(GT_NEI_DefaultHandler.CachedDefaultRecipe neiCachedRecipe) {
+ List<Pos2d> positions = UIHelper.getGridPositions(2, 30, 14, 2, 1);
+ Pos2d pos1 = positions.get(0);
+ Pos2d pos2 = positions.get(1);
+ neiCachedRecipe.mInputs.set(0, new PositionedStack(inputItems, pos1.x, pos1.y, true));
+ neiCachedRecipe.mInputs.set(1, new PositionedStack(inputItemsShuffled, pos2.x, pos2.y, true));
+ super.drawNEIOverlays(neiCachedRecipe);
+ }
+}