From b65e963f1214be53d47c6874d371e23e459b3f03 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Thu, 19 Jul 2018 10:48:30 +0100 Subject: [PATCH] Move all mod compatibility out into its own mod, ic2 support is gone and will come back in some more basic form once ic2 is on 1.13 The new mod compatibility will be included (either shaded or jar-in-jar) in the main TR distrubtion, this has been done to aid development --- ModCompatibility/.gitignore | 15 ++ ModCompatibility/build.gradle | 153 +++++++++++++ .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 54706 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + ModCompatibility/gradlew | 172 +++++++++++++++ ModCompatibility/gradlew.bat | 84 ++++++++ ModCompatibility/settings.gradle | 1 + .../java/techreborn/compat/TRModCompat.java | 44 ++++ .../compat}/compat/CompatConfigs.java | 2 +- .../compat}/compat/CompatManager.java | 20 +- .../compat}/compat/ICompatModule.java | 2 +- .../buildcraft/BuildcraftBuildersCompat.java | 6 +- .../compat/buildcraft/BuildcraftCompat.java | 6 +- .../compat/crafttweaker/CTAlloySmelter.java | 2 +- .../crafttweaker/CTAssemblingMachine.java | 2 +- .../compat/crafttweaker/CTBlastFurnace.java | 2 +- .../compat/crafttweaker/CTCentrifuge.java | 2 +- .../crafttweaker/CTChemicalReactor.java | 2 +- .../compat/crafttweaker/CTCompressor.java | 2 +- .../crafttweaker/CTDistillationTower.java | 2 +- .../compat/crafttweaker/CTExtractor.java | 2 +- .../compat/crafttweaker/CTFluidGen.java | 2 +- .../crafttweaker/CTFluidReplicator.java | 2 +- .../compat/crafttweaker/CTFusionReactor.java | 2 +- .../compat/crafttweaker/CTGeneric.java | 2 +- .../compat/crafttweaker/CTGrinder.java | 2 +- .../crafttweaker/CTImplosionCompressor.java | 2 +- .../CTIndustrialElectrolyzer.java | 2 +- .../crafttweaker/CTIndustrialGrinder.java | 2 +- .../crafttweaker/CTIndustrialSawmill.java | 2 +- .../compat/crafttweaker/CTRollingMachine.java | 2 +- .../compat/crafttweaker/CTScrapbox.java | 4 +- .../compat/crafttweaker/CTVacuumFreezer.java | 2 +- .../crafttweaker/CraftTweakerCompat.java | 4 +- .../compat/crafttweaker/RecipeSettings.java | 2 +- .../compat/crafttweaker/ZenDocumentation.java | 2 +- .../compat}/compat/ic2/RecipesIC2.java | 4 +- .../RecipeImmersiveEngineering.java | 4 +- .../compat}/compat/jei/BaseRecipeWrapper.java | 2 +- .../jei/BuiltContainerTransferInfo.java | 2 +- .../compat/jei/RecipeCategoryUids.java | 2 +- .../compat}/compat/jei/RecipeUtil.java | 2 +- .../compat/jei/TechRebornJeiPlugin.java | 84 ++++---- .../AlloySmelterRecipeCategory.java | 6 +- .../AlloySmelterRecipeWrapper.java | 4 +- .../AssemblingMachineRecipeCategory.java | 6 +- .../AssemblingMachineRecipeWrapper.java | 4 +- .../BlastFurnaceRecipeCategory.java | 6 +- .../BlastFurnaceRecipeWrapper.java | 4 +- .../centrifuge/CentrifugeRecipeCategory.java | 6 +- .../centrifuge/CentrifugeRecipeWrapper.java | 4 +- .../ChemicalReactorRecipeCategory.java | 6 +- .../ChemicalReactorRecipeWrapper.java | 4 +- .../compressor/CompressorRecipeCategory.java | 6 +- .../compressor/CompressorRecipeWrapper.java | 4 +- .../DistillationTowerRecipeCategory.java | 6 +- .../DistillationTowerRecipeWrapper.java | 4 +- .../extractor/ExtractorRecipeCategory.java | 6 +- .../jei/extractor/ExtractorRecipeWrapper.java | 4 +- .../FluidReplicatorRecipeCategory.java | 6 +- .../FluidReplicatorRecipeWrapper.java | 2 +- .../FusionReactorRecipeCategory.java | 4 +- .../FusionReactorRecipeWrapper.java | 4 +- .../fluid/FluidGeneratorRecipeCategory.java | 4 +- .../fluid/FluidGeneratorRecipeWrapper.java | 2 +- .../jei/grinder/GrinderRecipeCategory.java | 6 +- .../jei/grinder/GrinderRecipeWrapper.java | 4 +- .../ImplosionCompressorRecipeCategory.java | 6 +- .../ImplosionCompressorRecipeWrapper.java | 4 +- .../IndustrialElectrolyzerRecipeCategory.java | 6 +- .../IndustrialElectrolyzerRecipeWrapper.java | 4 +- .../IndustrialGrinderRecipeCategory.java | 6 +- .../IndustrialGrinderRecipeWrapper.java | 4 +- .../IndustrialSawmillRecipeCategory.java | 198 ++++++++--------- .../IndustrialSawmillRecipeWrapper.java | 192 ++++++++--------- .../RollingMachineRecipeCategory.java | 4 +- .../RollingMachineRecipeMaker.java | 2 +- .../RollingMachineRecipeWrapper.java | 2 +- .../jei/scrapbox/ScrapboxRecipeCategory.java | 6 +- .../jei/scrapbox/ScrapboxRecipeWrapper.java | 4 +- .../VacuumFreezerRecipeCategory.java | 6 +- .../VacuumFreezerRecipeWrapper.java | 4 +- .../opencomputers/CompatOpenComputers.java | 4 +- .../compat/opencomputers/DriverMachine.java | 2 +- .../compat}/compat/psi/CompatModulePsi.java | 6 +- .../spell/trick/block/PieceTrickBlockTap.java | 2 +- .../compat/theoneprobe/ProbeConfig.java | 2 +- .../compat/theoneprobe/ProbeProvider.java | 2 +- .../compat/theoneprobe/TheOneProbeCompat.java | 6 +- .../RecipeThermalExpansion.java | 4 +- .../compat/tinkers/CompatModuleTinkers.java | 4 +- .../compat}/compat/tinkers/TinkersFluids.java | 2 +- .../compat/waila/CompatModuleWaila.java | 2 +- .../compat/waila/WailaProviderMachines.java | 2 +- build.gradle | 66 ------ src/main/java/techreborn/Core.java | 18 -- .../techreborn/api/ISubItemRetriever.java | 2 - .../ContainerTileInventoryBuilder.java | 5 +- .../techreborn/config/ConfigTechReborn.java | 3 - src/main/java/techreborn/init/IC2Dict.java | 151 ------------- .../java/techreborn/init/IC2Duplicates.java | 118 ---------- src/main/java/techreborn/init/ModRecipes.java | 57 +---- src/main/java/techreborn/init/OreDict.java | 15 +- .../techreborn/init/SubItemRetriever.java | 5 - .../init/recipes/ChemicalReactorRecipes.java | 9 - .../init/recipes/CraftingTableRecipes.java | 201 +++++++++--------- .../init/recipes/RecipeMethods.java | 11 - .../init/recipes/SmeltingRecipes.java | 9 +- .../items/tools/ItemElectricTreetap.java | 19 -- .../techreborn/items/tools/ItemTreeTap.java | 18 -- .../techreborn/items/tools/ItemWrench.java | 8 - src/main/java/techreborn/lib/ModInfo.java | 2 +- .../java/techreborn/proxies/CommonProxy.java | 7 +- .../java/techreborn/tiles/TileChargeOMat.java | 4 - .../tiles/TileMatterFabricator.java | 6 - .../generator/TileCreativeSolarPanel.java | 7 - .../tiles/storage/TileEnergyStorage.java | 4 - .../java/techreborn/utils/IC2ItemCharger.java | 59 ----- .../techreborn/utils/IC2WrenchHelper.java | 58 ----- 119 files changed, 975 insertions(+), 1146 deletions(-) create mode 100644 ModCompatibility/.gitignore create mode 100644 ModCompatibility/build.gradle create mode 100644 ModCompatibility/gradle/wrapper/gradle-wrapper.jar create mode 100644 ModCompatibility/gradle/wrapper/gradle-wrapper.properties create mode 100644 ModCompatibility/gradlew create mode 100644 ModCompatibility/gradlew.bat create mode 100644 ModCompatibility/settings.gradle create mode 100644 ModCompatibility/src/main/java/techreborn/compat/TRModCompat.java rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/CompatConfigs.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/CompatManager.java (88%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/ICompatModule.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/buildcraft/BuildcraftBuildersCompat.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/buildcraft/BuildcraftCompat.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTAlloySmelter.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTAssemblingMachine.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTBlastFurnace.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTCentrifuge.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTChemicalReactor.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTCompressor.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTDistillationTower.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTExtractor.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTFluidGen.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTFluidReplicator.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTFusionReactor.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTGeneric.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTGrinder.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTImplosionCompressor.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTIndustrialElectrolyzer.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTIndustrialGrinder.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTIndustrialSawmill.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTRollingMachine.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTScrapbox.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CTVacuumFreezer.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/CraftTweakerCompat.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/RecipeSettings.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/crafttweaker/ZenDocumentation.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/ic2/RecipesIC2.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/immersiveengineering/RecipeImmersiveEngineering.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/BaseRecipeWrapper.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/BuiltContainerTransferInfo.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/RecipeCategoryUids.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/RecipeUtil.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/TechRebornJeiPlugin.java (89%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/centrifuge/CentrifugeRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/centrifuge/CentrifugeRecipeWrapper.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/compressor/CompressorRecipeCategory.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/compressor/CompressorRecipeWrapper.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/distillationTower/DistillationTowerRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/extractor/ExtractorRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/extractor/ExtractorRecipeWrapper.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/fusionReactor/FusionReactorRecipeCategory.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/generators/fluid/FluidGeneratorRecipeCategory.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/generators/fluid/FluidGeneratorRecipeWrapper.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/grinder/GrinderRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/grinder/GrinderRecipeWrapper.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/industrialGrinder/IndustrialGrinderRecipeWrapper.java (96%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java (93%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/industrialSawmill/IndustrialSawmillRecipeWrapper.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/rollingMachine/RollingMachineRecipeCategory.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/rollingMachine/RollingMachineRecipeMaker.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/rollingMachine/RollingMachineRecipeWrapper.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/scrapbox/ScrapboxRecipeCategory.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/scrapbox/ScrapboxRecipeWrapper.java (93%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/opencomputers/CompatOpenComputers.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/opencomputers/DriverMachine.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/psi/CompatModulePsi.java (94%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/psi/spell/trick/block/PieceTrickBlockTap.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/theoneprobe/ProbeConfig.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/theoneprobe/ProbeProvider.java (99%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/theoneprobe/TheOneProbeCompat.java (92%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/thermalexpansion/RecipeThermalExpansion.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/tinkers/CompatModuleTinkers.java (95%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/tinkers/TinkersFluids.java (98%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/waila/CompatModuleWaila.java (97%) rename {src/main/java/techreborn => ModCompatibility/src/main/java/techreborn/compat}/compat/waila/WailaProviderMachines.java (98%) delete mode 100644 src/main/java/techreborn/init/IC2Dict.java delete mode 100644 src/main/java/techreborn/init/IC2Duplicates.java delete mode 100644 src/main/java/techreborn/utils/IC2ItemCharger.java delete mode 100644 src/main/java/techreborn/utils/IC2WrenchHelper.java diff --git a/ModCompatibility/.gitignore b/ModCompatibility/.gitignore new file mode 100644 index 000000000..c252cd6ef --- /dev/null +++ b/ModCompatibility/.gitignore @@ -0,0 +1,15 @@ +/bin +/out +/run/* +/build +/eclipse +/.gradle +*.iml +*.ipr +*.iws +/.metadata +/.settings +/classpath +.idea/* +/logs/ +/classes/ diff --git a/ModCompatibility/build.gradle b/ModCompatibility/build.gradle new file mode 100644 index 000000000..2d250e130 --- /dev/null +++ b/ModCompatibility/build.gradle @@ -0,0 +1,153 @@ +buildscript { + repositories { + mavenCentral() + maven { + name = "forge" + url = "http://files.minecraftforge.net/maven" + } + maven { + name = "sonatype" + url = "https://oss.sonatype.org/content/repositories/snapshots/" + } + maven { + url "https://plugins.gradle.org/m2/" + } + } + dependencies { + classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT' + classpath "gradle.plugin.net.minecrell:licenser:0.2.1" + } +} + +apply plugin: 'net.minecraftforge.gradle.forge' +apply plugin: 'maven' +apply plugin: 'maven-publish' + +sourceCompatibility = 1.8 +targetCompatibility = 1.8 + + +repositories { + maven { + name = "Modmuss50" + url = "http://maven.modmuss50.me/" + } + maven { + // JEI, TiC + name "TiC" + url "http://dvs1.progwml6.com/files/maven" + } + maven { + name = "Amadornes" + url "http://maven.amadornes.com/" + } + maven { + // CraftTweaker2 + name "Jared" + url "http://maven.blamejared.com/" + } + maven { + // TheOneProbe + url "http://maven.tterrag.com/" + } + maven { + // IC2 + name = "ic2" + url = "http://maven.ic2.player.to/" + } + maven { + // HWYLA + name "TehNut" + url "http://tehnut.info/maven/" + } + maven { + name 'CB Repo' + url "http://chickenbones.net/maven/" + } + maven { + // CoFH + name 'Covers' + url "http://maven.covers1624.net/" + } + ivy { + name "BuildCraft" + artifactPattern "http://www.mod-buildcraft.com/releases/BuildCraft/[revision]/[module]-[revision].[ext]" + } + maven { + name "OpenComputer" + url "http://maven.cil.li/" + } +} + +version = "2.16.0" + +def ENV = System.getenv() +if (ENV.BUILD_NUMBER) { + version = version + "." + "${System.getenv().BUILD_NUMBER}" +} + +minecraft { + version = "1.12.2-14.23.4.2705" + mappings = "snapshot_20171003" + replace "@MODVERSION@", project.version + useDepAts = true + runDir = "run" +} + +group = 'TechRebornModCompatibility' + +dependencies { + //Some dep we use wants the older jei, so this ingores it. We grab the latest anyway, so it shoudnt cause any issues. + def withoutOldJEI = { exclude module: 'jei_1.12.2' } + + deobfCompile('RebornCore:RebornCore-1.12.2:+:universal') { + transitive = false + } + compile "mcp.mobius.waila:Hwyla:+" + compile "CraftTweaker2:CraftTweaker2-MC1120-Main:1.12-4.0.12.323" + compile name: 'buildcraft', version: '7.99.17', ext: 'jar' + + deobfCompile "mezz.jei:jei_1.12.2:+" + deobfCompile "mcjty.theoneprobe:TheOneProbe-1.12:1.12-1.4.19-11" + deobfCompile 'net.industrial-craft:industrialcraft-2:2.8.+' + deobfCompile 'cofh:ThermalDynamics:1.12.2-2.5+:universal' + deobfCompile 'cofh:ThermalExpansion:1.12.2-5.5+:universal' + deobfCompile 'MCMultiPart2:MCMultiPart:2.4.1' + deobfCompile "li.cil.oc:OpenComputers:MC1.12.2-1.7.2+" + deobfCompile "blusunrize:ImmersiveEngineering:0.12-+:deobf" +} + + +task deobfJar(type: Jar) { + from sourceSets.main.output + exclude "**/*.psd" + classifier = 'dev' +} + + +jar { + exclude "**/*.psd" + classifier = 'universal' +} + +build.dependsOn deobfJar + +task signJar(type: SignJar, dependsOn: reobfJar) { + onlyIf { + project.hasProperty('keyStore') + } + + if (project.hasProperty('keyStore')) { + keyStore = project.keyStore + alias = project.keyStoreAlias + storePass = project.keyStorePass + keyPass = project.keyStoreKeyPass + inputFile = jar.archivePath + outputFile = jar.archivePath + } + +} + +build.dependsOn signJar + +apply from: 'https://github.com/FabricMC/fabric-docs/raw/master/gradle/ideconfig.gradle' diff --git a/ModCompatibility/gradle/wrapper/gradle-wrapper.jar b/ModCompatibility/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..5874e218fbc5a55bc28f7eed7b33942a57a3b289 GIT binary patch literal 54706 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 literal 0 HcmV?d00001 diff --git a/ModCompatibility/gradle/wrapper/gradle-wrapper.properties b/ModCompatibility/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..bae316f8c --- /dev/null +++ b/ModCompatibility/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Mon Feb 19 13:23:28 GMT 2018 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-4.4.1-bin.zip diff --git a/ModCompatibility/gradlew b/ModCompatibility/gradlew new file mode 100644 index 000000000..cccdd3d51 --- /dev/null +++ b/ModCompatibility/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/ModCompatibility/gradlew.bat b/ModCompatibility/gradlew.bat new file mode 100644 index 000000000..f9553162f --- /dev/null +++ b/ModCompatibility/gradlew.bat @@ -0,0 +1,84 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/ModCompatibility/settings.gradle b/ModCompatibility/settings.gradle new file mode 100644 index 000000000..a153ed9cb --- /dev/null +++ b/ModCompatibility/settings.gradle @@ -0,0 +1 @@ +rootProject.name = "TechRebornModCompatibility-1.12.2" \ No newline at end of file diff --git a/ModCompatibility/src/main/java/techreborn/compat/TRModCompat.java b/ModCompatibility/src/main/java/techreborn/compat/TRModCompat.java new file mode 100644 index 000000000..59b6a55a1 --- /dev/null +++ b/ModCompatibility/src/main/java/techreborn/compat/TRModCompat.java @@ -0,0 +1,44 @@ +package techreborn.compat; + +import net.minecraftforge.fml.common.Loader; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; +import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; +import net.minecraftforge.fml.common.event.FMLServerStartingEvent; +import techreborn.compat.compat.CompatManager; +import techreborn.compat.compat.ICompatModule; + +@Mod(modid = "techrebornmodcompatibility") +public class TRModCompat { + + @Mod.EventHandler + public void preinit(FMLPreInitializationEvent event){ + CompatManager.isIC2Loaded = Loader.isModLoaded("ic2"); + for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { + compatModule.preInit(event); + } + } + + @Mod.EventHandler + public void init(FMLInitializationEvent event){ + // Compat + for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { + compatModule.init(event); + } + } + + @Mod.EventHandler + public void postinit(FMLPostInitializationEvent event){ + for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { + compatModule.postInit(event); + } + } + + @Mod.EventHandler + public void serverStarting(FMLServerStartingEvent event){ + for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { + compatModule.serverStarting(event); + } + } +} diff --git a/src/main/java/techreborn/compat/CompatConfigs.java b/ModCompatibility/src/main/java/techreborn/compat/compat/CompatConfigs.java similarity index 98% rename from src/main/java/techreborn/compat/CompatConfigs.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/CompatConfigs.java index afa4a7342..256cc06aa 100644 --- a/src/main/java/techreborn/compat/CompatConfigs.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/CompatConfigs.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat; +package techreborn.compat.compat; import reborncore.common.registration.RebornRegistry; import reborncore.common.registration.impl.ConfigRegistry; diff --git a/src/main/java/techreborn/compat/CompatManager.java b/ModCompatibility/src/main/java/techreborn/compat/compat/CompatManager.java similarity index 88% rename from src/main/java/techreborn/compat/CompatManager.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/CompatManager.java index c584a6406..8688fb0d3 100644 --- a/src/main/java/techreborn/compat/CompatManager.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/CompatManager.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat; +package techreborn.compat.compat; import net.minecraftforge.common.config.Configuration; import net.minecraftforge.common.config.Property; @@ -32,15 +32,15 @@ import net.minecraftforge.fml.relauncher.Side; import reborncore.common.registration.RebornRegistry; import reborncore.common.registration.impl.ConfigRegistry; import reborncore.common.registration.impl.ConfigRegistryFactory; -import techreborn.compat.buildcraft.BuildcraftBuildersCompat; -import techreborn.compat.buildcraft.BuildcraftCompat; -import techreborn.compat.crafttweaker.CraftTweakerCompat; -import techreborn.compat.ic2.RecipesIC2; -import techreborn.compat.immersiveengineering.RecipeImmersiveEngineering; -import techreborn.compat.opencomputers.CompatOpenComputers; -import techreborn.compat.theoneprobe.TheOneProbeCompat; -import techreborn.compat.thermalexpansion.RecipeThermalExpansion; -import techreborn.compat.tinkers.CompatModuleTinkers; +import techreborn.compat.compat.buildcraft.BuildcraftBuildersCompat; +import techreborn.compat.compat.buildcraft.BuildcraftCompat; +import techreborn.compat.compat.crafttweaker.CraftTweakerCompat; +import techreborn.compat.compat.ic2.RecipesIC2; +import techreborn.compat.compat.immersiveengineering.RecipeImmersiveEngineering; +import techreborn.compat.compat.opencomputers.CompatOpenComputers; +import techreborn.compat.compat.theoneprobe.TheOneProbeCompat; +import techreborn.compat.compat.thermalexpansion.RecipeThermalExpansion; +import techreborn.compat.compat.tinkers.CompatModuleTinkers; import techreborn.lib.ModInfo; import java.lang.annotation.Annotation; diff --git a/src/main/java/techreborn/compat/ICompatModule.java b/ModCompatibility/src/main/java/techreborn/compat/compat/ICompatModule.java similarity index 98% rename from src/main/java/techreborn/compat/ICompatModule.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/ICompatModule.java index cf74e0e03..c1dc9841f 100644 --- a/src/main/java/techreborn/compat/ICompatModule.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/ICompatModule.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat; +package techreborn.compat.compat; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; diff --git a/src/main/java/techreborn/compat/buildcraft/BuildcraftBuildersCompat.java b/ModCompatibility/src/main/java/techreborn/compat/compat/buildcraft/BuildcraftBuildersCompat.java similarity index 94% rename from src/main/java/techreborn/compat/buildcraft/BuildcraftBuildersCompat.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/buildcraft/BuildcraftBuildersCompat.java index 79a45c408..2b4a0bb86 100644 --- a/src/main/java/techreborn/compat/buildcraft/BuildcraftBuildersCompat.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/buildcraft/BuildcraftBuildersCompat.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.buildcraft; +package techreborn.compat.compat.buildcraft; import buildcraft.builders.BCBuildersBlocks; import net.minecraft.item.ItemStack; @@ -33,8 +33,8 @@ import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import reborncore.common.util.RebornCraftingHelper; import reborncore.common.util.RecipeRemover; import techreborn.Core; -import techreborn.compat.CompatConfigs; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.CompatConfigs; +import techreborn.compat.compat.ICompatModule; import techreborn.init.ModItems; /** diff --git a/src/main/java/techreborn/compat/buildcraft/BuildcraftCompat.java b/ModCompatibility/src/main/java/techreborn/compat/compat/buildcraft/BuildcraftCompat.java similarity index 94% rename from src/main/java/techreborn/compat/buildcraft/BuildcraftCompat.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/buildcraft/BuildcraftCompat.java index a17f83f45..952dbda98 100644 --- a/src/main/java/techreborn/compat/buildcraft/BuildcraftCompat.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/buildcraft/BuildcraftCompat.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.buildcraft; +package techreborn.compat.compat.buildcraft; import buildcraft.api.fuels.IFuel; import buildcraft.lib.fluid.FuelRegistry; @@ -33,8 +33,8 @@ import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import reborncore.common.RebornCoreConfig; import techreborn.api.generator.EFluidGenerator; import techreborn.api.generator.GeneratorRecipeHelper; -import techreborn.compat.CompatConfigs; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.CompatConfigs; +import techreborn.compat.compat.ICompatModule; /** * Created by Mark on 02/06/2017. diff --git a/src/main/java/techreborn/compat/crafttweaker/CTAlloySmelter.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTAlloySmelter.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTAlloySmelter.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTAlloySmelter.java index 93aa0c5af..497b1ace7 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTAlloySmelter.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTAlloySmelter.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTAssemblingMachine.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTAssemblingMachine.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTAssemblingMachine.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTAssemblingMachine.java index 325664938..01e767748 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTAssemblingMachine.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTAssemblingMachine.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTBlastFurnace.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTBlastFurnace.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTBlastFurnace.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTBlastFurnace.java index 7db8c546c..76f7e125a 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTBlastFurnace.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTBlastFurnace.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTCentrifuge.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTCentrifuge.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTCentrifuge.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTCentrifuge.java index a0f807eca..a468955d0 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTCentrifuge.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTCentrifuge.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTChemicalReactor.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTChemicalReactor.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTChemicalReactor.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTChemicalReactor.java index ec34b45f3..fdcfba487 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTChemicalReactor.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTChemicalReactor.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTCompressor.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTCompressor.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTCompressor.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTCompressor.java index 323917c9a..5fd71e40e 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTCompressor.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTCompressor.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTDistillationTower.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTDistillationTower.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTDistillationTower.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTDistillationTower.java index a09b5d483..3661c23cc 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTDistillationTower.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTDistillationTower.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTExtractor.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTExtractor.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTExtractor.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTExtractor.java index 844966de9..66f94a90c 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTExtractor.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTExtractor.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTFluidGen.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFluidGen.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTFluidGen.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFluidGen.java index 872854f2e..f6b994e88 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTFluidGen.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFluidGen.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.api.liquid.ILiquidStack; import stanhebben.zenscript.annotations.ZenClass; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTFluidReplicator.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFluidReplicator.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTFluidReplicator.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFluidReplicator.java index ce741227b..f66dcb457 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTFluidReplicator.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFluidReplicator.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import java.util.Optional; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTFusionReactor.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFusionReactor.java similarity index 99% rename from src/main/java/techreborn/compat/crafttweaker/CTFusionReactor.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFusionReactor.java index 33b64f911..4adbf76c3 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTFusionReactor.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTFusionReactor.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.IAction; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTGeneric.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTGeneric.java similarity index 99% rename from src/main/java/techreborn/compat/crafttweaker/CTGeneric.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTGeneric.java index 002c30cea..52d5080e2 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTGeneric.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTGeneric.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.IAction; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTGrinder.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTGrinder.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTGrinder.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTGrinder.java index a0bc31d63..e8c58a6d6 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTGrinder.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTGrinder.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTImplosionCompressor.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTImplosionCompressor.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTImplosionCompressor.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTImplosionCompressor.java index 2a8acf16c..b53bd9a06 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTImplosionCompressor.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTImplosionCompressor.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTIndustrialElectrolyzer.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialElectrolyzer.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTIndustrialElectrolyzer.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialElectrolyzer.java index 47c6691f2..c077516b6 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTIndustrialElectrolyzer.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialElectrolyzer.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTIndustrialGrinder.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialGrinder.java similarity index 99% rename from src/main/java/techreborn/compat/crafttweaker/CTIndustrialGrinder.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialGrinder.java index 4580cf0d9..6f000098c 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTIndustrialGrinder.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialGrinder.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTIndustrialSawmill.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialSawmill.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTIndustrialSawmill.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialSawmill.java index 8d0ff68cc..e3a2a2d96 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTIndustrialSawmill.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTIndustrialSawmill.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTRollingMachine.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTRollingMachine.java similarity index 99% rename from src/main/java/techreborn/compat/crafttweaker/CTRollingMachine.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTRollingMachine.java index 3985acc0f..4fff0ede5 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTRollingMachine.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTRollingMachine.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.IAction; diff --git a/src/main/java/techreborn/compat/crafttweaker/CTScrapbox.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTScrapbox.java similarity index 95% rename from src/main/java/techreborn/compat/crafttweaker/CTScrapbox.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTScrapbox.java index cd03e286d..eb14d3692 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTScrapbox.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTScrapbox.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.IAction; @@ -34,7 +34,7 @@ import stanhebben.zenscript.annotations.ZenClass; import stanhebben.zenscript.annotations.ZenMethod; import techreborn.api.Reference; import techreborn.api.recipe.machines.ScrapboxRecipe; -import techreborn.compat.crafttweaker.CTGeneric.Remove; +import techreborn.compat.compat.crafttweaker.CTGeneric.Remove; /** * Created by Mark on 02/06/2017. diff --git a/src/main/java/techreborn/compat/crafttweaker/CTVacuumFreezer.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTVacuumFreezer.java similarity index 98% rename from src/main/java/techreborn/compat/crafttweaker/CTVacuumFreezer.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTVacuumFreezer.java index c77e6712d..f93e87de5 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CTVacuumFreezer.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CTVacuumFreezer.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; diff --git a/src/main/java/techreborn/compat/crafttweaker/CraftTweakerCompat.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CraftTweakerCompat.java similarity index 97% rename from src/main/java/techreborn/compat/crafttweaker/CraftTweakerCompat.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CraftTweakerCompat.java index 2b7f75362..e0192a38b 100644 --- a/src/main/java/techreborn/compat/crafttweaker/CraftTweakerCompat.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/CraftTweakerCompat.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import crafttweaker.CraftTweakerAPI; import crafttweaker.api.item.IIngredient; @@ -37,7 +37,7 @@ import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import net.minecraftforge.fml.relauncher.ReflectionHelper; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.ICompatModule; import static crafttweaker.api.minecraft.CraftTweakerMC.getItemStack; import static crafttweaker.api.minecraft.CraftTweakerMC.getLiquidStack; diff --git a/src/main/java/techreborn/compat/crafttweaker/RecipeSettings.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/RecipeSettings.java similarity index 97% rename from src/main/java/techreborn/compat/crafttweaker/RecipeSettings.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/RecipeSettings.java index dcce21c4e..1a4208b5c 100644 --- a/src/main/java/techreborn/compat/crafttweaker/RecipeSettings.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/RecipeSettings.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import stanhebben.zenscript.annotations.ZenClass; import stanhebben.zenscript.annotations.ZenMethod; diff --git a/src/main/java/techreborn/compat/crafttweaker/ZenDocumentation.java b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/ZenDocumentation.java similarity index 97% rename from src/main/java/techreborn/compat/crafttweaker/ZenDocumentation.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/ZenDocumentation.java index 4d72f622f..89190df75 100644 --- a/src/main/java/techreborn/compat/crafttweaker/ZenDocumentation.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/crafttweaker/ZenDocumentation.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.crafttweaker; +package techreborn.compat.compat.crafttweaker; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/src/main/java/techreborn/compat/ic2/RecipesIC2.java b/ModCompatibility/src/main/java/techreborn/compat/compat/ic2/RecipesIC2.java similarity index 98% rename from src/main/java/techreborn/compat/ic2/RecipesIC2.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/ic2/RecipesIC2.java index 053e91f34..a0c6738f4 100644 --- a/src/main/java/techreborn/compat/ic2/RecipesIC2.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/ic2/RecipesIC2.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.ic2; +package techreborn.compat.compat.ic2; import ic2.api.item.IC2Items; import ic2.core.ref.ItemName; @@ -41,7 +41,7 @@ import reborncore.common.util.RebornCraftingHelper; import techreborn.api.recipe.machines.CompressorRecipe; import techreborn.api.recipe.machines.ExtractorRecipe; import techreborn.api.recipe.machines.GrinderRecipe; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.ICompatModule; import techreborn.init.ModBlocks; import techreborn.init.ModItems; import techreborn.init.recipes.RecipeMethods; diff --git a/src/main/java/techreborn/compat/immersiveengineering/RecipeImmersiveEngineering.java b/ModCompatibility/src/main/java/techreborn/compat/compat/immersiveengineering/RecipeImmersiveEngineering.java similarity index 95% rename from src/main/java/techreborn/compat/immersiveengineering/RecipeImmersiveEngineering.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/immersiveengineering/RecipeImmersiveEngineering.java index c441c8041..c03290e96 100644 --- a/src/main/java/techreborn/compat/immersiveengineering/RecipeImmersiveEngineering.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/immersiveengineering/RecipeImmersiveEngineering.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.immersiveengineering; +package techreborn.compat.compat.immersiveengineering; import blusunrize.immersiveengineering.common.IEContent; @@ -32,7 +32,7 @@ import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import techreborn.api.generator.EFluidGenerator; import techreborn.api.generator.GeneratorRecipeHelper; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.ICompatModule; public class RecipeImmersiveEngineering implements ICompatModule { @Override diff --git a/src/main/java/techreborn/compat/jei/BaseRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/BaseRecipeWrapper.java similarity index 99% rename from src/main/java/techreborn/compat/jei/BaseRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/BaseRecipeWrapper.java index 5583cfe1b..ac1b46c1d 100644 --- a/src/main/java/techreborn/compat/jei/BaseRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/BaseRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei; +package techreborn.compat.compat.jei; import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeWrapper; diff --git a/src/main/java/techreborn/compat/jei/BuiltContainerTransferInfo.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/BuiltContainerTransferInfo.java similarity index 98% rename from src/main/java/techreborn/compat/jei/BuiltContainerTransferInfo.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/BuiltContainerTransferInfo.java index 4b16b4699..c1a46aba1 100644 --- a/src/main/java/techreborn/compat/jei/BuiltContainerTransferInfo.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/BuiltContainerTransferInfo.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei; +package techreborn.compat.compat.jei; import mezz.jei.api.recipe.transfer.IRecipeTransferInfo; import net.minecraft.inventory.Slot; diff --git a/src/main/java/techreborn/compat/jei/RecipeCategoryUids.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/RecipeCategoryUids.java similarity index 98% rename from src/main/java/techreborn/compat/jei/RecipeCategoryUids.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/RecipeCategoryUids.java index 0fe0ebc6b..0feb22f10 100644 --- a/src/main/java/techreborn/compat/jei/RecipeCategoryUids.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/RecipeCategoryUids.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei; +package techreborn.compat.compat.jei; public class RecipeCategoryUids { public static final String ALLOY_SMELTER = "TechReborn.AlloySmelter"; diff --git a/src/main/java/techreborn/compat/jei/RecipeUtil.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/RecipeUtil.java similarity index 99% rename from src/main/java/techreborn/compat/jei/RecipeUtil.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/RecipeUtil.java index 4d6f382ad..e330758d5 100644 --- a/src/main/java/techreborn/compat/jei/RecipeUtil.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/RecipeUtil.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei; +package techreborn.compat.compat.jei; import mezz.jei.api.gui.IGuiFluidStackGroup; import mezz.jei.api.gui.IGuiItemStackGroup; diff --git a/src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/TechRebornJeiPlugin.java similarity index 89% rename from src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/TechRebornJeiPlugin.java index a67db0b8a..748180cca 100644 --- a/src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/TechRebornJeiPlugin.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei; +package techreborn.compat.compat.jei; import mezz.jei.api.*; import mezz.jei.api.gui.IAdvancedGuiHandler; @@ -65,47 +65,47 @@ import techreborn.api.recipe.machines.*; import techreborn.blocks.cable.EnumCableType; import techreborn.client.gui.*; import techreborn.client.gui.slot.GuiSlotConfiguration; -import techreborn.compat.CompatConfigs; -import techreborn.compat.CompatManager; -import techreborn.compat.jei.alloySmelter.AlloySmelterRecipeCategory; -import techreborn.compat.jei.alloySmelter.AlloySmelterRecipeWrapper; -import techreborn.compat.jei.assemblingMachine.AssemblingMachineRecipeCategory; -import techreborn.compat.jei.assemblingMachine.AssemblingMachineRecipeWrapper; -import techreborn.compat.jei.blastFurnace.BlastFurnaceRecipeCategory; -import techreborn.compat.jei.blastFurnace.BlastFurnaceRecipeWrapper; -import techreborn.compat.jei.centrifuge.CentrifugeRecipeCategory; -import techreborn.compat.jei.centrifuge.CentrifugeRecipeWrapper; -import techreborn.compat.jei.chemicalReactor.ChemicalReactorRecipeCategory; -import techreborn.compat.jei.chemicalReactor.ChemicalReactorRecipeWrapper; -import techreborn.compat.jei.compressor.CompressorRecipeCategory; -import techreborn.compat.jei.compressor.CompressorRecipeWrapper; -import techreborn.compat.jei.distillationTower.DistillationTowerRecipeCategory; -import techreborn.compat.jei.distillationTower.DistillationTowerRecipeWrapper; -import techreborn.compat.jei.extractor.ExtractorRecipeCategory; -import techreborn.compat.jei.extractor.ExtractorRecipeWrapper; -import techreborn.compat.jei.fluidReplicator.FluidReplicatorRecipeCategory; -import techreborn.compat.jei.fluidReplicator.FluidReplicatorRecipeWrapper; -import techreborn.compat.jei.fusionReactor.FusionReactorRecipeCategory; -import techreborn.compat.jei.fusionReactor.FusionReactorRecipeWrapper; -import techreborn.compat.jei.generators.fluid.FluidGeneratorRecipeCategory; -import techreborn.compat.jei.generators.fluid.FluidGeneratorRecipeWrapper; -import techreborn.compat.jei.grinder.GrinderRecipeCategory; -import techreborn.compat.jei.grinder.GrinderRecipeWrapper; -import techreborn.compat.jei.implosionCompressor.ImplosionCompressorRecipeCategory; -import techreborn.compat.jei.implosionCompressor.ImplosionCompressorRecipeWrapper; -import techreborn.compat.jei.industrialElectrolyzer.IndustrialElectrolyzerRecipeCategory; -import techreborn.compat.jei.industrialElectrolyzer.IndustrialElectrolyzerRecipeWrapper; -import techreborn.compat.jei.industrialGrinder.IndustrialGrinderRecipeCategory; -import techreborn.compat.jei.industrialGrinder.IndustrialGrinderRecipeWrapper; -import techreborn.compat.jei.industrialSawmill.IndustrialSawmillRecipeCategory; -import techreborn.compat.jei.industrialSawmill.IndustrialSawmillRecipeWrapper; -import techreborn.compat.jei.rollingMachine.RollingMachineRecipeCategory; -import techreborn.compat.jei.rollingMachine.RollingMachineRecipeMaker; -import techreborn.compat.jei.rollingMachine.RollingMachineRecipeWrapper; -import techreborn.compat.jei.scrapbox.ScrapboxRecipeCategory; -import techreborn.compat.jei.scrapbox.ScrapboxRecipeWrapper; -import techreborn.compat.jei.vacuumFreezer.VacuumFreezerRecipeCategory; -import techreborn.compat.jei.vacuumFreezer.VacuumFreezerRecipeWrapper; +import techreborn.compat.compat.CompatConfigs; +import techreborn.compat.compat.CompatManager; +import techreborn.compat.compat.jei.alloySmelter.AlloySmelterRecipeCategory; +import techreborn.compat.compat.jei.alloySmelter.AlloySmelterRecipeWrapper; +import techreborn.compat.compat.jei.assemblingMachine.AssemblingMachineRecipeCategory; +import techreborn.compat.compat.jei.assemblingMachine.AssemblingMachineRecipeWrapper; +import techreborn.compat.compat.jei.blastFurnace.BlastFurnaceRecipeCategory; +import techreborn.compat.compat.jei.blastFurnace.BlastFurnaceRecipeWrapper; +import techreborn.compat.compat.jei.centrifuge.CentrifugeRecipeCategory; +import techreborn.compat.compat.jei.centrifuge.CentrifugeRecipeWrapper; +import techreborn.compat.compat.jei.chemicalReactor.ChemicalReactorRecipeCategory; +import techreborn.compat.compat.jei.chemicalReactor.ChemicalReactorRecipeWrapper; +import techreborn.compat.compat.jei.compressor.CompressorRecipeCategory; +import techreborn.compat.compat.jei.compressor.CompressorRecipeWrapper; +import techreborn.compat.compat.jei.distillationTower.DistillationTowerRecipeCategory; +import techreborn.compat.compat.jei.distillationTower.DistillationTowerRecipeWrapper; +import techreborn.compat.compat.jei.extractor.ExtractorRecipeCategory; +import techreborn.compat.compat.jei.extractor.ExtractorRecipeWrapper; +import techreborn.compat.compat.jei.fluidReplicator.FluidReplicatorRecipeCategory; +import techreborn.compat.compat.jei.fluidReplicator.FluidReplicatorRecipeWrapper; +import techreborn.compat.compat.jei.fusionReactor.FusionReactorRecipeCategory; +import techreborn.compat.compat.jei.fusionReactor.FusionReactorRecipeWrapper; +import techreborn.compat.compat.jei.generators.fluid.FluidGeneratorRecipeCategory; +import techreborn.compat.compat.jei.generators.fluid.FluidGeneratorRecipeWrapper; +import techreborn.compat.compat.jei.grinder.GrinderRecipeCategory; +import techreborn.compat.compat.jei.grinder.GrinderRecipeWrapper; +import techreborn.compat.compat.jei.implosionCompressor.ImplosionCompressorRecipeCategory; +import techreborn.compat.compat.jei.implosionCompressor.ImplosionCompressorRecipeWrapper; +import techreborn.compat.compat.jei.industrialElectrolyzer.IndustrialElectrolyzerRecipeCategory; +import techreborn.compat.compat.jei.industrialElectrolyzer.IndustrialElectrolyzerRecipeWrapper; +import techreborn.compat.compat.jei.industrialGrinder.IndustrialGrinderRecipeCategory; +import techreborn.compat.compat.jei.industrialGrinder.IndustrialGrinderRecipeWrapper; +import techreborn.compat.compat.jei.industrialSawmill.IndustrialSawmillRecipeCategory; +import techreborn.compat.compat.jei.industrialSawmill.IndustrialSawmillRecipeWrapper; +import techreborn.compat.compat.jei.rollingMachine.RollingMachineRecipeCategory; +import techreborn.compat.compat.jei.rollingMachine.RollingMachineRecipeMaker; +import techreborn.compat.compat.jei.rollingMachine.RollingMachineRecipeWrapper; +import techreborn.compat.compat.jei.scrapbox.ScrapboxRecipeCategory; +import techreborn.compat.compat.jei.scrapbox.ScrapboxRecipeWrapper; +import techreborn.compat.compat.jei.vacuumFreezer.VacuumFreezerRecipeCategory; +import techreborn.compat.compat.jei.vacuumFreezer.VacuumFreezerRecipeWrapper; import techreborn.dispenser.BehaviorDispenseScrapbox; import techreborn.init.IC2Duplicates; import techreborn.init.ModBlocks; diff --git a/src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java index 8e9a116d6..859af414e 100644 --- a/src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.alloySmelter; +package techreborn.compat.compat.jei.alloySmelter; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java similarity index 96% rename from src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java index b7c7707df..5d1923514 100644 --- a/src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.alloySmelter; +package techreborn.compat.compat.jei.alloySmelter; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -32,7 +32,7 @@ import net.minecraft.client.Minecraft; import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.AlloySmelterRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java similarity index 94% rename from src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java index 0a709d82e..9755cf65d 100644 --- a/src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.assemblingMachine; +package techreborn.compat.compat.jei.assemblingMachine; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.*; @@ -30,8 +30,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java similarity index 95% rename from src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java index b11b301be..478551dc4 100644 --- a/src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.assemblingMachine; +package techreborn.compat.compat.jei.assemblingMachine; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -31,7 +31,7 @@ import mezz.jei.api.gui.IDrawableStatic; import net.minecraft.client.Minecraft; import techreborn.api.recipe.machines.AssemblingMachineRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java index 35b21d62d..98a57bb35 100644 --- a/src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.blastFurnace; +package techreborn.compat.compat.jei.blastFurnace; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java similarity index 97% rename from src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java index be8838c1c..9dc268628 100644 --- a/src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.blastFurnace; +package techreborn.compat.compat.jei.blastFurnace; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -33,7 +33,7 @@ import net.minecraft.client.Minecraft; import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.BlastFurnaceRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/centrifuge/CentrifugeRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/centrifuge/CentrifugeRecipeCategory.java index f6aed34f3..ab2d098d3 100644 --- a/src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/centrifuge/CentrifugeRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.centrifuge; +package techreborn.compat.compat.jei.centrifuge; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/centrifuge/CentrifugeRecipeWrapper.java similarity index 96% rename from src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/centrifuge/CentrifugeRecipeWrapper.java index a27e0b6db..88738832d 100644 --- a/src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/centrifuge/CentrifugeRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.centrifuge; +package techreborn.compat.compat.jei.centrifuge; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -32,7 +32,7 @@ import net.minecraft.client.Minecraft; import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.CentrifugeRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java similarity index 94% rename from src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java index b1238e1bb..791ff8fbb 100644 --- a/src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.chemicalReactor; +package techreborn.compat.compat.jei.chemicalReactor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java similarity index 96% rename from src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java index 3a1d6ef8a..94fed80a5 100644 --- a/src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.chemicalReactor; +package techreborn.compat.compat.jei.chemicalReactor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -32,7 +32,7 @@ import net.minecraft.client.Minecraft; import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.ChemicalReactorRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/compressor/CompressorRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/compressor/CompressorRecipeCategory.java similarity index 94% rename from src/main/java/techreborn/compat/jei/compressor/CompressorRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/compressor/CompressorRecipeCategory.java index e2c169979..ca247a53c 100644 --- a/src/main/java/techreborn/compat/jei/compressor/CompressorRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/compressor/CompressorRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.compressor; +package techreborn.compat.compat.jei.compressor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/compressor/CompressorRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/compressor/CompressorRecipeWrapper.java similarity index 95% rename from src/main/java/techreborn/compat/jei/compressor/CompressorRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/compressor/CompressorRecipeWrapper.java index 8cee3fd09..c9f28a010 100644 --- a/src/main/java/techreborn/compat/jei/compressor/CompressorRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/compressor/CompressorRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.compressor; +package techreborn.compat.compat.jei.compressor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -31,7 +31,7 @@ import mezz.jei.api.gui.IDrawableStatic; import net.minecraft.client.Minecraft; import techreborn.api.recipe.machines.CompressorRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/distillationTower/DistillationTowerRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/distillationTower/DistillationTowerRecipeCategory.java index a95368fed..b53d53d84 100644 --- a/src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/distillationTower/DistillationTowerRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.distillationTower; +package techreborn.compat.compat.jei.distillationTower; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java similarity index 96% rename from src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java index 03e70b46e..0345e9f95 100644 --- a/src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.distillationTower; +package techreborn.compat.compat.jei.distillationTower; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -32,7 +32,7 @@ import net.minecraft.client.Minecraft; import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.DistillationTowerRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/extractor/ExtractorRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/extractor/ExtractorRecipeCategory.java index 0e59e7655..82b5e0541 100644 --- a/src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/extractor/ExtractorRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.extractor; +package techreborn.compat.compat.jei.extractor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/extractor/ExtractorRecipeWrapper.java similarity index 95% rename from src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/extractor/ExtractorRecipeWrapper.java index d640e5bd6..b6fe713fc 100644 --- a/src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/extractor/ExtractorRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.extractor; +package techreborn.compat.compat.jei.extractor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -31,7 +31,7 @@ import mezz.jei.api.gui.IDrawableStatic; import net.minecraft.client.Minecraft; import techreborn.api.recipe.machines.ExtractorRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java index 3ff9a2fcc..87ccd4450 100644 --- a/src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.fluidReplicator; +package techreborn.compat.compat.jei.fluidReplicator; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -33,8 +33,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java similarity index 98% rename from src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java index 26e34d3ae..f5924d8d3 100644 --- a/src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.fluidReplicator; +package techreborn.compat.compat.jei.fluidReplicator; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; diff --git a/src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fusionReactor/FusionReactorRecipeCategory.java similarity index 96% rename from src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/fusionReactor/FusionReactorRecipeCategory.java index 6604f11f7..701a82531 100644 --- a/src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fusionReactor/FusionReactorRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.fusionReactor; +package techreborn.compat.compat.jei.fusionReactor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -33,7 +33,7 @@ import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeCategoryUids; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java similarity index 95% rename from src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java index eecba5538..cf8889d2f 100644 --- a/src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java @@ -22,14 +22,14 @@ * SOFTWARE. */ -package techreborn.compat.jei.fusionReactor; +package techreborn.compat.compat.jei.fusionReactor; import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeWrapper; import net.minecraft.client.Minecraft; import net.minecraft.item.ItemStack; import techreborn.api.reactor.FusionReactorRecipe; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeUtil; import javax.annotation.Nonnull; import java.util.Arrays; diff --git a/src/main/java/techreborn/compat/jei/generators/fluid/FluidGeneratorRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/generators/fluid/FluidGeneratorRecipeCategory.java similarity index 96% rename from src/main/java/techreborn/compat/jei/generators/fluid/FluidGeneratorRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/generators/fluid/FluidGeneratorRecipeCategory.java index 770f07b49..d5739cc8b 100644 --- a/src/main/java/techreborn/compat/jei/generators/fluid/FluidGeneratorRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/generators/fluid/FluidGeneratorRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.generators.fluid; +package techreborn.compat.compat.jei.generators.fluid; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -34,7 +34,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; import techreborn.api.generator.EFluidGenerator; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; public class FluidGeneratorRecipeCategory implements IRecipeCategory { diff --git a/src/main/java/techreborn/compat/jei/generators/fluid/FluidGeneratorRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/generators/fluid/FluidGeneratorRecipeWrapper.java similarity index 98% rename from src/main/java/techreborn/compat/jei/generators/fluid/FluidGeneratorRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/generators/fluid/FluidGeneratorRecipeWrapper.java index ffda717df..e038a2114 100644 --- a/src/main/java/techreborn/compat/jei/generators/fluid/FluidGeneratorRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/generators/fluid/FluidGeneratorRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.generators.fluid; +package techreborn.compat.compat.jei.generators.fluid; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; diff --git a/src/main/java/techreborn/compat/jei/grinder/GrinderRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/grinder/GrinderRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/grinder/GrinderRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/grinder/GrinderRecipeCategory.java index 4dea40b9b..ff7303db0 100644 --- a/src/main/java/techreborn/compat/jei/grinder/GrinderRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/grinder/GrinderRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.grinder; +package techreborn.compat.compat.jei.grinder; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/grinder/GrinderRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/grinder/GrinderRecipeWrapper.java similarity index 95% rename from src/main/java/techreborn/compat/jei/grinder/GrinderRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/grinder/GrinderRecipeWrapper.java index 1fb251bd6..d7c3caeb5 100644 --- a/src/main/java/techreborn/compat/jei/grinder/GrinderRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/grinder/GrinderRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.grinder; +package techreborn.compat.compat.jei.grinder; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -31,7 +31,7 @@ import mezz.jei.api.gui.IDrawableStatic; import net.minecraft.client.Minecraft; import techreborn.api.recipe.machines.GrinderRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java similarity index 94% rename from src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java index 8068031a5..b1e01998a 100644 --- a/src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.implosionCompressor; +package techreborn.compat.compat.jei.implosionCompressor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java similarity index 95% rename from src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java index fa6c0f5e6..9cca46e08 100644 --- a/src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.implosionCompressor; +package techreborn.compat.compat.jei.implosionCompressor; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -31,7 +31,7 @@ import mezz.jei.api.gui.IDrawableStatic; import net.minecraft.client.Minecraft; import techreborn.api.recipe.machines.ImplosionCompressorRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java index 83dcb38de..2beededbb 100644 --- a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.industrialElectrolyzer; +package techreborn.compat.compat.jei.industrialElectrolyzer; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java similarity index 96% rename from src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java index 86bce6a4b..b83a392e5 100644 --- a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.industrialElectrolyzer; +package techreborn.compat.compat.jei.industrialElectrolyzer; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -32,7 +32,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.util.ResourceLocation; import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.IndustrialElectrolyzerRecipe; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java similarity index 96% rename from src/main/java/techreborn/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java index e6b628e23..01d5a0c17 100644 --- a/src/main/java/techreborn/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.industrialGrinder; +package techreborn.compat.compat.jei.industrialGrinder; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -34,8 +34,8 @@ import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.client.Minecraft; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import techreborn.tiles.multiblock.TileIndustrialGrinder; diff --git a/src/main/java/techreborn/compat/jei/industrialGrinder/IndustrialGrinderRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialGrinder/IndustrialGrinderRecipeWrapper.java similarity index 96% rename from src/main/java/techreborn/compat/jei/industrialGrinder/IndustrialGrinderRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialGrinder/IndustrialGrinderRecipeWrapper.java index 085eee0c9..d4fb3d49e 100644 --- a/src/main/java/techreborn/compat/jei/industrialGrinder/IndustrialGrinderRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialGrinder/IndustrialGrinderRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.industrialGrinder; +package techreborn.compat.compat.jei.industrialGrinder; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -34,7 +34,7 @@ import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.IndustrialGrinderRecipe; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; import java.util.Collections; diff --git a/src/main/java/techreborn/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java similarity index 93% rename from src/main/java/techreborn/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java index c5e9000fc..0200f8664 100644 --- a/src/main/java/techreborn/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java @@ -1,99 +1,99 @@ -/* - * This file is part of TechReborn, licensed under the MIT License (MIT). - * - * Copyright (c) 2018 TechReborn - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package techreborn.compat.jei.industrialSawmill; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IGuiFluidStackGroup; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.util.ResourceLocation; -import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; -import techreborn.lib.ModInfo; -import techreborn.tiles.multiblock.TileIndustrialSawmill; - -import javax.annotation.Nonnull; - -public class IndustrialSawmillRecipeCategory implements IRecipeCategory { - - private final String title; - public static final ResourceLocation texture = new ResourceLocation("techreborn", - "textures/gui/industrial_sawmill.png"); - private final IDrawable background; - private final IDrawable tankOverlay; - private static final int[] INPUT_SLOTS = { 0, 1 }; - private static final int[] OUTPUT_SLOTS = { 2, 3, 4 }; - private static final int[] INPUT_TANKS = { 0 }; - - public IndustrialSawmillRecipeCategory(IGuiHelper guiHelper) { - title = StringUtils.t("tile.techreborn:industrial_sawmill.name"); - background = guiHelper.createDrawable(texture, 7, 15, 141, 55); - tankOverlay = guiHelper.createDrawable(texture, 176, 86, 12, 47); - } - - @Override - public String getModName() { - return ModInfo.MOD_NAME; - } - - @Nonnull - @Override - public String getUid() { - return RecipeCategoryUids.INDUSTRIAL_SAWMILL; - } - - @Nonnull - @Override - public String getTitle() { - return title; - } - - @Nonnull - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, IndustrialSawmillRecipeWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup guiItemStacks = recipeLayout.getItemStacks(); - guiItemStacks.init(INPUT_SLOTS[0], true, 24, 10); - guiItemStacks.init(INPUT_SLOTS[1], true, 24, 28); - - guiItemStacks.init(OUTPUT_SLOTS[0], false, 76, 19); - guiItemStacks.init(OUTPUT_SLOTS[1], false, 94, 19); - guiItemStacks.init(OUTPUT_SLOTS[2], false, 112, 19); - - IGuiFluidStackGroup guiFluidStacks = recipeLayout.getFluidStacks(); - guiFluidStacks.init(INPUT_TANKS[0], true, 4, 4, 12, 47, TileIndustrialSawmill.TANK_CAPACITY, true, tankOverlay); - - RecipeUtil.setRecipeItems(recipeLayout, ingredients, INPUT_SLOTS, OUTPUT_SLOTS, INPUT_TANKS, null); - - } -} +/* + * This file is part of TechReborn, licensed under the MIT License (MIT). + * + * Copyright (c) 2018 TechReborn + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package techreborn.compat.compat.jei.industrialSawmill; + +import mezz.jei.api.IGuiHelper; +import mezz.jei.api.gui.IDrawable; +import mezz.jei.api.gui.IGuiFluidStackGroup; +import mezz.jei.api.gui.IGuiItemStackGroup; +import mezz.jei.api.gui.IRecipeLayout; +import mezz.jei.api.ingredients.IIngredients; +import mezz.jei.api.recipe.IRecipeCategory; +import net.minecraft.util.ResourceLocation; +import reborncore.common.util.StringUtils; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; +import techreborn.lib.ModInfo; +import techreborn.tiles.multiblock.TileIndustrialSawmill; + +import javax.annotation.Nonnull; + +public class IndustrialSawmillRecipeCategory implements IRecipeCategory { + + private final String title; + public static final ResourceLocation texture = new ResourceLocation("techreborn", + "textures/gui/industrial_sawmill.png"); + private final IDrawable background; + private final IDrawable tankOverlay; + private static final int[] INPUT_SLOTS = { 0, 1 }; + private static final int[] OUTPUT_SLOTS = { 2, 3, 4 }; + private static final int[] INPUT_TANKS = { 0 }; + + public IndustrialSawmillRecipeCategory(IGuiHelper guiHelper) { + title = StringUtils.t("tile.techreborn:industrial_sawmill.name"); + background = guiHelper.createDrawable(texture, 7, 15, 141, 55); + tankOverlay = guiHelper.createDrawable(texture, 176, 86, 12, 47); + } + + @Override + public String getModName() { + return ModInfo.MOD_NAME; + } + + @Nonnull + @Override + public String getUid() { + return RecipeCategoryUids.INDUSTRIAL_SAWMILL; + } + + @Nonnull + @Override + public String getTitle() { + return title; + } + + @Nonnull + @Override + public IDrawable getBackground() { + return background; + } + + @Override + public void setRecipe(IRecipeLayout recipeLayout, IndustrialSawmillRecipeWrapper recipeWrapper, IIngredients ingredients) { + IGuiItemStackGroup guiItemStacks = recipeLayout.getItemStacks(); + guiItemStacks.init(INPUT_SLOTS[0], true, 24, 10); + guiItemStacks.init(INPUT_SLOTS[1], true, 24, 28); + + guiItemStacks.init(OUTPUT_SLOTS[0], false, 76, 19); + guiItemStacks.init(OUTPUT_SLOTS[1], false, 94, 19); + guiItemStacks.init(OUTPUT_SLOTS[2], false, 112, 19); + + IGuiFluidStackGroup guiFluidStacks = recipeLayout.getFluidStacks(); + guiFluidStacks.init(INPUT_TANKS[0], true, 4, 4, 12, 47, TileIndustrialSawmill.TANK_CAPACITY, true, tankOverlay); + + RecipeUtil.setRecipeItems(recipeLayout, ingredients, INPUT_SLOTS, OUTPUT_SLOTS, INPUT_TANKS, null); + + } +} diff --git a/src/main/java/techreborn/compat/jei/industrialSawmill/IndustrialSawmillRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialSawmill/IndustrialSawmillRecipeWrapper.java similarity index 94% rename from src/main/java/techreborn/compat/jei/industrialSawmill/IndustrialSawmillRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialSawmill/IndustrialSawmillRecipeWrapper.java index 3a8cfeb8d..a2718b545 100644 --- a/src/main/java/techreborn/compat/jei/industrialSawmill/IndustrialSawmillRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/industrialSawmill/IndustrialSawmillRecipeWrapper.java @@ -1,96 +1,96 @@ -/* - * This file is part of TechReborn, licensed under the MIT License (MIT). - * - * Copyright (c) 2018 TechReborn - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package techreborn.compat.jei.industrialSawmill; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.IJeiHelpers; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IDrawableStatic; -import mezz.jei.api.ingredients.IIngredients; -import net.minecraft.client.Minecraft; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fluids.FluidStack; -import techreborn.api.recipe.machines.IndustrialSawmillRecipe; -import techreborn.compat.jei.BaseRecipeWrapper; - -import javax.annotation.Nonnull; -import java.util.Collections; -import java.util.List; - -/** - * @author drcrazy - */ -public class IndustrialSawmillRecipeWrapper extends BaseRecipeWrapper { - public static final ResourceLocation texture = new ResourceLocation("techreborn", - "textures/gui/industrial_sawmill.png"); - private final IDrawableAnimated progress; - - public IndustrialSawmillRecipeWrapper( - @Nonnull - IJeiHelpers jeiHelpers, - @Nonnull - IndustrialSawmillRecipe baseRecipe) { - super(baseRecipe); - IGuiHelper guiHelper = jeiHelpers.getGuiHelper(); - IDrawableStatic progressStatic = guiHelper.createDrawable(texture, 176, 14, 20, 13); - int ticksPerCycle = baseRecipe.tickTime(); - this.progress = guiHelper.createAnimatedDrawable(progressStatic, ticksPerCycle, - IDrawableAnimated.StartDirection.LEFT, false); - } - - @Override - public void getIngredients( - @Nonnull - final IIngredients ingredients) { - ingredients.setInput(FluidStack.class, this.baseRecipe.fluidStack); - super.getIngredients(ingredients); - } - - @Override - @Nonnull - public List getFluidInputs() { - if (baseRecipe.fluidStack != null) { - return Collections.singletonList(baseRecipe.fluidStack); - } else { - return Collections.emptyList(); - } - } - - @Override - public void drawInfo(Minecraft minecraft, int recipeWidth, int recipeHeight, int mouseX, int mouseY) { - super.drawInfo(minecraft, recipeWidth, recipeHeight, mouseX, mouseY); - progress.draw(minecraft, 48, 23); - - if (minecraft.fontRenderer != null) { - int x = 70; - int y = 40; - int lineHeight = minecraft.fontRenderer.FONT_HEIGHT; - - minecraft.fontRenderer.drawString("Time: " + baseRecipe.tickTime / 20 + " s", x, y, 0x444444); - minecraft.fontRenderer.drawString("FE: " + baseRecipe.euPerTick + " FE/t", x, y += lineHeight, 0x444444); - } - } - -} +/* + * This file is part of TechReborn, licensed under the MIT License (MIT). + * + * Copyright (c) 2018 TechReborn + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package techreborn.compat.compat.jei.industrialSawmill; + +import mezz.jei.api.IGuiHelper; +import mezz.jei.api.IJeiHelpers; +import mezz.jei.api.gui.IDrawableAnimated; +import mezz.jei.api.gui.IDrawableStatic; +import mezz.jei.api.ingredients.IIngredients; +import net.minecraft.client.Minecraft; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.fluids.FluidStack; +import techreborn.api.recipe.machines.IndustrialSawmillRecipe; +import techreborn.compat.compat.jei.BaseRecipeWrapper; + +import javax.annotation.Nonnull; +import java.util.Collections; +import java.util.List; + +/** + * @author drcrazy + */ +public class IndustrialSawmillRecipeWrapper extends BaseRecipeWrapper { + public static final ResourceLocation texture = new ResourceLocation("techreborn", + "textures/gui/industrial_sawmill.png"); + private final IDrawableAnimated progress; + + public IndustrialSawmillRecipeWrapper( + @Nonnull + IJeiHelpers jeiHelpers, + @Nonnull + IndustrialSawmillRecipe baseRecipe) { + super(baseRecipe); + IGuiHelper guiHelper = jeiHelpers.getGuiHelper(); + IDrawableStatic progressStatic = guiHelper.createDrawable(texture, 176, 14, 20, 13); + int ticksPerCycle = baseRecipe.tickTime(); + this.progress = guiHelper.createAnimatedDrawable(progressStatic, ticksPerCycle, + IDrawableAnimated.StartDirection.LEFT, false); + } + + @Override + public void getIngredients( + @Nonnull + final IIngredients ingredients) { + ingredients.setInput(FluidStack.class, this.baseRecipe.fluidStack); + super.getIngredients(ingredients); + } + + @Override + @Nonnull + public List getFluidInputs() { + if (baseRecipe.fluidStack != null) { + return Collections.singletonList(baseRecipe.fluidStack); + } else { + return Collections.emptyList(); + } + } + + @Override + public void drawInfo(Minecraft minecraft, int recipeWidth, int recipeHeight, int mouseX, int mouseY) { + super.drawInfo(minecraft, recipeWidth, recipeHeight, mouseX, mouseY); + progress.draw(minecraft, 48, 23); + + if (minecraft.fontRenderer != null) { + int x = 70; + int y = 40; + int lineHeight = minecraft.fontRenderer.FONT_HEIGHT; + + minecraft.fontRenderer.drawString("Time: " + baseRecipe.tickTime / 20 + " s", x, y, 0x444444); + minecraft.fontRenderer.drawString("FE: " + baseRecipe.euPerTick + " FE/t", x, y += lineHeight, 0x444444); + } + } + +} diff --git a/src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeCategory.java similarity index 97% rename from src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeCategory.java index dbec6150f..131b081ed 100644 --- a/src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.rollingMachine; +package techreborn.compat.compat.jei.rollingMachine; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.*; @@ -32,7 +32,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeCategoryUids; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeMaker.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeMaker.java similarity index 97% rename from src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeMaker.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeMaker.java index 27571e39c..836c7a871 100644 --- a/src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeMaker.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeMaker.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.rollingMachine; +package techreborn.compat.compat.jei.rollingMachine; import mezz.jei.api.IJeiHelpers; import net.minecraft.item.crafting.IRecipe; diff --git a/src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeWrapper.java similarity index 98% rename from src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeWrapper.java index 0754d242a..43212161b 100644 --- a/src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/rollingMachine/RollingMachineRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.rollingMachine; +package techreborn.compat.compat.jei.rollingMachine; import mezz.jei.api.IJeiHelpers; import mezz.jei.api.ingredients.IIngredients; diff --git a/src/main/java/techreborn/compat/jei/scrapbox/ScrapboxRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/scrapbox/ScrapboxRecipeCategory.java similarity index 95% rename from src/main/java/techreborn/compat/jei/scrapbox/ScrapboxRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/scrapbox/ScrapboxRecipeCategory.java index 5ca574b0f..c8fab608a 100644 --- a/src/main/java/techreborn/compat/jei/scrapbox/ScrapboxRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/scrapbox/ScrapboxRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.scrapbox; +package techreborn.compat.compat.jei.scrapbox; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/scrapbox/ScrapboxRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/scrapbox/ScrapboxRecipeWrapper.java similarity index 93% rename from src/main/java/techreborn/compat/jei/scrapbox/ScrapboxRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/scrapbox/ScrapboxRecipeWrapper.java index 30fd0837e..d35aa4af3 100644 --- a/src/main/java/techreborn/compat/jei/scrapbox/ScrapboxRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/scrapbox/ScrapboxRecipeWrapper.java @@ -22,11 +22,11 @@ * SOFTWARE. */ -package techreborn.compat.jei.scrapbox; +package techreborn.compat.compat.jei.scrapbox; import mezz.jei.api.IJeiHelpers; import techreborn.api.recipe.machines.ScrapboxRecipe; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java similarity index 94% rename from src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java index 9eb0379bb..ffdbc0f74 100644 --- a/src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.vacuumFreezer; +package techreborn.compat.compat.jei.vacuumFreezer; import mezz.jei.api.IGuiHelper; import mezz.jei.api.gui.IDrawable; @@ -32,8 +32,8 @@ import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.recipe.IRecipeCategory; import net.minecraft.util.ResourceLocation; import reborncore.common.util.StringUtils; -import techreborn.compat.jei.RecipeCategoryUids; -import techreborn.compat.jei.RecipeUtil; +import techreborn.compat.compat.jei.RecipeCategoryUids; +import techreborn.compat.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java similarity index 95% rename from src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java index 35d0e8dde..f43b36504 100644 --- a/src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.jei.vacuumFreezer; +package techreborn.compat.compat.jei.vacuumFreezer; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; @@ -31,7 +31,7 @@ import mezz.jei.api.gui.IDrawableStatic; import net.minecraft.client.Minecraft; import techreborn.api.recipe.machines.VacuumFreezerRecipe; import techreborn.client.gui.TRBuilder; -import techreborn.compat.jei.BaseRecipeWrapper; +import techreborn.compat.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; diff --git a/src/main/java/techreborn/compat/opencomputers/CompatOpenComputers.java b/ModCompatibility/src/main/java/techreborn/compat/compat/opencomputers/CompatOpenComputers.java similarity index 95% rename from src/main/java/techreborn/compat/opencomputers/CompatOpenComputers.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/opencomputers/CompatOpenComputers.java index 8ea3bd33a..3083c57e6 100644 --- a/src/main/java/techreborn/compat/opencomputers/CompatOpenComputers.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/opencomputers/CompatOpenComputers.java @@ -22,14 +22,14 @@ * SOFTWARE. */ -package techreborn.compat.opencomputers; +package techreborn.compat.compat.opencomputers; import li.cil.oc.api.Driver; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.ICompatModule; public class CompatOpenComputers implements ICompatModule { @Override diff --git a/src/main/java/techreborn/compat/opencomputers/DriverMachine.java b/ModCompatibility/src/main/java/techreborn/compat/compat/opencomputers/DriverMachine.java similarity index 99% rename from src/main/java/techreborn/compat/opencomputers/DriverMachine.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/opencomputers/DriverMachine.java index 8dced986c..9ae6e1bd8 100644 --- a/src/main/java/techreborn/compat/opencomputers/DriverMachine.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/opencomputers/DriverMachine.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.opencomputers; +package techreborn.compat.compat.opencomputers; import li.cil.oc.api.Network; import li.cil.oc.api.driver.DriverBlock; diff --git a/src/main/java/techreborn/compat/psi/CompatModulePsi.java b/ModCompatibility/src/main/java/techreborn/compat/compat/psi/CompatModulePsi.java similarity index 94% rename from src/main/java/techreborn/compat/psi/CompatModulePsi.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/psi/CompatModulePsi.java index 208b805e4..e878a91d5 100644 --- a/src/main/java/techreborn/compat/psi/CompatModulePsi.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/psi/CompatModulePsi.java @@ -22,14 +22,14 @@ * SOFTWARE. */ -//package techreborn.compat.psi; +//package techreborn.compat.compat.psi; // //import net.minecraftforge.fml.common.event.FMLInitializationEvent; //import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; //import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; //import net.minecraftforge.fml.common.event.FMLServerStartingEvent; -//import techreborn.compat.ICompatModule; -//import techreborn.compat.psi.spell.trick.block.PieceTrickBlockTap; +//import techreborn.compat.compat.ICompatModule; +//import techreborn.compat.compat.psi.spell.trick.block.PieceTrickBlockTap; //import vazkii.psi.api.PsiAPI; //import vazkii.psi.api.spell.Spell; //import vazkii.psi.api.spell.SpellPiece; diff --git a/src/main/java/techreborn/compat/psi/spell/trick/block/PieceTrickBlockTap.java b/ModCompatibility/src/main/java/techreborn/compat/compat/psi/spell/trick/block/PieceTrickBlockTap.java similarity index 98% rename from src/main/java/techreborn/compat/psi/spell/trick/block/PieceTrickBlockTap.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/psi/spell/trick/block/PieceTrickBlockTap.java index b322b7fe0..143d2f990 100644 --- a/src/main/java/techreborn/compat/psi/spell/trick/block/PieceTrickBlockTap.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/psi/spell/trick/block/PieceTrickBlockTap.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -//package techreborn.compat.psi.spell.trick.block; +//package techreborn.compat.compat.psi.spell.trick.block; // //import java.util.Random; // diff --git a/src/main/java/techreborn/compat/theoneprobe/ProbeConfig.java b/ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/ProbeConfig.java similarity index 97% rename from src/main/java/techreborn/compat/theoneprobe/ProbeConfig.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/ProbeConfig.java index 7faad850e..2e75f1b94 100644 --- a/src/main/java/techreborn/compat/theoneprobe/ProbeConfig.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/ProbeConfig.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.theoneprobe; +package techreborn.compat.compat.theoneprobe; import mcjty.theoneprobe.api.IProbeConfig; import mcjty.theoneprobe.api.IProbeConfigProvider; diff --git a/src/main/java/techreborn/compat/theoneprobe/ProbeProvider.java b/ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/ProbeProvider.java similarity index 99% rename from src/main/java/techreborn/compat/theoneprobe/ProbeProvider.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/ProbeProvider.java index 14865e714..8077b7c06 100644 --- a/src/main/java/techreborn/compat/theoneprobe/ProbeProvider.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/ProbeProvider.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.theoneprobe; +package techreborn.compat.compat.theoneprobe; import mcjty.theoneprobe.api.*; import mcjty.theoneprobe.apiimpl.providers.ChestInfoTools; diff --git a/src/main/java/techreborn/compat/theoneprobe/TheOneProbeCompat.java b/ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/TheOneProbeCompat.java similarity index 92% rename from src/main/java/techreborn/compat/theoneprobe/TheOneProbeCompat.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/TheOneProbeCompat.java index d4074282a..4d2a6f9a8 100644 --- a/src/main/java/techreborn/compat/theoneprobe/TheOneProbeCompat.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/theoneprobe/TheOneProbeCompat.java @@ -22,16 +22,16 @@ * SOFTWARE. */ -package techreborn.compat.theoneprobe; +package techreborn.compat.compat.theoneprobe; import mcjty.theoneprobe.TheOneProbe; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.ICompatModule; -import static techreborn.compat.CompatConfigs.enableTOP; +import static techreborn.compat.compat.CompatConfigs.enableTOP; /** * Created by Mark on 04/06/2016. diff --git a/src/main/java/techreborn/compat/thermalexpansion/RecipeThermalExpansion.java b/ModCompatibility/src/main/java/techreborn/compat/compat/thermalexpansion/RecipeThermalExpansion.java similarity index 98% rename from src/main/java/techreborn/compat/thermalexpansion/RecipeThermalExpansion.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/thermalexpansion/RecipeThermalExpansion.java index 9ce7fd730..9aead1716 100644 --- a/src/main/java/techreborn/compat/thermalexpansion/RecipeThermalExpansion.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/thermalexpansion/RecipeThermalExpansion.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.thermalexpansion; +package techreborn.compat.compat.thermalexpansion; import cofh.api.util.ThermalExpansionHelper; import cofh.thermalfoundation.init.TFFluids; @@ -38,7 +38,7 @@ import techreborn.api.fluidreplicator.FluidReplicatorRecipe; import techreborn.api.fluidreplicator.FluidReplicatorRecipeList; import techreborn.api.generator.EFluidGenerator; import techreborn.api.generator.GeneratorRecipeHelper; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.ICompatModule; import techreborn.init.ModItems; import techreborn.init.recipes.RecipeMethods; import techreborn.items.ItemDusts; diff --git a/src/main/java/techreborn/compat/tinkers/CompatModuleTinkers.java b/ModCompatibility/src/main/java/techreborn/compat/compat/tinkers/CompatModuleTinkers.java similarity index 95% rename from src/main/java/techreborn/compat/tinkers/CompatModuleTinkers.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/tinkers/CompatModuleTinkers.java index 746cdc33b..98b259c54 100644 --- a/src/main/java/techreborn/compat/tinkers/CompatModuleTinkers.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/tinkers/CompatModuleTinkers.java @@ -22,13 +22,13 @@ * SOFTWARE. */ -package techreborn.compat.tinkers; +package techreborn.compat.compat.tinkers; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; -import techreborn.compat.ICompatModule; +import techreborn.compat.compat.ICompatModule; /** * @author Prospector on 08/05/16 diff --git a/src/main/java/techreborn/compat/tinkers/TinkersFluids.java b/ModCompatibility/src/main/java/techreborn/compat/compat/tinkers/TinkersFluids.java similarity index 98% rename from src/main/java/techreborn/compat/tinkers/TinkersFluids.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/tinkers/TinkersFluids.java index f5a81e317..feddc4aa4 100644 --- a/src/main/java/techreborn/compat/tinkers/TinkersFluids.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/tinkers/TinkersFluids.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -//package techreborn.compat.tinkers; +//package techreborn.compat.compat.tinkers; // //import net.minecraft.item.EnumRarity; //import net.minecraft.nbt.NBTTagCompound; diff --git a/src/main/java/techreborn/compat/waila/CompatModuleWaila.java b/ModCompatibility/src/main/java/techreborn/compat/compat/waila/CompatModuleWaila.java similarity index 97% rename from src/main/java/techreborn/compat/waila/CompatModuleWaila.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/waila/CompatModuleWaila.java index 9f8eb2d50..863354d8e 100644 --- a/src/main/java/techreborn/compat/waila/CompatModuleWaila.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/waila/CompatModuleWaila.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.waila; +package techreborn.compat.compat.waila; import mcp.mobius.waila.api.IWailaPlugin; import mcp.mobius.waila.api.IWailaRegistrar; diff --git a/src/main/java/techreborn/compat/waila/WailaProviderMachines.java b/ModCompatibility/src/main/java/techreborn/compat/compat/waila/WailaProviderMachines.java similarity index 98% rename from src/main/java/techreborn/compat/waila/WailaProviderMachines.java rename to ModCompatibility/src/main/java/techreborn/compat/compat/waila/WailaProviderMachines.java index 2a439ab18..f0fc409bf 100644 --- a/src/main/java/techreborn/compat/waila/WailaProviderMachines.java +++ b/ModCompatibility/src/main/java/techreborn/compat/compat/waila/WailaProviderMachines.java @@ -22,7 +22,7 @@ * SOFTWARE. */ -package techreborn.compat.waila; +package techreborn.compat.compat.waila; import mcp.mobius.waila.api.IWailaConfigHandler; import mcp.mobius.waila.api.IWailaDataAccessor; diff --git a/build.gradle b/build.gradle index 950a2ba65..32ec982c9 100644 --- a/build.gradle +++ b/build.gradle @@ -33,56 +33,6 @@ repositories { name = "Modmuss50" url = "http://maven.modmuss50.me/" } - maven { - // JEI, TiC - name "TiC" - url "http://dvs1.progwml6.com/files/maven" - } - maven { - name = "Amadornes" - url "http://maven.amadornes.com/" - } - maven { - // CraftTweaker2 - name "Jared" - url "http://maven.blamejared.com/" - } - maven { - // TheOneProbe - url "http://maven.tterrag.com/" - } - maven { - // IC2 - name = "ic2" - url = "http://maven.ic2.player.to/" - } - maven { - // HWYLA - name "TehNut" - url "http://tehnut.info/maven/" - } - maven { - name 'CB Repo' - url "http://chickenbones.net/maven/" - } - maven { - // CoFH - name 'Covers' - url "http://maven.covers1624.net/" - } - ivy { - name "BuildCraft" - artifactPattern "http://www.mod-buildcraft.com/releases/BuildCraft/[revision]/[module]-[revision].[ext]" - } - maven { - name "OpenComputer" - url "http://maven.cil.li/" - } -} - -configurations { - shade - compile.extendsFrom shade } version = "2.16.0" @@ -109,27 +59,11 @@ license { group = 'TechReborn' dependencies { - //Some dep we use wants the older jei, so this ingores it. We grab the latest anyway, so it shoudnt cause any issues. - def withoutOldJEI = { exclude module: 'jei_1.12.2' } - deobfCompile('RebornCore:RebornCore-1.12.2:+:universal') { transitive = false } - compile "mcp.mobius.waila:Hwyla:+" - compile "CraftTweaker2:CraftTweaker2-MC1120-Main:1.12-4.0.12.323" - compile name: 'buildcraft', version: '7.99.17', ext: 'jar' - - deobfCompile "mezz.jei:jei_1.12.2:+" - deobfCompile "mcjty.theoneprobe:TheOneProbe-1.12:1.12-1.4.19-11" - deobfCompile 'net.industrial-craft:industrialcraft-2:2.8.+' - deobfCompile 'cofh:ThermalDynamics:1.12.2-2.5+:universal' - deobfCompile 'cofh:ThermalExpansion:1.12.2-5.5+:universal' - deobfCompile 'MCMultiPart2:MCMultiPart:2.4.1' - deobfCompile "li.cil.oc:OpenComputers:MC1.12.2-1.7.2+" - deobfCompile "blusunrize:ImmersiveEngineering:0.12-+:deobf" } - processResources { // this will ensure that this task is redone when the versions change. diff --git a/src/main/java/techreborn/Core.java b/src/main/java/techreborn/Core.java index 1f0862270..fdc1655b2 100644 --- a/src/main/java/techreborn/Core.java +++ b/src/main/java/techreborn/Core.java @@ -55,8 +55,6 @@ import techreborn.api.TechRebornAPI; import techreborn.blocks.cable.EnumCableType; import techreborn.client.GuiHandler; import techreborn.command.TechRebornDevCommand; -import techreborn.compat.CompatManager; -import techreborn.compat.ICompatModule; import techreborn.dispenser.BehaviorDispenseScrapbox; import techreborn.entities.EntityNukePrimed; import techreborn.events.BlockBreakHandler; @@ -120,11 +118,6 @@ public class Core { ModFixs dataFixes = FMLCommonHandler.instance().getDataFixer().init(ModInfo.MOD_ID, 1); ModTileEntities.initDataFixer(dataFixes); - CompatManager.isIC2Loaded = Loader.isModLoaded("ic2"); - for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { - compatModule.preInit(event); - } - //Ore Dictionary OreDict.init(); proxy.preInit(event); @@ -144,10 +137,6 @@ public class Core { MinecraftForge.EVENT_BUS.register(new ModLoot()); // Sounds ModSounds.init(); - // Compat - for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { - compatModule.init(event); - } // Client only init, needs to be done before parts system proxy.init(event); // WorldGen @@ -180,10 +169,6 @@ public class Core { @Mod.EventHandler public void postinit(FMLPostInitializationEvent event) throws Exception { - // Has to be done here as Buildcraft registers their recipes late - for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { - compatModule.postInit(event); - } proxy.postInit(event); ModRecipes.postInit(); @@ -197,9 +182,6 @@ public class Core { @Mod.EventHandler public void serverStarting(FMLServerStartingEvent event) { event.registerServerCommand(new TechRebornDevCommand()); - for (ICompatModule compatModule : CompatManager.INSTANCE.compatModules) { - compatModule.serverStarting(event); - } } @SubscribeEvent diff --git a/src/main/java/techreborn/api/ISubItemRetriever.java b/src/main/java/techreborn/api/ISubItemRetriever.java index 1682c3b9b..0b916c20b 100644 --- a/src/main/java/techreborn/api/ISubItemRetriever.java +++ b/src/main/java/techreborn/api/ISubItemRetriever.java @@ -32,8 +32,6 @@ public interface ISubItemRetriever { ItemStack getCellByName(String name, int count); - ItemStack getCellByName(String name, int count, boolean lookForIC2); - ItemStack getDustByName(String name); ItemStack getDustByName(String name, int count); diff --git a/src/main/java/techreborn/client/container/builder/ContainerTileInventoryBuilder.java b/src/main/java/techreborn/client/container/builder/ContainerTileInventoryBuilder.java index 60c249388..403e31c07 100644 --- a/src/main/java/techreborn/client/container/builder/ContainerTileInventoryBuilder.java +++ b/src/main/java/techreborn/client/container/builder/ContainerTileInventoryBuilder.java @@ -43,8 +43,6 @@ import reborncore.common.powerSystem.TilePowerAcceptor; import techreborn.Core; import techreborn.client.container.builder.slot.FilteredSlot; import techreborn.client.container.builder.slot.UpgradeSlot; -import techreborn.compat.CompatManager; -import techreborn.utils.IC2ItemCharger; import java.util.function.Consumer; import java.util.function.IntConsumer; @@ -89,8 +87,7 @@ public class ContainerTileInventoryBuilder { public ContainerTileInventoryBuilder energySlot(final int index, final int x, final int y) { this.parent.slots.add(new FilteredSlot(this.tile, index, x, y) - .setFilter(stack -> stack.hasCapability(CapabilityEnergy.ENERGY, EnumFacing.UP) - || (CompatManager.isIC2Loaded && IC2ItemCharger.isIC2PoweredItem(stack)))); + .setFilter(stack -> stack.hasCapability(CapabilityEnergy.ENERGY, EnumFacing.UP))); return this; } diff --git a/src/main/java/techreborn/config/ConfigTechReborn.java b/src/main/java/techreborn/config/ConfigTechReborn.java index 9acce9fd8..f12eb866e 100644 --- a/src/main/java/techreborn/config/ConfigTechReborn.java +++ b/src/main/java/techreborn/config/ConfigTechReborn.java @@ -33,9 +33,6 @@ public class ConfigTechReborn { @ConfigRegistry(config = "recipes", category = "railcraft", key = "disableRailcraftNugget", comment = "When true TechReborn will remove Railcraft's Iron Nugget to steel nugget recipe.") public static boolean disableRailcraftSteelNuggetRecipe = false; - @ConfigRegistry(config = "recipes", category = "ic2", key = "deduplicate", comment = "Changes a lot of recipes and hides blocks to integrate TechReborn into IC2") - public static boolean REMOVE_DUPLICATES = false; - @ConfigRegistry(config = "misc", category = "general", key = "enableGemTools", comment = "Enable Gem armor and tools") public static boolean enableGemArmorAndTools = true; diff --git a/src/main/java/techreborn/init/IC2Dict.java b/src/main/java/techreborn/init/IC2Dict.java deleted file mode 100644 index 64163cd96..000000000 --- a/src/main/java/techreborn/init/IC2Dict.java +++ /dev/null @@ -1,151 +0,0 @@ -/* - * This file is part of TechReborn, licensed under the MIT License (MIT). - * - * Copyright (c) 2018 TechReborn - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package techreborn.init; - -import ic2.core.block.BlockIC2Fence; -import ic2.core.block.BlockTexGlass; -import ic2.core.block.type.ResourceBlock; -import ic2.core.block.wiring.CableType; -import ic2.core.item.block.ItemCable; -import ic2.core.item.type.CraftingItemType; -import ic2.core.item.type.MiscResourceType; -import ic2.core.item.type.NuclearResourceType; -import ic2.core.ref.BlockName; -import ic2.core.ref.ItemName; -import ic2.core.ref.TeBlock; -import net.minecraft.item.ItemStack; -import reborncore.api.recipe.RecipeHandler; -import reborncore.common.util.OreUtil; -import techreborn.Core; -import techreborn.api.recipe.machines.ExtractorRecipe; -import techreborn.items.ItemParts; - -/** - * Created by modmuss50 on 16/07/2016. - */ -public class IC2Dict { - - //TODO IC2 - public static void init() { - - IC2Duplicates.GRINDER.setIc2Stack(BlockName.te.getItemStack(TeBlock.macerator.getName())); - IC2Duplicates.ELECTRICAL_FURNACE.setIc2Stack(BlockName.te.getItemStack(TeBlock.electric_furnace.getName())); - IC2Duplicates.IRON_FURNACE.setIc2Stack(BlockName.te.getItemStack(TeBlock.iron_furnace.getName())); - IC2Duplicates.GENERATOR.setIc2Stack(BlockName.te.getItemStack(TeBlock.generator.getName())); - IC2Duplicates.EXTRACTOR.setIc2Stack(BlockName.te.getItemStack(TeBlock.extractor.getName())); - IC2Duplicates.RECYCLER.setIc2Stack(BlockName.te.getItemStack(TeBlock.recycler.getName())); - IC2Duplicates.COMPRESSOR.setIc2Stack(BlockName.te.getItemStack(TeBlock.compressor.getName())); - IC2Duplicates.BAT_BOX.setIc2Stack(BlockName.te.getItemStack(TeBlock.batbox.getName())); - IC2Duplicates.MFE.setIc2Stack(BlockName.te.getItemStack(TeBlock.mfe.getName())); - IC2Duplicates.MFSU.setIc2Stack(BlockName.te.getItemStack(TeBlock.mfsu.getName())); - IC2Duplicates.LVT.setIc2Stack(BlockName.te.getItemStack(TeBlock.lv_transformer.getName())); - IC2Duplicates.MVT.setIc2Stack(BlockName.te.getItemStack(TeBlock.mv_transformer.getName())); - IC2Duplicates.HVT.setIc2Stack(BlockName.te.getItemStack(TeBlock.hv_transformer.getName())); - IC2Duplicates.CABLE_COPPER.setIc2Stack(getIC2Cable(CableType.copper, 0)); - IC2Duplicates.CABLE_GOLD.setIc2Stack(getIC2Cable(CableType.gold, 0)); - IC2Duplicates.CABLE_ICOPPER.setIc2Stack(getIC2Cable(CableType.copper, 1)); - IC2Duplicates.CABLE_IGOLD.setIc2Stack(getIC2Cable(CableType.gold, 1)); - IC2Duplicates.CABLE_HV.setIc2Stack(getIC2Cable(CableType.tin, 0)); - IC2Duplicates.CABLE_IHV.setIc2Stack(getIC2Cable(CableType.tin, 1)); - IC2Duplicates.CABLE_IIHV.setIc2Stack(getIC2Cable(CableType.tin, 2)); - IC2Duplicates.CABLE_GLASSFIBER.setIc2Stack(getIC2Cable(CableType.glass, 0)); - - IC2Duplicates.MIXED_METAL.setIc2Stack(ItemName.ingot.getItemStack("alloy")); - IC2Duplicates.CARBON_FIBER.setIc2Stack(ItemName.crafting.getItemStack("carbon_fibre")); - IC2Duplicates.CARBON_MESH.setIc2Stack(ItemName.crafting.getItemStack("carbon_mesh")); - IC2Duplicates.REFINED_IRON.setIc2Stack(ItemName.plate.getItemStack("iron")); - IC2Duplicates.SCRAP.setIc2Stack(ItemName.crafting.getItemStack(CraftingItemType.scrap)); - IC2Duplicates.FREQ_TRANSMITTER.setIc2Stack(ItemName.frequency_transmitter.getItemStack()); - //Rubber - ore dic: itemRubber, hidden from JEI - //Rubber Sap - only used to make rubber, hidden from JEI - //Rubber tree blocks, hidden when deduplication is on, and rubber tress are not set to gen, includes tree taps - //Circuits are hidden in JEI - - RecipeHandler.addRecipe( - new ExtractorRecipe(ItemName.misc_resource.getItemStack("resin"), - ItemParts.getPartByName("rubber", 3), 400, 2)); - - try { - CraftingItemType.circuit.getName(); - - OreUtil.registerOre("reBattery", ItemName.re_battery.getItemStack()); - - OreUtil.registerOre("circuitBasic", ItemName.crafting.getItemStack(CraftingItemType.circuit)); - OreUtil.registerOre("circuitAdvanced", ItemName.crafting.getItemStack(CraftingItemType.advanced_circuit)); - - OreUtil.registerOre("machineBlockBasic", BlockName.resource.getItemStack(ResourceBlock.machine)); - OreUtil.registerOre("machineBlockAdvanced", BlockName.resource.getItemStack(ResourceBlock.advanced_machine)); - - OreUtil.registerOre("lapotronCrystal", ItemName.lapotron_crystal.getItemStack()); - OreUtil.registerOre("energyCrystal", ItemName.energy_crystal.getItemStack()); - - OreUtil.registerOre("drillBasic", ItemName.drill.getItemStack()); - OreUtil.registerOre("drillDiamond", ItemName.diamond_drill.getItemStack()); - OreUtil.registerOre("drillAdvanced", ItemName.iridium_drill.getItemStack()); - - ItemStack industrialTnt = BlockName.te.getItemStack(TeBlock.itnt); - industrialTnt.setItemDamage(1); - OreUtil.registerOre("industrialTnt", industrialTnt); - - OreUtil.registerOre("craftingIndustrialDiamond", ItemName.crafting.getItemStack(CraftingItemType.industrial_diamond)); - OreUtil.registerOre("fertilizer", ItemName.crafting.getItemStack(CraftingItemType.bio_chaff)); - OreUtil.registerOre("hvTransformer", BlockName.te.getItemStack(TeBlock.hv_transformer)); - - OreUtil.registerOre("uran235", ItemName.nuclear.getItemStack(NuclearResourceType.uranium_235)); - OreUtil.registerOre("uran238", ItemName.nuclear.getItemStack(NuclearResourceType.uranium_238)); - OreUtil.registerOre("smallUran238", ItemName.nuclear.getItemStack(NuclearResourceType.small_uranium_238)); - OreUtil.registerOre("smallUran235", ItemName.nuclear.getItemStack(NuclearResourceType.small_uranium_235)); - - OreUtil.registerOre("fenceIron", BlockName.fence.getItemStack(BlockIC2Fence.IC2FenceType.iron)); - OreUtil.registerOre("rubberWood", BlockName.rubber_wood.getItemStack()); - OreUtil.registerOre("glassReinforced", BlockName.glass.getItemStack(BlockTexGlass.GlassType.reinforced)); - - OreUtil.registerOre("oreIridium", ItemName.misc_resource.getItemStack(MiscResourceType.iridium_ore)); - - OreUtil.registerOre("plateIridiumAlloy", ItemName.crafting.getItemStack(CraftingItemType.iridium)); - - } catch (NoClassDefFoundError notFound) { - Core.logHelper.warn( - "Can't enable integration: IC2 installed but cannot be hooked\n" + - "Do you use incompatible IC2 version?\n" + - "Please create issue on github and provide FULL LOG and mod list"); - } catch (Throwable error) { - Core.logHelper.warn( - "Exception thrown during IC2 integration init\n" + - "Do you use incompatible IC2 version?\n" + - "Please create issue on github and provide FULL LOG and mod list.\n" + - "Error stack trace: "); - error.printStackTrace(); - } - } - - public static ItemStack getIC2Cable(CableType type, int insulation) { - if (insulation > type.maxInsulation) { - return null; - } - return ItemCable.getCable(type, insulation); - } - -} diff --git a/src/main/java/techreborn/init/IC2Duplicates.java b/src/main/java/techreborn/init/IC2Duplicates.java deleted file mode 100644 index d3eab6315..000000000 --- a/src/main/java/techreborn/init/IC2Duplicates.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * This file is part of TechReborn, licensed under the MIT License (MIT). - * - * Copyright (c) 2018 TechReborn - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package techreborn.init; - -import net.minecraft.item.ItemStack; -import techreborn.blocks.cable.EnumCableType; -import techreborn.compat.CompatManager; -import techreborn.config.ConfigTechReborn; -import techreborn.items.ItemIngots; -import techreborn.items.ItemParts; - -/** - * Created by Mark on 18/12/2016. - */ -public enum IC2Duplicates { - - GRINDER(new ItemStack(ModBlocks.GRINDER)), - ELECTRICAL_FURNACE(new ItemStack(ModBlocks.ELECTRIC_FURNACE)), - IRON_FURNACE(new ItemStack(ModBlocks.IRON_FURNACE)), - GENERATOR(new ItemStack(ModBlocks.SOLID_FUEL_GENEREATOR)), - EXTRACTOR(new ItemStack(ModBlocks.EXTRACTOR)), - RECYCLER(new ItemStack(ModBlocks.RECYCLER)), - COMPRESSOR(new ItemStack(ModBlocks.COMPRESSOR)), - BAT_BOX(new ItemStack(ModBlocks.LOW_VOLTAGE_SU)), - MFE(new ItemStack(ModBlocks.MEDIUM_VOLTAGE_SU)), - MFSU(new ItemStack(ModBlocks.HIGH_VOLTAGE_SU)), - LVT(new ItemStack(ModBlocks.LV_TRANSFORMER)), - MVT(new ItemStack(ModBlocks.MV_TRANSFORMER)), - HVT(new ItemStack(ModBlocks.HV_TRANSFORMER)), - CABLE_COPPER(EnumCableType.COPPER.getStack()), - CABLE_GLASSFIBER(EnumCableType.GLASSFIBER.getStack()), - CABLE_GOLD(EnumCableType.GOLD.getStack()), - CABLE_HV(EnumCableType.HV.getStack()), - CABLE_ICOPPER(EnumCableType.ICOPPER.getStack()), - CABLE_IGOLD(EnumCableType.IGOLD.getStack()), - CABLE_IHV(EnumCableType.IHV.getStack()), - CABLE_IIHV(EnumCableType.TIN.getStack()), - MIXED_METAL(ItemIngots.getIngotByName("mixed_metal")), - CARBON_FIBER(ItemParts.getPartByName("carbon_fiber")), - CARBON_MESH(ItemParts.getPartByName("carbon_mesh")), - REFINED_IRON(ItemIngots.getIngotByName("refined_iron")), - SCRAP(ItemParts.getPartByName("scrap")), - FREQ_TRANSMITTER(new ItemStack(ModItems.FREQUENCY_TRANSMITTER)); - - ItemStack ic2Stack; - ItemStack trStack; - - IC2Duplicates(ItemStack trStack) { - this.trStack = trStack; - } - - IC2Duplicates(ItemStack ic2Stack, ItemStack trStack) { - this.ic2Stack = ic2Stack; - this.trStack = trStack; - } - - public static boolean deduplicate() { - if (!CompatManager.isIC2Loaded) { - return false; - } - return ConfigTechReborn.REMOVE_DUPLICATES; - } - - public ItemStack getIc2Stack() { - if (!CompatManager.isIC2Loaded) { - throw new RuntimeException("IC2 isnt loaded"); - } - if (ic2Stack.isEmpty()) { - throw new RuntimeException("IC2 stack wasnt set "); - } - return ic2Stack; - } - - public void setIc2Stack(ItemStack ic2Stack) { - this.ic2Stack = ic2Stack; - } - - public boolean hasIC2Stack() { - if (ic2Stack == null) { - return false; - } - return !ic2Stack.isEmpty(); - } - - public ItemStack getTrStack() { - return trStack; - } - - public ItemStack getStackBasedOnConfig() { - if (deduplicate()) { - return getIc2Stack(); - } - return getTrStack(); - } - -} diff --git a/src/main/java/techreborn/init/ModRecipes.java b/src/main/java/techreborn/init/ModRecipes.java index 30ca2a6cd..a025af494 100644 --- a/src/main/java/techreborn/init/ModRecipes.java +++ b/src/main/java/techreborn/init/ModRecipes.java @@ -31,7 +31,6 @@ import net.minecraft.item.crafting.FurnaceRecipes; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fml.common.Loader; import net.minecraftforge.oredict.OreDictionary; import reborncore.api.recipe.RecipeHandler; import reborncore.common.registration.RebornRegistry; @@ -44,7 +43,6 @@ import techreborn.api.recipe.machines.CompressorRecipe; import techreborn.api.recipe.machines.GrinderRecipe; import techreborn.api.recipe.machines.VacuumFreezerRecipe; import techreborn.blocks.BlockOre; -import techreborn.compat.CompatManager; import techreborn.config.ConfigTechReborn; import techreborn.init.recipes.*; import techreborn.items.*; @@ -66,8 +64,6 @@ public class ModRecipes { public static void init() { //Gonna rescan to make sure we have an uptodate list OreUtil.scanForOres(); - //Done again incase we loaded before QuantumStorage - CompatManager.isQuantumStorageLoaded = Loader.isModLoaded("quantumstorage"); CraftingTableRecipes.init(); SmeltingRecipes.init(); @@ -87,7 +83,6 @@ public class ModRecipes { addBlastFurnaceRecipes(); addVacuumFreezerRecipes(); - addIc2Recipes(); addGrinderRecipes(); addCompressorRecipes(); } @@ -115,7 +110,7 @@ public class ModRecipes { private static void addCompressorRecipes() { RecipeHandler.addRecipe(new CompressorRecipe(ItemIngots.getIngotByName("advanced_alloy"), ItemPlates.getPlateByName("advanced_alloy"), 400, 20)); - RecipeHandler.addRecipe(new CompressorRecipe(IC2Duplicates.CARBON_MESH.getStackBasedOnConfig(), + RecipeHandler.addRecipe(new CompressorRecipe(ItemParts.getPartByName("carbon_mesh"), ItemPlates.getPlateByName("carbon"), 400, 2)); RecipeHandler.addRecipe(new CompressorRecipe(OreUtil.getStackFromName("plankWood", 1), OreUtil.getStackFromName("plateWood", 1), 300, 4)); @@ -385,57 +380,7 @@ public class ModRecipes { new ItemStack(Items.IRON_INGOT, 2), ItemDusts.getDustByName("dark_ashes"), 140, 120, 1000)); } - static void addIc2Recipes() { - RebornCraftingHelper.addShapelessOreRecipe(new ItemStack(ModItems.MANUAL), IC2Duplicates.REFINED_IRON.getStackBasedOnConfig(), - Items.BOOK); -// RebornCraftingHelper -// .addShapedOreRecipe(ItemParts.getPartByName("machineParts", 16), "CSC", "SCS", "CSC", 'S', "ingotSteel", -// 'C', "circuitBasic"); -// - // RebornCraftingHelper.addShapedOreRecipe(new - // ItemStack(ModBlocks.magicalAbsorber), - // "CSC", "IBI", "CAC", - // 'C', "circuitMaster", - // 'S', "craftingSuperconductor", - // 'B', Blocks.beacon, - // 'A', ModBlocks.magicEnergeyConverter, - // 'I', "plateIridium"); - // - // RebornCraftingHelper.addShapedOreRecipe(new - // ItemStack(ModBlocks.magicEnergeyConverter), - // "CTC", "PBP", "CLC", - // 'C', "circuitAdvanced", - // 'P', "platePlatinum", - // 'B', Blocks.beacon, - // 'L', "lapotronCrystal", - // 'T', TechRebornAPI.recipeCompact.getItem("teleporter")); - - // RebornCraftingHelper.addShapedOreRecipe(new - // ItemStack(ModBlocks.electricCraftingTable), - // "ITI", "IBI", "ICI", - // 'I', "plateIron", - // 'C', "circuitAdvanced", - // 'T', "crafterWood", - // 'B', "machineBlockBasic"); - - // RebornCraftingHelper.addShapedOreRecipe(new - // ItemStack(ModBlocks.electricCraftingTable), - // "ATA", "ABA", "ACA", - // 'A', "plateAluminum", - // 'C', "circuitAdvanced", - // 'T', "crafterWood", - // 'B', "machineBlockBasic"); - - // RebornCraftingHelper.addShapedOreRecipe(new - // ItemStack(ModBlocks.chunkLoader), - // "SCS", "CMC", "SCS", - // 'S', "plateSteel", - // 'C', "circuitMaster", - // 'M', new ItemStack(ModItems.parts, 1, 39)); - - - } public static ItemStack getBucketWithFluid(Fluid fluid) { return FluidUtil.getFilledBucket(new FluidStack(fluid, Fluid.BUCKET_VOLUME)); diff --git a/src/main/java/techreborn/init/OreDict.java b/src/main/java/techreborn/init/OreDict.java index 606ffaa92..2cab4f370 100644 --- a/src/main/java/techreborn/init/OreDict.java +++ b/src/main/java/techreborn/init/OreDict.java @@ -46,11 +46,6 @@ public class OreDict { ); public static void init() { - if (Loader.isModLoaded("ic2")) { - Core.logHelper.info("IC2 installed, enabling integration"); - IC2Dict.init(); - } - OreUtil.registerOre("reBattery", ModItems.RE_BATTERY); OreUtil.registerOre("circuitBasic", ItemParts.getPartByName("electronicCircuit")); @@ -74,20 +69,12 @@ public class OreDict { OreUtil.registerOre("insulatedGoldCableItem", BlockCable.getCableByName("insulatedgold")); OreUtil.registerOre("fertilizer", new ItemStack(Items.DYE, 1, 15)); - OreUtil.registerOre("ic2Generator", ModBlocks.SOLID_FUEL_GENEREATOR); - OreUtil.registerOre("ic2SolarPanel", ModBlocks.SOLAR_PANEL); - OreUtil.registerOre("ic2Macerator", ModBlocks.GRINDER); - OreUtil.registerOre("ic2Extractor", ModBlocks.EXTRACTOR); - OreUtil.registerOre("ic2Windmill", ModBlocks.WIND_MILL); - OreUtil.registerOre("ic2Watermill", ModBlocks.WATER_MILL); - //OreUtil.registerOre("uran235", nothing); //OreUtil.registerOre("uran238", nothing); //OreUtil.registerOre("smallUran235", nothing); OreUtil.registerOre("fenceIron", ModBlocks.REFINED_IRON_FENCE); - //TODO ic2 bug? Disabled as it crashes with this line - //OreUtil.registerOre("woodRubber", ModBlocks.RUBBER_LOG); + OreUtil.registerOre("woodRubber", ModBlocks.RUBBER_LOG); OreUtil.registerOre("glassReinforced", ModBlocks.REINFORCED_GLASS); OreUtil.registerOre("craftingDiamondGrinder", ItemParts.getPartByName("diamondGrindingHead")); diff --git a/src/main/java/techreborn/init/SubItemRetriever.java b/src/main/java/techreborn/init/SubItemRetriever.java index 2f82594fc..1535e8b83 100644 --- a/src/main/java/techreborn/init/SubItemRetriever.java +++ b/src/main/java/techreborn/init/SubItemRetriever.java @@ -44,11 +44,6 @@ public class SubItemRetriever implements ISubItemRetriever { return ItemCells.getCellByName(name, count); } - @Override - public ItemStack getCellByName(String name, int count, boolean lookForIC2) { - return ItemCells.getCellByName(name, count); - } - @Override public ItemStack getDustByName(String name) { return ItemDusts.getDustByName(name); diff --git a/src/main/java/techreborn/init/recipes/ChemicalReactorRecipes.java b/src/main/java/techreborn/init/recipes/ChemicalReactorRecipes.java index 985968c28..b5b065042 100644 --- a/src/main/java/techreborn/init/recipes/ChemicalReactorRecipes.java +++ b/src/main/java/techreborn/init/recipes/ChemicalReactorRecipes.java @@ -24,7 +24,6 @@ package techreborn.init.recipes; -import ic2.api.item.IC2Items; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; @@ -57,14 +56,6 @@ public class ChemicalReactorRecipes extends RecipeMethods { register(getMaterial("compressedair", Type.CELL), getMaterial("hydrogen", 2, Type.CELL), getMaterial("water", Type.CELL), 400); register(getMaterial("compressedair", 2, Type.CELL), getMaterial("nitrogen", Type.CELL), getMaterial("nitrogenDioxide", Type.CELL), 400); register(getMaterial("oil", Type.CELL), getMaterial("nitrogen", Type.CELL), getMaterial("nitrofuel", 2, Type.CELL), 800); - - //Dusts - if (techreborn.compat.CompatManager.isIC2Loaded){ - ItemStack f = IC2Items.getItem("crop_res", "fertilizer"); - register(getMaterial("calcite", Type.DUST), getMaterial("sulfur", Type.DUST), f, 40); - //There is no recipe for phosphorous yet. - //register(getMaterial("calcite", Type.DUST), getMaterial("phosphorous", Type.DUST), f, 40); - } } static void register(ItemStack in1, ItemStack in2, ItemStack out, int tickTime, int euPerTick){ diff --git a/src/main/java/techreborn/init/recipes/CraftingTableRecipes.java b/src/main/java/techreborn/init/recipes/CraftingTableRecipes.java index 3c568cb7c..4ab04035b 100644 --- a/src/main/java/techreborn/init/recipes/CraftingTableRecipes.java +++ b/src/main/java/techreborn/init/recipes/CraftingTableRecipes.java @@ -36,9 +36,8 @@ import reborncore.common.util.StringUtils; import techreborn.Core; import techreborn.blocks.BlockStorage; import techreborn.blocks.BlockStorage2; -import techreborn.compat.CompatManager; +import techreborn.blocks.cable.EnumCableType; import techreborn.config.ConfigTechReborn; -import techreborn.init.IC2Duplicates; import techreborn.init.ModBlocks; import techreborn.init.ModItems; import techreborn.items.*; @@ -89,11 +88,11 @@ public class CraftingTableRecipes extends RecipeMethods { } //Upgrades - registerShaped(ItemUpgrades.getUpgradeByName("energy_storage"), "PPP", "WBW", "PCP", 'P', "plankWood", 'W', getStack(IC2Duplicates.CABLE_ICOPPER), 'C', "circuitBasic", 'B', "reBattery"); - registerShaped(ItemUpgrades.getUpgradeByName("overclock"), "TTT", "WCW", 'T', getMaterial("coolant_simple", Type.PART), 'W', getStack(IC2Duplicates.CABLE_ICOPPER), 'C', "circuitBasic"); - registerShaped(ItemUpgrades.getUpgradeByName("overclock", 2), " T ", "WCW", 'T', getMaterial("helium_coolant_triple", Type.PART), 'W', getStack(IC2Duplicates.CABLE_ICOPPER), 'C', "circuitBasic"); - registerShaped(ItemUpgrades.getUpgradeByName("overclock", 2), " T ", "WCW", 'T', getMaterial("nak_coolant_simple", Type.PART), 'W', getStack(IC2Duplicates.CABLE_ICOPPER), 'C', "circuitBasic"); - registerShaped(ItemUpgrades.getUpgradeByName("transformer"), "GGG", "WTW", "GCG", 'G', "blockGlass", 'W', getStack(IC2Duplicates.CABLE_IGOLD), 'C', "circuitBasic", 'T', getStack(IC2Duplicates.MVT)); + registerShaped(ItemUpgrades.getUpgradeByName("energy_storage"), "PPP", "WBW", "PCP", 'P', "plankWood", 'W', EnumCableType.ICOPPER.getStack(), 'C', "circuitBasic", 'B', "reBattery"); + registerShaped(ItemUpgrades.getUpgradeByName("overclock"), "TTT", "WCW", 'T', getMaterial("coolant_simple", Type.PART), 'W', EnumCableType.ICOPPER.getStack(), 'C', "circuitBasic"); + registerShaped(ItemUpgrades.getUpgradeByName("overclock", 2), " T ", "WCW", 'T', getMaterial("helium_coolant_triple", Type.PART), 'W', EnumCableType.ICOPPER.getStack(), 'C', "circuitBasic"); + registerShaped(ItemUpgrades.getUpgradeByName("overclock", 2), " T ", "WCW", 'T', getMaterial("nak_coolant_simple", Type.PART), 'W', EnumCableType.ICOPPER.getStack(), 'C', "circuitBasic"); + registerShaped(ItemUpgrades.getUpgradeByName("transformer"), "GGG", "WTW", "GCG", 'G', "blockGlass", 'W', EnumCableType.IGOLD.getStack(), 'C', "circuitBasic", 'T', getStack(ModBlocks.MV_TRANSFORMER)); //Machines registerShaped(getMaterial("standard", 4, Type.MACHINE_CASING), "RRR", "CAC", "RRR", 'R', "ingotRefinedIron", 'C', "circuitBasic", 'A', "machineBlockBasic"); @@ -103,48 +102,48 @@ public class CraftingTableRecipes extends RecipeMethods { registerShaped(getMaterial("reinforced", 1, Type.MACHINE_CASING), "RRR", "CAC", "RRR", 'R', "plateSteel", 'C', "circuitAdvanced", 'A', getMaterial("standard", Type.MACHINE_CASING)); registerShaped(getMaterial("advanced", 4, Type.MACHINE_CASING), "RRR", "CAC", "RRR", 'R', "plateChrome", 'C', "circuitElite", 'A', "machineBlockElite"); registerShaped(getMaterial("advanced", 1, Type.MACHINE_CASING), "RRR", "CAC", "RRR", 'R', "plateChrome", 'C', "circuitElite", 'A', getMaterial("reinforced", Type.MACHINE_CASING)); - registerShapeless(getStack(IC2Duplicates.GENERATOR), "reBattery", "machineBlockBasic", getStack(Blocks.FURNACE)); - registerShaped(getStack(ModBlocks.SEMI_FLUID_GENERATOR), "III", "IHI", "CGC", 'I', "plateIron", 'H', "glassReinforced", 'C', "circuitBasic", 'G', getStack(IC2Duplicates.GENERATOR)); - registerShaped(getStack(ModBlocks.SEMI_FLUID_GENERATOR), "III", "IHI", "CGC", 'I', "plateAluminum", 'H', "glassReinforced", 'C', "circuitBasic", 'G', getStack(IC2Duplicates.GENERATOR)); - registerShaped(getStack(ModBlocks.DIESEL_GENERATOR), "III", "I I", "CGC", 'I', "ingotRefinedIron", 'C', "circuitBasic", 'G', getStack(IC2Duplicates.GENERATOR)); - registerShaped(getStack(ModBlocks.DIESEL_GENERATOR), "III", "I I", "CGC", 'I', "plateAluminum", 'C', "circuitBasic", 'G', getStack(IC2Duplicates.GENERATOR)); + registerShapeless(getStack(ModBlocks.SOLID_FUEL_GENEREATOR), "reBattery", "machineBlockBasic", getStack(Blocks.FURNACE)); + registerShaped(getStack(ModBlocks.SEMI_FLUID_GENERATOR), "III", "IHI", "CGC", 'I', "plateIron", 'H', "glassReinforced", 'C', "circuitBasic", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); + registerShaped(getStack(ModBlocks.SEMI_FLUID_GENERATOR), "III", "IHI", "CGC", 'I', "plateAluminum", 'H', "glassReinforced", 'C', "circuitBasic", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); + registerShaped(getStack(ModBlocks.DIESEL_GENERATOR), "III", "I I", "CGC", 'I', "ingotRefinedIron", 'C', "circuitBasic", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); + registerShaped(getStack(ModBlocks.DIESEL_GENERATOR), "III", "I I", "CGC", 'I', "plateAluminum", 'C', "circuitBasic", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); registerShaped(getStack(ModBlocks.GAS_TURBINE), "IAI", "WGW", "IAI", 'I', "plateInvar", 'A', "circuitAdvanced", 'W', getStack(ModBlocks.WIND_MILL), 'G', "glassReinforced"); registerShaped(getStack(ModBlocks.GAS_TURBINE), "IAI", "WGW", "IAI", 'I', "plateAluminum", 'A', "circuitAdvanced", 'W', getStack(ModBlocks.WIND_MILL), 'G', "glassReinforced"); - registerShaped(getStack(ModBlocks.THERMAL_GENERATOR), "III", "IRI", "CGC", 'I', "plateInvar", 'R', "glassReinforced", 'G', getStack(IC2Duplicates.GENERATOR), 'C', "circuitBasic"); - registerShaped(getStack(ModBlocks.WIND_MILL), " I ", " G ", " I ", 'I', "plateMagnalium", 'G', getStack(IC2Duplicates.GENERATOR)); - registerShaped(getStack(ModBlocks.WIND_MILL), "IGI", 'I', "plateMagnalium", 'G', getStack(IC2Duplicates.GENERATOR)); - registerShaped(getStack(ModBlocks.WATER_MILL), "SWS", "WGW", "SWS", 'S', "stickWood", 'W', "plankWood", 'G', getStack(IC2Duplicates.GENERATOR)); + registerShaped(getStack(ModBlocks.THERMAL_GENERATOR), "III", "IRI", "CGC", 'I', "plateInvar", 'R', "glassReinforced", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR), 'C', "circuitBasic"); + registerShaped(getStack(ModBlocks.WIND_MILL), " I ", " G ", " I ", 'I', "plateMagnalium", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); + registerShaped(getStack(ModBlocks.WIND_MILL), "IGI", 'I', "plateMagnalium", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); + registerShaped(getStack(ModBlocks.WATER_MILL), "SWS", "WGW", "SWS", 'S', "stickWood", 'W', "plankWood", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); registerShaped(getStack(ModBlocks.LIGHTNING_ROD), "CAC", "ACA", "CAC", 'A', getStack(ModBlocks.MACHINE_CASINGS, 1, 2), 'C', "circuitMaster"); - registerShaped(getStack(ModBlocks.IRON_ALLOY_FURNACE), "III", "F F", "III", 'I', "ingotRefinedIron", 'F', getStack(IC2Duplicates.IRON_FURNACE)); - registerShaped(getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), "RER", "CFC", "RER", 'R', "plateIron", 'E', getStack(IC2Duplicates.EXTRACTOR), 'C', "circuitAdvanced", 'F', "machineBlockAdvanced"); - registerShaped(getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), "RCR", "AEA", "RCR", 'R', "ingotRefinedIron", 'E', getStack(IC2Duplicates.EXTRACTOR), 'A', "machineBlockAdvanced", 'C', "circuitAdvanced"); - registerShaped(getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), "RCR", "AEA", "RCR", 'R', "plateAluminum", 'E', getStack(IC2Duplicates.EXTRACTOR), 'A', "machineBlockAdvanced", 'C', "circuitAdvanced"); + registerShaped(getStack(ModBlocks.IRON_ALLOY_FURNACE), "III", "F F", "III", 'I', "ingotRefinedIron", 'F', getStack(ModBlocks.IRON_FURNACE)); + registerShaped(getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), "RER", "CFC", "RER", 'R', "plateIron", 'E', getStack(ModBlocks.EXTRACTOR), 'C', "circuitAdvanced", 'F', "machineBlockAdvanced"); + registerShaped(getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), "RCR", "AEA", "RCR", 'R', "ingotRefinedIron", 'E', getStack(ModBlocks.EXTRACTOR), 'A', "machineBlockAdvanced", 'C', "circuitAdvanced"); + registerShaped(getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), "RCR", "AEA", "RCR", 'R', "plateAluminum", 'E', getStack(ModBlocks.EXTRACTOR), 'A', "machineBlockAdvanced", 'C', "circuitAdvanced"); registerShaped(getStack(ModBlocks.INDUSTRIAL_SAWMILL), "PAP", "SSS", "ACA", 'P', "ingotRefinedIron", 'A', "circuitAdvanced", 'S', getMaterial("diamond_saw_blade", Type.PART), 'C', "machineBlockAdvanced"); - registerShaped(getStack(ModBlocks.INDUSTRIAL_BLAST_FURNACE), "CHC", "HBH", "FHF", 'H', getMaterial("cupronickelHeatingCoil", Type.PART), 'C', "circuitAdvanced", 'B', "machineBlockAdvanced", 'F', getStack(IC2Duplicates.ELECTRICAL_FURNACE)); - registerShaped(getStack(ModBlocks.INDUSTRIAL_GRINDER), "ECG", "HHH", "CBC", 'E', getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), 'H', "craftingDiamondGrinder", 'C', "circuitAdvanced", 'B', "machineBlockAdvanced", 'G', getStack(IC2Duplicates.GRINDER)); - registerShaped(getStack(ModBlocks.IMPLOSION_COMPRESSOR), "ABA", "CPC", "ABA", 'A', getMaterialObject("advancedAlloy", Type.INGOT), 'C', "circuitAdvanced", 'B', "machineBlockAdvanced", 'P', getStack(IC2Duplicates.COMPRESSOR)); - registerShaped(getStack(ModBlocks.VACUUM_FREEZER), "SPS", "CGC", "SPS", 'S', "plateSteel", 'C', "circuitAdvanced", 'G', "glassReinforced", 'P', getStack(IC2Duplicates.EXTRACTOR)); - registerShaped(getStack(ModBlocks.DISTILLATION_TOWER), "CMC", "PBP", "EME", 'E', getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), 'M', "circuitMaster", 'B', "machineBlockElite", 'C', getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), 'P', getStack(IC2Duplicates.EXTRACTOR)); - registerShaped(getStack(ModBlocks.CHEMICAL_REACTOR), "IMI", "CPC", "IEI", 'I', "plateInvar", 'C', "circuitAdvanced", 'M', getStack(IC2Duplicates.EXTRACTOR), 'P', getStack(IC2Duplicates.COMPRESSOR), 'E', getStack(IC2Duplicates.EXTRACTOR)); - registerShaped(getStack(ModBlocks.ROLLING_MACHINE), "PCP", "MBM", "PCP", 'P', getStack(Blocks.PISTON), 'C', "circuitAdvanced", 'M', getStack(IC2Duplicates.COMPRESSOR), 'B', "machineBlockBasic"); + registerShaped(getStack(ModBlocks.INDUSTRIAL_BLAST_FURNACE), "CHC", "HBH", "FHF", 'H', getMaterial("cupronickelHeatingCoil", Type.PART), 'C', "circuitAdvanced", 'B', "machineBlockAdvanced", 'F', getStack(ModBlocks.ELECTRIC_FURNACE)); + registerShaped(getStack(ModBlocks.INDUSTRIAL_GRINDER), "ECG", "HHH", "CBC", 'E', getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), 'H', "craftingDiamondGrinder", 'C', "circuitAdvanced", 'B', "machineBlockAdvanced", 'G', getStack(ModBlocks.GRINDER)); + registerShaped(getStack(ModBlocks.IMPLOSION_COMPRESSOR), "ABA", "CPC", "ABA", 'A', getMaterialObject("advancedAlloy", Type.INGOT), 'C', "circuitAdvanced", 'B', "machineBlockAdvanced", 'P', getStack(ModBlocks.COMPRESSOR)); + registerShaped(getStack(ModBlocks.VACUUM_FREEZER), "SPS", "CGC", "SPS", 'S', "plateSteel", 'C', "circuitAdvanced", 'G', "glassReinforced", 'P', getStack(ModBlocks.EXTRACTOR)); + registerShaped(getStack(ModBlocks.DISTILLATION_TOWER), "CMC", "PBP", "EME", 'E', getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), 'M', "circuitMaster", 'B', "machineBlockElite", 'C', getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), 'P', getStack(ModBlocks.EXTRACTOR)); + registerShaped(getStack(ModBlocks.CHEMICAL_REACTOR), "IMI", "CPC", "IEI", 'I', "plateInvar", 'C', "circuitAdvanced", 'M', getStack(ModBlocks.EXTRACTOR), 'P', getStack(ModBlocks.COMPRESSOR), 'E', getStack(ModBlocks.EXTRACTOR)); + registerShaped(getStack(ModBlocks.ROLLING_MACHINE), "PCP", "MBM", "PCP", 'P', getStack(Blocks.PISTON), 'C', "circuitAdvanced", 'M', getStack(ModBlocks.COMPRESSOR), 'B', "machineBlockBasic"); registerShaped(getStack(ModBlocks.AUTO_CRAFTING_TABLE), "MPM", "PCP", "MPM", 'M', "circuitAdvanced", 'C', "workbench", 'P', "plateIron"); registerShaped(getStack(ModBlocks.CHARGE_O_MAT), "ETE", "COC", "EAE", 'E', "circuitMaster", 'T', "energyCrystal", 'C', "chest", 'O', getStack(ModItems.LAPOTRONIC_ORB), 'A', "machineBlockAdvanced"); - registerShaped(getStack(ModBlocks.ALLOY_SMELTER), " C ", "FMF", " ", 'C', "circuitBasic", 'F', getStack(IC2Duplicates.ELECTRICAL_FURNACE), 'M', "machineBlockBasic"); + registerShaped(getStack(ModBlocks.ALLOY_SMELTER), " C ", "FMF", " ", 'C', "circuitBasic", 'F', getStack(ModBlocks.ELECTRIC_FURNACE), 'M', "machineBlockBasic"); registerShaped(getStack(ModBlocks.INTERDIMENSIONAL_SU), "PAP", "ACA", "PAP", 'P', "plateIridiumAlloy", 'C', "chestEnder", 'A', getStack(ModBlocks.ADJUSTABLE_SU)); registerShaped(getStack(ModBlocks.ADJUSTABLE_SU), "LLL", "LCL", "LLL", 'L', getStack(ModItems.LAPOTRONIC_ORB), 'C', "energyCrystal"); - registerShaped(getStack(ModBlocks.LAPOTRONIC_SU), " L ", "CBC", " M ", 'L', getStack(IC2Duplicates.LVT), 'C', "circuitAdvanced", 'M', getStack(IC2Duplicates.MVT), 'B', getStack(ModBlocks.LSU_STORAGE)); + registerShaped(getStack(ModBlocks.LAPOTRONIC_SU), " L ", "CBC", " M ", 'L', getStack(ModBlocks.LV_TRANSFORMER), 'C', "circuitAdvanced", 'M', getStack(ModBlocks.MV_TRANSFORMER), 'B', getStack(ModBlocks.LSU_STORAGE)); registerShaped(getStack(ModBlocks.LSU_STORAGE), "LLL", "LCL", "LLL", 'L', "blockLapis", 'C', "circuitBasic"); registerShaped(getStack(ModBlocks.SCRAPBOXINATOR), "ICI", "DSD", "ICI", 'S', getStack(ModItems.SCRAP_BOX), 'C', "circuitBasic", 'I', "plateIron", 'D', "dirt"); registerShaped(getStack(ModBlocks.FUSION_CONTROL_COMPUTER), "CCC", "PTP", "CCC", 'P', "energyCrystal", 'T', getStack(ModBlocks.FUSION_COIL), 'C', "circuitMaster"); registerShaped(getStack(ModBlocks.FUSION_COIL), "CSC", "NAN", "CRC", 'A', getStack(ModBlocks.MACHINE_CASINGS, 1, 2), 'N', getMaterial("nichromeHeatingCoil", Type.PART), 'C', "circuitMaster", 'S', "craftingSuperconductor", 'R', getMaterial("iridiumNeutronReflector", Type.PART)); registerShaped(getStack(ModBlocks.DIGITAL_CHEST), "PPP", "PDP", "PCP", 'P', "plateAluminum", 'D', getMaterial("data_orb", Type.PART), 'C', getMaterial("computer_monitor", Type.PART)); registerShaped(getStack(ModBlocks.DIGITAL_CHEST), "PPP", "PDP", "PCP", 'P', "plateSteel", 'D', getMaterial("data_orb", Type.PART), 'C', getMaterial("computer_monitor", Type.PART)); - registerShaped(getStack(ModBlocks.MATTER_FABRICATOR), "ETE", "AOA", "ETE", 'E', "circuitMaster", 'T', getStack(IC2Duplicates.EXTRACTOR), 'A', "machineBlockElite", 'O', getStack(ModItems.LAPOTRONIC_ORB)); + registerShaped(getStack(ModBlocks.MATTER_FABRICATOR), "ETE", "AOA", "ETE", 'E', "circuitMaster", 'T', getStack(ModBlocks.EXTRACTOR), 'A', "machineBlockElite", 'O', getStack(ModItems.LAPOTRONIC_ORB)); registerShaped(getStack(ModBlocks.COMPUTER_CUBE), "OMC", "MFM", "CMO", 'O', getMaterial("data_orb", Type.PART), 'M', getMaterial("computer_monitor", Type.PART), 'C', "circuitMaster", 'F', "machineBlockAdvanced"); registerShaped(getStack(ModBlocks.PLAYER_DETECTOR, true), " D ", "CFC", " D ", 'D', "circuitStorage", 'C', "circuitAdvanced", 'F', getStack(ModBlocks.COMPUTER_CUBE)); - registerShaped(getStack(ModBlocks.DRAGON_EGG_SYPHON), "CTC", "PSP", "CBC", 'C', "circuitMaster", 'T', getStack(IC2Duplicates.MFE), 'P', "plateIridiumAlloy", 'S', "craftingSuperconductor", 'B', getStack(ModItems.LAPOTRONIC_ORB)); - registerShaped(getStack(ModBlocks.PLASMA_GENERATOR), "PPP", "PTP", "CGC", 'P', "plateTungstensteel", 'T', getStack(IC2Duplicates.HVT), 'C', "circuitMaster", 'G', getStack(IC2Duplicates.GENERATOR)); - registerShaped(getStack(ModBlocks.SOLAR_PANEL, 1, 0), "DLD", "LDL", "CGC", 'D', "dustCoal", 'L', "paneGlass", 'G', getStack(IC2Duplicates.GENERATOR), 'C', "circuitBasic"); + registerShaped(getStack(ModBlocks.DRAGON_EGG_SYPHON), "CTC", "PSP", "CBC", 'C', "circuitMaster", 'T', getStack(ModBlocks.MEDIUM_VOLTAGE_SU), 'P', "plateIridiumAlloy", 'S', "craftingSuperconductor", 'B', getStack(ModItems.LAPOTRONIC_ORB)); + registerShaped(getStack(ModBlocks.PLASMA_GENERATOR), "PPP", "PTP", "CGC", 'P', "plateTungstensteel", 'T', getStack(ModBlocks.HV_TRANSFORMER), 'C', "circuitMaster", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR)); + registerShaped(getStack(ModBlocks.SOLAR_PANEL, 1, 0), "DLD", "LDL", "CGC", 'D', "dustCoal", 'L', "paneGlass", 'G', getStack(ModBlocks.SOLID_FUEL_GENEREATOR), 'C', "circuitBasic"); registerShaped(getStack(ModBlocks.SOLAR_PANEL, 1, 1), "DLD", "LDL", "CPC", 'D', "dustCoal", 'L', "blockGlass", 'C', "circuitAdvanced", 'P', getStack(ModBlocks.SOLAR_PANEL, 1, 0)); registerShaped(getStack(ModBlocks.SOLAR_PANEL, 1, 1), "DLD", "LDL", "CPC", 'D', "dustCoal", 'L', "blockGlass", 'C', "circuitAdvanced", 'P', "machineBlockBasic"); registerShaped(getStack(ModBlocks.SOLAR_PANEL, 1, 2), "DLD", "LDL", "CPC", 'D', "dustDiamond", 'L', "blockGlass", 'C', "circuitAdvanced", 'P', getStack(ModBlocks.SOLAR_PANEL, 1, 1)); @@ -156,27 +155,23 @@ public class CraftingTableRecipes extends RecipeMethods { registerShaped(getStack(ModBlocks.ALARM, 1, 0), "ICI", "SRS", "ICI", 'I', "ingotIron", 'C', getMaterial("copper", Type.CABLE), 'S', getMaterial("insulatedcopper", Type.CABLE), 'R', "blockRedstone" ); registerShaped(getStack(ModBlocks.FLUID_REPLICATOR), "PCP", "CFC", "ESR", 'P', "plateTungstensteel", 'F', "machineBlockElite", 'C', "circuitMaster", 'E', getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), 'S', "craftingSuperconductor",'R', getStack(ModBlocks.CHEMICAL_REACTOR)); - if (!IC2Duplicates.deduplicate()) { - registerShaped(getStack(IC2Duplicates.HVT), " H ", " M ", " H ", 'M', getStack(IC2Duplicates.MVT), 'H', getStack(IC2Duplicates.CABLE_IHV)); - registerShaped(getStack(IC2Duplicates.MVT), " G ", " M ", " G ", 'M', "machineBlockBasic", 'G', getStack(IC2Duplicates.CABLE_IGOLD)); - registerShaped(getStack(IC2Duplicates.LVT), "PWP", "CCC", "PPP", 'P', "plankWood", 'C', "ingotCopper", 'W', getStack(IC2Duplicates.CABLE_ICOPPER)); - registerShaped(getStack(IC2Duplicates.BAT_BOX), "WCW", "BBB", "WWW", 'W', "plankWood", 'B', "reBattery", 'C', getStack(IC2Duplicates.CABLE_ICOPPER)); - registerShaped(getStack(IC2Duplicates.MFE), "GEG", "EME", "GEG", 'M', "machineBlockBasic", 'E', "energyCrystal", 'G', getStack(IC2Duplicates.CABLE_IGOLD)); - registerShaped(getStack(IC2Duplicates.MFSU), "LAL", "LML", "LOL", 'A', "circuitAdvanced", 'L', "lapotronCrystal", 'M', getStack(IC2Duplicates.MFE), 'O', "machineBlockAdvanced"); - registerShaped(getStack(IC2Duplicates.COMPRESSOR), "S S", "SCS", "SMS", 'C', "circuitBasic", 'M', "machineBlockBasic", 'S', "stone"); - registerShaped(getStack(IC2Duplicates.ELECTRICAL_FURNACE), " C ", "RFR", " ", 'C', "circuitBasic", 'F', getStack(IC2Duplicates.IRON_FURNACE), 'R', "dustRedstone"); - registerShaped(getStack(IC2Duplicates.RECYCLER), " E ", "DCD", "GDG", 'D', "dirt", 'C', getStack(IC2Duplicates.COMPRESSOR), 'G', "dustGlowstone", 'E', "circuitBasic"); - registerShaped(getStack(IC2Duplicates.IRON_FURNACE), "III", "I I", "III", 'I', "ingotIron"); - registerShaped(getStack(IC2Duplicates.IRON_FURNACE), " I ", "I I", "IFI", 'I', "ingotIron", 'F', getStack(Blocks.FURNACE)); - registerShaped(getStack(IC2Duplicates.EXTRACTOR), "TMT", "TCT", " ", 'T', getStack(ModItems.TREE_TAP, true), 'M', "machineBlockBasic", 'C', "circuitBasic"); - registerShaped(getStack(IC2Duplicates.GRINDER), "FFF", "SMS", " C ", 'F', Items.FLINT, 'S', getStack(Blocks.COBBLESTONE), 'M', getMaterial("machine", Type.MACHINE_FRAME), 'C', "circuitBasic"); - registerShapeless(getStack(IC2Duplicates.FREQ_TRANSMITTER), getStack(IC2Duplicates.CABLE_ICOPPER), "circuitBasic"); - } - if (!CompatManager.isQuantumStorageLoaded) { - registerShaped(getStack(ModBlocks.QUANTUM_CHEST), "DCD", "ATA", "DQD", 'D', getMaterial("dataOrb", Type.PART), 'C', getMaterial("computerMonitor", Type.PART), 'A', "machineBlockElite", 'Q', getStack(ModBlocks.DIGITAL_CHEST), 'T', getStack(IC2Duplicates.COMPRESSOR)); - registerShaped(getStack(ModBlocks.QUANTUM_TANK), "EPE", "PCP", "EPE", 'P', "platePlatinum", 'E', "circuitAdvanced", 'C', getStack(ModBlocks.QUANTUM_CHEST)); - } + registerShaped(getStack(ModBlocks.HV_TRANSFORMER), " H ", " M ", " H ", 'M', getStack(ModBlocks.MV_TRANSFORMER), 'H', EnumCableType.IHV.getStack()); + registerShaped(getStack(ModBlocks.MV_TRANSFORMER), " G ", " M ", " G ", 'M', "machineBlockBasic", 'G', EnumCableType.IGOLD.getStack()); + registerShaped(getStack(ModBlocks.LV_TRANSFORMER), "PWP", "CCC", "PPP", 'P', "plankWood", 'C', "ingotCopper", 'W', EnumCableType.ICOPPER.getStack()); + registerShaped(getStack(ModBlocks.LOW_VOLTAGE_SU), "WCW", "BBB", "WWW", 'W', "plankWood", 'B', "reBattery", 'C', EnumCableType.ICOPPER.getStack()); + registerShaped(getStack(ModBlocks.MEDIUM_VOLTAGE_SU), "GEG", "EME", "GEG", 'M', "machineBlockBasic", 'E', "energyCrystal", 'G', EnumCableType.IGOLD.getStack()); + registerShaped(getStack(ModBlocks.HIGH_VOLTAGE_SU), "LAL", "LML", "LOL", 'A', "circuitAdvanced", 'L', "lapotronCrystal", 'M', getStack(ModBlocks.MEDIUM_VOLTAGE_SU), 'O', "machineBlockAdvanced"); + registerShaped(getStack(ModBlocks.COMPRESSOR), "S S", "SCS", "SMS", 'C', "circuitBasic", 'M', "machineBlockBasic", 'S', "stone"); + registerShaped(getStack(ModBlocks.ELECTRIC_FURNACE), " C ", "RFR", " ", 'C', "circuitBasic", 'F', getStack(ModBlocks.IRON_FURNACE), 'R', "dustRedstone"); + registerShaped(getStack(ModBlocks.RECYCLER), " E ", "DCD", "GDG", 'D', "dirt", 'C', getStack(ModBlocks.COMPRESSOR), 'G', "dustGlowstone", 'E', "circuitBasic"); + registerShaped(getStack(ModBlocks.IRON_FURNACE), "III", "I I", "III", 'I', "ingotIron"); + registerShaped(getStack(ModBlocks.IRON_FURNACE), " I ", "I I", "IFI", 'I', "ingotIron", 'F', getStack(Blocks.FURNACE)); + registerShaped(getStack(ModBlocks.EXTRACTOR), "TMT", "TCT", " ", 'T', getStack(ModItems.TREE_TAP, true), 'M', "machineBlockBasic", 'C', "circuitBasic"); + registerShaped(getStack(ModBlocks.GRINDER), "FFF", "SMS", " C ", 'F', Items.FLINT, 'S', getStack(Blocks.COBBLESTONE), 'M', getMaterial("machine", Type.MACHINE_FRAME), 'C', "circuitBasic"); + registerShapeless(getStack(ModItems.FREQUENCY_TRANSMITTER), EnumCableType.ICOPPER.getStack(), "circuitBasic"); + registerShaped(getStack(ModBlocks.QUANTUM_CHEST), "DCD", "ATA", "DQD", 'D', getMaterial("dataOrb", Type.PART), 'C', getMaterial("computerMonitor", Type.PART), 'A', "machineBlockElite", 'Q', getStack(ModBlocks.DIGITAL_CHEST), 'T', getStack(ModBlocks.COMPRESSOR)); + registerShaped(getStack(ModBlocks.QUANTUM_TANK), "EPE", "PCP", "EPE", 'P', "platePlatinum", 'E', "circuitAdvanced", 'C', getStack(ModBlocks.QUANTUM_CHEST)); //Lighting registerShaped(getStack(ModBlocks.LAMP_INCANDESCENT), "GGG", "TCT", "GGG", 'G', "paneGlass", 'T', getMaterial("copper", Type.CABLE), 'C', getMaterial("carbon_fiber", Type.PART)); @@ -184,8 +179,8 @@ public class CraftingTableRecipes extends RecipeMethods { //Parts registerShaped(getMaterial("iridium_alloy", Type.INGOT), "IAI", "ADA", "IAI", 'I', "ingotIridium", 'D', "dustDiamond", 'A', "plateAdvancedAlloy"); - registerShaped(getStack(ModItems.RE_BATTERY), " W ", "TRT", "TRT", 'T', "ingotTin", 'R', "dustRedstone", 'W', getStack(IC2Duplicates.CABLE_ICOPPER)); - registerShaped(getStack(ModItems.LITHIUM_BATTERY), " C ", "PFP", "PFP", 'F', getCell("lithium"), 'P', "plateAluminum", 'C', getStack(IC2Duplicates.CABLE_IGOLD)); + registerShaped(getStack(ModItems.RE_BATTERY), " W ", "TRT", "TRT", 'T', "ingotTin", 'R', "dustRedstone", 'W', EnumCableType.ICOPPER.getStack()); + registerShaped(getStack(ModItems.LITHIUM_BATTERY), " C ", "PFP", "PFP", 'F', getCell("lithium"), 'P', "plateAluminum", 'C', EnumCableType.IGOLD.getStack()); registerShaped(getStack(ModItems.LITHIUM_BATTERY_PACK), "BCB", "BPB", "B B", 'B', getStack(ModItems.LITHIUM_BATTERY), 'P', "plateAluminum", 'C', "circuitAdvanced"); registerShaped(getStack(ModItems.ENERGY_CRYSTAL), "RRR", "RDR", "RRR", 'R', "dustRedstone", 'D', "gemDiamond"); registerShaped(getStack(ModItems.LAPOTRONIC_CRYSTAL), "LCL", "LEL", "LCL", 'L', "dyeBlue", 'E', "energyCrystal", 'C', "circuitBasic"); @@ -217,32 +212,32 @@ public class CraftingTableRecipes extends RecipeMethods { registerShaped(getMaterial("neutron_reflector", Type.PART), "TCT", "CPC", "TCT", 'T', "dustTin", 'C', "dustCoal", 'P', "plateCopper"); registerShaped(getMaterial("super_conductor", 4, Type.PART), "CCC", "TIT", "EEE", 'E', "circuitMaster", 'C', getMaterial("heliumCoolantSimple", Type.PART), 'T', "ingotTungsten", 'I', "plateIridiumAlloy"); - if (!IC2Duplicates.deduplicate()) { - registerShaped(getMaterial("copper", 6, Type.CABLE), "CCC", 'C', "ingotCopper"); - registerShaped(getMaterial("tin", 9, Type.CABLE), "TTT", 'T', "ingotTin"); - registerShaped(getMaterial("gold", 12, Type.CABLE), "GGG", 'G', "ingotGold"); - registerShaped(getMaterial("hv", 12, Type.CABLE), "RRR", 'R', "ingotRefinedIron"); - registerShaped(getMaterial("insulatedcopper", 6, Type.CABLE), "RRR", "CCC", "RRR", 'R', "itemRubber", 'C', "ingotCopper"); - registerShaped(getMaterial("insulatedcopper", 6, Type.CABLE), "RCR", "RCR", "RCR", 'R', "itemRubber", 'C', "ingotCopper"); - registerShapeless(getMaterial("insulatedcopper", Type.CABLE), "itemRubber", getMaterial("copper", Type.CABLE)); - registerShaped(getMaterial("insulatedgold", 4, Type.CABLE), "RRR", "RGR", "RRR", 'R', "itemRubber", 'G', "ingotGold"); - registerShapeless(getMaterial("insulatedgold", Type.CABLE), "itemRubber", "itemRubber", getMaterial("gold", Type.CABLE)); - registerShaped(getMaterial("insulatedhv", 4, Type.CABLE), "RRR", "RIR", "RRR", 'R', "itemRubber", 'I', "ingotRefinedIron"); - registerShapeless(getMaterial("insulatedhv", Type.CABLE), "itemRubber", "itemRubber", getMaterial("hv", Type.CABLE)); - registerShaped(getMaterial("glassfiber", 4, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "gemDiamond", 'G', "blockGlass"); - registerShaped(getMaterial("glassfiber", 4, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "dustDiamond", 'G', "blockGlass"); - registerShaped(getMaterial("glassfiber", 3, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "gemRuby", 'G', "blockGlass"); - registerShaped(getMaterial("glassfiber", 3, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "dustRuby", 'G', "blockGlass"); - registerShaped(getMaterial("glassfiber", 6, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotSilver", 'D', "gemDiamond", 'G', "blockGlass"); - registerShaped(getMaterial("glassfiber", 6, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotSilver", 'D', "dustDiamond", 'G', "blockGlass"); - registerShaped(getMaterial("glassfiber", 8, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotElectrum", 'D', "gemDiamond", 'G', "blockGlass"); - registerShaped(getMaterial("glassfiber", 8, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotElectrum", 'D', "dustDiamond", 'G', "blockGlass"); - registerShaped(getMaterial("carbon_fiber", Type.PART), " C ", "C C", " C ", 'C', "dustCoal"); - registerShaped(getMaterial("carbon_fiber", Type.PART), "CCC", "C C", "CCC", 'C', getCell("carbon")); - registerShapeless(getMaterial("carbon_mesh", Type.PART), getMaterial("carbon_fiber", Type.PART), getMaterial("carbon_fiber", Type.PART)); - registerShaped(getMaterial("electronic_circuit", Type.PART), "WWW", "SRS", "WWW", 'R', "ingotRefinedIron", 'S', Items.REDSTONE, 'W', getStack(IC2Duplicates.CABLE_ICOPPER)); - registerShaped(getMaterial("advanced_circuit", Type.PART), "RGR", "LCL", "RGR", 'R', "dustRedstone", 'G', "dustGlowstone", 'L', "gemLapis", 'C', "circuitBasic"); - } + + registerShaped(getMaterial("copper", 6, Type.CABLE), "CCC", 'C', "ingotCopper"); + registerShaped(getMaterial("tin", 9, Type.CABLE), "TTT", 'T', "ingotTin"); + registerShaped(getMaterial("gold", 12, Type.CABLE), "GGG", 'G', "ingotGold"); + registerShaped(getMaterial("hv", 12, Type.CABLE), "RRR", 'R', "ingotRefinedIron"); + registerShaped(getMaterial("insulatedcopper", 6, Type.CABLE), "RRR", "CCC", "RRR", 'R', "itemRubber", 'C', "ingotCopper"); + registerShaped(getMaterial("insulatedcopper", 6, Type.CABLE), "RCR", "RCR", "RCR", 'R', "itemRubber", 'C', "ingotCopper"); + registerShapeless(getMaterial("insulatedcopper", Type.CABLE), "itemRubber", getMaterial("copper", Type.CABLE)); + registerShaped(getMaterial("insulatedgold", 4, Type.CABLE), "RRR", "RGR", "RRR", 'R', "itemRubber", 'G', "ingotGold"); + registerShapeless(getMaterial("insulatedgold", Type.CABLE), "itemRubber", "itemRubber", getMaterial("gold", Type.CABLE)); + registerShaped(getMaterial("insulatedhv", 4, Type.CABLE), "RRR", "RIR", "RRR", 'R', "itemRubber", 'I', "ingotRefinedIron"); + registerShapeless(getMaterial("insulatedhv", Type.CABLE), "itemRubber", "itemRubber", getMaterial("hv", Type.CABLE)); + registerShaped(getMaterial("glassfiber", 4, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "gemDiamond", 'G', "blockGlass"); + registerShaped(getMaterial("glassfiber", 4, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "dustDiamond", 'G', "blockGlass"); + registerShaped(getMaterial("glassfiber", 3, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "gemRuby", 'G', "blockGlass"); + registerShaped(getMaterial("glassfiber", 3, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "dustRuby", 'G', "blockGlass"); + registerShaped(getMaterial("glassfiber", 6, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotSilver", 'D', "gemDiamond", 'G', "blockGlass"); + registerShaped(getMaterial("glassfiber", 6, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotSilver", 'D', "dustDiamond", 'G', "blockGlass"); + registerShaped(getMaterial("glassfiber", 8, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotElectrum", 'D', "gemDiamond", 'G', "blockGlass"); + registerShaped(getMaterial("glassfiber", 8, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotElectrum", 'D', "dustDiamond", 'G', "blockGlass"); + registerShaped(getMaterial("carbon_fiber", Type.PART), " C ", "C C", " C ", 'C', "dustCoal"); + registerShaped(getMaterial("carbon_fiber", Type.PART), "CCC", "C C", "CCC", 'C', getCell("carbon")); + registerShapeless(getMaterial("carbon_mesh", Type.PART), getMaterial("carbon_fiber", Type.PART), getMaterial("carbon_fiber", Type.PART)); + registerShaped(getMaterial("electronic_circuit", Type.PART), "WWW", "SRS", "WWW", 'R', "ingotRefinedIron", 'S', Items.REDSTONE, 'W', EnumCableType.ICOPPER.getStack()); + registerShaped(getMaterial("advanced_circuit", Type.PART), "RGR", "LCL", "RGR", 'R', "dustRedstone", 'G', "dustGlowstone", 'L', "gemLapis", 'C', "circuitBasic"); + //UU-Matter ItemStack uuStack = new ItemStack(ModItems.UU_MATTER); @@ -291,6 +286,10 @@ public class CraftingTableRecipes extends RecipeMethods { registerShaped(new ItemStack(ModBlocks.RUBBER_LOG_SLAB_HALF), "WWW", 'W', new ItemStack(ModBlocks.RUBBER_PLANKS)); registerShaped(new ItemStack(ModBlocks.RUBBER_LOG_STAIR), "W ", "WW ", "WWW", 'W', new ItemStack(ModBlocks.RUBBER_PLANKS)); + RebornCraftingHelper.addShapelessOreRecipe(new ItemStack(ModItems.MANUAL), "ingotRefinedIron", + Items.BOOK); + + Core.logHelper.info("Crafting Table Recipes Added"); } @@ -336,31 +335,29 @@ public class CraftingTableRecipes extends RecipeMethods { } static void registerMixedMetalIngotRecipes() { - if (!IC2Duplicates.deduplicate()) { - registerMixedMetal("ingotRefinedIron", "ingotBronze", "ingotTin", 2); - registerMixedMetal("ingotRefinedIron", "ingotBronze", "ingotZinc", 2); + registerMixedMetal("ingotRefinedIron", "ingotBronze", "ingotTin", 2); + registerMixedMetal("ingotRefinedIron", "ingotBronze", "ingotZinc", 2); - registerMixedMetal("ingotNickel", "ingotBronze", "ingotTin", 3); - registerMixedMetal("ingotNickel", "ingotBronze", "ingotZinc", 3); + registerMixedMetal("ingotNickel", "ingotBronze", "ingotTin", 3); + registerMixedMetal("ingotNickel", "ingotBronze", "ingotZinc", 3); - registerMixedMetal("ingotNickel", "ingotBronze", "ingotAluminum", 4); - registerMixedMetal("ingotInvar", "ingotBronze", "ingotTin", 4); - registerMixedMetal("ingotInvar", "ingotBronze", "ingotZinc", 4); + registerMixedMetal("ingotNickel", "ingotBronze", "ingotAluminum", 4); + registerMixedMetal("ingotInvar", "ingotBronze", "ingotTin", 4); + registerMixedMetal("ingotInvar", "ingotBronze", "ingotZinc", 4); - registerMixedMetal("ingotInvar", "ingotBronze", "ingotAluminum", 5); - registerMixedMetal("ingotTitanium", "ingotBronze", "ingotTin", 5); - registerMixedMetal("ingotTitanium", "ingotBronze", "ingotZinc", 5); - registerMixedMetal("ingotTungsten", "ingotBronze", "ingotTin", 5); - registerMixedMetal("ingotTungsten", "ingotBronze", "ingotZinc", 5); + registerMixedMetal("ingotInvar", "ingotBronze", "ingotAluminum", 5); + registerMixedMetal("ingotTitanium", "ingotBronze", "ingotTin", 5); + registerMixedMetal("ingotTitanium", "ingotBronze", "ingotZinc", 5); + registerMixedMetal("ingotTungsten", "ingotBronze", "ingotTin", 5); + registerMixedMetal("ingotTungsten", "ingotBronze", "ingotZinc", 5); - registerMixedMetal("ingotTitanium", "ingotBronze", "ingotAluminum", 6); - registerMixedMetal("ingotTungsten", "ingotBronze", "ingotAluminum", 6); + registerMixedMetal("ingotTitanium", "ingotBronze", "ingotAluminum", 6); + registerMixedMetal("ingotTungsten", "ingotBronze", "ingotAluminum", 6); - registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotTin", 8); - registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotZinc", 8); + registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotTin", 8); + registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotZinc", 8); - registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotAluminum", 9); - } + registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotAluminum", 9); } static void registerMixedMetal(String top, String middle, String bottom, int amount) { @@ -373,8 +370,8 @@ public class CraftingTableRecipes extends RecipeMethods { if (!OreDictionary.doesOreNameExist(bottom)) { return; } - if (top.equals("ingotRefinedIron") && IC2Duplicates.deduplicate()) { - registerShaped(getMaterial("mixed_metal", amount, Type.INGOT), "TTT", "MMM", "BBB", 'T', getStack(IC2Duplicates.REFINED_IRON), 'M', middle, 'B', bottom); + if (top.equals("ingotRefinedIron")) { + registerShaped(getMaterial("mixed_metal", amount, Type.INGOT), "TTT", "MMM", "BBB", 'T', "ingotRefinedIron", 'M', middle, 'B', bottom); } else { registerShaped(getMaterial("mixed_metal", amount, Type.INGOT), "TTT", "MMM", "BBB", 'T', top, 'M', middle, 'B', bottom); } diff --git a/src/main/java/techreborn/init/recipes/RecipeMethods.java b/src/main/java/techreborn/init/recipes/RecipeMethods.java index aff240ffb..453027e31 100644 --- a/src/main/java/techreborn/init/recipes/RecipeMethods.java +++ b/src/main/java/techreborn/init/recipes/RecipeMethods.java @@ -35,7 +35,6 @@ import techreborn.blocks.BlockMachineCasing; import techreborn.blocks.BlockMachineFrames; import techreborn.blocks.BlockOre; import techreborn.blocks.cable.BlockCable; -import techreborn.init.IC2Duplicates; import techreborn.items.*; /** @@ -170,16 +169,6 @@ public abstract class RecipeMethods { return getStack(Item.getItemFromBlock(block), count, metadata); } - public static ItemStack getStack(IC2Duplicates ic2Duplicates) { - return getStack(ic2Duplicates, 1); - } - - public static ItemStack getStack(IC2Duplicates ic2Duplicates, int count) { - ItemStack stack = ic2Duplicates.getStackBasedOnConfig(); - stack.setCount(count); - return stack; - } - public static Ingredient getCell(String name, int count){ return new IngredientCell(ItemCells.getCellByName(name, count)); } diff --git a/src/main/java/techreborn/init/recipes/SmeltingRecipes.java b/src/main/java/techreborn/init/recipes/SmeltingRecipes.java index 62b0fe45b..1f51a7805 100644 --- a/src/main/java/techreborn/init/recipes/SmeltingRecipes.java +++ b/src/main/java/techreborn/init/recipes/SmeltingRecipes.java @@ -29,7 +29,7 @@ import net.minecraft.item.ItemStack; import reborncore.common.util.RebornCraftingHelper; import techreborn.blocks.BlockOre; import techreborn.blocks.BlockOre2; -import techreborn.init.IC2Duplicates; +import techreborn.items.ItemIngots; /** * Created by Prospector @@ -38,15 +38,14 @@ public class SmeltingRecipes extends RecipeMethods { public static void init() { register(getMaterial("sap", Type.PART), getMaterial("rubber", Type.PART)); - if (!IC2Duplicates.deduplicate()) { - register(getStack(Items.IRON_INGOT), getMaterial("refined_iron", Type.INGOT)); - } + register(getStack(Items.IRON_INGOT), getMaterial("refined_iron", Type.INGOT)); + register(BlockOre2.getOreByName("copper"), getMaterial("copper", Type.INGOT)); register(BlockOre2.getOreByName("tin"), getMaterial("tin", Type.INGOT)); register(BlockOre.getOreByName("silver"), getMaterial("silver", Type.INGOT)); register(BlockOre.getOreByName("lead"), getMaterial("lead", Type.INGOT)); register(BlockOre.getOreByName("sheldonite"), getMaterial("platinum", Type.INGOT)); - register(IC2Duplicates.MIXED_METAL.getStackBasedOnConfig(), getMaterial("advanced_alloy", Type.INGOT)); + register(ItemIngots.getIngotByName("mixed_metal"), getMaterial("advanced_alloy", Type.INGOT)); // Dust smelting register(getMaterial("iron", Type.DUST), getStack(Items.IRON_INGOT)); diff --git a/src/main/java/techreborn/items/tools/ItemElectricTreetap.java b/src/main/java/techreborn/items/tools/ItemElectricTreetap.java index 74742babb..9ea87ee22 100644 --- a/src/main/java/techreborn/items/tools/ItemElectricTreetap.java +++ b/src/main/java/techreborn/items/tools/ItemElectricTreetap.java @@ -24,9 +24,6 @@ package techreborn.items.tools; -import ic2.core.item.tool.ItemTreetap; -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -45,10 +42,8 @@ import net.minecraftforge.fml.relauncher.SideOnly; import reborncore.api.power.IEnergyItemInfo; import reborncore.common.powerSystem.PowerSystem; import reborncore.common.powerSystem.PoweredItemContainerProvider; -import reborncore.common.powerSystem.forge.ForgePowerItemManager; import reborncore.common.util.ItemUtils; import techreborn.utils.TechRebornCreativeTab; -import techreborn.compat.CompatManager; import techreborn.init.ModItems; import techreborn.items.ItemTR; @@ -69,20 +64,6 @@ public class ItemElectricTreetap extends ItemTR implements IEnergyItemInfo { setMaxStackSize(1); } - // Item - @Override - public EnumActionResult onItemUse(EntityPlayer playerIn, World worldIn, BlockPos pos, EnumHand hand, EnumFacing side, float hitX, float hitY, float hitZ) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - IEnergyStorage capEnergy = playerIn.getHeldItem(hand).getCapability(CapabilityEnergy.ENERGY, null); - if (CompatManager.isIC2Loaded && block == Block.getBlockFromName("ic2:rubber_wood") && capEnergy.getEnergyStored() >= cost) - if (ItemTreetap.attemptExtract(playerIn, worldIn, pos, side, state, null) && !worldIn.isRemote) { - capEnergy.extractEnergy(cost, false); - return EnumActionResult.SUCCESS; - } - return EnumActionResult.PASS; - } - @Override public double getDurabilityForDisplay(ItemStack stack) { return 1 - ItemUtils.getPowerForDurabilityBar(stack); diff --git a/src/main/java/techreborn/items/tools/ItemTreeTap.java b/src/main/java/techreborn/items/tools/ItemTreeTap.java index ecac7fe0f..59c25c0d0 100644 --- a/src/main/java/techreborn/items/tools/ItemTreeTap.java +++ b/src/main/java/techreborn/items/tools/ItemTreeTap.java @@ -24,7 +24,6 @@ package techreborn.items.tools; -import ic2.core.item.tool.ItemTreetap; import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; @@ -36,7 +35,6 @@ import net.minecraft.util.EnumHand; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; import techreborn.utils.TechRebornCreativeTab; -import techreborn.compat.CompatManager; import techreborn.events.TRRecipeHandler; import techreborn.items.ItemTR; @@ -49,22 +47,6 @@ public class ItemTreeTap extends ItemTR { setCreativeTab(TechRebornCreativeTab.instance); } - @Override - public EnumActionResult onItemUse(EntityPlayer playerIn, World worldIn, BlockPos pos, EnumHand hand, EnumFacing side, float hitX, float hitY, float hitZ) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - if (CompatManager.isIC2Loaded && block == Block.getBlockFromName("ic2:rubber_wood")) { - ItemTreetap.attemptExtract(playerIn, worldIn, pos, side, state, null); - if (!worldIn.isRemote) { - playerIn.getHeldItem(hand).damageItem(1, playerIn); - } - if (playerIn instanceof EntityPlayerMP) { - TRRecipeHandler.unlockTRRecipes((EntityPlayerMP) playerIn); - } - return EnumActionResult.SUCCESS; - } - return EnumActionResult.PASS; - } @Override public boolean showDurabilityBar(ItemStack stack) { diff --git a/src/main/java/techreborn/items/tools/ItemWrench.java b/src/main/java/techreborn/items/tools/ItemWrench.java index 52d109e21..1a9bd1007 100644 --- a/src/main/java/techreborn/items/tools/ItemWrench.java +++ b/src/main/java/techreborn/items/tools/ItemWrench.java @@ -38,9 +38,7 @@ import net.minecraftforge.server.permission.context.BlockPosContext; import reborncore.api.IToolHandler; import reborncore.common.util.RebornPermissions; import techreborn.utils.TechRebornCreativeTab; -import techreborn.compat.CompatManager; import techreborn.items.ItemTR; -import techreborn.utils.IC2WrenchHelper; /** * Created by modmuss50 on 26/02/2016. @@ -59,12 +57,6 @@ public class ItemWrench extends ItemTR implements IToolHandler { if (!world.isRemote && !PermissionAPI.hasPermission(player.getGameProfile(), RebornPermissions.WRENCH_BLOCK, new BlockPosContext(player, pos, world.getBlockState(pos), facing))) { return EnumActionResult.PASS; } - if (CompatManager.isIC2Loaded) { - EnumActionResult result = IC2WrenchHelper.onItemUse(player.getHeldItem(hand), player, world, pos, hand, facing, hitX, hitY, hitZ); - if (result == EnumActionResult.SUCCESS) { - return result; - } - } return EnumActionResult.PASS; } diff --git a/src/main/java/techreborn/lib/ModInfo.java b/src/main/java/techreborn/lib/ModInfo.java index a0f36b21d..abe6c7f79 100644 --- a/src/main/java/techreborn/lib/ModInfo.java +++ b/src/main/java/techreborn/lib/ModInfo.java @@ -30,7 +30,7 @@ public class ModInfo implements IModInfo { public static final String MOD_NAME = "Tech Reborn"; public static final String MOD_ID = "techreborn"; public static final String MOD_VERSION = "@MODVERSION@"; - public static final String MOD_DEPENDENCIES = "required-after:forge@[14.23.3.2694,);required-after:reborncore;after:jei@[4.7,);after:ic2"; + public static final String MOD_DEPENDENCIES = "required-after:forge@[14.23.3.2694,);required-after:reborncore;after:jei@[4.7,)"; public static final String SERVER_PROXY_CLASS = "techreborn.proxies.CommonProxy"; public static final String CLIENT_PROXY_CLASS = "techreborn.proxies.ClientProxy"; public static final String GUI_FACTORY_CLASS = "techreborn.config.TechRebornGUIFactory"; diff --git a/src/main/java/techreborn/proxies/CommonProxy.java b/src/main/java/techreborn/proxies/CommonProxy.java index 4b8b1d95a..cd0634022 100644 --- a/src/main/java/techreborn/proxies/CommonProxy.java +++ b/src/main/java/techreborn/proxies/CommonProxy.java @@ -29,29 +29,24 @@ import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import techreborn.Core; -import techreborn.compat.ICompatModule; -public class CommonProxy implements ICompatModule { +public class CommonProxy { public static boolean isChiselAround; - @Override public void preInit(FMLPreInitializationEvent event) { if (isChiselAround) { Core.logHelper.info("Hello chisel, shiny things will be enabled in techreborn"); } } - @Override public void init(FMLInitializationEvent event) { } - @Override public void postInit(FMLPostInitializationEvent event) { } - @Override public void serverStarting(FMLServerStartingEvent event) { } diff --git a/src/main/java/techreborn/tiles/TileChargeOMat.java b/src/main/java/techreborn/tiles/TileChargeOMat.java index d09c0a08e..0330cab5a 100644 --- a/src/main/java/techreborn/tiles/TileChargeOMat.java +++ b/src/main/java/techreborn/tiles/TileChargeOMat.java @@ -39,10 +39,8 @@ import reborncore.common.util.Inventory; import techreborn.client.container.IContainerProvider; import techreborn.client.container.builder.BuiltContainer; import techreborn.client.container.builder.ContainerBuilder; -import techreborn.compat.CompatManager; import techreborn.init.ModBlocks; import techreborn.lib.ModInfo; -import techreborn.utils.IC2ItemCharger; @RebornRegistry(modID = ModInfo.MOD_ID) public class TileChargeOMat extends TilePowerAcceptor @@ -77,8 +75,6 @@ public class TileChargeOMat extends TilePowerAcceptor if (getEnergy() >= 0.0 && maxReceive > 0) { powerItem.receiveEnergy((int) useEnergy(maxUse) * RebornCoreConfig.euPerFU, false); } - } else if (CompatManager.isIC2Loaded) { - IC2ItemCharger.chargeIc2Item(this, stack); } } } diff --git a/src/main/java/techreborn/tiles/TileMatterFabricator.java b/src/main/java/techreborn/tiles/TileMatterFabricator.java index 879a1807a..9544f052a 100644 --- a/src/main/java/techreborn/tiles/TileMatterFabricator.java +++ b/src/main/java/techreborn/tiles/TileMatterFabricator.java @@ -37,7 +37,6 @@ import reborncore.common.util.ItemUtils; import techreborn.client.container.IContainerProvider; import techreborn.client.container.builder.BuiltContainer; import techreborn.client.container.builder.ContainerBuilder; -import techreborn.init.IC2Duplicates; import techreborn.init.ModBlocks; import techreborn.init.ModItems; import techreborn.items.ItemParts; @@ -117,11 +116,6 @@ public class TileMatterFabricator extends TilePowerAcceptor } else if (itemStack.getItem() == ModItems.SCRAP_BOX) { return 2000; } - if (IC2Duplicates.SCRAP.hasIC2Stack()) { - if (ItemUtils.isInputEqual(itemStack, IC2Duplicates.SCRAP.getIc2Stack(), true, true, true)) { - return 200; - } - } return 0; } diff --git a/src/main/java/techreborn/tiles/generator/TileCreativeSolarPanel.java b/src/main/java/techreborn/tiles/generator/TileCreativeSolarPanel.java index a422e51ac..b8e913c56 100644 --- a/src/main/java/techreborn/tiles/generator/TileCreativeSolarPanel.java +++ b/src/main/java/techreborn/tiles/generator/TileCreativeSolarPanel.java @@ -91,13 +91,6 @@ public class TileCreativeSolarPanel extends TilePowerAcceptor implements IToolDr return new ItemStack(ModBlocks.SOLAR_PANEL); } - //Done to prevent ic2 from exploding the adjacent blocks - @Override - @Optional.Method(modid = "ic2") - public int getSourceTier() { - return 0; - } - @Override public boolean handleTierWithPower() { return false; diff --git a/src/main/java/techreborn/tiles/storage/TileEnergyStorage.java b/src/main/java/techreborn/tiles/storage/TileEnergyStorage.java index ef3b91047..de4b55aab 100644 --- a/src/main/java/techreborn/tiles/storage/TileEnergyStorage.java +++ b/src/main/java/techreborn/tiles/storage/TileEnergyStorage.java @@ -37,8 +37,6 @@ import reborncore.common.RebornCoreConfig; import reborncore.common.powerSystem.TilePowerAcceptor; import reborncore.common.util.Inventory; import techreborn.blocks.storage.BlockEnergyStorage; -import techreborn.compat.CompatManager; -import techreborn.utils.IC2ItemCharger; /** * Created by Rushmead @@ -78,8 +76,6 @@ public class TileEnergyStorage extends TilePowerAcceptor if (getEnergy() >= 0.0 && maxReceive > 0) { powerItem.receiveEnergy((int) useEnergy(maxUse) * RebornCoreConfig.euPerFU, false); } - } else if (CompatManager.isIC2Loaded) { - IC2ItemCharger.chargeIc2Item(this, stack); } } if (!inventory.getStackInSlot(1).isEmpty()) { diff --git a/src/main/java/techreborn/utils/IC2ItemCharger.java b/src/main/java/techreborn/utils/IC2ItemCharger.java deleted file mode 100644 index f926d47bc..000000000 --- a/src/main/java/techreborn/utils/IC2ItemCharger.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * This file is part of TechReborn, licensed under the MIT License (MIT). - * - * Copyright (c) 2018 TechReborn - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package techreborn.utils; - -import ic2.api.item.ElectricItem; -import ic2.api.item.IElectricItem; -import net.minecraft.item.ItemStack; -import reborncore.common.powerSystem.TilePowerAcceptor; - -public class IC2ItemCharger { - - public static void chargeIc2Item(TilePowerAcceptor tilePowerAcceptor, ItemStack stack){ - if(stack.isEmpty()){ - return; - } - if(stack.getItem() instanceof IElectricItem){ - tilePowerAcceptor.useEnergy(ElectricItem.manager.charge(stack, tilePowerAcceptor.getEnergy(), 4, false, false)); - } - } - - public static void dischargeIc2Item(TilePowerAcceptor tilePowerAcceptor, ItemStack stack){ - if(stack.isEmpty()){ - return; - } - if(stack.getItem() instanceof IElectricItem){ - tilePowerAcceptor.addEnergy(ElectricItem.manager.discharge(stack, tilePowerAcceptor.getFreeSpace(), 4, false, true, false)); - } - } - - public static boolean isIC2PoweredItem(ItemStack stack){ - if(stack.isEmpty()){ - return false; - } - return stack.getItem() instanceof IElectricItem; - } - -} diff --git a/src/main/java/techreborn/utils/IC2WrenchHelper.java b/src/main/java/techreborn/utils/IC2WrenchHelper.java deleted file mode 100644 index 203bbfdeb..000000000 --- a/src/main/java/techreborn/utils/IC2WrenchHelper.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * This file is part of TechReborn, licensed under the MIT License (MIT). - * - * Copyright (c) 2018 TechReborn - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package techreborn.utils; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumActionResult; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; - -//import ic2.core.item.tool.ItemToolWrench; - -//TODO IC2 -public class IC2WrenchHelper { - - //static ItemToolWrench wrench; - - public static EnumActionResult onItemUseFirst(ItemStack stack, EntityPlayer player, World world, BlockPos pos, - EnumFacing side, float hitX, float hitY, float hitZ, EnumHand hand) { - // if (wrench == null) { - // wrench = (ItemToolWrench) IC2Items.getItem("wrench").getItem(); - // } - // return wrench.onItemUseFirst(stack, player, world, pos, side, hitX, hitY, hitZ, hand); - return EnumActionResult.FAIL; - } - - public static EnumActionResult onItemUse(ItemStack stack, EntityPlayer playerIn, World worldIn, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - // if (wrench == null) { - // wrench = (ItemToolWrench) IC2Items.getItem("wrench").getItem(); - // } - // return wrench.onItemUse(stack, playerIn, worldIn, pos, hand, facing, hitX, hitY, hitZ); - return EnumActionResult.FAIL; - } -}