// This File has been authored by AllTheMods Staff, or a Community contributor for use in AllTheMods - AllTheMods 9. // As all AllTheMods packs are licensed under All Rights Reserved, this file is not allowed to be used in any public packs not released by the AllTheMods Team, without explicit permission. GTCEuStartupEvents.registry('gtceu:recipe_type', allthemods => { allthemods.create('apiary_i') .category('apiary_i') .setEUIO('in') .setMaxIOSize(6, 6, 1, 0) .setProgressBar(GuiTextures.PROGRESS_BAR_ARROW, FillDirection.LEFT_TO_RIGHT) .setSound(GTSoundEntries.SCIENCE) allthemods.create('apiary_ii') .category('apiary_ii') .setEUIO('in') .setMaxIOSize(6, 15, 1, 0) .setProgressBar(GuiTextures.PROGRESS_BAR_ARROW, FillDirection.LEFT_TO_RIGHT) .setSound(GTSoundEntries.SCIENCE) allthemods.create('comb_processor') .category('comb_processor') .setEUIO('in') .setMaxIOSize(6, 6, 0, 1) .setProgressBar(GuiTextures.PROGRESS_BAR_ARROW, FillDirection.LEFT_TO_RIGHT) .setSound(GTSoundEntries.MIXER) }) GTCEuStartupEvents.registry('gtceu:machine', allthemods => { allthemods.create('apiary_i', 'multiblock') .rotationState(RotationState.NON_Y_AXIS) .recipeType('apiary_i') .appearanceBlock(GTBlocks.CASING_STAINLESS_CLEAN) .tooltips(Component.translatable("kubejs.apiary_i.tooltip.bee_eater")) .recipeModifiers([GTRecipeModifiers.PARALLEL_HATCH, GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.NON_PERFECT_OVERCLOCK)]) .pattern(definition => FactoryBlockPattern.start() .aisle(' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .aisle(' CCCCC ', ' CMMMC ', ' CW#WC ', ' CW#WC ', ' CWWWC ', ' CCCCC ') .aisle('CCCCCCC', 'CMMMMMC', 'C##S##C', 'C#####C', 'C#W#W#C', 'CCCOCCC') .aisle(' CCCCC ', ' CMMMC ', ' CW#WC ', ' CW#WC ', ' CWWWC ', ' CCCCC ') .aisle(' CCC ', ' CKC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .where('K', Predicates.controller(Predicates.blocks(definition.get()))) .where('M', Predicates.blockTag(Tags.block("minecraft:dirt"))) .where('S', Predicates.blockTag(Tags.block("minecraft:flowers"))) .where('W', Predicates.blocks('gtceu:treated_wood_frame')) .where('C', Predicates.blocks(GTBlocks.CASING_STAINLESS_CLEAN.get()).setMinGlobalLimited(74) .or(Predicates.autoAbilities(definition.getRecipeTypes())) .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1)) .or(Predicates.abilities(PartAbility.PARALLEL_HATCH).setMaxGlobalLimited(1)) ) .where('O', Predicates.abilities(PartAbility.MUFFLER) .setExactLimit(1) ) .where('#', Predicates.air()) .where(' ', Predicates.any()) .build() ) .workableCasingRenderer('gtceu:block/casings/solid/machine_casing_clean_stainless_steel', 'gtceu:block/multiblock/implosion_compressor', false) allthemods.create('apiary_ii', 'multiblock') .rotationState(RotationState.NON_Y_AXIS) .recipeType('apiary_ii') .appearanceBlock(GTBlocks.CASING_TITANIUM_STABLE) .tooltips(Component.translatable("kubejs.apiary_ii.tooltip.bee_requirements")) .recipeModifier(GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.NON_PERFECT_OVERCLOCK)) .pattern(definition => FactoryBlockPattern.start() .aisle(' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .aisle(' CCCCC ', ' CMMMC ', ' CW#WC ', ' CW#WC ', ' CWWWC ', ' CCCCC ') .aisle('CCCCCCC', 'CMMMMMC', 'C##S##C', 'C#####C', 'C#W#W#C', 'CCCOCCC') .aisle(' CCCCC ', ' CMMMC ', ' CW#WC ', ' CW#WC ', ' CWWWC ', ' CCCCC ') .aisle(' CCC ', ' CKC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .where('K', Predicates.controller(Predicates.blocks(definition.get()))) .where('M', Predicates.blockTag(Tags.block("minecraft:dirt"))) .where('S', Predicates.blockTag(Tags.block("minecraft:flowers"))) .where('W', Predicates.blocks('gtceu:treated_wood_frame')) .where('C', Predicates.blocks(GTBlocks.CASING_TITANIUM_STABLE.get()).setMinGlobalLimited(74) .or(Predicates.autoAbilities(definition.getRecipeTypes())) .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1)) ) .where('O', Predicates.abilities(PartAbility.MUFFLER) .setExactLimit(1) ) .where('#', Predicates.air()) .where(' ', Predicates.any()) .build() ) .workableCasingRenderer('gtceu:block/casings/solid/machine_casing_stable_titanium', 'gtceu:block/multiblock/implosion_compressor', false) allthemods.create('comb_processor', 'multiblock') .rotationState(RotationState.NON_Y_AXIS) .recipeType('comb_processor') .appearanceBlock(GTBlocks.CASING_STEEL_SOLID) .recipeModifiers([GTRecipeModifiers.PARALLEL_HATCH, GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.NON_PERFECT_OVERCLOCK)]) .pattern(definition => FactoryBlockPattern.start() .aisle(' CCC ', ' ', ' S ', ' SSS ', ' SSSSS ', ' SSSSS ', ' SSSSS ', ' ', ' ', ' ', ' ', ' ') .aisle(' CFFFC ', ' SSS ', ' SS SS ', ' SS SS ', ' S S ', ' S S ', ' S S ', ' ', ' ', ' ', ' ', ' ') .aisle(' CFFSFFC ', ' SS#SS ', ' S P S ', ' S S ', 'S S', 'S S', 'S P S', ' ', ' ', ' ', ' O ', ' ') .aisle('CFFSSSFFC', ' SS###SS ', ' S P S ', 'S S', 'S S', 'S S', 'S P S', ' ', ' CCC ', ' CCC ', ' CPC ', ' C ') .aisle('CFSSSSSFC', ' S##P##S ', 'S P S', 'S P S', 'S PPPPP S', 'S P S', 'S P S', ' G ', ' CPC ', ' CGC ', ' CGC ', ' CCC ') .aisle('CFFSSSFFC', ' SS###SS ', ' S P S ', 'S S', 'S S', 'S S', 'S P S', ' ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCFFSFFCC', ' SS#SS ', ' S P S ', ' S S ', 'S S', 'S S', 'S P S', ' ', ' ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCCFFFCCC', ' SSS ', ' SS SS ', ' SS SS ', ' S S ', ' S S ', ' S S ', ' ', ' ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCCCCCCCC', ' ', ' S ', ' SSS ', ' SSSSS ', ' SSSSS ', ' SSSSS ', ' ', ' ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCCCCCCCC', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCCCCCCCC', ' CCCCCCC ', ' CCCCC ', ' CCCCC ', ' CCCCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCCCCCCCC', ' CCCCCCC ', ' CCCCC ', ' CCCCC ', ' CCCCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCCCCCCCC', ' CCCCCCC ', ' CCCCC ', ' CCCCC ', ' CCCCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ') .aisle('CCCCCCCCC', ' CCCKCCC ', ' CCCCC ', ' CCCCC ', ' CCCCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' CCC ', ' ') .where('K', Predicates.controller(Predicates.blocks(definition.get()))) .where('F', Predicates.blocks('gtceu:steel_frame')) .where('S', Predicates.blocks(GTBlocks.CASING_STAINLESS_CLEAN.get())) .where('P', Predicates.blocks(GTBlocks.CASING_STEEL_PIPE.get())) .where('G', Predicates.blocks(GTBlocks.CASING_STAINLESS_STEEL_GEARBOX.get())) .where('C', Predicates.blocks(GTBlocks.CASING_STEEL_SOLID.get()).setMinGlobalLimited(250) .or(Predicates.autoAbilities(definition.getRecipeTypes())) .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1)) .or(Predicates.abilities(PartAbility.PARALLEL_HATCH).setMaxGlobalLimited(1)) ) .where('O', Predicates.abilities(PartAbility.MUFFLER) .setExactLimit(1) ) .where('#', Predicates.blocks('minecraft:honey_block')) .where(' ', Predicates.any()) .build() ) .workableCasingRenderer('gtceu:block/casings/solid/machine_casing_solid_steel', 'gtceu:block/multiblock/implosion_compressor', false) }) // This File has been authored by AllTheMods Staff, or a Community contributor for use in AllTheMods - AllTheMods 9. // As all AllTheMods packs are licensed under All Rights Reserved, this file is not allowed to be used in any public packs not released by the AllTheMods Team, without explicit permission.