create-the-brass-oncerto/kubejs/server_scripts/add/electric/infinity_fetching_pool.js

204 lines
6.2 KiB
JavaScript
Raw Normal View History

2025-04-11 17:07:29 +08:00
ServerEvents.recipes(event => {
const PoolStructure =
{
"type": "custommachinery:structure",
"pattern":[
[
"AABAA",
"ACCCA",
"BCCCB",
"ACCCA",
"AABAA"
],
[
"E D E",
" I ",
"DImID",
" I ",
"E D E"
],
[
" ",
" FFF ",
" FGF ",
" FFF ",
" "
],
[
" HHH ",
"H H",
"H H",
"H H",
" HHH "
]
],
"keys": {
"A":"create:industrial_iron_block",
"B":"design_decor:industrial_iron_boiler",
"C":"createaddition:modular_accumulator",
"D":"design_decor:diagonal_girder",
"E":"design_decor:andesite_floodlight[facing=up,turned_on=true]",
"F":"design_decor:brass_boiler_structure",
"G":"design_decor:brass_boiler_large",
"H":"design_decor:brass_railing",
"I":"design_decor:diagonal_metal_support"
},
"jei": true
}
const PoolEnergyInput = {
"type": "custommachinery:energy",
"mode": "input",
"amount": 2880
}
const PoolEnergyInput1 = {
"type": "custommachinery:energy",
"mode": "input",
"amount": 8640
}
const PoolReplaceFliter = [
"minecraft:air",
"minecraft:void_air",
"minecraft:cave_air",
"kubejs:cryogen[level=1]",
"kubejs:cryogen[level=2]",
"kubejs:cryogen[level=3]",
"kubejs:cryogen[level=4]",
"kubejs:cryogen[level=5]",
"kubejs:cryogen[level=6]",
"kubejs:cryogen[level=7]",
"kubejs:cryogen[level=8]",
"kubejs:cryogen[level=9]",
"kubejs:cryogen[level=10]",
"kubejs:cryogen[level=11]",
"kubejs:cryogen[level=12]",
"kubejs:cryogen[level=13]",
"kubejs:cryogen[level=14]",
"kubejs:cryogen[level=15]",
"kubejs:saline_water[level=1]",
"kubejs:saline_water[level=2]",
"kubejs:saline_water[level=3]",
"kubejs:saline_water[level=4]",
"kubejs:saline_water[level=5]",
"kubejs:saline_water[level=6]",
"kubejs:saline_water[level=7]",
"kubejs:saline_water[level=8]",
"kubejs:saline_water[level=9]",
"kubejs:saline_water[level=10]",
"kubejs:saline_water[level=11]",
"kubejs:saline_water[level=12]",
"kubejs:saline_water[level=13]",
"kubejs:saline_water[level=14]",
"kubejs:saline_water[level=15]",
"minecraft:lava[level=1]",
"minecraft:lava[level=2]",
"minecraft:lava[level=3]",
"minecraft:lava[level=4]",
"minecraft:lava[level=5]",
"minecraft:lava[level=6]",
"minecraft:lava[level=7]",
"minecraft:lava[level=8]",
"minecraft:lava[level=9]",
"minecraft:lava[level=10]",
"minecraft:lava[level=11]",
"minecraft:lava[level=12]",
"minecraft:lava[level=13]",
"minecraft:lava[level=14]",
"minecraft:lava[level=15]"
]
function PoolFliter(item){
return({
"type": "custommachinery:item_transform",
"input": item,
"output": item
})
}
function PoolReplace(amount,block){
return({
"type": "custommachinery:block",
"mode": "output",
"action": "replace_break",
"amount": amount,
"pos": [-1, 2, -1, 1, 2, 1],
"filter": PoolReplaceFliter,
"whitelist": true,
"block": block
})
}
//
event.custom({
"type": "custommachinery:custom_machine",
"machine": "dut:infinity_fetching_pool",
"time": 1,
"error": true,
"requirements": [
PoolStructure,
PoolEnergyInput,
PoolFliter("kubejs:saline_water_bucket"),
PoolReplace(1,"kubejs:saline_water"),
]
}).id("dut_create:infinity_fetching_pool/saline_water")
event.custom({
"type": "custommachinery:custom_machine",
"machine": "dut:infinity_fetching_pool",
"time": 1,
"error": true,
"requirements": [
PoolStructure,
PoolEnergyInput,
PoolFliter("kubejs:cryogen_bucket"),
PoolReplace(1,"kubejs:cryogen"),
]
}).id("dut_create:infinity_fetching_pool/cryogen")
event.custom({
"type": "custommachinery:custom_machine",
"machine": "dut:infinity_fetching_pool",
"time": 1,
"error": true,
"requirements": [
PoolStructure,
PoolEnergyInput,
PoolFliter("minecraft:lava_bucket"),
PoolReplace(1,"minecraft:lava"),
]
}).id("dut_create:infinity_fetching_pool/lava")
event.custom({
"type": "custommachinery:custom_machine",
"machine": "dut:infinity_fetching_pool",
"time": 1,
"error": true,
"priority": 1,
"requirements": [
PoolStructure,
PoolEnergyInput1,
PoolFliter("kubejs:saline_water_bucket"),
PoolReplace(3,"kubejs:saline_water"),
]
}).id("dut_create:infinity_fetching_pool/saline_water_fast")
event.custom({
"type": "custommachinery:custom_machine",
"machine": "dut:infinity_fetching_pool",
"time": 1,
"error": true,
"priority": 1,
"requirements": [
PoolStructure,
PoolEnergyInput1,
PoolFliter("kubejs:cryogen_bucket"),
PoolReplace(3,"kubejs:cryogen"),
]
}).id("dut_create:infinity_fetching_pool/cryogen_fast")
event.custom({
"type": "custommachinery:custom_machine",
"machine": "dut:infinity_fetching_pool",
"time": 1,
"error": true,
"priority": 1,
"requirements": [
PoolStructure,
PoolEnergyInput1,
PoolFliter("minecraft:lava_bucket"),
PoolReplace(3,"minecraft:lava"),
]
}).id("dut_create:infinity_fetching_pool/lava_fast")
})