diff --git a/dependencies.gradle b/dependencies.gradle index 8231ca19770..c474909bc68 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -49,7 +49,7 @@ dependencies { compileOnlyApi('com.github.GTNewHorizons:ThaumicTinkerer:2.10.1:dev') compileOnlyApi("com.github.GTNewHorizons:Mobs-Info:0.4.6-GTNH:dev") - compileOnlyApi("com.github.GTNewHorizons:Navigator:1.0.12:dev") + compileOnlyApi("com.github.GTNewHorizons:Navigator:1.0.13:dev") implementation('com.github.GTNewHorizons:Baubles:1.0.4:dev') {transitive=false} // Required to prevent an older bauble api from Extra Utilities from loading first in the javac classpath compileOnly('com.github.GTNewHorizons:Baubles:1.0.4:dev') {transitive=false} diff --git a/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaBlastFurnace.java b/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaBlastFurnace.java index 3f5b053b961..12d36dd9448 100644 --- a/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaBlastFurnace.java +++ b/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaBlastFurnace.java @@ -36,6 +36,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; @@ -48,10 +49,13 @@ import bartworks.API.BorosilicateGlass; import bartworks.common.configs.Configuration; import bartworks.util.BWUtil; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTechAPI; import gregtech.api.enums.GTValues; import gregtech.api.enums.HeatingCoilLevel; import gregtech.api.enums.Materials; +import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -428,4 +432,10 @@ public boolean supportsBatchMode() { public boolean supportsVoidProtection() { return true; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_MEGA_BLAST_FURNACE_LOOP.resourceLocation; + } } diff --git a/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaVacuumFreezer.java b/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaVacuumFreezer.java index a24f5d4b7e3..fdc0a465cfe 100644 --- a/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaVacuumFreezer.java +++ b/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaVacuumFreezer.java @@ -37,6 +37,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; @@ -47,9 +48,12 @@ import com.gtnewhorizon.structurelib.structure.StructureDefinition; import bartworks.common.configs.Configuration; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTechAPI; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsUEVplus; +import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -530,4 +534,10 @@ public boolean supportsBatchMode() { public boolean supportsVoidProtection() { return true; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_MULTI_MEGA_VACUUM_FREEZER_LOOP.resourceLocation; + } } diff --git a/src/main/java/bartworks/system/material/Werkstoff.java b/src/main/java/bartworks/system/material/Werkstoff.java index 1c29d52a92c..d9b6b4503c2 100644 --- a/src/main/java/bartworks/system/material/Werkstoff.java +++ b/src/main/java/bartworks/system/material/Werkstoff.java @@ -1089,8 +1089,29 @@ public Werkstoff.Stats setQualityOverride(byte qualityOverride) { private double ebfGasRecipeTimeMultiplier = -1.0; private double ebfGasRecipeConsumedAmountMultiplier = 1.0; + private boolean autoGenerateBlastFurnaceRecipes = true; + private boolean autoGenerateVacuumFreezerRecipes = true; + float durMod = 1f; + public boolean autoGenerateBlastFurnaceRecipes() { + return autoGenerateBlastFurnaceRecipes; + } + + public boolean autoGenerateVacuumFreezerRecipes() { + return autoGenerateVacuumFreezerRecipes; + } + + public Werkstoff.Stats disableAutoGeneratedBlastFurnaceRecipes() { + autoGenerateBlastFurnaceRecipes = false; + return this; + } + + public Werkstoff.Stats disableAutoGeneratedVacuumFreezerRecipes() { + autoGenerateVacuumFreezerRecipes = false; + return this; + } + public float getDurMod() { return this.durMod; } diff --git a/src/main/java/bartworks/system/material/WerkstoffLoader.java b/src/main/java/bartworks/system/material/WerkstoffLoader.java index 38ccdc90972..5b485b99053 100644 --- a/src/main/java/bartworks/system/material/WerkstoffLoader.java +++ b/src/main/java/bartworks/system/material/WerkstoffLoader.java @@ -1049,6 +1049,7 @@ public static void setUp() { new Werkstoff.GenerationFeatures().onlyDust() .addMolten() .addMetalItems() + .addCraftingMetalWorkingItems() .enforceUnification(), 64, TextureSet.SET_METALLIC @@ -1236,6 +1237,7 @@ public static void setUp() { .onlyDust() .addMetalItems() .addMolten() + .addCraftingMetalWorkingItems() .enforceUnification(), 78, TextureSet.SET_METALLIC); diff --git a/src/main/java/bartworks/system/material/gtenhancement/PlatinumSludgeOverHaul.java b/src/main/java/bartworks/system/material/gtenhancement/PlatinumSludgeOverHaul.java index 9643afa172b..a21a9b5ae9c 100644 --- a/src/main/java/bartworks/system/material/gtenhancement/PlatinumSludgeOverHaul.java +++ b/src/main/java/bartworks/system/material/gtenhancement/PlatinumSludgeOverHaul.java @@ -80,6 +80,7 @@ import static gregtech.api.util.GTRecipeConstants.UniversalChemical; import static gtPlusPlus.api.recipe.GTPPRecipeMaps.alloyBlastSmelterRecipes; import static gtPlusPlus.api.recipe.GTPPRecipeMaps.quantumForceTransformerRecipes; +import static gtPlusPlus.api.recipe.GTPPRecipeMaps.vacuumFurnaceRecipes; import static gtPlusPlus.core.material.MaterialsAlloy.HELICOPTER; import static gtPlusPlus.core.material.MaterialsElements.STANDALONE.WHITE_METAL; import static tectech.recipe.TecTechRecipeMaps.eyeOfHarmonyRecipes; @@ -744,7 +745,8 @@ public static boolean isMapIgnored(RecipeMap map) { || map == eyeOfHarmonyRecipes || map == quantumForceTransformerRecipes || map == fluidExtractionRecipes - || map == alloyBlastSmelterRecipes; + || map == alloyBlastSmelterRecipes + || map == vacuumFurnaceRecipes; } public static String displayRecipe(GTRecipe recipe) { diff --git a/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java b/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java index e83af7ad46f..ab7a2167aa3 100644 --- a/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java +++ b/src/main/java/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java @@ -61,14 +61,14 @@ public void run(Werkstoff werkstoff) { List flOutputs = new ArrayList<>(); List stOutputs = new ArrayList<>(); HashMap> tracker = new HashMap<>(); + + Werkstoff.Stats werkstoffStats = werkstoff.getStats(); + int cells = 0; if (werkstoff.getGenerationFeatures() - .hasMixerRecipes() - || werkstoff.getStats() - .isElektrolysis() - || werkstoff.getStats() - .isCentrifuge() + .hasMixerRecipes() || werkstoffStats.isElektrolysis() + || werkstoffStats.isCentrifuge() || werkstoff.getGenerationFeatures() .hasChemicalRecipes()) { for (Pair container : werkstoff.getContents() @@ -182,8 +182,7 @@ public void run(Werkstoff werkstoff) { ItemStack input = werkstoff.get(dust); input.stackSize = werkstoff.getContents() .getKey(); - if (werkstoff.getStats() - .isElektrolysis()) { + if (werkstoffStats.isElektrolysis()) { GTRecipe tRecipe = new GTRecipe( true, new ItemStack[] { input, cells > 0 ? Materials.Empty.getCells(cells) : null }, @@ -195,11 +194,9 @@ public void run(Werkstoff werkstoff) { (int) Math.max( 1L, Math.abs( - werkstoff.getStats() - .getProtons() - / werkstoff.getContents() - .getValue() - .size())), + werkstoffStats.getProtons() / werkstoff.getContents() + .getValue() + .size())), Math.min( 4, werkstoff.getContents() @@ -210,8 +207,7 @@ public void run(Werkstoff werkstoff) { RecipeMaps.electrolyzerRecipes.add(tRecipe); RecipeMaps.electrolyzerNonCellRecipes.add(tRecipe); } - if (werkstoff.getStats() - .isCentrifuge()) { + if (werkstoffStats.isCentrifuge()) { RecipeMaps.centrifugeRecipes.add( new GTRecipe( true, @@ -224,11 +220,9 @@ public void run(Werkstoff werkstoff) { (int) Math.max( 1L, Math.abs( - werkstoff.getStats() - .getMass() - / werkstoff.getContents() - .getValue() - .size())), + werkstoffStats.getMass() / werkstoff.getContents() + .getValue() + .size())), Math.min( 4, werkstoff.getContents() @@ -247,11 +241,9 @@ public void run(Werkstoff werkstoff) { (int) Math.max( 1L, Math.abs( - werkstoff.getStats() - .getProtons() - / werkstoff.getContents() - .getValue() - .size())), + werkstoffStats.getProtons() / werkstoff.getContents() + .getValue() + .size())), Math.min( 4, werkstoff.getContents() @@ -272,11 +264,9 @@ public void run(Werkstoff werkstoff) { (int) Math.max( 1L, Math.abs( - werkstoff.getStats() - .getProtons() - / werkstoff.getContents() - .getValue() - .size()))) + werkstoffStats.getProtons() / werkstoff.getContents() + .getValue() + .size()))) .eut( Math.min( 4, @@ -304,11 +294,9 @@ public void run(Werkstoff werkstoff) { (int) Math.max( 1L, Math.abs( - werkstoff.getStats() - .getMass() - / werkstoff.getContents() - .getValue() - .size())), + werkstoffStats.getMass() / werkstoff.getContents() + .getValue() + .size())), Math.min( 4, werkstoff.getContents() @@ -327,11 +315,9 @@ public void run(Werkstoff werkstoff) { (int) Math.max( 1L, Math.abs( - werkstoff.getStats() - .getProtons() - / werkstoff.getContents() - .getValue() - .size())), + werkstoffStats.getProtons() / werkstoff.getContents() + .getValue() + .size())), Math.min( 4, werkstoff.getContents() @@ -384,112 +370,67 @@ public void run(Werkstoff werkstoff) { .eut(4) .addTo(packagerRecipes); - if (werkstoff.hasItemType(ingot) && !werkstoff.getStats() - .isBlastFurnace()) { + if (werkstoff.hasItemType(ingot) && !werkstoffStats.isBlastFurnace()) { GTModHandler.addSmeltingRecipe(werkstoff.get(dust), werkstoff.get(ingot)); GTModHandler.addSmeltingRecipe(werkstoff.get(dustTiny), werkstoff.get(nugget)); - } else if (werkstoff.hasItemType(ingot) && werkstoff.getStats() - .isBlastFurnace() - && werkstoff.getStats() - .getMeltingPoint() != 0) { - if (werkstoff.contains(WerkstoffLoader.ANAEROBE_SMELTING)) { - GTValues.RA.stdBuilder() - .itemInputs(werkstoff.get(dust), GTUtility.getIntegratedCircuit(11)) - .itemOutputs( - werkstoff.getStats() - .getMeltingPoint() < 1750 ? werkstoff.get(ingot) : werkstoff.get(ingotHot)) - .fluidInputs(Materials.Nitrogen.getGas(1000)) - .duration( - Math.max( - werkstoff.getStats() - .getMass() / 40L, - 1L) - * werkstoff.getStats() - .getMeltingPoint()) - .eut( - werkstoff.getStats() - .getMeltingVoltage()) - .metadata( - COIL_HEAT, - werkstoff.getStats() - .getMeltingPoint()) - .addTo(blastFurnaceRecipes); + } else if (werkstoff.hasItemType(ingot) && werkstoffStats.isBlastFurnace() + && werkstoffStats.getMeltingPoint() != 0 + && werkstoffStats.autoGenerateBlastFurnaceRecipes()) { + if (werkstoff.contains(WerkstoffLoader.ANAEROBE_SMELTING)) { + GTValues.RA.stdBuilder() + .itemInputs(werkstoff.get(dust), GTUtility.getIntegratedCircuit(11)) + .itemOutputs( + werkstoffStats.getMeltingPoint() < 1750 ? werkstoff.get(ingot) + : werkstoff.get(ingotHot)) + .fluidInputs(Materials.Nitrogen.getGas(1000)) + .duration(Math.max(werkstoffStats.getMass() / 40L, 1L) * werkstoffStats.getMeltingPoint()) + .eut(werkstoffStats.getMeltingVoltage()) + .metadata(COIL_HEAT, werkstoffStats.getMeltingPoint()) + .addTo(blastFurnaceRecipes); - } else if (werkstoff.contains(WerkstoffLoader.NOBLE_GAS_SMELTING)) { - GTValues.RA.stdBuilder() - .itemInputs(werkstoff.get(dust), GTUtility.getIntegratedCircuit(11)) - .itemOutputs( - werkstoff.getStats() - .getMeltingPoint() < 1750 ? werkstoff.get(ingot) : werkstoff.get(ingotHot)) - .fluidInputs(Materials.Argon.getGas(1000)) - .duration( - Math.max( - werkstoff.getStats() - .getMass() / 40L, - 1L) - * werkstoff.getStats() - .getMeltingPoint()) - .eut( - werkstoff.getStats() - .getMeltingVoltage()) - .metadata( - COIL_HEAT, - werkstoff.getStats() - .getMeltingPoint()) - .addTo(blastFurnaceRecipes); + } else if (werkstoff.contains(WerkstoffLoader.NOBLE_GAS_SMELTING)) { + GTValues.RA.stdBuilder() + .itemInputs(werkstoff.get(dust), GTUtility.getIntegratedCircuit(11)) + .itemOutputs( + werkstoffStats.getMeltingPoint() < 1750 ? werkstoff.get(ingot) + : werkstoff.get(ingotHot)) + .fluidInputs(Materials.Argon.getGas(1000)) + .duration(Math.max(werkstoffStats.getMass() / 40L, 1L) * werkstoffStats.getMeltingPoint()) + .eut(werkstoffStats.getMeltingVoltage()) + .metadata(COIL_HEAT, werkstoffStats.getMeltingPoint()) + .addTo(blastFurnaceRecipes); - } else { + } else { + GTValues.RA.stdBuilder() + .itemInputs(werkstoff.get(dust), GTUtility.getIntegratedCircuit(1)) + .itemOutputs( + werkstoffStats.getMeltingPoint() < 1750 ? werkstoff.get(ingot) + : werkstoff.get(ingotHot)) + .duration(Math.max(werkstoffStats.getMass() / 40L, 1L) * werkstoffStats.getMeltingPoint()) + .eut(werkstoffStats.getMeltingVoltage()) + .metadata(COIL_HEAT, werkstoffStats.getMeltingPoint()) + .addTo(blastFurnaceRecipes); + + if (werkstoffStats.getMeltingPoint() <= 1000) { GTValues.RA.stdBuilder() - .itemInputs(werkstoff.get(dust), GTUtility.getIntegratedCircuit(1)) - .itemOutputs( - werkstoff.getStats() - .getMeltingPoint() < 1750 ? werkstoff.get(ingot) : werkstoff.get(ingotHot)) + .itemInputs(werkstoff.get(dust)) + .itemOutputs(werkstoff.get(ingot)) .duration( - Math.max( - werkstoff.getStats() - .getMass() / 40L, - 1L) - * werkstoff.getStats() - .getMeltingPoint()) - .eut( - werkstoff.getStats() - .getMeltingVoltage()) - .metadata( - COIL_HEAT, - werkstoff.getStats() - .getMeltingPoint()) - .addTo(blastFurnaceRecipes); - - if (werkstoff.getStats() - .getMeltingPoint() <= 1000) { - GTValues.RA.stdBuilder() - .itemInputs(werkstoff.get(dust)) - .itemOutputs(werkstoff.get(ingot)) - .duration( - (int) Math.max( - werkstoff.getStats() - .getMass() / 40L, - 1L) * werkstoff.getStats() - .getMeltingPoint()) - .eut(0) - .metadata(ADDITIVE_AMOUNT, 9) - .addTo(primitiveBlastRecipes); - } + (int) Math.max(werkstoffStats.getMass() / 40L, 1L) + * werkstoffStats.getMeltingPoint()) + .eut(0) + .metadata(ADDITIVE_AMOUNT, 9) + .addTo(primitiveBlastRecipes); } } + } - if (werkstoff.getStats() - .isBlastFurnace() - && werkstoff.getStats() - .getMeltingPoint() > 1750) { + if (werkstoffStats.isBlastFurnace() && werkstoffStats.getMeltingPoint() > 1750 + && werkstoffStats.autoGenerateVacuumFreezerRecipes()) { GTValues.RA.stdBuilder() .itemInputs(werkstoff.get(ingotHot)) .itemOutputs(werkstoff.get(ingot)) - .duration( - (int) Math.max( - werkstoff.getStats() - .getMass() * 3L, - 1L)) + .duration((int) Math.max(werkstoffStats.getMass() * 3L, 1L)) .eut(TierEU.RECIPE_MV) .addTo(vacuumFreezerRecipes); } diff --git a/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java b/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java index 0c660845922..7eef5abfe56 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java @@ -24,6 +24,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -41,6 +42,8 @@ import com.gtnewhorizons.modularui.api.screen.UIBuildContext; import com.gtnewhorizons.modularui.common.widget.CycleButtonWidget; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import goodgenerator.api.recipe.GoodGeneratorRecipeMaps; import goodgenerator.client.GUI.GGUITextures; import goodgenerator.loader.Loaders; @@ -48,6 +51,7 @@ import gregtech.api.GregTechAPI; import gregtech.api.enums.GTValues; import gregtech.api.enums.Materials; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.interfaces.IIconContainer; @@ -528,4 +532,10 @@ public void getWailaBody(ItemStack itemStack, List currentTip, IWailaDat + EnumChatFormatting.RESET); } + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_MULTI_PRECISE_LOOP.resourceLocation; + } + } diff --git a/src/main/java/goodgenerator/items/GGMaterial.java b/src/main/java/goodgenerator/items/GGMaterial.java index f61aad5876b..ca26cfe986f 100644 --- a/src/main/java/goodgenerator/items/GGMaterial.java +++ b/src/main/java/goodgenerator/items/GGMaterial.java @@ -305,7 +305,9 @@ public class GGMaterial implements Runnable { .setRadioactive(true) .setDurOverride(180224) .setSpeedOverride(100f) - .setQualityOverride((byte) 11), + .setQualityOverride((byte) 11) + .disableAutoGeneratedBlastFurnaceRecipes() + .disableAutoGeneratedVacuumFreezerRecipes(), Werkstoff.Types.ELEMENT, new Werkstoff.GenerationFeatures().onlyDust() .addMolten() diff --git a/src/main/java/goodgenerator/loader/RecipeLoader.java b/src/main/java/goodgenerator/loader/RecipeLoader.java index c43ffb58c68..2b4d79c3f0d 100644 --- a/src/main/java/goodgenerator/loader/RecipeLoader.java +++ b/src/main/java/goodgenerator/loader/RecipeLoader.java @@ -1271,16 +1271,6 @@ public static void InitLoadRecipe() { .metadata(COIL_HEAT, 4600) .addTo(blastFurnaceRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - GGMaterial.extremelyUnstableNaquadah.get(OrePrefixes.dust, 1), - GTUtility.getIntegratedCircuit(1)) - .itemOutputs(GGMaterial.extremelyUnstableNaquadah.get(OrePrefixes.ingotHot)) - .duration(6 * MINUTES + 40 * SECONDS) - .eut(TierEU.RECIPE_ZPM) - .metadata(COIL_HEAT, 7000) - .addTo(blastFurnaceRecipes); - GTValues.RA.stdBuilder() .itemInputs(GGMaterial.extremelyUnstableNaquadah.get(OrePrefixes.ingotHot, 1)) .itemOutputs(GGMaterial.extremelyUnstableNaquadah.get(OrePrefixes.ingot, 1)) diff --git a/src/main/java/goodgenerator/loader/RecipeLoader2.java b/src/main/java/goodgenerator/loader/RecipeLoader2.java index 707c6fc11ac..1301ac97f53 100644 --- a/src/main/java/goodgenerator/loader/RecipeLoader2.java +++ b/src/main/java/goodgenerator/loader/RecipeLoader2.java @@ -104,14 +104,12 @@ public static void RecipeLoad() { .eut(TierEU.RECIPE_UHV) .addTo(assemblerRecipes); + CrackRecipeAdder.reAddBlastRecipe(GGMaterial.extremelyUnstableNaquadah, 8000, 122880, 7000, false); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.zircaloy2, 500, 480, 2800, true); - CrackRecipeAdder.reAddBlastRecipe(GGMaterial.zircaloy2, 513, 480, 2800, false); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.zircaloy4, 500, 480, 2800, true); - CrackRecipeAdder.reAddBlastRecipe(GGMaterial.zircaloy4, 513, 480, 2800, false); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.incoloy903, 1200, 1920, 3700, true); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.adamantiumAlloy, 2500, 1920, 5500, true); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.marM200, 200, 7680, 5000, true); - CrackRecipeAdder.reAddBlastRecipe(GGMaterial.marM200, 220, 7680, 5000, false); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.signalium, 1600, 30720, 4000, true); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.lumiium, 1600, 30720, 4000, true); CrackRecipeAdder.reAddBlastRecipe(GGMaterial.artheriumSn, 500, 122880, 6500, true); @@ -1334,6 +1332,7 @@ public static void RecipeLoad() { GTOreDictUnificator.get(OrePrefixes.cableGt02, Materials.Osmiridium, 2), GGMaterial.marM200.get(OrePrefixes.plateDouble, 2), GTOreDictUnificator.get(OrePrefixes.circuit, Materials.EV, 1), + MaterialsElements.getInstance().RUTHENIUM.getBolt(32), GTOreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Platinum, 8)) .fluidInputs(GGMaterial.zircaloy4.getMolten(576)) diff --git a/src/main/java/goodgenerator/util/MaterialFix.java b/src/main/java/goodgenerator/util/MaterialFix.java index 25c945f9fe6..065a01b223b 100644 --- a/src/main/java/goodgenerator/util/MaterialFix.java +++ b/src/main/java/goodgenerator/util/MaterialFix.java @@ -3,7 +3,6 @@ import static gregtech.api.recipe.RecipeMaps.benderRecipes; import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; import static gregtech.api.recipe.RecipeMaps.fluidSolidifierRecipes; -import static gregtech.api.recipe.RecipeMaps.hammerRecipes; import static gregtech.api.util.GTRecipeBuilder.SECONDS; import static gregtech.api.util.GTRecipeBuilder.TICKS; @@ -317,12 +316,5 @@ public static void addRecipeForMultiItems() { .addTo(benderRecipes); } } - Materials tUHV = Materials.Longasssuperconductornameforuhvwire; - GTValues.RA.stdBuilder() - .itemInputs(GTOreDictUnificator.get(OrePrefixes.stick, tUHV, 2)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.stickLong, tUHV, 1)) - .duration(Math.max(tUHV.getMass(), 1L) * TICKS) - .eut(TierEU.RECIPE_LV / 2) - .addTo(hammerRecipes); } } diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index 9b60b6846ac..95463122f1f 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -382,8 +382,6 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Nano = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Nano" , "Bio" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Collections.singletonList(new TC_AspectStack(TCAspects.ELECTRUM, 11))); public static Materials Piko = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Piko" , "Bio" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Collections.singletonList(new TC_AspectStack(TCAspects.ELECTRUM, 12))); - public static Materials Quantum = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Quantum" , "Bio" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Collections.singletonList(new TC_AspectStack(TCAspects.ELECTRUM, 13))); - /** * Aliases for the old style of tiered circuits diff --git a/src/main/java/gregtech/api/enums/MaterialsGTNH.java b/src/main/java/gregtech/api/enums/MaterialsGTNH.java index 12a53f6b860..8a3b7f96602 100644 --- a/src/main/java/gregtech/api/enums/MaterialsGTNH.java +++ b/src/main/java/gregtech/api/enums/MaterialsGTNH.java @@ -199,29 +199,6 @@ public MaterialsGTNH() { 1, 1, Dyes.dyeYellow); - public static Materials Quantum = new Materials( - -1, - TextureSet.SET_NONE, - 1.0F, - 0, - 0, - 0, - 255, - 255, - 255, - 0, - "Quantum", - "Quantum", - 0, - 0, - -1, - 0, - false, - false, - 1, - 1, - 1, - Dyes.dyeWhite); public static Materials Turquoise = new Materials( -1, TextureSet.SET_NONE, diff --git a/src/main/java/gregtech/api/enums/SoundResource.java b/src/main/java/gregtech/api/enums/SoundResource.java index eea2cf477e3..9de5c560159 100644 --- a/src/main/java/gregtech/api/enums/SoundResource.java +++ b/src/main/java/gregtech/api/enums/SoundResource.java @@ -78,6 +78,29 @@ public enum SoundResource { GT_SPRAYCAN_LOCK(244, GregTech.ID, "items.spraycan_lock"), GT_SPRAYCAN_UNLOCK(245, GregTech.ID, "items.spraycan_unlock"), + GT_MACHINES_BLACK_HOLE_COMPRESSOR(246, GregTech.ID, "machines.BlackHoleCompressorLoop"), + + GT_MACHINES_MULTI_PRECISE_LOOP(247, GregTech.ID, "machines.MTEPreciseAssembler"), + GT_MACHINES_MULTI_ORE_WASHER_PLANT_LOOP(248, GregTech.ID, "machines.MTEIndustrialWashPlant"), + GT_MACHINES_MULTI_MEGA_VACUUM_FREEZER_LOOP(249, GregTech.ID, "machines.MTEMegaVacuumFreezer"), + GT_MACHINES_MULTI_VACUUM_FREEZER_LOOP(250, GregTech.ID, "machines.MTEVacuumFreezer"), + GT_MACHINES_EXTREME_ENTITY_CRUSHER_LOOP(251, GregTech.ID, "machines.MTEExtremeEntityCrusher"), + GT_MACHINES_CUTTING_MACHINE_LOOP(252, GregTech.ID, "machines.MTEIndustrialCuttingMachine"), + GT_MACHINES_ARC_FURNACE_LOOP(253, GregTech.ID, "machines.MTEIndustrialArcFurnace"), + GT_MACHINES_MEGA_INDUSTRIAL_APIARY_LOOP(254, GregTech.ID, "machines.MTEMegaIndustrialApiary"), + GT_MACHINES_ALGAE_LOOP(255, GregTech.ID, "machines.MTEAlgaePondBase"), + GT_MACHINES_THERMAL_CENTRIFUGE_LOOP(256, GregTech.ID, "machines.MTEIndustrialThermalCentrifuge"), + GT_MACHINES_SIFTER_LOOP(257, GregTech.ID, "machines.MTEIndustrialSifter"), + GT_MACHINES_EYE_OF_HARMONY_LOOP(258, GregTech.ID, "machines.MTEEyeOfHarmony"), + GT_MACHINES_EBF_LOOP(259, GregTech.ID, "machines.MTEElectricBlastFurnace"), + GT_MACHINES_ADV_FREEZER_LOOP(260, GregTech.ID, "machines.MTEIndustrialVacuumFreezer"), + GT_MACHINES_GOD_FORGE_LOOP(261, GregTech.ID, "machines.MTEForgeOfGods"), + GT_MACHINES_MEGA_BLAST_FURNACE_LOOP(262, GregTech.ID, "machines.MTEMegaBlastFurnace"), + GT_MACHINES_OIL_DRILL_LOOP(263, GregTech.ID, "machines.MTEOilDrillBase"), + GT_MACHINES_QUANTUM_FORCE_TRANSFORMER_LOOP(264, GregTech.ID, "machines.MTEQuantumForceTransformer"), + GT_MACHINES_ADV_EBF_LOOP(265, GregTech.ID, "machines.MTEAdvEBF"), + GT_MACHINES_LARGE_TURBINES_LOOP(266, GregTech.ID, "machines.MTELargeTurbine"), + GUI_BUTTON_DOWN(-1, GregTech.ID, "gui.buttonDown"), GUI_BUTTON_UP(-1, GregTech.ID, "gui.buttonUp"), diff --git a/src/main/java/gregtech/api/recipe/RecipeMaps.java b/src/main/java/gregtech/api/recipe/RecipeMaps.java index 47060d088b9..197c15875d9 100644 --- a/src/main/java/gregtech/api/recipe/RecipeMaps.java +++ b/src/main/java/gregtech/api/recipe/RecipeMaps.java @@ -26,6 +26,7 @@ import java.util.Optional; import net.minecraft.init.Blocks; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -85,6 +86,7 @@ import gregtech.nei.formatter.FusionSpecialValueFormatter; import gregtech.nei.formatter.HeatingCoilSpecialValueFormatter; import gregtech.nei.formatter.SimpleSpecialValueFormatter; +import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.ModItems; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; import mods.railcraft.common.items.RailcraftToolItems; @@ -674,10 +676,6 @@ else if (Materials.PhasedIron.getMolten(1) .setInputs(aInput1, aInput2, coal.getBlocks(aCoalAmount)) .setOutputs(aOutput1, aOutput2, Materials.DarkAsh.getDust(aCoalAmount)) .setDuration(aDuration * 10); - coll.derive() - .setInputs(aInput1, aInput2, coal.getBlocks(aCoalAmount)) - .setOutputs(aOutput1, aOutput2, Materials.DarkAsh.getDust(aCoalAmount)) - .setDuration(aDuration * 10); } if (Railcraft.isModLoaded()) { coll.derive() @@ -685,6 +683,22 @@ else if (Materials.PhasedIron.getMolten(1) .setOutputs(aOutput1, aOutput2, Materials.Ash.getDust(aCoalAmount / 2)) .setDuration(aDuration * 20 / 3); } + ItemStack cactusCokeBlock = new ItemStack( + Item.getItemFromBlock(ModBlocks.blockCactusCoke), + aCoalAmount * 2, + 0); + ItemStack sugarCokeBlock = new ItemStack( + Item.getItemFromBlock(ModBlocks.blockSugarCoke), + aCoalAmount * 2, + 0); + coll.derive() + .setInputs(aInput1, aInput2, cactusCokeBlock) + .setOutputs(aOutput1, aOutput2, Materials.Ash.getDust(aCoalAmount * 2)) + .setDuration(aDuration * 20 / 3); + coll.derive() + .setInputs(aInput1, aInput2, sugarCokeBlock) + .setOutputs(aOutput1, aOutput2, Materials.Ash.getDust(aCoalAmount * 2)) + .setDuration(aDuration * 20 / 3); } return coll.getAll(); }) @@ -776,7 +790,6 @@ && isArrayEmptyOrNull(b.getFluidOutputs()) public static final RecipeMap chemicalReactorRecipes = RecipeMapBuilder .of("gt.recipe.chemicalreactor") .maxIO(2, 2, 1, 1) - .minInputs(1, 0) .slotOverlays((index, isFluid, isOutput, isSpecial) -> { if (isFluid) { if (isOutput) { diff --git a/src/main/java/gregtech/api/util/GTForestryCompat.java b/src/main/java/gregtech/api/util/GTForestryCompat.java index 379604205a1..ca61c955c7e 100644 --- a/src/main/java/gregtech/api/util/GTForestryCompat.java +++ b/src/main/java/gregtech/api/util/GTForestryCompat.java @@ -1,6 +1,5 @@ package gregtech.api.util; -import static gregtech.api.recipe.RecipeMaps.centrifugeNonCellRecipes; import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; import static gregtech.api.recipe.RecipeMaps.scannerFakeRecipes; import static gregtech.api.util.GTRecipeBuilder.SECONDS; @@ -16,6 +15,7 @@ import gregtech.api.enums.GTValues; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.enums.Mods; import gregtech.api.recipe.RecipeMaps; public class GTForestryCompat { @@ -132,8 +132,16 @@ public static void populateFakeNeiRecipes() { } public static void transferCentrifugeRecipes() { + ItemStack irradiatedComb = GTModHandler.getModItem(Mods.Forestry.ID, "beeCombs", 1, 9); + try { for (ICentrifugeRecipe tRecipe : RecipeManagers.centrifugeManager.recipes()) { + ItemStack input = tRecipe.getInput(); + + // Don't transfer GT recipes to centrifuge, those recipes are made already by ItemComb + if (input.getUnlocalizedName() + .contains("gt.comb")) continue; + if (irradiatedComb != null && input.isItemEqual(irradiatedComb)) continue; Map outputs = tRecipe.getAllProducts(); ItemStack[] tOutputs = new ItemStack[outputs.size()]; int[] tChances = new int[outputs.size()]; @@ -151,14 +159,6 @@ public static void transferCentrifugeRecipes() { .duration(6 * SECONDS + 8 * TICKS) .eut(5) .addTo(centrifugeRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(tRecipe.getInput()) - .itemOutputs(tOutputs) - .outputChances(tChances) - .duration(6 * SECONDS + 8 * TICKS) - .eut(5) - .addTo(centrifugeNonCellRecipes); } } catch (Throwable e) { if (GTValues.D1) { diff --git a/src/main/java/gregtech/common/WirelessComputationPacket.java b/src/main/java/gregtech/common/WirelessComputationPacket.java index 1b485a63c9a..e4d3fcb3282 100644 --- a/src/main/java/gregtech/common/WirelessComputationPacket.java +++ b/src/main/java/gregtech/common/WirelessComputationPacket.java @@ -4,8 +4,6 @@ import java.util.UUID; -import com.gtnewhorizon.structurelib.util.Vec3Impl; - import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.common.misc.spaceprojects.SpaceProjectManager; import tectech.mechanics.dataTransport.QuantumDataPacket; @@ -15,24 +13,33 @@ public class WirelessComputationPacket { public boolean wirelessEnabled = false; // The main idea: 'Clearing' the computation net advances the index and sets the computation stored - // for this index to zero. Uploading is always done to the current index, but data can be downloaded from - // both indices + // for this index to zero. Uploading is always done to the current index, downloading is always done from the + // other index. This is essentially just a double buffered computation storage. The reason for this is that + // every upload needs to be done before every download happens. private final long[] computationStored = new long[] { 0, 0 }; - private long computationDownloaded = 0; private int currentIndex = 0; + private long lastUpdateTick = -1; - public Vec3Impl controllerPosition = null; + private int uploadIndex() { + return currentIndex; + } - public long getTotalComputationStored() { - return computationStored[0] + computationStored[1]; + private int downloadIndex() { + return (currentIndex + 1) % 2; } - private long getAvailableComputationStored() { - return getTotalComputationStored() - computationDownloaded; + public long getAvailableComputationStored() { + return computationStored[downloadIndex()]; } private QuantumDataPacket download(long dataIn, long aTick) { - if (!wirelessEnabled || controllerPosition == null) return new QuantumDataPacket(0L); + if (!wirelessEnabled) return new QuantumDataPacket(0L); + + // If the net hasn't been updated yet this tick, make sure to do so + if (lastUpdateTick < aTick) { + this.update(); + lastUpdateTick = aTick; + } // If we have enough computation 'stored', download it // Note that this means that if you do not have enough computation to go to all @@ -40,34 +47,21 @@ private QuantumDataPacket download(long dataIn, long aTick) { // This also means that if you don't have enough computation for a hatch, it will not receive any computation // at all. This is also fine. if (getAvailableComputationStored() >= dataIn) { - computationDownloaded += dataIn; + computationStored[downloadIndex()] -= dataIn; return new QuantumDataPacket(dataIn); } else return new QuantumDataPacket(0L); } - private void update(IGregTechTileEntity entity, long aTick) { + private void update() { // The reason we want this complex index cycling system is because hatches may upload and download computation // in the same tick as the currently stored computation is cleared. To avoid interruptions, we want to // try to double buffer these updates. This means that we keep two computation values around, and every update - // we only clear one of them. Only the most recent entry can be used for uploading computation, but we allow - // downloading computation from both the current and the previous index. + // we only clear one of them. // Remove downloaded computation previous index (which is also the next index since there are only two), // then remove the leftover from current index. - int nextIndex = (currentIndex + 1) % 2; - long availableInPrevious = computationStored[nextIndex]; - // Clear stored computation for the next index, since we don't want to allow players to accumulate - // computation in their wireless network indefinitely. This would allow for cheesing research by passively - // banking computation and then setting the input hatch to a high value when the computation is needed. - computationStored[nextIndex] = 0; - if (computationDownloaded > availableInPrevious) { - long toDrainFromCurrent = computationDownloaded - availableInPrevious; - computationStored[currentIndex] -= toDrainFromCurrent; - } - // Reset our current tally of downloaded computation - computationDownloaded = 0; - // Now advance the current index to the next index - currentIndex = nextIndex; + computationStored[downloadIndex()] = 0; + currentIndex = (currentIndex + 1) % 2; } private void setWirelessEnabled(boolean wirelessEnabled) { @@ -75,8 +69,13 @@ private void setWirelessEnabled(boolean wirelessEnabled) { } private void upload(long dataOut, long aTick) { + // If the net hasn't been updated yet this tick, make sure to do so + if (lastUpdateTick < aTick) { + this.update(); + lastUpdateTick = aTick; + } // Store computation that is uploaded internally - computationStored[currentIndex] += dataOut; + computationStored[uploadIndex()] += dataOut; } public static QuantumDataPacket downloadData(UUID userId, long dataIn, long aTick) { @@ -87,26 +86,11 @@ public static void uploadData(UUID userId, long dataOut, long aTick) { getPacketByUserId(userId).upload(dataOut, aTick); } - public static void updatePacket(IGregTechTileEntity entity, long aTick) { - getPacketByUserId(entity.getOwnerUuid()).update(entity, aTick); - } - - public static boolean enableWirelessNetWork(IGregTechTileEntity entity) { - var packet = getPacketByUserId(entity.getOwnerUuid()); - Vec3Impl pos = new Vec3Impl(entity.getXCoord(), entity.getYCoord(), entity.getZCoord()); - if (packet.wirelessEnabled && packet.controllerPosition != null - && pos.compareTo(packet.controllerPosition) != 0) return false; + public static void enableWirelessNetWork(IGregTechTileEntity entity) { getPacketByUserId(entity.getOwnerUuid()).setWirelessEnabled(true); - if (packet.controllerPosition == null) { - packet.controllerPosition = new Vec3Impl(entity.getXCoord(), entity.getYCoord(), entity.getZCoord()); - } - return true; } public static void disableWirelessNetWork(IGregTechTileEntity entity) { - var packet = getPacketByUserId(entity.getOwnerUuid()); - Vec3Impl pos = new Vec3Impl(entity.getXCoord(), entity.getYCoord(), entity.getZCoord()); - if (packet.controllerPosition != null && packet.controllerPosition.compareTo(pos) != 0) return; getPacketByUserId(entity.getOwnerUuid()).setWirelessEnabled(false); } diff --git a/src/main/java/gregtech/common/WirelessDataStore.java b/src/main/java/gregtech/common/WirelessDataStore.java index 4016a2440bc..3276a7e6948 100644 --- a/src/main/java/gregtech/common/WirelessDataStore.java +++ b/src/main/java/gregtech/common/WirelessDataStore.java @@ -12,17 +12,28 @@ public class WirelessDataStore { - private final ArrayList dataSticks = new ArrayList<>(); + public static final long UPLOAD_TICK = 200; + public static final long DOWNLOAD_TICK = UPLOAD_TICK + 1; - public void clearData() { - dataSticks.clear(); - } + private long lastUploadTick = -1; + private long lastDownloadTick = -1; + private final ArrayList uploadedSticks = new ArrayList<>(); + private final ArrayList dataSticks = new ArrayList<>(); - public void uploadData(List sticks) { - dataSticks.addAll(sticks); + public void uploadData(List sticks, long tick) { + if (lastUploadTick < tick) { + uploadedSticks.clear(); + lastUploadTick = tick; + } + uploadedSticks.addAll(sticks); } - public List downloadData() { + public List downloadData(long tick) { + if (lastDownloadTick < tick) { + dataSticks.clear(); + dataSticks.addAll(uploadedSticks); + lastDownloadTick = tick; + } return dataSticks; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEElectricBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEElectricBlastFurnace.java index 4be6ddb70a2..be11e400fec 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEElectricBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEElectricBlastFurnace.java @@ -30,6 +30,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; @@ -39,10 +40,13 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.GTMod; import gregtech.api.GregTechAPI; import gregtech.api.enums.HeatingCoilLevel; import gregtech.api.enums.Materials; +import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.fluid.IFluidStore; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -395,4 +399,10 @@ public boolean supportsInputSeparation() { public boolean supportsBatchMode() { return true; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_EBF_LOOP.resourceLocation; + } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTELargeTurbine.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTELargeTurbine.java index e92cfead9cf..d23731d7e14 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTELargeTurbine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTELargeTurbine.java @@ -25,6 +25,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.IBlockAccess; import net.minecraftforge.common.util.ForgeDirection; @@ -41,7 +42,10 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.Dyes; +import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.items.MetaGeneratedTool; @@ -472,4 +476,10 @@ public int survivalConstruct(ItemStack stackSize, int elementBudget, ISurvivalBu if (mMachine) return -1; return survivialBuildPiece(STRUCTURE_PIECE_MAIN, stackSize, 2, 2, 1, elementBudget, env, false, true); } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_LARGE_TURBINES_LOOP.resourceLocation; + } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilDrillBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilDrillBase.java index b40e7e2d29c..35be525c51f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilDrillBase.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilDrillBase.java @@ -25,6 +25,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.ChunkCoordIntPair; import net.minecraft.world.chunk.Chunk; @@ -43,6 +44,8 @@ import com.gtnewhorizons.modularui.common.widget.SlotWidget; import com.gtnewhorizons.modularui.common.widget.TextWidget; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.IHatchElement; import gregtech.api.interfaces.ITexture; @@ -486,4 +489,10 @@ protected void drawTexts(DynamicPositionedColumn screenElements, SlotWidget inve public boolean supportsVoidProtection() { return true; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_OIL_DRILL_LOOP.resourceLocation; + } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEVacuumFreezer.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEVacuumFreezer.java index c2879e0ab71..bd2400b3a53 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEVacuumFreezer.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEVacuumFreezer.java @@ -15,13 +15,17 @@ import java.util.List; import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import com.google.common.collect.ImmutableList; import com.gtnewhorizon.structurelib.structure.IStructureElement; import com.gtnewhorizon.structurelib.structure.StructureUtility; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTechAPI; +import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.IHatchElement; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -159,4 +163,10 @@ public boolean supportsVoidProtection() { public boolean supportsBatchMode() { return true; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_MULTI_VACUUM_FREEZER_LOOP.resourceLocation; + } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/compressor/MTEBlackHoleCompressor.java b/src/main/java/gregtech/common/tileentities/machines/multi/compressor/MTEBlackHoleCompressor.java index ba1c38db405..edfa676b538 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/compressor/MTEBlackHoleCompressor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/compressor/MTEBlackHoleCompressor.java @@ -28,6 +28,8 @@ import javax.annotation.Nonnull; +import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.init.Blocks; @@ -48,9 +50,12 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTechAPI; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsUEVplus; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.ITexture; @@ -76,6 +81,7 @@ import gtPlusPlus.core.util.minecraft.PlayerUtils; import mcp.mobius.waila.api.IWailaConfigHandler; import mcp.mobius.waila.api.IWailaDataAccessor; +import tectech.thing.metaTileEntity.multi.base.SoundLoopAnyBlock; public class MTEBlackHoleCompressor extends MTEExtendedPowerMultiBlockBase implements ISurvivalConstructable { @@ -153,6 +159,9 @@ public class MTEBlackHoleCompressor extends MTEExtendedPowerMultiBlockBase 1) { + if (blackholeSoundLoop == null) { + ForgeDirection oppositeDirection = getDirection().getOpposite(); + int offsetX = 7 * oppositeDirection.offsetX; + int offsetY = 11; + int offsetZ = 7 * oppositeDirection.offsetZ; + + World world = Minecraft.getMinecraft().thePlayer.worldObj; + IGregTechTileEntity base = getBaseMetaTileEntity(); + + int x = base.getXCoord() + offsetX; + int y = base.getYCoord() + offsetY; + int z = base.getZCoord() + offsetZ; + + Block blockAtSoundLocation = world.getBlock(x, y, z); + if (blockAtSoundLocation == Blocks.air) return; + + int[] offset = { offsetX, offsetY, offsetZ }; + blackholeSoundLoop = new SoundLoopAnyBlock( + SoundResource.GT_MACHINES_BLACK_HOLE_COMPRESSOR.resourceLocation, + getBaseMetaTileEntity(), + false, + false, + offset, + Blocks.air); + Minecraft.getMinecraft() + .getSoundHandler() + .playSound(blackholeSoundLoop); + } + } else { + if (blackholeSoundLoop != null) { + blackholeSoundLoop = null; + } + } + } + @Override public byte getUpdateData() { return blackHoleStatus; @@ -544,13 +591,16 @@ public boolean onRunningTick(ItemStack aStack) { mOutputItems = null; mOutputFluids = null; } + return super.onRunningTick(aStack); } @Override public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { super.onPostTick(aBaseMetaTileEntity, aTick); - + if (!aBaseMetaTileEntity.isServerSide()) { + playBlackHoleSounds(); + } if (aTick % 20 == 0) { if (blackHoleStatus == 2) { if (blackHoleStability >= 0) { diff --git a/src/main/java/gregtech/loaders/materials/MaterialsInit1.java b/src/main/java/gregtech/loaders/materials/MaterialsInit1.java index 66cd413027a..7ab2655b0c9 100644 --- a/src/main/java/gregtech/loaders/materials/MaterialsInit1.java +++ b/src/main/java/gregtech/loaders/materials/MaterialsInit1.java @@ -234,7 +234,7 @@ public static void load() { Materials.Silicon = new Materials( 20, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 60, 60, 80, 0, "Silicon" , "Raw Silicon" , 0, 0, 2273, 2273, true, false, 1, 1, 1, Dyes.dyeBlack , Element.Si , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.TENEBRAE, 1))); Materials.Silver = new Materials( 54, TextureSet.SET_SHINY , 10.0F, 64, 2, 1|2 |8 |32|64|128 , 220, 220, 255, 0, "Silver" , "Silver" , 0, 0, 1234, 0, false, false, 3, 1, 1, Dyes.dyeLightGray , Element.Ag , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.LUCRUM, 1))); Materials.Sodium = new Materials( 17, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |16|32 , 0, 0, 150, 0, "Sodium" , "Sodium" , 0, 0, 370, 0, false, false, 1, 1, 1, Dyes.dyeBlue , Element.Na , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.VITREUS, 2), new TCAspects.TC_AspectStack(TCAspects.LUX, 1))); - Materials.Strontium = new Materials( 44, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |8 |32 , 200, 200, 200, 0, "Strontium" , "Strontium" , 0, 0, 1050, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Element.Sr , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.STRONTIO, 1))); + Materials.Strontium = new Materials( 44, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 |128 , 200, 200, 200, 0, "Strontium" , "Strontium" , 0, 0, 1050, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Element.Sr , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.STRONTIO, 1))); Materials.Sulfur = new Materials( 22, TextureSet.SET_DULL , 1.0F, 0, 2, 1 |8 |32 , 200, 200, 0, 0, "Sulfur" , "Sulfur" , 0, 0, 388, 0, false, false, 2, 1, 1, Dyes.dyeYellow , Element.S , Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.IGNIS, 1))); Materials.Tantalum = new Materials( 80, TextureSet.SET_SHINY , 6.0F, 2560, 3, 1|2 |8 |32 , 105, 183, 255, 0, "Tantalum" , "Tantalum" , 0, 0, 3290, 3290, true, false, 4, 1, 1, Dyes._NULL , Element.Ta , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.VINCULUM, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.Tellurium = new Materials( 59, TextureSet.SET_DULL , 1.0F, 0, 2, 1|2 |8 |32 , 206, 277, 86, 0, "Tellurium" , "Tellurium" , 0, 0, 722, 0, false, false, 4, 1, 1, Dyes.dyeGray , Element.Te , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.RADIO, 1))); @@ -243,7 +243,7 @@ public static void load() { Materials.Thulium = new Materials( 76, TextureSet.SET_SHINY , 1.0F, 0, 2, 1|2 |8 |32 , 89, 107, 194, 0, "Thulium" , "Thulium" , 0, 0, 1818, 1818, true, false, 4, 1, 1, Dyes._NULL , Element.Tm , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.RADIO, 1))); Materials.Tin = new Materials( 57, TextureSet.SET_DULL , 1.0F, 0, 3, 1|2 |8 |32 |128 , 220, 220, 220, 0, "Tin" , "Tin" , 0, 0, 505, 505, false, false, 3, 1, 1, Dyes.dyeWhite , Element.Sn , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.VITREUS, 1))); Materials.Titanium = new Materials( 28, TextureSet.SET_METALLIC , 7.0F, 1600, 3, 1|2 |8 |32|64|128 , 220, 160, 240, 0, "Titanium" , "Titanium" , 0, 0, 1941, 1940, true, false, 5, 1, 1, Dyes.dyePurple , Element.Ti , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.TUTAMEN, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Tritanium = new Materials( 329, TextureSet.SET_METALLIC , 20.0F,1435392, 6, 1|2 |8 |32|64 , 96, 0, 0, 0, "Tritanium" , "Tritanium" , 0, 0, 9900, 9900, true, false, 1, 1, 1, Dyes.dyeWhite , Element.Tn ,Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.ORDO, 2))).disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Tritanium = new Materials( 329, TextureSet.SET_METALLIC , 20.0F,1435392, 6, 1|2 |8 |32|64 , 96, 0, 0, 0, "Tritanium" , "Tritanium" , 0, 0, 9900, 9900, true, false, 1, 1, 1, Dyes.dyeWhite , Element.Tn ,Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.ORDO, 2))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.Tritium = new Materials( 3, TextureSet.SET_METALLIC , 1.0F, 0, 2, 16|32 , 255, 0, 0, 240, "Tritium" , "Tritium" , 0, 0, 14, 0, false, true, 10, 1, 1, Dyes.dyeRed , Element.T , Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.AQUA, 4))); Materials.Tungsten = new Materials( 81, TextureSet.SET_METALLIC , 7.0F, 2560, 3, 1|2 |8 |32|64|128 , 50, 50, 50, 0, "Tungsten" , "Tungsten" , 0, 0, 3695, 3000, true, false, 4, 1, 1, Dyes.dyeBlack , Element.W , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 3), new TCAspects.TC_AspectStack(TCAspects.TUTAMEN, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.Uranium = new Materials( 98, TextureSet.SET_METALLIC , 6.0F, 512, 3, 1|2 |8 |32|64 , 50, 240, 50, 0, "Uranium" , "Uranium 238" , 0, 0, 1405, 0, false, false, 4, 1, 1, Dyes.dyeGreen , Element.U , Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.RADIO, 1))); @@ -530,7 +530,7 @@ public static void load() { Materials.Cooperite = new Materials( 828, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1 |8 , 255, 255, 200, 0, "Cooperite" , "Sheldonite" , 0, 0, -1, 0, false, false, 5, 1, 1, Dyes.dyeYellow , 2, Arrays.asList(new MaterialStack(Platinum, 3), new MaterialStack(Nickel, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Palladium, 1))); Materials.Cupronickel = new Materials( 310, TextureSet.SET_METALLIC , 6.0F, 64, 1, 1|2 |64 , 227, 150, 128, 0, "Cupronickel" , "Cupronickel" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange , 2, Arrays.asList(new MaterialStack(Copper, 1), new MaterialStack(Nickel, 1))); Materials.DarkAsh = new Materials( 816, TextureSet.SET_DULL , 1.0F, 0, 1, 1 , 50, 50, 50, 0, "DarkAsh" , "Dark Ashes" , 0, 0, -1, 0, false, false, 1, 2, 1, Dyes.dyeGray , 1, Collections.singletonList(new MaterialStack(Carbon, 1)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.IGNIS, 1), new TCAspects.TC_AspectStack(TCAspects.PERDITIO, 1))); - Materials.DeepIron = new Materials( 829, TextureSet.SET_METALLIC , 6.0F, 384, 2, 1|2 |8 |64 , 150, 140, 140, 0, "DeepIron" , "Deep Iron" , 0, 0, 7500, 7500, true, false, 3, 1, 1, Dyes.dyePink , 2, Collections.singletonList(new MaterialStack(Iron, 1)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.MAGNETO, 1))).disableAutoGeneratedVacuumFreezerRecipe(); + Materials.DeepIron = new Materials( 829, TextureSet.SET_METALLIC , 6.0F, 384, 2, 1|2 |8 |64 , 150, 140, 140, 0, "DeepIron" , "Deep Iron" , 0, 0, 7500, 7500, true, false, 3, 1, 1, Dyes.dyePink , 2, Collections.singletonList(new MaterialStack(Iron, 1)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.MAGNETO, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.Diamond = new Materials( 500, TextureSet.SET_DIAMOND , 8.0F, 1280, 4, 1 |4|8 |64|128 , 200, 255, 255, 127, "Diamond" , "Diamond" , 0, 0, -1, 0, false, true, 5, 64, 1, Dyes.dyeWhite , 1, Collections.singletonList(new MaterialStack(Carbon, 1)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.VITREUS, 3), new TCAspects.TC_AspectStack(TCAspects.LUCRUM, 4))); Materials.Electrum = new Materials( 303, TextureSet.SET_SHINY , 12.0F, 64, 2, 1|2 |8 |64|128 , 255, 255, 100, 0, "Electrum" , "Electrum" , 0, 0, -1, 0, false, false, 4, 1, 1, Dyes.dyeYellow , 2, Arrays.asList(new MaterialStack(Silver, 1), new MaterialStack(Gold, 1))); Materials.Emerald = new Materials( 501, TextureSet.SET_EMERALD , 7.0F, 256, 4, 1 |4|8 |64 , 80, 255, 80, 127, "Emerald" , "Emerald" , 0, 0, -1, 0, false, true, 5, 1, 1, Dyes.dyeGreen , 0, Arrays.asList(new MaterialStack(Beryllium, 3), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 6), new MaterialStack(Oxygen, 18)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.VITREUS, 3), new TCAspects.TC_AspectStack(TCAspects.LUCRUM, 5))); @@ -711,7 +711,7 @@ public static void load() { Materials.IndiumGalliumPhosphide = new Materials( 981, TextureSet.SET_DULL , 1.0F, 0, 1, 1|2 , 160, 140, 190, 0, "IndiumGalliumPhosphide" , "Indium Gallium Phosphide" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , 2, Arrays.asList(new MaterialStack(Indium, 1), new MaterialStack(Gallium, 1), new MaterialStack(Phosphorus, 1))); Materials.Spessartine = new Materials( 838, TextureSet.SET_DULL , 1.0F, 0, 2, 1 |8 , 255, 100, 100, 0, "Spessartine" , "Spessartine" , 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeRed , 0, Arrays.asList(new MaterialStack(Aluminium, 2), new MaterialStack(Manganese, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12))); Materials.Sphalerite = new Materials( 839, TextureSet.SET_DULL , 1.0F, 0, 1, 1 |8 , 255, 255, 255, 0, "Sphalerite" , "Sphalerite" , 0, 0, -1, 0, false, false, 2, 1, 1, Dyes.dyeYellow , 1, Arrays.asList(new MaterialStack(Zinc, 1), new MaterialStack(Sulfur, 1))); - Materials.StainlessSteel = new Materials( 306, TextureSet.SET_SHINY , 7.0F, 480, 4, 1|2 |64|128 , 200, 200, 220, 0, "StainlessSteel" , "Stainless Steel" , 0, 0, -1, 1700, true, false, 1, 1, 1, Dyes.dyeWhite , 1, Arrays.asList(new MaterialStack(Iron, 6), new MaterialStack(Chrome, 1), new MaterialStack(Manganese, 1), new MaterialStack(Nickel, 1))); + Materials.StainlessSteel = new Materials( 306, TextureSet.SET_SHINY , 7.0F, 480, 4, 1|2 |64|128 , 200, 200, 220, 0, "StainlessSteel" , "Stainless Steel" , 0, 0, -1, 1700, true, false, 1, 1, 1, Dyes.dyeWhite , 1, Arrays.asList(new MaterialStack(Iron, 6), new MaterialStack(Chrome, 1), new MaterialStack(Manganese, 1), new MaterialStack(Nickel, 1))).disableAutoGeneratedBlastFurnaceRecipes(); Materials.Steel = new Materials( 305, TextureSet.SET_METALLIC , 6.0F, 512, 3, 1|2 |64|128 , 128, 128, 128, 0, "Steel" , "Steel" , 0, 0, 1811, 1000, true, false, 4, 51, 50, Dyes.dyeGray , 1, Arrays.asList(new MaterialStack(Iron, 50), new MaterialStack(Carbon, 1)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.ORDO, 1))); Materials.Stibnite = new Materials( 945, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |8 , 70, 70, 70, 0, "Stibnite" , "Stibnite" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeWhite , 2, Arrays.asList(new MaterialStack(Antimony, 2), new MaterialStack(Sulfur, 3))); Materials.SulfuricAcid = new Materials( 720, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 255, 128, 0, 0, "SulfuricAcid" , "Sulfuric Acid" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange , 1, Arrays.asList(new MaterialStack(Hydrogen, 2), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4))); @@ -763,8 +763,8 @@ public static void load() { Materials.BlackBronze = new Materials( 352, TextureSet.SET_DULL , 12.0F, 256, 2, 1|2 |64|128 , 100, 50, 125, 0, "BlackBronze" , "Black Bronze" , 0, 0, -1, 2000, true, false, 4, 1, 1, Dyes.dyePurple , 2, Arrays.asList(new MaterialStack(Gold, 1), new MaterialStack(Silver, 1), new MaterialStack(Copper, 3))); Materials.BismuthBronze = new Materials( 353, TextureSet.SET_DULL , 8.0F, 256, 2, 1|2 |64|128 , 100, 125, 125, 0, "BismuthBronze" , "Bismuth Bronze" , 0, 0, -1, 1100, true, false, 4, 1, 1, Dyes.dyeCyan , 2, Arrays.asList(new MaterialStack(Bismuth, 1), new MaterialStack(Zinc, 1), new MaterialStack(Copper, 3))); Materials.BlackSteel = new Materials( 334, TextureSet.SET_METALLIC , 6.5F, 768, 3, 1|2 |64|128 , 100, 100, 100, 0, "BlackSteel" , "Black Steel" , 0, 0, -1, 1200, true, false, 4, 1, 1, Dyes.dyeBlack , 2, Arrays.asList(new MaterialStack(Nickel, 1), new MaterialStack(BlackBronze, 1), new MaterialStack(Steel, 3))).disableAutoGeneratedBlastFurnaceRecipes(); - Materials.RedSteel = new Materials( 348, TextureSet.SET_METALLIC , 7.0F, 896, 4, 1|2 |64|128 , 140, 100, 100, 0, "RedSteel" , "Red Steel" , 0, 0, -1, 1300, true, false, 4, 1, 1, Dyes.dyeRed , 2, Arrays.asList(new MaterialStack(SterlingSilver, 1), new MaterialStack(BismuthBronze, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4))); - Materials.BlueSteel = new Materials( 349, TextureSet.SET_METALLIC , 7.5F, 1024, 4, 1|2 |64|128 , 100, 100, 140, 0, "BlueSteel" , "Blue Steel" , 0, 0, -1, 1400, true, false, 4, 1, 1, Dyes.dyeBlue , 2, Arrays.asList(new MaterialStack(RoseGold, 1), new MaterialStack(Brass, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4))); + Materials.RedSteel = new Materials( 348, TextureSet.SET_METALLIC , 7.0F, 896, 4, 1|2 |64|128 , 140, 100, 100, 0, "RedSteel" , "Red Steel" , 0, 0, -1, 1300, true, false, 4, 1, 1, Dyes.dyeRed , 2, Arrays.asList(new MaterialStack(SterlingSilver, 1), new MaterialStack(BismuthBronze, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4))).disableAutoGeneratedBlastFurnaceRecipes(); + Materials.BlueSteel = new Materials( 349, TextureSet.SET_METALLIC , 7.5F, 1024, 4, 1|2 |64|128 , 100, 100, 140, 0, "BlueSteel" , "Blue Steel" , 0, 0, -1, 1400, true, false, 4, 1, 1, Dyes.dyeBlue , 2, Arrays.asList(new MaterialStack(RoseGold, 1), new MaterialStack(Brass, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4))).disableAutoGeneratedBlastFurnaceRecipes(); Materials.DamascusSteel = new Materials( 335, TextureSet.SET_METALLIC , 8.0F, 1280, 3, 1|2 |64|128 , 110, 110, 110, 0, "DamascusSteel" , "Damascus Steel" , 0, 0, 2000, 1500, true, false, 4, 1, 1, Dyes.dyeGray , 2, Collections.singletonList(new MaterialStack(Steel, 1))).disableAutoGeneratedBlastFurnaceRecipes(); Materials.TungstenSteel = new Materials( 316, TextureSet.SET_METALLIC , 8.0F, 2560, 4, 1|2 |64|128 , 100, 100, 160, 0, "TungstenSteel" , "Tungstensteel" , 0, 0, 4000, 4000, true, false, 4, 1, 1, Dyes.dyeBlue , 2, Arrays.asList(new MaterialStack(Steel, 1), new MaterialStack(Tungsten, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.NitroCoalFuel = new Materials( -1, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 50, 70, 50, 0, "NitroCoalFuel" , "Nitro-Coalfuel" , 0, 48, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlack , 0, Arrays.asList(new MaterialStack(Glyceryl, 1), new MaterialStack(CoalFuel, 4))); @@ -824,7 +824,7 @@ public static void load() { Materials.SteelMagnetic = new Materials( 355, TextureSet.SET_MAGNETIC , 6.0F, 512, 3, 1|2 |64|128 , 128, 128, 128, 0, "SteelMagnetic" , "Magnetic Steel" , 0, 0, 1000, 1000, true, false, 4, 51, 50, Dyes.dyeGray , 1, Collections.singletonList(new MaterialStack(Steel, 1)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 1), new TCAspects.TC_AspectStack(TCAspects.ORDO, 1), new TCAspects.TC_AspectStack(TCAspects.MAGNETO, 1))); Materials.NeodymiumMagnetic = new Materials( 356, TextureSet.SET_MAGNETIC , 7.0F, 512, 2, 1|2 |64|128 , 100, 100, 100, 0, "NeodymiumMagnetic" , "Magnetic Neodymium" , 0, 0, 1297, 1297, true, false, 4, 51, 50, Dyes.dyeGray , 1, Collections.singletonList(new MaterialStack(Neodymium, 1)), Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 1), new TCAspects.TC_AspectStack(TCAspects.MAGNETO, 3))); Materials.SamariumMagnetic = new Materials( 399, TextureSet.SET_MAGNETIC , 1.0F, 0, 2, 1|2 |64|128 , 255, 255, 204, 0, "SamariumMagnetic" , "Magnetic Samarium" , 0, 0, 1345, 1345, true, false, 4, 1, 1, Dyes.dyeWhite , 1, Collections.singletonList(new MaterialStack(Samarium, 1)),Arrays.asList(new TCAspects.TC_AspectStack(TCAspects.METALLUM, 2), new TCAspects.TC_AspectStack(TCAspects.RADIO, 1), new TCAspects.TC_AspectStack(TCAspects.MAGNETO,10))); - Materials.TungstenCarbide = new Materials( 370, TextureSet.SET_METALLIC , 14.0F, 1280, 4, 1|2 |64|128 , 51, 0, 102, 0, "TungstenCarbide" , "Tungstencarbide" , 0, 0, 2460, 2460, true, false, 4, 1, 1, Dyes.dyeBlack , 2, Arrays.asList(new MaterialStack(Tungsten, 1), new MaterialStack(Carbon, 1))).disableAutoGeneratedVacuumFreezerRecipe(); + Materials.TungstenCarbide = new Materials( 370, TextureSet.SET_METALLIC , 14.0F, 1280, 4, 1|2 |64|128 , 51, 0, 102, 0, "TungstenCarbide" , "Tungstencarbide" , 0, 0, 2460, 2460, true, false, 4, 1, 1, Dyes.dyeBlack , 2, Arrays.asList(new MaterialStack(Tungsten, 1), new MaterialStack(Carbon, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.VanadiumSteel = new Materials( 371, TextureSet.SET_METALLIC , 3.0F, 1920, 3, 1|2 |64|128 , 192, 192, 192, 0, "VanadiumSteel" , "Vanadiumsteel" , 0, 0, 1453, 1453, true, false, 4, 1, 1, Dyes.dyeWhite , 2, Arrays.asList(new MaterialStack(Vanadium, 1), new MaterialStack(Chrome, 1), new MaterialStack(Steel, 7))).disableAutoGeneratedBlastFurnaceRecipes(); Materials.HSSG = new Materials( 372, TextureSet.SET_METALLIC , 10.0F, 4000, 3, 1|2 |64|128 , 153, 153, 0, 0, "HSSG" , "HSS-G" , 0, 0, 4500, 4500, true, false, 4, 1, 1, Dyes.dyeYellow , 2, Arrays.asList(new MaterialStack(TungstenSteel, 5), new MaterialStack(Chrome, 1), new MaterialStack(Molybdenum, 2), new MaterialStack(Vanadium, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.HSSE = new Materials( 373, TextureSet.SET_METALLIC , 32.0F, 10240, 7, 1|2 |64|128 , 51, 102, 0, 0, "HSSE" , "HSS-E" , 0, 0, 5400, 5400, true, false, 4, 1, 1, Dyes.dyeGreen , 2, Arrays.asList(new MaterialStack(HSSG, 6), new MaterialStack(Cobalt, 1),new MaterialStack(Manganese, 1), new MaterialStack(Silicon, 1))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); @@ -869,7 +869,7 @@ public static void load() { Materials.Shadow = new Materials( 368, TextureSet.SET_METALLIC , 32.0F, 8192, 4, 1|2 |8 |64|128 , 16, 3, 66, 0, "Shadow" , "Shadow Metal" , 0, 0, 1800, 1800, true, false, 3, 4, 3, Dyes.dyeBlue ); Materials.Ledox = new Materials( 390, TextureSet.SET_SHINY , 15.0F, 1024, 4, 1|2 |8 |64|128 , 0, 116, 255, 0, "Ledox" , "Ledox" , 0, 0, -1, 0, false, false, 4, 1, 1, Dyes.dyeBlue ); - Materials.Quantium = new Materials( 391, TextureSet.SET_SHINY , 18.0F, 2048, 4, 1|2 |8 |64|128 , 0, 209, 11, 0, "Quantium" , "Quantium" , 0, 0, 9900, 9900, true, false, 4, 1, 1, Dyes.dyeLime ).disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Quantium = new Materials( 391, TextureSet.SET_SHINY , 18.0F, 2048, 4, 1|2 |8 |64|128 , 0, 209, 11, 0, "Quantium" , "Quantium" , 0, 0, 9900, 9900, true, false, 4, 1, 1, Dyes.dyeLime ).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.Mytryl = new Materials( 387, TextureSet.SET_SHINY , 8.0F, 512, 4, 1|2 |8 |64|128 , 242, 100, 4, 0, "Mytryl" , "Mytryl" , 0, 0, 3600, 3600, true, false, 4, 1, 1, Dyes.dyeOrange ); Materials.BlackPlutonium = new Materials( 388, TextureSet.SET_DULL , 36.0F, 8192, 8, 1|2 |8 |64|128 , 50, 50, 50, 0, "BlackPlutonium" , "Black Plutonium" , 0, 0, 9000, 9000, true, false, 4, 1, 1, Dyes.dyeBlack ).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.CallistoIce = new Materials( 389, TextureSet.SET_SHINY , 9.0F, 1024, 4, 1|2 |8 |64|128 , 30, 177, 255, 0, "CallistoIce" , "Callisto Ice" , 0, 0, -1, 0, false, false, 4, 1, 1, Dyes.dyeLightBlue ); @@ -900,24 +900,24 @@ public static void load() { Materials.ShadowSteel = new Materials( 337, TextureSet.SET_METALLIC , 6.0F, 768, 4, 1|2 |64 , 90, 90, 90, 0, "ShadowSteel" , "Shadow Steel" , 0, 0, -1, 1700, true, false, 4, 4, 3, Dyes.dyeBlack , 2, Arrays.asList(new MaterialStack(Steel, 1), new MaterialStack(Thaumium, 3))); Materials.AstralSilver = new Materials( 333, TextureSet.SET_SHINY , 10.0F, 64, 2, 1|2 |64 , 230, 230, 255, 0, "AstralSilver" , "Astral Silver" , 0, 0, -1, 0, false, false, 4, 3, 2, Dyes.dyeWhite , 2, Arrays.asList(new MaterialStack(Silver, 2), new MaterialStack(Thaumium, 1))); - Materials.InfinityCatalyst = new Materials( 394, TextureSet.SET_SHINY , 64.0F,1310720, 10, 1|2 |8 |64|128 , 255, 255, 255, 0, "InfinityCatalyst" , "Infinity Catalyst" , 5, 500000, 10800, 10800, true, false, 20, 1, 1, Dyes.dyeLightGray ).setProcessingMaterialTierEU(TierEU.RECIPE_UV).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Infinity = new Materials( 397, new TextureSet("infinity", true), 256.0F,2621440, 17, 1|2|32|64|128 , 255, 255, 255, 0, "Infinity" , "Infinity" , 5, 5000000, 10800, 10800, true, false, 40, 1, 1, Dyes.dyeLightGray ).setProcessingMaterialTierEU(TierEU.RECIPE_UV).disableAutoGeneratedVacuumFreezerRecipe().setHasCorrespondingPlasma(true); - Materials.Bedrockium = new MaterialBuilder(395,TextureSet.SET_DULL, "Bedrockium").addOreItems().addDustItems().addPlasma().addMetalItems().setDurability(327680).setToolSpeed(8f).setToolQuality(9).setRGB(50,50,50).setName("Bedrockium").setBlastFurnaceRequired(true).setBlastFurnaceTemp(9900).setMeltingPoint(9900).setMaterialList(new MaterialStack(Materials.SiliconDioxide, 26244), new MaterialStack(Materials.Diamond, 9)).setColor(Dyes.dyeBlack).setOreValue(4).setDensityDivider(1).setDensityMultiplier(1).constructMaterial().setProcessingMaterialTierEU(TierEU.RECIPE_EV).disableAutoGeneratedVacuumFreezerRecipe().setHasCorrespondingPlasma(true); + Materials.InfinityCatalyst = new Materials( 394, TextureSet.SET_SHINY , 64.0F,1310720, 10, 1|2 |8 |64|128 , 255, 255, 255, 0, "InfinityCatalyst" , "Infinity Catalyst" , 5, 500000, 10800, 10800, true, false, 20, 1, 1, Dyes.dyeLightGray ).setProcessingMaterialTierEU(TierEU.RECIPE_UV).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Infinity = new Materials( 397, new TextureSet("infinity", true), 256.0F,2621440, 17, 1|2|32|64|128 , 255, 255, 255, 0, "Infinity" , "Infinity" , 5, 5000000, 10800, 10800, true, false, 40, 1, 1, Dyes.dyeLightGray ).setProcessingMaterialTierEU(TierEU.RECIPE_UV).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe().setHasCorrespondingPlasma(true); + Materials.Bedrockium = new MaterialBuilder(395,TextureSet.SET_DULL, "Bedrockium").addOreItems().addDustItems().addPlasma().addMetalItems().setDurability(327680).setToolSpeed(8f).setToolQuality(9).setRGB(50,50,50).setName("Bedrockium").setBlastFurnaceRequired(true).setBlastFurnaceTemp(9900).setMeltingPoint(9900).setMaterialList(new MaterialStack(Materials.SiliconDioxide, 26244), new MaterialStack(Materials.Diamond, 9)).setColor(Dyes.dyeBlack).setOreValue(4).setDensityDivider(1).setDensityMultiplier(1).constructMaterial().setProcessingMaterialTierEU(TierEU.RECIPE_EV).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe().setHasCorrespondingPlasma(true); Materials.Trinium = new Materials( 868, TextureSet.SET_SHINY , 128.0F, 51200, 8, 1|2 |8 |64|128 , 200, 200, 210, 0, "Trinium" , "Trinium" , 0, 0, 7200, 7200, true, false, 4, 1, 1, Dyes.dyeLightGray ).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.Ichorium = new Materials( 978, TextureSet.SET_SHINY , 32.0F, 850000, 12, 1|2 |8 |32|64|128 , 211, 120, 6, 0, "Ichorium" , "Ichorium" , 5, 250000, 9000, 9000, true, false, 4, 1, 1, Dyes.dyeOrange ).setTurbineMultipliers(6, 6, 3).setHasCorrespondingPlasma(true); - Materials.CosmicNeutronium = new Materials( 982, TextureSet.SET_SHINY , 96.0F, 163840, 12, 1|2 |8 |32|64|128 , 50, 50, 50, 0, "CosmicNeutronium" , "Cosmic Neutronium" , 0, 0, 9900, 9900, true, false, 4, 1, 1, Dyes.dyeBlack ).setProcessingMaterialTierEU(TierEU.RECIPE_ZPM).disableAutoGeneratedVacuumFreezerRecipe().setHasCorrespondingPlasma(true); + Materials.CosmicNeutronium = new Materials( 982, TextureSet.SET_SHINY , 96.0F, 163840, 12, 1|2 |8 |32|64|128 , 50, 50, 50, 0, "CosmicNeutronium" , "Cosmic Neutronium" , 0, 0, 9900, 9900, true, false, 4, 1, 1, Dyes.dyeBlack ).setProcessingMaterialTierEU(TierEU.RECIPE_ZPM).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe().setHasCorrespondingPlasma(true); - Materials.Pentacadmiummagnesiumhexaoxid = new Materials( 987, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 85, 85, 85, 0, "Pentacadmiummagnesiumhexaoxid" , "Superconductor Base MV" , 0, 0, 2500, 2500, true, false, 1, 1, 1, Dyes.dyeGray , 1, Arrays.asList(new MaterialStack(Cadmium, 5), new MaterialStack(Magnesium, 1), new MaterialStack(Oxygen, 6)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 3))).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Titaniumonabariumdecacoppereikosaoxid = new Materials( 988, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 51, 25, 0, 0, "Titaniumonabariumdecacoppereikosaoxid" , "Superconductor Base HV" , 0, 0, 3300, 3300, true, false, 1, 1, 1, Dyes.dyeBrown , 1, Arrays.asList(new MaterialStack(Titanium, 1), new MaterialStack(Barium, 9), new MaterialStack(Copper, 10), new MaterialStack(Oxygen, 20)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 6))).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Uraniumtriplatinid = new Materials( 989, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 0,135, 0, 0, "Uraniumtriplatinid" , "Superconductor Base EV" , 0, 0, 4400, 4400, true, false, 1, 1, 1, Dyes.dyeLime , 1, Arrays.asList(new MaterialStack(Uranium, 1), new MaterialStack(Platinum, 3)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 9))).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Vanadiumtriindinid = new Materials( 990, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 51, 0, 51, 0, "Vanadiumtriindinid" , "Superconductor Base IV" , 0, 0, 5200, 5200, true, false, 1, 1, 1, Dyes.dyeMagenta , 1, Arrays.asList(new MaterialStack(Vanadium , 1), new MaterialStack(Indium, 3)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 12))).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid = new Materials( 991, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 153, 76, 0, 0, "Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid" , "Superconductor Base LuV" , 0, 0, 6000, 6000, true, false, 1, 1, 1, Dyes.dyeBrown , 1, Arrays.asList(new MaterialStack(Indium, 4), new MaterialStack(Tin, 2), new MaterialStack(Barium, 2), new MaterialStack(Titanium, 1), new MaterialStack(Copper, 7), new MaterialStack(Oxygen, 14)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 15))).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Tetranaquadahdiindiumhexaplatiumosminid = new Materials( 992, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 10, 10, 10, 0, "Tetranaquadahdiindiumhexaplatiumosminid" , "Superconductor Base ZPM" , 0, 0, 9000, 9000, true, false, 1, 1, 1, Dyes.dyeBlack , 1, Arrays.asList(new MaterialStack(Naquadah, 4), new MaterialStack(Indium, 2), new MaterialStack(Palladium, 6), new MaterialStack(Osmium, 1)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 18))).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Longasssuperconductornameforuvwire = new Materials( 986, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 224,210, 7, 0, "Longasssuperconductornameforuvwire" , "Superconductor Base UV" , 0, 0, 9900, 9900, true, false, 1, 1, 1, Dyes.dyeYellow , 1, Arrays.asList(new MaterialStack(Naquadria, 4), new MaterialStack(Osmiridium, 3), new MaterialStack(Europium, 1), new MaterialStack(Samarium, 1)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 21))).setProcessingMaterialTierEU(TierEU.RECIPE_LuV).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.Longasssuperconductornameforuhvwire = new Materials( 985, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 38,129, 189, 0, "Longasssuperconductornameforuhvwire" , "Superconductor Base UHV" , 0, 0, 10800, 10800, true, false, 1, 1, 1, Dyes.dyeWhite , 1, Arrays.asList(new MaterialStack(Draconium, 6), new MaterialStack(CosmicNeutronium, 7), new MaterialStack(Tritanium, 5), new MaterialStack(Americium, 6)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 24))).setProcessingMaterialTierEU(TierEU.RECIPE_ZPM).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.SuperconductorUEVBase = new Materials( 974, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 174, 8, 8, 0, "SuperconductorUEVBase" , "Superconductor Base UEV" , 0, 0, 11700, 11800, true, false, 1, 1, 1, Dyes.dyeWhite, Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 27))).setProcessingMaterialTierEU(TierEU.RECIPE_UV).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.SuperconductorUIVBase = new Materials( 131, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 229, 88, 177, 0, "SuperconductorUIVBase" , "Superconductor Base UIV" , 0, 0, 12700, 12700, true, false, 1, 1, 1, Dyes.dyeWhite, Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 34))).setProcessingMaterialTierEU(TierEU.RECIPE_UHV).disableAutoGeneratedVacuumFreezerRecipe(); - Materials.SuperconductorUMVBase = new Materials( 134, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 181, 38, 205, 0, "SuperconductorUMVBase" , "Superconductor Base UMV" , 0, 0, 13600, 13600, true, false, 1, 1, 1, Dyes.dyeWhite, Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 40))).setProcessingMaterialTierEU(TierEU.RECIPE_UEV).disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Pentacadmiummagnesiumhexaoxid = new Materials( 987, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 85, 85, 85, 0, "Pentacadmiummagnesiumhexaoxid" , "Superconductor Base MV" , 0, 0, 2500, 2500, true, false, 1, 1, 1, Dyes.dyeGray , 1, Arrays.asList(new MaterialStack(Cadmium, 5), new MaterialStack(Magnesium, 1), new MaterialStack(Oxygen, 6)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 3))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Titaniumonabariumdecacoppereikosaoxid = new Materials( 988, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 51, 25, 0, 0, "Titaniumonabariumdecacoppereikosaoxid" , "Superconductor Base HV" , 0, 0, 3300, 3300, true, false, 1, 1, 1, Dyes.dyeBrown , 1, Arrays.asList(new MaterialStack(Titanium, 1), new MaterialStack(Barium, 9), new MaterialStack(Copper, 10), new MaterialStack(Oxygen, 20)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 6))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Uraniumtriplatinid = new Materials( 989, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 0,135, 0, 0, "Uraniumtriplatinid" , "Superconductor Base EV" , 0, 0, 4400, 4400, true, false, 1, 1, 1, Dyes.dyeLime , 1, Arrays.asList(new MaterialStack(Uranium, 1), new MaterialStack(Platinum, 3)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 9))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Vanadiumtriindinid = new Materials( 990, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 51, 0, 51, 0, "Vanadiumtriindinid" , "Superconductor Base IV" , 0, 0, 5200, 5200, true, false, 1, 1, 1, Dyes.dyeMagenta , 1, Arrays.asList(new MaterialStack(Vanadium , 1), new MaterialStack(Indium, 3)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 12))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid = new Materials( 991, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 153, 76, 0, 0, "Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid" , "Superconductor Base LuV" , 0, 0, 6000, 6000, true, false, 1, 1, 1, Dyes.dyeBrown , 1, Arrays.asList(new MaterialStack(Indium, 4), new MaterialStack(Tin, 2), new MaterialStack(Barium, 2), new MaterialStack(Titanium, 1), new MaterialStack(Copper, 7), new MaterialStack(Oxygen, 14)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 15))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Tetranaquadahdiindiumhexaplatiumosminid = new Materials( 992, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 10, 10, 10, 0, "Tetranaquadahdiindiumhexaplatiumosminid" , "Superconductor Base ZPM" , 0, 0, 9000, 9000, true, false, 1, 1, 1, Dyes.dyeBlack , 1, Arrays.asList(new MaterialStack(Naquadah, 4), new MaterialStack(Indium, 2), new MaterialStack(Palladium, 6), new MaterialStack(Osmium, 1)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 18))).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Longasssuperconductornameforuvwire = new Materials( 986, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 , 224,210, 7, 0, "Longasssuperconductornameforuvwire" , "Superconductor Base UV" , 0, 0, 9900, 9900, true, false, 1, 1, 1, Dyes.dyeYellow , 1, Arrays.asList(new MaterialStack(Naquadria, 4), new MaterialStack(Osmiridium, 3), new MaterialStack(Europium, 1), new MaterialStack(Samarium, 1)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 21))).setProcessingMaterialTierEU(TierEU.RECIPE_LuV).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.Longasssuperconductornameforuhvwire = new Materials( 985, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 38,129, 189, 0, "Longasssuperconductornameforuhvwire" , "Superconductor Base UHV" , 0, 0, 10800, 10800, true, false, 1, 1, 1, Dyes.dyeWhite , 1, Arrays.asList(new MaterialStack(Draconium, 6), new MaterialStack(CosmicNeutronium, 7), new MaterialStack(Tritanium, 5), new MaterialStack(Americium, 6)), Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 24))).setProcessingMaterialTierEU(TierEU.RECIPE_ZPM).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.SuperconductorUEVBase = new Materials( 974, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 174, 8, 8, 0, "SuperconductorUEVBase" , "Superconductor Base UEV" , 0, 0, 11700, 11800, true, false, 1, 1, 1, Dyes.dyeWhite, Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 27))).setProcessingMaterialTierEU(TierEU.RECIPE_UV).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.SuperconductorUIVBase = new Materials( 131, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 229, 88, 177, 0, "SuperconductorUIVBase" , "Superconductor Base UIV" , 0, 0, 12700, 12700, true, false, 1, 1, 1, Dyes.dyeWhite, Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 34))).setProcessingMaterialTierEU(TierEU.RECIPE_UHV).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); + Materials.SuperconductorUMVBase = new Materials( 134, TextureSet.SET_SHINY , 1.0F, 0, 3, 1|2 , 181, 38, 205, 0, "SuperconductorUMVBase" , "Superconductor Base UMV" , 0, 0, 13600, 13600, true, false, 1, 1, 1, Dyes.dyeWhite, Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 40))).setProcessingMaterialTierEU(TierEU.RECIPE_UEV).disableAutoGeneratedBlastFurnaceRecipes().disableAutoGeneratedVacuumFreezerRecipe(); Materials.SuperconductorMV = new Materials( -1, TextureSet.SET_SHINY , 1.0F, 0, 0, 0 , 85, 85, 85, 0, "SuperconductorMV" , "Superconductor MV" , 0, 0, -1, -1, false, false, 1, 1, 1, Dyes.dyeGray , Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 6))); Materials.SuperconductorHV = new Materials( -1, TextureSet.SET_SHINY , 1.0F, 0, 0, 0 , 51, 25, 0, 0, "SuperconductorHV" , "Superconductor HV" , 0, 0, -1, -1, false, false, 1, 1, 1, Dyes.dyeBrown , Collections.singletonList(new TCAspects.TC_AspectStack(TCAspects.ELECTRUM, 12))); diff --git a/src/main/java/gregtech/loaders/misc/GTBeeDefinition.java b/src/main/java/gregtech/loaders/misc/GTBeeDefinition.java index 48ecc4626d3..59e4ca8cb9e 100644 --- a/src/main/java/gregtech/loaders/misc/GTBeeDefinition.java +++ b/src/main/java/gregtech/loaders/misc/GTBeeDefinition.java @@ -1937,7 +1937,7 @@ public void accept(GTBeeDefinition dis) { JUPITER(GTBranchDefinition.PLANET, "Jupiter", false, new Color(0x734B2E), new Color(0xD0CBC4), beeSpecies -> { beeSpecies.addProduct(GTBees.combs.getStackForType(CombType.JUPITER), 0.35f); beeSpecies.addSpecialty(GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.CallistoStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.CallistoIceDust", 1, 0), 0.05f); + beeSpecies.addSpecialty(Materials.CallistoIce.getDust(1), 0.05f); beeSpecies.addSpecialty(GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.IoStoneDust", 1, 0), 0.05f); beeSpecies.addSpecialty(GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.EuropaStoneDust", 1, 0), 0.05f); beeSpecies.addSpecialty(GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.EuropaIceDust", 1, 0), 0.05f); @@ -1991,7 +1991,7 @@ public void accept(GTBeeDefinition dis) { CALLISTO(GTBranchDefinition.PLANET, "Callisto", true, new Color(0x0f333d), new Color(0x0d84a5), beeSpecies -> { beeSpecies.addProduct(GTBees.combs.getStackForType(CombType.JUPITER), 0.25f); beeSpecies.addSpecialty(GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.CallistoStoneDust", 1, 0), 0.10f); - beeSpecies.addSpecialty(GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.CallistoIceDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(Materials.CallistoIce.getDust(1), 0.10f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(ICY); beeSpecies.setNocturnal(); diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java index 056feb0b33c..bedbb2d41ea 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java @@ -81,7 +81,7 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic else if (aMaterial != Materials.Clay && aMaterial != Materials.Basalt) { GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack)) + .itemInputs(GTOreDictUnificator.get(OrePrefixes.block, aMaterial, 1)) .itemOutputs(GTOreDictUnificator.get(OrePrefixes.plate, aMaterial, 9L)) .fluidInputs( Materials.Water.getFluid( @@ -93,7 +93,7 @@ else if (aMaterial != Materials.Clay && aMaterial != Materials.Basalt) { .addTo(cutterRecipes); GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack)) + .itemInputs(GTOreDictUnificator.get(OrePrefixes.block, aMaterial, 1)) .itemOutputs(GTOreDictUnificator.get(OrePrefixes.plate, aMaterial, 9L)) .fluidInputs( GTModHandler.getDistilledWater( @@ -105,7 +105,7 @@ else if (aMaterial != Materials.Clay && aMaterial != Materials.Basalt) { .addTo(cutterRecipes); GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack)) + .itemInputs(GTOreDictUnificator.get(OrePrefixes.block, aMaterial, 1)) .itemOutputs(GTOreDictUnificator.get(OrePrefixes.plate, aMaterial, 9L)) .fluidInputs( Materials.Lubricant.getFluid( @@ -154,7 +154,7 @@ else if (aMaterial != Materials.Clay && aMaterial != Materials.Basalt) { if (tStack2 != null) { GTValues.RA.stdBuilder() - .itemInputs(aStack) + .itemInputs(GTOreDictUnificator.get(OrePrefixes.block, aMaterial, 1)) .itemOutputs(tStack2) .duration(5 * SECONDS) .eut(24) diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java index 9964ea541e9..c37d3c614dc 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java @@ -132,7 +132,8 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic && (aMaterial != Materials.Glowstone) && (aMaterial != Materials.Paper) && (aMaterial != MaterialsUEVplus.TranscendentMetal) - && (aMaterial != Materials.Clay && (aMaterial != Materials.Wood))) { + && (aMaterial != Materials.Clay) + && (aMaterial != Materials.Wood)) { // compressor recipe { if (GTOreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L) != null) { diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java index f60987ec9e8..5bf1212faad 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java @@ -125,14 +125,12 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic if ((GTUtility.areStacksEqual( GTModHandler.getSmeltingOutput(GTUtility.copyAmount(1, aStack), false, null), new ItemStack(Items.coal, 1, 1)))) { - addPyrolyeOvenRecipes(aStack); GTModHandler.removeFurnaceSmelting(GTUtility.copyAmount(1, aStack)); } for (int i = 0; i < 32767; i++) { if ((GTUtility.areStacksEqual( GTModHandler.getSmeltingOutput(new ItemStack(aStack.getItem(), 1, i), false, null), new ItemStack(Items.coal, 1, 1)))) { - addPyrolyeOvenRecipes(aStack); GTModHandler.removeFurnaceSmelting(new ItemStack(aStack.getItem(), 1, i)); } ItemStack tStack = GTModHandler.getRecipeOutput(new ItemStack(aStack.getItem(), 1, i)); @@ -205,7 +203,6 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic if ((GTUtility.areStacksEqual( GTModHandler.getSmeltingOutput(GTUtility.copyAmount(1, aStack), false, null), new ItemStack(Items.coal, 1, 1)))) { - addPyrolyeOvenRecipes(aStack); GTModHandler.removeFurnaceSmelting(GTUtility.copyAmount(1, aStack)); } ItemStack tStack = GTModHandler.getRecipeOutput(GTUtility.copyAmount(1, aStack)); @@ -271,7 +268,6 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic if ((GTUtility.areStacksEqual( GTModHandler.getSmeltingOutput(GTUtility.copyAmount(1, aStack), false, null), new ItemStack(Items.coal, 1, 1)))) { - addPyrolyeOvenRecipes(aStack); GTModHandler.removeFurnaceSmelting(GTUtility.copyAmount(1, aStack)); } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java index 3d33df9711a..6cac506abfe 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOreSmelting.java @@ -119,14 +119,6 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic .duration(2 * MINUTES) .metadata(ADDITIVE_AMOUNT, 2) .addTo(primitiveBlastRecipes); - GTValues.RA.stdBuilder() - .itemInputs(aMaterial.getDust(2), Materials.Quartzite.getDust(4)) - .itemOutputs( - aMaterial.mDirectSmelting.getIngots(outputAmount), - Materials.Ferrosilite.getDustSmall(outputAmount)) - .duration(2 * MINUTES) - .metadata(ADDITIVE_AMOUNT, 2) - .addTo(primitiveBlastRecipes); GTValues.RA.stdBuilder() .itemInputs(aMaterial.getDust(2), Materials.NetherQuartz.getDust(2)) .itemOutputs( diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java index 396cce0c8cc..6c45761da0a 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingShaping.java @@ -458,22 +458,6 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic .duration((tAmount * 128) * TICKS) .eut(TierEU.RECIPE_LV) .addTo(extruderRecipes); - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack), ItemList.Shape_Extruder_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingadviron", tAmount * 2)) - .duration((tAmount * 32) * TICKS) - .eut(3 * tVoltageMultiplier) - .addTo(extruderRecipes); - } - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(2, aStack), ItemList.Shape_Mold_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingadviron", tAmount * 3)) - .duration((tAmount * 128) * TICKS) - .eut(1 * tVoltageMultiplier) - .addTo(alloySmelterRecipes); - } } case "Iron", "WroughtIron" -> { GTValues.RA.stdBuilder() @@ -482,22 +466,6 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic .duration((tAmount * 128) * TICKS) .eut(TierEU.RECIPE_LV) .addTo(extruderRecipes); - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack), ItemList.Shape_Extruder_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingiron", tAmount * 2)) - .duration((tAmount * 32) * TICKS) - .eut(3 * tVoltageMultiplier) - .addTo(extruderRecipes); - } - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(2, aStack), ItemList.Shape_Mold_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingiron", tAmount * 3)) - .duration((tAmount * 128) * TICKS) - .eut(1 * tVoltageMultiplier) - .addTo(alloySmelterRecipes); - } if (tAmount * 31 <= 64) { GTValues.RA.stdBuilder() .itemInputs(GTUtility.copyAmount(31, aStack), ItemList.Shape_Mold_Anvil.get(0L)) @@ -514,94 +482,6 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic .duration((tAmount * 128) * TICKS) .eut(TierEU.RECIPE_LV) .addTo(extruderRecipes); - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack), ItemList.Shape_Extruder_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingtin", tAmount * 2)) - .duration((tAmount * 32) * TICKS) - .eut(3 * tVoltageMultiplier) - .addTo(extruderRecipes); - } - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(2, aStack), ItemList.Shape_Mold_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingtin", tAmount * 3)) - .duration((tAmount * 128) * TICKS) - .eut(1 * tVoltageMultiplier) - .addTo(alloySmelterRecipes); - } - } - case "Lead" -> { - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack), ItemList.Shape_Extruder_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casinglead", tAmount * 2)) - .duration((tAmount * 32) * TICKS) - .eut(3 * tVoltageMultiplier) - .addTo(extruderRecipes); - } - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(2, aStack), ItemList.Shape_Mold_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casinglead", tAmount * 3)) - .duration((tAmount * 128) * TICKS) - .eut(1 * tVoltageMultiplier) - .addTo(alloySmelterRecipes); - } - } - case "Copper", "AnnealedCopper" -> { - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack), ItemList.Shape_Extruder_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingcopper", tAmount * 2)) - .duration((tAmount * 32) * TICKS) - .eut(3 * tVoltageMultiplier) - .addTo(extruderRecipes); - } - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(2, aStack), ItemList.Shape_Mold_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingcopper", tAmount * 3)) - .duration((tAmount * 128) * TICKS) - .eut(1 * tVoltageMultiplier) - .addTo(alloySmelterRecipes); - } - } - case "Bronze" -> { - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack), ItemList.Shape_Extruder_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingbronze", tAmount * 2)) - .duration((tAmount * 32) * TICKS) - .eut(3 * tVoltageMultiplier) - .addTo(extruderRecipes); - } - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(2, aStack), ItemList.Shape_Mold_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casingbronze", tAmount * 3)) - .duration((tAmount * 128) * TICKS) - .eut(1 * tVoltageMultiplier) - .addTo(alloySmelterRecipes); - } - } - case "Gold" -> { - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(1, aStack), ItemList.Shape_Extruder_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casinggold", tAmount * 2)) - .duration((tAmount * 32) * TICKS) - .eut(3 * tVoltageMultiplier) - .addTo(extruderRecipes); - } - if (tAmount * 2 <= 64) { - GTValues.RA.stdBuilder() - .itemInputs(GTUtility.copyAmount(2, aStack), ItemList.Shape_Mold_Casing.get(0L)) - .itemOutputs(GTModHandler.getIC2Item("casinggold", tAmount * 3)) - .duration((tAmount * 128) * TICKS) - .eut(1 * tVoltageMultiplier) - .addTo(alloySmelterRecipes); - } } case "Polytetrafluoroethylene" -> { GTValues.RA.stdBuilder() diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java index 81b8985d054..d3e6750f33b 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java @@ -258,33 +258,6 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic .eut(8) .addTo(packagerRecipes); } - // alloy smelter recipes - { - GTValues.RA.stdBuilder() - .itemInputs( - GTOreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2L), - GTOreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 1L)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L)) - .duration(5 * SECONDS) - .eut(8) - .addTo(alloySmelterRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - GTOreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2L), - GTOreDictUnificator.get(OrePrefixes.wireGt02, aMaterial, 1L)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L)) - .duration(10 * SECONDS) - .eut(16) - .addTo(alloySmelterRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - GTOreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 4L), - GTOreDictUnificator.get(OrePrefixes.wireGt04, aMaterial, 1L)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L)) - .duration(15 * SECONDS) - .eut(TierEU.RECIPE_LV) - .addTo(alloySmelterRecipes); - } // Assembler recipes { if (GTOreDictUnificator.get(correspondingCable, aMaterial, 1L) != null) { @@ -334,6 +307,35 @@ public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDic } } } + // Alloy Smelter recipes + if (correspondingCable == OrePrefixes.cableGt01) { + GTValues.RA.stdBuilder() + .itemInputs( + GTOreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2L), + GTOreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L)) + .itemOutputs(GTOreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L)) + .duration(5 * SECONDS) + .eut(8) + .addTo(alloySmelterRecipes); + } else if (correspondingCable == OrePrefixes.cableGt02) { + GTValues.RA.stdBuilder() + .itemInputs( + GTOreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2L), + GTOreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L)) + .itemOutputs(GTOreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L)) + .duration(10 * SECONDS) + .eut(16) + .addTo(alloySmelterRecipes); + } else if (correspondingCable == OrePrefixes.cableGt04) { + GTValues.RA.stdBuilder() + .itemInputs( + GTOreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 4L), + GTOreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L)) + .itemOutputs(GTOreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L)) + .duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(alloySmelterRecipes); + } } case "RedstoneAlloy", "Iron", "Nickel", "Cupronickel", "Copper", "AnnealedCopper", "ElectricalSteel", "Kanthal", "Gold", "Electrum", "Silver", "BlueAlloy", "EnergeticAlloy", "Nichrome", "Steel", "BlackSteel", "Titanium", "Aluminium", "TPVAlloy", "VibrantAlloy" -> { diff --git a/src/main/java/gregtech/loaders/postload/chains/PCBFactoryRecipes.java b/src/main/java/gregtech/loaders/postload/chains/PCBFactoryRecipes.java index f047bdcab2e..e4bb4681fc5 100644 --- a/src/main/java/gregtech/loaders/postload/chains/PCBFactoryRecipes.java +++ b/src/main/java/gregtech/loaders/postload/chains/PCBFactoryRecipes.java @@ -7,6 +7,7 @@ import static gregtech.api.util.GTRecipeConstants.AssemblyLine; import static gregtech.api.util.GTRecipeConstants.RESEARCH_ITEM; import static gregtech.api.util.GTRecipeConstants.RESEARCH_TIME; +import static gtPlusPlus.core.material.MaterialsAlloy.QUANTUM; import static gtPlusPlus.core.material.MaterialsElements.STANDALONE.CELESTIAL_TUNGSTEN; import static gtPlusPlus.core.material.MaterialsElements.STANDALONE.CHRONOMATIC_GLASS; import static gtPlusPlus.core.material.MaterialsElements.STANDALONE.HYPOGEN; @@ -77,10 +78,7 @@ public static void load() { .eut(TierEU.RECIPE_UHV) .addTo(assemblerRecipes); GTValues.RA.stdBuilder() - .itemInputs( - CELESTIAL_TUNGSTEN.getFrameBox(1), - Materials.get("Quantum") - .getPlates(6)) + .itemInputs(CELESTIAL_TUNGSTEN.getFrameBox(1), QUANTUM.getPlate(6)) .itemOutputs(ItemList.RadiationProofPhotolithographicFrameworkCasing.get(1)) .duration(30 * SECONDS) .eut(TierEU.RECIPE_UIV) diff --git a/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java index f4563a60cee..940f32e6048 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java @@ -633,16 +633,6 @@ public void run() { .eut(48) .addTo(assemblerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - GTOreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel, 1), - GTOreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1)) - .itemOutputs(ItemList.Block_Plascrete.get(1)) - .fluidInputs(Materials.Concrete.getMolten(144)) - .duration(10 * SECONDS) - .eut(48) - .addTo(assemblerRecipes); - GTValues.RA.stdBuilder() .itemInputs( GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.TungstenSteel, 16), diff --git a/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java index c311ecd5324..09400b8ba71 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java @@ -1144,17 +1144,6 @@ public void run() { .eut(16) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - new ItemStack(Blocks.dirt, 1, 2), - new ItemStack(Items.wheat, 4, 32767), - GTUtility.getIntegratedCircuit(2)) - .itemOutputs(getModItem(Forestry.ID, "fertilizerBio", 1L, 0)) - .fluidInputs(Materials.Water.getFluid(100)) - .duration(10 * SECONDS) - .eut(16) - .addTo(mixerRecipes); - GTValues.RA.stdBuilder() .itemInputs( new ItemStack(Blocks.dirt, 1, 32767), @@ -1166,17 +1155,6 @@ public void run() { .eut(16) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - new ItemStack(Blocks.dirt, 1, 2), - getModItem(BiomesOPlenty.ID, "plants", 4, 6), - GTUtility.getIntegratedCircuit(2)) - .itemOutputs(getModItem(Forestry.ID, "fertilizerBio", 1L, 0)) - .fluidInputs(Materials.Water.getFluid(100)) - .duration(10 * SECONDS) - .eut(16) - .addTo(mixerRecipes); - GTValues.RA.stdBuilder() .itemInputs( new ItemStack(Blocks.dirt, 1, 32767), @@ -1188,17 +1166,6 @@ public void run() { .eut(16) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - new ItemStack(Blocks.dirt, 1, 2), - getModItem(PamsHarvestCraft.ID, "oatsItem", 4), - GTUtility.getIntegratedCircuit(2)) - .itemOutputs(getModItem(Forestry.ID, "fertilizerBio", 1L, 0)) - .fluidInputs(Materials.Water.getFluid(100)) - .duration(10 * SECONDS) - .eut(16) - .addTo(mixerRecipes); - GTValues.RA.stdBuilder() .itemInputs( new ItemStack(Blocks.dirt, 1, 32767), @@ -1210,17 +1177,6 @@ public void run() { .eut(16) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - new ItemStack(Blocks.dirt, 1, 2), - getModItem(PamsHarvestCraft.ID, "ryeItem", 4), - GTUtility.getIntegratedCircuit(2)) - .itemOutputs(getModItem(Forestry.ID, "fertilizerBio", 1L, 0)) - .fluidInputs(Materials.Water.getFluid(100)) - .duration(10 * SECONDS) - .eut(16) - .addTo(mixerRecipes); - GTValues.RA.stdBuilder() .itemInputs( new ItemStack(Blocks.dirt, 1, 32767), @@ -1232,17 +1188,6 @@ public void run() { .eut(16) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - new ItemStack(Blocks.dirt, 1, 2), - getModItem(PamsHarvestCraft.ID, "barleyItem", 4, 6), - GTUtility.getIntegratedCircuit(2)) - .itemOutputs(getModItem(Forestry.ID, "fertilizerBio", 1L, 0)) - .fluidInputs(Materials.Water.getFluid(100)) - .duration(10 * SECONDS) - .eut(16) - .addTo(mixerRecipes); - GTValues.RA.stdBuilder() .itemInputs( new ItemStack(Blocks.dirt, 1, 32767), @@ -1254,17 +1199,6 @@ public void run() { .eut(16) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - new ItemStack(Blocks.dirt, 1, 2), - getModItem(Natura.ID, "barleyFood", 4), - GTUtility.getIntegratedCircuit(2)) - .itemOutputs(getModItem(Forestry.ID, "fertilizerBio", 1L, 0)) - .fluidInputs(Materials.Water.getFluid(100)) - .duration(10 * SECONDS) - .eut(16) - .addTo(mixerRecipes); - GTValues.RA.stdBuilder() .itemInputs( new ItemStack(Blocks.dirt, 1, 32767), @@ -1276,17 +1210,6 @@ public void run() { .eut(16) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - new ItemStack(Blocks.dirt, 1, 2), - GTOreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4), - GTUtility.getIntegratedCircuit(3)) - .itemOutputs(getModItem(Forestry.ID, "fertilizerBio", 1L, 0)) - .fluidInputs(Materials.Water.getFluid(100)) - .duration(10 * SECONDS) - .eut(16) - .addTo(mixerRecipes); - // radiation manufacturing GTValues.RA.stdBuilder() @@ -1537,18 +1460,6 @@ public void run() { .eut(TierEU.RECIPE_HV) .addTo(mixerRecipes); - GTValues.RA.stdBuilder() - .itemInputs( - EnumCube.COKE_BLOCK.getItem(4), - ItemList.SFMixture.get(8), - GTOreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1), - GTUtility.getIntegratedCircuit(1)) - .itemOutputs(ItemList.Block_SSFUEL.get(4)) - .fluidInputs(Materials.NitroFuel.getFluid(1200)) - .duration(10 * SECONDS) - .eut(TierEU.RECIPE_HV) - .addTo(mixerRecipes); - GTValues.RA.stdBuilder() .itemInputs(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(2), GTUtility.getIntegratedCircuit(1)) .itemOutputs(ItemList.Block_SSFUEL.get(1)) diff --git a/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java index a86266029b7..74f70aac418 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java @@ -23,13 +23,6 @@ public void run() { .eut(16) .addTo(packagerRecipes); - GTValues.RA.stdBuilder() - .itemInputs(ItemList.Tool_MatchBox_Full.get(1L)) - .itemOutputs(ItemList.Tool_Matches.get(16L)) - .duration(1 * SECONDS + 12 * TICKS) - .eut(16) - .addTo(packagerRecipes); - GTValues.RA.stdBuilder() .itemInputs(ItemList.IC2_Scrap.get(9), ItemList.Schematic_3by3.get(0)) .itemOutputs(ItemList.IC2_Scrapbox.get(1)) diff --git a/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java index 70881690aa0..89f1fc61562 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java @@ -228,34 +228,6 @@ public void run() { .duration(1 * SECONDS + 8 * TICKS) .eut(TierEU.RECIPE_HV) .addTo(vacuumFreezerRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(ItemList.Reactor_Coolant_Sp_1.getWildcard(1L)) - .itemOutputs(ItemList.Reactor_Coolant_Sp_1.get(1L)) - .duration(1 * MINUTES + 30 * SECONDS) - .eut(TierEU.RECIPE_MV) - .addTo(vacuumFreezerRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(ItemList.Reactor_Coolant_Sp_2.getWildcard(1L)) - .itemOutputs(ItemList.Reactor_Coolant_Sp_2.get(1L)) - .duration(3 * MINUTES) - .eut(TierEU.RECIPE_MV) - .addTo(vacuumFreezerRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(ItemList.Reactor_Coolant_Sp_3.getWildcard(1L)) - .itemOutputs(ItemList.Reactor_Coolant_Sp_3.get(1L)) - .duration(4 * MINUTES + 30 * SECONDS) - .eut(TierEU.RECIPE_MV) - .addTo(vacuumFreezerRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(ItemList.Reactor_Coolant_Sp_6.getWildcard(1L)) - .itemOutputs(ItemList.Reactor_Coolant_Sp_6.get(1L)) - .duration(9 * MINUTES) - .eut(TierEU.RECIPE_MV) - .addTo(vacuumFreezerRecipes); } // Freeze superconductors. diff --git a/src/main/java/gregtech/loaders/preload/LoaderGTBlockFluid.java b/src/main/java/gregtech/loaders/preload/LoaderGTBlockFluid.java index ee207bbaeb0..051eee691a6 100644 --- a/src/main/java/gregtech/loaders/preload/LoaderGTBlockFluid.java +++ b/src/main/java/gregtech/loaders/preload/LoaderGTBlockFluid.java @@ -2036,20 +2036,6 @@ public void run() { .eut(2) .addTo(maceratorRecipes); - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(Blocks.furnace, 1, WILDCARD)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 8L)) - .duration(20 * SECONDS) - .eut(2) - .addTo(maceratorRecipes); - - GTValues.RA.stdBuilder() - .itemInputs(new ItemStack(Blocks.lit_furnace, 1, WILDCARD)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 8L)) - .duration(20 * SECONDS) - .eut(2) - .addTo(maceratorRecipes); - GTOreDictUnificator.set( OrePrefixes.ingot, Materials.FierySteel, diff --git a/src/main/java/gregtech/loaders/preload/LoaderGTOreDictionary.java b/src/main/java/gregtech/loaders/preload/LoaderGTOreDictionary.java index 0d2bd3ad554..05a3712979d 100644 --- a/src/main/java/gregtech/loaders/preload/LoaderGTOreDictionary.java +++ b/src/main/java/gregtech/loaders/preload/LoaderGTOreDictionary.java @@ -301,43 +301,6 @@ public void run() { Materials.Lead, GTModHandler.getModItem(IndustrialCraft2.ID, "itemCasing", 1L, 6)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.Osmium, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.OsmiumItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.Aluminium, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.AluminiumItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.StainlessSteel, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.StainlessSteelItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.Tungsten, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.TungstenItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.Neutronium, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.NeutroniumItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.TungstenSteel, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.TungstenSteelItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.Iridium, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.IridiumItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.Titanium, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.TitaniumItemCasing", 1L, 0)); - GTOreDictUnificator.registerOre( - OrePrefixes.itemCasing, - Materials.Chrome, - GTModHandler.getModItem(NewHorizonsCoreMod.ID, "item.ChromeItemCasing", 1L, 0)); - // Fake Circuits GTOreDictUnificator.registerOre( OrePrefixes.circuit, diff --git a/src/main/java/gtPlusPlus/core/block/ModBlocks.java b/src/main/java/gtPlusPlus/core/block/ModBlocks.java index 6169581257e..b812a4739e9 100644 --- a/src/main/java/gtPlusPlus/core/block/ModBlocks.java +++ b/src/main/java/gtPlusPlus/core/block/ModBlocks.java @@ -4,6 +4,10 @@ import net.minecraftforge.fluids.Fluid; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.core.block.fuel.BlockCactusCharcoal; +import gtPlusPlus.core.block.fuel.BlockCactusCoke; +import gtPlusPlus.core.block.fuel.BlockSugarCharcoal; +import gtPlusPlus.core.block.fuel.BlockSugarCoke; import gtPlusPlus.core.block.general.BlockCompressedObsidian; import gtPlusPlus.core.block.general.BlockFluidTankInfinite; import gtPlusPlus.core.block.general.BlockHellFire; @@ -53,6 +57,11 @@ public final class ModBlocks { public static Block blockWitherGuard; public static Block blockCompressedObsidian; + public static Block blockCactusCharcoal; + public static Block blockCactusCoke; + public static Block blockSugarCharcoal; + public static Block blockSugarCoke; + public static Block blockCustomJukebox; public static Block blockPooCollector; @@ -82,6 +91,11 @@ public static void registerBlocks() { blockWitherGuard = new BlockWitherProof(); blockCompressedObsidian = new BlockCompressedObsidian(); + blockCactusCharcoal = new BlockCactusCharcoal(); + blockCactusCoke = new BlockCactusCoke(); + blockSugarCharcoal = new BlockSugarCharcoal(); + blockSugarCoke = new BlockSugarCoke(); + blockCircuitProgrammer = new BlockCircuitProgrammer(); blockDecayablesChest = new BlockDecayablesChest(); diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCharcoal.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCharcoal.java new file mode 100644 index 00000000000..193ca79c5d6 --- /dev/null +++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCharcoal.java @@ -0,0 +1,55 @@ +package gtPlusPlus.core.block.fuel; + +import static gregtech.api.enums.Mods.GTPlusPlus; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; + +import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta; +import gtPlusPlus.core.util.minecraft.ItemUtils; + +public class BlockCactusCharcoal extends Block { + + private final IIcon[] textureArray = new IIcon[6]; + + public BlockCactusCharcoal() { + super(Material.rock); + this.setBlockName("blockCactusCharcoal"); + this.setStepSound(soundTypeStone); + GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockCactusCharcoal"); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + for (int i = 0; i < textureArray.length; i++) { + this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockCactusCharcoal" + i); + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return this.textureArray[meta]; + } + + @Override + public void getSubBlocks(final Item item, final CreativeTabs tab, final List list) { + for (int i = 0; i < textureArray.length; i++) { + ItemStack is = new ItemStack(item, 1, i); + ItemUtils.registerFuel(is, 4000 * (int) Math.pow(9, i)); + list.add(is); + } + } + +} diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCoke.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCoke.java new file mode 100644 index 00000000000..5c01fb20c8c --- /dev/null +++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCoke.java @@ -0,0 +1,55 @@ +package gtPlusPlus.core.block.fuel; + +import static gregtech.api.enums.Mods.GTPlusPlus; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; + +import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta; +import gtPlusPlus.core.util.minecraft.ItemUtils; + +public class BlockCactusCoke extends Block { + + private final IIcon[] textureArray = new IIcon[6]; + + public BlockCactusCoke() { + super(Material.rock); + this.setBlockName("blockCactusCoke"); + this.setStepSound(soundTypeStone); + GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockCactusCoke"); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + for (int i = 0; i < textureArray.length; i++) { + this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockCactusCoke" + i); + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return this.textureArray[meta]; + } + + @Override + public void getSubBlocks(final Item item, final CreativeTabs tab, final List list) { + for (int i = 0; i < textureArray.length; i++) { + ItemStack is = new ItemStack(item, 1, i); + ItemUtils.registerFuel(is, 8000 * (int) Math.pow(9, i)); + list.add(is); + } + } + +} diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCharcoal.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCharcoal.java new file mode 100644 index 00000000000..2fa755ea9c7 --- /dev/null +++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCharcoal.java @@ -0,0 +1,55 @@ +package gtPlusPlus.core.block.fuel; + +import static gregtech.api.enums.Mods.GTPlusPlus; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; + +import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta; +import gtPlusPlus.core.util.minecraft.ItemUtils; + +public class BlockSugarCharcoal extends Block { + + private final IIcon[] textureArray = new IIcon[6]; + + public BlockSugarCharcoal() { + super(Material.rock); + this.setBlockName("blockSugarCharcoal"); + this.setStepSound(soundTypeStone); + GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockSugarCharcoal"); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + for (int i = 0; i < textureArray.length; i++) { + this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockSugarCharcoal" + i); + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return this.textureArray[meta]; + } + + @Override + public void getSubBlocks(final Item item, final CreativeTabs tab, final List list) { + for (int i = 0; i < textureArray.length; i++) { + ItemStack is = new ItemStack(item, 1, i); + ItemUtils.registerFuel(is, 4000 * (int) Math.pow(9, i)); + list.add(is); + } + } + +} diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCoke.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCoke.java new file mode 100644 index 00000000000..1ef9c3167ea --- /dev/null +++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCoke.java @@ -0,0 +1,55 @@ +package gtPlusPlus.core.block.fuel; + +import static gregtech.api.enums.Mods.GTPlusPlus; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; + +import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta; +import gtPlusPlus.core.util.minecraft.ItemUtils; + +public class BlockSugarCoke extends Block { + + private final IIcon[] textureArray = new IIcon[6]; + + public BlockSugarCoke() { + super(Material.rock); + this.setBlockName("blockSugarCoke"); + this.setStepSound(soundTypeStone); + GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockSugarCoke"); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + for (int i = 0; i < textureArray.length; i++) { + this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockSugarCoke" + i); + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return this.textureArray[meta]; + } + + @Override + public void getSubBlocks(final Item item, final CreativeTabs tab, final List list) { + for (int i = 0; i < textureArray.length; i++) { + ItemStack is = new ItemStack(item, 1, i); + ItemUtils.registerFuel(is, 8000 * (int) Math.pow(9, i)); + list.add(is); + } + } + +} diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java index 014b399044c..a7fe8ced30e 100644 --- a/src/main/java/gtPlusPlus/core/item/ModItems.java +++ b/src/main/java/gtPlusPlus/core/item/ModItems.java @@ -275,28 +275,16 @@ public static void init() { MaterialGenerator.generate(MaterialsElements.getInstance().SELENIUM); // LFTR byproduct MaterialGenerator.generate(MaterialsElements.getInstance().BROMINE); MaterialGenerator.generate(MaterialsElements.getInstance().KRYPTON); // LFTR byproduct - MaterialGenerator.generate(MaterialsElements.getInstance().STRONTIUM); - MaterialGenerator.generate(MaterialsElements.getInstance().ZIRCONIUM); - MaterialGenerator.generate(MaterialsElements.getInstance().RUTHENIUM); MaterialGenerator.generate(MaterialsElements.getInstance().IODINE); // LFTR byproduct - MaterialGenerator.generate(MaterialsElements.getInstance().HAFNIUM); - MaterialGenerator.generate(MaterialsElements.getInstance().DYSPROSIUM); - MaterialGenerator.generate(MaterialsElements.getInstance().ERBIUM); - MaterialGenerator.generate(MaterialsElements.getInstance().PRASEODYMIUM); - MaterialGenerator.generate(MaterialsElements.getInstance().TELLURIUM); // LFTR byproduct - MaterialGenerator.generate(MaterialsElements.getInstance().RHODIUM); MaterialGenerator.generate(MaterialsElements.getInstance().RHENIUM); MaterialGenerator.generate(MaterialsElements.getInstance().THALLIUM); MaterialGenerator.generate(MaterialsElements.getInstance().GERMANIUM); // RADIOACTIVE ELEMENTS MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().POLONIUM, false); - // MaterialGenerator.generateNuclearMaterial(ELEMENT.getInstance().RADON, false); MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().RADIUM, false); - MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().PROMETHIUM, false); MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().PROTACTINIUM, false); MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().CURIUM, false); - MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().CALIFORNIUM, false); MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().NEPTUNIUM, false); MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().FERMIUM, false); @@ -310,8 +298,6 @@ public static void init() { // lithium a // strong requirement for the possible use in lithium fluoride reactors. MaterialGenerator.generate(MaterialsElements.getInstance().LITHIUM7, false); - // Thorium-232 is the most stable isotope of Thorium, purified for nuclear fuel use in this case. - MaterialGenerator.generateNuclearMaterial(MaterialsElements.getInstance().THORIUM232); // Production of 233U (through the neutron irradiation of 232Th) invariably produces small amounts of 232U // as an impurity // because of parasitic (n,2n) reactions on uranium-233 itself, or on protactinium-233, or on thorium-232: @@ -888,16 +874,12 @@ public static void registerCustomMaterialComponents() { // Small Springs MaterialUtils.generateComponentAndAssignToAMaterial(ComponentTypes.SMALLSPRING, MaterialsAlloy.MARAGING250); - MaterialUtils.generateComponentAndAssignToAMaterial(ComponentTypes.SMALLSPRING, MaterialsAlloy.NICHROME); MaterialUtils.generateComponentAndAssignToAMaterial(ComponentTypes.SMALLSPRING, MaterialsAlloy.STABALLOY); - MaterialUtils.generateComponentAndAssignToAMaterial(ComponentTypes.SMALLSPRING, MaterialsAlloy.STEEL_BLACK); MaterialUtils.generateComponentAndAssignToAMaterial(ComponentTypes.SMALLSPRING, MaterialsAlloy.BLACK_TITANIUM); // Fine Wire MaterialUtils .generateComponentAndAssignToAMaterial(ComponentTypes.FINEWIRE, MaterialsElements.STANDALONE.WHITE_METAL); - MaterialUtils - .generateComponentAndAssignToAMaterial(ComponentTypes.FINEWIRE, MaterialsElements.getInstance().PALLADIUM); MaterialUtils .generateComponentAndAssignToAMaterial(ComponentTypes.FINEWIRE, MaterialsElements.getInstance().ZIRCONIUM); MaterialUtils.generateComponentAndAssignToAMaterial(ComponentTypes.FINEWIRE, MaterialsAlloy.LEAGRISIUM); diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java b/src/main/java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java index 86e40f03303..2fc6a2ab88e 100644 --- a/src/main/java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java +++ b/src/main/java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java @@ -1,5 +1,6 @@ package gtPlusPlus.core.item.chemistry; +import static bartworks.system.material.WerkstoffLoader.PTMetallicPowder; import static gregtech.api.enums.Mods.BiomesOPlenty; import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.util.GTRecipeBuilder.MINUTES; @@ -276,8 +277,8 @@ private void addVacuumFurnaceRecipes() { GTValues.RA.stdBuilder() .itemInputs(GTUtility.getIntegratedCircuit(aCircuitID++)) .itemOutputs( - GTOreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 64), - GTOreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 64), + PTMetallicPowder.get(OrePrefixes.dust, 64), + PTMetallicPowder.get(OrePrefixes.dust, 64), MaterialsElements.getInstance().RHODIUM.getDust(60), MaterialsElements.getInstance().SELENIUM.getDust(40), GTOreDictUnificator.get(OrePrefixes.dust, Materials.Tellurium, 10)) diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java b/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java index 476e49248f1..45329aac169 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java +++ b/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java @@ -3,6 +3,7 @@ import static gregtech.api.enums.Mods.EnderIO; import static gregtech.api.enums.Mods.Thaumcraft; import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.compressorRecipes; import static gregtech.api.util.GTRecipeBuilder.MINUTES; import static gregtech.api.util.GTRecipeBuilder.SECONDS; import static gtPlusPlus.core.recipe.common.CI.bitsd; @@ -58,6 +59,7 @@ public static void loadRecipes() { OUTPUT_Blueprint = ItemUtils.getSimpleStack(ModItems.itemBlueprintBase, 2); run(); addCompressedObsidian(); + addFuelBlocks(); migratedRecipes(); } @@ -273,6 +275,65 @@ private static void run() { .addTo(assemblerRecipes); } + private static void addFuelBlocks() { + GTValues.RA.stdBuilder() + .itemInputs(new ItemStack(ModItems.itemCactusCharcoal, 9, 0)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCharcoal, 0, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + GTValues.RA.stdBuilder() + .itemInputs(new ItemStack(ModItems.itemCactusCoke, 9, 0)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCoke, 0, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + GTValues.RA.stdBuilder() + .itemInputs(new ItemStack(ModItems.itemSugarCharcoal, 9, 0)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCharcoal, 0, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + GTValues.RA.stdBuilder() + .itemInputs(new ItemStack(ModItems.itemSugarCoke, 9, 0)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCoke, 0, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + for (int i = 1; i < 6; i++) { + GTValues.RA.stdBuilder() + .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCharcoal, i - 1, 9)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCharcoal, i, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + } + for (int i = 1; i < 6; i++) { + GTValues.RA.stdBuilder() + .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCoke, i - 1, 9)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCoke, i, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + } + for (int i = 1; i < 6; i++) { + GTValues.RA.stdBuilder() + .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCharcoal, i - 1, 9)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCharcoal, i, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + } + for (int i = 1; i < 6; i++) { + GTValues.RA.stdBuilder() + .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCoke, i - 1, 9)) + .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCoke, i, 1)) + .duration(15 * SECONDS) + .eut(2) + .addTo(compressorRecipes); + } + } + private static boolean addCompressedObsidian() { // Invert Obsidian ItemStack aInvertedObsidian = ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 5, 1); diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java b/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java index a78d2be2cb7..bf587a137f3 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java +++ b/src/main/java/gtPlusPlus/core/recipe/RecipesGregTech.java @@ -1427,14 +1427,6 @@ private static void fluidExtractorRecipes() { .eut(TierEU.RECIPE_HV / 2) .addTo(fluidExtractionRecipes); - // Ender Fluid - RA.stdBuilder() - .itemInputs(ItemUtils.getSimpleStack(Items.ender_pearl)) - .fluidOutputs(FluidUtils.getFluidStack("ender", 250)) - .duration(5 * SECONDS) - .eut(TierEU.RECIPE_LV) - .addTo(fluidExtractionRecipes); - // Blazing Pyrotheum RA.stdBuilder() .itemInputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.Pyrotheum, 1L)) @@ -1575,13 +1567,6 @@ private static void compressorRecipes() { private static void macerationRecipes() { - RA.stdBuilder() - .itemInputs(GTOreDictUnificator.get(OrePrefixes.block, Materials.MeatRaw, 1L)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 9L)) - .duration(44 * SECONDS) - .eut(4) - .addTo(maceratorRecipes); - if (ItemUtils.simpleMetaStack("chisel:limestone", 0, 1) != null) { RA.stdBuilder() .itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("limestone", 1)) diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java b/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java index 23cc3f223e6..b66249a3ec2 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java +++ b/src/main/java/gtPlusPlus/core/recipe/RecipesMachines.java @@ -980,6 +980,13 @@ private static void runModRecipes() { // RTG GTValues.RA.stdBuilder() + .itemInputs( + ItemUtils.getItemStackWithMeta(true, "IC2:blockGenerator:6", "IC2-RTG", 6, 1), + MaterialsAlloy.NITINOL_60.getPlate(8), + MaterialsAlloy.MARAGING350.getGear(4), + ItemList.Field_Generator_EV.get(8), + GTOreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 32), + ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(6), 4)) .itemOutputs(GregtechItemList.RTG.get(1)) .fluidInputs(MaterialsAlloy.NIOBIUM_CARBIDE.getFluidStack(144 * 16)) .duration(10 * MINUTES) @@ -1779,6 +1786,10 @@ private static void runModRecipes() { "plateNiobiumCarbide", RECIPE_IndustrialMatterFabFrame); GTValues.RA.stdBuilder() + .itemInputs( + MaterialsAlloy.NIOBIUM_CARBIDE.getPlate(4), + MaterialsAlloy.INCONEL_792.getRod(4), + MaterialsAlloy.INCONEL_690.getFrameBox(1)) .itemOutputs(RECIPE_IndustrialMatterFabFrame) .duration(2 * SECONDS + 10 * TICKS) .eut(16) diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialArcFurnace.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialArcFurnace.java index 20802032a04..9c2c9153ea1 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialArcFurnace.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialArcFurnace.java @@ -24,6 +24,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -33,6 +34,8 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.interfaces.IIconContainer; @@ -212,11 +215,6 @@ public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack a return false; } - @Override - protected SoundResource getProcessStartSound() { - return SoundResource.IC2_MACHINES_ELECTROFURNACE_LOOP; - } - @Override protected IIconContainer getActiveOverlay() { return TexturesGtBlock.oMCDIndustrialArcFurnaceActive; @@ -357,4 +355,10 @@ public void getWailaBody(ItemStack itemStack, List currentTip, IWailaDat + StatCollector.translateToLocal("GT5U.GTPP_MULTI_ARC_FURNACE.mode." + (tag.getBoolean("mode") ? 1 : 0)) + EnumChatFormatting.RESET); } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_ARC_FURNACE_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialCuttingMachine.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialCuttingMachine.java index 385ca224fc0..8f1a748f21e 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialCuttingMachine.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialCuttingMachine.java @@ -24,6 +24,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -33,6 +34,9 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.interfaces.IIconContainer; @@ -267,4 +271,10 @@ public void getWailaBody(ItemStack itemStack, List currentTip, IWailaDat + StatCollector.translateToLocal("GT5U.GTPP_MULTI_CUTTING_MACHINE.mode." + tag.getInteger("mode")) + EnumChatFormatting.RESET); } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_CUTTING_MACHINE_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialSifter.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialSifter.java index d8ba5e55c76..604e216e5e7 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialSifter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialSifter.java @@ -15,6 +15,7 @@ import java.util.Random; import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; @@ -22,6 +23,9 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -206,4 +210,10 @@ public boolean explodesOnComponentBreak(final ItemStack aStack) { public boolean isOverclockerUpgradable() { return true; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_SIFTER_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialThermalCentrifuge.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialThermalCentrifuge.java index c212fbadd21..75ddb73c465 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialThermalCentrifuge.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialThermalCentrifuge.java @@ -13,13 +13,17 @@ import net.minecraft.block.Block; import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTechAPI; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -181,4 +185,10 @@ public byte getCasingMeta() { public byte getCasingTextureIndex() { return (byte) TAE.GTPP_INDEX(16); } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_THERMAL_CENTRIFUGE_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java index 920859616b2..90114322dc1 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java @@ -18,6 +18,7 @@ import java.util.Objects; import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; @@ -25,6 +26,9 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -252,4 +256,10 @@ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { } } } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_ADV_FREEZER_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialWashPlant.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialWashPlant.java index 9cca3ec17d6..be3c6404020 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialWashPlant.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialWashPlant.java @@ -29,6 +29,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -42,6 +43,9 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.interfaces.IIconContainer; @@ -423,4 +427,10 @@ public void setMachineModeIcons() { machineModeIcons.add(GTUITextures.OVERLAY_BUTTON_MACHINEMODE_SIMPLEWASHER); machineModeIcons.add(GTUITextures.OVERLAY_BUTTON_MACHINEMODE_CHEMBATH); } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_MULTI_ORE_WASHER_PLANT_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java index af2229f0387..737cea642ab 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java @@ -23,6 +23,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.ChatComponentTranslation; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraftforge.common.util.ForgeDirection; @@ -33,7 +34,10 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.HeatingCoilLevel; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -321,4 +325,10 @@ public void setCoilLevel(HeatingCoilLevel aCoilLevel) { public boolean supportsInputSeparation() { return true; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_ADV_EBF_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEQuantumForceTransformer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEQuantumForceTransformer.java index b3f3f2b136f..ceeba543e89 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEQuantumForceTransformer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEQuantumForceTransformer.java @@ -33,6 +33,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.IIcon; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.IBlockAccess; import net.minecraftforge.common.util.ForgeDirection; @@ -53,6 +54,7 @@ import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.GTValues; import gregtech.api.enums.Materials; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; @@ -936,4 +938,10 @@ public boolean supportsBatchMode() { public boolean getDefaultHasMaintenanceChecks() { return false; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_QUANTUM_FORCE_TRANSFORMER_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/MTEAlgaePondBase.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/MTEAlgaePondBase.java index c9af07ecf31..33e4024af71 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/MTEAlgaePondBase.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/MTEAlgaePondBase.java @@ -17,6 +17,7 @@ import net.minecraft.block.Block; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; import org.jetbrains.annotations.NotNull; @@ -27,6 +28,8 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTechAPI; import gregtech.api.enums.SoundResource; import gregtech.api.enums.TAE; @@ -390,4 +393,10 @@ private int getCasingTier() { public boolean getDefaultHasMaintenanceChecks() { return false; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_ALGAE_LOOP.resourceLocation; + } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGenRecycling.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGenRecycling.java index 5f5160b6a43..63812e2e6e8 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGenRecycling.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGenRecycling.java @@ -57,7 +57,7 @@ public static void generateRecipes(final Material material) { OrePrefixes.plate, OrePrefixes.plateDense, OrePrefixes.plateDouble, OrePrefixes.plateTriple, OrePrefixes.plateQuadruple, OrePrefixes.plateQuintuple, OrePrefixes.stick, OrePrefixes.stickLong, OrePrefixes.bolt, OrePrefixes.screw, OrePrefixes.ring, OrePrefixes.rotor, OrePrefixes.gearGt, - OrePrefixes.gearGtSmall, OrePrefixes.gear, OrePrefixes.block, OrePrefixes.cableGt01, OrePrefixes.cableGt02, + OrePrefixes.gearGtSmall, OrePrefixes.block, OrePrefixes.cableGt01, OrePrefixes.cableGt02, OrePrefixes.cableGt04, OrePrefixes.cableGt08, OrePrefixes.cableGt12, OrePrefixes.wireFine, OrePrefixes.wireGt01, OrePrefixes.wireGt02, OrePrefixes.wireGt04, OrePrefixes.wireGt08, OrePrefixes.wireGt12, OrePrefixes.wireGt16, OrePrefixes.foil, OrePrefixes.frameGt, OrePrefixes.pipeHuge, diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java index 3171cd00578..5a03fdcd266 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java @@ -139,7 +139,9 @@ private static boolean generateDirtyDustRecipes() { } if (v == Materials.Platinum || v == Materials.Osmium || v == Materials.Iridium - || v == Materials.Palladium) { + || v == Materials.Palladium + || v == Materials.AnyCopper + || v == Materials.AnyIron) { continue; } diff --git a/src/main/java/gtnhlanth/loader/RecipeLoader.java b/src/main/java/gtnhlanth/loader/RecipeLoader.java index 44ac77769ec..3bc69c26755 100644 --- a/src/main/java/gtnhlanth/loader/RecipeLoader.java +++ b/src/main/java/gtnhlanth/loader/RecipeLoader.java @@ -15,7 +15,6 @@ import static gregtech.api.recipe.RecipeMaps.electroMagneticSeparatorRecipes; import static gregtech.api.recipe.RecipeMaps.electrolyzerNonCellRecipes; import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes; -import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; import static gregtech.api.recipe.RecipeMaps.fluidSolidifierRecipes; import static gregtech.api.recipe.RecipeMaps.hammerRecipes; import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes; @@ -982,15 +981,6 @@ public static void loadGeneral() { .duration(30 * SECONDS) .eut(240) .addTo(mixerRecipes); - // SeaweedConcentrate * 4 - GTValues.RA.stdBuilder() - .itemInputs(WerkstoffMaterialPool.SeaweedAsh.get(OrePrefixes.dust, 4)) - .itemOutputs(Materials.Calcite.getDust(2)) - .fluidInputs(Materials.DilutedSulfuricAcid.getFluid(2400)) - .fluidOutputs(WerkstoffMaterialPool.SeaweedConcentrate.getFluidOrGas(2400)) - .duration(60 * SECONDS) - .eut(240) - .addTo(mixerRecipes); // Iodine GTValues.RA.stdBuilder() @@ -1159,16 +1149,6 @@ public static void loadLanthanideRecipes() { .eut(450) .addTo(UniversalChemical); - // Cerium - // Ce2O3 = 2Ce + 3O - GTValues.RA.stdBuilder() - .itemInputs(WerkstoffMaterialPool.CeriumIIIOxide.get(OrePrefixes.dust, 5)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.Cerium, 2)) - .fluidOutputs(Materials.Oxygen.getGas(3000)) - .duration(7 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_MV) - .addTo(electrolyzerRecipes); - // CHAIN BEGIN // MONAZITE GTValues.RA.stdBuilder() @@ -1645,7 +1625,9 @@ public static void loadLanthanideRecipes() { // Sm RE GTValues.RA.stdBuilder() - .itemInputs(WerkstoffMaterialPool.SamaricRareEarthConcentrate.get(OrePrefixes.dust, 1)) + .itemInputs( + WerkstoffMaterialPool.SamaricRareEarthConcentrate.get(OrePrefixes.dust, 1), + GTUtility.getIntegratedCircuit(1)) .itemOutputs(WerkstoffMaterialPool.FluorinatedSamaricConcentrate.get(OrePrefixes.dust, 1)) .fluidInputs(Materials.HydrofluoricAcid.getFluid(2000)) .duration(15 * SECONDS) @@ -1843,38 +1825,6 @@ public static void loadLanthanideRecipes() { .duration(1 * SECONDS) .addTo(multiblockChemicalReactorRecipes); - // Neodymium Part - // Digester to produce Neodymium Chloride Concentrate - GTValues.RA.stdBuilder() - .itemInputs(GTOreDictUnificator.get(OrePrefixes.crushed, Materials.Neodymium, 1)) - .itemOutputs(Materials.SiliconDioxide.getDust(3)) - .fluidInputs(Materials.Chlorine.getGas(36000)) - .fluidOutputs(NeodymiumChlorideConcentrate.getFluidOrGas(3000)) - .metadata(COIL_HEAT, 800) - .eut(TierEU.RECIPE_ZPM) - .duration(2 * SECONDS) - .addTo(digesterRecipes); - GTValues.RA.stdBuilder() - .itemInputs(NeodymiumOreConcentrate.get(OrePrefixes.dust, 1)) - .itemOutputs(Materials.SiliconDioxide.getDust(1)) - .fluidInputs(Materials.Chlorine.getGas(12000)) - .fluidOutputs(NeodymiumChlorideConcentrate.getFluidOrGas(1000)) - .metadata(COIL_HEAT, 800) - .eut(TierEU.RECIPE_ZPM) - .duration(2 * SECONDS) - .addTo(digesterRecipes); - // 1B oreChlorideConcentrate = 1 ore's rare earth metal + 3 any rare earth metal - GTValues.RA.stdBuilder() - .fluidInputs( - NeodymiumExtractingNanoResin.getFluidOrGas(1000), - NeodymiumChlorideConcentrate.getFluidOrGas(1000)) - .fluidOutputs( - FilledNeodymiumExtractingNanoResin.getFluidOrGas(1000), - ChlorinatedRareEarthConcentrate.getFluidOrGas(1000)) - .eut(TierEU.RECIPE_UV) - .duration(1 * SECONDS) - .addTo(multiblockChemicalReactorRecipes); - // Promethium Part // Digester to produce Neodymium Chloride Concentrate GTValues.RA.stdBuilder() @@ -1895,38 +1845,7 @@ public static void loadLanthanideRecipes() { .eut(TierEU.RECIPE_ZPM) .duration(2 * SECONDS) .addTo(digesterRecipes); - // 1B oreChlorideConcentrate = 1 ore's rare earth metal + 3 any rare earth metal - GTValues.RA.stdBuilder() - .fluidInputs( - PromethiumExtractingNanoResin.getFluidOrGas(1000), - PromethiumChlorideConcentrate.getFluidOrGas(1000)) - .fluidOutputs( - FilledPromethiumExtractingNanoResin.getFluidOrGas(1000), - ChlorinatedRareEarthConcentrate.getFluidOrGas(1000)) - .eut(TierEU.RECIPE_UV) - .duration(1 * SECONDS) - .addTo(multiblockChemicalReactorRecipes); - // Promethium Part - // Digester to produce Promethium Chloride Concentrate - GTValues.RA.stdBuilder() - .itemInputs(GTOreDictUnificator.get(OrePrefixes.crushed, Materials.Promethium, 1)) - .itemOutputs(Materials.SiliconDioxide.getDust(3)) - .fluidInputs(Materials.Chlorine.getGas(36000)) - .fluidOutputs(PromethiumChlorideConcentrate.getFluidOrGas(3000)) - .metadata(COIL_HEAT, 800) - .eut(TierEU.RECIPE_ZPM) - .duration(2 * SECONDS) - .addTo(digesterRecipes); - GTValues.RA.stdBuilder() - .itemInputs(PromethiumOreConcentrate.get(OrePrefixes.dust, 1)) - .itemOutputs(Materials.SiliconDioxide.getDust(1)) - .fluidInputs(Materials.Chlorine.getGas(12000)) - .fluidOutputs(PromethiumChlorideConcentrate.getFluidOrGas(1000)) - .metadata(COIL_HEAT, 800) - .eut(TierEU.RECIPE_ZPM) - .duration(2 * SECONDS) - .addTo(digesterRecipes); // 1B oreChlorideConcentrate = 1 ore's rare earth metal + 3 any rare earth metal GTValues.RA.stdBuilder() .fluidInputs( @@ -3280,16 +3199,6 @@ public static void loadLanthanideRecipes() { .duration(2 * SECONDS) .addTo(electrolyzerRecipes); - // ZPM molten distilling method - - // melt ImpureSamariumChloride - GTValues.RA.stdBuilder() - .itemInputs(SamariumChloride.get(OrePrefixes.dust, 1)) - .fluidOutputs(SamariumChloride.getMolten(144)) - .eut(TierEU.RECIPE_EV) - .duration(24) - .addTo(fluidExtractionRecipes); - // distill with LanthanumDust 36*144L moltenSmCl3 = 16*144L moltenSm + 27B Cl GTValues.RA.stdBuilder() .itemInputs(Materials.Lanthanum.getDust(9)) @@ -3473,13 +3382,6 @@ public static void addRandomChemCrafting() { // PTMEG Manipulation - GTValues.RA.stdBuilder() - .itemInputs(ItemList.Shape_Mold_Ingot.get(0L)) - .itemOutputs(WerkstoffMaterialPool.PTMEGElastomer.get(OrePrefixes.ingot, 1)) - .fluidInputs(WerkstoffMaterialPool.PTMEGElastomer.getMolten(144)) - .duration(2 * SECONDS) - .eut(64) - .addTo(fluidSolidifierRecipes); GTValues.RA.stdBuilder() .itemInputs(ItemList.Shape_Mold_Plate.get(0L)) .itemOutputs(WerkstoffMaterialPool.PTMEGElastomer.get(OrePrefixes.plate, 1)) @@ -3627,12 +3529,6 @@ public static void addRandomChemCrafting() { .eut(TierEU.RECIPE_UHV) .duration(5 * SECONDS) .addTo(vacuumFurnaceRecipes); - GTValues.RA.stdBuilder() - .itemInputs(CeriumDopedLutetiumAluminiumOxygenBlend.get(OrePrefixes.dust, 1)) - .fluidOutputs(CeriumDopedLutetiumAluminiumOxygenBlend.getMolten(144)) - .eut(TierEU.RECIPE_LuV) - .duration(1 * SECONDS) - .addTo(fluidExtractionRecipes); // 16 Adv Crystal SoC for (ItemStack itemStack : OreDictionary.getOres("craftingLensBlue")) { diff --git a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeEntityCrusher.java b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeEntityCrusher.java index 7268f9f3cdb..7d01c51ebab 100644 --- a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeEntityCrusher.java +++ b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeEntityCrusher.java @@ -63,6 +63,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.ChunkCoordinates; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.world.EnumDifficulty; import net.minecraft.world.World; import net.minecraft.world.WorldProviderHell; @@ -108,6 +109,7 @@ import gregtech.api.GregTechAPI; import gregtech.api.enums.Materials; import gregtech.api.enums.Mods; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.interfaces.ITexture; @@ -776,6 +778,12 @@ public void createInventorySlots() { slotWidgets.add(weaponSlot); } + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_EXTREME_ENTITY_CRUSHER_LOOP.resourceLocation; + } + private static class EECFakePlayer extends FakePlayer { MTEExtremeEntityCrusher mte; diff --git a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java index b6c1d845c8b..33ca31d39b5 100644 --- a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java +++ b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java @@ -61,6 +61,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -110,6 +111,7 @@ import forestry.plugins.PluginApiculture; import gregtech.api.GregTechAPI; import gregtech.api.enums.GTValues; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.interfaces.ITexture; @@ -1177,4 +1179,9 @@ public int hashCode() { } } + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_MEGA_INDUSTRIAL_APIARY_LOOP.resourceLocation; + } } diff --git a/src/main/java/tectech/loader/recipe/Assembler.java b/src/main/java/tectech/loader/recipe/Assembler.java index 7965931f5b5..cbb6691a6ab 100644 --- a/src/main/java/tectech/loader/recipe/Assembler.java +++ b/src/main/java/tectech/loader/recipe/Assembler.java @@ -2691,7 +2691,7 @@ public void run() { .eut(TierEU.RECIPE_MV) .addTo(assemblerRecipes); GTValues.RA.stdBuilder() - .itemInputs(ItemList.Battery_Buffer_3by3_LV.get(1), CustomItemList.teslaCover.getWithDamage(1, 0)) + .itemInputs(ItemList.Battery_Buffer_3by3_MV.get(1), CustomItemList.teslaCover.getWithDamage(1, 0)) .itemOutputs(CustomItemList.Machine_TeslaCoil_3by3_MV.get(1)) .fluidInputs(Materials.Tin.getMolten(288)) .duration(20 * SECONDS) diff --git a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchDataOutput.java b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchDataOutput.java index 094423cb0a6..52bc4aeca69 100644 --- a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchDataOutput.java +++ b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchDataOutput.java @@ -72,6 +72,10 @@ public boolean canConnectData(ForgeDirection side) { return isOutputFacing(side); } + public void providePacket(QuantumDataPacket packet) { + this.q = packet; + } + @Override public void moveAround(IGregTechTileEntity aBaseMetaTileEntity) { IConnectsToDataPipe current = this, source = this, next; diff --git a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessComputationOutput.java b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessComputationOutput.java index 8495f95e6f7..712cd26d80d 100644 --- a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessComputationOutput.java +++ b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessComputationOutput.java @@ -1,14 +1,18 @@ package tectech.thing.metaTileEntity.hatch; +import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.common.util.ForgeDirection; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.common.WirelessComputationPacket; +import tectech.mechanics.dataTransport.QuantumDataPacket; public class MTEHatchWirelessComputationOutput extends MTEHatchDataOutput { + private int clearDelay = 0; + public MTEHatchWirelessComputationOutput(int aID, String aName, String aNameRegional, int aTier) { super(aID, aName, aNameRegional, aTier); @@ -39,12 +43,36 @@ public boolean canConnectData(ForgeDirection side) { return false; } + @Override + public void loadNBTData(NBTTagCompound aNBT) { + super.loadNBTData(aNBT); + if (aNBT.hasKey("clearDelay")) { + this.clearDelay = aNBT.getInteger("clearDelay"); + } + } + + @Override + public void saveNBTData(NBTTagCompound aNBT) { + super.saveNBTData(aNBT); + aNBT.setInteger("clearDelay", this.clearDelay); + } + + @Override + public void providePacket(QuantumDataPacket packet) { + super.providePacket(packet); + // Keep providing to wireless net for 21 ticks, because after this time a new packet from the computer should + // have arrived + this.clearDelay = 21; + } + @Override public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { super.onPreTick(aBaseMetaTileEntity, aTick); if (aBaseMetaTileEntity.isServerSide() && q != null) { WirelessComputationPacket.uploadData(aBaseMetaTileEntity.getOwnerUuid(), q.getContent(), aTick); - q = null; + if (clearDelay-- == 0) { + q = null; + } } } diff --git a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java index e7d604328ae..f3e4619c05b 100644 --- a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java +++ b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java @@ -18,6 +18,8 @@ import org.apache.commons.lang3.reflect.FieldUtils; +import com.google.common.collect.ImmutableList; + import gregtech.api.enums.Dyes; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -32,6 +34,8 @@ public class MTEHatchWirelessDataItemsInput extends MTEHatchDataAccess { private String clientLocale = "en_US"; + private List dataItems = null; + public MTEHatchWirelessDataItemsInput(int aID, String aName, String aNameRegional, int aTier) { super(aID, aName, aNameRegional, aTier); TTUtility.setTier(aTier, this); @@ -118,14 +122,25 @@ public String[] getDescription() { @Override public List getInventoryItems(Predicate filter) { - WirelessDataStore wirelessData = WirelessDataStore - .getWirelessDataSticks(getBaseMetaTileEntity().getOwnerUuid()); - return wirelessData.downloadData() - .stream() + if (this.dataItems == null) return ImmutableList.of(); + return this.dataItems.stream() .filter(stack -> stack != null && filter.test(stack)) .collect(Collectors.toList()); } + @Override + public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { + if (aBaseMetaTileEntity.isServerSide()) { + // Upload data packet and mark it as uploaded, so it will not be uploaded again + // until the data bank resets the wireless network + if (aTick % WirelessDataStore.DOWNLOAD_TICK == 0) { + WirelessDataStore wirelessDataStore = WirelessDataStore + .getWirelessDataSticks(getBaseMetaTileEntity().getOwnerUuid()); + this.dataItems = wirelessDataStore.downloadData(aTick); + } + } + } + @Override public boolean isGivingInformation() { return true; diff --git a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsOutput.java b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsOutput.java index 2765598475d..df4af869ea7 100644 --- a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsOutput.java +++ b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsOutput.java @@ -27,8 +27,6 @@ public class MTEHatchWirelessDataItemsOutput extends MTEHatch { public InventoryDataPacket dataPacket = null; - public boolean uploadedSinceReset = false; - public MTEHatchWirelessDataItemsOutput(int aID, String aName, String aNameRegional, int aTier) { super( aID, @@ -94,7 +92,6 @@ public void saveNBTData(NBTTagCompound aNBT) { if (dataPacket != null) { aNBT.setTag("eDATA", dataPacket.toNbt()); } - aNBT.setBoolean("uploadedSinceReset", uploadedSinceReset); } @Override @@ -103,9 +100,6 @@ public void loadNBTData(NBTTagCompound aNBT) { if (aNBT.hasKey("eDATA")) { dataPacket = new InventoryDataPacket(aNBT.getCompoundTag("eDATA")); } - if (aNBT.hasKey("uploadedSinceReset")) { - uploadedSinceReset = aNBT.getBoolean("uploadedSinceReset"); - } } @Override @@ -113,11 +107,10 @@ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { if (aBaseMetaTileEntity.isServerSide()) { // Upload data packet and mark it as uploaded, so it will not be uploaded again // until the data bank resets the wireless network - if (dataPacket != null && !uploadedSinceReset) { + if (dataPacket != null && (aTick % WirelessDataStore.UPLOAD_TICK) == 0) { WirelessDataStore wirelessDataStore = WirelessDataStore .getWirelessDataSticks(getBaseMetaTileEntity().getOwnerUuid()); - wirelessDataStore.uploadData(Arrays.asList(dataPacket.getContent())); - uploadedSinceReset = true; + wirelessDataStore.uploadData(Arrays.asList(dataPacket.getContent()), aTick); } } } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java index 30a417ae918..d3e52b97161 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java @@ -41,7 +41,6 @@ import gregtech.api.util.IGTHatchAdder; import gregtech.api.util.MultiblockTooltipBuilder; import gregtech.common.WirelessComputationPacket; -import gregtech.common.WirelessDataStore; import tectech.Reference; import tectech.mechanics.dataTransport.InventoryDataPacket; import tectech.recipe.TTRecipeAdder; @@ -248,23 +247,6 @@ public final boolean addDataBankHatchToMachineList(IGregTechTileEntity aTileEnti return false; } - @Override - public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { - super.onPreTick(aBaseMetaTileEntity, aTick); - // Every 200 ticks, clear wireless data store so hatches need to provide their data again in - // their onPostTick() call. This also happens every 200 ticks - if (mMachine && aBaseMetaTileEntity.isActive() && wirelessModeEnabled && aTick % 200 == 0) { - WirelessDataStore wirelessStore = WirelessDataStore - .getWirelessDataSticks(aBaseMetaTileEntity.getOwnerUuid()); - wirelessStore.clearData(); - - // After reset, clear uploadedSinceReset of all connected hatches - for (MTEHatchWirelessDataItemsOutput hatch : eWirelessStacksDataOutputs) { - hatch.uploadedSinceReset = false; - } - } - } - @Override public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) { if (getBaseMetaTileEntity().isServerSide()) { diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java index bdbef3048e9..ef9d64a2167 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java @@ -46,6 +46,7 @@ import net.minecraft.util.ChatComponentText; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.MathHelper; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; @@ -63,6 +64,7 @@ import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsUEVplus; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -1849,4 +1851,10 @@ public void loadNBTData(final NBTTagCompound aNBT) { public boolean getDefaultHasMaintenanceChecks() { return false; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_EYE_OF_HARMONY_LOOP.resourceLocation; + } } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java index 4ced494b053..714e06f1782 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java @@ -40,6 +40,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; @@ -83,6 +84,7 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsUEVplus; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.interfaces.IHatchElement; @@ -3422,4 +3424,10 @@ public void loadNBTData(NBTTagCompound NBT) { public boolean getDefaultHasMaintenanceChecks() { return false; } + + @SideOnly(Side.CLIENT) + @Override + protected ResourceLocation getActivitySoundLoop() { + return SoundResource.GT_MACHINES_GOD_FORGE_LOOP.resourceLocation; + } } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java index 25dd5f6ec67..4c57cbe3769 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java @@ -234,14 +234,6 @@ public void loadNBTData(NBTTagCompound aNBT) { } } - @Override - public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { - super.onPreTick(aBaseMetaTileEntity, aTick); - if (aBaseMetaTileEntity.isServerSide() && wirelessModeEnabled && aTick % 20 == 0) { - WirelessComputationPacket.updatePacket(aBaseMetaTileEntity, aTick); - } - } - @Override public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { super.onPostTick(aBaseMetaTileEntity, aTick); @@ -346,7 +338,7 @@ public void outputAfterRecipe_EM() { } for (MTEHatchDataOutput o : eOutputData) { - o.q = pack; + o.providePacket(pack); } } } @@ -570,7 +562,7 @@ public String[] getInfoData() { data.add("Wireless mode: " + EnumChatFormatting.GREEN + "enabled"); data.add( "Total wireless computation available: " + EnumChatFormatting.YELLOW - + wirelessComputationPacket.getTotalComputationStored()); + + wirelessComputationPacket.getAvailableComputationStored()); } else { data.add("Wireless mode: " + EnumChatFormatting.RED + "disabled"); } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/base/SoundLoopAnyBlock.java b/src/main/java/tectech/thing/metaTileEntity/multi/base/SoundLoopAnyBlock.java new file mode 100644 index 00000000000..15b08afb5cb --- /dev/null +++ b/src/main/java/tectech/thing/metaTileEntity/multi/base/SoundLoopAnyBlock.java @@ -0,0 +1,90 @@ +package tectech.thing.metaTileEntity.multi.base; + +import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; +import net.minecraft.client.audio.MovingSound; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.World; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; + +@SideOnly(Side.CLIENT) +public class SoundLoopAnyBlock extends MovingSound { + + private final boolean stopWhenBlockActive; + private final boolean stopWhenBlockInactive; + private final int worldID; + private boolean fadeOut = false; + private int tileX; + private int tileY; + private int tileZ; + private Block blockToTriggerEnd = null; + + /** + * Constructs a SoundLoopAnyBlock. + * + * @param soundResource the sound file location + * @param tileEntity the tile entity associated with this sound + * @param stopWhenActive flag to stop the sound when the block is active + * @param stopWhenInactive flag to stop the sound when the block is inactive + * @param offset positional offset for sound origin from the tile entity [x, y, z] + * @param blockCheck block that ends the sound when matched at the sound location + */ + public SoundLoopAnyBlock(ResourceLocation soundResource, IGregTechTileEntity tileEntity, boolean stopWhenActive, + boolean stopWhenInactive, int[] offset, Block blockCheck) { + super(soundResource); + this.stopWhenBlockActive = stopWhenActive; + this.stopWhenBlockInactive = stopWhenInactive; + tileX = tileEntity.getXCoord(); + tileY = tileEntity.getYCoord(); + tileZ = tileEntity.getZCoord(); + xPosF = tileX + offset[0]; + yPosF = tileY + offset[1]; + zPosF = tileZ + offset[2]; + worldID = tileEntity.getWorld().provider.dimensionId; + repeat = true; + volume = 0.0625f; + blockToTriggerEnd = blockCheck; + } + + @Override + public void update() { + if (donePlaying) { + return; + } + + if (fadeOut) { + volume -= 0.0625f; + if (volume <= 0) { + volume = 0; + donePlaying = true; + } + } else if (volume < 1) { + volume += 0.0625f; + } + + World world = Minecraft.getMinecraft().thePlayer.worldObj; + donePlaying = world.provider.dimensionId != worldID + || !world.checkChunksExist((int) xPosF, (int) yPosF, (int) zPosF, (int) xPosF, (int) yPosF, (int) zPosF); + + if (donePlaying) return; + + Block blockAtSoundLocation = world.getBlock((int) xPosF, (int) yPosF, (int) zPosF); + if (blockToTriggerEnd != null) { + donePlaying = blockAtSoundLocation == blockToTriggerEnd; + } + + if (donePlaying) return; + + TileEntity tile = world.getTileEntity(tileX, tileY, tileZ); + donePlaying = tile == null; + + if (donePlaying) return; + + // Adjust fading based on the activity state of the tile entity + fadeOut |= ((IGregTechTileEntity) tile).isActive() ? stopWhenBlockActive : stopWhenBlockInactive; + } +} diff --git a/src/main/resources/assets/gregtech/sounds.json b/src/main/resources/assets/gregtech/sounds.json index 612ce93fc41..3488cc83730 100644 --- a/src/main/resources/assets/gregtech/sounds.json +++ b/src/main/resources/assets/gregtech/sounds.json @@ -142,6 +142,15 @@ } ] }, + "machines.BlackHoleCompressorLoop": { + "category": "block", + "sounds": [ + { + "name": "BlackHoleCompressorLoop", + "stream": false + } + ] + }, "items.spraycan_shake": { "category": "player", "sounds": [ @@ -191,6 +200,186 @@ "license_name": "Attribution 3.0" } } + ] + }, + "machines.MTEPreciseAssembler": { + "category": "block", + "sounds": [ + { + "name": "MTEPreciseAssembler", + "stream": false + } + ] + }, + "machines.MTEIndustrialWashPlant": { + "category": "block", + "sounds": [ + { + "name": "MTEIndustrialWashPlant", + "stream": false + } + ] + }, + "machines.MTEMegaVacuumFreezer": { + "category": "block", + "sounds": [ + { + "name": "MTEMegaVacuumFreezer", + "stream": false + } + ] + }, + "machines.MTEVacuumFreezer": { + "category": "block", + "sounds": [ + { + "name": "MTEVacuumFreezer", + "stream": false + } + ] + }, + "machines.MTEExtremeEntityCrusher": { + "category": "block", + "sounds": [ + { + "name": "MTEExtremeEntityCrusher", + "stream": false + } + ] + }, + "machines.MTEIndustrialCuttingMachine": { + "category": "block", + "sounds": [ + { + "name": "MTEIndustrialCuttingMachine", + "stream": false + } + ] + }, + "machines.MTEIndustrialArcFurnace": { + "category": "block", + "sounds": [ + { + "name": "MTEIndustrialArcFurnace", + "stream": false + } + ] + }, + "machines.MTEMegaIndustrialApiary": { + "category": "block", + "sounds": [ + { + "name": "MTEMegaIndustrialApiary", + "stream": false + } + ] + }, + "machines.MTEAlgaePondBase": { + "category": "block", + "sounds": [ + { + "name": "MTEAlgaePondBase", + "stream": false + } + ] + }, + "machines.MTEIndustrialThermalCentrifuge": { + "category": "block", + "sounds": [ + { + "name": "MTEIndustrialThermalCentrifuge", + "stream": false + } + ] + }, + "machines.MTEIndustrialSifter": { + "category": "block", + "sounds": [ + { + "name": "MTEIndustrialSifter", + "stream": false + } + ] + }, + "machines.MTEElectricBlastFurnace": { + "category": "block", + "sounds": [ + { + "name": "MTEElectricBlastFurnace", + "stream": false + } + ] + }, + "machines.MTEIndustrialVacuumFreezer": { + "category": "block", + "sounds": [ + { + "name": "MTEIndustrialVacuumFreezer", + "stream": false + } + ] + }, + "machines.MTEForgeOfGods": { + "category": "block", + "sounds": [ + { + "name": "MTEForgeOfGods", + "stream": false + } + ] + }, + "machines.MTEMegaBlastFurnace": { + "category": "block", + "sounds": [ + { + "name": "MTEMegaBlastFurnace", + "stream": false + } + ] + }, + "machines.MTEOilDrillBase": { + "category": "block", + "sounds": [ + { + "name": "MTEOilDrillBase", + "stream": false + } + ] + }, + "machines.MTEQuantumForceTransformer": { + "category": "block", + "sounds": [ + { + "name": "MTEQuantumForceTransformer", + "stream": false + } + ] + }, + "machines.MTEAdvEBF": { + "category": "block", + "sounds": [ + { + "name": "MTEAdvEBF", + "stream": false + } + ] + }, + "machines.MTELargeTurbine": { + "category": "block", + "sounds": [ + { + "name": "MTELargeTurbine", + "stream": false + } + ] + }, + "machines.MTEEyeOfHarmony": { + "category": "block", + "sounds": [ + { + "name": "MTEEyeOfHarmony", + "stream": false + } ] } } diff --git a/src/main/resources/assets/gregtech/sounds/BlackHoleCompressorLoop.ogg b/src/main/resources/assets/gregtech/sounds/BlackHoleCompressorLoop.ogg new file mode 100644 index 00000000000..b2692e95318 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/BlackHoleCompressorLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEAdvEBF.ogg b/src/main/resources/assets/gregtech/sounds/MTEAdvEBF.ogg new file mode 100644 index 00000000000..6b6a2da2e2f Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEAdvEBF.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEAlgaePondBase.ogg b/src/main/resources/assets/gregtech/sounds/MTEAlgaePondBase.ogg new file mode 100644 index 00000000000..b12e04941f7 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEAlgaePondBase.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEElectricBlastFurnace.ogg b/src/main/resources/assets/gregtech/sounds/MTEElectricBlastFurnace.ogg new file mode 100644 index 00000000000..0475d653d0b Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEElectricBlastFurnace.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEExtremeEntityCrusher.ogg b/src/main/resources/assets/gregtech/sounds/MTEExtremeEntityCrusher.ogg new file mode 100644 index 00000000000..c87d1292742 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEExtremeEntityCrusher.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEEyeOfHarmony.ogg b/src/main/resources/assets/gregtech/sounds/MTEEyeOfHarmony.ogg new file mode 100644 index 00000000000..f4e4e82eb1e Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEEyeOfHarmony.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEForgeOfGods.ogg b/src/main/resources/assets/gregtech/sounds/MTEForgeOfGods.ogg new file mode 100644 index 00000000000..b026ed72cdd Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEForgeOfGods.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEIndustrialArcFurnace.ogg b/src/main/resources/assets/gregtech/sounds/MTEIndustrialArcFurnace.ogg new file mode 100644 index 00000000000..2e16bb9a6e3 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEIndustrialArcFurnace.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEIndustrialCuttingMachine.ogg b/src/main/resources/assets/gregtech/sounds/MTEIndustrialCuttingMachine.ogg new file mode 100644 index 00000000000..040c58bdd5b Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEIndustrialCuttingMachine.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEIndustrialSifter.ogg b/src/main/resources/assets/gregtech/sounds/MTEIndustrialSifter.ogg new file mode 100644 index 00000000000..68a1876db71 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEIndustrialSifter.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEIndustrialThermalCentrifuge.ogg b/src/main/resources/assets/gregtech/sounds/MTEIndustrialThermalCentrifuge.ogg new file mode 100644 index 00000000000..0cd4c34f422 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEIndustrialThermalCentrifuge.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEIndustrialVacuumFreezer.ogg b/src/main/resources/assets/gregtech/sounds/MTEIndustrialVacuumFreezer.ogg new file mode 100644 index 00000000000..635434cc636 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEIndustrialVacuumFreezer.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEIndustrialWashPlant.ogg b/src/main/resources/assets/gregtech/sounds/MTEIndustrialWashPlant.ogg new file mode 100644 index 00000000000..11c0b12606f Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEIndustrialWashPlant.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTELargeTurbine.ogg b/src/main/resources/assets/gregtech/sounds/MTELargeTurbine.ogg new file mode 100644 index 00000000000..a5dfde3367e Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTELargeTurbine.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEMegaBlastFurnace.ogg b/src/main/resources/assets/gregtech/sounds/MTEMegaBlastFurnace.ogg new file mode 100644 index 00000000000..22c898f1243 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEMegaBlastFurnace.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEMegaIndustrialApiary.ogg b/src/main/resources/assets/gregtech/sounds/MTEMegaIndustrialApiary.ogg new file mode 100644 index 00000000000..a691c6d0be6 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEMegaIndustrialApiary.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEMegaVacuumFreezer.ogg b/src/main/resources/assets/gregtech/sounds/MTEMegaVacuumFreezer.ogg new file mode 100644 index 00000000000..13516e532ac Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEMegaVacuumFreezer.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEOilDrillBase.ogg b/src/main/resources/assets/gregtech/sounds/MTEOilDrillBase.ogg new file mode 100644 index 00000000000..727327120a2 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEOilDrillBase.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEPreciseAssembler.ogg b/src/main/resources/assets/gregtech/sounds/MTEPreciseAssembler.ogg new file mode 100644 index 00000000000..2671617f74b Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEPreciseAssembler.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEQuantumForceTransformer.ogg b/src/main/resources/assets/gregtech/sounds/MTEQuantumForceTransformer.ogg new file mode 100644 index 00000000000..f003ed33a86 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEQuantumForceTransformer.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MTEVacuumFreezer.ogg b/src/main/resources/assets/gregtech/sounds/MTEVacuumFreezer.ogg new file mode 100644 index 00000000000..87d7ea2d820 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MTEVacuumFreezer.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiAlgaeFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiAlgaeFLoop.ogg new file mode 100644 index 00000000000..d8646d75466 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiAlgaeFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiArcFurnaceFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiArcFurnaceFLoop.ogg new file mode 100644 index 00000000000..fd75c4823df Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiArcFurnaceFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiCuttingMachineFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiCuttingMachineFLoop.ogg new file mode 100644 index 00000000000..2dbf708e8da Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiCuttingMachineFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiExtremeEntityCrusherFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiExtremeEntityCrusherFLoop.ogg new file mode 100644 index 00000000000..426472a14b8 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiExtremeEntityCrusherFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiEyeOfHarmonyFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiEyeOfHarmonyFLoop.ogg new file mode 100644 index 00000000000..0cec247dc4b Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiEyeOfHarmonyFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiMegaIndustrialApiaryFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiMegaIndustrialApiaryFLoop.ogg new file mode 100644 index 00000000000..bc3ad1828be Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiMegaIndustrialApiaryFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiMegaVacuumFreezerLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiMegaVacuumFreezerLoop.ogg new file mode 100644 index 00000000000..ece8bd9533c Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiMegaVacuumFreezerLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiOreWasherPlant.ogg b/src/main/resources/assets/gregtech/sounds/MultiOreWasherPlant.ogg new file mode 100644 index 00000000000..e800143c7de Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiOreWasherPlant.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiPreciseLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiPreciseLoop.ogg new file mode 100644 index 00000000000..ff5ab0ee893 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiPreciseLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiSifterFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiSifterFLoop.ogg new file mode 100644 index 00000000000..c47ec2bca36 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiSifterFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiThermalCentrifugeFLoop.ogg b/src/main/resources/assets/gregtech/sounds/MultiThermalCentrifugeFLoop.ogg new file mode 100644 index 00000000000..8243416eab7 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiThermalCentrifugeFLoop.ogg differ diff --git a/src/main/resources/assets/gregtech/sounds/MultiVacuumFreezer.ogg b/src/main/resources/assets/gregtech/sounds/MultiVacuumFreezer.ogg new file mode 100644 index 00000000000..9cfaf245e57 Binary files /dev/null and b/src/main/resources/assets/gregtech/sounds/MultiVacuumFreezer.ogg differ diff --git a/src/main/resources/assets/miscutils/lang/en_US.lang b/src/main/resources/assets/miscutils/lang/en_US.lang index 047d3340793..db483cc68a2 100644 --- a/src/main/resources/assets/miscutils/lang/en_US.lang +++ b/src/main/resources/assets/miscutils/lang/en_US.lang @@ -202,6 +202,32 @@ tile.blockCompressedObsidian.9.name=Quadruple Compressed Glowstone (6561) tile.blockCompressedObsidian.10.name=Quintuple Compressed Glowstone (59049) tile.blockNet.name=Net +# Fuel Blocks +tile.blockCactusCharcoal.0.name=Cactus Charcoal +tile.blockCactusCharcoal.1.name=Compressed Cactus Charcoal +tile.blockCactusCharcoal.2.name=Double Compressed Cactus Charcoal +tile.blockCactusCharcoal.3.name=Triple Compressed Cactus Charcoal +tile.blockCactusCharcoal.4.name=Quadruple Compressed Cactus Charcoal +tile.blockCactusCharcoal.5.name=Quintuple Compressed Cactus Charcoal +tile.blockCactusCoke.0.name=Cactus Coke +tile.blockCactusCoke.1.name=Compressed Cactus Coke +tile.blockCactusCoke.2.name=Double Compressed Cactus Coke +tile.blockCactusCoke.3.name=Triple Compressed Cactus Coke +tile.blockCactusCoke.4.name=Quadruple Compressed Cactus Coke +tile.blockCactusCoke.5.name=Quintuple Compressed Cactus Coke +tile.blockSugarCharcoal.0.name=Sugar Charcoal +tile.blockSugarCharcoal.1.name=Compressed Sugar Charcoal +tile.blockSugarCharcoal.2.name=Double Compressed Sugar Charcoal +tile.blockSugarCharcoal.3.name=Triple Compressed Sugar Charcoal +tile.blockSugarCharcoal.4.name=Quadruple Compressed Sugar Charcoal +tile.blockSugarCharcoal.5.name=Quintuple Compressed Sugar Charcoal +tile.blockSugarCoke.0.name=Sugar Coke +tile.blockSugarCoke.1.name=Compressed Sugar Coke +tile.blockSugarCoke.2.name=Double Compressed Sugar Coke +tile.blockSugarCoke.3.name=Triple Compressed Sugar Coke +tile.blockSugarCoke.4.name=Quadruple Compressed Sugar Coke +tile.blockSugarCoke.5.name=Quintuple Compressed Sugar Coke + # GT++ Items diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal0.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal0.png new file mode 100644 index 00000000000..ff7e412f64b Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal0.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal1.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal1.png new file mode 100644 index 00000000000..910f192f6c4 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal1.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal2.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal2.png new file mode 100644 index 00000000000..69bb6236d46 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal2.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal3.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal3.png new file mode 100644 index 00000000000..d282b84383a Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal3.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal4.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal4.png new file mode 100644 index 00000000000..a9ce2bad028 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal4.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal5.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal5.png new file mode 100644 index 00000000000..d7ebebb6fc7 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCharcoal5.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke0.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke0.png new file mode 100644 index 00000000000..5e0f2f93d77 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke0.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke1.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke1.png new file mode 100644 index 00000000000..d66d733bba5 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke1.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke2.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke2.png new file mode 100644 index 00000000000..f59550f3adb Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke2.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke3.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke3.png new file mode 100644 index 00000000000..20660c34dee Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke3.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke4.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke4.png new file mode 100644 index 00000000000..68370f743e6 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke4.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke5.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke5.png new file mode 100644 index 00000000000..49cf033b0c3 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockCactusCoke5.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal0.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal0.png new file mode 100644 index 00000000000..f4ef893eb14 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal0.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal1.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal1.png new file mode 100644 index 00000000000..4b350b60de7 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal1.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal2.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal2.png new file mode 100644 index 00000000000..5f8a9a4425e Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal2.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal3.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal3.png new file mode 100644 index 00000000000..8aea97b487c Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal3.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal4.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal4.png new file mode 100644 index 00000000000..39cc7f6a070 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal4.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal5.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal5.png new file mode 100644 index 00000000000..ab6531ef3a9 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCharcoal5.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke0.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke0.png new file mode 100644 index 00000000000..158cd06cdee Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke0.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke1.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke1.png new file mode 100644 index 00000000000..239c72076f5 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke1.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke2.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke2.png new file mode 100644 index 00000000000..42e3336832f Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke2.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke3.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke3.png new file mode 100644 index 00000000000..54d21e20ad8 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke3.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke4.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke4.png new file mode 100644 index 00000000000..6a5036461c0 Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke4.png differ diff --git a/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke5.png b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke5.png new file mode 100644 index 00000000000..15e336931ab Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/blocks/fuel/blockSugarCoke5.png differ