diff --git a/.editorconfig b/.editorconfig index 171fa743..6c360ac4 100644 --- a/.editorconfig +++ b/.editorconfig @@ -15,6 +15,10 @@ insert_final_newline = true indent_style = space indent_size = 2 +# Matches multiple files with brace expansion notation +[*.{groovy}] +indent_size = 4 + # Override default charset for XML and CFG files [*.{json,cfg,xml}] insert_final_newline = false diff --git a/CHANGELOG_v2.md b/CHANGELOG_v2.md index 973d4de8..e3253ba7 100644 --- a/CHANGELOG_v2.md +++ b/CHANGELOG_v2.md @@ -2,6 +2,7 @@ ## Move mods - Baubles-LTS (1.0.6.0) -> BubblesEX (1.6.5) - Bring Me The Rings! (0.4) -> BubblesEX (1.6.5) +- CraftTweaker (4.1.20.700) -> GroovyScript (1.4.3) ## Delete mods - AE2 Wireless Terminal-LTS @@ -10,6 +11,8 @@ - AE2 Wireless Interface Terminal - AE2 Wireless Pattern Terminal - p455w0rd's AE2 Wireless Terminals Patch +- MTLib +- ModTweaker ## Update mods - AE2FluidCraft-Rework-Unofficial (2.7.9 -> 2.7.10) @@ -22,7 +25,7 @@ - Forgelin-Continuous (2.3.10.1 -> 2.3.20.0) - GTConsolidate (1.1.3.5 -> 1.1.4.2) - GTExpertCore (2.7.4 -> 2.7.8) -- GTMoreTools (1.1.2 -> 1.3.3) +- GTMoreTools (1.1.2 -> 1.4.0) - HadEnoughItems (4.27.1 -> 4.30.3) - Hot or Not GTCEu (1.3.0 -> 1.4.0) - Inventory Bogo Sorter (1.6.2 -> 1.6.4) diff --git a/manifest.json b/manifest.json index 1c8c6a6e..65c1e031 100644 --- a/manifest.json +++ b/manifest.json @@ -210,8 +210,8 @@ "required": true }, { - "projectID": 239197, - "fileID": 5486112, + "projectID": 687577, + "fileID": 7925117, "required": true }, { @@ -294,11 +294,6 @@ "fileID": 2745545, "required": true }, - { - "projectID": 253211, - "fileID": 3308160, - "required": true - }, { "projectID": 245425, "fileID": 2530747, @@ -329,11 +324,6 @@ "fileID": 3157548, "required": true }, - { - "projectID": 220954, - "fileID": 3840577, - "required": true - }, { "projectID": 322344, "fileID": 6790812, @@ -691,7 +681,7 @@ }, { "projectID": 1458022, - "fileID": 8091637, + "fileID": 8247574, "required": true }, { diff --git a/modlist.html b/modlist.html index 0291f74c..e2aafc28 100644 --- a/modlist.html +++ b/modlist.html @@ -38,7 +38,7 @@
  • GregTech Food Option (by bruberu)
  • GregTech CE: Unofficial (by dandannoodlesman)
  • ConnectedTexturesMod (by tterrag1098)
  • -
  • CraftTweaker (by Jaredlll08)
  • +
  • GroovyScript (by CleanroomMC)
  • dan's Crafting Tweaks (by cleanroommc)
  • ArchitectureCraft - TridentMC Version (by darkevilmac)
  • Custom Main Menu (by Lumien231)
  • @@ -55,14 +55,12 @@
  • Ender IO OC Conduits (by HenryLoenwind)
  • Better Questing Unofficial (by CleanroomMC)
  • Project Red - Core (by MrTJP)
  • -
  • MTLib (by Jaredlll08)
  • EZStorage 2 (by zer0fall)
  • PackagedAuto (by TheLMiffy1111)
  • TopAllDependents (by xuanyu)
  • LemonSkin (by myxazaur)
  • Framed Compacting Drawers (by Eutropium)
  • FTB Utilities (Forge) (by FTB)
  • -
  • ModTweaker (by Jaredlll08)
  • LibNine (by phantamanta44)
  • Lazy AE2 (by phantamanta44)
  • Dynamistics (by Eutropium)
  • diff --git a/overrides/config/gtmt/modules.cfg b/overrides/config/gtmt/modules.cfg index cf6923f3..f08cce34 100644 --- a/overrides/config/gtmt/modules.cfg +++ b/overrides/config/gtmt/modules.cfg @@ -17,6 +17,11 @@ modules { # Mod Dependencies: [ chisel ] B:"gtmt:chisel_integration"=true + # JEI Integration Module + # Module Dependencies: [ gtmt:integration ] + # Mod Dependencies: [ jei ] + B:"gtmt:jei_integration"=true + # Core of GTMTMod B:"gtmt:core"=true @@ -28,6 +33,10 @@ modules { # Module Dependencies: [ gtmt:integration ] # Mod Dependencies: [ storagedrawers ] B:"gtmt:storage_drawers_integration"=true + + # GTMoreTools Tools Module + # Module Dependencies: [ gtmt:core ] + B:"gtmt:tools"=true } diff --git a/overrides/config/gtmt/tools.cfg b/overrides/config/gtmt/tools.cfg new file mode 100644 index 00000000..73c39466 --- /dev/null +++ b/overrides/config/gtmt/tools.cfg @@ -0,0 +1,48 @@ +# Configuration file + +general { + # Enable tool restrictions and JEI item hiding. + # default: false + B:enable=true + + # Items to apply restrictions to. + # Format: modid:item_name@meta, maxDamage, hideFromJEI + # maxDamage 0 = no restriction; positive = set max durability to this value + # hideFromJEI true = hide from JEI and remove crafting recipes + # Example: minecraft:wooden_sword, 0, false + # Example: appliedenergistics2:certus_quartz_sword, 0, false + S:items < + minecraft:wooden_sword, 0, false + minecraft:wooden_shovel, 1, false + minecraft:wooden_pickaxe, 1, false + minecraft:wooden_axe, 1, false + minecraft:stone_sword, 0, false + minecraft:stone_shovel, 1, false + minecraft:stone_pickaxe, 1, false + minecraft:stone_axe, 1, false + minecraft:iron_sword, 0, false + minecraft:iron_shovel, 1, false + minecraft:iron_pickaxe, 1, false + minecraft:iron_axe, 1, false + minecraft:golden_sword, 0, false + minecraft:golden_shovel, 1, false + minecraft:golden_pickaxe, 1, false + minecraft:golden_axe, 1, false + minecraft:diamond_sword, 0, false + minecraft:diamond_shovel, 1, false + minecraft:diamond_pickaxe, 1, false + minecraft:diamond_axe, 1, false + appliedenergistics2:certus_quartz_sword, 0, true + appliedenergistics2:certus_quartz_spade, 0, true + appliedenergistics2:certus_quartz_pickaxe, 0, true + appliedenergistics2:certus_quartz_axe, 0, true + appliedenergistics2:nether_quartz_sword, 0, true + appliedenergistics2:nether_quartz_spade, 0, true + appliedenergistics2:nether_quartz_pickaxe, 0, true + appliedenergistics2:nether_quartz_axe, 0, true + architecturecraft:sawblade, 0, true + architecturecraft:largepulley, 0, true + > +} + + diff --git a/overrides/groovy/.groovylintrc.json b/overrides/groovy/.groovylintrc.json new file mode 100644 index 00000000..6c1475a4 --- /dev/null +++ b/overrides/groovy/.groovylintrc.json @@ -0,0 +1,35 @@ +{ + "extends": "all", + "rules": { + "braces.ElseBlockBraces": "off", + "braces.IfStatementBraces": "off", + "convention.CompileStatic": "off", + "convention.NoDef": "off", + "convention.ImplicitReturnStatement": "warn", + "convention.VariableTypeRequired": "off", + "design.BuilderMethodWithSideEffects": "off", + "design.Instanceof": "off", + "design.NestedForLoop": "off", + "dry.DuplicateListLiteral": "off", + "dry.DuplicateNumberLiteral": "off", + "dry.DuplicateStringLiteral": "off", + "formatting.BlankLineBeforePackage": "off", + "formatting.Indentation": { + "spacesPerIndentLevel": 4, + "severity": "error" + }, + "formatting.SpaceAroundMapEntryColon": { + "characterBeforeColonRegex": "\\s", + "characterAfterColonRegex": "\\s" + }, + "groovyism.UseCollectMany": "off", + "imports.NoWildcardImports": "off", + "logging.Println": "warning", + "naming.ClassNameSameAsFilename": "off", + "naming.FactoryMethodName": "off", + "naming.PackageNameMatchesFilePath": { + "groupId": "post" + }, + "unnecessary.UnnecessaryReturnKeyword": "off" + } +} \ No newline at end of file diff --git a/overrides/groovy/assets/gte2/lang/en_us.lang b/overrides/groovy/assets/gte2/lang/en_us.lang new file mode 100644 index 00000000..e69de29b diff --git a/overrides/groovy/postInit/globals.groovy b/overrides/groovy/postInit/globals.groovy new file mode 100644 index 00000000..b93892f2 --- /dev/null +++ b/overrides/groovy/postInit/globals.groovy @@ -0,0 +1,74 @@ +import gregtech.integration.groovy.GroovyScriptModule +import net.minecraftforge.fml.common.Loader + +mi = { String name, int count = 1 -> + def stack = GroovyScriptModule.getMetaItem(name) + if (stack == null) { + log.warn("MetaItem not found: ${name}") + return null + } + stack.setCount(count) + return stack +} + +//////////////////////////////////////// +// Applied Energistics 2 +//////////////////////////////////////// +// Extended Crafting Terminal +mods.minecraft.ore_dict.add('craftExtendedTerminal', item('appliedenergistics2:part', 341)) +mods.minecraft.ore_dict.add('craftExtendedTerminal', item('ae2fc:part_fluid_pattern_ex_terminal')) + +// Fluid Assembler +mods.minecraft.ore_dict.add('craftAssemblerFluid', item('ae2fc:fluid_assembler')) +mods.minecraft.ore_dict.add('craftAssemblerFluid', item('aeadditions:fluidcrafter')) + + +//////////////////////////////////////// +// Minecraft +//////////////////////////////////////// +// Grass +mods.minecraft.ore_dict.add('grass', item('minecraft:double_plant', 2)) +mods.minecraft.ore_dict.add('grass', item('minecraft:double_plant', 3)) +mods.minecraft.ore_dict.add('grass', item('minecraft:tallgrass', 32767)) + +// Colors +colors = [ + 'white', 'orange', 'magenta', 'light_blue', 'yellow', 'lime', + 'pink', 'gray', 'silver', 'cyan', 'purple', 'blue', + 'brown', 'green', 'red', 'black' +] +colorLiquid = [ + fluid('dye_white'), fluid('dye_orange'), fluid('dye_magenta'), + fluid('dye_light_blue'), fluid('dye_yellow'), fluid('dye_lime'), + fluid('dye_pink'), fluid('dye_gray'), fluid('dye_light_gray'), + fluid('dye_cyan'), fluid('dye_purple'), fluid('dye_blue'), + fluid('dye_brown'), fluid('dye_green'), fluid('dye_red'), + fluid('dye_black') +] + + +//////////////////////////////////////// +// Other +//////////////////////////////////////// +// Wrench +mods.minecraft.ore_dict.add('wrench', item('appliedenergistics2:certus_quartz_wrench')) +mods.minecraft.ore_dict.add('wrench', item('appliedenergistics2:nether_quartz_wrench')) +mods.minecraft.ore_dict.add('wrench', item('enderio:item_yeta_wrench')) + +// Wools +mods.minecraft.ore_dict.add('wool', item('chisel:wool_black', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_red', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_green', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_brown', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_blue', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_purple', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_cyan', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_lightgray', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_gray', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_pink', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_lime', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_yellow', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_lightblue', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_magenta', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_orange', 32767)) +mods.minecraft.ore_dict.add('wool', item('chisel:wool_white', 32767)) diff --git a/overrides/groovy/postInit/normal/AE2FluidCraftingRework.groovy b/overrides/groovy/postInit/normal/AE2FluidCraftingRework.groovy new file mode 100644 index 00000000..a978a94f --- /dev/null +++ b/overrides/groovy/postInit/normal/AE2FluidCraftingRework.groovy @@ -0,0 +1,179 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Fluid Pattern Encoder +mods.minecraft.crafting.removeByOutput(item('ae2fc:fluid_pattern_encoder')) +mods.jei.ingredient.hide(item('ae2fc:fluid_pattern_encoder')) + +// Ingredient Buffer +mods.minecraft.crafting.removeByOutput(item('ae2fc:ingredient_buffer')) +mods.jei.ingredient.hide(item('ae2fc:ingredient_buffer')) + +// Large Ingredient Buffer +mods.minecraft.crafting.removeByOutput(item('ae2fc:large_ingredient_buffer')) +mods.jei.ingredient.hide(item('ae2fc:large_ingredient_buffer')) + +// ME Fluid Assembler +mods.minecraft.crafting.removeByOutput(item('ae2fc:fluid_assembler')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('ae2fc:fluid_assembler')) + .input(item('aeadditions:fluidcrafter')) + .register() +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + mi('plateGlass', 2), + ore('circuitHv') * 2, + mi('electric.pump.hv', 2), + mi('fluid.regulator.hv', 2), + mi('plateSteel', 4) + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('ae2fc:fluid_assembler')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Fluid Packet Decoder +mods.minecraft.crafting.removeByOutput(item('ae2fc:fluid_packet_decoder')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:fluid_packet_decoder')) + .shape([ + [mi('plateStainlessSteel'), mi('electric.piston.hv'), mi('plateStainlessSteel')], + [ore('craftGlassCable'), ore('craftInterfaceFluid'), ore('craftGlassCable')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 23), mi('plateStainlessSteel')] + ]) + .register() + +// Precision Burette +mods.minecraft.crafting.removeByOutput(item('ae2fc:burette')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:burette')) + .shape([ + [mi('plateStainlessSteel'), mi('electric.piston.hv'), mi('plateStainlessSteel')], + [item('appliedenergistics2:quartz_glass'), item('minecraft:bucket'), item('appliedenergistics2:quartz_glass')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 23), mi('plateStainlessSteel')] + ]) + .register() + +// Fluid Discretizer +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:fluid_discretizer')) + .shape([ + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 24), mi('plateStainlessSteel')], + [item('appliedenergistics2:part', 220), item('appliedenergistics2:condenser'), item('appliedenergistics2:part', 221)], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 24), mi('plateStainlessSteel')] + ]) + .register() + +// ME Dual Interface +mods.minecraft.crafting.remove(resource('ae2fc:dual_interface')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:dual_interface')) + .shape([ + [mi('plateTitanium'), mi('plateGlass'), mi('plateTitanium')], + [item('gtexpert:meta_item_1', 1), item('gregtech:machine_casing', 3), item('gtexpert:meta_item_1', 1)], + [mi('plateTitanium'), mi('plateGlass'), mi('plateTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + item('gregtech:machine_casing', 3), + item('gtexpert:meta_item_1', 1), + mi('plateGlass'), + mi('plateTitanium', 2) + ) + .outputs(item('ae2fc:dual_interface')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Fluid Pattern Terminal +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:part_fluid_pattern_terminal')) + .shape([ + [ore('craftingToolScrewdriver'), item('appliedenergistics2:part', 380), ore('craftingToolSoftHammer')], + [mi('screwStainlessSteel'), item('appliedenergistics2:material', 52), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 23), mi('plateStainlessSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:part_fluid_pattern_terminal')) + .shape([ + [ore('craftingToolSoftHammer'), item('appliedenergistics2:part', 380), ore('craftingToolScrewdriver')], + [mi('screwStainlessSteel'), item('appliedenergistics2:material', 52), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 23), mi('plateStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + item('appliedenergistics2:part', 380), + item('appliedenergistics2:material', 52), + mi('screwStainlessSteel'), + mi('plateStainlessSteel') + ) + .outputs(item('ae2fc:part_fluid_pattern_terminal')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Extended Processing Fluid Pattern Terminal +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:part_fluid_pattern_ex_terminal')) + .shape([ + [ore('craftingToolScrewdriver'), item('ae2fc:part_fluid_pattern_terminal'), ore('craftingToolSoftHammer')], + [mi('screwStainlessSteel'), item('appliedenergistics2:material', 52), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 24), mi('plateStainlessSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:part_fluid_pattern_ex_terminal')) + .shape([ + [ore('craftingToolSoftHammer'), item('ae2fc:part_fluid_pattern_terminal'), ore('craftingToolScrewdriver')], + [mi('screwStainlessSteel'), item('appliedenergistics2:material', 52), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 24), mi('plateStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + item('ae2fc:part_fluid_pattern_terminal'), + item('appliedenergistics2:material', 52), + mi('screwStainlessSteel'), + mi('plateStainlessSteel') + ) + .outputs(item('ae2fc:part_fluid_pattern_ex_terminal')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Fluid Level Maintainer +mods.minecraft.crafting.removeByOutput(item('ae2fc:fluid_level_maintainer')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:fluid_level_maintainer')) + .shape([ + [mi('plateFluixAlloy'), item('appliedenergistics2:part', 281), mi('plateFluixAlloy')], + [item('appliedenergistics2:material', 22), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 22)], + [mi('plateFluixAlloy'), item('appliedenergistics2:material', 53), mi('plateFluixAlloy')] + ]) + .register() + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Wireless Fluid Interface Terminal +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2fc:wireless_fluid_pattern_terminal')) + .shape([ + [item('appliedenergistics2:material', 41), item('ae2fc:part_fluid_pattern_terminal'), item('appliedenergistics2:material', 41)], + [item('appliedenergistics2:material', 24), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 24)], + [mi('plateNetherQuartz'), item('appliedenergistics2:dense_energy_cell'), mi('plateNetherQuartz')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/AE2Sutff.groovy b/overrides/groovy/postInit/normal/AE2Sutff.groovy new file mode 100644 index 00000000..1c5a561c --- /dev/null +++ b/overrides/groovy/postInit/normal/AE2Sutff.groovy @@ -0,0 +1,121 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") +def chemical_bath = RecipeMap.getByName("chemical_bath") + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Crystal Growth Chamber +mods.jei.ingredient.hide(item('ae2stuff:grower')) + +// Advanced Inscriber +mods.jei.ingredient.hide(item('ae2stuff:inscriber')) + +// Wireless Connector +def connectors = [ + item('ae2stuff:wireless', 1), + item('ae2stuff:wireless', 2), + item('ae2stuff:wireless', 3), + item('ae2stuff:wireless', 4), + item('ae2stuff:wireless', 5), + item('ae2stuff:wireless', 6), + item('ae2stuff:wireless', 7), + item('ae2stuff:wireless', 8), + item('ae2stuff:wireless', 9), + item('ae2stuff:wireless', 10), + item('ae2stuff:wireless', 11), + item('ae2stuff:wireless', 12), + item('ae2stuff:wireless', 13), + item('ae2stuff:wireless', 14), + item('ae2stuff:wireless', 15), + item('ae2stuff:wireless', 16) +] +connectors.each { connector -> + mods.minecraft.crafting.removeByOutput(connector) + mods.minecraft.ore_dict.add('ae2stuffConnectors', connector) +} +mods.minecraft.ore_dict.add('ae2stuffConnectors', item('ae2stuff:wireless', 0)) +mods.minecraft.crafting.remove(resource('ae2stuff:recipe1')) +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('appliedenergistics2:material', 24) * 4, + item('gtexpert:meta_item_1', 1) * 2, + item('appliedenergistics2:material', 41), + item('gregtech:machine_casing', 4) + ) + .fluidInputs(fluid('fluix_alloy') * 1152) + .outputs(item('ae2stuff:wireless', 0)) + .duration(20) + .EUt(1920) + .buildAndRegister() +connectors.eachWithIndex { connector, i -> + chemical_bath.recipeBuilder() + .inputs(ore('ae2stuffConnectors')) + .fluidInputs(colorLiquid[i] * 18) + .outputs(connector) + .duration(20) + .EUt(7) + .buildAndRegister() +} + +// Wireless Connector Hub +def hubs = [ + item('ae2stuff:wireless_hub', 1), + item('ae2stuff:wireless_hub', 2), + item('ae2stuff:wireless_hub', 3), + item('ae2stuff:wireless_hub', 4), + item('ae2stuff:wireless_hub', 5), + item('ae2stuff:wireless_hub', 6), + item('ae2stuff:wireless_hub', 7), + item('ae2stuff:wireless_hub', 8), + item('ae2stuff:wireless_hub', 9), + item('ae2stuff:wireless_hub', 10), + item('ae2stuff:wireless_hub', 11), + item('ae2stuff:wireless_hub', 12), + item('ae2stuff:wireless_hub', 13), + item('ae2stuff:wireless_hub', 14), + item('ae2stuff:wireless_hub', 15), + item('ae2stuff:wireless_hub', 16) +] +hubs.each { hub -> + mods.minecraft.crafting.removeByOutput(hub) + mods.minecraft.ore_dict.add('ae2stuffConnectorHubs', hub) +} +mods.minecraft.ore_dict.add('ae2stuffConnectorHubs', item('ae2stuff:wireless_hub', 0)) +mods.minecraft.crafting.remove(resource('ae2stuff:recipe2')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + ore('ae2stuffConnectors') * 8, + mi('sensor.luv') + ) + .outputs(item('ae2stuff:wireless_hub', 0)) + .duration(20) + .EUt(7680) + .buildAndRegister() +hubs.eachWithIndex { hub, i -> + chemical_bath.recipeBuilder() + .inputs(ore('ae2stuffConnectorHubs')) + .fluidInputs(colorLiquid[i] * 18) + .outputs(hub) + .duration(20) + .EUt(7) + .buildAndRegister() +} + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Network Visualisation Tool +mods.minecraft.crafting.removeByOutput(item('ae2stuff:visualiser')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ae2stuff:visualiser')) + .shape([ + [mi('plateAluminium'), item('appliedenergistics2:material', 43), mi('plateAluminium')], + [item('appliedenergistics2:network_tool'), mi('wireless'), item('appliedenergistics2:entropy_manipulator')], + [mi('plateAluminium'), item('appliedenergistics2:material', 44), mi('plateAluminium')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/AEAdditions.groovy b/overrides/groovy/postInit/normal/AEAdditions.groovy new file mode 100644 index 00000000..1a4a32c4 --- /dev/null +++ b/overrides/groovy/postInit/normal/AEAdditions.groovy @@ -0,0 +1,336 @@ +import net.minecraftforge.fml.common.Loader +import gregtech.api.recipes.RecipeMap +import net.minecraftforge.fml.common.registry.ForgeRegistries +import net.minecraft.item.ItemStack + +def assembler = RecipeMap.getByName("assembler") + +if (Loader.isModLoaded('aeadditions')) { + ForgeRegistries.ITEMS.valuesCollection + .findAll { it.registryName?.namespace == 'aeadditions' } + .each { regItem -> + def stack = new ItemStack(regItem, 1, 0) + if (stack.displayName.contains('ME Fluid Pattern')) { + mods.jei.ingredient.hide(stack) + } + } +} + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Fluid Pattern +mods.minecraft.crafting.removeByOutput(item('aeadditions:pattern.fluid')) +mods.minecraft.crafting.shapedBuilder() + .output(item('aeadditions:pattern.fluid')) + .shape([ + [mi('screwStainlessSteel'), mi('plateStainlessSteel'), ore('craftingToolHardHammer')], + [mi('plateStainlessSteel'), item('appliedenergistics2:quartz_glass'), mi('plateStainlessSteel')], + [ore('craftingToolScrewdriver'), mi('plateStainlessSteel'), mi('screwStainlessSteel')] + ]) + .register() + +// Wireless Universal Terminal +mods.jei.ingredient.hide(item('aeadditions:terminal.universal.wireless')) + +// Wireless Fluid Terminal +mods.minecraft.crafting.removeByOutput(item('aeadditions:terminal.fluid.wireless')) +mods.jei.ingredient.hide(item('aeadditions:terminal.fluid.wireless')) + +// 256k Storage Component +mods.minecraft.crafting.removeByOutput(item('aeadditions:storage.component')) +assembler.recipeBuilder() + .inputs( + ore('circuitZpm') * 4, + mi('plateNaquadahAlloy', 4), + mi('dustCertusQuartz', 16), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component')) + .duration(200) + .EUt(122880) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitZpm') * 4, + item('appliedenergistics2:material', 38) * 4 + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component')) + .duration(400) + .EUt(122880) + .buildAndRegister() + +// 1024k Storage Component +mods.minecraft.crafting.removeByOutput(item('aeadditions:storage.component', 1)) +assembler.recipeBuilder() + .inputs( + ore('circuitZpm') * 4, + mi('plateAmericium', 4), + mi('dustCertusQuartz', 16), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component', 1)) + .duration(200) + .EUt(122880) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitZpm') * 4, + item('aeadditions:storage.component') * 4 + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component', 1)) + .duration(400) + .EUt(122880) + .buildAndRegister() + +// 4096k Storage Component +mods.minecraft.crafting.removeByOutput(item('aeadditions:storage.component', 2)) +assembler.recipeBuilder() + .inputs( + ore('circuitUv') * 4, + mi('plateDarmstadtium', 4), + mi('dustCertusQuartz', 32), + item('appliedenergistics2:material', 23) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component', 2)) + .duration(200) + .EUt(491520) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + ore('circuitUv') * 4, + item('aeadditions:storage.component', 1) * 4 + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component', 2)) + .duration(400) + .EUt(491520) + .buildAndRegister() + +// 16384k Storage Component +mods.minecraft.crafting.removeByOutput(item('aeadditions:storage.component', 3)) +assembler.recipeBuilder() + .inputs( + ore('circuitUv') * 4, + mi('plateNeutronium', 4), + mi('dustCertusQuartz', 32), + item('appliedenergistics2:material', 23) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component', 3)) + .duration(200) + .EUt(491520) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + ore('circuitUv') * 4, + item('aeadditions:storage.component', 2) * 4 + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('aeadditions:storage.component', 3)) + .duration(400) + .EUt(491520) + .buildAndRegister() + +// 256k Fluid Component +mods.minecraft.crafting.removeByOutput(item('aeadditions:storage.component', 4)) +assembler.recipeBuilder() + .inputs( + ore('circuitZpm') * 4, + mi('plateNaquadahAlloy', 4), + mi('dustNetherQuartz', 16), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('aeadditions:storage.component', 4)) + .duration(200) + .EUt(122880) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitZpm') * 4, + item('appliedenergistics2:material', 57) * 4 + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('aeadditions:storage.component', 4)) + .duration(400) + .EUt(122880) + .buildAndRegister() + +// 1024k Fluid Component +mods.minecraft.crafting.removeByOutput(item('aeadditions:storage.component', 5)) +assembler.recipeBuilder() + .inputs( + ore('circuitZpm') * 4, + mi('plateAmericium', 4), + mi('dustNetherQuartz', 16), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('aeadditions:storage.component', 5)) + .duration(200) + .EUt(122880) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitZpm') * 4, + item('aeadditions:storage.component', 4) * 4 + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('aeadditions:storage.component', 5)) + .duration(400) + .EUt(122880) + .buildAndRegister() + +// 4096k Fluid Component +mods.minecraft.crafting.removeByOutput(item('aeadditions:storage.component', 6)) +assembler.recipeBuilder() + .inputs( + ore('circuitUv') * 4, + mi('plateDarmstadtium', 4), + mi('dustNetherQuartz', 32), + item('appliedenergistics2:material', 23) + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('aeadditions:storage.component', 6)) + .duration(200) + .EUt(491520) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + ore('circuitUv') * 4, + item('aeadditions:storage.component', 5) * 4 + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('aeadditions:storage.component', 6)) + .duration(400) + .EUt(491520) + .buildAndRegister() + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Certus Quartz Tank +mods.minecraft.crafting.removeByOutput(item('aeadditions:certustank')) +mods.jei.ingredient.hide(item('aeadditions:certustank')) + +// Gas Interface +mods.minecraft.crafting.removeByOutput(item('aeadditions:gas_interface')) +mods.jei.ingredient.hide(item('aeadditions:gas_interface')) + +// ME Drive Fixture +mods.minecraft.crafting.shapedBuilder() + .output(item('aeadditions:part.base')) + .shape([ + [ore('craftGlassCable'), item('appliedenergistics2:part', 120), ore('craftGlassCable')], + [item('appliedenergistics2:part', 120), item('appliedenergistics2:drive'), item('appliedenergistics2:part', 120)], + [ore('craftGlassCable'), item('appliedenergistics2:part', 120), ore('craftGlassCable')] + ]) + .register() + +// ME Energy Cell Fixture +mods.minecraft.crafting.removeByOutput(item('aeadditions:part.base', 1)) +mods.minecraft.crafting.shapedBuilder() + .output(item('aeadditions:part.base', 1)) + .shape([ + [ore('craftGlassCable'), item('appliedenergistics2:part', 120), ore('craftGlassCable')], + [item('appliedenergistics2:part', 120), item('appliedenergistics2:energy_cell'), item('appliedenergistics2:part', 120)], + [ore('craftGlassCable'), item('appliedenergistics2:part', 120), ore('craftGlassCable')] + ]) + .register() + +// Fluid Interface +mods.jei.ingredient.hide(item('aeadditions:part.base', 2)) + +// ME Ore Dictionary Export Bus +mods.minecraft.crafting.removeByOutput(item('aeadditions:part.base', 3)) +mods.minecraft.crafting.shapedBuilder() + .output(item('aeadditions:part.base', 3)) + .shape([ + [ore('craftingToolScrewdriver'), mi('plateTitanium'), ore('craftingToolSoftHammer')], + [item('appliedenergistics2:material', 44), mi('ore_dictionary_filter'), item('appliedenergistics2:material', 43)], + [mi('screwTitanium'), mi('robot.arm.hv'), mi('screwTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(4) + .inputs( + item('appliedenergistics2:material', 44), + item('appliedenergistics2:material', 43), + mi('ore_dictionary_filter'), + mi('plateTitanium'), + mi('screwTitanium', 2), + mi('robot.arm.hv') + ) + .outputs(item('aeadditions:part.base', 3)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Fluid Filler +mods.minecraft.crafting.removeByOutput(item('aeadditions:fluidfiller')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('aeadditions:fluidfiller')) + .input(item('appliedenergistics2:part', 520), ore('craftAssemblerFluid')) + .register() + +// ME Fluid Assembler +mods.minecraft.crafting.removeByOutput(item('aeadditions:fluidcrafter')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('aeadditions:fluidcrafter')) + .input(item('ae2fc:fluid_assembler')) + .register() +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('plateGlass', 2), + ore('circuitHv') * 2, + mi('electric.pump.hv', 2), + mi('fluid.regulator.hv', 2), + mi('plateSteel', 4) + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('aeadditions:fluidcrafter')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Fluid Vibration Chamber +mods.minecraft.crafting.removeByOutput(item('aeadditions:vibrantchamberfluid')) +assembler.recipeBuilder() + .inputs( + ore('circuitHv') * 2, + ore('cableGtSingleGold') * 2, + mi('electric.pump.hv', 2), + mi('wireGtDoubleKanthal', 4), + mi('plateStainlessSteel', 7) + ) + .outputs(item('aeadditions:vibrantchamberfluid')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Obsidian ME Drive +mods.minecraft.crafting.removeByOutput(item('aeadditions:hardmedrive')) +mods.minecraft.crafting.shapedBuilder() + .output(item('aeadditions:hardmedrive')) + .shape([ + [item('enderio:block_reinforced_obsidian'), ore('craftDenseCoveredCable'), item('enderio:block_reinforced_obsidian')], + [item('enderio:block_reinforced_obsidian'), item('appliedenergistics2:drive'), item('enderio:block_reinforced_obsidian')], + [item('enderio:block_reinforced_obsidian'), item('minecraft:obsidian'), item('enderio:block_reinforced_obsidian')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/AppliedEnergistics.groovy b/overrides/groovy/postInit/normal/AppliedEnergistics.groovy new file mode 100644 index 00000000..87a48797 --- /dev/null +++ b/overrides/groovy/postInit/normal/AppliedEnergistics.groovy @@ -0,0 +1,1733 @@ +import net.minecraftforge.fml.common.Loader +import gregtech.api.recipes.RecipeMap +import net.minecraftforge.fml.common.registry.ForgeRegistries +import net.minecraft.item.ItemStack + +def assembler = RecipeMap.getByName("assembler") +def alloy_smelter = RecipeMap.getByName("alloy_smelter") +def cutter = RecipeMap.getByName("cutter") + +mods.jei.category.hideCategory('appliedenergistics2.grinder') +mods.jei.category.hideCategory('appliedenergistics2.inscriber') + +if (Loader.isModLoaded('appliedenergistics2')) { + ForgeRegistries.ITEMS.valuesCollection + .findAll { it.registryName?.namespace == 'appliedenergistics2' } + .each { regItem -> + def stack = new ItemStack(regItem, 1, 0) + if (stack.displayName.contains('Cable Facade')) { + mods.jei.ingredient.hide(stack) + } + if (stack.displayName.contains('Paint Ball')) { + mods.minecraft.crafting.removeByOutput(stack) + mods.jei.ingredient.hide(stack) + } + } +} + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Certus Quartz Dust +mods.minecraft.ore_dict.remove('dustCertusQuartz', item('appliedenergistics2:material', 2)) +mods.jei.ingredient.hide(item('appliedenergistics2:material', 2)) + +// Nether Quartz Dust +mods.minecraft.ore_dict.remove('dustNetherQuartz', item('appliedenergistics2:material', 3)) +mods.minecraft.ore_dict.remove('dustQuartz', item('appliedenergistics2:material', 3)) +mods.jei.ingredient.hide(item('appliedenergistics2:material', 3)) + +// Fluix Dust +mods.minecraft.ore_dict.remove('dustFluix', item('appliedenergistics2:material', 8)) +mods.jei.ingredient.hide(item('appliedenergistics2:material', 8)) + +// Ender Dust +mods.minecraft.ore_dict.remove('dustEnder', item('appliedenergistics2:material', 46)) +mods.minecraft.ore_dict.remove('dustEnderPearl', item('appliedenergistics2:material', 46)) +mods.jei.ingredient.hide(item('appliedenergistics2:material', 46)) + +// Iron Dust +mods.minecraft.ore_dict.remove('dustIron', item('appliedenergistics2:material', 49)) +mods.jei.ingredient.hide(item('appliedenergistics2:material', 49)) + +// Gold Dust +mods.minecraft.ore_dict.remove('dustGold', item('appliedenergistics2:material', 51)) +mods.jei.ingredient.hide(item('appliedenergistics2:material', 51)) + +// Wooden Gear +mods.jei.ingredient.hide(item('appliedenergistics2:material', 40)) +mods.minecraft.ore_dict.remove('gearWood', item('appliedenergistics2:material', 40)) + +// Network Tool +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:network_tool')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:network_tool')) + .input(ore('wrench'), item('appliedenergistics2:material', 23), item('minecraft:chest'), ore('itemIlluminatedPanel')) + .register() + +// View Cell +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:view_cell')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:view_cell')) + .shape([ + [mi('plateGlass'), mi('plateRedAlloy'), mi('plateGlass')], + [mi('plateRedAlloy'), ore('crystalCertusQuartz'), mi('plateRedAlloy')], + [mi('plateAluminium'), mi('plateAluminium'), mi('plateAluminium')] + ]) + .register() + +// Blank Pattern +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 52)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 52)) + .shape([ + [item('appliedenergistics2:quartz_glass'), mi('plateGlowstone'), item('appliedenergistics2:quartz_glass')], + [mi('plateGlowstone'), ore('crystalCertusQuartz'), mi('plateGlowstone')], + [mi('plateAluminium'), mi('plateAluminium'), mi('plateAluminium')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 52) * 2) + .shape([ + [item('appliedenergistics2:quartz_glass'), mi('plateGlowstone'), item('appliedenergistics2:quartz_glass')], + [mi('plateGlowstone'), ore('crystalPureCertusQuartz'), mi('plateGlowstone')], + [mi('plateAluminium'), mi('plateAluminium'), mi('plateAluminium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('appliedenergistics2:quartz_glass'), + mi('plateGlowstone', 2), + mi('plateAluminium', 2), + ore('craftCertusQuartz') + ) + .outputs(item('appliedenergistics2:material', 52) * 4) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Creative Storage Cell +mods.jei.ingredient.hide(item('appliedenergistics2:creative_storage_cell')) + +// 1k Storage Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 35)) +assembler.recipeBuilder() + .inputs( + ore('circuitUlv') * 4, + mi('plateWroughtIron', 4), + mi('dustCertusQuartz', 4), + item('appliedenergistics2:material', 22) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('appliedenergistics2:material', 35)) + .duration(200) + .EUt(480) + .buildAndRegister() + +// 4k Storage Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 36)) +assembler.recipeBuilder() + .inputs( + ore('circuitEv') * 4, + mi('plateTitanium', 4), + mi('dustCertusQuartz', 4), + item('appliedenergistics2:material', 22) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('appliedenergistics2:material', 36)) + .duration(200) + .EUt(1920) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 22), + ore('circuitEv') * 4, + item('appliedenergistics2:material', 35) * 4 + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('appliedenergistics2:material', 36)) + .duration(400) + .EUt(1920) + .buildAndRegister() + +// 16k Storage Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 37)) +assembler.recipeBuilder() + .inputs( + ore('circuitIv') * 4, + mi('plateTungstenSteel', 4), + mi('dustCertusQuartz', 8), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('appliedenergistics2:material', 37)) + .duration(200) + .EUt(7680) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitIv') * 4, + item('appliedenergistics2:material', 36) * 4 + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('appliedenergistics2:material', 37)) + .duration(400) + .EUt(7680) + .buildAndRegister() + +// 64k Storage Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 38)) +assembler.recipeBuilder() + .inputs( + ore('circuitLuv') * 4, + mi('plateRhodiumPlatedPalladium', 4), + mi('dustCertusQuartz', 8), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('appliedenergistics2:material', 38)) + .duration(200) + .EUt(30720) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitLuv') * 4, + item('appliedenergistics2:material', 37) * 4 + ) + .fluidInputs(fluid('steel') * 144) + .outputs(item('appliedenergistics2:material', 38)) + .duration(400) + .EUt(30720) + .buildAndRegister() + +// 1k Fluid Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 54)) +assembler.recipeBuilder() + .inputs( + ore('circuitUlv') * 4, + mi('plateWroughtIron', 4), + mi('dustNetherQuartz', 4), + item('appliedenergistics2:material', 22) + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('appliedenergistics2:material', 54)) + .duration(200) + .EUt(480) + .buildAndRegister() + +// 4k Fluid Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 55)) +assembler.recipeBuilder() + .inputs( + ore('circuitEv') * 4, + mi('plateTitanium', 4), + mi('dustNetherQuartz', 4), + item('appliedenergistics2:material', 22) + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('appliedenergistics2:material', 55)) + .duration(200) + .EUt(1920) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 22), + ore('circuitEv') * 4, + item('appliedenergistics2:material', 54) * 4 + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('appliedenergistics2:material', 55)) + .duration(400) + .EUt(1920) + .buildAndRegister() + +// 16k Fluid Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 56)) +assembler.recipeBuilder() + .inputs( + ore('circuitIv') * 4, + mi('plateTungstenSteel', 4), + mi('dustNetherQuartz', 8), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('appliedenergistics2:material', 56)) + .duration(200) + .EUt(7680) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitIv') * 4, + item('appliedenergistics2:material', 55) * 4 + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('appliedenergistics2:material', 56)) + .duration(400) + .EUt(7680) + .buildAndRegister() + +// 64k Fluid Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 57)) +assembler.recipeBuilder() + .inputs( + ore('circuitLuv') * 4, + mi('plateRhodiumPlatedPalladium', 4), + mi('dustNetherQuartz', 8), + item('appliedenergistics2:material', 24) + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('appliedenergistics2:material', 57)) + .duration(200) + .EUt(30720) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + ore('circuitLuv') * 4, + item('appliedenergistics2:material', 56) * 4 + ) + .fluidInputs(fluid('stainless_steel') * 144) + .outputs(item('appliedenergistics2:material', 57)) + .duration(400) + .EUt(30720) + .buildAndRegister() + +// 2^3 Spatial Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 32)) +assembler.recipeBuilder() + .inputs( + ore('circuitEv') * 4, + mi('plateTitanium', 4), + mi('dustCertusQuartz', 32), + item('appliedenergistics2:material', 23) + ) + .fluidInputs(fluid('hsla_steel') * 144) + .outputs(item('appliedenergistics2:material', 32)) + .duration(200) + .EUt(1920) + .buildAndRegister() + +// 16^3 Spatial Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 33)) +assembler.recipeBuilder() + .inputs( + ore('circuitIv') * 4, + mi('plateTungstenSteel', 4), + mi('dustCertusQuartz', 32), + item('appliedenergistics2:material', 23) + ) + .fluidInputs(fluid('tungsten_steel') * 144) + .outputs(item('appliedenergistics2:material', 33)) + .duration(200) + .EUt(7680) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + ore('circuitIv') * 4, + item('appliedenergistics2:material', 32) * 4 + ) + .fluidInputs(fluid('tungsten_steel') * 144) + .outputs(item('appliedenergistics2:material', 33)) + .duration(400) + .EUt(7680) + .buildAndRegister() + +// 128^3 Spatial Component +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 34)) +assembler.recipeBuilder() + .inputs( + ore('circuitLuv') * 4, + mi('plateRhodiumPlatedPalladium', 4), + mi('dustCertusQuartz', 32), + item('appliedenergistics2:material', 23) + ) + .fluidInputs(fluid('tungsten_steel') * 144) + .outputs(item('appliedenergistics2:material', 34)) + .duration(200) + .EUt(30720) + .buildAndRegister() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + ore('circuitLuv') * 4, + item('appliedenergistics2:material', 33) * 4 + ) + .fluidInputs(fluid('tungsten_steel') * 144) + .outputs(item('appliedenergistics2:material', 34)) + .duration(400) + .EUt(30720) + .buildAndRegister() + +// Entropy Manipulator +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:entropy_manipulator')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:entropy_manipulator')) + .shape([ + [null, item('appliedenergistics2:material', 22), ore('crystalFluix')], + [null, item('appliedenergistics2:energy_cell'), item('appliedenergistics2:material', 24)], + [mi('stickSteel'), null, null] + ]) + .register() + +// Charged Staff +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:charged_staff')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:charged_staff')) + .shape([ + [null, item('appliedenergistics2:material', 1), item('appliedenergistics2:material', 1)], + [null, item('appliedenergistics2:energy_cell'), item('appliedenergistics2:material', 1)], + [mi('stickSteel'), null, null] + ]) + .register() + +// Matter Cannon +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:matter_cannon')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:matter_cannon')) + .shape([ + [mi('plateSteel'), mi('plateSteel'), item('appliedenergistics2:material', 43)], + [item('appliedenergistics2:material', 36), item('appliedenergistics2:dense_energy_cell'), null], + [mi('plateSteel'), null, null] + ]) + .register() + +// Color Applicator +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:color_applicator')) +mods.jei.ingredient.hide(item('appliedenergistics2:color_applicator')) + +// Wireless Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:wireless_terminal')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:wireless_terminal')) + .shape([ + [item('appliedenergistics2:material', 41), item('appliedenergistics2:part', 380), item('appliedenergistics2:material', 41)], + [item('appliedenergistics2:material', 24), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 24)], + [mi('plateNetherQuartz'), item('appliedenergistics2:dense_energy_cell'), mi('plateNetherQuartz')] + ]) + .register() + +// Wireless Crafting Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:wireless_crafting_terminal')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:wireless_crafting_terminal')) + .shape([ + [item('appliedenergistics2:material', 41), item('appliedenergistics2:part', 360), item('appliedenergistics2:material', 41)], + [item('appliedenergistics2:material', 24), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 24)], + [mi('plateNetherQuartz'), item('appliedenergistics2:dense_energy_cell'), mi('plateNetherQuartz')] + ]) + .register() + +// Wireless Fluid Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:wireless_fluid_terminal')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:wireless_fluid_terminal')) + .shape([ + [item('appliedenergistics2:material', 41), item('appliedenergistics2:part', 520), item('appliedenergistics2:material', 41)], + [item('appliedenergistics2:material', 24), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 24)], + [mi('plateNetherQuartz'), item('appliedenergistics2:dense_energy_cell'), mi('plateNetherQuartz')] + ]) + .register() + +// Wireless Pattern Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:wireless_pattern_terminal')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:wireless_pattern_terminal')) + .shape([ + [item('appliedenergistics2:material', 41), item('appliedenergistics2:part', 340), item('appliedenergistics2:material', 41)], + [item('appliedenergistics2:material', 24), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 24)], + [mi('plateNetherQuartz'), item('appliedenergistics2:dense_energy_cell'), mi('plateNetherQuartz')] + ]) + .register() + +// Wireless Interface Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:wireless_interface_terminal')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:wireless_interface_terminal')) + .shape([ + [item('appliedenergistics2:material', 41), item('appliedenergistics2:part', 480), item('appliedenergistics2:material', 41)], + [item('appliedenergistics2:material', 24), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 24)], + [mi('plateNetherQuartz'), item('appliedenergistics2:dense_energy_cell'), mi('plateNetherQuartz')] + ]) + .register() + +// Biometric Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:biometric_card')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:biometric_card')) + .shape([ + [item('appliedenergistics2:material', 22), mi('plateIron'), mi('plateIron')], + [mi('plateGold'), mi('plateRedAlloy'), mi('plateGold')], + [null, null, null] + ]) + .register() + +// Memory Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:memory_card')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:memory_card')) + .shape([ + [item('appliedenergistics2:material', 23), mi('plateIron'), mi('plateIron')], + [mi('plateGold'), mi('plateRedAlloy'), mi('plateGold')], + [null, null, null] + ]) + .register() + +// Basic Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 25)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 25)) + .shape([ + [mi('plateGold'), mi('plateAluminium'), null], + [mi('plateRedAlloy'), item('appliedenergistics2:material', 23), mi('plateAluminium')], + [mi('plateGold'), mi('plateAluminium'), null] + ]) + .register() + +// Capacity Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 27)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 27)) + .shape([ + [item('appliedenergistics2:material', 25), item('appliedenergistics2:material', 35), null], + [item('appliedenergistics2:material', 35), ore('gemCertusQuartz'), null], + [null, null, null] + ]) + .register() + +// Crafting Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 53)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 53)) + .shape([ + [item('appliedenergistics2:material', 25), item('appliedenergistics2:material', 35), null], + [item('appliedenergistics2:material', 35), item('minecraft:crafting_table'), null], + [null, null, null] + ]) + .register() + +// Redstone Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 26)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 26)) + .shape([ + [item('appliedenergistics2:material', 25), item('minecraft:redstone_torch'), null], + [item('minecraft:redstone_torch'), item('appliedenergistics2:material', 23), null], + [null, null, null] + ]) + .register() + +// Advanced Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 28)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 28)) + .shape([ + [mi('platePlatinum'), mi('plateAluminium'), null], + [mi('plateRedAlloy'), item('appliedenergistics2:material', 23), mi('plateAluminium')], + [mi('platePlatinum'), mi('plateAluminium'), null] + ]) + .register() + +// Fuzzy Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 29)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 29)) + .shape([ + [item('appliedenergistics2:material', 28), item('appliedenergistics2:material', 24), null], + [item('appliedenergistics2:material', 22), item('appliedenergistics2:material', 23), null], + [null, null, null] + ]) + .register() + +// Inverter Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 31)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 31)) + .shape([ + [item('appliedenergistics2:material', 28), mi('cover.activity.detector'), null], + [mi('cover.activity.detector'), item('appliedenergistics2:material', 23), null], + [null, null, null] + ]) + .register() + +// Pattern Expansion Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 58)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:material', 58)) + .input(item('appliedenergistics2:material', 28), ore('craftInterfaceDual'), item('appliedenergistics2:material', 23)) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:material', 58)) + .input(item('appliedenergistics2:material', 28), ore('craftInterfaceItem'), ore('craftInterfaceFluid'), item('appliedenergistics2:material', 23)) + .register() + +// Acceleration Card +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 30)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 30)) + .shape([ + [item('appliedenergistics2:material', 28), item('appliedenergistics2:material', 24), null], + [item('appliedenergistics2:material', 22), ore('craftFluix'), null], + [null, null, null] + ]) + .register() + +// Quantum Link Card +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 59)) + .shape([ + [item('appliedenergistics2:material', 42), mi('cover.digital.wireless'), item('appliedenergistics2:material', 42)], + [item('appliedenergistics2:material', 47), item('appliedenergistics2:material', 28), item('appliedenergistics2:material', 47)], + [item('appliedenergistics2:material', 42), mi('sensor.ev'), item('appliedenergistics2:material', 42)] + ]) + .register() + +// Magnet Card +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 60)) + .shape([ + [mi('plateRedstone'), item('appliedenergistics2:part', 300), mi('plateLapis')], + [mi('stickNeodymiumMagnetic'), item('appliedenergistics2:material', 28), mi('stickNeodymiumMagnetic')], + [mi('stickNeodymiumMagnetic'), null, mi('stickNeodymiumMagnetic')] + ]) + .register() + +// Wireless Receiver +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 41)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 41)) + .shape([ + [ore('craftGlassCable'), item('appliedenergistics2:material', 9), ore('craftGlassCable')], + [mi('sensor.ev'), mi('stickTitanium'), mi('sensor.ev')], + [mi('plateCertusQuartz'), ore('circuitEv'), mi('plateCertusQuartz')] + ]) + .register() + +// Wireless Boosting +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:material', 42)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:material', 42)) + .shape([ + [mi('dustFluix'), ore('crystalCertusQuartz'), mi('plateEnderPearl')], + [mi('plateTitanium'), mi('plateTitanium'), mi('plateTitanium')], + [null, null, null] + ]) + .register() + +// Annihilation Plane +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 300)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 300)) + .shape([ + [ore('craftingToolScrewdriver'), mi('dustFluix'), ore('craftingToolSoftHammer')], + [mi('screwSteel'), mi('dustFluix'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 44), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 300)) + .shape([ + [ore('craftingToolSoftHammer'), mi('dustFluix'), ore('craftingToolScrewdriver')], + [mi('screwSteel'), mi('dustFluix'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 44), mi('plateSteel')] + ]) + .register() + +// Fluid Annihilation Plane +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 302)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 302)) + .shape([ + [ore('craftingToolScrewdriver'), mi('dustLapis'), ore('craftingToolSoftHammer')], + [mi('screwStainlessSteel'), mi('dustLapis'), mi('screwSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 44), mi('plateStainlessSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 302)) + .shape([ + [ore('craftingToolSoftHammer'), ore('gemLapis'), ore('craftingToolScrewdriver')], + [mi('screwStainlessSteel'), ore('gemLapis'), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 44), mi('plateStainlessSteel')] + ]) + .register() + +// Formation Plane +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 320)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 320)) + .shape([ + [ore('craftingToolScrewdriver'), mi('dustFluix'), ore('craftingToolSoftHammer')], + [mi('screwSteel'), mi('dustFluix'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 43), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 320)) + .shape([ + [ore('craftingToolSoftHammer'), mi('dustFluix'), ore('craftingToolScrewdriver')], + [mi('screwSteel'), mi('dustFluix'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 43), mi('plateSteel')] + ]) + .register() + +// Fluid Formation Plane +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 321)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 302)) + .shape([ + [ore('craftingToolScrewdriver'), mi('dustLapis'), ore('craftingToolSoftHammer')], + [mi('screwStainlessSteel'), mi('dustLapis'), mi('screwSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 43), mi('plateStainlessSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 302)) + .shape([ + [ore('craftingToolSoftHammer'), ore('gemLapis'), ore('craftingToolScrewdriver')], + [mi('screwStainlessSteel'), ore('gemLapis'), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('appliedenergistics2:material', 43), mi('plateStainlessSteel')] + ]) + .register() + +// Certus Quartz Crystal +mods.jei.ingredient.hide(item('appliedenergistics2:material')) + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Cable Anchor +def anchorIngots_x4 = [ + item('minecraft:iron_ingot'), + mi('ingotCopper'), + mi('ingotAnnealedCopper'), + mi('ingotTin'), + mi('ingotLead'), + mi('ingotNickel'), + mi('ingotSilver'), + mi('ingotSteel') +] +def anchorIngots_x6 = [ + mi('ingotBronze'), + mi('ingotBrass'), + mi('ingotInvar'), + mi('ingotDarkSteel') +] +def anchorIngots_x8 = [ + mi('ingotStainlessSteel'), + mi('ingotTitanium') +] +anchorIngots_x4.each { anchorIngot_x4 -> + mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 120) * 4) + .input(anchorIngot_x4, ore('craftingToolKnife')) + .register() + cutter.recipeBuilder() + .inputs(anchorIngot_x4) + .fluidInputs(fluid('lubricant') * 1) + .outputs(item('appliedenergistics2:part', 120) * 8) + .duration(80) + .EUt(480) + .buildAndRegister() + cutter.recipeBuilder() + .inputs(anchorIngot_x4) + .fluidInputs(fluid('distilled_water') * 3) + .outputs(item('appliedenergistics2:part', 120) * 8) + .duration(160) + .EUt(480) + .buildAndRegister() + cutter.recipeBuilder() + .inputs(anchorIngot_x4) + .fluidInputs(fluid('water') * 4) + .outputs(item('appliedenergistics2:part', 120) * 8) + .duration(200) + .EUt(480) + .buildAndRegister() +} +anchorIngots_x6.each { anchorIngot_x6 -> + mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 120) * 6) + .input(anchorIngot_x6, ore('craftingToolKnife')) + .register() + cutter.recipeBuilder() + .inputs(anchorIngot_x6) + .fluidInputs(fluid('lubricant') * 1) + .outputs(item('appliedenergistics2:part', 120) * 12) + .duration(80) + .EUt(480) + .buildAndRegister() + cutter.recipeBuilder() + .inputs(anchorIngot_x6) + .fluidInputs(fluid('distilled_water') * 3) + .outputs(item('appliedenergistics2:part', 120) * 12) + .duration(160) + .EUt(480) + .buildAndRegister() + cutter.recipeBuilder() + .inputs(anchorIngot_x6) + .fluidInputs(fluid('water') * 4) + .outputs(item('appliedenergistics2:part', 120) * 12) + .duration(200) + .EUt(480) + .buildAndRegister() +} +anchorIngots_x8.each { anchorIngot_x8 -> + mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 120) * 8) + .input(anchorIngot_x8, ore('craftingToolKnife')) + .register() + cutter.recipeBuilder() + .inputs(anchorIngot_x8) + .fluidInputs(fluid('lubricant') * 1) + .outputs(item('appliedenergistics2:part', 120) * 16) + .duration(80) + .EUt(480) + .buildAndRegister() + cutter.recipeBuilder() + .inputs(anchorIngot_x8) + .fluidInputs(fluid('distilled_water') * 3) + .outputs(item('appliedenergistics2:part', 120) * 16) + .duration(160) + .EUt(480) + .buildAndRegister() + cutter.recipeBuilder() + .inputs(anchorIngot_x8) + .fluidInputs(fluid('water') * 4) + .outputs(item('appliedenergistics2:part', 120) * 16) + .duration(200) + .EUt(480) + .buildAndRegister() +} + +// ME Controller +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:controller')) +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24) * 2, + ore('circuitHv') * 2, + mi('plateBlackSteel', 4), + item('appliedenergistics2:fluix_block') + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('appliedenergistics2:controller')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Quartz Glass +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:quartz_glass')) +alloy_smelter.recipeBuilder() + .inputs( + ore('blockGlass'), + mi('dustCertusQuartz') + ) + .outputs(item('appliedenergistics2:quartz_glass')) + .duration(20) + .EUt(480) + .buildAndRegister() +alloy_smelter.recipeBuilder() + .inputs( + ore('blockGlass'), + mi('dustQuartzite') + ) + .outputs(item('appliedenergistics2:quartz_glass')) + .duration(20) + .EUt(480) + .buildAndRegister() + +// Vibrant Quartz Glass +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:quartz_vibrant_glass')) +alloy_smelter.recipeBuilder() + .inputs( + item('appliedenergistics2:quartz_glass'), + item('minecraft:glowstone_dust') * 8 + ) + .outputs(item('appliedenergistics2:quartz_vibrant_glass')) + .duration(20) + .EUt(480) + .buildAndRegister() +alloy_smelter.recipeBuilder() + .inputs( + item('minecraft:glowstone'), + mi('dustAluminium', 8) + ) + .outputs(item('appliedenergistics2:quartz_vibrant_glass')) + .duration(20) + .EUt(480) + .buildAndRegister() + +// Quartz Fixture +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:quartz_fixture')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:quartz_fixture')) + .input(ore('gemCertusQuartz'), mi('stickAluminium')) + .register() + +// Charger +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:charger')) +mods.jei.ingredient.hide(item('appliedenergistics2:charger')) + +// Security Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:security_station')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:security_station')) + .shape([ + [mi('plateSteel'), ore('chestWood'), mi('plateSteel')], + [ore('craftGlassCable'), item('appliedenergistics2:material', 35), ore('craftGlassCable')], + [mi('plateSteel'), item('appliedenergistics2:material', 22), mi('plateSteel')] + ]) + .register() + +// Quantum Ring +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:quantum_ring')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:quantum_ring')) + .shape([ + [mi('plateTitanium'), item('appliedenergistics2:material', 22), mi('plateTitanium')], + [item('gtexpert:meta_item_1', 1), mi('emitter.ev'), ore('craftGlassCable')], + [mi('plateTitanium'), item('appliedenergistics2:material', 22), mi('plateTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('appliedenergistics2:material', 22), + ore('craftGlassCable'), + item('gtexpert:meta_item_1', 1), + mi('emitter.ev'), + mi('plateTitanium', 2) + ) + .outputs(item('appliedenergistics2:quantum_ring')) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Quantum Link +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:quantum_link')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:quantum_link')) + .shape([ + [mi('plateGlass'), ore('pearlFluix'), mi('plateGlass')], + [ore('pearlFluix'), mi('field.generator.ev'), ore('pearlFluix')], + [mi('plateGlass'), ore('pearlFluix'), mi('plateGlass')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('field.generator.ev'), + ore('pearlFluix') * 2, + mi('plateGlass', 2) + ) + .outputs(item('appliedenergistics2:quantum_link')) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Spatial Pylon +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:spatial_pylon')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:spatial_pylon')) + .shape([ + [mi('plateGlass'), ore('craftGlassCable'), mi('plateGlass')], + [mi('dustFluix'), ore('crystalFluix'), mi('dustFluix')], + [mi('plateGlass'), ore('craftGlassCable'), mi('plateGlass')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateGlass', 2), + ore('craftGlassCable') * 2, + mi('dustFluix'), + ore('crystalFluix') + ) + .outputs(item('appliedenergistics2:spatial_pylon')) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// ME IO Port +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:io_port')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:io_port')) + .shape([ + [mi('plateGlass'), mi('plateGlass'), mi('plateGlass')], + [ore('craftGlassCable'), item('appliedenergistics2:drive'), ore('craftGlassCable')], + [mi('plateSteel'), item('appliedenergistics2:material', 24), mi('plateSteel')] + ]) + .register() + +// ME Spatial IO Port +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:spatial_io_port')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:spatial_io_port')) + .shape([ + [mi('plateGlass'), mi('plateGlass'), mi('plateGlass')], + [ore('craftGlassCable'), item('appliedenergistics2:drive'), ore('craftGlassCable')], + [mi('plateSteel'), item('gtexpert:meta_item_1', 1), mi('plateSteel')] + ]) + .register() + +// ME Chest +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:chest')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:chest')) + .shape([ + [mi('plateSteel'), item('appliedenergistics2:part', 380), mi('plateSteel')], + [ore('craftGlassCable'), ore('chestWood'), ore('craftGlassCable')], + [mi('plateSteel'), item('appliedenergistics2:material', 22), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('appliedenergistics2:part', 380), + item('appliedenergistics2:material', 22), + ore('chestWood'), + ore('craftGlassCable'), + mi('plateSteel', 2) + ) + .outputs(item('appliedenergistics2:chest')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Drive +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:drive')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:drive')) + .shape([ + [mi('plateBlackSteel'), item('gtexpert:meta_item_1', 1), mi('plateBlackSteel')], + [ore('craftGlassCable'), item('appliedenergistics2:chest'), ore('craftGlassCable')], + [mi('plateBlackSteel'), item('appliedenergistics2:material', 24), mi('plateBlackSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('appliedenergistics2:material', 24), + item('gtexpert:meta_item_1', 1), + item('appliedenergistics2:chest'), + ore('craftGlassCable'), + mi('plateBlackSteel', 2) + ) + .outputs(item('appliedenergistics2:drive')) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// ME Interface +mods.minecraft.crafting.remove(resource('appliedenergistics2:network/blocks/interfaces_interface')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:interface')) + .shape([ + [mi('plateSteel'), mi('plateGlass'), mi('plateSteel')], + [item('gtexpert:meta_item_1', 1), item('gregtech:machine_casing', 3), item('gtexpert:meta_item_1', 1)], + [mi('plateSteel'), mi('plateGlass'), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('gregtech:machine_casing', 3), + item('gtexpert:meta_item_1', 1), + mi('plateGlass'), + mi('plateSteel', 2) + ) + .outputs(item('appliedenergistics2:interface')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Fluid Interface +mods.minecraft.crafting.remove(resource('aeadditions:misc/parttointerface')) +mods.minecraft.crafting.remove(resource('appliedenergistics2:network/blocks/fluid_interfaces_interface')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:fluid_interface')) + .shape([ + [mi('plateStainlessSteel'), mi('plateGlass'), mi('plateStainlessSteel')], + [item('gtexpert:meta_item_1', 1), item('gregtech:machine_casing', 3), item('gtexpert:meta_item_1', 1)], + [mi('plateStainlessSteel'), mi('plateGlass'), mi('plateStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('gregtech:machine_casing', 3), + item('gtexpert:meta_item_1', 1), + mi('plateGlass'), + mi('plateStainlessSteel', 2) + ) + .outputs(item('appliedenergistics2:fluid_interface')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Cell Workbench +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:cell_workbench')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:cell_workbench')) + .shape([ + [ore('wool'), mi('cover.screen'), ore('wool')], + [mi('plateAluminium'), item('appliedenergistics2:material', 23), mi('plateAluminium')], + [mi('plateAluminium'), mi('plateAluminium'), mi('plateAluminium')] + ]) + .register() + +// Matter Condenser +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:condenser')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:condenser')) + .shape([ + [mi('plateSteel'), mi('electric.piston.hv'), mi('plateSteel')], + [mi('electric.piston.hv'), mi('hull.hv'), mi('electric.piston.hv')], + [mi('plateSteel'), mi('electric.piston.hv'), mi('plateSteel')] + ]) + .register() + +// Energy Acceptor +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:energy_acceptor')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:energy_acceptor')) + .shape([ + [mi('plateSteel'), mi('plateGlass'), mi('plateSteel')], + [mi('plateGlass'), ore('crystalFluix'), mi('plateGlass')], + [mi('plateSteel'), mi('plateGlass'), mi('plateSteel')] + ]) + .register() + +// Vibration Chamber +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:vibration_chamber')) +assembler.recipeBuilder() + .inputs( + ore('circuitHv') * 2, + ore('cableGtSingleGold') * 2, + mi('wireGtDoubleKanthal', 4), + mi('plateSteel', 7) + ) + .outputs(item('appliedenergistics2:vibration_chamber')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Energy Cell +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:energy_cell')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:energy_cell')) + .shape([ + [mi('plateFluix'), ore('circuitHv'), mi('plateFluix')], + [ore('craftCoveredCable'), ore('batteryHv'), ore('craftCoveredCable')], + [mi('plateFluix'), ore('cableGtOctalAluminium'), mi('plateFluix')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateFluix', 2), + ore('batteryHv'), + ore('circuitHv'), + ore('craftCoveredCable') + ) + .outputs(item('appliedenergistics2:energy_cell')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Dense Energy Cell +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:dense_energy_cell')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:dense_energy_cell')) + .shape([ + [item('appliedenergistics2:energy_cell'), ore('circuitEv'), item('appliedenergistics2:energy_cell')], + [ore('craftDenseCoveredCable'), item('gtexpert:meta_item_1', 1), ore('craftDenseCoveredCable')], + [item('appliedenergistics2:energy_cell'), mi('battery_buffer.ev.16'), item('appliedenergistics2:energy_cell')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('appliedenergistics2:energy_cell') * 2, + mi('battery_buffer.ev.16'), + item('gtexpert:meta_item_1', 1), + ore('circuitEv'), + ore('craftDenseCoveredCable') + ) + .outputs(item('appliedenergistics2:dense_energy_cell')) + .duration(20) + .EUt(7680) + .buildAndRegister() + +// Crafting Unit +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:crafting_unit')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:crafting_unit')) + .shape([ + [mi('plateSteel'), item('appliedenergistics2:material', 22), mi('plateSteel')], + [ore('circuitHv'), item('appliedenergistics2:material', 24), ore('circuitHv')], + [mi('plateSteel'), item('appliedenergistics2:material', 23), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('appliedenergistics2:material', 22), + item('appliedenergistics2:material', 24), + item('appliedenergistics2:material', 23), + ore('circuitHv'), + mi('plateSteel', 2) + ) + .outputs(item('appliedenergistics2:crafting_unit')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Molecular Assembler +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:molecular_assembler')) +assembler.recipeBuilder() + .inputs( + mi('plateGlass', 2), + ore('circuitHv') * 2, + mi('conveyor.module.hv', 2), + mi('robot.arm.hv', 2), + mi('plateSteel', 4) + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('appliedenergistics2:molecular_assembler')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Light Detecting Fixture +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:light_detector')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:light_detector')) + .input(ore('gemChargedCertusQuartz'), mi('stickIron')) + .register() + +// Illuminated Panel +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 180)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 180)) + .shape([ + [null, mi('plateGlowstone'), null], + [mi('plateSteel'), mi('plateRedAlloy'), mi('cover.screen')], + [null, mi('plateGlowstone'), null] + ]) + .register() +assembler.recipeBuilder() + .inputs( + mi('plateGlowstone'), + mi('plateSteel'), + mi('plateRedAlloy'), + mi('cover.screen') + ) + .outputs(item('appliedenergistics2:part', 180)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 380)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 380)) + .shape([ + [mi('stickSteel'), ore('craftingToolScrewdriver'), mi('stickSteel')], + [item('appliedenergistics2:part', 180), ore('circuitHv'), mi('plateSteel')], + [mi('stickSteel'), mi('screwSteel'), mi('stickSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 380)) + .shape([ + [mi('stickSteel'), mi('screwSteel'), mi('stickSteel')], + [item('appliedenergistics2:part', 180), ore('circuitHv'), mi('plateSteel')], + [mi('stickSteel'), ore('craftingToolScrewdriver'), mi('stickSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:part', 180), + ore('circuitHv'), + mi('screwSteel'), + mi('plateSteel'), + mi('stickSteel', 2) + ) + .outputs(item('appliedenergistics2:part', 380)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Fluid Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 520)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 520)) + .shape([ + [mi('stickStainlessSteel'), ore('craftingToolScrewdriver'), mi('stickStainlessSteel')], + [item('appliedenergistics2:part', 180), ore('circuitHv'), mi('plateStainlessSteel')], + [mi('stickStainlessSteel'), mi('screwStainlessSteel'), mi('stickStainlessSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 520)) + .shape([ + [mi('stickStainlessSteel'), mi('screwStainlessSteel'), mi('stickStainlessSteel')], + [item('appliedenergistics2:part', 180), ore('circuitHv'), mi('plateStainlessSteel')], + [mi('stickStainlessSteel'), ore('craftingToolScrewdriver'), mi('stickStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:part', 180), + ore('circuitHv'), + mi('screwStainlessSteel'), + mi('plateStainlessSteel'), + mi('stickStainlessSteel', 2) + ) + .outputs(item('appliedenergistics2:part', 520)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Crafting Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 360)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 360)) + .shape([ + [ore('craftingToolScrewdriver'), item('appliedenergistics2:part', 380), ore('craftingToolSoftHammer')], + [mi('screwSteel'), mi('workbench'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 22), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 360)) + .shape([ + [ore('craftingToolSoftHammer'), item('appliedenergistics2:part', 380), ore('craftingToolScrewdriver')], + [mi('screwSteel'), mi('workbench'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 22), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 22), + item('appliedenergistics2:part', 380), + mi('workbench'), + mi('screwSteel'), + mi('plateSteel') + ) + .outputs(item('appliedenergistics2:part', 360)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Interface Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 480)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 480)) + .shape([ + [ore('craftingToolScrewdriver'), item('appliedenergistics2:part', 380), ore('craftingToolSoftHammer')], + [mi('screwSteel'), ore('craftInterfaceItem'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 23), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 480)) + .shape([ + [ore('craftingToolSoftHammer'), item('appliedenergistics2:part', 380), ore('craftingToolScrewdriver')], + [mi('screwSteel'), ore('craftInterfaceItem'), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 23), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + item('appliedenergistics2:part', 380), + ore('craftInterfaceItem'), + mi('screwSteel'), + mi('plateSteel') + ) + .outputs(item('appliedenergistics2:part', 480)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Configuration Interface Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 521)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 521)) + .shape([ + [ore('craftingToolScrewdriver'), item('appliedenergistics2:part', 380), ore('craftingToolSoftHammer')], + [mi('screwSteel'), ore('craftInterfaceItem'), mi('screwSteel')], + [mi('plateSteel'), item('gtexpert:meta_item_1', 1), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 521)) + .shape([ + [ore('craftingToolSoftHammer'), item('appliedenergistics2:part', 380), ore('craftingToolScrewdriver')], + [mi('screwSteel'), ore('craftInterfaceItem'), mi('screwSteel')], + [mi('plateSteel'), item('gtexpert:meta_item_1', 1), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('gtexpert:meta_item_1', 1), + item('appliedenergistics2:part', 380), + ore('craftInterfaceItem'), + mi('screwSteel'), + mi('plateSteel') + ) + .outputs(item('appliedenergistics2:part', 521)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Configuration Fluid Interface Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 522)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 522)) + .shape([ + [ore('craftingToolScrewdriver'), item('appliedenergistics2:part', 380), ore('craftingToolSoftHammer')], + [mi('screwStainlessSteel'), ore('craftInterfaceFluid'), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('gtexpert:meta_item_1', 1), mi('plateStainlessSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 522)) + .shape([ + [ore('craftingToolSoftHammer'), item('appliedenergistics2:part', 380), ore('craftingToolScrewdriver')], + [mi('screwStainlessSteel'), ore('craftInterfaceFluid'), mi('screwStainlessSteel')], + [mi('plateStainlessSteel'), item('gtexpert:meta_item_1', 1), mi('plateStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('gtexpert:meta_item_1', 1), + item('appliedenergistics2:part', 380), + ore('craftInterfaceFluid'), + mi('screwStainlessSteel'), + mi('plateStainlessSteel') + ) + .outputs(item('appliedenergistics2:part', 522)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Pattern Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 340)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 340)) + .shape([ + [ore('craftingToolScrewdriver'), item('appliedenergistics2:part', 380), ore('craftingToolSoftHammer')], + [mi('screwSteel'), item('appliedenergistics2:material', 52), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 23), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 340)) + .shape([ + [ore('craftingToolSoftHammer'), item('appliedenergistics2:part', 380), ore('craftingToolScrewdriver')], + [mi('screwSteel'), item('appliedenergistics2:material', 52), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 23), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 23), + item('appliedenergistics2:part', 380), + item('appliedenergistics2:material', 52), + mi('screwSteel'), + mi('plateSteel') + ) + .outputs(item('appliedenergistics2:part', 340)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Extended Processing Pattern Terminal +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 341)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 341)) + .shape([ + [ore('craftingToolScrewdriver'), item('appliedenergistics2:part', 340), ore('craftingToolSoftHammer')], + [mi('screwSteel'), item('appliedenergistics2:material', 52), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 24), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 341)) + .shape([ + [ore('craftingToolSoftHammer'), item('appliedenergistics2:part', 340), ore('craftingToolScrewdriver')], + [mi('screwSteel'), item('appliedenergistics2:material', 52), mi('screwSteel')], + [mi('plateSteel'), item('appliedenergistics2:material', 24), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + item('appliedenergistics2:part', 340), + item('appliedenergistics2:material', 52), + mi('screwSteel'), + mi('plateSteel') + ) + .outputs(item('appliedenergistics2:part', 341)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// P2P Tunnel +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 460)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 460)) + .shape([ + [item('appliedenergistics2:material', 24), mi('plateAluminium'), item('appliedenergistics2:material', 24)], + [mi('plateAluminium'), item('appliedenergistics2:part', 180), mi('plateAluminium')], + [ore('crystalPureFluix'), ore('crystalPureFluix'), ore('crystalPureFluix')] + ]) + .register() +assembler.recipeBuilder() + .inputs( + item('appliedenergistics2:material', 24), + item('appliedenergistics2:part', 180), + ore('crystalPureFluix') * 2, + mi('plateAluminium', 2) + ) + .outputs(item('appliedenergistics2:part', 460)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Wireless Access Point +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:wireless_access_point')) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:wireless_access_point')) + .shape([ + [null, item('appliedenergistics2:material', 41), null], + [null, item('appliedenergistics2:material', 23), null], + [null, ore('craftGlassCable'), null] + ]) + .register() + +// ME Level Emitter +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 280)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 280)) + .shape([ + [null, mi('plateSteel'), null], + [ore('craftGlassCable'), item('minecraft:redstone_torch'), ore('craftGlassCable')], + [null, mi('plateSteel'), null] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('minecraft:redstone_torch'), + ore('craftGlassCable'), + mi('plateSteel') + ) + .outputs(item('appliedenergistics2:part', 280)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Fluid Level Emitter +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 281)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 281)) + .shape([ + [null, mi('plateStainlessSteel'), null], + [ore('craftGlassCable'), item('minecraft:redstone_torch'), ore('craftGlassCable')], + [null, mi('plateStainlessSteel'), null] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('minecraft:redstone_torch'), + ore('craftGlassCable'), + mi('plateStainlessSteel') + ) + .outputs(item('appliedenergistics2:part', 281)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Storage Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 220)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 220)) + .shape([ + [mi('plateSteel'), ore('craftingToolSoftHammer'), mi('plateSteel')], + [mi('conveyor.module.hv'), ore('craftInterfaceItem'), mi('conveyor.module.hv')], + [mi('plateSteel'), mi('item_filter'), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('conveyor.module.hv'), + mi('item_filter'), + ore('craftInterfaceItem'), + mi('plateSteel', 2) + ) + .outputs(item('appliedenergistics2:part', 220)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Fluid Storage Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 221)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 221)) + .shape([ + [mi('plateStainlessSteel'), ore('craftingToolSoftHammer'), mi('plateStainlessSteel')], + [mi('electric.pump.hv'), ore('craftInterfaceFluid'), mi('electric.pump.hv')], + [mi('plateStainlessSteel'), mi('fluid_filter'), mi('plateStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('electric.pump.hv'), + mi('fluid_filter'), + ore('craftInterfaceFluid'), + mi('plateStainlessSteel', 2) + ) + .outputs(item('appliedenergistics2:part', 221)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME OreDict Storage Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 222)) +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 222)) + .shape([ + [mi('plateTitanium'), ore('craftingToolSoftHammer'), mi('plateTitanium')], + [mi('conveyor.module.hv'), ore('craftInterfaceItem'), mi('conveyor.module.hv')], + [mi('plateTitanium'), mi('ore_dictionary_filter'), mi('plateTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('conveyor.module.hv'), + mi('ore_dictionary_filter'), + ore('craftInterfaceItem'), + mi('plateTitanium', 2) + ) + .outputs(item('appliedenergistics2:part', 222)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Toggle Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 80)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 80)) + .input(item('appliedenergistics2:part', 100)) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 80)) + .shape([ + [null, mi('plateRedAlloy'), null], + [ore('craftGlassCable'), item('minecraft:lever'), ore('craftGlassCable')], + [null, mi('plateRedAlloy'), null] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('minecraft:lever'), + ore('craftGlassCable'), + mi('plateRedAlloy') + ) + .outputs(item('appliedenergistics2:part', 80)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Inverted Toggle Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 100)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 100)) + .input(item('appliedenergistics2:part', 80)) + .register() + +// ME Import Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 240)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 240)) + .input(item('appliedenergistics2:part', 260)) + .register() + +// ME Fluid Import Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 241)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 241)) + .input(item('appliedenergistics2:part', 261)) + .register() + +// ME Export Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 260)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 260)) + .input(item('appliedenergistics2:part', 240)) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 260)) + .shape([ + [ore('craftingToolScrewdriver'), mi('plateTitanium'), ore('craftingToolSoftHammer')], + [item('appliedenergistics2:material', 44), mi('item_filter'), item('appliedenergistics2:material', 43)], + [mi('screwSteel'), mi('conveyor.module.hv'), mi('screwSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('appliedenergistics2:material', 44), + item('appliedenergistics2:material', 43), + mi('item_filter'), + mi('plateTitanium'), + mi('screwSteel', 2), + mi('conveyor.module.hv') + ) + .outputs(item('appliedenergistics2:part', 260)) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Fluid Export Bus +mods.minecraft.crafting.removeByOutput(item('appliedenergistics2:part', 261)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('appliedenergistics2:part', 261)) + .input(item('appliedenergistics2:part', 241)) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('appliedenergistics2:part', 261)) + .shape([ + [ore('craftingToolScrewdriver'), mi('plateTitanium'), ore('craftingToolSoftHammer')], + [item('appliedenergistics2:material', 44), mi('fluid_filter'), item('appliedenergistics2:material', 43)], + [mi('screwStainlessSteel'), mi('electric.pump.hv'), mi('screwStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + item('appliedenergistics2:material', 44), + item('appliedenergistics2:material', 43), + mi('fluid_filter'), + mi('plateTitanium'), + mi('screwStainlessSteel', 2), + mi('electric.pump.hv') + ) + .outputs(item('appliedenergistics2:part', 261)) + .duration(20) + .EUt(1920) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/ArchitectureCraft.groovy b/overrides/groovy/postInit/normal/ArchitectureCraft.groovy new file mode 100644 index 00000000..7119f3d9 --- /dev/null +++ b/overrides/groovy/postInit/normal/ArchitectureCraft.groovy @@ -0,0 +1,42 @@ +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Circular Saw Blade +mods.minecraft.crafting.removeByOutput(item('architecturecraft:sawblade')) + +// Large Pulley +mods.minecraft.crafting.removeByOutput(item('architecturecraft:largepulley')) + +// Chisel +mods.minecraft.crafting.removeByOutput(item('architecturecraft:chisel')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('architecturecraft:chisel')) + .input(item('chisel:chisel_iron')) + .register() + +// Hammer +mods.minecraft.crafting.removeByOutput(item('architecturecraft:hammer')) +mods.minecraft.crafting.shapedBuilder() + .output(item('architecturecraft:hammer')) + .shape([ + [mi('plateDoubleIron'), mi('plateIron'), mi('plateIron')], + [ore('craftingToolFile'), item('minecraft:stick'), ore('craftingToolHardHammer')], + [null, item('minecraft:stick'), null] + ]) + .register() + + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Sawbench +mods.minecraft.crafting.removeByOutput(item('architecturecraft:sawbench')) +mods.minecraft.crafting.shapedBuilder() + .output(item('architecturecraft:sawbench')) + .shape([ + [mi('plateDoubleIron'), mi('toolHeadBuzzSawIron'), mi('plateDoubleIron')], + [ore('fenceWood'), mi('gearWood'), ore('fenceWood')], + [ore('fenceWood'), item('minecraft:wooden_pressure_plate'), ore('fenceWood')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/BuildingGadgets.groovy b/overrides/groovy/postInit/normal/BuildingGadgets.groovy new file mode 100644 index 00000000..ec44dd48 --- /dev/null +++ b/overrides/groovy/postInit/normal/BuildingGadgets.groovy @@ -0,0 +1,94 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Building Gadget +mods.minecraft.crafting.removeByOutput(item('buildinggadgets:buildingtool')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('stickRedAlloy', 2), + mi('screwRedAlloy', 2), + mi('dustIron'), + mi('circuit_board.basic'), + ore('circuitUlv'), + mi('battery.re.lv.sodium') + ) + .outputs(item('buildinggadgets:buildingtool')) + .duration(100) + .EUt(7) + .buildAndRegister() + +// Copy-Paste Gadget +mods.minecraft.crafting.removeByOutput(item('buildinggadgets:copypastetool')) +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('stickRedAlloy', 2), + mi('screwRedAlloy', 2), + mi('dustGold'), + mi('circuit_board.basic'), + ore('circuitUlv'), + mi('battery.re.lv.sodium') + ) + .outputs(item('buildinggadgets:copypastetool')) + .duration(100) + .EUt(7) + .buildAndRegister() + +// Exchanging Gadget +mods.minecraft.crafting.removeByOutput(item('buildinggadgets:exchangertool')) +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + mi('stickRedAlloy', 3), + mi('screwRedAlloy', 3), + mi('dustObsidian'), + mi('circuit_board.basic', 2), + ore('circuitUlv'), + mi('battery.re.lv.sodium') + ) + .outputs(item('buildinggadgets:exchangertool')) + .duration(100) + .EUt(7) + .buildAndRegister() + +// Destruction Gadget +mods.minecraft.crafting.removeByOutput(item('buildinggadgets:destructiontool')) +assembler.recipeBuilder() + .circuitMeta(4) + .inputs( + mi('stickRedAlloy', 2), + mi('screwRedAlloy', 2), + item('enderio:item_material', 20), + mi('circuit_board.basic'), + ore('circuitUlv'), + mi('battery.re.lv.sodium') + ) + .outputs(item('buildinggadgets:destructiontool')) + .duration(100) + .EUt(7) + .buildAndRegister() + + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Template Manager +mods.minecraft.crafting.removeByOutput(item('buildinggadgets:templatemanager')) +assembler.recipeBuilder() + .circuitMeta(4) + .inputs( + mi('plateSteel', 3), + mi('plateGold', 2), + ore('circuitLv'), + item('gregtech:machine_casing', 1) + ) + .outputs(item('buildinggadgets:templatemanager')) + .duration(100) + .EUt(7) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/CapabilityAdapter.groovy b/overrides/groovy/postInit/normal/CapabilityAdapter.groovy new file mode 100644 index 00000000..6f4cc8eb --- /dev/null +++ b/overrides/groovy/postInit/normal/CapabilityAdapter.groovy @@ -0,0 +1,13 @@ +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Capability Adapter +mods.minecraft.crafting.removeByOutput(item('rf-capability-adapter:aecapabilityadapter')) +mods.minecraft.crafting.shapedBuilder() + .output(item('rf-capability-adapter:aecapabilityadapter')) + .shape([ + [mi('plateTitanium'), ore('crystalPureFluix'), mi('plateTitanium')], + [ore('crystalPureFluix'), ore('craftInterfaceDual'), ore('crystalPureFluix')], + [mi('plateTitanium'), ore('crystalPureFluix'), mi('plateTitanium')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/CatWalks.groovy b/overrides/groovy/postInit/normal/CatWalks.groovy new file mode 100644 index 00000000..3588459b --- /dev/null +++ b/overrides/groovy/postInit/normal/CatWalks.groovy @@ -0,0 +1,150 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Blowtorch +mods.minecraft.crafting.removeByOutput(item('catwalks:blowtorch')) +mods.minecraft.crafting.shapedBuilder() + .output(item('catwalks:blowtorch')) + .shape([ + [null, mi('screwSteel'), item('minecraft:flint_and_steel')], + [ore('craftingToolScrewdriver'), mi('stickLongSteel'), mi('screwSteel')], + [mi('stickLongSteel'), ore('craftingToolWrench'), null] + ]) + .register() + + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Classic Catwalk +assembler.recipeBuilder() + .circuitMeta(6) + .inputs( + mi('frameSteel'), + mi('screwSteel', 2), + mi('stickLongSteel', 4) + ) + .outputs(item('catwalks:catwalk').withNbt(['material': 'classic']) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(7) + .inputs( + ore('frameGtDarkSteel'), + mi('screwDarkSteel', 2), + mi('stickLongDarkSteel', 4) + ) + .outputs(item('catwalks:catwalk').withNbt(['material': 'classic']) * 16) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(6) + .inputs(item('catwalks:catwalk').withNbt(['material': 'classic'])) + .notConsumable(item('minecraft:record_cat')) + .outputs(item('catwalks:catwalk').withNbt(['material': 'nyanwalk'])) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Glass Catwalk +assembler.recipeBuilder() + .circuitMeta(6) + .inputs( + mi('frameSteel'), + mi('plateGlass', 3), + mi('stickLongSteel', 4) + ) + .outputs(item('catwalks:catwalk').withNbt(['material': 'glass']) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(7) + .inputs( + ore('frameGtDarkSteel'), + mi('plateGlass', 3), + mi('stickLongDarkSteel', 4) + ) + .outputs(item('catwalks:catwalk').withNbt(['material': 'glass']) * 16) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Wood Catwalk +assembler.recipeBuilder() + .circuitMeta(7) + .inputs( + mi('frameTreatedWood'), + mi('plateTreatedWood', 3), + mi('stickLongSteel', 4) + ) + .outputs(item('catwalks:catwalk').withNbt(['material': 'treated_wood']) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(8) + .inputs( + mi('frameTreatedWood'), + mi('plateTreatedWood', 3), + mi('stickLongDarkSteel', 4) + ) + .outputs(item('catwalks:catwalk').withNbt(['material': 'treated_wood']) * 16) + .duration(20) + .EUt(7) + .buildAndRegister() +mods.minecraft.crafting.shapelessBuilder() + .output(item('catwalks:catwalk').withNbt(['material': 'treated_wood'])) + .input(item('catwalks:catwalk').withNbt(['material': 'custom_0'])) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('catwalks:catwalk').withNbt(['material': 'custom_0'])) + .input(item('catwalks:catwalk').withNbt(['material': 'treated_wood'])) + .register() + +// Classic Ladder +mods.minecraft.crafting.removeByOutput(item('catwalks:ladder')) +assembler.recipeBuilder() + .circuitMeta(6) + .inputs( + item('minecraft:ladder'), + mi('stickLongSteel', 4) + ) + .outputs(item('catwalks:ladder') * 6) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(7) + .inputs( + item('enderio:block_dark_steel_ladder'), + mi('stickLongDarkSteel', 4) + ) + .outputs(item('catwalks:ladder') * 32) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Classic Support Cables +mods.minecraft.crafting.removeByOutput(item('catwalks:cable')) +assembler.recipeBuilder() + .circuitMeta(8) + .inputs(mi('stickLongSteel', 3)) + .outputs(item('catwalks:cable') * 6) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(9) + .inputs(mi('stickLongDarkSteel', 3)) + .outputs(item('catwalks:cable') * 32) + .duration(20) + .EUt(7) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/ChickenChunks.groovy b/overrides/groovy/postInit/normal/ChickenChunks.groovy new file mode 100644 index 00000000..1a05a7b1 --- /dev/null +++ b/overrides/groovy/postInit/normal/ChickenChunks.groovy @@ -0,0 +1,36 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") +def packer = RecipeMap.getByName("packer") + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Chunk Loader +mods.minecraft.crafting.removeByOutput(item('chickenchunks:chunk_loader')) +packer.recipeBuilder() + .inputs(item('chickenchunks:chunk_loader', 1) * 9) + .outputs(item('chickenchunks:chunk_loader')) + .duration(20) + .EUt(30) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('frameSteel'), + mi('stickLongGold', 2), + mi('plateObsidian', 3) + ) + .outputs(item('chickenchunks:chunk_loader')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Spot Loader +mods.minecraft.crafting.removeByOutput(item('chickenchunks:chunk_loader', 1)) +packer.recipeBuilder() + .inputs(item('chickenchunks:chunk_loader')) + .outputs(item('chickenchunks:chunk_loader', 1) * 9) + .duration(20) + .EUt(30) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/CompactMachines.groovy b/overrides/groovy/postInit/normal/CompactMachines.groovy new file mode 100644 index 00000000..bbae40c1 --- /dev/null +++ b/overrides/groovy/postInit/normal/CompactMachines.groovy @@ -0,0 +1,182 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") +def packer = RecipeMap.getByName("packer") + +mods.jei.category.hideCategory('compactmachines3.MultiblockMiniaturization') +mods.minecraft.crafting.removeByOutput(item('compactmachines3:fieldprojector')) +mods.jei.ingredient.hide(item('compactmachines3:fieldprojector')) + + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Personal Shrinking Device +mods.minecraft.crafting.remove(resource('compactmachines3:psd')) +mods.minecraft.crafting.shapedBuilder() + .output(item('compactmachines3:psd')) + .shape([ + [null, mi('cover.screen'), null], + [mi('emitter.lv'), item('minecraft:book'), mi('emitter.lv')], + [null, ore('circuitLv'), null] + ]) + .register() + +// Tunnel +assembler.recipeBuilder() + .inputs( + mi('cover.energy.detector'), + mi('cover.item.detector'), + mi('cover.fluid.detector') + ) + .outputs(item('compactmachines3:tunneltool') * 4) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Redstone Tunnel +assembler.recipeBuilder() + .inputs( + mi('cover.activity.detector'), + mi('component.resistor') + ) + .outputs(item('compactmachines3:redstonetunneltool') * 4) + .duration(100) + .EUt(30) + .buildAndRegister() + + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Compact Machine Wall +mods.minecraft.crafting.shapedBuilder() + .output(item('compactmachines3:wallbreakable') * 8) + .shape([ + [mi('frameSteel'), mi('frameSteel'), mi('frameSteel')], + [mi('frameSteel'), mi('sensor.lv'), mi('frameSteel')], + [mi('frameSteel'), mi('frameSteel'), mi('frameSteel')] + ]) + .register() + +// Tiny Compact Machine +packer.recipeBuilder() + .inputs( + item('compactmachines3:wallbreakable') * 8, + item('gtexpert:meta_item_1', 17) + ) + .outputs(item('compactmachines3:machine', 0)) + .duration(200) + .EUt(7) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('compactmachines3:machine', 0)) + .outputs( + item('compactmachines3:wallbreakable') * 8, + item('gtexpert:meta_item_1', 17) + ) + .duration(10) + .EUt(7) + .buildAndRegister() + +// Small Compact Machine +packer.recipeBuilder() + .inputs( + item('compactmachines3:wallbreakable') * 16, + mi('field.generator.lv') + ) + .outputs(item('compactmachines3:machine', 1)) + .duration(200) + .EUt(30) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('compactmachines3:machine', 1)) + .outputs( + item('compactmachines3:wallbreakable') * 16, + mi('field.generator.lv') + ) + .duration(10) + .EUt(7) + .buildAndRegister() + +// Normal Compact Machine +packer.recipeBuilder() + .inputs( + item('compactmachines3:wallbreakable') * 24, + mi('field.generator.mv') + ) + .outputs(item('compactmachines3:machine', 2)) + .duration(200) + .EUt(120) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('compactmachines3:machine', 2)) + .outputs( + item('compactmachines3:wallbreakable') * 24, + mi('field.generator.mv') + ) + .duration(10) + .EUt(7) + .buildAndRegister() + +// Large Compact Machine +packer.recipeBuilder() + .inputs( + item('compactmachines3:wallbreakable') * 32, + mi('field.generator.hv') + ) + .outputs(item('compactmachines3:machine', 3)) + .duration(200) + .EUt(480) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('compactmachines3:machine', 3)) + .outputs( + item('compactmachines3:wallbreakable') * 32, + mi('field.generator.hv') + ) + .duration(10) + .EUt(7) + .buildAndRegister() + +// Giant Compact Machine +packer.recipeBuilder() + .inputs( + item('compactmachines3:wallbreakable') * 40, + mi('field.generator.ev') + ) + .outputs(item('compactmachines3:machine', 4)) + .duration(200) + .EUt(1920) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('compactmachines3:machine', 4)) + .outputs( + item('compactmachines3:wallbreakable') * 40, + mi('field.generator.ev') + ) + .duration(10) + .EUt(7) + .buildAndRegister() + +// Maximum Compact Machine +packer.recipeBuilder() + .inputs( + item('compactmachines3:wallbreakable') * 48, + mi('field.generator.iv') + ) + .outputs(item('compactmachines3:machine', 5)) + .duration(200) + .EUt(7680) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('compactmachines3:machine', 5)) + .outputs( + item('compactmachines3:wallbreakable') * 48, + mi('field.generator.iv') + ) + .duration(10) + .EUt(7) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/DankNull.groovy b/overrides/groovy/postInit/normal/DankNull.groovy new file mode 100644 index 00000000..de0eb9a6 --- /dev/null +++ b/overrides/groovy/postInit/normal/DankNull.groovy @@ -0,0 +1,133 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Panels +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_panel_0')) +mods.jei.ingredient.hide(item('danknull:dank_null_panel_0')) +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_panel_1')) +mods.jei.ingredient.hide(item('danknull:dank_null_panel_1')) +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_panel_2')) +mods.jei.ingredient.hide(item('danknull:dank_null_panel_2')) +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_panel_3')) +mods.jei.ingredient.hide(item('danknull:dank_null_panel_3')) +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_panel_4')) +mods.jei.ingredient.hide(item('danknull:dank_null_panel_4')) +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_panel_5')) +mods.jei.ingredient.hide(item('danknull:dank_null_panel_5')) + + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// null Mk1 +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_0')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('danknull:dank_null_0')) + .input(item('danknull:dank_null_0')) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('danknull:dank_null_0')) + .shape([ + [item('minecraft:dye', 1), ore('blockObsidian'), item('minecraft:dye', 1)], + [ore('blockObsidian'), null, ore('blockObsidian')], + [item('minecraft:dye', 1), ore('blockObsidian'), item('minecraft:dye', 1)] + ]) + .register() + +// null mk2 +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_1')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('danknull:dank_null_1')) + .input(item('danknull:dank_null_1')) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateLapis', 4), + item('danknull:dank_null_0') + ) + .fluidInputs(fluid('glass') * 144) + .outputs(item('danknull:dank_null_1')) + .duration(200) + .EUt(16) + .buildAndRegister() + +// null mk3 +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_2')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('danknull:dank_null_2')) + .input(item('danknull:dank_null_2')) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateTinAlloy', 4), + item('danknull:dank_null_1') + ) + .fluidInputs(fluid('glass') * 144) + .outputs(item('danknull:dank_null_2')) + .duration(200) + .EUt(64) + .buildAndRegister() + +// null mk4 +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_3')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('danknull:dank_null_3')) + .input(item('danknull:dank_null_3')) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateRoseGold', 4), + item('danknull:dank_null_2') + ) + .fluidInputs(fluid('glass') * 144) + .outputs(item('danknull:dank_null_3')) + .duration(200) + .EUt(256) + .buildAndRegister() + +// null mk5 +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_4')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('danknull:dank_null_4')) + .input(item('danknull:dank_null_4')) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateDiamond', 4), + item('danknull:dank_null_3') + ) + .fluidInputs(fluid('glass') * 144) + .outputs(item('danknull:dank_null_4')) + .duration(200) + .EUt(1920) + .buildAndRegister() + +// null mk6 +mods.minecraft.crafting.removeByOutput(item('danknull:dank_null_5')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('danknull:dank_null_5')) + .input(item('danknull:dank_null_5')) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateEmerald', 4), + item('danknull:dank_null_4') + ) + .fluidInputs(fluid('glass') * 144) + .outputs(item('danknull:dank_null_5')) + .duration(200) + .EUt(7680) + .buildAndRegister() + +// Creative +mods.jei.ingredient.hide(item('danknull:dank_null_6')) diff --git a/overrides/groovy/postInit/normal/DraconicEvolution.groovy b/overrides/groovy/postInit/normal/DraconicEvolution.groovy new file mode 100644 index 00000000..c365c3ec --- /dev/null +++ b/overrides/groovy/postInit/normal/DraconicEvolution.groovy @@ -0,0 +1 @@ +mods.jei.category.hideCategory('DraconicEvolution.Fusion') diff --git a/overrides/groovy/postInit/normal/EIOForestry.groovy b/overrides/groovy/postInit/normal/EIOForestry.groovy new file mode 100644 index 00000000..1f9e904e --- /dev/null +++ b/overrides/groovy/postInit/normal/EIOForestry.groovy @@ -0,0 +1,19 @@ +if (!isLoaded('enderiointegrationforestry')) return + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// OreDict: craftPropolis +mods.minecraft.ore_dict.add('craftPropolis', item('forestry:propolis', 0)) +mods.minecraft.ore_dict.add('craftPropolis', item('forestry:propolis', 1)) +mods.minecraft.ore_dict.add('craftPropolis', item('forestry:propolis', 3)) + +// Fluid Storage Housing +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_species_item_filter')) + .shape([ + [null, null, null], + [ore('craftPropolis'), item('enderio:item_advanced_item_filter'), ore('craftPropolis')], + [null, null, null] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/EZStorage.groovy b/overrides/groovy/postInit/normal/EZStorage.groovy new file mode 100644 index 00000000..44c305c6 --- /dev/null +++ b/overrides/groovy/postInit/normal/EZStorage.groovy @@ -0,0 +1,238 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + +// ######################################## +// Blocks +// ######################################## +// Blank Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:blank_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:blank_box')) + .shape([ + [ore('logWood'), ore('craftingToolHardHammer'), ore('logWood')], + [mi('plateBronze'), ore('logWood'), mi('plateBronze')], + [ore('logWood'), mi('plateBronze'), ore('logWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('plateBronze', 2), ore('logWood') * 3) + .outputs(item('ezstorage:blank_box')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Storage Core +mods.minecraft.crafting.removeByOutput(item('ezstorage:storage_core')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:storage_core')) + .shape([ + [ore('logWood'), ore('craftingToolHardHammer'), ore('logWood')], + [mi('plateIron'), item('ezstorage:storage_box'), mi('plateIron')], + [ore('logWood'), mi('plateIron'), ore('logWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(item('ezstorage:storage_box'), ore('logWood') * 2, mi('plateIron', 2)) + .outputs(item('ezstorage:storage_core')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Storage Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:storage_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:storage_box')) + .shape([ + [ore('logWood'), ore('craftingToolHardHammer'), ore('logWood')], + [item('ezstorage:blank_box'), mi('crate.wood'), item('ezstorage:blank_box')], + [ore('logWood'), item('ezstorage:blank_box'), ore('logWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('crate.wood'), ore('logWood') * 2, item('ezstorage:blank_box') * 3) + .outputs(item('ezstorage:storage_box')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Condensed Storage Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:condensed_storage_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:condensed_storage_box')) + .shape([ + [mi('plateIron'), ore('craftingToolHardHammer'), mi('plateIron')], + [mi('plateIron'), mi('crate.bronze'), mi('plateIron')], + [mi('plateIron'), item('ezstorage:storage_box'), mi('plateIron')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('crate.bronze'), item('ezstorage:storage_box'), mi('plateIron', 3)) + .outputs(item('ezstorage:condensed_storage_box')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Super Storage Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:super_storage_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:super_storage_box')) + .shape([ + [mi('plateGold'), ore('craftingToolHardHammer'), mi('plateGold')], + [mi('plateGold'), mi('crate.steel'), mi('plateGold')], + [mi('plateGold'), item('ezstorage:condensed_storage_box'), mi('plateGold')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('crate.steel'), item('ezstorage:condensed_storage_box'), mi('plateGold', 3)) + .outputs(item('ezstorage:super_storage_box')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Ultra Storage Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:ultra_storage_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:ultra_storage_box')) + .shape([ + [mi('plateAluminium'), ore('craftingToolHardHammer'), mi('plateAluminium')], + [mi('plateAluminium'), mi('crate.aluminium'), mi('plateAluminium')], + [mi('plateAluminium'), item('ezstorage:super_storage_box'), mi('plateAluminium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('crate.aluminium'), item('ezstorage:super_storage_box'), mi('plateAluminium', 3)) + .outputs(item('ezstorage:ultra_storage_box')) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Hyper Storage Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:hyper_storage_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:hyper_storage_box')) + .shape([ + [mi('plateStainlessSteel'), ore('craftingToolHardHammer'), mi('plateStainlessSteel')], + [mi('plateStainlessSteel'), mi('crate.stainless_steel'), mi('plateStainlessSteel')], + [mi('plateStainlessSteel'), item('ezstorage:ultra_storage_box'), mi('plateStainlessSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('crate.stainless_steel'), item('ezstorage:ultra_storage_box'), mi('plateStainlessSteel', 3)) + .outputs(item('ezstorage:hyper_storage_box')) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Input Port +mods.minecraft.crafting.removeByOutput(item('ezstorage:input_port')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:input_port')) + .shape([ + [mi('plateSteel'), ore('craftingToolWrench'), mi('plateSteel')], + [item('minecraft:hopper'), item('ezstorage:storage_core'), item('minecraft:hopper')], + [mi('plateSteel'), ore('craftingPiston'), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(ore('craftingPiston'), item('ezstorage:storage_core'), mi('plateSteel', 2)) + .outputs(item('ezstorage:input_port')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Output Port +mods.minecraft.crafting.removeByOutput(item('ezstorage:output_port')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:output_port')) + .shape([ + [mi('plateSteel'), item('minecraft:dropper'), mi('plateSteel')], + [item('minecraft:dropper'), item('ezstorage:input_port'), item('minecraft:dropper')], + [mi('plateSteel'), ore('craftingToolWrench'), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(item('minecraft:dropper'), item('ezstorage:input_port'), mi('plateSteel', 2)) + .outputs(item('ezstorage:output_port')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Extract Port +mods.minecraft.crafting.removeByOutput(item('ezstorage:extract_port')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:extract_port')) + .shape([ + [item('minecraft:iron_bars'), item('minecraft:comparator'), item('minecraft:iron_bars')], + [item('minecraft:hopper'), item('ezstorage:input_port'), item('minecraft:hopper')], + [item('minecraft:iron_bars'), item('minecraft:comparator'), item('minecraft:iron_bars')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(item('minecraft:comparator'), item('minecraft:hopper'), item('ezstorage:input_port'), item('minecraft:iron_bars') * 2) + .outputs(item('ezstorage:extract_port')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Crafting Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:crafting_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:crafting_box')) + .shape([ + [mi('plateSteel'), ore('craftingToolHardHammer'), mi('plateSteel')], + [mi('workbench'), item('ezstorage:blank_box'), mi('workbench')], + [mi('plateSteel'), ore('craftingToolWrench'), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:crafting_box')) + .shape([ + [mi('plateSteel'), ore('craftingToolWrench'), mi('plateSteel')], + [mi('workbench'), item('ezstorage:blank_box'), mi('workbench')], + [mi('plateSteel'), ore('craftingToolHardHammer'), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('workbench'), item('ezstorage:blank_box'), mi('plateSteel', 2)) + .outputs(item('ezstorage:crafting_box')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Search Box +mods.minecraft.crafting.removeByOutput(item('ezstorage:search_box')) +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:search_box')) + .shape([ + [mi('plateSteel'), ore('craftingToolWrench'), mi('plateSteel')], + [item('minecraft:compass'), item('ezstorage:blank_box'), item('minecraft:compass')], + [mi('plateSteel'), ore('craftingToolHardHammer'), mi('plateSteel')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('ezstorage:search_box')) + .shape([ + [mi('plateSteel'), ore('craftingToolHardHammer'), mi('plateSteel')], + [item('minecraft:compass'), item('ezstorage:blank_box'), item('minecraft:compass')], + [mi('plateSteel'), ore('craftingToolWrench'), mi('plateSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(item('minecraft:compass'), item('ezstorage:blank_box'), mi('plateSteel', 2)) + .outputs(item('ezstorage:search_box')) + .duration(100) + .EUt(30) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/Elevator.groovy b/overrides/groovy/postInit/normal/Elevator.groovy new file mode 100644 index 00000000..4a959b1e --- /dev/null +++ b/overrides/groovy/postInit/normal/Elevator.groovy @@ -0,0 +1,52 @@ +import gregtech.api.recipes.RecipeMap + +def chemical_bath = RecipeMap.getByName("chemical_bath") + +// ######################################## +// Blocks +// ######################################## +def elevators = [ + item('elevatorid:elevator_white'), + item('elevatorid:elevator_orange'), + item('elevatorid:elevator_magenta'), + item('elevatorid:elevator_light_blue'), + item('elevatorid:elevator_yellow'), + item('elevatorid:elevator_lime'), + item('elevatorid:elevator_pink'), + item('elevatorid:elevator_gray'), + item('elevatorid:elevator_silver'), + item('elevatorid:elevator_cyan'), + item('elevatorid:elevator_purple'), + item('elevatorid:elevator_blue'), + item('elevatorid:elevator_brown'), + item('elevatorid:elevator_green'), + item('elevatorid:elevator_red'), + item('elevatorid:elevator_black') +] +elevators.each { elevator -> + mods.minecraft.crafting.removeByOutput(elevator) +} +mods.minecraft.crafting.shapedBuilder() + .output(item('elevatorid:elevator_black')) + .shape([ + [mi('plateSteel'), mi('plateSteel'), mi('plateSteel')], + [mi('gearSmallSteel'), mi('frameSteel'), mi('gearSmallSteel')], + [mi('plateSteel'), mi('plateSteel'), mi('plateSteel')] + ]) + .register() +chemical_bath.recipeBuilder() + .inputs(ore('blockElevator')) + .fluidInputs(fluid('chlorine') * 50) + .outputs(item('elevatorid:elevator_black')) + .duration(400) + .EUt(7) + .buildAndRegister() +elevators.eachWithIndex { elevator, i -> + chemical_bath.recipeBuilder() + .inputs(ore('blockElevator')) + .fluidInputs(colorLiquid[i] * 18) + .outputs(elevator) + .duration(20) + .EUt(7) + .buildAndRegister() +} diff --git a/overrides/groovy/postInit/normal/EnderIO/A_Machines.groovy b/overrides/groovy/postInit/normal/EnderIO/A_Machines.groovy new file mode 100644 index 00000000..2d82bca2 --- /dev/null +++ b/overrides/groovy/postInit/normal/EnderIO/A_Machines.groovy @@ -0,0 +1,515 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + + +// Basic Capacitor Bank +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_cap_bank', 1)) + .shape([ + [item('enderio:item_basic_capacitor'), ore('circuitHv'), item('enderio:item_basic_capacitor')], + [mi('plateElectricalSteel'), ore('itemSimpleMachineChassi'), mi('plateElectricalSteel')], + [item('enderio:item_basic_capacitor'), ore('batteryHv'), item('enderio:item_basic_capacitor')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('enderio:item_basic_capacitor') * 2, + mi('plateElectricalSteel'), + ore('circuitHv'), + ore('itemSimpleMachineChassi') + ) + .outputs(item('enderio:block_cap_bank', 1)) + .duration(20) + .EUt(7680) + .buildAndRegister() + +// Capacitor Bank +mods.minecraft.crafting.removeByOutput(item('enderio:block_cap_bank', 2)) +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_cap_bank', 2)) + .shape([ + [item('enderio:item_basic_capacitor', 1), ore('circuitEv'), item('enderio:item_basic_capacitor', 1)], + [mi('plateEnergeticAlloy'), ore('itemMachineChassi'), mi('plateEnergeticAlloy')], + [item('enderio:block_cap_bank', 1), ore('batteryEv'), item('enderio:block_cap_bank', 1)] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('enderio:block_cap_bank', 1) * 2, + mi('plateEnergeticAlloy'), + item('enderio:item_basic_capacitor', 1), + ore('circuitEv'), + ore('batteryEv'), + ore('itemMachineChassi') + ) + .outputs(item('enderio:block_cap_bank', 2)) + .duration(20) + .EUt(7680) + .buildAndRegister() + +// Vibrant Capacitor Bank +mods.minecraft.crafting.removeByOutput(item('enderio:block_cap_bank', 3)) +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_cap_bank', 3)) + .shape([ + [item('enderio:item_basic_capacitor', 2), ore('circuitIv'), item('enderio:item_basic_capacitor', 2)], + [ore('itemVibrantCrystal'), ore('itemEnhancedMachineChassi'), ore('itemVibrantCrystal')], + [item('enderio:block_cap_bank', 2), ore('batteryIv'), item('enderio:block_cap_bank', 2)] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('enderio:block_cap_bank', 2) * 2, + ore('itemVibrantCrystal'), + item('enderio:item_basic_capacitor', 2), + ore('circuitIv'), + ore('batteryIv'), + ore('itemEnhancedMachineChassi') + ) + .outputs(item('enderio:block_cap_bank', 3)) + .duration(20) + .EUt(7680) + .buildAndRegister() + +// Block Detector +mods.jei.ingredient.hide(item('enderio:block_detector_block')) + +// Block Detector (Silent) +mods.jei.ingredient.hide(item('enderio:block_detector_block_silent')) + +// Energy Gauge +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_gauge')) + .shape([ + [mi('plateIron'), null, mi('plateIron')], + [mi('plateElectricalSteel'), item('enderio:item_conduit_probe'), mi('plateElectricalSteel')], + [mi('plateIron'), null, mi('plateIron')] + ]) + .register() + +// Power Monitor +mods.jei.ingredient.hide(item('enderio:block_power_monitor')) + +// Graphical Power Monitor +mods.jei.ingredient.hide(item('enderio:block_advanced_power_monitor')) + +// Simple Powered Furnace +mods.jei.ingredient.hide(item('enderio:block_simple_furnace')) + +// Simple Alloy Smelter +mods.jei.ingredient.hide(item('enderio:block_simple_alloy_smelter')) + +// Alloy Smelter +mods.jei.ingredient.hide(item('enderio:block_alloy_smelter')) + +// Enhanced Alloy Smelter +mods.jei.ingredient.hide(item('enderio:block_enhanced_alloy_smelter')) + +// Buffers +mods.jei.ingredient.hide(item('enderio:block_buffer', 32767)) + +// Enchanter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_enchanter')) + .shape([ + [ore('gemDiamond'), item('minecraft:book'), ore('gemDiamond')], + [mi('plateDarkSteel'), mi('plateDarkSteel'), mi('plateDarkSteel')], + [null, mi('plateDarkSteel'), null] + ]) + .register() + +// Farming Station +mods.jei.ingredient.hide(item('enderio:block_farm_station')) + +// Combustion Generator +mods.jei.ingredient.hide(item('enderio:block_combustion_generator')) + +// Enhanced Combustion Generator +mods.jei.ingredient.hide(item('enderio:block_enhanced_combustion_generator')) + +// Simple Stirling Generator +mods.jei.ingredient.hide(item('enderio:block_simple_stirling_generator')) + +// Stirling Generator +mods.jei.ingredient.hide(item('enderio:block_stirling_generator')) + +// Zombie Generator +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_zombie_generator')) + .shape([ + [mi('plateDarkSteel'), ore('circuitHv'), mi('plateDarkSteel')], + [ore('fusedQuartz'), ore('itemMachineChassi'), ore('fusedQuartz')], + [mi('electric.motor.hv'), ore('skullZombieElectrode'), mi('electric.motor.hv')] + ]) + .register() + +// Frank'n'Zombie Generator +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_franken_zombie_generator')) + .shape([ + [mi('plateSoularium'), ore('circuitEv'), mi('plateSoularium')], + [ore('fusedQuartz'), ore('itemEnhancedMachineChassi'), ore('fusedQuartz')], + [mi('electric.motor.ev'), ore('skullZombieFrankenstein'), mi('electric.motor.ev')] + ]) + .register() + +// Ender Generator +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_ender_generator')) + .shape([ + [mi('plateEndSteel'), ore('circuitIv'), mi('plateEndSteel')], + [ore('fusedQuartz'), ore('itemEndSteelMachineChassi'), ore('fusedQuartz')], + [mi('electric.motor.iv'), ore('skullSentientEnder'), mi('electric.motor.iv')] + ]) + .register() + +// Killer Joe +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_killer_joe')) + .shape([ + [mi('plateSoularium'), ore('circuitEv'), mi('plateSoularium')], + [ore('fusedQuartz'), ore('itemEnhancedMachineChassi'), ore('fusedQuartz')], + [mi('electric.motor.ev'), ore('skullZombieController'), mi('electric.motor.ev')] + ]) + .register() + +// Lava Heat Exchanger +mods.jei.ingredient.hide(item('enderio:block_lava_generator')) + +// Electric Light +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_electric_light')) + .shape([ + [ore('blockGlassHardened'), ore('blockGlassHardened'), ore('blockGlassHardened')], + [mi('plateSilicon'), item('minecraft:glowstone_dust'), mi('plateSilicon')], + [mi('plateSilicon'), item('enderio:item_basic_capacitor'), mi('plateSilicon')] + ]) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:block_electric_light')) + .input(item('enderio:block_electric_light', 1), ore('craftingRedstoneTorch')) + .register() + +// Electric Light (Inverted) +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:block_electric_light', 1)) + .input(item('enderio:block_electric_light'), ore('craftingRedstoneTorch')) + .register() + +// Light +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_electric_light', 2)) + .shape([ + [null, null, null], + [item('enderio:block_fused_glass', 32767), item('enderio:block_fused_glass', 32767), item('enderio:block_fused_glass', 32767)], + [mi('plateSilicon'), ore('blockGlowstone'), mi('plateSilicon')] + ]) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:block_electric_light', 2)) + .input(item('enderio:block_electric_light', 3), ore('craftingRedstoneTorch')) + .register() + +// Light (Inverted) +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:block_electric_light', 3)) + .input(item('enderio:block_electric_light', 2), ore('craftingRedstoneTorch')) + .register() + +// Wireless Light +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:block_electric_light', 4)) + .input(item('enderio:block_electric_light'), item('enderio:item_material', 43)) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:block_electric_light', 4)) + .input(item('enderio:block_electric_light', 5), ore('craftingRedstoneTorch')) + .register() + +// Wireless Light (Inverted) +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:block_electric_light', 5)) + .input(item('enderio:block_electric_light', 4), ore('craftingRedstoneTorch')) + .register() + +// Attractor Obelisk +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_attractor_obelisk')) + .shape([ + [null, ore('itemAttractorCrystal'), null], + [mi('plateEnergeticAlloy'), mi('gearWood'), mi('plateEnergeticAlloy')], + [mi('plateSoularium'), ore('itemSoulMachineChassi'), mi('plateSoularium')] + ]) + .register() + +// Aversion Obelisk +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_aversion_obelisk')) + .shape([ + [null, item('enderio:block_enderman_skull', 2), null], + [mi('plateEnergeticAlloy'), mi('gearEnergeticAlloy'), mi('plateEnergeticAlloy')], + [mi('plateSoularium'), ore('itemSoulMachineChassi'), mi('plateSoularium')] + ]) + .register() + +// Inhibitor Obelisk +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_inhibitor_obelisk')) + .shape([ + [null, ore('itemEnderCrystal'), null], + [mi('plateEnergeticAlloy'), mi('gearElectricalSteel'), mi('plateEnergeticAlloy')], + [mi('plateSoularium'), ore('itemSoulMachineChassi'), mi('plateSoularium')] + ]) + .register() + +// Relocator Obelisk +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_relocator_obelisk')) + .shape([ + [null, ore('blockPrismarine'), null], + [ore('blockPrismarine'), item('enderio:block_aversion_obelisk'), ore('blockPrismarine')], + [null, mi('gearVibrantAlloy'), null] + ]) + .register() + +// Weather Obelisk +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_weather_obelisk')) + .shape([ + [null, ore('itemWeatherCrystal'), null], + [mi('plateEnergeticAlloy'), item('enderio:item_basic_capacitor', 2), mi('plateEnergeticAlloy')], + [mi('plateSoularium'), ore('itemSoulMachineChassi'), mi('plateSoularium')] + ]) + .register() + +// Experience Obelisk +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_experience_obelisk')) + .shape([ + [null, item('enderio:item_xp_transfer'), null], + [mi('plateEnergeticAlloy'), mi('super_tank.lv'), mi('plateEnergeticAlloy')], + [mi('plateSoularium'), ore('itemSoulMachineChassi'), mi('plateSoularium')] + ]) + .register() + +// Painting Machine +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_painter')) + .shape([ + [mi('sensor.hv'), ore('circuitHv'), mi('sensor.hv')], + [mi('gearElectricalSteel'), ore('itemMachineChassi'), mi('gearElectricalSteel')], + [mi('plateElectricalSteel'), mi('plateElectricalSteel'), mi('plateElectricalSteel')] + ]) + .register() + +// Endervoir +mods.jei.ingredient.hide(item('enderio:block_reservoir')) + +// Omnivoir +mods.jei.ingredient.hide(item('enderio:block_omni_reservoir')) + +// Simple SAG Mill +mods.jei.ingredient.hide(item('enderio:block_simple_sag_mill')) + +// SAG Mill +mods.jei.ingredient.hide(item('enderio:block_sag_mill')) + +// Enhanced SAG Mill +mods.jei.ingredient.hide(item('enderio:block_enhanced_sag_mill')) + +// Slice'N'Splice +mods.jei.ingredient.hide(item('enderio:block_slice_and_splice')) + +// Photovoltaic Cells +mods.jei.ingredient.hide(item('enderio:block_solar_panel', 32767)) + +// Soul Binder +mods.jei.ingredient.hide(item('enderio:block_soul_binder')) + +// Powered Spawner +mods.jei.ingredient.hide(item('enderio:block_powered_spawner')) +mods.jei.ingredient.hide(item('enderio:block_creative_spawner')) + +// The Vat +mods.jei.ingredient.hide(item('enderio:block_vat')) + +// The Enhanced Vat +mods.jei.ingredient.hide(item('enderio:block_enhanced_vat')) + +// Simple Wired Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_simple_wired_charger')) + .shape([ + [mi('plateStone'), mi('plateSteel'), mi('plateStone')], + [mi('plateStone'), item('enderio:item_material'), mi('plateStone')], + [mi('gearStone'), mi('plateSteel'), mi('gearStone')] + ]) + .register() + +// Wired Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_wired_charger')) + .shape([ + [mi('plateEnergeticAlloy'), mi('plateDarkSteel'), mi('plateEnergeticAlloy')], + [mi('emitter.hv'), ore('itemMachineChassi'), mi('sensor.hv')], + [mi('gearEnergeticAlloy'), mi('plateDarkSteel'), mi('gearEnergeticAlloy')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_wired_charger')) + .shape([ + [mi('plateDoubleEnergeticAlloy'), mi('plateDarkSteel'), mi('plateDoubleEnergeticAlloy')], + [mi('emitter.hv'), ore('itemMachineChassi'), mi('sensor.hv')], + [mi('gearEnergeticAlloy'), item('enderio:block_simple_wired_charger'), mi('gearEnergeticAlloy')] + ]) + .register() + +// Enhanced Wired Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_enhanced_wired_charger')) + .shape([ + [mi('plateVibrantAlloy'), mi('plateEndSteel'), mi('plateVibrantAlloy')], + [mi('emitter.ev'), ore('itemEnhancedMachineChassi'), mi('sensor.ev')], + [mi('gearVibrantAlloy'), mi('plateEndSteel'), mi('gearVibrantAlloy')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_enhanced_wired_charger')) + .shape([ + [mi('plateDoubleVibrantAlloy'), mi('plateEndSteel'), mi('plateDoubleVibrantAlloy')], + [mi('emitter.ev'), ore('itemEnhancedMachineChassi'), mi('sensor.ev')], + [mi('gearVibrantAlloy'), item('enderio:block_wired_charger'), mi('gearVibrantAlloy')] + ]) + .register() + +// Wireless Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_wireless_charger')) + .shape([ + [mi('plateElectricalSteel'), mi('plateElectricalSteel'), mi('plateElectricalSteel')], + [mi('plateElectricalSteel'), ore('skullEnderResonator'), mi('plateElectricalSteel')], + [mi('plateElectricalSteel'), item('enderio:item_capacitor_silver'), mi('plateElectricalSteel')] + ]) + .register() + +// Wireless Charging Antenna +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_normal_wireless_charger')) + .shape([ + [ore('itemWirelessDish'), item('enderio:block_wireless_charger'), ore('itemWirelessDish')], + [ore('itemWirelessDish'), ore('itemMachineChassi'), ore('itemWirelessDish')], + [null, item('enderio:item_capacitor_silver'), null] + ]) + .register() + +// Enhanced Wireless Charging Antenna +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_enhanced_wireless_charger')) + .shape([ + [ore('itemWirelessDish'), item('enderio:block_wireless_charger'), ore('itemWirelessDish')], + [ore('itemWirelessDish'), ore('itemMachineChassi'), ore('itemWirelessDish')], + [null, item('enderio:item_capacitor_vivid'), null] + ]) + .register() + +// Wireless Charging Antenna Extension +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_wireless_charger_extension')) + .shape([ + [null, ore('itemWirelessDish'), null], + [ore('itemWirelessDish'), mi('plateEndSteel'), ore('itemWirelessDish')], + [null, ore('itemWirelessDish'), null] + ]) + .register() + +// Fluid Tanks + +// Dimensional Transceiver +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_transceiver')) + .shape([ + [mi('sensor.iv'), ore('skullEnderResonator'), mi('sensor.iv')], + [item('enderio:block_fused_quartz', 32767), item('enderio:block_travel_anchor'), item('enderio:block_fused_quartz', 32767)], + [ore('itemEnderCrystal'), item('enderio:item_capacitor_vivid'), ore('itemEnderCrystal')] + ]) + .register() + +// Vacuum Chest +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_vacuum_chest')) + .shape([ + [mi('plateConstructionAlloy'), mi('plateConstructionAlloy'), mi('plateConstructionAlloy')], + [mi('plateConstructionAlloy'), mi('item_collector.hv'), mi('plateConstructionAlloy')], + [mi('plateConstructionAlloy'), ore('itemEnderCrystal'), mi('plateConstructionAlloy')] + ]) + .register() + +// XP Vacuum +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_xp_vacuum')) + .shape([ + [mi('plateConstructionAlloy'), mi('plateConstructionAlloy'), mi('plateConstructionAlloy')], + [mi('plateConstructionAlloy'), item('enderio:item_xp_transfer'), mi('plateConstructionAlloy')], + [mi('plateConstructionAlloy'), ore('itemPulsatingCrystal'), mi('plateConstructionAlloy')] + ]) + .register() + +// The Niard +mods.jei.ingredient.hide(item('enderio:block_niard')) + +// Travel Anchor +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_travel_anchor')) + .shape([ + [mi('plateElectricalSteel'), ore('blockElevator'), mi('plateElectricalSteel')], + [ore('itemPulsatingCrystal'), ore('itemEnhancedMachineChassi'), ore('itemPulsatingCrystal')], + [mi('plateElectricalSteel'), mi('field.generator.hv'), mi('plateElectricalSteel')] + ]) + .register() + +// Telepad Block +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_tele_pad')) + .shape([ + [item('enderio:block_fused_quartz', 32767), mi('plateVibrantAlloy'), item('enderio:block_fused_quartz', 32767)], + [mi('plateDarkSteel'), item('enderio:block_travel_anchor'), mi('plateDarkSteel')], + [mi('plateDarkSteel'), item('enderio:item_capacitor_silver'), mi('plateDarkSteel')] + ]) + .register() + +// Dialing Device +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_dialing_device')) + .shape([ + [null, mi('plateElectricalSteel'), null], + [null, ore('skullEnderResonator'), null], + [mi('plateDarkSteel'), item('enderio:item_capacitor_vivid'), mi('plateDarkSteel')] + ]) + .register() + +// Impulse Hopper +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_impulse_hopper')) + .shape([ + [mi('plateElectricalSteel'), ore('blockHopper'), mi('plateElectricalSteel')], + [mi('gearEnergeticAlloy'), ore('itemMachineChassi'), mi('gearEnergeticAlloy')], + [mi('plateElectricalSteel'), mi('plateRedstoneAlloy'), mi('plateElectricalSteel')] + ]) + .register() + +// Simple Crafter +mods.jei.ingredient.hide(item('enderio:block_simple_crafter')) + +// Crafter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:block_crafter')) + .shape([ + [mi('plateSilicon'), mi('plateSilicon'), mi('plateSilicon')], + [mi('plateConstructionAlloy'), ore('itemEnhancedMachineChassi'), mi('plateConstructionAlloy')], + [mi('gearVibrantAlloy'), mi('workbench'), mi('gearVibrantAlloy')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/EnderIO/B_Items.groovy b/overrides/groovy/postInit/normal/EnderIO/B_Items.groovy new file mode 100644 index 00000000..08f99fdc --- /dev/null +++ b/overrides/groovy/postInit/normal/EnderIO/B_Items.groovy @@ -0,0 +1,659 @@ +import gregtech.api.recipes.RecipeMap + +def alloy_smelter = RecipeMap.getByName("alloy_smelter") + + +// Conduit Facade +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_conduit_facade')) + .shape([ + [ore('itemConduitBinder'), ore('itemConduitBinder'), ore('itemConduitBinder')], + [ore('itemConduitBinder'), null, ore('itemConduitBinder')], + [ore('itemConduitBinder'), ore('itemConduitBinder'), ore('itemConduitBinder')] + ]) + .register() + +// Hardened Conduit Facade +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_conduit_facade', 1)) + .shape([ + [null, mi('dustObsidian'), null], + [mi('dustObsidian'), item('enderio:item_conduit_facade'), mi('dustObsidian')], + [null, mi('dustObsidian'), null] + ]) + .register() + +// Transparent Conduit Facade +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_conduit_facade', 2)) + .shape([ + [ore('itemConduitBinder'), ore('itemConduitBinder'), ore('itemConduitBinder')], + [ore('itemConduitBinder'), item('enderio:block_fused_glass', 32767), ore('itemConduitBinder')], + [ore('itemConduitBinder'), ore('itemConduitBinder'), ore('itemConduitBinder')] + ]) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_conduit_facade', 2)) + .input(item('enderio:item_conduit_facade'), item('enderio:block_fused_glass', 32767)) + .register() + +// Transparent Hardened Conduit +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_conduit_facade', 3)) + .input(item('enderio:item_conduit_facade', 1), item('enderio:block_fused_glass', 32767)) + .register() + +// Conduit Probe +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_conduit_probe')) + .shape([ + [mi('nuggetElectricalSteel'), null, mi('nuggetElectricalSteel')], + [mi('plateConstructionAlloy'), item('enderio:item_yeta_wrench'), mi('plateConstructionAlloy')], + [mi('plateConstructionAlloy'), item('enderio:item_material', 20), mi('plateConstructionAlloy')] + ]) + .register() + +// Experience Rod +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_xp_transfer')) + .shape([ + [null, null, ore('itemVibrantCrystal')], + [null, mi('stickVibrantAlloy'), null], + [mi('stickVibrantAlloy'), null, null] + ]) + .register() + +// Cold Fire Igniter +mods.jei.ingredient.hide(item('enderio:item_cold_fire_igniter')) + +// Coordinate Selector +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_coord_selector')) + .shape([ + [mi('emitter.hv'), ore('circuitHv'), mi('plateElectricalSteel')], + [null, mi('gearVibrantAlloy'), mi('plateElectricalSteel')], + [null, null, mi('plateElectricalSteel')] + ]) + .register() + +// Staff of Traveling +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_travel_staff')) + .shape([ + [null, null, ore('itemEnderCrystal')], + [null, mi('stickDarkSteel'), null], + [mi('stickDarkSteel'), null, null] + ]) + .register() + +// Rod of Return +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_rod_of_return')) + .shape([ + [null, ore('itemPulsatingCrystal'), ore('itemEnderCrystal')], + [null, mi('stickDarkSteel'), ore('itemPulsatingCrystal')], + [mi('stickDarkSteel'), null, null] + ]) + .register() + +// Electromagnet +mods.jei.ingredient.hide(item('enderio:item_magnet')) + +// Enderios +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_ender_food')) + .shape([ + [item('minecraft:bowl'), item('minecraft:milk_bucket'), null], + [item('minecraft:wheat'), mi('dustEnderPearl'), null], + [null, null, null] + ]) + .register() + +// Basic Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_basic_item_filter')) + .shape([ + [mi('dustElectricalSteel'), ore('paperBlack'), mi('dustElectricalSteel')], + [ore('paperBlack'), mi('item_filter'), ore('paperBlack')], + [mi('dustElectricalSteel'), ore('paperBlack'), mi('dustElectricalSteel')] + ]) + .register() + +// Advanced Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_advanced_item_filter')) + .shape([ + [mi('dustRedstoneAlloy'), ore('paperBlack'), mi('dustRedstoneAlloy')], + [ore('paperBlack'), mi('item_filter'), ore('paperBlack')], + [mi('dustRedstoneAlloy'), ore('paperBlack'), mi('dustRedstoneAlloy')] + ]) + .register() + +// Limited Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_limited_item_filter')) + .shape([ + [null, ore('skullZombieController'), null], + [item('minecraft:comparator'), item('enderio:item_advanced_item_filter'), item('minecraft:comparator')], + [null, null, null] + ]) + .register() + +// Big Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_big_item_filter')) + .shape([ + [mi('dustObsidian'), ore('paperBlack'), mi('dustObsidian')], + [ore('paperBlack'), ore('skullSkeletalContractor'), ore('paperBlack')], + [mi('dustObsidian'), ore('paperBlack'), mi('dustObsidian')] + ]) + .register() + +// Advanced Big Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_big_advanced_item_filter')) + .shape([ + [null, item('minecraft:shulker_shell'), null], + [null, item('enderio:item_advanced_item_filter'), null], + [null, item('minecraft:shulker_shell'), null] + ]) + .register() + +// Big Enchantment Item Filter +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_enchantment_filter_big')) + .input(item('enderio:item_big_item_filter'), item('minecraft:enchanted_book')) + .register() + +// Existing Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_existing_item_filter')) + .shape([ + [null, mi('dustRedstoneAlloy'), null], + [mi('dustRedstoneAlloy'), item('enderio:item_advanced_item_filter'), mi('dustRedstoneAlloy')], + [null, item('minecraft:comparator'), null] + ]) + .register() + +// Mod Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_mod_item_filter')) + .shape([ + [null, ore('paperBlack'), null], + [ore('paperBlack'), item('enderio:item_yeta_wrench'), ore('paperBlack')], + [null, ore('paperBlack'), null] + ]) + .register() + +// Power Item Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_power_item_filter')) + .shape([ + [null, ore('paperBlack'), null], + [ore('paperBlack'), item('enderio:item_conduit_probe'), ore('paperBlack')], + [null, ore('paperBlack'), null] + ]) + .register() + +// Enchantment Item Filter +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_enchantment_filter_normal')) + .input(item('enderio:item_basic_item_filter'), item('minecraft:enchanted_book')) + .register() + +// Basic Fluid Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_fluid_filter')) + .shape([ + [mi('dustRedstoneAlloy'), ore('paperBlack'), mi('dustRedstoneAlloy')], + [ore('paperBlack'), mi('fluid_filter'), ore('paperBlack')], + [mi('dustRedstoneAlloy'), ore('paperBlack'), mi('dustRedstoneAlloy')] + ]) + .register() + +// Redstone Filter Base +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_material', 60)) + .shape([ + [mi('plateRedstoneAlloy'), ore('paperBlack'), mi('plateRedstoneAlloy')], + [ore('paperBlack'), mi('plateIron'), ore('paperBlack')], + [mi('plateRedstoneAlloy'), ore('paperBlack'), mi('plateRedstoneAlloy')] + ]) + .register() + +// Redstone NOT Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_not_filter')) + .shape([ + [null, null, null], + [ore('craftingRedstoneTorch'), ore('itemRedstoneFilterBase'), mi('plateRedstoneAlloy')], + [null, null, null] + ]) + .register() + +// Redstone OR Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_or_filter')) + .shape([ + [null, mi('plateRedstoneAlloy'), null], + [null, ore('itemRedstoneFilterBase'), null], + [null, mi('plateRedstoneAlloy'), null] + ]) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_redstone_or_filter')) + .input(ore('craftingRedstoneTorch'), item('enderio:item_redstone_nor_filter')) + .register() + +// Redstone AND Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_and_filter')) + .shape([ + [null, ore('craftingRedstoneTorch'), null], + [null, ore('itemRedstoneFilterBase'), null], + [null, ore('craftingRedstoneTorch'), null] + ]) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_redstone_and_filter')) + .input(ore('craftingRedstoneTorch'), item('enderio:item_redstone_nand_filter')) + .register() + +// Redstone NOR Filter +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_redstone_nor_filter')) + .input(ore('craftingRedstoneTorch'), item('enderio:item_redstone_or_filter')) + .register() + +// Redstone NAND Filter +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_redstone_nand_filter')) + .input(ore('craftingRedstoneTorch'), item('enderio:item_redstone_and_filter')) + .register() + +// Redstone XOR Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_xor_filter')) + .shape([ + [null, ore('craftingRedstoneTorch'), null], + [mi('plateRedstoneAlloy'), ore('itemRedstoneFilterBase'), mi('plateRedstoneAlloy')], + [null, ore('craftingRedstoneTorch'), null] + ]) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_redstone_xor_filter')) + .input(ore('craftingRedstoneTorch'), item('enderio:item_redstone_xnor_filter')) + .register() + +// Redstone XNOR Filter +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_redstone_xnor_filter')) + .input(ore('craftingRedstoneTorch'), item('enderio:item_redstone_xor_filter')) + .register() + +// Redstone Toggle Latch Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_toggle_filter')) + .shape([ + [null, null, null], + [item('minecraft:lever'), ore('itemRedstoneFilterBase'), mi('plateRedstoneAlloy')], + [null, null, null] + ]) + .register() + +// Redstone Counting Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_counting_filter')) + .shape([ + [mi('plateRedstoneAlloy'), null, null], + [mi('plateRedstoneAlloy'), ore('itemRedstoneFilterBase'), mi('plateRedstoneAlloy')], + [mi('plateRedstoneAlloy'), null, null] + ]) + .register() + +// Redstone Sensor Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_sensor_filter')) + .shape([ + [null, null, null], + [item('minecraft:comparator'), ore('itemRedstoneFilterBase'), mi('plateRedstoneAlloy')], + [null, null, null] + ]) + .register() + +// Redstone Timer Filter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_redstone_timer_filter')) + .shape([ + [null, null, null], + [mi('plateRedstoneAlloy'), ore('itemRedstoneFilterBase'), item('minecraft:clock')], + [null, null, null] + ]) + .register() + +// Staff of Levity +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_staff_of_levity')) + .shape([ + [null, null, ore('itemPrecientCrystal')], + [null, mi('stickEndSteel'), null], + [mi('stickEndSteel'), null, null] + ]) + .register() + +// Simple Inventory Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_inventory_charger_simple')) + .shape([ + [mi('nuggetDarkSteel'), mi('plateConductiveIron'), mi('nuggetDarkSteel')], + [mi('plateConductiveIron'), item('enderio:item_capacitor_silver'), mi('plateConductiveIron')], + [mi('nuggetDarkSteel'), mi('plateConductiveIron'), mi('nuggetDarkSteel')] + ]) + .register() + +// Basic Inventory Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_inventory_charger_basic')) + .shape([ + [mi('plateDarkSteel'), mi('plateElectricalSteel'), mi('plateDarkSteel')], + [ore('itemWirelessDish'), ore('skullZombieElectrode'), ore('itemWirelessDish')], + [mi('plateDarkSteel'), item('enderio:block_cap_bank', 1), mi('plateDarkSteel')] + ]) + .register() + +// Inventory Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_inventory_charger')) + .shape([ + [mi('plateDarkSteel'), mi('plateEnergeticAlloy'), mi('plateDarkSteel')], + [ore('itemWirelessDish'), ore('skullEnderResonator'), ore('itemWirelessDish')], + [mi('plateDarkSteel'), item('enderio:block_cap_bank', 2), mi('plateDarkSteel')] + ]) + .register() + +// Vibrant Inventory Charger +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_inventory_charger_vibrant')) + .shape([ + [mi('plateDarkSteel'), mi('plateVibrantAlloy'), mi('plateDarkSteel')], + [ore('itemWirelessDish'), ore('skullSentientEnder'), ore('itemWirelessDish')], + [mi('plateDarkSteel'), item('enderio:block_cap_bank', 3), mi('plateDarkSteel')] + ]) + .register() + +// Blank Dark Steel Upgrade +alloy_smelter.recipeBuilder() + .inputs( + item('enderio:item_basic_item_filter'), + item('enderio:block_dark_iron_bars') + ) + .outputs(item('enderio:item_dark_steel_upgrade')) + .duration(56) + .EUt(480) + .buildAndRegister() + +// Dark Steel Upgrade "Micro Anvil" +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:anvil'])) + .shape([ + [null, mi('nuggetDarkSteel'), mi('nuggetDarkSteel')], + [null, null, item('minecraft:stick')], + [item('enderio:item_dark_steel_upgrade'), null, item('minecraft:stick')] + ]) + .register() + +// Dark Steel Upgrade "Mini Anvil" +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:anvil1'])) + .shape([ + [null, mi('plateDarkSteel'), mi('plateDarkSteel')], + [null, null, item('minecraft:stick')], + [item('enderio:item_dark_steel_upgrade'), null, item('minecraft:stick')] + ]) + .register() + +// Dark Steel Upgrade "Pocket Anvil" +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:anvil2'])) + .shape([ + [null, null, ore('blockDarkSteel')], + [null, null, item('minecraft:stick')], + [item('enderio:item_dark_steel_upgrade'), item('enderio:block_dark_steel_anvil'), item('minecraft:stick')] + ]) + .register() + +// Dark Steel Upgrade "Carpeting" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:carpet'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:carpet', 32767)) + .register() + +// Dark Steel Upgrade "Depth" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:depth'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:skull', 4)) + .register() + +// Dark Steel Upgrade "Direct" +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:direct'])) + .shape([ + [mi('nuggetVibrantAlloy'), mi('plateVibrantAlloy'), mi('nuggetVibrantAlloy')], + [mi('plateVibrantAlloy'), ore('enderpearl'), mi('plateVibrantAlloy')], + [mi('nuggetVibrantAlloy'), item('enderio:item_dark_steel_upgrade'), mi('nuggetVibrantAlloy')] + ]) + .register() + +// Dark Steel Upgrade "Elytra" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:elytra'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:elytra')) + .register() + +// Dark Steel Upgrade "Empowered lv1" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:energyupgrade'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('itemVibrantCrystal')) + .register() + +// Dark Steel Upgrade "Empowered lv2" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:energyupgrade1'])) + .input(item('enderio:item_dark_steel_upgrade'), item('enderio:item_basic_capacitor')) + .register() + +// Dark Steel Upgrade "Empowered lv3" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:energyupgrade2'])) + .input(item('enderio:item_dark_steel_upgrade'), item('enderio:item_basic_capacitor', 1)) + .register() + +// Dark Steel Upgrade "Empowered lv4" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:energyupgrade3'])) + .input(item('enderio:item_dark_steel_upgrade'), item('enderio:item_basic_capacitor', 2)) + .register() + +// Dark Steel Upgrade "Empowered lv5" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:energyupgrade4'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('skullEnderResonator')) + .register() + +// Dark Steel Upgrade "Glider" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:glide'])) + .input(item('enderio:item_dark_steel_upgrade'), item('enderio:item_material', 7)) + .register() + +// Dark Steel Upgrade "Fork" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:hoe'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:golden_hoe')) + .register() + +// Dark Steel Upgrade "Inventory lv1" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:inv'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('chestWood'), mi('gearWood')) + .register() + +// Dark Steel Upgrade "Inventory lv2" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:inv1'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('chestWood'), mi('gearEnergeticAlloy')) + .register() + +// Dark Steel Upgrade "Inventory lv3" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:inv2'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('chestWood'), mi('gearVibrantAlloy')) + .register() + +// Dark Steel Upgrade "Jump lv1" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:jumpboost1'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('craftingPiston'), mi('gearWood')) + .register() + +// Dark Steel Upgrade "Jump lv2" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:jumpboost2'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('craftingPiston'), mi('gearEnergeticAlloy')) + .register() + +// Dark Steel Upgrade "Jump lv3" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:jumpboost3'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('craftingPiston'), mi('gearVibrantAlloy')) + .register() + +// Dark Steel Upgrade "Night Vision" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:nightvision'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:potion').withNbt([Potion: 'minecraft:night_vision'])) + .register() + +// Dark Steel Upgrade "Padding" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:padding'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('wool')) + .register() + +// Dark Steel Upgrade(XP) "Solars" +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar'])) +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar', 'enderio:enabled': 1 as byte])) +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar1'])) +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar1', 'enderio:enabled': 1 as byte])) +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar2'])) +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar2', 'enderio:enabled': 1 as byte])) +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar3'])) +mods.jei.ingredient.hide(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderiomachines:solar3', 'enderio:enabled': 1 as byte])) + +// Dark Steel Upgrade "Sound Locator" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:sounddetector'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:noteblock')) + .register() + +// Dark Steel Upgrade "Speed lv1" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:speedboost1'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:potion').withNbt([Potion: 'minecraft:long_swiftness']), mi('gearWood')) + .register() + +// Dark Steel Upgrade "Speed lv2" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:speedboost2'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:potion').withNbt([Potion: 'minecraft:long_swiftness']), mi('gearEnergeticAlloy')) + .register() + +// Dark Steel Upgrade "Speed lv3" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:speedboost3'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:potion').withNbt([Potion: 'minecraft:long_swiftness']), mi('gearVibrantAlloy')) + .register() + +// Dark Steel Upgrade "Spoon" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:spoon'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:golden_shovel')) + .register() + +// Dark Steel Upgrade "Step Assist" +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:step_assist'])) + .shape([ + [null, null, item('minecraft:brick')], + [null, item('minecraft:brick'), item('minecraft:brick')], + [item('minecraft:brick'), item('minecraft:brick'), item('enderio:item_dark_steel_upgrade')] + ]) + .register() + +// Dark Steel Upgrade "Flippers" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:swim'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:waterlily')) + .register() + +// Dark Steel Upgrade "Explosive lv1" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:tnt'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:tnt'), mi('gearWood')) + .register() + +// Dark Steel Upgrade "Explosive lv2" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:tnt1'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:tnt'), mi('gearStone')) + .register() + +// Dark Steel Upgrade "Explosive lv3" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:tnt2'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:tnt'), mi('gearElectricalSteel')) + .register() + +// Dark Steel Upgrade "Explosive lv4" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:tnt3'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:tnt'), mi('gearEnergeticAlloy')) + .register() + +// Dark Steel Upgrade "Explosive lv5" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:tnt4'])) + .input(item('enderio:item_dark_steel_upgrade'), item('minecraft:tnt'), mi('gearVibrantAlloy')) + .register() + +// Dark Steel Upgrade "The One Probe" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:top'])) + .input(item('enderio:item_dark_steel_upgrade'), item('theoneprobe:probe')) + .register() + +// Dark Steel Upgrade "Travel" +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderio:item_dark_steel_upgrade', 1).withNbt(['enderio:dsu': 'enderio:travel'])) + .input(item('enderio:item_dark_steel_upgrade'), ore('itemEnderCrystal')) + .register() + +// Extract Speed Upgrade +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_extract_speed_upgrade')) + .shape([ + [mi('plateConstructionAlloy'), mi('plateConstructionAlloy'), mi('plateConstructionAlloy')], + [mi('plateElectricalSteel'), item('minecraft:piston'), mi('plateElectricalSteel')], + [mi('plateElectricalSteel'), item('enderio:item_dark_steel_upgrade'), mi('plateElectricalSteel')] + ]) + .register() + +// Extract Speed Downgrade +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_extract_speed_downgrade')) + .shape([ + [mi('plateConstructionAlloy'), mi('plateConstructionAlloy'), mi('plateConstructionAlloy')], + [mi('plateElectricalSteel'), item('minecraft:sticky_piston'), mi('plateElectricalSteel')], + [mi('plateElectricalSteel'), item('enderio:item_dark_steel_upgrade'), mi('plateElectricalSteel')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/EnderIO/C_Materials.groovy b/overrides/groovy/postInit/normal/EnderIO/C_Materials.groovy new file mode 100644 index 00000000..3aa43428 --- /dev/null +++ b/overrides/groovy/postInit/normal/EnderIO/C_Materials.groovy @@ -0,0 +1,515 @@ +import gregtech.api.recipes.RecipeMap + +def alloy_smelter = RecipeMap.getByName("alloy_smelter") +def assembler = RecipeMap.getByName("assembler") +def electric_blast_furnace = RecipeMap.getByName("electric_blast_furnace") +def macerator = RecipeMap.getByName("macerator") +def mixer = RecipeMap.getByName("mixer") +def compressor = RecipeMap.getByName("compressor") +def rock_breaker = RecipeMap.getByName("rock_breaker") + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Simple Machine Parts +mods.jei.ingredient.hide(item('enderio:item_material', 69)) + +// Machine Parts +mods.jei.ingredient.hide(item('enderio:item_material', 2)) + +// Enhanced Machine Parts +mods.jei.ingredient.hide(item('enderio:item_material', 68)) + +// Simple Machine Chassis +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_material')) + .shape([ + [ore('barsIron'), mi('plateIron'), ore('barsIron')], + [mi('plateIron'), item('enderio:item_material', 20), mi('plateIron')], + [ore('barsIron'), mi('plateIron'), ore('barsIron')] + ]) + .register() + +// Industrial Machine Chassis +alloy_smelter.recipeBuilder() + .inputs( + ore('itemSimpleMachineChassi'), + ore('dyeMachine') + ) + .outputs(item('enderio:item_material', 1)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Soul Machine Chassis +alloy_smelter.recipeBuilder() + .inputs( + ore('itemSimpleMachineChassi'), + ore('dyeSoulMachine') + ) + .outputs(item('enderio:item_material', 53)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Enhanced Machine Chassis +alloy_smelter.recipeBuilder() + .inputs( + ore('itemEndSteelMachineChassi'), + ore('dyeEnhancedMachine') + ) + .outputs(item('enderio:item_material', 54)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Soulless Machine Chassis +assembler.recipeBuilder() + .inputs( + item('enderio:block_industrial_insulation') * 6, + ore('skullGuardianDiode') * 2, + ore('itemSoulMachineChassi') + ) + .outputs(item('enderio:item_material', 55)) + .duration(50) + .EUt(480) + .buildAndRegister() + +// End Steel Chassis +assembler.recipeBuilder() + .inputs( + item('enderio:block_end_iron_bars') * 4, + mi('plateEndSteel', 4), + ore('skullEnderResonator') + ) + .outputs(item('enderio:item_material', 66)) + .duration(50) + .EUt(480) + .buildAndRegister() + +// Photovoltaic Plate +mods.jei.ingredient.hide(item('enderio:item_material', 3)) + +// Conduit Binder +electric_blast_furnace.recipeBuilder() + .inputs( + mi('dustClay', 3), + mi('dustAndesite'), + mi('dustDiorite') + ) + .property('temperature', 1700) + .outputs(item('enderio:item_material', 4)) + .duration(20) + .EUt(480) + .buildAndRegister() + +// Silicon +mods.jei.ingredient.hide(item('enderio:item_material', 5)) +// .remove(); + +// Glider Wing +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_material', 6)) + .shape([ + [null, null, mi('stickDarkSteel')], + [null, mi('stickDarkSteel'), item('minecraft:leather')], + [mi('stickDarkSteel'), item('minecraft:leather'), item('minecraft:leather')] + ]) + .register() + +// Glider Wings +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_material', 7)) + .shape([ + [mi('screwDarkSteel'), mi('stickDarkSteel'), mi('screwDarkSteel')], + [mi('ringDarkSteel'), mi('stickLongDarkSteel'), mi('ringDarkSteel')], + [item('enderio:item_material', 6), mi('stickLongDarkSteel'), item('enderio:item_material', 6)] + ]) + .register() + +// Nutritious Stick +mods.jei.ingredient.hide(item('enderio:item_material', 8)) + +// Wooden Gear +mods.jei.ingredient.hide(item('enderio:item_material', 9)) +mods.minecraft.ore_dict.remove('gearWood', item('enderio:item_material', 9)) + +// Stone Gear +mods.jei.ingredient.hide(item('enderio:item_material', 10)) +mods.minecraft.ore_dict.remove('gearStone', item('enderio:item_material', 10)) + +// Infinity Bimetal Gear +mods.jei.ingredient.hide(item('enderio:item_material', 11)) + +// Energized Bimetal Gear +mods.jei.ingredient.hide(item('enderio:item_material', 12)) + +// Vibrant Bimetal Gear +mods.jei.ingredient.hide(item('enderio:item_material', 13)) + +// Dark Bimetal Gear +mods.jei.ingredient.hide(item('enderio:item_material', 73)) + +// Flour +mods.jei.ingredient.hide(item('enderio:item_material', 21)) +mods.minecraft.ore_dict.remove('dustWheat', item('enderio:item_material', 21)) + +// Conduit Binder Composite +mods.jei.ingredient.hide(item('enderio:item_material', 22)) + +// Coal Powder +mods.jei.ingredient.hide(item('enderio:item_material', 23)) +mods.minecraft.ore_dict.remove('dustCoal', item('enderio:item_material', 23)) + +// Iron Powder +mods.jei.ingredient.hide(item('enderio:item_material', 24)) +mods.minecraft.ore_dict.remove('dustIron', item('enderio:item_material', 24)) + +// Gold Powder +mods.jei.ingredient.hide(item('enderio:item_material', 25)) +mods.minecraft.ore_dict.remove('dustGold', item('enderio:item_material', 25)) + +// Copper Powder +mods.jei.ingredient.hide(item('enderio:item_material', 26)) +mods.minecraft.ore_dict.remove('dustCopper', item('enderio:item_material', 26)) + +// Tin Powder +mods.jei.ingredient.hide(item('enderio:item_material', 27)) +mods.minecraft.ore_dict.remove('dustTin', item('enderio:item_material', 27)) + +// Ender Pearl Powder +mods.jei.ingredient.hide(item('enderio:item_material', 28)) +// .remove(); + +// Obsidian Powder +mods.jei.ingredient.hide(item('enderio:item_material', 29)) +mods.minecraft.ore_dict.remove('dustObsidian', item('enderio:item_material', 29)) + +// Cobalt Powder +mods.jei.ingredient.hide(item('enderio:item_material', 31)) +mods.minecraft.ore_dict.remove('dustCobalt', item('enderio:item_material', 31)) + +// Lapis Powder +mods.jei.ingredient.hide(item('enderio:item_material', 32)) +mods.minecraft.ore_dict.remove('dustLapis', item('enderio:item_material', 32)) + +// Quartz Powder +mods.jei.ingredient.hide(item('enderio:item_material', 33)) +mods.minecraft.ore_dict.remove('dustNetherQuartz', item('enderio:item_material', 33)) + +// Confusing Powder +mods.jei.ingredient.hide(item('enderio:item_material', 61)) + +// Soul Powder +mods.jei.ingredient.hide(item('enderio:item_material', 74)) + +// Glowstone Dust +mods.jei.ingredient.hide(item('enderio:item_material', 76)) + +// Grains of Prescience +macerator.recipeBuilder() + .inputs(ore('itemPrecientCrystal')) + .outputs(item('enderio:item_material', 34)) + .duration(20) + .EUt(2) + .buildAndRegister() +mixer.recipeBuilder() + .circuitMeta(2) + .inputs( + ore('itemVibrantPowder'), + mi('dustPlatinum') + ) + .outputs(item('enderio:item_material', 34) * 2) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Grains of Vibrant +macerator.recipeBuilder() + .inputs(ore('itemVibrantCrystal')) + .outputs(item('enderio:item_material', 35)) + .duration(20) + .EUt(2) + .buildAndRegister() +mixer.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('dustVibrantAlloy'), + mi('dustEmerald') + ) + .outputs(item('enderio:item_material', 35) * 2) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Grains of Piezallity +macerator.recipeBuilder() + .inputs(ore('itemPulsatingCrystal')) + .outputs(item('enderio:item_material', 36)) + .duration(20) + .EUt(2) + .buildAndRegister() +mixer.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('dustPulsatingIron'), + mi('dustDiamond') + ) + .outputs(item('enderio:item_material', 36) * 2) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Grains of the End +macerator.recipeBuilder() + .inputs(ore('itemEnderCrystal')) + .outputs(item('enderio:item_material', 37)) + .duration(20) + .EUt(2) + .buildAndRegister() +mixer.recipeBuilder() + .circuitMeta(2) + .inputs( + ore('itemVibrantPowder'), + mi('dustEndSteel') + ) + .fluidInputs(fluid('xpjuice') * 8000) + .outputs(item('enderio:item_material', 37) * 2) + .duration(600) + .EUt(480) + .buildAndRegister() + +// Photovoltaic Composite +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_material', 38)) + .shape([ + [mi('dustLapis'), mi('dustCoal'), null], + [mi('dustSilicon'), null, null], + [null, null, null] + ]) + .register() + +// Clippings and Trimmings +macerator.recipeBuilder() + .inputs(ore('grass')) + .outputs(item('enderio:item_material', 46)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Twigs and Prunings +macerator.recipeBuilder() + .inputs(item('minecraft:deadbush')) + .outputs(item('enderio:item_material', 47)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Organic Green Dye +alloy_smelter.recipeBuilder() + .inputs( + item('enderio:item_material', 46) * 6, + item('minecraft:egg') + ) + .outputs(item('enderio:item_material', 48)) + .duration(56) + .EUt(480) + .buildAndRegister() + +// Organic Brown Dye +alloy_smelter.recipeBuilder() + .inputs( + item('enderio:item_material', 47) * 6, + item('minecraft:egg') + ) + .outputs(item('enderio:item_material', 49)) + .duration(56) + .EUt(480) + .buildAndRegister() + +// Organic Black Dye +alloy_smelter.recipeBuilder() + .inputs( + mi('dustCoal', 3), + item('minecraft:egg') + ) + .outputs(item('enderio:item_material', 50)) + .duration(56) + .EUt(480) + .buildAndRegister() + +// Industrial Dye Blend +mixer.recipeBuilder() + .inputs( + mi('dustNetherQuartz', 4), + mi('dustLapis', 2), + ore('dyeGreen') * 2, + ore('dyeBlack') + ) + .outputs(item('enderio:item_material', 51) * 9) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Soul Attuned Dye Blend +mixer.recipeBuilder() + .inputs( + mi('dustNetherQuartz', 4), + mi('dustSoularium', 2), + ore('dyeBrown') * 2, + ore('dyeBlack') + ) + .outputs(item('enderio:item_material', 52) * 9) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Enhanced Dye Blend +mixer.recipeBuilder() + .inputs( + ore('itemPulsatingPowder') * 4, + mi('dustNetherQuartz', 4), + ore('dyeBlack') + ) + .outputs(item('enderio:item_material', 67) * 9) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Wireless Energy Transmitter +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_material', 65)) + .shape([ + [item('minecraft:dye', 15), mi('plateElectricalSteel'), null], + [null, item('minecraft:dye', 15), mi('plateElectricalSteel')], + [item('minecraft:dye', 15), mi('plateElectricalSteel'), null] + ]) + .register() + +// Ender Fragment +mods.jei.ingredient.hide(item('enderio:item_material', 62)) + +// Withering Dust +mods.jei.ingredient.hide(item('enderio:item_material', 63)) + +// Remote Awareness Upgrade +mods.jei.ingredient.hide(item('enderio:item_material', 64)) + +// Cake Base +mods.jei.ingredient.hide(item('enderio:item_material', 70)) + +// Netherotta +mods.jei.ingredient.hide(item('enderio:item_material', 72)) + +// Infinity Rod +mods.jei.ingredient.hide(item('enderio:item_material', 71)) + +// Infinity Reagent +mods.jei.ingredient.hide(item('enderio:item_material', 75)) + +// Animal Token +mods.jei.ingredient.hide(item('enderio:item_material', 78)) + +// Monster Token +mods.jei.ingredient.hide(item('enderio:item_material', 79)) + +// Player Token +mods.jei.ingredient.hide(item('enderio:item_material', 80)) + +// Unfired Death Urn +mods.minecraft.crafting.shapedBuilder() + .output(item('enderio:item_material', 81)) + .shape([ + [ore('itemClay'), ore('itemPulsatingPowder'), ore('itemClay')], + [ore('itemClay'), null, ore('itemClay')], + [ore('itemClay'), ore('itemClay'), ore('itemClay')] + ]) + .register() + +// Death Urn +alloy_smelter.recipeBuilder() + .inputs( + item('minecraft:dye', 15) * 7, + item('enderio:item_material', 81) + ) + .outputs(item('enderio:block_death_pouch')) + .duration(56) + .EUt(480) + .buildAndRegister() + +// Infinity Dust +macerator.recipeBuilder() + .inputs(item('enderio:item_material', 20)) + .outputs(item('enderio:block_infinity_fog')) + .duration(500) + .EUt(480) + .buildAndRegister() + +// Grains of Infinity +macerator.recipeBuilder() + .inputs(item('enderio:block_infinity')) + .outputs(item('enderio:item_material', 20) * 4) + .duration(500) + .EUt(480) + .buildAndRegister() +macerator.recipeBuilder() + .inputs(item('enderio:block_infinity', 1)) + .outputs(item('enderio:item_material', 20) * 16) + .duration(500) + .EUt(480) + .buildAndRegister() +macerator.recipeBuilder() + .inputs(item('enderio:block_infinity', 2)) + .outputs(item('enderio:item_material', 20) * 64) + .duration(500) + .EUt(480) + .buildAndRegister() + +// Infinity Dust Block +compressor.recipeBuilder() + .inputs(item('enderio:item_material', 20) * 4) + .outputs(item('enderio:block_infinity')) + .duration(500) + .EUt(480) + .buildAndRegister() +rock_breaker.recipeBuilder() + .notConsumable(item('enderio:block_infinity')) + .outputs(item('enderio:block_infinity')) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Compressed Infinity Dust Block +compressor.recipeBuilder() + .inputs(item('enderio:block_infinity') * 4) + .outputs(item('enderio:block_infinity', 1)) + .duration(500) + .EUt(480) + .buildAndRegister() + +// Double Compressed Infinity Dust Block +compressor.recipeBuilder() + .inputs(item('enderio:block_infinity', 1) * 4) + .outputs(item('enderio:block_infinity', 2)) + .duration(500) + .EUt(480) + .buildAndRegister() + +// Glowstone Nano-Particles +macerator.recipeBuilder() + .inputs(ore('itemClayedGlowstone')) + .outputs(item('enderio:block_holier_fog')) + .duration(56) + .EUt(480) + .buildAndRegister() + +// Glowstone Nano-Particles +mods.jei.ingredient.hide(item('enderio:block_holy_fog')) +mods.jei.ingredient.hide(item('enderio:block_holier_fog')) + +// Owl Egg +mods.jei.ingredient.hide(item('enderio:item_owl_egg')) + +// Grainy Capacitor +mods.jei.ingredient.hide(item('enderio:item_capacitor_grainy')) diff --git a/overrides/groovy/postInit/normal/EnderIO/D_Blocks.groovy b/overrides/groovy/postInit/normal/EnderIO/D_Blocks.groovy new file mode 100644 index 00000000..b0f69a60 --- /dev/null +++ b/overrides/groovy/postInit/normal/EnderIO/D_Blocks.groovy @@ -0,0 +1,134 @@ +import gregtech.api.recipes.RecipeMap + +def alloy_smelter = RecipeMap.getByName("alloy_smelter") + + +// Dark Paper Anvil +alloy_smelter.recipeBuilder() + .inputs( + item('enderio:block_dark_steel_anvil'), + ore('paperBlack') + ) + .outputs(item('enderio:block_dark_paper_anvil')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Self-resetting Levers +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever5')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever10')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever30')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever60')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever300')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever5i')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever10i')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever30i')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever60i')) +mods.jei.ingredient.hide(item('enderio:block_self_resetting_lever300i')) + +// Decoration Blocks +mods.jei.ingredient.hide(item('enderio:block_decoration1', 32767)) +mods.jei.ingredient.hide(item('enderio:block_decoration2', 32767)) +mods.jei.ingredient.hide(item('enderio:block_decoration3', 32767)) + +// Industrial Insulation +alloy_smelter.recipeBuilder() + .inputs( + item('enderio:item_material', 51) * 3, + item('minecraft:wool') + ) + .outputs(item('enderio:block_industrial_insulation')) + .duration(100) + .EUt(480) + .buildAndRegister() + +// TNTs +mods.jei.ingredient.hide(item('enderio:block_confusion_charge')) +mods.jei.ingredient.hide(item('enderio:block_concussion_charge')) +mods.jei.ingredient.hide(item('enderio:block_ender_charge')) + +// Pressure Plates +mods.jei.ingredient.hide(item('enderio:block_painted_pressure_plate', 32767)) + +// Fused Quartz +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 1)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 2)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 3)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 4)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 5)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 6)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 7)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 8)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 9)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 10)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 11)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 12)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 13)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 14)) +mods.jei.ingredient.hide(item('enderio:block_fused_quartz', 15)) + +// Quartz Clear Glass +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 1)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 2)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 3)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 4)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 5)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 6)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 7)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 8)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 9)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 10)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 11)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 12)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 13)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 14)) +mods.jei.ingredient.hide(item('enderio:block_fused_glass', 15)) + +// Other Glass +mods.jei.ingredient.hide(item('enderio:block_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_dark_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_unholy_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_dark_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_holy_dark_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_unholy_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_unholy_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_unholy_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_unholy_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_unholy_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_unholy_dark_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_pasture_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_pasture_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_pasture_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_pasture_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_pasture_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_pasture_dark_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_holy_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_holy_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_holy_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_holy_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_holy_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_holy_dark_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_unholy_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_unholy_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_unholy_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_unholy_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_unholy_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_unholy_dark_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_pasture_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_pasture_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_pasture_enlightened_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_pasture_enlightened_fused_glass', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_pasture_dark_fused_quartz', 32767)) +mods.jei.ingredient.hide(item('enderio:block_not_pasture_dark_fused_glass', 32767)) diff --git a/overrides/groovy/postInit/normal/EnderIO/globals.groovy b/overrides/groovy/postInit/normal/EnderIO/globals.groovy new file mode 100644 index 00000000..47eb5f70 --- /dev/null +++ b/overrides/groovy/postInit/normal/EnderIO/globals.groovy @@ -0,0 +1,121 @@ +//////////////////////////////////////// +// Materials +//////////////////////////////////////// +// Ball +def balls = [ + item('enderio:item_alloy_ball'), + item('enderio:item_alloy_ball', 1), + item('enderio:item_alloy_ball', 2), + item('enderio:item_alloy_ball', 3), + item('enderio:item_alloy_ball', 4), + item('enderio:item_alloy_ball', 5), + item('enderio:item_alloy_ball', 6), + item('enderio:item_alloy_ball', 7), + item('enderio:item_alloy_ball', 8), + item('enderio:item_alloy_ball', 9), + item('enderio:item_alloy_endergy_ball'), + item('enderio:item_alloy_endergy_ball', 1), + item('enderio:item_alloy_endergy_ball', 2), + item('enderio:item_alloy_endergy_ball', 3), + item('enderio:item_alloy_endergy_ball', 4), + item('enderio:item_alloy_endergy_ball', 5), + item('enderio:item_alloy_endergy_ball', 6), + item('enderio:item_material', 57), + item('enderio:item_material', 58), + item('enderio:item_material', 59) +] + +// Nugget +def nuggets = [ + item('enderio:item_alloy_nugget'), + item('enderio:item_alloy_nugget', 1), + item('enderio:item_alloy_nugget', 2), + item('enderio:item_alloy_nugget', 3), + item('enderio:item_alloy_nugget', 4), + item('enderio:item_alloy_nugget', 5), + item('enderio:item_alloy_nugget', 6), + item('enderio:item_alloy_nugget', 7), + item('enderio:item_alloy_nugget', 8), + item('enderio:item_alloy_nugget', 9), + item('enderio:item_alloy_endergy_nugget'), + item('enderio:item_alloy_endergy_nugget', 1), + item('enderio:item_alloy_endergy_nugget', 2), + item('enderio:item_alloy_endergy_nugget', 3), + item('enderio:item_alloy_endergy_nugget', 4), + item('enderio:item_alloy_endergy_nugget', 5), + item('enderio:item_alloy_endergy_nugget', 6) +] + +// Ingot +def ingots = [ + item('enderio:item_alloy_ingot'), + item('enderio:item_alloy_ingot', 1), + item('enderio:item_alloy_ingot', 2), + item('enderio:item_alloy_ingot', 3), + item('enderio:item_alloy_ingot', 4), + item('enderio:item_alloy_ingot', 5), + item('enderio:item_alloy_ingot', 6), + item('enderio:item_alloy_ingot', 7), + item('enderio:item_alloy_ingot', 8), + item('enderio:item_alloy_ingot', 9), + item('enderio:item_alloy_endergy_ingot'), + item('enderio:item_alloy_endergy_ingot', 1), + item('enderio:item_alloy_endergy_ingot', 2), + item('enderio:item_alloy_endergy_ingot', 3), + item('enderio:item_alloy_endergy_ingot', 4), + item('enderio:item_alloy_endergy_ingot', 5), + item('enderio:item_alloy_endergy_ingot', 6) +] + +// Block +def blocks = [ + item('enderio:block_alloy'), + item('enderio:block_alloy', 1), + item('enderio:block_alloy', 2), + item('enderio:block_alloy', 3), + item('enderio:block_alloy', 4), + item('enderio:block_alloy', 5), + item('enderio:block_alloy', 6), + item('enderio:block_alloy', 7), + item('enderio:block_alloy', 8), + item('enderio:block_alloy', 9), + item('enderio:block_alloy_endergy'), + item('enderio:block_alloy_endergy', 1), + item('enderio:block_alloy_endergy', 2), + item('enderio:block_alloy_endergy', 3), + item('enderio:block_alloy_endergy', 4), + item('enderio:block_alloy_endergy', 5), + item('enderio:block_alloy_endergy', 6) +] + + +// Set Recipe +// Ball +balls.each { ball -> + mods.jei.ingredient.hide(ball) +} + +// Nugget +nuggets.each { nugget -> + mods.jei.ingredient.hide(nugget) +} + +// Ingot +ingots.each { ingot -> + mods.jei.ingredient.hide(ingot) + mods.minecraft.furnace.removeByOutput(ingot) +} + +// Block +blocks.each { block -> + mods.jei.ingredient.hide(block) +} + +// Gear +mods.minecraft.ore_dict.add('gearElectricalSteel', item('enderio:item_material', 11)) +mods.minecraft.ore_dict.add('gearEnergeticAlloy', item('enderio:item_material', 12)) +mods.minecraft.ore_dict.add('gearVibrantAlloy', item('enderio:item_material', 13)) + +// Capacitor +mods.minecraft.ore_dict.add('eio.capacitor', item('enderio:item_basic_capacitor')) +mods.minecraft.ore_dict.add('eio.capacitor', item('enderio:item_capacitor_silver')) diff --git a/overrides/groovy/postInit/normal/EnderStorage.groovy b/overrides/groovy/postInit/normal/EnderStorage.groovy new file mode 100644 index 00000000..bda87562 --- /dev/null +++ b/overrides/groovy/postInit/normal/EnderStorage.groovy @@ -0,0 +1,53 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + +// ######################################## +// Items +// ######################################## +// Pouch +mods.minecraft.crafting.removeByOutput(item('enderstorage:ender_pouch', 0)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderstorage:ender_pouch', 0)) + .input(item('enderstorage:ender_pouch', 0)) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(ore('foilBronze') * 4, item('minecraft:leather') * 3, ore('wool'), mi('cover.ender_fluid_link')) + .outputs(item('enderstorage:ender_pouch', 0)) + .duration(400) + .EUt(480) + .buildAndRegister() + + + +// ######################################## +// Blocks +// ######################################## +// Chest +mods.minecraft.crafting.removeByOutput(item('enderstorage:ender_storage', 0)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderstorage:ender_storage', 0)) + .input(item('enderstorage:ender_storage', 0)) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('screwBronze', 8), item('enderio:block_reinforced_obsidian') * 2, ore('wool'), mi('cover.ender_fluid_link'), mi('conveyor.module.hv'), mi('crate.bronze')) + .outputs(item('enderstorage:ender_storage', 0)) + .duration(400) + .EUt(480) + .buildAndRegister() + +// Tank +mods.minecraft.crafting.removeByOutput(item('enderstorage:ender_storage', 1)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('enderstorage:ender_storage', 1)) + .input(item('enderstorage:ender_storage', 1)) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('stickBronze', 4), item('enderio:block_reinforced_obsidian') * 2, ore('wool'), mi('cover.ender_fluid_link'), mi('electric.pump.hv'), mi('drum.bronze')) + .outputs(item('enderstorage:ender_storage', 1)) + .duration(400) + .EUt(480) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/FluxNetworks.groovy b/overrides/groovy/postInit/normal/FluxNetworks.groovy new file mode 100644 index 00000000..fac6c8b0 --- /dev/null +++ b/overrides/groovy/postInit/normal/FluxNetworks.groovy @@ -0,0 +1,78 @@ +if (!isLoaded('fluxnetworks')) return + +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Flux +mods.jei.ingredient.hide(item('fluxnetworks:flux')) + +// Flux Core +mods.jei.ingredient.hide(item('fluxnetworks:fluxcore')) + +// Flux Configurator +mods.minecraft.crafting.removeByOutput(item('fluxnetworks:fluxconfigurator')) +mods.minecraft.crafting.shapedBuilder() + .output(item('fluxnetworks:fluxconfigurator')) + .shape([ + [null, item('appliedenergistics2:material', 45), mi('quantumeye')], + [null, mi('stickDarkSteel'), item('appliedenergistics2:material', 45)], + [mi('stickDarkSteel'), null, null] + ]) + .register() + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Flux Block +mods.jei.ingredient.hide(item('fluxnetworks:fluxblock')) + +// Flux Plug +mods.minecraft.crafting.removeByOutput(item('fluxnetworks:fluxplug')) +assembler.recipeBuilder() + .circuitMeta(4) + .inputs(mi('emitter.ev') * 2, mi('sensor.ev') * 2, mi('cover.digital.wireless'), item('appliedenergistics2:smooth_sky_stone_block')) + .outputs(item('fluxnetworks:fluxplug')) + .duration(200) + .EUt(30720) + .buildAndRegister() + +// Flux Point +mods.minecraft.crafting.removeByOutput(item('fluxnetworks:fluxpoint')) +assembler.recipeBuilder() + .circuitMeta(6) + .inputs(mi('emitter.ev') * 2, mi('sensor.ev') * 2, mi('cover.digital.wireless'), item('appliedenergistics2:smooth_sky_stone_block')) + .outputs(item('fluxnetworks:fluxpoint')) + .duration(200) + .EUt(30720) + .buildAndRegister() + +// Flux Controller +mods.minecraft.crafting.removeByOutput(item('fluxnetworks:fluxcontroller')) +assembler.recipeBuilder() + .circuitMeta(8) + .inputs( + mi('emitter.ev') * 2, + mi('sensor.ev') * 2, + mi('cover.digital.wireless') * 4, + item('gregtech:transparent_casing', 2) * 4, + item('appliedenergistics2:smooth_sky_stone_block') + ) + .outputs(item('fluxnetworks:fluxcontroller')) + .duration(200) + .EUt(30720) + .buildAndRegister() + +// Flux Storage +mods.jei.ingredient.hide(item('fluxnetworks:fluxstorage')) + +// Herculean Flux Storage +mods.jei.ingredient.hide(item('fluxnetworks:herculeanfluxstorage')) + +// Gargantuan Flux Storage +mods.jei.ingredient.hide(item('fluxnetworks:gargantuanfluxstorage')) diff --git a/overrides/groovy/postInit/normal/ForgeMicroblocks.groovy b/overrides/groovy/postInit/normal/ForgeMicroblocks.groovy new file mode 100644 index 00000000..f9746fde --- /dev/null +++ b/overrides/groovy/postInit/normal/ForgeMicroblocks.groovy @@ -0,0 +1,40 @@ +// ######################################## +// Items +// ######################################## +// Stone Rod +mods.minecraft.crafting.removeByOutput(item('microblockcbe:stone_rod')) +mods.jei.ingredient.hide(item('microblockcbe:stone_rod')) +mods.minecraft.ore_dict.remove('rodStone', item('microblockcbe:stone_rod')) + +// Stone Saw +mods.minecraft.crafting.removeByOutput(item('microblockcbe:saw_stone')) +mods.minecraft.crafting.shapedBuilder() + .output(item('microblockcbe:saw_stone')) + .shape([ + [null, ore('craftingToolHardHammer'), null], + [item('minecraft:stick'), mi('stickStone'), mi('stickStone')], + [item('minecraft:stick'), item('minecraft:flint'), item('minecraft:flint')] + ]) + .register() + +// Iron Saw +mods.minecraft.crafting.removeByOutput(item('microblockcbe:saw_iron')) +mods.minecraft.crafting.shapedBuilder() + .output(item('microblockcbe:saw_iron')) + .shape([ + [null, ore('craftingToolHardHammer'), null], + [item('minecraft:stick'), mi('stickStone'), mi('stickStone')], + [item('minecraft:stick'), mi('plateIron'), mi('plateIron')] + ]) + .register() + +// Diamond Saw +mods.minecraft.crafting.removeByOutput(item('microblockcbe:saw_diamond')) +mods.minecraft.crafting.shapedBuilder() + .output(item('microblockcbe:saw_diamond')) + .shape([ + [null, ore('craftingToolHardHammer'), null], + [item('minecraft:stick'), mi('stickStone'), mi('stickStone')], + [item('minecraft:stick'), mi('plateDiamond'), mi('plateDiamond')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/HotOrNot.groovy b/overrides/groovy/postInit/normal/HotOrNot.groovy new file mode 100644 index 00000000..38bf21c8 --- /dev/null +++ b/overrides/groovy/postInit/normal/HotOrNot.groovy @@ -0,0 +1,5 @@ +// ######################################## +// Items +// ######################################## +// Iron Tongs +mods.minecraft.crafting.removeByOutput(item('hotornot:iron_tongs')) diff --git a/overrides/groovy/postInit/normal/LazyAE2.groovy b/overrides/groovy/postInit/normal/LazyAE2.groovy new file mode 100644 index 00000000..6ed6125c --- /dev/null +++ b/overrides/groovy/postInit/normal/LazyAE2.groovy @@ -0,0 +1,150 @@ +mods.jei.category.hideCategory('threng.agg') +mods.jei.category.hideCategory('threng.purify') +mods.jei.category.hideCategory('threng.etch') +mods.jei.category.hideCategory('threng.energize') + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Fluix Steel Ingot +mods.minecraft.furnace.removeByOutput(item('threng:material')) +mods.gregtech.electricFurnace.streamRecipes().filter { recipe -> + recipe.outputs.any { out -> out.isItemEqual(item('threng:material')) } +}.removeAll() +mods.jei.ingredient.hide(item('threng:material')) + +// Carbonic Fluix Complex +mods.minecraft.crafting.removeByOutput(item('threng:material', 1)) +mods.jei.ingredient.hide(item('threng:material', 1)) + +// Fluix-Plated Iron Ingot +mods.jei.ingredient.hide(item('threng:material', 2)) + +// Coal Dust +mods.minecraft.ore_dict.remove('dustCoal', item('threng:material', 3)) +mods.jei.ingredient.hide(item('threng:material', 3)) + +// Fluix Logic Unit +mods.minecraft.crafting.removeByOutput(item('threng:material', 4)) +mods.jei.ingredient.hide(item('threng:material', 4)) + +// Resonating Crystal +mods.jei.ingredient.hide(item('threng:material', 5)) + +// Massively Parallel Processor +mods.jei.ingredient.hide(item('threng:material', 6)) + +// Speculation Cores +mods.jei.ingredient.hide(item('threng:material', 7)) +mods.minecraft.crafting.removeByOutput(item('threng:material', 8)) +mods.jei.ingredient.hide(item('threng:material', 8)) +mods.minecraft.crafting.removeByOutput(item('threng:material', 9)) +mods.jei.ingredient.hide(item('threng:material', 9)) +mods.minecraft.crafting.removeByOutput(item('threng:material', 10)) +mods.jei.ingredient.hide(item('threng:material', 10)) +mods.minecraft.crafting.removeByOutput(item('threng:material', 11)) +mods.jei.ingredient.hide(item('threng:material', 11)) +mods.minecraft.crafting.removeByOutput(item('threng:material', 12)) +mods.jei.ingredient.hide(item('threng:material', 12)) +mods.minecraft.crafting.removeByOutput(item('threng:material', 13)) +mods.jei.ingredient.hide(item('threng:material', 13)) + +// Speculation Processor +mods.jei.ingredient.hide(item('threng:material', 14)) + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Fluix Aggregator +mods.minecraft.crafting.removeByOutput(item('threng:machine')) +mods.jei.ingredient.hide(item('threng:machine')) + +// Pulse Centrifuge +mods.minecraft.crafting.removeByOutput(item('threng:machine', 1)) +mods.jei.ingredient.hide(item('threng:machine', 1)) + +// ME Circuit Etcher +mods.jei.ingredient.hide(item('threng:machine', 2)) + +// Preemptive Assembly Unit +mods.minecraft.crafting.removeByOutput(item('threng:machine', 3)) +mods.minecraft.crafting.shapedBuilder() + .output(item('threng:machine', 3)) + .shape([ + [mi('plateFluixAlloy'), ore('craftInterfaceItem'), mi('plateFluixAlloy')], + [item('appliedenergistics2:crafting_accelerator'), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:crafting_accelerator')], + [mi('plateFluixAlloy'), item('appliedenergistics2:material', 24), mi('plateFluixAlloy')] + ]) + .register() + +// Item Level Maintainer +mods.minecraft.crafting.removeByOutput(item('threng:machine', 4)) +mods.minecraft.crafting.shapedBuilder() + .output(item('threng:machine', 4)) + .shape([ + [mi('plateFluixAlloy'), item('appliedenergistics2:part', 280), mi('plateFluixAlloy')], + [item('appliedenergistics2:material', 22), item('gtexpert:meta_item_1', 1), item('appliedenergistics2:material', 22)], + [mi('plateFluixAlloy'), item('appliedenergistics2:material', 53), mi('plateFluixAlloy')] + ]) + .register() + +// Crystal Energizer +mods.minecraft.crafting.removeByOutput(item('threng:machine', 5)) +mods.jei.ingredient.hide(item('threng:machine', 5)) + +// Mass Assembler Frame +mods.minecraft.crafting.removeByOutput(item('threng:big_assembler')) +mods.minecraft.crafting.shapedBuilder() + .output(item('threng:big_assembler') * 4) + .shape([ + [mi('plateFluixAlloy'), item('appliedenergistics2:smooth_sky_stone_block'), mi('plateFluixAlloy')], + [item('appliedenergistics2:smooth_sky_stone_block'), item('gregtech:machine', 1647), item('appliedenergistics2:smooth_sky_stone_block')], + [mi('plateFluixAlloy'), item('appliedenergistics2:smooth_sky_stone_block'), mi('plateFluixAlloy')] + ]) + .register() + +// Mass Assembler Controller +mods.minecraft.crafting.removeByOutput(item('threng:big_assembler', 2)) +mods.minecraft.crafting.shapedBuilder() + .output(item('threng:big_assembler', 2)) + .shape([ + [item('threng:big_assembler'), item('appliedenergistics2:molecular_assembler'), item('threng:big_assembler')], + [ore('craftGlassCable'), item('gtexpert:meta_item_1', 1), ore('craftGlassCable')], + [item('threng:big_assembler'), ore('craftInterfaceItem'), item('threng:big_assembler')] + ]) + .register() + +// Pattern Provider +mods.minecraft.crafting.removeByOutput(item('threng:big_assembler', 3)) +mods.minecraft.crafting.shapedBuilder() + .output(item('threng:big_assembler', 3)) + .shape([ + [item('threng:big_assembler'), item('appliedenergistics2:material', 35), item('threng:big_assembler')], + [ore('craftGlassCable'), item('appliedenergistics2:material', 24), ore('craftGlassCable')], + [item('threng:big_assembler'), ore('craftInterfaceItem'), item('threng:big_assembler')] + ]) + .register() + +// Crafting Co-Processor +mods.minecraft.crafting.removeByOutput(item('threng:big_assembler', 4)) +mods.minecraft.crafting.shapedBuilder() + .output(item('threng:big_assembler', 4)) + .shape([ + [item('threng:big_assembler'), item('appliedenergistics2:molecular_assembler'), item('threng:big_assembler')], + [ore('craftGlassCable'), item('appliedenergistics2:material', 24), ore('craftGlassCable')], + [item('threng:big_assembler'), item('appliedenergistics2:crafting_accelerator'), item('threng:big_assembler')] + ]) + .register() + +// Crafting Co-Processor (Storage I/O) +mods.minecraft.crafting.removeByOutput(item('threng:big_assembler', 5)) +mods.minecraft.crafting.shapedBuilder() + .output(item('threng:big_assembler', 5)) + .shape([ + [item('threng:big_assembler'), mi('robot.arm.hv'), item('threng:big_assembler')], + [ore('craftGlassCable'), item('appliedenergistics2:io_port'), ore('craftGlassCable')], + [item('threng:big_assembler'), item('appliedenergistics2:chest'), item('threng:big_assembler')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/NAE2.groovy b/overrides/groovy/postInit/normal/NAE2.groovy new file mode 100644 index 00000000..b3e8e853 --- /dev/null +++ b/overrides/groovy/postInit/normal/NAE2.groovy @@ -0,0 +1,144 @@ +import gregtech.api.recipes.RecipeMap + +def packer = RecipeMap.getByName("packer") + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// ME Storage Component +mods.minecraft.crafting.removeByOutput(item('nae2:material', 1)) +mods.jei.ingredient.hide(item('nae2:material', 1)) +mods.minecraft.crafting.removeByOutput(item('nae2:material', 2)) +mods.jei.ingredient.hide(item('nae2:material', 2)) +mods.minecraft.crafting.removeByOutput(item('nae2:material', 3)) +mods.jei.ingredient.hide(item('nae2:material', 3)) +mods.minecraft.crafting.removeByOutput(item('nae2:material', 4)) +mods.jei.ingredient.hide(item('nae2:material', 4)) +mods.minecraft.crafting.removeByOutput(item('nae2:material', 5)) +mods.jei.ingredient.hide(item('nae2:material', 5)) +mods.minecraft.crafting.removeByOutput(item('nae2:material', 6)) +mods.jei.ingredient.hide(item('nae2:material', 6)) +mods.minecraft.crafting.removeByOutput(item('nae2:material', 7)) +mods.jei.ingredient.hide(item('nae2:material', 7)) +mods.minecraft.crafting.removeByOutput(item('nae2:material', 8)) +mods.jei.ingredient.hide(item('nae2:material', 8)) + +// ME Storage Cell +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_256k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_256k')) +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_1024k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_1024k')) +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_4096k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_4096k')) +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_16384k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_16384k')) +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_fluid_256k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_fluid_256k')) +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_fluid_1024k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_fluid_1024k')) +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_fluid_4096k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_fluid_4096k')) +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_fluid_16384k')) +mods.jei.ingredient.hide(item('nae2:storage_cell_fluid_16384k')) + +// ME Beam Former +mods.minecraft.crafting.removeByOutput(item('nae2:part')) +mods.minecraft.crafting.shapedBuilder() + .output(item('nae2:part')) + .shape([ + [null, item('appliedenergistics2:material', 41), null], + [item('appliedenergistics2:quartz_glass'), item('appliedenergistics2:material', 24), item('appliedenergistics2:quartz_glass')], + [null, ore('craftGlassCable'), null] + ]) + .register() + +// ME Void Storage Component +mods.minecraft.crafting.removeByOutput(item('nae2:material')) +mods.minecraft.crafting.shapedBuilder() + .output(item('nae2:material')) + .shape([ + [null, item('appliedenergistics2:material', 47), null], + [item('appliedenergistics2:material', 44), item('appliedenergistics2:material', 32), item('appliedenergistics2:material', 44)], + [null, item('appliedenergistics2:material', 47), null] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('nae2:material')) + .shape([ + [null, item('appliedenergistics2:material', 44), null], + [item('appliedenergistics2:material', 47), item('appliedenergistics2:material', 32), item('appliedenergistics2:material', 47)], + [null, item('appliedenergistics2:material', 44), null] + ]) + .register() + +// ME Void Storage Cell +mods.minecraft.crafting.removeByOutput(item('nae2:storage_cell_void')) +packer.recipeBuilder() + .inputs( + item('nae2:material'), + item('appliedenergistics2:material', 39) + ) + .outputs(item('nae2:storage_cell_void')) + .duration(10) + .EUt(7) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('nae2:storage_cell_void')) + .outputs( + item('nae2:material'), + item('appliedenergistics2:material', 39) + ) + .duration(10) + .EUt(7) + .buildAndRegister() + +// ME Void Fluid Storage Cell +mods.minecraft.crafting.removeByOutput(item('nae2:fluid_storage_cell_void')) +packer.recipeBuilder() + .inputs( + item('nae2:material'), + item('aeadditions:storage.casing', 1) + ) + .outputs(item('nae2:fluid_storage_cell_void')) + .duration(10) + .EUt(7) + .buildAndRegister() +packer.recipeBuilder() + .inputs(item('nae2:fluid_storage_cell_void')) + .outputs( + item('nae2:material'), + item('aeadditions:storage.casing', 1) + ) + .duration(10) + .EUt(7) + .buildAndRegister() + +// Programmed Circuit Card +mods.minecraft.crafting.removeByOutput(item('nae2:upgrade', 2)) +mods.minecraft.crafting.shapelessBuilder() + .output(item('nae2:upgrade', 2)) + .input(item('appliedenergistics2:material', 53), ore('circuitHv')) + .register() + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// ME Storage Exposer +mods.minecraft.crafting.removeByOutput(item('nae2:exposer')) +mods.minecraft.crafting.shapedBuilder() + .output(item('nae2:exposer')) + .shape([ + [mi('plateTitanium'), item('appliedenergistics2:part', 463), mi('plateTitanium')], + [item('appliedenergistics2:material', 43), item('appliedenergistics2:material', 47), item('appliedenergistics2:material', 44)], + [mi('plateTitanium'), item('appliedenergistics2:part', 462), mi('plateTitanium')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('nae2:exposer')) + .shape([ + [mi('plateTitanium'), item('appliedenergistics2:part', 220), mi('plateTitanium')], + [item('appliedenergistics2:material', 43), item('appliedenergistics2:material', 47), item('appliedenergistics2:material', 44)], + [mi('plateTitanium'), item('appliedenergistics2:part', 221), mi('plateTitanium')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/OpenComputers.groovy b/overrides/groovy/postInit/normal/OpenComputers.groovy new file mode 100644 index 00000000..08bab89b --- /dev/null +++ b/overrides/groovy/postInit/normal/OpenComputers.groovy @@ -0,0 +1,2195 @@ +import net.minecraftforge.fml.common.Loader +import gregtech.api.recipes.RecipeMap +import net.minecraftforge.fml.common.registry.ForgeRegistries +import net.minecraft.item.ItemStack + +def assembler = RecipeMap.getByName("assembler") +def circuit_assembler = RecipeMap.getByName("circuit_assembler") + +if (Loader.isModLoaded('opencomputers')) { + ForgeRegistries.ITEMS.valuesCollection + .findAll { it.registryName?.namespace == 'opencomputers' } + .each { regItem -> + def stack = new ItemStack(regItem, 1, 0) + if ( + stack.displayName.contains('Grog') || + stack.displayName.contains('Scrench') || + stack.displayName.contains('OpenComputers Manual') || + stack.displayName.contains('EEPROM') || + stack.displayName.contains('Linked Card') || + stack.displayName.contains('Hard Disk Drive') || + stack.displayName.contains('Floppy Disk') || + stack.displayName.contains('Plan9k') || + stack.displayName.contains('Network (Network Stack)') || + stack.displayName.contains('OpenOS') || + stack.displayName.contains('Data Card Software') || + stack.displayName.contains('OpenLodaer') || + stack.displayName.contains('Builder') || + stack.displayName.contains('Generator Upgrade Software') || + stack.displayName.contains('OPPM') || + stack.displayName.contains('Digger') || + stack.displayName.contains('Mazer') || + stack.displayName.contains('OpenIRC') || + stack.displayName.contains('Carpeted Capacitor') || + stack.displayName.contains('Ink Cartridge') || + stack.displayName.contains('Texture Picker') || + stack.displayName.contains('Navigation Upgrade') || + stack.displayName.contains('robot.name') || + stack.displayName.contains('Creatix') || + stack.displayName.contains('Crecopter') || + regItem.registryName.path == 'casecreative' || + regItem.registryName.path == 'robotafterimage' || + regItem.registryName.path == 'card' + ) { + // keep + } else { + mods.minecraft.crafting.removeByOutput(stack) + } + } +} + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Printed Circuit Board +mods.minecraft.furnace.removeByOutput(item('opencomputers:material', 4)) +mods.jei.ingredient.hide(item('opencomputers:material', 4)) + +// Ink Cartridge +mods.minecraft.crafting.remove(resource('opencomputers:material52')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:material', 7), + item('opencomputers:material', 6) * 2, + mi('pipeTinyFluidPlastic', 8), + mi('boltElectrum', 8) + ) + .fluidInputs(fluid('plastic') * 36) + .outputs(item('opencomputers:material', 26)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Analyzer +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('tricorder_scanner'), + item('opencomputers:material', 8) * 2, + item('opencomputers:material', 6) * 2, + mi('sensor.mv') + ) + .outputs(item('opencomputers:tool')) + .duration(100) + .EUt(120) + .buildAndRegister() + +// ME Upgrade - Tier 1 +mods.minecraft.crafting.remove(resource('aeadditions:oc/upgradet1')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + mi('plateStainlessSteel', 2), + item('opencomputers:card', 7), + item('appliedenergistics2:material', 41), + item('opencomputers:material', 7) + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('aeadditions:oc.upgrade', 2)) + .duration(200) + .EUt(480) + .buildAndRegister() + +// ME Upgrade - Tier 2 +mods.minecraft.crafting.remove(resource('aeadditions:oc/upgradet2')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + mi('plateTitanium', 2), + item('opencomputers:card', 7), + item('appliedenergistics2:material', 41), + item('opencomputers:material', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('aeadditions:oc.upgrade', 1)) + .duration(200) + .EUt(1920) + .buildAndRegister() + +// ME Upgrade - Tier 3 +mods.minecraft.crafting.remove(resource('aeadditions:oc/upgradet3')) +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.extreme'), + mi('plateTungstenSteel', 2), + item('opencomputers:card', 7), + item('appliedenergistics2:material', 41), + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('aeadditions:oc.upgrade')) + .duration(200) + .EUt(1920) + .buildAndRegister() + +// Battery Upgrade - Tier 1 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + item('opencomputers:capacitor'), + item('opencomputers:material', 6) * 2, + mi('boltRedAlloy', 4) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 1)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Battery Upgrade - Tier 2 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + mi('plateStainlessSteel', 2), + item('opencomputers:capacitor') * 2, + ore('componentTransistor') * 2, + mi('boltSilver', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 2)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Battery Upgrade - Tier 3 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + mi('plateTungstenSteel', 2), + item('opencomputers:capacitor') * 4, + mi('component.advanced_smd.transistor'), + mi('boltElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 3)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Chunkloader Upgrade +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + item('chickenchunks:chunk_loader'), + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 4)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Card Container - Tier 1 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + mi('plateAluminium', 2), + ore('chestWood'), + item('opencomputers:material', 7) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 5)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Card Container - Tier 2 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + mi('plateStainlessSteel', 2), + ore('chestWood'), + item('opencomputers:material', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 6)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Card Container - Tier 3 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + mi('plateTitanium', 2), + ore('chestWood'), + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 7)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Upgrade Container - Tier 1 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + ore('chestWood'), + item('opencomputers:material', 7) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 8)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Upgrade Container - Tier 2 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + mi('plateStainlessSteel', 2), + ore('chestWood'), + item('opencomputers:material', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 9)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Upgrade Container - Tier 3 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + mi('plateTitanium', 2), + ore('chestWood'), + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 10)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Crafting Upgrade +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:material', 8), + mi('workbench') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 11)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Database Upgrade - Tier 1 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:tool'), + item('opencomputers:storage', 2), + item('opencomputers:material', 8) * 2 + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 12)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Database Upgrade - Tier 2 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + item('opencomputers:tool'), + item('opencomputers:storage', 3), + item('opencomputers:material', 9) * 2 + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 13)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Database Upgrade - Tier 3 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + item('opencomputers:tool'), + item('opencomputers:storage', 4), + item('opencomputers:material', 10) * 2 + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 14)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Experience Upgrade +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + item('opencomputers:tool'), + item('opencomputers:material', 9), + item('enderio:item_xp_transfer') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 15)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Hover Upgrade - Tier 1 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + mi('rotorSteel', 4), + item('opencomputers:material', 8) * 2, + mi('electric.motor.mv') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 27)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Hover Upgrade - Tier 2 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + mi('plateAluminium', 2), + mi('rotorStainlessSteel', 4), + item('opencomputers:material', 9) * 2, + mi('electric.motor.hv') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 28)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Inventory Upgrade +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + ore('chestWood'), + item('opencomputers:material', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 17)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Inventory Controller Upgrade +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:upgrade', 17), + mi('plateStainlessSteel', 2), + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 18)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Tank Upgrade +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.plastic'), + mi('drum.aluminium'), + item('opencomputers:material', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 23)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Tank Controller Upgrade +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:upgrade', 23), + mi('plateStainlessSteel', 2), + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 24)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Leash Upgrade +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:material', 11), + item('minecraft:lead') * 4 + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 26)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// MFU +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:adapter'), + item('opencomputers:card', 9) * 2, + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 30)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Navigation Upgrade +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + item('opencomputers:material', 9) * 2, + item('minecraft:map') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 19)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Piston Upgrade +mods.minecraft.crafting.shapelessBuilder() + .output(item('opencomputers:upgrade', 20)) + .input(item('opencomputers:upgrade', 33)) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + mi('drum.aluminium'), + item('opencomputers:material', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 20)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Sticky Piston Upgrade +mods.minecraft.crafting.shapelessBuilder() + .output(item('opencomputers:upgrade', 33)) + .input(item('opencomputers:upgrade', 20), mi('rubber_drop')) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('opencomputers:upgrade', 33)) + .input(item('opencomputers:upgrade', 20), item('minecraft:slime_ball')) + .register() + +// Sign Upgrade +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + item('minecraft:sign'), + item('opencomputers:material', 8) * 2 + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 21)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Tractor Beam Upgrade +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + mi('item_magnet.hv'), + item('opencomputers:material', 9) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 25)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Microcontroller Case - Tier 1 +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + item('gregtech:machine_casing', 2), + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + item('opencomputers:material', 8) * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:material', 20)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Microcontroller Case - Tier 2 +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + item('gregtech:machine_casing', 3), + mi('circuit_board.advanced'), + mi('plateStainlessSteel', 2), + item('opencomputers:material', 9) * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:material', 21)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Drone Case - Tier 1 +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + item('opencomputers:material', 20), + item('opencomputers:component', 4), + item('opencomputers:material', 8) * 2, + mi('electric.motor.mv', 4) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:material', 23)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Drone Case - Tier 2 +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + item('opencomputers:material', 21), + item('opencomputers:component', 5), + item('opencomputers:material', 9) * 2, + mi('electric.motor.hv', 4) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:material', 24)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Arrow Keys +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('minecraft:stone_button') * 4, + ore('circuitLv') + ) + .outputs(item('opencomputers:material', 15)) + .duration(200) + .EUt(30) + .buildAndRegister() + +// Button Group +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('minecraft:stone_button') * 6, + ore('circuitLv') + ) + .outputs(item('opencomputers:material', 14)) + .duration(200) + .EUt(30) + .buildAndRegister() + +// Numeric Keypad +assembler.recipeBuilder() + .circuitMeta(3) + .inputs( + item('minecraft:stone_button') * 9, + ore('circuitLv') + ) + .outputs(item('opencomputers:material', 16)) + .duration(200) + .EUt(30) + .buildAndRegister() + +// Keyboard +assembler.recipeBuilder() + .circuitMeta(4) + .inputs( + item('minecraft:stone_button') * 64, + item('minecraft:stone_button') * 40, + ore('circuitLv'), + mi('plateTinAlloy') + ) + .outputs(item('opencomputers:keyboard')) + .duration(200) + .EUt(30) + .buildAndRegister() + +// Disk Platter +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('lensGlass'), + mi('foilAluminium', 4) + ) + .fluidInputs(fluid('distilled_water') * 36) + .outputs(item('opencomputers:material', 12)) + .duration(200) + .EUt(30) + .buildAndRegister() + +// EEPROM +mods.minecraft.crafting.remove(resource('opencomputers:storage126')) +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:material', 7), + item('opencomputers:material', 6) * 4, + mi('foilElectrum') + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:storage')) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:material', 7), + item('opencomputers:material', 6) * 4, + mi('foilElectrum') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:storage')) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Floppy Disk +mods.minecraft.crafting.remove(resource('opencomputers:storage127')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 12), + mi('foilPlastic', 4) + ) + .outputs(item('opencomputers:storage', 1)) + .duration(200) + .EUt(30) + .buildAndRegister() + +// Hard Disk Drive - Tier 1 +mods.minecraft.crafting.remove(resource('opencomputers:storage128')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateSteel', 2), + item('opencomputers:material', 12) * 2, + item('opencomputers:material', 7) * 2, + item('opencomputers:component', 6) * 4 + ) + .outputs(item('opencomputers:storage', 2)) + .duration(200) + .EUt(30) + .buildAndRegister() + +// Hard Disk Drive - Tier 2 +mods.minecraft.crafting.remove(resource('opencomputers:storage129')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateAluminium', 2), + item('opencomputers:material', 12) * 4, + item('opencomputers:material', 8) * 2, + item('opencomputers:component', 8) * 4 + ) + .outputs(item('opencomputers:storage', 3)) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Hard Disk Drive - Tier 3 +mods.minecraft.crafting.remove(resource('opencomputers:storage130')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('plateStainlessSteel', 2), + item('opencomputers:material', 12) * 8, + item('opencomputers:material', 9) * 2, + item('opencomputers:component', 10) * 4 + ) + .outputs(item('opencomputers:storage', 4)) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Central Processing Unit - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 10) * 8, + item('opencomputers:material', 11), + ore('circuitLv'), + mi('plateSteel') + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:component')) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 10) * 8, + item('opencomputers:material', 11), + ore('circuitLv'), + mi('plateSteel') + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:component')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Central Processing Unit - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:material', 10) * 12, + item('opencomputers:material', 11) * 2, + ore('circuitMv'), + mi('plateAluminium') + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:component', 1)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:material', 10) * 12, + item('opencomputers:material', 11) * 2, + ore('circuitMv'), + mi('plateAluminium') + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:component', 1)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Central Processing Unit - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:material', 10) * 16, + item('opencomputers:material', 11) * 4, + ore('circuitHv'), + mi('plateStainlessSteel') + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:component', 2)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:material', 10) * 16, + item('opencomputers:material', 11) * 4, + ore('circuitHv'), + mi('plateStainlessSteel') + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:component', 2)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Accelerated Processing Unit - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 10) * 32, + item('opencomputers:material', 11) * 4, + ore('circuitHv'), + mi('plateStainlessSteel') + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:component', 16)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 10) * 32, + item('opencomputers:material', 11) * 4, + ore('circuitHv'), + mi('plateStainlessSteel') + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:component', 16)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Accelerated Processing Unit - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:material', 10) * 64, + item('opencomputers:material', 11) * 8, + ore('circuitEv'), + mi('plateTitanium') + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:component', 17)) + .duration(100) + .EUt(1920) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('opencomputers:material', 10) * 64, + item('opencomputers:material', 11) * 8, + ore('circuitEv'), + mi('plateTitanium') + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:component', 17)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// ALU +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.good'), + mi('plate.integrated_logic_circuit', 8) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:material', 10)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.good'), + mi('plate.integrated_logic_circuit', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:material', 10)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// CU +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 6) * 2, + ore('circuitLv') + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:material', 11)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 6) * 2, + ore('circuitLv') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:material', 11)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Transistor +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + ore('boltIron') * 3, + item('minecraft:redstone') + ) + .outputs(item('opencomputers:material', 6)) + .duration(200) + .EUt(30) + .buildAndRegister() + +// Card Base +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + ore('circuitLv'), + mi('circuit_board.good'), + mi('foilElectrum') + ) + .outputs(item('opencomputers:material', 5)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Data Card - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 7), + item('opencomputers:material', 10) * 4, + mi('boltElectrum', 8) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 10)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 7), + item('opencomputers:material', 10) * 4, + mi('boltElectrum', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 10)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Data Card - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 8), + item('opencomputers:component'), + mi('boltElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 11)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 8), + item('opencomputers:component'), + mi('boltElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 11)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Data Card - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 9), + item('opencomputers:component', 1), + mi('boltElectrum', 32) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 12)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 9), + item('opencomputers:component', 1), + mi('boltElectrum', 32) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 12)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Memory Card - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.good'), + mi('plate.random_access_memory', 16), + item('opencomputers:material', 7) * 2, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 6)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.good'), + mi('plate.random_access_memory', 16), + item('opencomputers:material', 7) * 2, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 6)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Memory Card - Tier 1.5 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.plastic'), + mi('plate.random_access_memory', 32), + item('opencomputers:material', 7) * 4, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 7)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.plastic'), + mi('plate.random_access_memory', 16), + item('opencomputers:material', 7) * 2, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 7)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Memory Card - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + mi('plate.random_access_memory', 64), + item('opencomputers:material', 8) * 2, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 8)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + mi('plate.random_access_memory', 64), + item('opencomputers:material', 8) * 2, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 8)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Memory Card - Tier 2.5 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.advanced'), + mi('plate.random_access_memory', 64), + mi('plate.nand_memory_chip', 16), + item('opencomputers:material', 8) * 4, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 9)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.advanced'), + mi('plate.random_access_memory', 64), + mi('plate.nand_memory_chip', 16), + item('opencomputers:material', 8) * 4, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 9)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Memory Card - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + mi('plate.random_access_memory', 64), + mi('plate.nand_memory_chip', 32), + item('opencomputers:material', 9) * 2, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 10)) + .duration(100) + .EUt(1920) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + mi('plate.random_access_memory', 64), + mi('plate.nand_memory_chip', 32), + item('opencomputers:material', 9) * 2, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 10)) + .duration(100) + .EUt(1920) + .buildAndRegister() + +// Memory Card - Tier 3.5 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.extreme'), + mi('plate.random_access_memory', 64), + mi('plate.nand_memory_chip', 64), + item('opencomputers:material', 9) * 4, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 11)) + .duration(100) + .EUt(7680) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.extreme'), + mi('plate.random_access_memory', 64), + mi('plate.nand_memory_chip', 64), + item('opencomputers:material', 9) * 4, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 11)) + .duration(100) + .EUt(7680) + .buildAndRegister() + +// Graphics Card - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 10) * 8, + item('opencomputers:material', 11), + item('opencomputers:material', 7), + item('opencomputers:component', 6) + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:card', 1)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 10) * 8, + item('opencomputers:material', 11), + item('opencomputers:material', 7), + item('opencomputers:component', 6) + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:card', 1)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Graphics Card - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 10) * 16, + item('opencomputers:material', 11) * 2, + item('opencomputers:material', 8) * 2, + item('opencomputers:component', 8) + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:card', 2)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 10) * 16, + item('opencomputers:material', 11) * 2, + item('opencomputers:material', 8) * 2, + item('opencomputers:component', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:card', 2)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Graphics Card - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 10) * 32, + item('opencomputers:material', 11) * 4, + item('opencomputers:material', 9) * 4, + item('opencomputers:component', 10) + ) + .fluidInputs(fluid('tin') * 288) + .outputs(item('opencomputers:card', 3)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 10) * 32, + item('opencomputers:material', 11) * 4, + item('opencomputers:material', 9) * 4, + item('opencomputers:component', 10) + ) + .fluidInputs(fluid('soldering_alloy') * 144) + .outputs(item('opencomputers:card', 3)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Redstone Card - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 7) * 2, + item('opencomputers:cable') * 2, + mi('plate.integrated_logic_circuit', 4), + mi('cover.activity.detector') + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 4)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 7) * 2, + item('opencomputers:cable') * 2, + mi('plate.integrated_logic_circuit', 4), + mi('cover.activity.detector') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 4)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Redstone Card - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 8) * 2, + item('opencomputers:cable') * 2, + mi('plate.integrated_logic_circuit', 16), + mi('cover.activity.detector', 2) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 5)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:material', 8) * 2, + item('opencomputers:cable') * 2, + mi('plate.integrated_logic_circuit', 16), + mi('cover.activity.detector', 2) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 5)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Network Card +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:cable') * 2, + item('opencomputers:material', 9), + mi('boltElectrum', 8) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 6)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:material', 5), + item('opencomputers:cable') * 2, + item('opencomputers:material', 9), + mi('boltElectrum', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 6)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Wireless Network Card - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:card', 6), + mi('circuit_board.plastic'), + item('opencomputers:material', 8), + mi('emitter.mv'), + mi('sensor.mv') + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:upgrade', 31)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:card', 6), + mi('circuit_board.plastic'), + item('opencomputers:material', 8), + mi('emitter.mv'), + mi('sensor.mv') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:upgrade', 31)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Wireless Network Card - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:card', 6), + mi('circuit_board.advanced'), + item('opencomputers:material', 9), + mi('emitter.hv'), + mi('sensor.hv') + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 7)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:card', 6), + mi('circuit_board.advanced'), + item('opencomputers:material', 9), + mi('emitter.hv'), + mi('sensor.hv') + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 7)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Internet Card +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:card', 7), + item('opencomputers:material', 13), + item('opencomputers:material', 9), + item('projectred-illumination:light_button', 14) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:card', 8)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:card', 7), + item('opencomputers:material', 13), + item('opencomputers:material', 9), + item('projectred-illumination:light_button', 14) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:card', 8)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Linked Card +mods.minecraft.crafting.remove(resource('opencomputers:card89')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:card', 7), + item('opencomputers:material', 11) * 2, + item('opencomputers:material', 13) + ) + .outputs(item('opencomputers:card', 9)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Interweb +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('platePlastic'), + item('minecraft:string') * 8 + ) + .fluidInputs(fluid('glue') * 576) + .outputs(item('opencomputers:material', 13)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Component Bus - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.good'), + item('opencomputers:material', 7) * 2, + item('opencomputers:material', 11), + mi('boltRedAlloy', 4) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 3)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.good'), + item('opencomputers:material', 7) * 2, + item('opencomputers:material', 11), + mi('boltRedAlloy', 4) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 3)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Component Bus - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:material', 8) * 2, + item('opencomputers:material', 11) * 4, + item('opencomputers:component', 8), + mi('boltElectrum', 8) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 4)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:material', 8) * 2, + item('opencomputers:material', 11) * 4, + item('opencomputers:component', 8), + mi('boltElectrum', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 4)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Component Bus - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + item('opencomputers:material', 9) * 2, + item('opencomputers:material', 11) * 8, + item('opencomputers:component', 10), + mi('boltDiamond', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:component', 5)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + item('opencomputers:material', 9) * 2, + item('opencomputers:material', 11) * 8, + item('opencomputers:component', 10), + mi('boltDiamond', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:component', 5)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Microchip - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.good'), + ore('circuitLv'), + item('opencomputers:material', 6) * 4, + mi('foilElectrum', 4) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:material', 7)) + .duration(100) + .EUt(30) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.good'), + ore('circuitLv'), + item('opencomputers:material', 6) * 4, + mi('foilElectrum', 4) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:material', 7)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Microchip - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.plastic'), + ore('circuitMv'), + item('opencomputers:material', 6) * 8, + mi('foilElectrum', 8) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:material', 8)) + .duration(100) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.plastic'), + ore('circuitMv'), + item('opencomputers:material', 6) * 8, + mi('foilElectrum', 8) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:material', 8)) + .duration(100) + .EUt(120) + .buildAndRegister() + +// Microchip - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.advanced'), + ore('circuitHv'), + ore('componentTransistor') * 8, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:material', 9)) + .duration(100) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + mi('circuit_board.advanced'), + ore('circuitHv'), + ore('componentTransistor') * 8, + mi('foilElectrum', 16) + ) + .fluidInputs(fluid('soldering_alloy') * 72) + .outputs(item('opencomputers:material', 9)) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Disk Drive +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:diskdrive'), + item('opencomputers:material', 7), + mi('circuit_board.advanced'), + item('enderio:block_dark_iron_bars') * 2, + mi('plateObsidian', 4) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:component', 20)) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Terminal Server +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + item('opencomputers:card', 7) * 2, + item('opencomputers:material', 8) * 2, + mi('plateObsidian', 4), + mi('boltElectrum', 16) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:component', 19)) + .duration(200) + .EUt(1920) + .buildAndRegister() + +// Server - Tier 1 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:case1'), + item('opencomputers:material', 7) * 2, + item('opencomputers:material', 8), + item('opencomputers:component', 9) + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('opencomputers:component', 13)) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Server - Tier 2 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.advanced'), + item('opencomputers:case2'), + item('opencomputers:material', 8) * 2, + item('opencomputers:material', 9), + item('opencomputers:component', 10) + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('opencomputers:component', 14)) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Server - Tier 3 +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('circuit_board.extreme'), + item('opencomputers:case3'), + item('opencomputers:material', 9) * 2, + ore('circuitEv'), + item('opencomputers:component', 11) + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('opencomputers:component', 15)) + .duration(200) + .EUt(1920) + .buildAndRegister() + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// OC Conduit +assembler.recipeBuilder() + .inputs( + item('opencomputers:cable'), + mi('plateRedstoneAlloy') + ) + .fluidInputs(fluid('plastic') * 144) + .outputs(item('enderio:item_opencomputers_conduit')) + .duration(100) + .EUt(480) + .buildAndRegister() + +// Cable +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('cableGtSingleGold'), + mi('dustTinyRedAlloy') + ) + .outputs(item('opencomputers:cable')) + .duration(200) + .EUt(120) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('cableGtSingleGold'), + mi('dustTinyEmerald') + ) + .outputs(item('opencomputers:cable')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Adapter +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('gregtech:machine_casing', 2), + mi('circuit_board.plastic'), + item('opencomputers:cable') * 2, + item('opencomputers:material', 7) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:adapter')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Capacitor +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('gregtech:machine_casing', 1), + mi('battery.re.ulv.tantalum', 8), + mi('circuit_board.plastic'), + item('opencomputers:material', 6), + item('opencomputers:cable') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:capacitor')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Charger +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('gregtech:machine_casing', 1), + item('opencomputers:capacitor'), + mi('circuit_board.plastic'), + item('opencomputers:material', 9), + item('opencomputers:cable') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:charger')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Power Distributor +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('gregtech:machine_casing', 3), + item('opencomputers:capacitor'), + mi('circuit_board.advanced'), + mi('plateStainlessSteel'), + item('opencomputers:cable') * 2, + ore('circuitHv') + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:powerdistributor')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Power Converter +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('transformer.mv'), + mi('circuit_board.plastic', 2), + item('opencomputers:material', 8) * 2, + mi('plateAluminium', 2), + item('opencomputers:cable') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:powerconverter')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Waypoint +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('gregtech:machine_casing', 2), + item('opencomputers:material', 13), + mi('circuit_board.plastic'), + item('opencomputers:material', 7), + item('opencomputers:material', 6) * 2, + item('opencomputers:cable') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:waypoint')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Net Splitter +assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + mi('buffer.mv'), + item('opencomputers:upgrade', 18), + item('opencomputers:upgrade', 24), + mi('board.plastic', 2), + item('opencomputers:cable') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:transposer') * 2) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Electronics Assembler +assembler.recipeBuilder() + .circuitMeta(2) + .inputs( + item('gregtech:machine_casing', 2), + mi('circuit_board.plastic'), + item('opencomputers:material', 8), + mi('robot.arm.mv', 2) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:assembler')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Screen - Tier 1 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('gregtech:machine_casing', 2), + mi('cover.screen'), + ore('circuitMv') * 2, + item('opencomputers:material', 6) * 2 + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:screen1')) + .duration(200) + .EUt(120) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('gregtech:machine_casing', 2), + mi('cover.screen'), + ore('circuitMv') * 2, + item('opencomputers:material', 6) * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:screen1')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Screen - Tier 2 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:screen1'), + ore('circuitHv') * 2, + ore('componentTransistor') * 2 + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:screen2')) + .duration(200) + .EUt(480) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:screen1'), + ore('circuitHv') * 2, + ore('componentTransistor') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:screen2')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Screen - Tier 3 +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:screen2'), + ore('circuitEv') * 2, + mi('component.advanced_smd.transistor') + ) + .fluidInputs(fluid('tin') * 144) + .outputs(item('opencomputers:screen3')) + .duration(200) + .EUt(1920) + .buildAndRegister() +circuit_assembler.recipeBuilder() + .circuitMeta(1) + .inputs( + item('opencomputers:screen2'), + ore('circuitEv') * 2, + mi('component.advanced_smd.transistor') + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:screen3')) + .duration(200) + .EUt(1920) + .buildAndRegister() + +// Disk Drive +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 2), + item('opencomputers:material', 8) * 2, + mi('electric.motor.mv'), + mi('springSmallCopper'), + mi('stickIronMagnetic'), + mi('lensGlass') + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:diskdrive')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Geolyzer +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 2), + mi('circuit_board.plastic'), + item('opencomputers:material', 8), + item('opencomputers:tool'), + mi('sensor.mv', 2), + mi('lensDiamond', 2) + ) + .outputs(item('opencomputers:geolyzer')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Motion Sensor +assembler.recipeBuilder() + .inputs( + mi('circuit_board.plastic'), + item('opencomputers:component', 1), + mi('platePlastic', 2), + item('opencomputers:cable') * 2, + item('minecraft:daylight_detector') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:motionsensor')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Power Distributor (second recipe - note: outputs motionsensor, same as source) +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 2), + mi('circuit_board.plastic'), + mi('plateAluminium', 2), + item('opencomputers:cable') * 2, + ore('circuitHv') + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:motionsensor')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Raid +assembler.recipeBuilder() + .inputs( + item('opencomputers:diskdrive'), + item('opencomputers:component', 2), + item('opencomputers:component', 6), + mi('platePlastic', 4), + item('opencomputers:cable') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:raid')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Redstone I/O +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 2), + mi('circuit_board.plastic', 2), + item('opencomputers:material', 8) * 2, + mi('plateRedstone', 2), + item('opencomputers:card', 4), + mi('cover.activity.detector') + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:redstone')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Relay +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 2), + mi('circuit_board.plastic', 2), + mi('platePlastic', 2), + item('opencomputers:card', 7), + item('opencomputers:material', 8), + item('opencomputers:cable') * 2 + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:relay')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Rack +assembler.recipeBuilder() + .inputs( + item('opencomputers:relay'), + item('opencomputers:powerdistributor'), + item('opencomputers:card', 7), + mi('circuit_board.plastic', 2), + mi('rotorSteel', 4), + mi('plateSteel', 4) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:rack')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Computer Case - Tier 1 +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 2), + mi('plateAluminium', 4), + mi('circuit_board.plastic'), + item('opencomputers:material', 7), + mi('rotorSteel', 2) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:case1')) + .duration(200) + .EUt(120) + .buildAndRegister() + +// Computer Case - Tier 2 +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 3), + mi('plateStainlessSteel', 4), + mi('circuit_board.advanced'), + item('opencomputers:material', 8), + mi('rotorSteel', 2) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:case2')) + .duration(200) + .EUt(480) + .buildAndRegister() + +// Computer Case - Tier 3 +assembler.recipeBuilder() + .inputs( + item('gregtech:machine_casing', 4), + mi('plateTitanium', 4), + mi('circuit_board.extreme'), + item('opencomputers:material', 9), + mi('rotorSteel', 2) + ) + .fluidInputs(fluid('plastic') * 72) + .outputs(item('opencomputers:case3')) + .duration(200) + .EUt(1920) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/PackagedAuto.groovy b/overrides/groovy/postInit/normal/PackagedAuto.groovy new file mode 100644 index 00000000..3a840719 --- /dev/null +++ b/overrides/groovy/postInit/normal/PackagedAuto.groovy @@ -0,0 +1,123 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + +// ######################################## +// Items +// ######################################## +// Package Recipe Holder +mods.minecraft.crafting.removeByOutput(item('packagedauto:recipe_holder')) +mods.minecraft.crafting.shapedBuilder() + .output(item('packagedauto:recipe_holder') * 3) + .shape([ + [item('appliedenergistics2:quartz_glass'), item('appliedenergistics2:material', 52), item('appliedenergistics2:quartz_glass')], + [item('appliedenergistics2:material', 52), ore('glowstone'), item('appliedenergistics2:material', 52)], + [mi('plateTitanium'), item('packagedauto:me_package_component'), mi('plateTitanium')] + ]) + .register() + +// Package Component +mods.minecraft.crafting.removeByOutput(item('packagedauto:package_component')) +mods.minecraft.crafting.shapedBuilder() + .output(item('packagedauto:package_component')) + .shape([ + [mi('plateVibrantAlloy'), mi('plateTitanium'), mi('plateVibrantAlloy')], + [mi('plateTitanium'), item('minecraft:ender_eye'), mi('plateTitanium')], + [mi('plateVibrantAlloy'), mi('plateTitanium'), mi('plateVibrantAlloy')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('plateVibrantAlloy', 2), mi('plateTitanium', 2), item('minecraft:ender_eye')) + .outputs(item('packagedauto:package_component')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// ME Packaging Component +mods.minecraft.crafting.removeByOutput(item('packagedauto:me_package_component')) +mods.minecraft.crafting.shapedBuilder() + .output(item('packagedauto:me_package_component')) + .shape([ + [mi('plateTitanium'), item('appliedenergistics2:quartz_glass'), mi('plateTitanium')], + [item('appliedenergistics2:material', 44), item('packagedauto:package_component'), item('appliedenergistics2:material', 43)], + [mi('plateTitanium'), item('appliedenergistics2:quartz_glass'), mi('plateTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('plateTitanium', 2), item('appliedenergistics2:material', 44), item('appliedenergistics2:material', 43), item('appliedenergistics2:quartz_glass'), item('packagedauto:package_component')) + .outputs(item('packagedauto:me_package_component')) + .duration(20) + .EUt(1920) + .buildAndRegister() + + + +// ######################################## +// Blocks +// ######################################## +// Packager +mods.minecraft.crafting.removeByOutput(item('packagedauto:packager')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('packagedauto:packager')) + .input(item('packagedauto:unpackager')) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('packagedauto:packager')) + .shape([ + [mi('plateTitanium'), item('packagedauto:me_package_component'), mi('plateTitanium')], + [ore('circuitHv'), mi('packer.hv'), ore('circuitHv')], + [mi('plateTitanium'), ore('craftInterfaceItem'), mi('plateTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('plateTitanium', 2), ore('craftInterfaceItem'), mi('packer.hv'), ore('circuitHv'), item('packagedauto:me_package_component')) + .outputs(item('packagedauto:packager')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Unpackager +mods.minecraft.crafting.removeByOutput(item('packagedauto:unpackager')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('packagedauto:unpackager')) + .input(item('packagedauto:packager')) + .register() + +// Encoder +mods.minecraft.crafting.removeByOutput(item('packagedauto:encoder')) +mods.minecraft.crafting.shapedBuilder() + .output(item('packagedauto:encoder')) + .shape([ + [mi('plateTitanium'), item('packagedauto:me_package_component'), mi('plateTitanium')], + [item('packagedauto:recipe_holder'), ore('craftExtendedTerminal'), item('packagedauto:recipe_holder')], + [mi('plateTitanium'), ore('circuitHv'), mi('plateTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(2) + .inputs(mi('plateTitanium', 2), ore('circuitHv'), ore('craftExtendedTerminal'), item('packagedauto:recipe_holder'), item('packagedauto:me_package_component')) + .outputs(item('packagedauto:encoder')) + .duration(20) + .EUt(1920) + .buildAndRegister() + +// Packager Extension +mods.minecraft.crafting.removeByOutput(item('packagedauto:packager_extension')) +mods.minecraft.crafting.shapedBuilder() + .output(item('packagedauto:packager_extension')) + .shape([ + [mi('plateTitanium'), item('packagedauto:me_package_component'), mi('plateTitanium')], + [ore('circuitHv'), item('storagedrawers:controllerslave'), ore('circuitHv')], + [mi('plateTitanium'), ore('craftInterfaceItem'), mi('plateTitanium')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(3) + .inputs(mi('plateTitanium', 2), ore('craftInterfaceItem'), item('storagedrawers:controllerslave'), ore('circuitHv'), item('packagedauto:me_package_component')) + .outputs(item('packagedauto:packager_extension')) + .duration(20) + .EUt(1920) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/ProjectRed.groovy b/overrides/groovy/postInit/normal/ProjectRed.groovy new file mode 100644 index 00000000..44111caf --- /dev/null +++ b/overrides/groovy/postInit/normal/ProjectRed.groovy @@ -0,0 +1,114 @@ +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Electrotine +mods.jei.ingredient.hide(item('projectred-core:resource_item', 105)) +mods.minecraft.ore_dict.remove('dustElectrotine', item('projectred-core:resource_item', 105)) + +// Sandy Compound +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 250)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 250)) + +// Silicon Boule +mods.minecraft.furnace.removeByOutput(item('projectred-core:resource_item', 300)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 300)) + +// Silicon +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 301)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 301)) + +// Red Silicon Compound +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 310)) +mods.minecraft.crafting.shapedBuilder() + .output(item('projectred-core:resource_item', 310)) + .shape([ + [item('minecraft:redstone'), item('minecraft:redstone'), item('minecraft:redstone')], + [item('minecraft:redstone'), mi('wafer.silicon'), item('minecraft:redstone')], + [item('minecraft:redstone'), item('minecraft:redstone'), item('minecraft:redstone')] + ]) + .register() + +// Glowing Silicon Compound +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 311)) +mods.minecraft.crafting.shapedBuilder() + .output(item('projectred-core:resource_item', 311)) + .shape([ + [item('minecraft:glowstone_dust'), item('minecraft:glowstone_dust'), item('minecraft:glowstone_dust')], + [item('minecraft:glowstone_dust'), mi('wafer.silicon'), item('minecraft:glowstone_dust')], + [item('minecraft:glowstone_dust'), item('minecraft:glowstone_dust'), item('minecraft:glowstone_dust')] + ]) + .register() + +// Electrotine Silicon Compound +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 312)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 312)) + +// Electro Silicon +mods.minecraft.furnace.removeByOutput(item('projectred-core:resource_item', 342)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 342)) + +// Copper Ingot +mods.jei.ingredient.hide(item('projectred-core:resource_item', 100)) +mods.minecraft.ore_dict.remove('ingotCopper', item('projectred-core:resource_item', 100)) + +// Tin Ingot +mods.jei.ingredient.hide(item('projectred-core:resource_item', 101)) +mods.minecraft.ore_dict.remove('ingotTin', item('projectred-core:resource_item', 101)) + +// Silver Ingot +mods.jei.ingredient.hide(item('projectred-core:resource_item', 102)) +mods.minecraft.ore_dict.remove('ingotSilver', item('projectred-core:resource_item', 102)) + +// RedAlloy Ingot +mods.minecraft.furnace.removeByOutput(item('projectred-core:resource_item', 103)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 103)) +mods.minecraft.ore_dict.remove('ingotRedAlloy', item('projectred-core:resource_item', 103)) + +// ElectrotineAlloy Ingot +mods.minecraft.furnace.removeByOutput(item('projectred-core:resource_item', 104)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 104)) +mods.minecraft.ore_dict.remove('ingotElectrotineAlloy', item('projectred-core:resource_item', 104)) + +// Ruby +mods.jei.ingredient.hide(item('projectred-core:resource_item', 200)) +mods.minecraft.ore_dict.remove('gemRuby', item('projectred-core:resource_item', 200)) + +// Sapphire +mods.jei.ingredient.hide(item('projectred-core:resource_item', 201)) +mods.minecraft.ore_dict.remove('gemSapphire', item('projectred-core:resource_item', 201)) + +// Peridot +mods.jei.ingredient.hide(item('projectred-core:resource_item', 202)) +mods.minecraft.ore_dict.remove('gemPeridot', item('projectred-core:resource_item', 202)) + +// Red Iron Compound +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 251)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 251)) + +// Electrotine Iron Compound +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 252)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 252)) + +// Woven Cloth +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 420)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 420)) + +// Sail +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 421)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 421)) + +// Motor +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 410)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 410)) + +// Copper Coil +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 400)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 400)) + +// Iron Coil +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 401)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 401)) + +// Gold Coil +mods.minecraft.crafting.removeByOutput(item('projectred-core:resource_item', 402)) +mods.jei.ingredient.hide(item('projectred-core:resource_item', 402)) diff --git a/overrides/groovy/postInit/normal/SOLCarrot.groovy b/overrides/groovy/postInit/normal/SOLCarrot.groovy new file mode 100644 index 00000000..6f9d5a28 --- /dev/null +++ b/overrides/groovy/postInit/normal/SOLCarrot.groovy @@ -0,0 +1,9 @@ +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Food Journal +mods.minecraft.crafting.removeByOutput(item('solcarrot:food_book')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('solcarrot:food_book')) + .input(item('minecraft:book'), item('minecraft:carrot')) + .register() diff --git a/overrides/groovy/postInit/normal/SpiceOfLife.groovy b/overrides/groovy/postInit/normal/SpiceOfLife.groovy new file mode 100644 index 00000000..99c3de8f --- /dev/null +++ b/overrides/groovy/postInit/normal/SpiceOfLife.groovy @@ -0,0 +1,31 @@ +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Food Journal +mods.minecraft.crafting.removeByOutput(item('spiceoflife:bookfoodjournal')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('spiceoflife:bookfoodjournal')) + .input(item('minecraft:book'), item('minecraft:wheat')) + .register() + +// Lunchbag +mods.minecraft.crafting.removeByOutput(item('spiceoflife:lunchbag')) +mods.minecraft.crafting.shapedBuilder() + .output(item('spiceoflife:lunchbag')) + .shape([ + [item('minecraft:paper'), null, item('minecraft:paper')], + [mi('rubber_drop'), item('minecraft:paper'), mi('rubber_drop')], + [null, null, null] + ]) + .register() + +// Lunchbox +mods.minecraft.crafting.removeByOutput(item('spiceoflife:lunchbox')) +mods.minecraft.crafting.shapedBuilder() + .output(item('spiceoflife:lunchbox')) + .shape([ + [mi('plateDoubleIron'), ore('craftingToolScrewdriver'), mi('plateDoubleIron')], + [mi('screwIron'), mi('plateDoubleIron'), mi('screwIron')], + [null, null, null] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/StorageDrawers.groovy b/overrides/groovy/postInit/normal/StorageDrawers.groovy new file mode 100644 index 00000000..0247e8a9 --- /dev/null +++ b/overrides/groovy/postInit/normal/StorageDrawers.groovy @@ -0,0 +1,538 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Trim +mods.minecraft.crafting.removeByOutput(item('storagedrawers:trim', 32767)) +mods.chisel.carving.addGroup('drawerTrim') +mods.chisel.carving.addVariation('drawerTrim', item('storagedrawers:trim', 0)) +mods.chisel.carving.addVariation('drawerTrim', item('storagedrawers:trim', 1)) +mods.chisel.carving.addVariation('drawerTrim', item('storagedrawers:trim', 2)) +mods.chisel.carving.addVariation('drawerTrim', item('storagedrawers:trim', 3)) +mods.chisel.carving.addVariation('drawerTrim', item('storagedrawers:trim', 4)) +mods.chisel.carving.addVariation('drawerTrim', item('storagedrawers:trim', 5)) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:trim', 0) * 4) + .shape([ + [item('minecraft:stick'), ore('slabWood'), item('minecraft:stick')], + [ore('slabWood'), ore('slabWood'), ore('slabWood')], + [item('minecraft:stick'), ore('slabWood'), item('minecraft:stick')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(11) + .inputs(ore('slabWood') * 5, item('minecraft:stick') * 4) + .outputs(item('storagedrawers:trim', 0) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Basic Drawer +mods.minecraft.crafting.removeByOutput(item('storagedrawers:basicdrawers', 0)) +mods.chisel.carving.addGroup('drawer1x1') +mods.chisel.carving.addVariation('drawer1x1', item('storagedrawers:basicdrawers', 0).withNbt(['material': 'oak'])) +mods.chisel.carving.addVariation('drawer1x1', item('storagedrawers:basicdrawers', 0).withNbt(['material': 'spruce'])) +mods.chisel.carving.addVariation('drawer1x1', item('storagedrawers:basicdrawers', 0).withNbt(['material': 'birch'])) +mods.chisel.carving.addVariation('drawer1x1', item('storagedrawers:basicdrawers', 0).withNbt(['material': 'jungle'])) +mods.chisel.carving.addVariation('drawer1x1', item('storagedrawers:basicdrawers', 0).withNbt(['material': 'acacia'])) +mods.chisel.carving.addVariation('drawer1x1', item('storagedrawers:basicdrawers', 0).withNbt(['material': 'dark_oak'])) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:basicdrawers', 0).withNbt(['material': 'oak'])) + .shape([ + [ore('slabWood'), ore('slabWood'), ore('slabWood')], + [ore('slabWood'), item('minecraft:chest'), ore('slabWood')], + [ore('slabWood'), ore('slabWood'), ore('slabWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(12) + .inputs(ore('slabWood') * 8, item('minecraft:chest')) + .outputs(item('storagedrawers:basicdrawers', 0).withNbt(['material': 'oak'])) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Basic Drawer 1x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:basicdrawers', 1)) +mods.chisel.carving.addGroup('drawer1x2') +mods.chisel.carving.addVariation('drawer1x2', item('storagedrawers:basicdrawers', 1).withNbt(['material': 'oak'])) +mods.chisel.carving.addVariation('drawer1x2', item('storagedrawers:basicdrawers', 1).withNbt(['material': 'spruce'])) +mods.chisel.carving.addVariation('drawer1x2', item('storagedrawers:basicdrawers', 1).withNbt(['material': 'birch'])) +mods.chisel.carving.addVariation('drawer1x2', item('storagedrawers:basicdrawers', 1).withNbt(['material': 'jungle'])) +mods.chisel.carving.addVariation('drawer1x2', item('storagedrawers:basicdrawers', 1).withNbt(['material': 'acacia'])) +mods.chisel.carving.addVariation('drawer1x2', item('storagedrawers:basicdrawers', 1).withNbt(['material': 'dark_oak'])) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:basicdrawers', 1).withNbt(['material': 'oak']) * 2) + .shape([ + [ore('slabWood'), item('minecraft:chest'), ore('slabWood')], + [ore('slabWood'), ore('slabWood'), ore('slabWood')], + [ore('slabWood'), item('minecraft:chest'), ore('slabWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(13) + .inputs(ore('slabWood') * 7, item('minecraft:chest') * 2) + .outputs(item('storagedrawers:basicdrawers', 1).withNbt(['material': 'oak']) * 2) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Basic Drawer 2x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:basicdrawers', 2)) +mods.chisel.carving.addGroup('drawer2x2') +mods.chisel.carving.addVariation('drawer2x2', item('storagedrawers:basicdrawers', 2).withNbt(['material': 'oak'])) +mods.chisel.carving.addVariation('drawer2x2', item('storagedrawers:basicdrawers', 2).withNbt(['material': 'spruce'])) +mods.chisel.carving.addVariation('drawer2x2', item('storagedrawers:basicdrawers', 2).withNbt(['material': 'birch'])) +mods.chisel.carving.addVariation('drawer2x2', item('storagedrawers:basicdrawers', 2).withNbt(['material': 'jungle'])) +mods.chisel.carving.addVariation('drawer2x2', item('storagedrawers:basicdrawers', 2).withNbt(['material': 'acacia'])) +mods.chisel.carving.addVariation('drawer2x2', item('storagedrawers:basicdrawers', 2).withNbt(['material': 'dark_oak'])) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:basicdrawers', 2).withNbt(['material': 'oak']) * 4) + .shape([ + [item('minecraft:chest'), ore('slabWood'), item('minecraft:chest')], + [ore('slabWood'), ore('slabWood'), ore('slabWood')], + [item('minecraft:chest'), ore('slabWood'), item('minecraft:chest')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(14) + .inputs(ore('slabWood') * 5, item('minecraft:chest') * 4) + .outputs(item('storagedrawers:basicdrawers', 2).withNbt(['material': 'oak']) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Half Basic Drawer 1x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:basicdrawers', 3)) +mods.chisel.carving.addGroup('drawerHalf1x2') +mods.chisel.carving.addVariation('drawerHalf1x2', item('storagedrawers:basicdrawers', 3).withNbt(['material': 'oak'])) +mods.chisel.carving.addVariation('drawerHalf1x2', item('storagedrawers:basicdrawers', 3).withNbt(['material': 'spruce'])) +mods.chisel.carving.addVariation('drawerHalf1x2', item('storagedrawers:basicdrawers', 3).withNbt(['material': 'birch'])) +mods.chisel.carving.addVariation('drawerHalf1x2', item('storagedrawers:basicdrawers', 3).withNbt(['material': 'jungle'])) +mods.chisel.carving.addVariation('drawerHalf1x2', item('storagedrawers:basicdrawers', 3).withNbt(['material': 'acacia'])) +mods.chisel.carving.addVariation('drawerHalf1x2', item('storagedrawers:basicdrawers', 3).withNbt(['material': 'dark_oak'])) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:basicdrawers', 3).withNbt(['material': 'oak'])) + .shape([ + [ore('slabWood'), ore('slabWood'), ore('slabWood')], + [item('minecraft:chest'), ore('slabWood'), item('minecraft:chest')], + [ore('slabWood'), ore('slabWood'), ore('slabWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(15) + .inputs(ore('slabWood') * 7, item('minecraft:chest') * 2) + .outputs(item('storagedrawers:basicdrawers', 3).withNbt(['material': 'oak'])) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Half Basic Drawer 2x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:basicdrawers', 4)) +mods.chisel.carving.addGroup('drawerHalf2x2') +mods.chisel.carving.addVariation('drawerHalf2x2', item('storagedrawers:basicdrawers', 4).withNbt(['material': 'oak'])) +mods.chisel.carving.addVariation('drawerHalf2x2', item('storagedrawers:basicdrawers', 4).withNbt(['material': 'spruce'])) +mods.chisel.carving.addVariation('drawerHalf2x2', item('storagedrawers:basicdrawers', 4).withNbt(['material': 'birch'])) +mods.chisel.carving.addVariation('drawerHalf2x2', item('storagedrawers:basicdrawers', 4).withNbt(['material': 'jungle'])) +mods.chisel.carving.addVariation('drawerHalf2x2', item('storagedrawers:basicdrawers', 4).withNbt(['material': 'acacia'])) +mods.chisel.carving.addVariation('drawerHalf2x2', item('storagedrawers:basicdrawers', 4).withNbt(['material': 'dark_oak'])) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:basicdrawers', 4).withNbt(['material': 'oak']) * 4) + .shape([ + [ore('slabWood'), item('minecraft:chest'), ore('slabWood')], + [item('minecraft:chest'), ore('slabWood'), item('minecraft:chest')], + [ore('slabWood'), item('minecraft:chest'), ore('slabWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(16) + .inputs(ore('slabWood') * 5, item('minecraft:chest') * 4) + .outputs(item('storagedrawers:basicdrawers', 4).withNbt(['material': 'oak']) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Framing Table +mods.minecraft.crafting.removeByOutput(item('storagedrawers:framingtable')) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:framingtable')) + .shape([ + [ore('slabWood'), ore('slabWood'), ore('slabWood')], + [ore('fenceWood'), item('minecraft:stick'), ore('fenceWood')], + [ore('fenceWood'), ore('craftingToolScrewdriver'), ore('fenceWood')] + ]) + .register() + +// Framed Trim +mods.minecraft.crafting.removeByOutput(item('storagedrawers:customtrim', 0)) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customtrim', 0) * 4) + .shape([ + [item('minecraft:stick'), mi('frameWood'), item('minecraft:stick')], + [mi('frameWood'), mi('frameWood'), mi('frameWood')], + [item('minecraft:stick'), mi('frameWood'), item('minecraft:stick')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customtrim', 0) * 16) + .shape([ + [mi('stickTreatedWood'), mi('frameTreatedWood'), mi('stickTreatedWood')], + [mi('frameTreatedWood'), mi('frameTreatedWood'), mi('frameTreatedWood')], + [mi('stickTreatedWood'), mi('frameTreatedWood'), mi('stickTreatedWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(11) + .inputs(mi('frameWood', 5), item('minecraft:stick') * 4) + .outputs(item('storagedrawers:customtrim', 0) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(11) + .inputs(mi('frameTreatedWood', 5), mi('stickTreatedWood', 4)) + .outputs(item('storagedrawers:customtrim', 0) * 16) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Framed Drawer +mods.minecraft.crafting.removeByOutput(item('storagedrawers:customdrawers', 0)) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 0).withNbt([:])) + .shape([ + [mi('frameWood'), mi('frameWood'), mi('frameWood')], + [mi('frameWood'), item('minecraft:chest'), mi('frameWood')], + [mi('frameWood'), mi('frameWood'), mi('frameWood')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 0).withNbt([:]) * 4) + .shape([ + [mi('frameTreatedWood'), mi('frameTreatedWood'), mi('frameTreatedWood')], + [mi('frameTreatedWood'), item('minecraft:chest'), mi('frameTreatedWood')], + [mi('frameTreatedWood'), mi('frameTreatedWood'), mi('frameTreatedWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(12) + .inputs(mi('frameWood', 8), item('minecraft:chest')) + .outputs(item('storagedrawers:customdrawers', 0).withNbt([:])) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(12) + .inputs(mi('frameTreatedWood', 8), item('minecraft:chest')) + .outputs(item('storagedrawers:customdrawers', 0).withNbt([:]) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Framed Drawer 1x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:customdrawers', 1)) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 1).withNbt([:]) * 2) + .shape([ + [mi('frameWood'), item('minecraft:chest'), mi('frameWood')], + [mi('frameWood'), mi('frameWood'), mi('frameWood')], + [mi('frameWood'), item('minecraft:chest'), mi('frameWood')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 1).withNbt([:]) * 8) + .shape([ + [mi('frameTreatedWood'), item('minecraft:chest'), mi('frameTreatedWood')], + [mi('frameTreatedWood'), mi('frameTreatedWood'), mi('frameTreatedWood')], + [mi('frameTreatedWood'), item('minecraft:chest'), mi('frameTreatedWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(13) + .inputs(mi('frameWood', 7), item('minecraft:chest') * 2) + .outputs(item('storagedrawers:customdrawers', 1).withNbt([:]) * 2) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(13) + .inputs(mi('frameTreatedWood', 7), item('minecraft:chest') * 2) + .outputs(item('storagedrawers:customdrawers', 1).withNbt([:]) * 8) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Framed Drawer 2x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:customdrawers', 2)) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 2).withNbt([:]) * 4) + .shape([ + [item('minecraft:chest'), mi('frameWood'), item('minecraft:chest')], + [mi('frameWood'), mi('frameWood'), mi('frameWood')], + [item('minecraft:chest'), mi('frameWood'), item('minecraft:chest')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 2).withNbt([:]) * 16) + .shape([ + [item('minecraft:chest'), mi('frameTreatedWood'), item('minecraft:chest')], + [mi('frameTreatedWood'), mi('frameTreatedWood'), mi('frameTreatedWood')], + [item('minecraft:chest'), mi('frameTreatedWood'), item('minecraft:chest')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(14) + .inputs(mi('frameWood', 5), item('minecraft:chest') * 4) + .outputs(item('storagedrawers:customdrawers', 2).withNbt([:]) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(14) + .inputs(mi('frameTreatedWood', 5), item('minecraft:chest') * 4) + .outputs(item('storagedrawers:customdrawers', 2).withNbt([:]) * 16) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Framed Half Drawer 1x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:customdrawers', 3)) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 3).withNbt([:])) + .shape([ + [mi('frameWood'), mi('frameWood'), mi('frameWood')], + [item('minecraft:chest'), mi('frameWood'), item('minecraft:chest')], + [mi('frameWood'), mi('frameWood'), mi('frameWood')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 3).withNbt([:]) * 4) + .shape([ + [mi('frameTreatedWood'), mi('frameTreatedWood'), mi('frameTreatedWood')], + [item('minecraft:chest'), mi('frameTreatedWood'), item('minecraft:chest')], + [mi('frameTreatedWood'), mi('frameTreatedWood'), mi('frameTreatedWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(15) + .inputs(mi('frameWood', 7), item('minecraft:chest') * 2) + .outputs(item('storagedrawers:customdrawers', 3).withNbt([:])) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(15) + .inputs(mi('frameTreatedWood', 7), item('minecraft:chest') * 2) + .outputs(item('storagedrawers:customdrawers', 3).withNbt([:]) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Framed Half Drawer 2x2 +mods.minecraft.crafting.removeByOutput(item('storagedrawers:customdrawers', 4)) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 4).withNbt([:]) * 4) + .shape([ + [mi('frameWood'), item('minecraft:chest'), mi('frameWood')], + [item('minecraft:chest'), mi('frameWood'), item('minecraft:chest')], + [mi('frameWood'), item('minecraft:chest'), mi('frameWood')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:customdrawers', 4).withNbt([:]) * 16) + .shape([ + [mi('frameTreatedWood'), item('minecraft:chest'), mi('frameTreatedWood')], + [item('minecraft:chest'), mi('frameTreatedWood'), item('minecraft:chest')], + [mi('frameTreatedWood'), item('minecraft:chest'), mi('frameTreatedWood')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(16) + .inputs(mi('frameWood', 5), item('minecraft:chest') * 4) + .outputs(item('storagedrawers:customdrawers', 4).withNbt([:]) * 4) + .duration(20) + .EUt(7) + .buildAndRegister() +assembler.recipeBuilder() + .circuitMeta(16) + .inputs(mi('frameTreatedWood', 5), item('minecraft:chest') * 4) + .outputs(item('storagedrawers:customdrawers', 4).withNbt([:]) * 16) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Controller +mods.minecraft.crafting.removeByOutput(item('storagedrawers:controller')) +mods.minecraft.crafting.removeByOutput(item('framedcompactdrawers:framed_drawer_controller')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('framedcompactdrawers:framed_drawer_controller')) + .input(item('storagedrawers:controller')) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('storagedrawers:controller')) + .input(item('framedcompactdrawers:framed_drawer_controller')) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:controller')) + .shape([ + [ore('plankWood'), ore('plankWood'), ore('plankWood')], + [item('minecraft:repeater'), item('storagedrawers:customdrawers'), item('minecraft:repeater')], + [ore('plankWood'), ore('plankWood'), ore('plankWood')] + ]) + .register() + +// Compacting Drawer +mods.minecraft.crafting.removeByOutput(item('storagedrawers:compdrawers')) +mods.minecraft.crafting.removeByOutput(item('framedcompactdrawers:framed_compact_drawer')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('framedcompactdrawers:framed_compact_drawer')) + .input(item('storagedrawers:compdrawers')) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('storagedrawers:compdrawers')) + .input(item('framedcompactdrawers:framed_compact_drawer')) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:compdrawers')) + .shape([ + [ore('plankWood'), ore('plankWood'), ore('plankWood')], + [ore('craftingPiston'), item('storagedrawers:customdrawers'), ore('craftingPiston')], + [ore('plankWood'), ore('plankWood'), ore('plankWood')] + ]) + .register() + +// Controller Slave +mods.minecraft.crafting.removeByOutput(item('storagedrawers:controllerslave')) +mods.minecraft.crafting.removeByOutput(item('framedcompactdrawers:framed_slave')) +mods.minecraft.crafting.shapelessBuilder() + .output(item('framedcompactdrawers:framed_slave')) + .input(item('storagedrawers:controllerslave')) + .register() +mods.minecraft.crafting.shapelessBuilder() + .output(item('storagedrawers:controllerslave')) + .input(item('framedcompactdrawers:framed_slave')) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:controllerslave')) + .shape([ + [ore('plankWood'), ore('plankWood'), ore('plankWood')], + [item('minecraft:comparator'), item('storagedrawers:customdrawers'), item('minecraft:comparator')], + [ore('plankWood'), ore('plankWood'), ore('plankWood')] + ]) + .register() + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Packing Tape +mods.minecraft.crafting.removeByOutput(item('storagedrawers:tape')) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:tape')) + .shape([ + [null, null, null], + [null, item('minecraft:slime_ball'), null], + [item('minecraft:paper'), item('minecraft:paper'), item('minecraft:paper')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:tape')) + .shape([ + [null, null, null], + [null, mi('rubber_drop'), null], + [item('minecraft:paper'), item('minecraft:paper'), item('minecraft:paper')] + ]) + .register() + +// Upgrade Template +mods.minecraft.crafting.removeByOutput(item('storagedrawers:upgrade_template')) +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_template') * 8) + .shape([ + [null, null, null], + [mi('screwIron'), ore('drawerBasic'), mi('screwIron')], + [mi('screwIron'), ore('craftingToolScrewdriver'), mi('screwIron')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(8) + .inputs(mi('screwIron', 4), ore('drawerBasic')) + .outputs(item('storagedrawers:upgrade_template') * 8) + .duration(20) + .EUt(7) + .buildAndRegister() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_template') * 16) + .shape([ + [null, null, null], + [mi('screwSteel'), ore('drawerBasic'), mi('screwSteel')], + [mi('screwSteel'), ore('craftingToolScrewdriver'), mi('screwSteel')] + ]) + .register() +assembler.recipeBuilder() + .circuitMeta(8) + .inputs(mi('screwSteel', 4), ore('drawerBasic')) + .outputs(item('storagedrawers:upgrade_template') * 16) + .duration(20) + .EUt(7) + .buildAndRegister() + +// Status Upgrade MK2 +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_status', 1)) + .shape([ + [item('minecraft:comparator'), item('minecraft:stick'), item('minecraft:comparator')], + [item('minecraft:stick'), item('storagedrawers:upgrade_status', 0), item('minecraft:stick')], + [item('minecraft:redstone'), item('minecraft:stick'), item('minecraft:redstone')] + ]) + .register() + +// Redstone Max Upgrade +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_redstone', 1)) + .shape([ + [item('minecraft:redstone'), item('minecraft:redstone'), item('minecraft:redstone')], + [item('minecraft:stick'), item('storagedrawers:upgrade_redstone', 0), item('minecraft:stick')], + [item('minecraft:stick'), item('minecraft:stick'), item('minecraft:stick')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_redstone', 1)) + .shape([ + [item('minecraft:redstone'), item('minecraft:redstone'), item('minecraft:redstone')], + [item('minecraft:stick'), item('storagedrawers:upgrade_redstone', 2), item('minecraft:stick')], + [item('minecraft:stick'), item('minecraft:stick'), item('minecraft:stick')] + ]) + .register() + +// Redstone Min Upgrade +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_redstone', 2)) + .shape([ + [item('minecraft:stick'), item('minecraft:stick'), item('minecraft:stick')], + [item('minecraft:stick'), item('storagedrawers:upgrade_redstone', 0), item('minecraft:stick')], + [item('minecraft:redstone'), item('minecraft:redstone'), item('minecraft:redstone')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_redstone', 2)) + .shape([ + [item('minecraft:stick'), item('minecraft:stick'), item('minecraft:stick')], + [item('minecraft:stick'), item('storagedrawers:upgrade_redstone', 1), item('minecraft:stick')], + [item('minecraft:redstone'), item('minecraft:redstone'), item('minecraft:redstone')] + ]) + .register() + +// Storage Downgrade +mods.minecraft.crafting.shapedBuilder() + .output(item('storagedrawers:upgrade_one_stack')) + .shape([ + [item('minecraft:stick'), item('minecraft:stick'), item('minecraft:stick')], + [item('minecraft:flint'), item('storagedrawers:upgrade_storage', 32767), item('minecraft:flint')], + [item('minecraft:stick'), item('minecraft:stick'), item('minecraft:stick')] + ]) + .register() diff --git a/overrides/groovy/postInit/normal/ToolBelt.groovy b/overrides/groovy/postInit/normal/ToolBelt.groovy new file mode 100644 index 00000000..97c2b760 --- /dev/null +++ b/overrides/groovy/postInit/normal/ToolBelt.groovy @@ -0,0 +1,29 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Tool Belt +mods.minecraft.crafting.removeByOutput(item('toolbelt:belt')) +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(item('toolbelt:pouch') * 2, item('minecraft:string') * 2, item('minecraft:leather') * 5) + .fluidInputs(fluid('glue') * 50) + .outputs(item('toolbelt:belt')) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Belt Pouch +mods.minecraft.crafting.removeByOutput(item('toolbelt:pouch')) +assembler.recipeBuilder() + .circuitMeta(2) + .inputs(mi('screwIronMagnetic'), mi('ringIron'), item('minecraft:string') * 4, item('minecraft:leather') * 3) + .fluidInputs(fluid('glue') * 100) + .outputs(item('toolbelt:pouch')) + .duration(100) + .EUt(30) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/Tooltips.groovy b/overrides/groovy/postInit/normal/Tooltips.groovy new file mode 100644 index 00000000..e74b5607 --- /dev/null +++ b/overrides/groovy/postInit/normal/Tooltips.groovy @@ -0,0 +1,48 @@ +if (!isClient()) return + +import net.minecraftforge.event.entity.player.ItemTooltipEvent +import net.minecraft.client.resources.I18n + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +event_manager.listen { ItemTooltipEvent event -> + def stack = event.itemStack + if (stack == null || stack.isEmpty()) return + + def tooltip = event.toolTip + def id = stack.item.registryName?.toString() + if (id == null) return + def meta = stack.itemDamage + + // AE2 P2P Tunnel + if (id == 'appliedenergistics2:part') { + switch (meta) { + case 460: tooltip.add('§a' + I18n.format('modpack.ae2.p2p_me.tooltip.1')); break + case 461: tooltip.add('§a' + I18n.format('modpack.ae2.p2p_redstone.tooltip.1')); break + case 462: tooltip.add('§a' + I18n.format('modpack.ae2.p2p_chest.tooltip.1')); break + case 463: tooltip.add('§a' + I18n.format('modpack.ae2.p2p_bucket.tooltip.1')); break + case 467: tooltip.add('§a' + I18n.format('modpack.ae2.p2p_torch.tooltip.1')); break + case 469: tooltip.add('§a' + I18n.format('modpack.ae2.p2p_conduit.tooltip.1')); break + case 470: tooltip.add('§a' + I18n.format('modpack.ae2.p2p_gtceu.tooltip.1')); break + } + // NAE2 P2P Interface Tunnel + } else if (id == 'nae2:part' && meta == 1) { + tooltip.add('§a' + I18n.format('modpack.nae2.p2p_interface.tooltip.1')) + // AEAdditions Fluid Pattern + } else if (id == 'aeadditions:pattern.fluid') { + tooltip.add('§a' + I18n.format('modpack.aeadditions.fluid_pattern.tooltip.1')) + // Mega Torch + } else if (id == 'torchmaster:mega_torch' && meta == 0) { + tooltip.add('§a' + I18n.format('modpack.torchmaster.mega_torch.tooltip.1')) + // Feral Flare Lantern + } else if (id == 'torchmaster:feral_flare_lantern') { + tooltip.add('§a' + I18n.format('modpack.torchmaster.lantern.tooltip.1')) + // Elevator + } else if (id.startsWith('elevatorid:elevator_') && !id.endsWith('_black')) { + tooltip.add('§a' + I18n.format('modpack.elevator.tooltip.1')) + // Fluid Tank + } else if (id == 'enderio:block_tank') { + tooltip.add('§a' + I18n.format('modpack.enderio.tank.tooltip.1')) + } +} diff --git a/overrides/groovy/postInit/normal/TorchMaster.groovy b/overrides/groovy/postInit/normal/TorchMaster.groovy new file mode 100644 index 00000000..42bf0491 --- /dev/null +++ b/overrides/groovy/postInit/normal/TorchMaster.groovy @@ -0,0 +1,24 @@ +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Mega Torch +mods.minecraft.crafting.removeByOutput(item('torchmaster:mega_torch', 0)) +mods.minecraft.crafting.shapedBuilder() + .output(item('torchmaster:mega_torch', 0)) + .shape([ + [mi('dustCoal'), mi('dustCoal'), mi('dustCoal')], + [ore('foilGold'), item('gregtech:planks', 1), ore('foilGold')], + [ore('foilGold'), item('gregtech:planks', 1), ore('foilGold')] + ]) + .register() +mods.minecraft.crafting.shapedBuilder() + .output(item('torchmaster:mega_torch', 0)) + .shape([ + [mi('dustCharcoal'), mi('dustCharcoal'), mi('dustCharcoal')], + [ore('foilGold'), item('gregtech:planks', 1), ore('foilGold')], + [ore('foilGold'), item('gregtech:planks', 1), ore('foilGold')] + ]) + .register() + +// Unlit Mega Torch +mods.jei.ingredient.hide(item('torchmaster:mega_torch', 1)) diff --git a/overrides/groovy/postInit/normal/UtilityWorlds.groovy b/overrides/groovy/postInit/normal/UtilityWorlds.groovy new file mode 100644 index 00000000..b2636c80 --- /dev/null +++ b/overrides/groovy/postInit/normal/UtilityWorlds.groovy @@ -0,0 +1,36 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Mining Portal +mods.jei.ingredient.hide(item('utilityworlds:portal_mining')) + +// Void Portal +mods.minecraft.crafting.shapelessBuilder() + .output(item('utilityworlds:portal_void')) + .input(item('utilityworlds:portal_void')) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('frameAluminium'), mi('plateRedstone'), mi('plateObsidian', 3)) + .outputs(item('utilityworlds:portal_void')) + .duration(2000) + .EUt(480) + .buildAndRegister() + +// Garden Portal +mods.minecraft.crafting.shapelessBuilder() + .output(item('utilityworlds:portal_garden')) + .input(item('utilityworlds:portal_garden')) + .register() +assembler.recipeBuilder() + .circuitMeta(1) + .inputs(mi('frameTitanium'), mi('plateEmerald'), mi('plateObsidian', 3)) + .outputs(item('utilityworlds:portal_garden')) + .duration(2000) + .EUt(1920) + .buildAndRegister() diff --git a/overrides/groovy/postInit/normal/WRCBE.groovy b/overrides/groovy/postInit/normal/WRCBE.groovy new file mode 100644 index 00000000..97a7ece9 --- /dev/null +++ b/overrides/groovy/postInit/normal/WRCBE.groovy @@ -0,0 +1,183 @@ +import gregtech.api.recipes.RecipeMap + +def assembler = RecipeMap.getByName("assembler") +def lathe = RecipeMap.getByName("lathe") +def chemical_reactor = RecipeMap.getByName("chemical_reactor") + + +//////////////////////////////////////// +// Items +//////////////////////////////////////// +// Obsidian Stick +mods.minecraft.ore_dict.remove('obsidianRod', item('wrcbe:material', 0)) +mods.minecraft.crafting.removeByOutput(item('wrcbe:material', 0)) +mods.jei.ingredient.hide(item('wrcbe:material', 0)) + +// Stone Bowl +mods.minecraft.crafting.removeByOutput(item('wrcbe:material', 1)) +mods.minecraft.crafting.shapedBuilder() + .output(item('wrcbe:material', 1)) + .shape([ + [mi('plateStone'), null, mi('plateStone')], + [mi('plateStone'), ore('craftingToolHardHammer'), mi('plateStone')], + [mi('plateStone'), mi('plateStone'), mi('plateStone')] + ]) + .register() +lathe.recipeBuilder() + .inputs(item('minecraft:stone_slab')) + .outputs(item('wrcbe:material', 1), mi('dustSmallStone')) + .duration(500) + .EUt(7) + .buildAndRegister() + +// REther Pearl +mods.minecraft.crafting.removeByOutput(item('wrcbe:material', 2)) +chemical_reactor.recipeBuilder() + .inputs(item('minecraft:ender_pearl'), item('minecraft:glowstone_dust')) + .fluidInputs(fluid('redstone') * 144) + .outputs(item('wrcbe:material', 2)) + .duration(600) + .EUt(30) + .buildAndRegister() + +// Wirreless Transceiver +mods.minecraft.crafting.removeByOutput(item('wrcbe:material', 3)) +assembler.recipeBuilder() + .inputs(mi('stickTungstenSteel'), item('wrcbe:material', 2)) + .fluidInputs(fluid('redstone') * 144) + .outputs(item('wrcbe:material', 3)) + .duration(600) + .EUt(120) + .buildAndRegister() + +// Blaze Transceiver +mods.minecraft.crafting.removeByOutput(item('wrcbe:material', 4)) +assembler.recipeBuilder() + .inputs(item('minecraft:blaze_rod'), item('wrcbe:material', 2)) + .fluidInputs(fluid('redstone') * 144) + .outputs(item('wrcbe:material', 4)) + .duration(600) + .EUt(120) + .buildAndRegister() + +// Receiver Dish +mods.minecraft.crafting.removeByOutput(item('wrcbe:material', 5)) +assembler.recipeBuilder() + .inputs(item('wrcbe:material', 1), item('wrcbe:material', 3)) + .fluidInputs(fluid('ender_pearl') * 144) + .outputs(item('wrcbe:material', 5)) + .duration(600) + .EUt(256) + .buildAndRegister() + +// Blaze Receiver Dish +mods.minecraft.crafting.removeByOutput(item('wrcbe:material', 6)) +assembler.recipeBuilder() + .inputs(item('wrcbe:material', 1), item('wrcbe:material', 4)) + .fluidInputs(fluid('ender_pearl') * 144) + .outputs(item('wrcbe:material', 6)) + .duration(600) + .EUt(256) + .buildAndRegister() + +// Triangulator +mods.minecraft.crafting.removeByOutput(item('wrcbe:triangulator')) +assembler.recipeBuilder() + .inputs(item('minecraft:compass'), item('wrcbe:material', 3)) + .fluidInputs(fluid('redstone') * 144) + .outputs(item('wrcbe:triangulator')) + .duration(600) + .EUt(120) + .buildAndRegister() + +// Remote +mods.minecraft.crafting.removeByOutput(item('wrcbe:remote')) +mods.minecraft.crafting.shapedBuilder() + .output(item('wrcbe:remote')) + .shape([ + [ore('craftingToolScrewdriver'), item('wrcbe:material', 3), ore('craftingToolFile')], + [ore('circuitHv'), mi('cover.screen'), ore('circuitHv')], + [mi('plateTungstenSteel'), mi('screwTungstenSteel'), mi('plateTungstenSteel')] + ]) + .register() + +// Sniffer +mods.minecraft.crafting.removeByOutput(item('wrcbe:sniffer')) +mods.minecraft.crafting.shapedBuilder() + .output(item('wrcbe:sniffer')) + .shape([ + [item('wrcbe:material', 5), item('wrcbe:material', 3), item('wrcbe:material', 5)], + [mi('plateTungstenSteel'), mi('stickTungstenSteel'), mi('plateTungstenSteel')], + [mi('plateStone'), mi('plateStone'), mi('plateStone')] + ]) + .register() + +// Tracker +mods.minecraft.crafting.removeByOutput(item('wrcbe:tracker')) +assembler.recipeBuilder() + .circuitMeta(2) + .inputs(mi('plateObsidian', 3), item('wrcbe:material', 3)) + .fluidInputs(fluid('redstone') * 144) + .outputs(item('wrcbe:tracker')) + .duration(600) + .EUt(120) + .buildAndRegister() + +// REP +mods.minecraft.crafting.removeByOutput(item('wrcbe:rep')) +mods.jei.ingredient.hide(item('wrcbe:rep')) + +// Private Sniffer +mods.minecraft.crafting.removeByOutput(item('wrcbe:p_sniffer')) +mods.minecraft.crafting.shapedBuilder() + .output(item('wrcbe:p_sniffer')) + .shape([ + [item('wrcbe:material', 6), item('wrcbe:material', 4), item('wrcbe:material', 6)], + [mi('plateTungstenSteel'), mi('stickTungstenSteel'), mi('plateTungstenSteel')], + [mi('plateStone'), mi('plateStone'), mi('plateStone')] + ]) + .register() + +// Map +mods.minecraft.crafting.removeByOutput(item('wrcbe:empty_map')) +assembler.recipeBuilder() + .inputs(item('wrcbe:triangulator'), item('minecraft:paper') * 8) + .fluidInputs(fluid('redstone') * 144) + .outputs(item('wrcbe:map')) + .duration(300) + .EUt(64) + .buildAndRegister() + + +//////////////////////////////////////// +// Blocks +//////////////////////////////////////// +// Wireless Transmitter +mods.minecraft.crafting.removeByOutput(item('wrcbe:wireless_logic', 0)) +assembler.recipeBuilder() + .inputs(mi('plateStone'), item('wrcbe:material', 3)) + .fluidInputs(fluid('ender_pearl') * 144) + .outputs(item('wrcbe:wireless_logic', 0)) + .duration(600) + .EUt(256) + .buildAndRegister() + +// Wireless Receiver +mods.minecraft.crafting.removeByOutput(item('wrcbe:wireless_logic', 1)) +assembler.recipeBuilder() + .inputs(mi('plateStone'), item('wrcbe:material', 5)) + .fluidInputs(fluid('ender_pearl') * 144) + .outputs(item('wrcbe:wireless_logic', 1)) + .duration(600) + .EUt(256) + .buildAndRegister() + +// Wireless Jammer +mods.minecraft.crafting.removeByOutput(item('wrcbe:wireless_logic', 2)) +assembler.recipeBuilder() + .inputs(mi('plateStone'), item('wrcbe:material', 2)) + .fluidInputs(fluid('ender_pearl') * 144) + .outputs(item('wrcbe:wireless_logic', 2)) + .duration(600) + .EUt(256) + .buildAndRegister() diff --git a/overrides/groovy/runConfig.json b/overrides/groovy/runConfig.json new file mode 100644 index 00000000..96032b12 --- /dev/null +++ b/overrides/groovy/runConfig.json @@ -0,0 +1,12 @@ +{ + "packName": "GregTech Expert 2", + "packId": "gte2", + "version": "0.2.0", + "debug": false, + "loaders": { + "preInit": [], + "postInit": [ + "postInit/" + ] + } +} diff --git a/overrides/scripts/specific/ExtraCells.zs b/overrides/scripts/specific/ExtraCells.zs deleted file mode 100644 index 8b07a028..00000000 --- a/overrides/scripts/specific/ExtraCells.zs +++ /dev/null @@ -1,88 +0,0 @@ -#modloaded extracells -# Imports -import mods.jei.JEI; -import crafttweaker.mods.IMod; -import crafttweaker.item.IItemStack; - -val ec2 as IMod = loadedMods["extracells"]; -if (!isNull(ec2)) { - val ec2Items as IItemStack[] = ec2.items; - - for item in ec2Items { - recipes.remove(item); - item.addTooltip(format.red("ExtraCells is out of support, please migration AE Additions!!")); - } -} - - - -######################################## -# Items -######################################## -# Fluid Storage Housing -recipes.addShapeless(, []); - -# Advanced Storage Housing -recipes.addShapeless(, []); - -# 256k ME Storage Component -recipes.addShapeless(, []); - -# 1024k ME Storage Component -recipes.addShapeless(, []); - -# 4096k ME Storage Component -recipes.addShapeless(, []); - -# 16384k ME Storage Component -recipes.addShapeless(, []); - -# 256k ME Fluid Storage Component -recipes.addShapeless(, []); - -# 1024k ME Fluid Storage Component -recipes.addShapeless(, []); - -# 4096k ME Fluid Storage Component -recipes.addShapeless(, []); - -# ME Portable Fluid Cell -recipes.addShapeless(, []); - -# Wireless Universal Terminal -recipes.addShapeless(, []); - -# Wireless Fluid Terminal -recipes.addShapeless(, []); - -# ME Upgrade (Tier 1) -recipes.addShapeless(, []); - -# ME Upgrade (Tier 2) -recipes.addShapeless(, []); - -# ME Upgrade (Tier 3) -recipes.addShapeless(, []); - - - -######################################## -# Blocks -######################################## -# ME Fluid Assembler -recipes.addShapeless(, []); - -# ME Fluid Auto Filler -recipes.addShapeless(, []); - -# Fluid Vibration Chamber -recipes.addShapeless(, []); - -# Blast resistant ME Drive -recipes.addShapeless(, []); - -# ME Drive Fixture -recipes.addShapeless(, []); - -# ME Energy Cell Fixture -recipes.addShapeless(, []); diff --git a/overrides/scripts/specific/VolumetricFlask.zs b/overrides/scripts/specific/VolumetricFlask.zs deleted file mode 100644 index e55a4c4b..00000000 --- a/overrides/scripts/specific/VolumetricFlask.zs +++ /dev/null @@ -1,133 +0,0 @@ -#modloaded volumetricflask -# Imports -import mods.jei.JEI; -import crafttweaker.item.IItemStack; - - - -######################################## -# Items -######################################## -# Flask -var flasks as IItemStack[] = [ - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag(), - .withEmptyTag() -]; -for flask in flasks { - recipes.remove(flask); -} -for i, flask in flasks { - .addItems([flasks[i]]); - assembler.recipeBuilder() - .circuit(i + 1) - .notConsumable([]) - .fluidInputs([ * 144]) - .outputs([flask]) - .duration(20) - .EUt(480) - .buildAndRegister(); -} -for i, flask in flasks { - extractor.recipeBuilder() - .inputs([flask]) - .fluidOutputs([ * 144]) - .duration(10) - .EUt(7) - .buildAndRegister(); -} -.addTooltip(format.red("VolumetricFlask is out of support, please move AE2 Fluid Crafting Rework!!")); - - - -######################################## -# Blocks -######################################## -# Interface -.addItems([ - , - -]); - -# Interface -recipes.remove(); -recipes.addShapeless(, []); -recipes.addShaped(, [ - [, , ], - [, , ], - [, , ] -]); -assembler.recipeBuilder() - .circuit(4) - .inputs([ - , - , - , - * 2 - ]) - .fluidInputs([ * 144]) - .outputs([]) - .duration(20) - .EUt(1920) - .buildAndRegister(); -packer.recipeBuilder() - .inputs([]) - .outputs([, * 4]) - .duration(10) - .EUt(7) - .buildAndRegister(); -.addTooltip(format.red("VolumetricFlask is out of support, please move AE2 Fluid Crafting Rework!!")); -.addTooltip(format.red("VolumetricFlask is out of support, please move AE2 Fluid Crafting Rework!!")); - -# Buffer -recipes.remove(); -recipes.addShaped(, [ - [, , ], - [, , ], - [, , ] -]); -packer.recipeBuilder() - .inputs([]) - .outputs([, * 8]) - .duration(10) - .EUt(7) - .buildAndRegister(); -.addTooltip(format.red("VolumetricFlask is out of support, please move AE2 Fluid Crafting Rework!!")); - -# Filler -recipes.remove(); -assembler.recipeBuilder() - .inputs([ - * 2, - * 2, - * 4, - - ]) - .fluidInputs([ * 144]) - .outputs([]) - .duration(200) - .EUt(480) - .buildAndRegister(); -packer.recipeBuilder() - .inputs([]) - .outputs([, * 2]) - .duration(10) - .EUt(7) - .buildAndRegister(); -.addTooltip(format.red("VolumetricFlask is out of support, please move AE2 Fluid Crafting Rework!!"));