diff options
Diffstat (limited to 'src/main/java')
23 files changed, 3287 insertions, 10 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java b/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java index 26a3cb65e3..0a7a808d8d 100644 --- a/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java +++ b/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java @@ -9,6 +9,7 @@ import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.util.Pair; import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TextureSet; @SuppressWarnings({ "unchecked" }) @@ -682,6 +683,19 @@ public class WerkstoffMaterialPool implements Runnable { offsetID2 + 8, TextureSet.SET_DULL); + public static final Werkstoff Gangue = new Werkstoff( + new short[] { 0, 0, 0 }, + "Gangue", + subscriptNumbers("Useless..."), + new Werkstoff.Stats(), + Werkstoff.Types.MIXTURE, + new Werkstoff.GenerationFeatures().disable() + .onlyDust() + .addPrefix(OrePrefixes.block) + .removePrefix(OrePrefixes.ingot) + .removePrefix(OrePrefixes.gem), + offsetID2 + 9, + TextureSet.SET_DULL); // TODO: Deal with colouring public static final Werkstoff RoastedRareEarthOxides = new Werkstoff( new short[] { 160, 82, 45 }, diff --git a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java index e568ea219c..57e58e9501 100644 --- a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java +++ b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java @@ -40,6 +40,7 @@ import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.FilledY import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.GadoliniumChlorideConcentrate; import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.GadoliniumExtractingNanoResin; import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.GadoliniumOreConcentrate; +import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.Gangue; import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.HolmiumChlorideConcentrate; import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.HolmiumExtractingNanoResin; import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.HolmiumOreConcentrate; @@ -1532,6 +1533,7 @@ public class RecipeLoader { WerkstoffMaterialPool.ConditionedBastnasiteMud.getFluidOrGas(1000)) .itemInputs(Materials.Saltpeter.getDust(1)) .fluidOutputs(WerkstoffMaterialPool.DiltedRareEarthBastnasiteMud.getFluidOrGas(11000)) + .itemOutputs(Gangue.get(OrePrefixes.dust, 1)) .eut(TierEU.RECIPE_EV) .duration(1000) .metadata(DISSOLUTION_TANK_RATIO, 10) diff --git a/src/main/java/gregtech/api/enums/GT_Values.java b/src/main/java/gregtech/api/enums/GT_Values.java index ec4a6ce5c7..88972e45fc 100644 --- a/src/main/java/gregtech/api/enums/GT_Values.java +++ b/src/main/java/gregtech/api/enums/GT_Values.java @@ -651,6 +651,7 @@ public class GT_Values { + EnumChatFormatting.WHITE + EnumChatFormatting.ITALIC + "Number"; + public static final String Ollie = "" + EnumChatFormatting.GREEN + EnumChatFormatting.BOLD + "Ollie"; public static final String authorBaps = "Author: " + EnumChatFormatting.GOLD + "Ba" + EnumChatFormatting.LIGHT_PURPLE diff --git a/src/main/java/gregtech/api/enums/ItemList.java b/src/main/java/gregtech/api/enums/ItemList.java index bf9fa4ec90..766525c958 100644 --- a/src/main/java/gregtech/api/enums/ItemList.java +++ b/src/main/java/gregtech/api/enums/ItemList.java @@ -1091,6 +1091,8 @@ public enum ItemList implements IItemContainer { Hatch_DataAccess_LuV, Hatch_DataAccess_UV, + Hatch_HeatSensor, + Battery_Buffer_1by1_ULV, Battery_Buffer_1by1_LV, Battery_Buffer_1by1_MV, @@ -1474,6 +1476,24 @@ public enum ItemList implements IItemContainer { Electromagnet_Tengam, Machine_Multi_Canner, + + Machine_Multi_IndustrialCompressor, + Machine_Multi_HIPCompressor, + Machine_Multi_NeutroniumCompressor, + Machine_Multi_BlackHoleCompressor, + Compressor_Casing, + Compressor_Pipe_Casing, + Heating_Duct_Casing, + Coolant_Duct_Casing, + Neutronium_Casing, + Neutronium_Active_Casing, + Neutronium_Stable_Casing, + Background_Radiation_Casing, + Extreme_Density_Casing, + Hawking_Glass, + Black_Hole_Opener, + Black_Hole_Closer, + Machine_Multi_IndustrialLaserEngraver, Laser_Plate, Casing_Laser, diff --git a/src/main/java/gregtech/api/enums/MetaTileEntityIDs.java b/src/main/java/gregtech/api/enums/MetaTileEntityIDs.java index d55d1bbcf9..7793a2f6b2 100644 --- a/src/main/java/gregtech/api/enums/MetaTileEntityIDs.java +++ b/src/main/java/gregtech/api/enums/MetaTileEntityIDs.java @@ -626,7 +626,12 @@ public enum MetaTileEntityIDs { INPUT_HATCH_ME(2717), INPUT_BUS_ME(2718), INDUSTRIAL_LASER_ENGRAVER_CONTROLLER(3004), - INDUSTRIAL_EXTRACTOR_CONTROLLER(3005), + INDUSTRIAL_COMPRESSOR_CONTROLLER(3005), + HIP_COMPRESSOR_CONTROLLER(3006), + NEUTRONIUM_COMPRESSOR_CONTROLLER(3007), + BLACKHOLE_COMPRESSOR_CONTROLLER(3008), + HEAT_DETECTOR_HATCH(3009), + INDUSTRIAL_EXTRACTOR_CONTROLLER(3010), DraconicEvolutionFusionCrafterController(5001), CHEST_BUFFER_ULV(9230), CHEST_BUFFER_LV(9231), diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java index d00c5dccb9..4a5142138a 100644 --- a/src/main/java/gregtech/api/enums/Textures.java +++ b/src/main/java/gregtech/api/enums/Textures.java @@ -336,6 +336,13 @@ public class Textures { OVERLAY_FRONT_MULTI_CANNER_ACTIVE_GLOW, OVERLAY_FRONT_MULTI_CANNER_GLOW, + OVERLAY_FRONT_MULTI_COMPRESSOR, + OVERLAY_FRONT_MULTI_COMPRESSOR_ACTIVE, + OVERLAY_FRONT_MULTI_COMPRESSOR_ACTIVE_GLOW, + OVERLAY_FRONT_MULTI_COMPRESSOR_GLOW, + OVERLAY_FRONT_MULTI_COMPRESSOR_COOLING, + OVERLAY_FRONT_MULTI_COMPRESSOR_COOLING_GLOW, + OVERLAY_FRONT_INDUSTRIAL_EXTRACTOR, OVERLAY_FRONT_INDUSTRIAL_EXTRACTOR_ACTIVE, OVERLAY_FRONT_INDUSTRIAL_EXTRACTOR_ACTIVE_GLOW, @@ -347,6 +354,7 @@ public class Textures { OVERLAY_FRONT_ENGRAVER_ACTIVE, OVERLAY_FRONT_ENGRAVER_ACTIVE_GLOW, OVERLAY_FRONT_ENGRAVER_GLOW, + OVERLAY_FRONT_MULTI_LATHE, OVERLAY_FRONT_MULTI_LATHE_ACTIVE, OVERLAY_FRONT_MULTI_LATHE_ACTIVE_GLOW, @@ -1330,6 +1338,9 @@ public class Textures { OVERLAY_HATCH_PH_SENSOR, OVERLAY_HATCH_PH_SENSOR_GLOW, + OVERLAY_HATCH_BLACKHOLE, + OVERLAY_HATCH_BLACKHOLE_GLOW, + STRUCTURE_MARK, MV_TOP_CYCLOTRON_SOLENOID, @@ -1409,7 +1420,15 @@ public class Textures { GLASS_QUARK_CONTAINMENT, BLOCK_QUARK_PIPE, BLOCK_QUARK_RELEASE_CHAMBER, - BLOCK_QUARK_CONTAINMENT_CASING,; + BLOCK_QUARK_CONTAINMENT_CASING, + COMPRESSOR_CASING, + COMPRESSOR_PIPE_CASING, + NEUTRONIUM_CASING, + NEUTRONIUM_ACTIVE_CASING, + NEUTRONIUM_STABLE_CASING, + EXTREME_DENSITY_CASING, + RADIATION_ABSORBENT_CASING, + HAWKING_GLASS; /** * Icon for Fresh CFoam diff --git a/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java b/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java index 526ba1aa18..6031399c06 100644 --- a/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java +++ b/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java @@ -441,6 +441,10 @@ public class GT_UITextures { .fullImage(GregTech.ID, "gui/overlay_button/machine_mode_slicing"); public static final UITexture OVERLAY_BUTTON_MACHINEMODE_CUTTING = UITexture .fullImage(GregTech.ID, "gui/overlay_button/machine_mode_cutting"); + public static final UITexture OVERLAY_BUTTON_MACHINEMODE_COMPRESSING = UITexture + .fullImage(GregTech.ID, "gui/overlay_button/machine_mode_compressing"); + public static final UITexture OVERLAY_BUTTON_MACHINEMODE_SINGULARITY = UITexture + .fullImage(GregTech.ID, "gui/overlay_button/machine_mode_singularity"); /** * Can adjust size as needed. diff --git a/src/main/java/gregtech/api/recipe/RecipeMaps.java b/src/main/java/gregtech/api/recipe/RecipeMaps.java index 82dd60441a..293b4f36b5 100644 --- a/src/main/java/gregtech/api/recipe/RecipeMaps.java +++ b/src/main/java/gregtech/api/recipe/RecipeMaps.java @@ -1,8 +1,10 @@ package gregtech.api.recipe; +import static gregtech.api.enums.Mods.Avaritia; import static gregtech.api.enums.Mods.GTNHIntergalactic; import static gregtech.api.enums.Mods.NEICustomDiagrams; import static gregtech.api.enums.Mods.Railcraft; +import static gregtech.api.util.GT_ModHandler.getModItem; import static gregtech.api.util.GT_RecipeConstants.ADDITIVE_AMOUNT; import static gregtech.api.util.GT_RecipeConstants.FUEL_VALUE; import static gregtech.api.util.GT_RecipeMapUtil.GT_RecipeTemplate; @@ -63,6 +65,7 @@ import gregtech.api.recipe.maps.ReplicatorBackend; import gregtech.api.recipe.maps.SpaceProjectFrontend; import gregtech.api.recipe.maps.TranscendentPlasmaMixerFrontend; import gregtech.api.recipe.maps.UnpackagerBackend; +import gregtech.api.recipe.metadata.CompressionTierKey; import gregtech.api.recipe.metadata.PCBFactoryTierKey; import gregtech.api.recipe.metadata.PurificationPlantBaseChanceKey; import gregtech.api.util.GT_ModHandler; @@ -125,9 +128,27 @@ public final class RecipeMaps { (index, isFluid, isOutput, isSpecial) -> !isFluid && !isOutput ? GT_UITextures.OVERLAY_SLOT_COMPRESSOR_STEAM : null) .progressBarSteam(GT_UITextures.PROGRESSBAR_COMPRESS_STEAM) + .neiRecipeComparator( + Comparator + .<GT_Recipe, Integer>comparing(recipe -> recipe.getMetadataOrDefault(CompressionTierKey.INSTANCE, 0)) + .thenComparing(GT_Recipe::compareTo)) // Avoid steam machine being used as handler icon .neiHandlerInfo(builder -> builder.setDisplayStack(ItemList.Machine_LV_Compressor.get(1))) .build(); + public static final RecipeMap<RecipeMapBackend> neutroniumCompressorRecipes = RecipeMapBuilder + .of("gt.recipe.neutroniumcompressor") + .maxIO(1, 1, 1, 0) + .slotOverlays( + (index, isFluid, isOutput, isSpecial) -> !isFluid && !isOutput ? GT_UITextures.OVERLAY_SLOT_COMPRESSOR + : null) + .progressBar(GT_UITextures.PROGRESSBAR_COMPRESS) + .neiHandlerInfo(builder -> builder.setDisplayStack(getModItem(Avaritia.ID, "Singularity", 1L, 0))) + .disableOptimize() + .neiRecipeComparator( + Comparator + .<GT_Recipe, Integer>comparing(recipe -> recipe.getMetadataOrDefault(CompressionTierKey.INSTANCE, 0)) + .thenComparing(GT_Recipe::compareTo)) + .build(); public static final RecipeMap<RecipeMapBackend> extractorRecipes = RecipeMapBuilder.of("gt.recipe.extractor") .maxIO(1, 1, 0, 0) .minInputs(1, 0) diff --git a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java index 5844a49180..dc7fc0d6a6 100644 --- a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java +++ b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java @@ -109,6 +109,16 @@ public final class CheckRecipeResultRegistry { public static final CheckRecipeResult BACKFILLER_NO_CONCRETE = SimpleCheckRecipeResult .ofFailure("backfiller_no_concrete"); + /** + * Black Hole Compressor does not have an active black hole + */ + public static final CheckRecipeResult NO_BLACK_HOLE = SimpleCheckRecipeResult.ofFailure("no_black_hole"); + /** + * Black Hole Compressor became unstable + */ + public static final CheckRecipeResult UNSTABLE_BLACK_HOLE = SimpleCheckRecipeResult + .ofFailure("unstable_black_hole"); + public static final CheckRecipeResult NO_SEE_SKY = SimpleCheckRecipeResult.ofFailure("no_see_sky"); /** 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")); + } + } +} diff --git a/src/main/java/gregtech/api/util/GT_LanguageManager.java b/src/main/java/gregtech/api/util/GT_LanguageManager.java index e153b8e15f..4a9dc878ed 100644 --- a/src/main/java/gregtech/api/util/GT_LanguageManager.java +++ b/src/main/java/gregtech/api/util/GT_LanguageManager.java @@ -549,6 +549,8 @@ public class GT_LanguageManager { addStringLocalization("Interaction_DESCRIPTION_Index_505", "Enable with Signal (Safe)"); addStringLocalization("Interaction_DESCRIPTION_Index_506", "Disable with Signal (Safe)"); addStringLocalization("Interaction_DESCRIPTION_Index_507", "Safe Mode"); + addStringLocalization("Interaction_DESCRIPTION_Index_508", "Needs Stabilized Black Hole"); + addStringLocalization("Interaction_DESCRIPTION_Index_509", "Requires HIP Unit"); addStringLocalization("Interaction_DESCRIPTION_Index_602", "Use Private Frequency"); addStringLocalization("Interaction_DESCRIPTION_Index_756", "Connectable: "); addStringLocalization("Interaction_DESCRIPTION_Index_ALL", "All"); diff --git a/src/main/java/gregtech/api/util/GT_RecipeConstants.java b/src/main/java/gregtech/api/util/GT_RecipeConstants.java index a8cdb19b7a..c8a002c6c2 100644 --- a/src/main/java/gregtech/api/util/GT_RecipeConstants.java +++ b/src/main/java/gregtech/api/util/GT_RecipeConstants.java @@ -144,6 +144,12 @@ public class GT_RecipeConstants { .create(Integer.class, "qft_focus_tier"); /** + * Tier of advanced compression (HIP/black hole) + */ + public static final RecipeMetadataKey<Integer> COMPRESSION_TIER = SimpleRecipeMetadataKey + .create(Integer.class, "compression"); + + /** * Dissolution Tank Ratio. */ public static final RecipeMetadataKey<Integer> DISSOLUTION_TANK_RATIO = SimpleRecipeMetadataKey @@ -677,6 +683,7 @@ public class GT_RecipeConstants { GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(NKE_RANGE); GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(PRECISE_ASSEMBLER_CASING_TIER); GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(COAL_CASING_TIER); + GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(COMPRESSION_TIER); GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(RESEARCH_STATION_DATA); GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(SIEVERTS); GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(DECAY_TICKS); diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Casings10.java b/src/main/java/gregtech/common/blocks/GT_Block_Casings10.java index 9c9db0a7e9..1a0902da97 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Casings10.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Casings10.java @@ -19,14 +19,33 @@ public class GT_Block_Casings10 extends GT_Block_Casings_Abstract { super(GT_Item_Casings10.class, "gt.blockcasings10", GT_Material_Casings.INSTANCE, 16); GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "MagTech Casing"); GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "Laser Containment Casing"); - GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "Quark Exclusion Casing"); GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".3.name", "Pressure Containment Casing"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".4.name", "Electric Compressor Casing"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".5.name", "Compression Pipe Casing"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".6.name", "Neutronium Casing"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".7.name", "Active Neutronium Casing"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".8.name", "Neutronium Stabilization Casing"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".9.name", "Coolant Duct"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".10.name", "Heating Duct"); + GT_LanguageManager + .addStringLocalization(getUnlocalizedName() + ".11.name", "Extreme Density Space-Bending Casing"); + GT_LanguageManager + .addStringLocalization(getUnlocalizedName() + ".12.name", "Background Radiation Absorbent Casing"); ItemList.Casing_Electromagnetic_Separator.set(new ItemStack(this, 1, 0)); - ItemList.BlockQuarkContainmentCasing.set(new ItemStack(this, 1, 2)); ItemList.Casing_Laser.set(new ItemStack(this, 1, 1)); + ItemList.BlockQuarkContainmentCasing.set(new ItemStack(this, 1, 2)); ItemList.Casing_Autoclave.set(new ItemStack(this, 1, 3)); + ItemList.Compressor_Casing.set(new ItemStack(this, 1, 4)); + ItemList.Compressor_Pipe_Casing.set(new ItemStack(this, 1, 5)); + ItemList.Neutronium_Casing.set(new ItemStack(this, 1, 6)); + ItemList.Neutronium_Active_Casing.set(new ItemStack(this, 1, 7)); + ItemList.Neutronium_Stable_Casing.set(new ItemStack(this, 1, 8)); + ItemList.Coolant_Duct_Casing.set(new ItemStack(this, 1, 9)); + ItemList.Heating_Duct_Casing.set(new ItemStack(this, 1, 10)); + ItemList.Extreme_Density_Casing.set(new ItemStack(this, 1, 11)); + ItemList.Background_Radiation_Casing.set(new ItemStack(this, 1, 12)); } @Override @@ -42,6 +61,15 @@ public class GT_Block_Casings10 extends GT_Block_Casings_Abstract { case 1 -> Textures.BlockIcons.MACHINE_CASING_LASER.getIcon(); case 2 -> Textures.BlockIcons.BLOCK_QUARK_CONTAINMENT_CASING.getIcon(); case 3 -> Textures.BlockIcons.MACHINE_CASING_AUTOCLAVE.getIcon(); + case 4 -> Textures.BlockIcons.COMPRESSOR_CASING.getIcon(); + case 5 -> Textures.BlockIcons.COMPRESSOR_PIPE_CASING.getIcon(); + case 6 -> Textures.BlockIcons.NEUTRONIUM_CASING.getIcon(); + case 7 -> Textures.BlockIcons.NEUTRONIUM_ACTIVE_CASING.getIcon(); + case 8 -> Textures.BlockIcons.NEUTRONIUM_STABLE_CASING.getIcon(); + case 9 -> Textures.BlockIcons.MACHINE_CASING_PIPE_TUNGSTENSTEEL.getIcon(); + case 10 -> Textures.BlockIcons.MACHINE_CASING_PIPE_BRONZE.getIcon(); + case 11 -> Textures.BlockIcons.EXTREME_DENSITY_CASING.getIcon(); + case 12 -> Textures.BlockIcons.RADIATION_ABSORBENT_CASING.getIcon(); default -> Textures.BlockIcons.MACHINE_CASING_ROBUST_TUNGSTENSTEEL.getIcon(); }; } diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Glass1.java b/src/main/java/gregtech/common/blocks/GT_Block_Glass1.java index 0665411259..2aa5613d11 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Glass1.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Glass1.java @@ -26,20 +26,20 @@ public class GT_Block_Glass1 extends GT_Block_Casings_Abstract { this.opaque = false; GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Chemical Grade Glass"); - GT_LanguageManager.addStringLocalization( - getUnlocalizedName() + ".0.tooltip", - "Able to resist the most extreme chemical conditions."); - GT_LanguageManager .addStringLocalization(getUnlocalizedName() + ".1.name", "Electron-Permeable Neutronium Coated Glass"); GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "Omni-Purpose Infinity Fused Glass"); GT_LanguageManager .addStringLocalization(getUnlocalizedName() + ".3.name", "Non-Photonic Matter Exclusion Glass"); + GT_LanguageManager + .addStringLocalization(getUnlocalizedName() + ".4.name", "Hawking Radiation Realignment Focus"); ItemList.GlassPHResistant.set(new ItemStack(this, 1, 0)); ItemList.GlassUVResistant.set(new ItemStack(this, 1, 1)); ItemList.GlassOmniPurposeInfinityFused.set(new ItemStack(this, 1, 2)); ItemList.GlassQuarkContainment.set(new ItemStack(this, 1, 3)); + ItemList.GlassQuarkContainment.set(new ItemStack(this, 1, 3)); + ItemList.Hawking_Glass.set(new ItemStack(this, 1, 4)); } @Override @@ -77,6 +77,7 @@ public class GT_Block_Glass1 extends GT_Block_Casings_Abstract { case 1 -> Textures.BlockIcons.NEUTRONIUM_COATED_UV_RESISTANT_GLASS.getIcon(); case 2 -> Textures.BlockIcons.OMNI_PURPOSE_INFINITY_FUSED_GLASS.getIcon(); case 3 -> Textures.BlockIcons.GLASS_QUARK_CONTAINMENT.getIcon(); + case 4 -> Textures.BlockIcons.HAWKING_GLASS.getIcon(); default -> Textures.BlockIcons.MACHINE_CASING_ROBUST_TUNGSTENSTEEL.getIcon(); }; } diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Glass1.java b/src/main/java/gregtech/common/blocks/GT_Item_Glass1.java index 7fbb33ff6e..e8d0b6c236 100644 --- a/src/main/java/gregtech/common/blocks/GT_Item_Glass1.java +++ b/src/main/java/gregtech/common/blocks/GT_Item_Glass1.java @@ -1,6 +1,12 @@ package gregtech.common.blocks; +import java.util.List; + import net.minecraft.block.Block; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; + +import gregtech.api.util.GT_LanguageManager; /** * The glass types are split into separate files because they are registered as regular blocks, and a regular block can @@ -9,7 +15,22 @@ import net.minecraft.block.Block; */ public class GT_Item_Glass1 extends GT_Item_Casings_Abstract { + protected final String chemicalGlassTooltip = GT_LanguageManager.addStringLocalization( + getUnlocalizedName() + ".0.tooltip", + "Able to resist the most extreme chemical conditions."); + protected final String hawkingGlassTooltip = GT_LanguageManager.addStringLocalization( + getUnlocalizedName() + ".4.tooltip", + "Controls the outward flow of Hawking Radiation to stabilize a black hole."); + public GT_Item_Glass1(Block block) { super(block); } + + @Override + public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List<String> aList, boolean aF3_H) { + switch (getDamage(aStack)) { + case 0 -> aList.add(chemicalGlassTooltip); + case 4 -> aList.add(hawkingGlassTooltip); + } + } } diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java index 17d0c13f03..f7463ae576 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java @@ -48,7 +48,410 @@ import static gregtech.client.GT_TooltipHandler.Tier.UV; import static gregtech.client.GT_TooltipHandler.Tier.UXV; import static gregtech.client.GT_TooltipHandler.Tier.ZPM; import static gregtech.client.GT_TooltipHandler.registerTieredTooltip; -import static gregtech.common.items.ID_MetaItem_01.*; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_EV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_EV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_IV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_IV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_LuV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_LuV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UEV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UEV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UHV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UHV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UIV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UIV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UMV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UMV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UxV; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_UxV_Full; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_ZPM; +import static gregtech.common.items.ID_MetaItem_01.BatteryHull_ZPM_Full; +import static gregtech.common.items.ID_MetaItem_01.Battery_Hull_HV; +import static gregtech.common.items.ID_MetaItem_01.Battery_Hull_LV; +import static gregtech.common.items.ID_MetaItem_01.Battery_Hull_MV; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_HV_Cadmium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_HV_Lithium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_HV_Sodium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_LV_Cadmium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_LV_Lithium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_LV_Sodium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_MV_Cadmium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_MV_Lithium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_MV_Sodium; +import static gregtech.common.items.ID_MetaItem_01.Battery_RE_ULV_Tantalum; +import static gregtech.common.items.ID_MetaItem_01.Battery_SU_HV_Mercury; +import static gregtech.common.items.ID_MetaItem_01.Battery_SU_HV_Sulfuric_Acid; +import static gregtech.common.items.ID_MetaItem_01.Battery_SU_LV_Mercury; +import static gregtech.common.items.ID_MetaItem_01.Battery_SU_LV_Sulfuric_Acid; +import static gregtech.common.items.ID_MetaItem_01.Battery_SU_MV_Mercury; +import static gregtech.common.items.ID_MetaItem_01.Battery_SU_MV_Sulfuric_Acid; +import static gregtech.common.items.ID_MetaItem_01.Black_Hole_Closer; +import static gregtech.common.items.ID_MetaItem_01.Black_Hole_Opener; +import static gregtech.common.items.ID_MetaItem_01.Book_Written_01; +import static gregtech.common.items.ID_MetaItem_01.Book_Written_02; +import static gregtech.common.items.ID_MetaItem_01.Book_Written_03; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Advanced; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Basic; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Board_Advanced; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Board_Basic; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Board_Elite; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Data; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Elite; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Good; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Master; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Parts_Advanced; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Parts_Crystal_Chip_Elite; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Parts_Crystal_Chip_Master; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Parts_Crystal_Chip_Wetware; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Parts_Wiring_Advanced; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Parts_Wiring_Basic; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Parts_Wiring_Elite; +import static gregtech.common.items.ID_MetaItem_01.Circuit_Primitive; +import static gregtech.common.items.ID_MetaItem_01.Component_Filter; +import static gregtech.common.items.ID_MetaItem_01.Component_Grinder_Diamond; +import static gregtech.common.items.ID_MetaItem_01.Component_Grinder_Tungsten; +import static gregtech.common.items.ID_MetaItem_01.Component_Minecraft_Wheels_Iron; +import static gregtech.common.items.ID_MetaItem_01.Component_Minecraft_Wheels_Steel; +import static gregtech.common.items.ID_MetaItem_01.Component_Sawblade_Diamond; +import static gregtech.common.items.ID_MetaItem_01.Compressed_Fireclay; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_EV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_HV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_IV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_LV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_LuV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_MAX; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_MV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_UEV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_UHV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_UIV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_UMV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_UV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_UXV; +import static gregtech.common.items.ID_MetaItem_01.Conveyor_Module_ZPM; +import static gregtech.common.items.ID_MetaItem_01.Cover_ActivityDetector; +import static gregtech.common.items.ID_MetaItem_01.Cover_Chest_Advanced; +import static gregtech.common.items.ID_MetaItem_01.Cover_Chest_Basic; +import static gregtech.common.items.ID_MetaItem_01.Cover_Chest_Good; +import static gregtech.common.items.ID_MetaItem_01.Cover_Controller; +import static gregtech.common.items.ID_MetaItem_01.Cover_Crafting; +import static gregtech.common.items.ID_MetaItem_01.Cover_Drain; +import static gregtech.common.items.ID_MetaItem_01.Cover_EnergyDetector; +import static gregtech.common.items.ID_MetaItem_01.Cover_FLuidStorageMonitor; +import static gregtech.common.items.ID_MetaItem_01.Cover_FluidDetector; +import static gregtech.common.items.ID_MetaItem_01.Cover_FluidLimiter; +import static gregtech.common.items.ID_MetaItem_01.Cover_ItemDetector; +import static gregtech.common.items.ID_MetaItem_01.Cover_NeedsMaintenance; +import static gregtech.common.items.ID_MetaItem_01.Cover_PlayerDetector; +import static gregtech.common.items.ID_MetaItem_01.Cover_RedstoneReceiverExternal; +import static gregtech.common.items.ID_MetaItem_01.Cover_RedstoneReceiverInternal; +import static gregtech.common.items.ID_MetaItem_01.Cover_RedstoneTransmitterExternal; +import static gregtech.common.items.ID_MetaItem_01.Cover_RedstoneTransmitterInternal; |
