实现效果

ATM9 给格雷科技加上自定义的多方块来实现热力蒸馏塔的水到盐水,盐水到锂,蒸馏水到重水-第1张图片ATM9 给格雷科技加上自定义的多方块来实现热力蒸馏塔的水到盐水,盐水到锂,蒸馏水到重水-第2张图片

ATM9 给格雷科技加上自定义的多方块来实现热力蒸馏塔的水到盐水,盐水到锂,蒸馏水到重水-第3张图片

ATM9 给格雷科技加上自定义的多方块来实现热力蒸馏塔的水到盐水,盐水到锂,蒸馏水到重水-第4张图片ATM9 给格雷科技加上自定义的多方块来实现热力蒸馏塔的水到盐水,盐水到锂,蒸馏水到重水-第5张图片


新建一个txt文件,然后代码塞到txt文件里面,然后改后缀为.js就可以可以了

下面代码塞到startup_scripts这个里面

GTCEuStartupEvents.registry('gtceu:recipe_type', mek => { //注册一个配方事件,配方事件必须在机器添加前注册

    mek.create('re_li_zheng_liu')           //配方类型,JEI上上类别就是这个

        .category('re_li_zheng_liu_ta')     //不知道是干啥的,找了个边没有匹配上的          

        .setEUIO('in')                      //能量输入,in是输入能量

        .setMaxIOSize(3, 3, 3, 3)           //物品输入槽位,物品输出槽位,流体输入槽位,流体输出槽位,3代表有3个槽位

        .setProgressBar(                    //设置配方进度条显示方式

            GuiTextures.PROGRESS_BAR_ARROW,

            FillDirection.LEFT_TO_RIGHT

        )

        .setSlotOverlay(                    //设置槽位叠加效果

            false,

            false,

            GuiTextures.SOLIDIFIER_OVERLAY

        )

        .setSound(GTSoundEntries.BOILER)    //设置声音

})


GTCEuStartupEvents.registry('gtceu:machine', mek => {                   ///创建一个事件,gtceu的机器注册

    mek.create('re_li_zheng_liu_ta_he_xin', 'multiblock')               //机器名称是mek_re_li_zheng_liu,类型是多方块,实际上物品就叫这个

        .tooltips(Component.translatable('your.langfile.entry.here'))   // 工具提示

        .rotationState(RotationState.NON_Y_AXIS)                        //旋转行为

        .appearanceBlock(GTBlocks.CASING_STEEL_SOLID)                   //外壳显示

        .recipeModifiers(

            [

                GTRecipeModifiers.PARALLEL_HATCH,

                GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.PERFECT_OVERCLOCK)

            ])

        .recipeTypes(['re_li_zheng_liu'])                           //要和上面注册的一致才有效,配方类型

        .pattern(

            definition => FactoryBlockPattern.start()              //多方块结构

                .aisle('WBW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW')   //第三列

                .aisle('W#W', 'B#B', 'B#B', 'B#B', 'B#B', 'B#B', 'B#B', 'B#B', 'B#B')   //第二列

                .aisle('WCW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW', 'WBW')   //第一列

                .where(

                    'C', Predicates.controller

                    (Predicates.blocks(definition.get())                                //控制中心

                    ))

                .where(

                    '#', Predicates.air()

                ) //空心的,空气

                .where('B', Predicates.blocks

                    (GTBlocks.CASING_TEMPERED_GLASS.get())                              //钢化玻璃

                    .or(Predicates.autoAbilities(definition.getRecipeTypes()))          //输入总线,输出总线,输入仓,输出仓这一类的

                    .or(Predicates.blocks("minecraft:glass"))                           //玻璃

                )     //玻璃

                .where(

                    'W', Predicates.blocks("minecraft:stone")                           //外壳

                        .or(Predicates.autoAbilities(definition.getRecipeTypes()))      //输入总线,输出总线,输入仓,输出仓这一类的

                        .or(Predicates.abilities(PartAbility.PARALLEL_HATCH).setMaxGlobalLimited(4))    //并行处理仓

                        .or(Predicates.blocks(GTBlocks.CASING_STEEL_SOLID.get()))                       //脱氧钢机械方块

                    //.or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1))               //维护仓

                    //.or(Predicates.abilities(PartAbility.MUFFLER).setExactLimit(1))                   // 消声仓

                )

                .build()

        )

        .workableCasingRenderer(

            "gtceu:block/casings/solid/machine_casing_inert_ptfe",      //

            "gtceu:block/multiblock/large_chemical_reactor",            //

            false

        )

})



下面代码塞到server_scripts这个里面

ServerEvents.recipes(r => {

    //蒸馏水到重水

    r.recipes.gtceu.distillation_tower(`gregtech:distillation_tower_to_heavy_water`) //distillation_towe 蒸馏塔

    .inputFluids(

        Fluid.of('gtceu:distilled_water', 10000),//蒸馏水

    )

        .outputFluids(

        Fluid.of('mekanism:heavy_water', 5000),//重水

           )

    .duration(40)

    .EUt(480);

//

    r.recipes.gtceu.re_li_zheng_liu(`gregtech:shui_dao_yan_shui`) //gtceu.re_li_zheng_liu 务必和注册的一致

    .inputFluids(

        Fluid.of('minecraft:water', 10000),//水

    )

        .outputFluids(

        Fluid.of('mekanism:brine', 5000),//盐水

           )

    .duration(40)

    .EUt(480);

   

    r.recipes.gtceu.re_li_zheng_liu(`gregtech:yan_shuo_dao_li`)

    .inputFluids(

        Fluid.of('mekanism:brine', 10000),//盐水

    )

        .outputFluids(

        Fluid.of('mekanism:lithium', 5000),//锂

           )

    .duration(40)

    .EUt(480);

})


//设置热力蒸馏塔核心的合成配方

ServerEvents.recipes(mek => {  

    mek.shaped('gtceu:re_li_zheng_liu_ta_he_xin',  //名称务必和注册的一样

        ['AWA', 'ASA', 'WAW'],

        {

            A: '#gtceu:circuits/mv',

            W: 'gtceu:copper_single_cable',

            S: 'gtceu:solid_machine_casing'

        }

    ).id('gtceu:mek_re_li_zheng_liu') //注册的配方合成ID

})