aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/recipe/metadata/CompressionTierKey.java
diff options
context:
space:
mode:
authorMary <33456283+FourIsTheNumber@users.noreply.github.com>2024-08-29 11:15:21 -0400
committerGitHub <noreply@github.com>2024-08-29 17:15:21 +0200
commit03f8ac57b99f8fa26975151ad39cb1a78667db73 (patch)
tree1f61751081785526d26875383cc344be5ada9e32 /src/main/java/gregtech/api/recipe/metadata/CompressionTierKey.java
parent7d3ddfa1a325d7b2f0248bc771a5c0dcbc6eb839 (diff)
downloadGT5-Unofficial-03f8ac57b99f8fa26975151ad39cb1a78667db73.tar.gz
GT5-Unofficial-03f8ac57b99f8fa26975151ad39cb1a78667db73.tar.bz2
GT5-Unofficial-03f8ac57b99f8fa26975151ad39cb1a78667db73.zip
Compressor Multiblock (#2861)
* Compressor boilerplate * Getting test structure working * Structure fixes * Implemented basic HIP and Black Hole structure elements complete with heat and black hole stabilization mechanics * Cooling glow, also HIP cools much slower than it heats * Got blue cooling texture working * spotless :3 * Force structure checks every 10 seconds like nano forge * Neutronium compressor recipemap created * Various strange changes attempting to get a neutronium compressor map working. Shelved for now * Absolutely going hog wild with neutronium testing * BIG RECIPE * Added Ollie author tag * Added a bunch of neutronium compressor recipes * Deeply cursed recipemap combining * Neutronium compressor structure * Black hole requirement for recipes established * Black hole implementation changed * Added black hole catalyzation * spotless * Removed neutronium compressor recipes from gt5u * Made eternal singularity work somehow * Boilerplate for new hatches * Tinkering * Split the multi in 4 * Fix refactor * Implemented the new black hole mechanic with catalysts. * Give speed bonuses/nerfs to recipes based on black hole. Shuffled some logic around * Imported real structures * Proper HIP implementation with heat sensor * Cut HIP mechanics from Neutronium * Restore Gangue for use in a black hole recipe * Made Gangue blocks load * sa+update deps * Added t1/t2 casings * Temporary casings for neutronium * SA from merge * Temporary HIP Textures * Temporary Black Hole textures * Support machinemode for black hole, support special value for compression * Don't let neutronium compressor do black hole recipes * Get all of the numbers in * Tooltip adjustments for readability * Casing fix and more tooltips * Correct structure tooltips * Improve legibility of HIP tooltip * 1 parallel per tier when overheated * Lost my privates * Fixed modern cast and imported the new textures * Removed very unnecessary logic * Nerf HIP parallels to 4 to make black hole better * Change all special value stuff to proper metadata --------- Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java/gregtech/api/recipe/metadata/CompressionTierKey.java')
-rw-r--r--src/main/java/gregtech/api/recipe/metadata/CompressionTierKey.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/recipe/metadata/CompressionTierKey.java b/src/main/java/gregtech/api/recipe/metadata/CompressionTierKey.java
new file mode 100644
index 0000000000..384b5ce2d9
--- /dev/null
+++ b/src/main/java/gregtech/api/recipe/metadata/CompressionTierKey.java
@@ -0,0 +1,33 @@
+package gregtech.api.recipe.metadata;
+
+import static gregtech.api.util.GT_Utility.trans;
+
+import javax.annotation.Nullable;
+import javax.annotation.ParametersAreNonnullByDefault;
+
+import gregtech.api.recipe.RecipeMetadataKey;
+import gregtech.api.util.MethodsReturnNonnullByDefault;
+import gregtech.nei.RecipeDisplayInfo;
+
+/**
+ * Tier of advanced compression required
+ */
+@ParametersAreNonnullByDefault
+@MethodsReturnNonnullByDefault
+public class CompressionTierKey extends RecipeMetadataKey<Integer> {
+
+ public static final CompressionTierKey INSTANCE = new CompressionTierKey();
+
+ private CompressionTierKey() {
+ super(Integer.class, "compression_tier");
+ }
+
+ @Override
+ public void drawInfo(RecipeDisplayInfo recipeInfo, @Nullable Object value) {
+ int tier = cast(value, 1);
+ switch (tier) {
+ case 1 -> recipeInfo.drawText(trans("509", "Requires HIP Unit"));
+ case 2 -> recipeInfo.drawText(trans("508", "Requires Stabilized Black Hole"));
+ }
+ }
+}