From 1b820de08a05070909a267e17f033fcf58ac8710 Mon Sep 17 00:00:00 2001 From: NotAPenguin Date: Mon, 2 Sep 2024 23:17:17 +0200 Subject: The Great Renaming (#3014) * move kekztech to a single root dir * move detrav to a single root dir * move gtnh-lanthanides to a single root dir * move tectech and delete some gross reflection in gt++ * remove more reflection inside gt5u * delete more reflection in gt++ * fix imports * move bartworks and bwcrossmod * fix proxies * move galactigreg and ggfab * move gtneioreplugin * try to fix gt++ bee loader * apply the rename rules to BW * apply rename rules to bwcrossmod * apply rename rules to detrav scanner mod * apply rename rules to galacticgreg * apply rename rules to ggfab * apply rename rules to goodgenerator * apply rename rules to gtnh-lanthanides * apply rename rules to gt++ * apply rename rules to kekztech * apply rename rules to kubatech * apply rename rules to tectech * apply rename rules to gt apply the rename rules to gt * fix tt import * fix mui hopefully * fix coremod except intergalactic * rename assline recipe class * fix a class name i stumbled on * rename StructureUtility to GTStructureUtility to prevent conflict with structurelib * temporary rename of GTTooltipDataCache to old name * fix gt client/server proxy names --- .../api/recipe/ExtremeHeatExchangerBackend.java | 4 +- .../api/recipe/ExtremeHeatExchangerFrontend.java | 8 +- .../api/recipe/ExtremeHeatExchangerRecipe.java | 4 +- .../api/recipe/GoodGeneratorRecipeMaps.java | 24 +- .../blocks/myFluids/FluidsBuilder.java | 32 +- .../blocks/regularBlock/BlockCasing.java | 124 ++ .../regularBlock/BlockComplexTextureCasing.java | 58 + .../blocks/regularBlock/BlockFrame.java | 37 + .../blocks/regularBlock/BlockTEContainer.java | 207 +++ .../blocks/regularBlock/BlockTurbineCasing.java | 103 ++ .../goodgenerator/blocks/regularBlock/Casing.java | 124 -- .../blocks/regularBlock/ComplexTextureCasing.java | 58 - .../goodgenerator/blocks/regularBlock/Frame.java | 37 - .../goodgenerator/blocks/regularBlock/TEBlock.java | 207 --- .../blocks/regularBlock/TurbineCasing.java | 103 -- .../blocks/tileEntity/ComponentAssemblyLine.java | 416 ----- .../blocks/tileEntity/CoolantTower.java | 211 --- .../blocks/tileEntity/EssentiaHatch.java | 244 --- .../blocks/tileEntity/EssentiaOutputHatch.java | 179 -- .../blocks/tileEntity/EssentiaOutputHatch_ME.java | 150 -- .../blocks/tileEntity/ExtremeHeatExchanger.java | 416 ----- .../blocks/tileEntity/FuelRefineFactory.java | 377 ---- .../GTMetaTileEntity/DieselGenerator.java | 213 --- .../GTMetaTileEntity/MTEDieselGenerator.java | 213 +++ .../GTMetaTileEntity/MTENeutronAccelerator.java | 48 + .../GTMetaTileEntity/MTENeutronSensor.java | 272 +++ .../tileEntity/GTMetaTileEntity/MTEYOTTAHatch.java | 469 +++++ .../GTMetaTileEntity/NeutronAccelerator.java | 48 - .../tileEntity/GTMetaTileEntity/NeutronSensor.java | 272 --- .../tileEntity/GTMetaTileEntity/YOTTAHatch.java | 469 ----- .../blocks/tileEntity/LargeEssentiaGenerator.java | 512 ------ .../blocks/tileEntity/LargeEssentiaSmeltery.java | 590 ------ .../blocks/tileEntity/LargeFusionComputer1.java | 170 -- .../blocks/tileEntity/LargeFusionComputer2.java | 171 -- .../blocks/tileEntity/LargeFusionComputer3.java | 172 -- .../blocks/tileEntity/LargeFusionComputer4.java | 227 --- .../blocks/tileEntity/LargeFusionComputer5.java | 231 --- .../tileEntity/MTEComponentAssemblyLine.java | 416 +++++ .../blocks/tileEntity/MTECoolantTower.java | 212 +++ .../blocks/tileEntity/MTEEssentiaHatch.java | 244 +++ .../blocks/tileEntity/MTEEssentiaOutputHatch.java | 179 ++ .../tileEntity/MTEEssentiaOutputHatchME.java | 150 ++ .../blocks/tileEntity/MTEExtremeHeatExchanger.java | 420 +++++ .../blocks/tileEntity/MTEFuelRefineFactory.java | 376 ++++ .../tileEntity/MTELargeEssentiaGenerator.java | 512 ++++++ .../tileEntity/MTELargeEssentiaSmeltery.java | 588 ++++++ .../blocks/tileEntity/MTELargeFusionComputer1.java | 169 ++ .../blocks/tileEntity/MTELargeFusionComputer2.java | 170 ++ .../blocks/tileEntity/MTELargeFusionComputer3.java | 171 ++ .../blocks/tileEntity/MTELargeFusionComputer4.java | 226 +++ .../blocks/tileEntity/MTELargeFusionComputer5.java | 230 +++ .../blocks/tileEntity/MTEMultiNqGenerator.java | 466 +++++ .../blocks/tileEntity/MTENeutronActivator.java | 516 ++++++ .../blocks/tileEntity/MTEPreciseAssembler.java | 529 ++++++ .../tileEntity/MTESupercriticalFluidTurbine.java | 186 ++ .../tileEntity/MTEUniversalChemicalFuelEngine.java | 389 ++++ .../blocks/tileEntity/MTEYottaFluidTank.java | 729 ++++++++ .../blocks/tileEntity/MultiNqGenerator.java | 468 ----- .../blocks/tileEntity/NeutronActivator.java | 515 ------ .../blocks/tileEntity/PreciseAssembler.java | 529 ------ .../tileEntity/SupercriticalFluidTurbine.java | 186 -- .../tileEntity/UniversalChemicalFuelEngine.java | 390 ---- .../blocks/tileEntity/YottaFluidTank.java | 731 -------- .../base/GT_MetaTileEntity_LargeTurbineBase.java | 345 ---- ...GT_MetaTileEntity_TooltipMultiBlockBase_EM.java | 62 - .../tileEntity/base/LargeFusionComputer.java | 747 -------- .../tileEntity/base/LargeFusionComputerPP.java | 53 - .../tileEntity/base/MTELargeFusionComputer.java | 748 ++++++++ .../tileEntity/base/MTELargeFusionComputerPP.java | 52 + .../tileEntity/base/MTELargeTurbineBase.java | 341 ++++ .../base/MTETooltipMultiBlockBaseEM.java | 60 + .../goodgenerator/client/GUI/GGUITextures.java | 22 + .../goodgenerator/client/GUI/GG_UITextures.java | 22 - .../client/render/BlockRenderHandler.java | 6 +- .../java/goodgenerator/crossmod/nei/NEIConfig.java | 38 + .../goodgenerator/crossmod/nei/NEI_Config.java | 38 - .../crossmod/thaumcraft/Research.java | 443 +++-- .../java/goodgenerator/items/DepletedFuelRod.java | 54 - src/main/java/goodgenerator/items/FuelRod.java | 215 --- src/main/java/goodgenerator/items/GGItem.java | 127 ++ .../java/goodgenerator/items/GGItemBlocks.java | 105 ++ src/main/java/goodgenerator/items/GGMaterial.java | 1526 ++++++++++++++++ .../goodgenerator/items/ItemDepletedFuelRod.java | 54 + src/main/java/goodgenerator/items/ItemFuelRod.java | 216 +++ .../java/goodgenerator/items/MyItemBlocks.java | 105 -- src/main/java/goodgenerator/items/MyItems.java | 127 -- src/main/java/goodgenerator/items/MyMaterial.java | 1527 ---------------- .../java/goodgenerator/items/RadioactiveItem.java | 6 +- .../loader/ComponentAssemblyLineMiscRecipes.java | 207 ++- .../loader/ComponentAssemblyLineRecipeLoader.java | 84 +- .../goodgenerator/loader/FuelRecipeLoader.java | 163 +- .../java/goodgenerator/loader/FuelRodLoader.java | 52 +- src/main/java/goodgenerator/loader/Loaders.java | 295 +-- .../loader/NaquadahReworkRecipeLoader.java | 497 +++--- .../loader/NeutronActivatorLoader.java | 34 +- .../java/goodgenerator/loader/RecipeLoader.java | 1057 ++++++----- .../java/goodgenerator/loader/RecipeLoader2.java | 1879 ++++++++++++++++++++ .../java/goodgenerator/loader/RecipeLoader_02.java | 1878 ------------------- .../java/goodgenerator/main/GGConfigLoader.java | 118 ++ .../java/goodgenerator/main/GG_Config_Loader.java | 118 -- .../java/goodgenerator/main/GoodGenerator.java | 9 +- .../java/goodgenerator/network/MessageMTEBase.java | 3 +- .../java/goodgenerator/util/CrackRecipeAdder.java | 211 ++- src/main/java/goodgenerator/util/ItemRefer.java | 4 +- src/main/java/goodgenerator/util/MaterialFix.java | 129 +- src/main/java/goodgenerator/util/StackUtils.java | 38 +- .../java/goodgenerator/util/StructureHelper.java | 10 +- 107 files changed, 15351 insertions(+), 15371 deletions(-) create mode 100644 src/main/java/goodgenerator/blocks/regularBlock/BlockCasing.java create mode 100644 src/main/java/goodgenerator/blocks/regularBlock/BlockComplexTextureCasing.java create mode 100644 src/main/java/goodgenerator/blocks/regularBlock/BlockFrame.java create mode 100644 src/main/java/goodgenerator/blocks/regularBlock/BlockTEContainer.java create mode 100644 src/main/java/goodgenerator/blocks/regularBlock/BlockTurbineCasing.java delete mode 100644 src/main/java/goodgenerator/blocks/regularBlock/Casing.java delete mode 100644 src/main/java/goodgenerator/blocks/regularBlock/ComplexTextureCasing.java delete mode 100644 src/main/java/goodgenerator/blocks/regularBlock/Frame.java delete mode 100644 src/main/java/goodgenerator/blocks/regularBlock/TEBlock.java delete mode 100644 src/main/java/goodgenerator/blocks/regularBlock/TurbineCasing.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/ComponentAssemblyLine.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/CoolantTower.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/EssentiaHatch.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/EssentiaOutputHatch.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/EssentiaOutputHatch_ME.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/ExtremeHeatExchanger.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/FuelRefineFactory.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/DieselGenerator.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/MTEDieselGenerator.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/MTENeutronAccelerator.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/MTENeutronSensor.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/MTEYOTTAHatch.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/NeutronAccelerator.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/NeutronSensor.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/GTMetaTileEntity/YOTTAHatch.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/LargeEssentiaGenerator.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/LargeEssentiaSmeltery.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer1.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer2.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer3.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer4.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer5.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEComponentAssemblyLine.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTECoolantTower.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEEssentiaHatch.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEEssentiaOutputHatch.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEEssentiaOutputHatchME.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEExtremeHeatExchanger.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEFuelRefineFactory.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTELargeEssentiaGenerator.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTELargeEssentiaSmeltery.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTELargeFusionComputer1.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTELargeFusionComputer2.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTELargeFusionComputer3.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTELargeFusionComputer4.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTELargeFusionComputer5.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEMultiNqGenerator.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTENeutronActivator.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTESupercriticalFluidTurbine.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEUniversalChemicalFuelEngine.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MTEYottaFluidTank.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/MultiNqGenerator.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/NeutronActivator.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/PreciseAssembler.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/SupercriticalFluidTurbine.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/UniversalChemicalFuelEngine.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/YottaFluidTank.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/GT_MetaTileEntity_LargeTurbineBase.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/GT_MetaTileEntity_TooltipMultiBlockBase_EM.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputer.java delete mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/MTELargeFusionComputer.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/MTELargeFusionComputerPP.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/MTELargeTurbineBase.java create mode 100644 src/main/java/goodgenerator/blocks/tileEntity/base/MTETooltipMultiBlockBaseEM.java create mode 100644 src/main/java/goodgenerator/client/GUI/GGUITextures.java delete mode 100644 src/main/java/goodgenerator/client/GUI/GG_UITextures.java create mode 100644 src/main/java/goodgenerator/crossmod/nei/NEIConfig.java delete mode 100644 src/main/java/goodgenerator/crossmod/nei/NEI_Config.java delete mode 100644 src/main/java/goodgenerator/items/DepletedFuelRod.java delete mode 100644 src/main/java/goodgenerator/items/FuelRod.java create mode 100644 src/main/java/goodgenerator/items/GGItem.java create mode 100644 src/main/java/goodgenerator/items/GGItemBlocks.java create mode 100644 src/main/java/goodgenerator/items/GGMaterial.java create mode 100644 src/main/java/goodgenerator/items/ItemDepletedFuelRod.java create mode 100644 src/main/java/goodgenerator/items/ItemFuelRod.java delete mode 100644 src/main/java/goodgenerator/items/MyItemBlocks.java delete mode 100644 src/main/java/goodgenerator/items/MyItems.java delete mode 100644 src/main/java/goodgenerator/items/MyMaterial.java create mode 100644 src/main/java/goodgenerator/loader/RecipeLoader2.java delete mode 100644 src/main/java/goodgenerator/loader/RecipeLoader_02.java create mode 100644 src/main/java/goodgenerator/main/GGConfigLoader.java delete mode 100644 src/main/java/goodgenerator/main/GG_Config_Loader.java (limited to 'src/main/java/goodgenerator') diff --git a/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerBackend.java b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerBackend.java index cdd3a4d57f..cfe6f7c371 100644 --- a/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerBackend.java +++ b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerBackend.java @@ -4,7 +4,7 @@ import javax.annotation.ParametersAreNonnullByDefault; import gregtech.api.recipe.RecipeMapBackendPropertiesBuilder; import gregtech.api.recipe.maps.FuelBackend; -import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GTRecipe; import gregtech.api.util.MethodsReturnNonnullByDefault; @ParametersAreNonnullByDefault @@ -16,7 +16,7 @@ public class ExtremeHeatExchangerBackend extends FuelBackend { } @Override - public GT_Recipe compileRecipe(GT_Recipe recipe) { + public GTRecipe compileRecipe(GTRecipe recipe) { if (!(recipe instanceof ExtremeHeatExchangerRecipe)) { throw new RuntimeException("Recipe must be instance of ExtremeHeatExchangerRecipe"); } diff --git a/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java index b933802fc2..79459d3a5a 100644 --- a/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java +++ b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java @@ -13,7 +13,7 @@ import com.gtnewhorizons.modularui.api.math.Pos2d; import gregtech.api.recipe.BasicUIPropertiesBuilder; import gregtech.api.recipe.NEIRecipePropertiesBuilder; import gregtech.api.recipe.RecipeMapFrontend; -import gregtech.api.util.GT_Utility; +import gregtech.api.util.GTUtility; import gregtech.api.util.MethodsReturnNonnullByDefault; import gregtech.nei.RecipeDisplayInfo; import gregtech.nei.formatter.INEISpecialInfoFormatter; @@ -46,12 +46,12 @@ public class ExtremeHeatExchangerFrontend extends RecipeMapFrontend { int threshold = recipeInfo.recipe.mSpecialValue; return Arrays.asList( StatCollector.translateToLocal("value.extreme_heat_exchanger.0") + " " - + GT_Utility.formatNumbers(Inputs[0].amount) + + GTUtility.formatNumbers(Inputs[0].amount) + " L/s", StatCollector.translateToLocal("value.extreme_heat_exchanger.1"), - GT_Utility.formatNumbers(Outputs[0].amount / 160) + " L/s", + GTUtility.formatNumbers(Outputs[0].amount / 160) + " L/s", StatCollector.translateToLocal("value.extreme_heat_exchanger.2"), - GT_Utility.formatNumbers(Outputs[1].amount / 160) + " L/s", + GTUtility.formatNumbers(Outputs[1].amount / 160) + " L/s", StatCollector.translateToLocal("value.extreme_heat_exchanger.4") + " " + threshold + " L/s"); } } diff --git a/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerRecipe.java b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerRecipe.java index 4a32e882f8..2887c74f2c 100644 --- a/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerRecipe.java +++ b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerRecipe.java @@ -3,9 +3,9 @@ package goodgenerator.api.recipe; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; -import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GTRecipe; -public class ExtremeHeatExchangerRecipe extends GT_Recipe { +public class ExtremeHeatExchangerRecipe extends GTRecipe { public ExtremeHeatExchangerRecipe(FluidStack[] input, FluidStack[] output, int special) { super(false, null, null, null, null, input, output, 0, 0, special); diff --git a/src/main/java/goodgenerator/api/recipe/GoodGeneratorRecipeMaps.java b/src/main/java/goodgenerator/api/recipe/GoodGeneratorRecipeMaps.java index 7f3915d084..1da3545d78 100644 --- a/src/main/java/goodgenerator/api/recipe/GoodGeneratorRecipeMaps.java +++ b/src/main/java/goodgenerator/api/recipe/GoodGeneratorRecipeMaps.java @@ -6,13 +6,13 @@ import java.util.Comparator; import net.minecraft.util.StatCollector; -import goodgenerator.client.GUI.GG_UITextures; -import gregtech.api.enums.GT_Values; -import gregtech.api.gui.modularui.GT_UITextures; +import goodgenerator.client.GUI.GGUITextures; +import gregtech.api.enums.GTValues; +import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.RecipeMapBackend; import gregtech.api.recipe.RecipeMapBuilder; -import gregtech.api.util.GT_Utility; +import gregtech.api.util.GTUtility; import gregtech.nei.formatter.SimpleSpecialValueFormatter; public class GoodGeneratorRecipeMaps { @@ -24,7 +24,7 @@ public class GoodGeneratorRecipeMaps { .neiSpecialInfoFormatter(new SimpleSpecialValueFormatter("value.naquadah_reactor")) .neiRecipeComparator(Comparator.comparing(recipe -> recipe.mSpecialValue)) .dontUseProgressBar() - .addSpecialTexture(59, 20, 58, 42, GG_UITextures.PICTURE_NAQUADAH_REACTOR) + .addSpecialTexture(59, 20, 58, 42, GGUITextures.PICTURE_NAQUADAH_REACTOR) .build(); public static final RecipeMap naquadahFuelRefineFactoryRecipes = RecipeMapBuilder .of("gg.recipe.naquadah_fuel_refine_factory") @@ -35,28 +35,28 @@ public class GoodGeneratorRecipeMaps { public static final RecipeMap neutronActivatorRecipes = RecipeMapBuilder.of("gg.recipe.neutron_activator") .maxIO(9, 9, 1, 1) .dontUseProgressBar() - .addSpecialTexture(73, 22, 31, 21, GG_UITextures.PICTURE_NEUTRON_ACTIVATOR) + .addSpecialTexture(73, 22, 31, 21, GGUITextures.PICTURE_NEUTRON_ACTIVATOR) .neiSpecialInfoFormatter(recipeInfo -> { int minNKE = recipeInfo.recipe.mSpecialValue % 10000; int maxNKE = recipeInfo.recipe.mSpecialValue / 10000; return Arrays.asList( StatCollector.translateToLocal("value.neutron_activator.0"), - GT_Utility.formatNumbers(minNKE) + StatCollector.translateToLocal("value.neutron_activator.2"), + GTUtility.formatNumbers(minNKE) + StatCollector.translateToLocal("value.neutron_activator.2"), StatCollector.translateToLocal("value.neutron_activator.1"), - GT_Utility.formatNumbers(maxNKE) + StatCollector.translateToLocal("value.neutron_activator.2")); + GTUtility.formatNumbers(maxNKE) + StatCollector.translateToLocal("value.neutron_activator.2")); }) .build(); public static final RecipeMap extremeHeatExchangerFuels = RecipeMapBuilder .of("gg.recipe.extreme_heat_exchanger", ExtremeHeatExchangerBackend::new) .maxIO(0, 0, 2, 3) .dontUseProgressBar() - .addSpecialTexture(47, 13, 78, 59, GG_UITextures.PICTURE_EXTREME_HEAT_EXCHANGER) + .addSpecialTexture(47, 13, 78, 59, GGUITextures.PICTURE_EXTREME_HEAT_EXCHANGER) .frontend(ExtremeHeatExchangerFrontend::new) .build(); public static final RecipeMap preciseAssemblerRecipes = RecipeMapBuilder .of("gg.recipe.precise_assembler") .maxIO(4, 1, 4, 0) - .progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE) + .progressBar(GTUITextures.PROGRESSBAR_ARROW_MULTIPLE) .progressBarPos(85, 30) .neiTransferRect(80, 30, 35, 18) .neiSpecialInfoFormatter(new SimpleSpecialValueFormatter("value.precise_assembler")) @@ -70,9 +70,9 @@ public class GoodGeneratorRecipeMaps { recipeInfo -> Collections.singletonList( StatCollector.translateToLocalFormatted( "value.component_assembly_line", - GT_Values.VN[recipeInfo.recipe.mSpecialValue]))) + GTValues.VN[recipeInfo.recipe.mSpecialValue]))) .dontUseProgressBar() - .addSpecialTexture(70, 11, 72, 40, GG_UITextures.PICTURE_COMPONENT_ASSLINE) + .addSpecialTexture(70, 11, 72, 40, GGUITextures.PICTURE_COMPONENT_ASSLINE) .frontend(ComponentAssemblyLineFrontend::new) .build(); } diff --git a/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java b/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java index de8cca2b43..909a1272da 100644 --- a/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java +++ b/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java @@ -4,7 +4,7 @@ import net.minecraft.block.material.Material; import net.minecraftforge.fluids.Fluid; import cpw.mods.fml.common.registry.GameRegistry; -import goodgenerator.crossmod.nei.NEI_Config; +import goodgenerator.crossmod.nei.NEIConfig; public class FluidsBuilder { @@ -36,7 +36,7 @@ public class FluidsBuilder { tmp2.SetTexture("lightlyCrackedNaquadahGas"); tmp2.setBlockName("lightlyCrackedNaquadahGas"); GameRegistry.registerBlock(tmp2, "lightlyCrackedNaquadahGas"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedNaquadahGas_Moderately() { @@ -47,7 +47,7 @@ public class FluidsBuilder { tmp2.SetTexture("moderatelyCrackedNaquadahGas"); tmp2.setBlockName("moderatelyCrackedNaquadahGas"); GameRegistry.registerBlock(tmp2, "moderatelyCrackedNaquadahGas"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedNaquadahGas_Heavily() { @@ -58,7 +58,7 @@ public class FluidsBuilder { tmp2.SetTexture("heavilyCrackedNaquadahGas"); tmp2.setBlockName("heavilyCrackedNaquadahGas"); GameRegistry.registerBlock(tmp2, "heavilyCrackedNaquadahGas"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedLightNaquadahFuel_Lightly() { @@ -69,7 +69,7 @@ public class FluidsBuilder { tmp2.SetTexture("lightlyCrackedLightNaquadahFuel"); tmp2.setBlockName("lightlyCrackedLightNaquadahFuel"); GameRegistry.registerBlock(tmp2, "lightlyCrackedLightNaquadahFuel"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedLightNaquadahFuel_Moderately() { @@ -80,7 +80,7 @@ public class FluidsBuilder { tmp2.SetTexture("moderatelyCrackedLightNaquadahFuel"); tmp2.setBlockName("moderatelyCrackedLightNaquadahFuel"); GameRegistry.registerBlock(tmp2, "moderatelyCrackedLightNaquadahFuel"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedLightNaquadahFuel_Heavily() { @@ -91,7 +91,7 @@ public class FluidsBuilder { tmp2.SetTexture("heavilyCrackedLightNaquadahFuel"); tmp2.setBlockName("heavilyCrackedLightNaquadahFuel"); GameRegistry.registerBlock(tmp2, "heavilyCrackedLightNaquadahFuel"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedHeavyNaquadahFuel_Lightly() { @@ -102,7 +102,7 @@ public class FluidsBuilder { tmp2.SetTexture("lightlyCrackedHeavyNaquadahFuel"); tmp2.setBlockName("lightlyCrackedHeavyNaquadahFuel"); GameRegistry.registerBlock(tmp2, "lightlyCrackedHeavyNaquadahFuel"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedHeavyNaquadahFuel_Moderately() { @@ -113,7 +113,7 @@ public class FluidsBuilder { tmp2.SetTexture("moderatelyCrackedHeavyNaquadahFuel"); tmp2.setBlockName("moderatelyCrackedHeavyNaquadahFuel"); GameRegistry.registerBlock(tmp2, "moderatelyCrackedHeavyNaquadahFuel"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedHeavyNaquadahFuel_Heavily() { @@ -124,7 +124,7 @@ public class FluidsBuilder { tmp2.SetTexture("heavilyCrackedHeavyNaquadahFuel"); tmp2.setBlockName("heavilyCrackedHeavyNaquadahFuel"); GameRegistry.registerBlock(tmp2, "heavilyCrackedHeavyNaquadahFuel"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedNaquadahAsphalt_Lightly() { @@ -137,7 +137,7 @@ public class FluidsBuilder { tmp2.SetTexture("lightlyCrackedNaquadahAsphalt"); tmp2.setBlockName("lightlyCrackedNaquadahAsphalt"); GameRegistry.registerBlock(tmp2, "lightlyCrackedNaquadahAsphalt"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedNaquadahAsphalt_Moderately() { @@ -150,7 +150,7 @@ public class FluidsBuilder { tmp2.SetTexture("moderatelyCrackedNaquadahAsphalt"); tmp2.setBlockName("moderatelyCrackedNaquadahAsphalt"); GameRegistry.registerBlock(tmp2, "moderatelyCrackedNaquadahAsphalt"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void crackedNaquadahAsphalt_Heavily() { @@ -163,7 +163,7 @@ public class FluidsBuilder { tmp2.SetTexture("heavilyCrackedNaquadahAsphalt"); tmp2.setBlockName("heavilyCrackedNaquadahAsphalt"); GameRegistry.registerBlock(tmp2, "heavilyCrackedNaquadahAsphalt"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void combustionPromotor() { @@ -174,7 +174,7 @@ public class FluidsBuilder { tmp2.SetTexture("combustionPromotor"); tmp2.setBlockName("combustionPromotor"); GameRegistry.registerBlock(tmp2, "combustionPromotor"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void coalTar() { @@ -186,7 +186,7 @@ public class FluidsBuilder { tmp2.SetTexture("coalTar"); tmp2.setBlockTextureName("coalTar"); GameRegistry.registerBlock(tmp2, "coalTar"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } public static void supercriticalSteam() { @@ -198,6 +198,6 @@ public class FluidsBuilder { tmp2.SetTexture("supercriticalSteam"); tmp2.setBlockTextureName("supercriticalSteam"); GameRegistry.registerBlock(tmp2, "supercriticalSteam"); - NEI_Config.hide(tmp2); + NEIConfig.hide(tmp2); } } diff --git a/src/main/java/goodgenerator/blocks/regularBlock/BlockCasing.java b/src/main/java/goodgenerator/blocks/regularBlock/BlockCasing.java new file mode 100644 index 0000000000..4f784b5501 --- /dev/null +++ b/src/main/java/goodgenerator/blocks/regularBlock/BlockCasing.java @@ -0,0 +1,124 @@ +package goodgenerator.blocks.regularBlock; + +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.entity.Entity; +import net.minecraft.entity.EnumCreatureType; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import goodgenerator.main.GoodGenerator; +import gregtech.api.GregTechAPI; + +public class BlockCasing extends Block { + + @SideOnly(Side.CLIENT) + protected IIcon[] texture; + + String[] textureNames; + protected String name; + + public BlockCasing(String name) { + super(Material.iron); + this.setHardness(9.0F); + this.setResistance(5.0F); + this.name = name; + this.setHarvestLevel("wrench", 2); + this.setCreativeTab(GoodGenerator.GG); + GregTechAPI.registerMachineBlock(this, -1); + } + + public BlockCasing(String name, String[] texture) { + super(Material.iron); + this.setHardness(9.0F); + this.setResistance(5.0F); + this.name = name; + this.textureNames = texture; + this.setHarvestLevel("wrench", 2); + this.setCreativeTab(GoodGenerator.GG); + GregTechAPI.registerMachineBlock(this, -1); + } + + public BlockCasing(String name, String[] texture, Material material) { + super(material); + this.setHardness(9.0F); + this.setResistance(5.0F); + this.name = name; + this.textureNames = texture; + this.setHarvestLevel("wrench", 2); + this.setCreativeTab(GoodGenerator.GG); + GregTechAPI.registerMachineBlock(this, -1); + } + + @Override + public int damageDropped(int meta) { + return meta; + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return meta < this.texture.length ? this.texture[meta] : this.texture[0]; + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister par1IconRegister) { + this.texture = new IIcon[this.textureNames.length]; + for (int i = 0; i < this.textureNames.length; i++) { + this.texture[i] = par1IconRegister.registerIcon(this.textureNames[i]); + } + } + + @Override + @SideOnly(Side.CLIENT) + @SuppressWarnings("unchecked") + public void getSubBlocks(Item item, CreativeTabs tab, List list) { + for (int i = 0; i < this.textureNames.length; i++) { + list.add(new ItemStack(item, 1, i)); + } + } + + @Override + public void onBlockAdded(World aWorld, int aX, int aY, int aZ) { + if (GregTechAPI.isMachineBlock(this, aWorld.getBlockMetadata(aX, aY, aZ))) { + GregTechAPI.causeMachineUpdate(aWorld, aX, aY, aZ); + } + } + + @Override + public void breakBlock(World aWorld, int aX, int aY, int aZ, Block aBlock, int aMetaData) { + if (GregTechAPI.isMachineBlock(this, aMetaData)) { + GregTechAPI.causeMachineUpdate(aWorld, aX, aY, aZ); + } + } + + @Override + public String getUnlocalizedName() { + return this.name; + } + + @Override + public boolean canBeReplacedByLeaves(IBlockAccess world, int x, int y, int z) { + return false; + } + + @Override + public boolean canEntityDestroy(IBlockAccess world, int x, int y, int z, Entity entity) { + return false; + } + + @Override + public boolean canCreatureSpawn(EnumCreatureType type, IBlockAccess world, int x, int y, int z) { + return false; + } +} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/BlockComplexTextureCasing.java b/src/main/java/goodgenerator/blocks/regularBlock/BlockComplexTextureCasing.java new file mode 100644 index 0000000000..03b7f61557 --- /dev/null +++ b/src/main/java/goodgenerator/blocks/regularBlock/BlockComplexTextureCasing.java @@ -0,0 +1,58 @@ +package goodgenerator.blocks.regularBlock; + +import java.util.List; + +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.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class BlockComplexTextureCasing extends BlockCasing { + + @SideOnly(Side.CLIENT) + protected IIcon[] texture1, texture2; + String[] textureSide; + String[] textureTopAndDown; + + public BlockComplexTextureCasing(String name, String[] textureSide, String[] textureTopAndDown) { + super(name); + this.textureSide = textureSide; + this.textureTopAndDown = textureTopAndDown; + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + if (side < 2) { + return meta < this.texture2.length ? this.texture2[meta] : this.texture2[0]; + } else { + return meta < this.texture1.length ? this.texture1[meta] : this.texture1[0]; + } + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister par1IconRegister) { + this.texture1 = new IIcon[this.textureSide.length]; + for (int i = 0; i < this.textureSide.length; i++) { + this.texture1[i] = par1IconRegister.registerIcon(this.textureSide[i]); + } + this.texture2 = new IIcon[this.textureTopAndDown.length]; + for (int i = 0; i < this.textureTopAndDown.length; i++) { + this.texture2[i] = par1IconRegister.registerIcon(this.textureTopAndDown[i]); + } + } + + @Override + @SideOnly(Side.CLIENT) + @SuppressWarnings("unchecked") + public void getSubBlocks(Item item, CreativeTabs tab, List list) { + for (int i = 0; i < Math.max(this.textureSide.length, this.textureTopAndDown.length); i++) { + list.add(new ItemStack(item, 1, i)); + } + } +} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/BlockFrame.java b/src/main/java/goodgenerator/blocks/regularBlock/BlockFrame.java new file mode 100644 index 0000000000..b29ef7f2f2 --- /dev/null +++ b/src/main/java/goodgenerator/blocks/regularBlock/BlockFrame.java @@ -0,0 +1,37 @@ +package goodgenerator.blocks.regularBlock; + +import net.minecraft.block.material.Material; +import net.minecraft.world.IBlockAccess; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class BlockFrame extends BlockCasing { + + public BlockFrame(String name, String[] texture) { + super(name, texture, Material.iron); + } + + @Override + public boolean isOpaqueCube() { + return false; + } + + @Override + @SideOnly(Side.CLIENT) + public boolean shouldSideBeRendered(IBlockAccess worldClient, int xCoord, int yCoord, int zCoord, int aSide) { + if (worldClient.getBlock(xCoord, yCoord, zCoord) instanceof BlockFrame) return false; + return super.shouldSideBeRendered(worldClient, xCoord, yCoord, zCoord, aSide); + } + + @Override + @SideOnly(Side.CLIENT) + public int getRenderBlockPass() { + return 1; + } + + @Override + public boolean renderAsNormalBlock() { + return false; + } +} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/BlockTEContainer.java b/src/main/java/goodgenerator/blocks/regularBlock/BlockTEContainer.java new file mode 100644 index 0000000000..9bf51b7377 --- /dev/null +++ b/src/main/java/goodgenerator/blocks/regularBlock/BlockTEContainer.java @@ -0,0 +1,207 @@ +package goodgenerator.blocks.regularBlock; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockContainer; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EnumCreatureType; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.util.StatCollector; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import goodgenerator.blocks.tileEntity.MTEEssentiaHatch; +import goodgenerator.blocks.tileEntity.MTEEssentiaOutputHatch; +import goodgenerator.blocks.tileEntity.MTEEssentiaOutputHatchME; +import goodgenerator.main.GoodGenerator; +import gregtech.api.GregTechAPI; +import gregtech.api.util.GTUtility; +import thaumcraft.api.aspects.Aspect; +import thaumcraft.api.aspects.IEssentiaContainerItem; + +public class BlockTEContainer extends BlockContainer { + + @SideOnly(Side.CLIENT) + protected IIcon[] texture; + + String[] textureNames; + protected String name; + protected int index; + + public BlockTEContainer(String name, String[] texture, CreativeTabs Tab) { + super(Material.iron); + this.setHardness(9.0F); + this.setResistance(5.0F); + this.name = name; + this.textureNames = texture; + this.setHarvestLevel("wrench", 2); + this.setCreativeTab(GoodGenerator.GG); + GregTechAPI.registerMachineBlock(this, -1); + } + + public BlockTEContainer(String name, String[] texture, int index) { + super(Material.iron); + this.setHardness(9.0F); + this.setResistance(5.0F); + this.name = name; + this.textureNames = texture; + this.setHarvestLevel("wrench", 2); + this.index = index; + this.setCreativeTab(GoodGenerator.GG); + GregTechAPI.registerMachineBlock(this, -1); + } + + public BlockTEContainer(String name, String[] texture, Material material) { + super(material); + this.setHardness(9.0F); + this.setResistance(5.0F); + this.name = name; + this.textureNames = texture; + this.setHarvestLevel("wrench", 2); + this.setCreativeTab(GoodGenerator.GG); + GregTechAPI.registerMachineBlock(this, -1); + } + + public int getIndex() { + return this.index; + } + + @Override + public int damageDropped(int meta) { + return meta; + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return meta < this.texture.length ? this.texture[meta] : this.texture[0]; + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister par1IconRegister) { + this.texture = new IIcon[this.textureNames.length]; + for (int i = 0; i < this.textureNames.length; i++) { + this.texture[i] = par1IconRegister.registerIcon(this.textureNames[i]); + } + } + + @Override + @SideOnly(Side.CLIENT) + @SuppressWarnings("unchecked") + public void getSubBlocks(Item item, CreativeTabs tab, List list) { + for (int i = 0; i < this.textureNames.length; i++) { + list.add(new ItemStack(item, 1, i)); + } + } + + @Override + public void onBlockAdded(World aWorld, int aX, int aY, int aZ) { + if (GregTechAPI.isMachineBlock(this, aWorld.getBlockMetadata(aX, aY, aZ))) { + GregTechAPI.causeMachineUpdate(aWorld, aX, aY, aZ); + } + } + + @Override + public void breakBlock(World aWorld, int aX, int aY, int aZ, Block aBlock, int aMetaData) { + if (GregTechAPI.isMachineBlock(this, aMetaData)) { + GregTechAPI.causeMachineUpdate(aWorld, aX, aY, aZ); + } + aWorld.removeTileEntity(aX, aY, aZ); + } + + @Override + public String getUnlocalizedName() { + return this.name; + } + + @Override + public boolean canBeReplacedByLeaves(IBlockAccess world, int x, int y, int z) { + return false; + } + + @Override + public boolean canEntityDestroy(IBlockAccess world, int x, int y, int z, Entity entity) { + return false; + } + + @Override + public boolean canCreatureSpawn(EnumCreatureType type, IBlockAccess world, int x, int y, int z) { + return false; + } + + @Override + public TileEntity createTileEntity(World world, int meta) { + switch (index) { + case 1: + return new MTEEssentiaHatch(); + case 2: + return new MTEEssentiaOutputHatch(); + case 3: + return new MTEEssentiaOutputHatchME(); + default: + return null; + } + } + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int par6, float par7, + float par8, float par9) { + if (world.isRemote) { + return false; + } else { + TileEntity tile = world.getTileEntity(x, y, z); + if (index == 1) { + if (tile instanceof MTEEssentiaHatch) { + ItemStack tItemStack = player.getHeldItem(); + if (tItemStack != null) { + Item tItem = tItemStack.getItem(); + if (tItem instanceof IEssentiaContainerItem + && ((IEssentiaContainerItem) tItem).getAspects(player.getHeldItem()) != null + && ((IEssentiaContainerItem) tItem).getAspects(player.getHeldItem()) + .size() > 0) { + Aspect tLocked = ((IEssentiaContainerItem) tItem).getAspects(player.getHeldItem()) + .getAspects()[0]; + ((MTEEssentiaHatch) tile).setLockedAspect(tLocked); + GTUtility.sendChatToPlayer( + player, + String.format( + StatCollector.translateToLocal("essentiahatch.chat.0"), + tLocked.getLocalizedDescription())); + } + } else { + ((MTEEssentiaHatch) tile).setLockedAspect(null); + GTUtility.sendChatToPlayer(player, StatCollector.translateToLocal("essentiahatch.chat.1")); + } + world.markBlockForUpdate(x, y, z); + return true; + } else return false; + } else if (index == 2) { + if (tile instanceof MTEEssentiaOutputHatch && player.isSneaking()) { + ItemStack tItemStack = player.getHeldItem(); + if (tItemStack == null) { + ((MTEEssentiaOutputHatch) tile).clear(); + GTUtility + .sendChatToPlayer(player, StatCollector.translateToLocal("essentiaoutputhatch.chat.0")); + } + return true; + } else return false; + } else return false; + } + } + + @Override + public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) { + return null; + } +} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/BlockTurbineCasing.java b/src/main/java/goodgenerator/blocks/regularBlock/BlockTurbineCasing.java new file mode 100644 index 0000000000..6b6de38161 --- /dev/null +++ b/src/main/java/goodgenerator/blocks/regularBlock/BlockTurbineCasing.java @@ -0,0 +1,103 @@ +package goodgenerator.blocks.regularBlock; + +import net.minecraft.block.Block; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.IBlockAccess; +import net.minecraftforge.common.util.ForgeDirection; + +import goodgenerator.blocks.tileEntity.base.MTELargeTurbineBase; +import goodgenerator.client.render.BlockRenderHandler; +import goodgenerator.main.GoodGenerator; +import gregtech.api.enums.Textures; +import gregtech.api.interfaces.IIconContainer; +import gregtech.api.interfaces.ITexture; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.render.TextureFactory; + +public class BlockTurbineCasing extends BlockCasing implements ITextureBlock { + + public static IIconContainer[][] turbineShape = new IIconContainer[3][9]; + public IIconContainer base; + + static { + for (int i = 0; i < 3; i++) for (int j = 1; j <= 9; j++) + turbineShape[i][j - 1] = new Textures.BlockIcons.CustomIcon("icons/turbines/TURBINE_" + i + "" + j); + } + + public BlockTurbineCasing(String name, String texture) { + super(name, new String[] { GoodGenerator.MOD_ID + ":" + texture }); + base = new Textures.BlockIcons.CustomIcon("icons/" + texture); + } + + private static int isTurbineControllerWithSide(IBlockAccess aWorld, int aX, int aY, int aZ, ForgeDirection side) { + TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); + if (!(tTileEntity instanceof IGregTechTileEntity)) return 0; + IGregTechTileEntity tTile = (IGregTechTileEntity) tTileEntity; + if (tTile.getMetaTileEntity() instanceof MTELargeTurbineBase && tTile.getFrontFacing() == side) { + if (tTile.isActive()) return 1; + return ((MTELargeTurbineBase) tTile.getMetaTileEntity()).hasTurbine() ? 2 : 3; + } + return 0; + } + + public ITexture[] getTurbineCasing(int iconIndex, boolean active, boolean hasTurbine) { + int states = active ? 0 : hasTurbine ? 1 : 2; + return new ITexture[] { TextureFactory.of(base), TextureFactory.of(turbineShape[states][iconIndex]) }; + } + + @Override + public ITexture[] getTexture(Block aBlock, ForgeDirection side, IBlockAccess aWorld, int xCoord, int yCoord, + int zCoord) { + final int ordinalSide = side.ordinal(); + int tInvertLeftRightMod = ordinalSide % 2 * 2 - 1; + switch (ordinalSide / 2) { + case 0: + for (int i = -1; i < 2; i++) { + for (int j = -1; j < 2; j++) { + if (i == 0 && j == 0) continue; + int tState; + if ((tState = isTurbineControllerWithSide(aWorld, xCoord + j, yCoord, zCoord + i, side)) != 0) { + return getTurbineCasing(4 - i * 3 - j, tState == 1, tState == 2); + } + } + } + break; + case 1: + for (int i = -1; i < 2; i++) { + for (int j = -1; j < 2; j++) { + if (i == 0 && j == 0) continue; + int tState; + if ((tState = isTurbineControllerWithSide(aWorld, xCoord + j, yCoord + i, zCoord, side)) != 0) { + return getTurbineCasing(4 + i * 3 - j * tInvertLeftRightMod, tState == 1, tState == 2); + } + } + } + break; + case 2: + for (int i = -1; i < 2; i++) { + for (int j = -1; j < 2; j++) { + if (i == 0 && j == 0) continue; + int tState; + if ((tState = isTurbineControllerWithSide(aWorld, xCoord, yCoord + i, zCoord + j, side)) != 0) { + return getTurbineCasing(4 + i * 3 + j * tInvertLeftRightMod, tState == 1, tState == 2); + } + } + } + break; + } + return getTexture(aBlock, side); + } + + @Override + public ITexture[] getTexture(Block aBlock, int aMeta, ForgeDirection side) { + return new ITexture[] { TextureFactory.of(base) }; + } + + @Override + public int getRenderType() { + if (BlockRenderHandler.INSTANCE == null) { + return super.getRenderType(); + } + return BlockRenderHandler.INSTANCE.mRenderID; + } +} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/Casing.java b/src/main/java/goodgenerator/blocks/regularBlock/Casing.java deleted file mode 100644 index c10b0f7184..0000000000 --- a/src/main/java/goodgenerator/blocks/regularBlock/Casing.java +++ /dev/null @@ -1,124 +0,0 @@ -package goodgenerator.blocks.regularBlock; - -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.entity.Entity; -import net.minecraft.entity.EnumCreatureType; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import goodgenerator.main.GoodGenerator; -import gregtech.api.GregTech_API; - -public class Casing extends Block { - - @SideOnly(Side.CLIENT) - protected IIcon[] texture; - - String[] textureNames; - protected String name; - - public Casing(String name) { - super(Material.iron); - this.setHardness(9.0F); - this.setResistance(5.0F); - this.name = name; - this.setHarvestLevel("wrench", 2); - this.setCreativeTab(GoodGenerator.GG); - GregTech_API.registerMachineBlock(this, -1); - } - - public Casing(String name, String[] texture) { - super(Material.iron); - this.setHardness(9.0F); - this.setResistance(5.0F); - this.name = name; - this.textureNames = texture; - this.setHarvestLevel("wrench", 2); - this.setCreativeTab(GoodGenerator.GG); - GregTech_API.registerMachineBlock(this, -1); - } - - public Casing(String name, String[] texture, Material material) { - super(material); - this.setHardness(9.0F); - this.setResistance(5.0F); - this.name = name; - this.textureNames = texture; - this.setHarvestLevel("wrench", 2); - this.setCreativeTab(GoodGenerator.GG); - GregTech_API.registerMachineBlock(this, -1); - } - - @Override - public int damageDropped(int meta) { - return meta; - } - - @Override - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) { - return meta < this.texture.length ? this.texture[meta] : this.texture[0]; - } - - @Override - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister par1IconRegister) { - this.texture = new IIcon[this.textureNames.length]; - for (int i = 0; i < this.textureNames.length; i++) { - this.texture[i] = par1IconRegister.registerIcon(this.textureNames[i]); - } - } - - @Override - @SideOnly(Side.CLIENT) - @SuppressWarnings("unchecked") - public void getSubBlocks(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < this.textureNames.length; i++) { - list.add(new ItemStack(item, 1, i)); - } - } - - @Override - public void onBlockAdded(World aWorld, int aX, int aY, int aZ) { - if (GregTech_API.isMachineBlock(this, aWorld.getBlockMetadata(aX, aY, aZ))) { - GregTech_API.causeMachineUpdate(aWorld, aX, aY, aZ); - } - } - - @Override - public void breakBlock(World aWorld, int aX, int aY, int aZ, Block aBlock, int aMetaData) { - if (GregTech_API.isMachineBlock(this, aMetaData)) { - GregTech_API.causeMachineUpdate(aWorld, aX, aY, aZ); - } - } - - @Override - public String getUnlocalizedName() { - return this.name; - } - - @Override - public boolean canBeReplacedByLeaves(IBlockAccess world, int x, int y, int z) { - return false; - } - - @Override - public boolean canEntityDestroy(IBlockAccess world, int x, int y, int z, Entity entity) { - return false; - } - - @Override - public boolean canCreatureSpawn(EnumCreatureType type, IBlockAccess world, int x, int y, int z) { - return false; - } -} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/ComplexTextureCasing.java b/src/main/java/goodgenerator/blocks/regularBlock/ComplexTextureCasing.java deleted file mode 100644 index 0a0169d0b4..0000000000 --- a/src/main/java/goodgenerator/blocks/regularBlock/ComplexTextureCasing.java +++ /dev/null @@ -1,58 +0,0 @@ -package goodgenerator.blocks.regularBlock; - -import java.util.List; - -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.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -public class ComplexTextureCasing extends Casing { - - @SideOnly(Side.CLIENT) - protected IIcon[] texture1, texture2; - String[] textureSide; - String[] textureTopAndDown; - - public ComplexTextureCasing(String name, String[] textureSide, String[] textureTopAndDown) { - super(name); - this.textureSide = textureSide; - this.textureTopAndDown = textureTopAndDown; - } - - @Override - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) { - if (side < 2) { - return meta < this.texture2.length ? this.texture2[meta] : this.texture2[0]; - } else { - return meta < this.texture1.length ? this.texture1[meta] : this.texture1[0]; - } - } - - @Override - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister par1IconRegister) { - this.texture1 = new IIcon[this.textureSide.length]; - for (int i = 0; i < this.textureSide.length; i++) { - this.texture1[i] = par1IconRegister.registerIcon(this.textureSide[i]); - } - this.texture2 = new IIcon[this.textureTopAndDown.length]; - for (int i = 0; i < this.textureTopAndDown.length; i++) { - this.texture2[i] = par1IconRegister.registerIcon(this.textureTopAndDown[i]); - } - } - - @Override - @SideOnly(Side.CLIENT) - @SuppressWarnings("unchecked") - public void getSubBlocks(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < Math.max(this.textureSide.length, this.textureTopAndDown.length); i++) { - list.add(new ItemStack(item, 1, i)); - } - } -} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/Frame.java b/src/main/java/goodgenerator/blocks/regularBlock/Frame.java deleted file mode 100644 index b4acb03518..0000000000 --- a/src/main/java/goodgenerator/blocks/regularBlock/Frame.java +++ /dev/null @@ -1,37 +0,0 @@ -package goodgenerator.blocks.regularBlock; - -import net.minecraft.block.material.Material; -import net.minecraft.world.IBlockAccess; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -public class Frame extends Casing { - - public Frame(String name, String[] texture) { - super(name, texture, Material.iron); - } - - @Override - public boolean isOpaqueCube() { - return false; - } - - @Override - @SideOnly(Side.CLIENT) - public boolean shouldSideBeRendered(IBlockAccess worldClient, int xCoord, int yCoord, int zCoord, int aSide) { - if (worldClient.getBlock(xCoord, yCoord, zCoord) instanceof Frame) return false; - return super.shouldSideBeRendered(worldClient, xCoord, yCoord, zCoord, aSide); - } - - @Override - @SideOnly(Side.CLIENT) - public int getRenderBlockPass() { - return 1; - } - - @Override - public boolean renderAsNormalBlock() { - return false; - } -} diff --git a/src/main/java/goodgenerator/blocks/regularBlock/TEBlock.java b/src/main/java/goodgenerator/blocks/regularBlock/TEBlock.java deleted file mode 100644 index dcd2bdd801..0000000000 --- a/src/main/java/goodgenerator/blocks/regularBlock/TEBlock.java +++ /dev/null @@ -1,207 +0,0 @@ -package goodgenerator.blocks.regularBlock; - -import java.util.List; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockContainer; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EnumCreatureType; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.IIcon; -import net.minecraft.util.StatCollector; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import goodgenerator.blocks.tileEntity.EssentiaHatch; -import goodgenerator.blocks.tileEntity.EssentiaOutputHatch; -import goodgenerator.blocks.tileEntity.EssentiaOutputHatch_ME; -import goodgenerator.main.GoodGenerator; -import gregtech.api.GregTech_API; -import gregtech.api.util.GT_Utility; -import thaumcraft.api.aspects.Aspect; -import thaumcraft.api.aspects.IEssentiaContainerItem; - -public class TEBlock extends BlockContainer { - - @SideOnly(Side.CLIENT) - protected IIcon[] texture; - - String[] textureNames; - protected String name; - protected int index; - - public TEBlock(String name, String[] texture, CreativeTabs Tab) { - super(Material.iron); - this.setHardness(9.0F); - this.setResistance(5.0F); - this.name = name; - this.textureNames = texture; - this.setHarvestLevel("wrench", 2); - this.setCreativeTab(GoodGenerator.GG); - GregTech_API.registerMachineBlock(this, -1); - } - - public TEBlock(String name, String[] texture, int index) { - super(Material.iron); - this.setHardness(9.0F); - this.setResistance(5.0F); - this.name = name; - this.textureNames = texture; - this.setHarvestLevel("wrench", 2); - this.index = index; - this.setCreativeTab(GoodGenerator.GG); - GregTech_API.registerMachineBlock(this, -1); - } - - public TEBlock(String name, String[] texture, Material material) { - super(material); - this.setHardness(9.0F); - this.setResistance(5.0F); - this.name = name; - this.textureNames = texture; - this.setHarvestLevel("wrench", 2); - this.setCreativeTab(GoodGenerator.GG); - GregTech_API.registerMachineBlock(this, -1); - } - - public int getIndex() { - return this.index; - } - - @Override - public int damageDropped(int meta) { - return meta; - } - - @Override - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) { - return meta < this.texture.length ? this.texture[meta] : this.texture[0]; - } - - @Override - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister par1IconRegister) { - this.texture = new IIcon[this.textureNames.length]; - for (int i = 0; i < this.textureNames.length; i++) { - this.texture[i] = par1IconRegister.registerIcon(this.textureNames[i]); - } - } - - @Override - @SideOnly(Side.CLIENT) - @SuppressWarnings("unchecked") - public void getSubBlocks(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < this.textureNames.length; i++) { - list.add(new ItemStack(item, 1, i)); - } - } - - @Override - public void onBlockAdded(World aWorld, int aX, int aY, int aZ) { - if (GregTech_API.isMachineBlock(this, aWorld.getBlockMetadata(aX, aY, aZ))) { - GregTech_API.causeMachineUpdate(aWorld, aX, aY, aZ); - } - } - - @Override - public void breakBlock(World aWorld, int aX, int aY, int aZ, Block aBlock, int aMetaData) { - if (GregTech_API.isMachineBlock(this, aMetaData)) { - GregTech_API.causeMachineUpdate(aWorld, aX, aY, aZ); - } - aWorld.removeTileEntity(aX, aY, aZ); - } - - @Override - public String getUnlocalizedName() { - return this.name; - } - - @Override - public boolean canBeReplacedByLeaves(IBlockAccess world, int x, int y, int z) { - return false; - } - - @Override - public boolean canEntityDestroy(IBlockAccess world, int x, int y, int z, Entity entity) { - return false; - } - - @Override - public boolean canCreatureSpawn(EnumCreatureType type, IBlockAccess world, int x, int y, int z) { - return false; - } - - @Override - public TileEntity createTileEntity(World world, int meta) { - switch (index) { - case 1: - return new EssentiaHatch(); - case 2: - return new EssentiaOutputHatch(); - case 3: - return new EssentiaOutputHatch_ME(); - default: - return null; - } - } - - @Override - public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int par6, float par7, - float par8, float par9) { - if (world.isRemote) { - return false; - } else { - TileEntity tile = world.getTileEntity(x, y, z); - if (index == 1) { - if (tile instanceof EssentiaHatch) { - ItemStack tItemStack = player.getHeldItem(); - if (tItemStack != null) { - Item tItem = tItemStack.getItem(); - if (tItem instanceof IEssentiaContainerItem - && ((IEssentiaContainerItem) tItem).getAspects(player.getHeldItem()) != null - && ((IEssentiaContainerItem) tItem).getAspects(player.getHeldItem()) - .size() > 0) { - Aspect tLocked = ((IEssentiaContainerItem) tItem).getAspects(player.getHeldItem()) - .getAspects()[0]; - ((EssentiaHatch) tile).setLockedAspect(tLocked); - GT_Utility.sendChatToPlayer( - player, - String.format( - StatCollector.translateToLocal("essentiahatch.chat.0"), - tLocked.getLocalizedDes