diff --git a/gradle.properties b/gradle.properties index 2826e90a8..d905797a5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ org.gradle.logging.level=info # Minecraft related mod_id=advancedperipherals minecraft_version=1.19.2 -forge_version=43.4.0 +forge_version=43.4.2 loader_version=43 mod_version=0.8r release_type=release diff --git a/src/main/java/de/srendi/advancedperipherals/common/addons/computercraft/peripheral/MeBridgePeripheral.java b/src/main/java/de/srendi/advancedperipherals/common/addons/computercraft/peripheral/MeBridgePeripheral.java index 787f1ec14..d577b5d66 100644 --- a/src/main/java/de/srendi/advancedperipherals/common/addons/computercraft/peripheral/MeBridgePeripheral.java +++ b/src/main/java/de/srendi/advancedperipherals/common/addons/computercraft/peripheral/MeBridgePeripheral.java @@ -262,7 +262,7 @@ public final MethodResult importItem(IComputerAccess computer, IArguments argume String side = arguments.getString(1); IItemHandler inventory; - if (Direction.byName(side.toUpperCase(Locale.ROOT)) == null && ComputerSide.valueOfInsensitive(side.toUpperCase(Locale.ROOT)) == null) { + if (Direction.byName(side) != null || ComputerSide.valueOfInsensitive(side.toUpperCase(Locale.ROOT)) != null) { inventory = InventoryUtil.getHandlerFromDirection(arguments.getString(1), owner); } else { inventory = InventoryUtil.getHandlerFromName(computer, arguments.getString(1)); @@ -280,7 +280,7 @@ public final MethodResult exportItem(IComputerAccess computer, @NotNull IArgumen String side = arguments.getString(1); IItemHandler inventory; - if (Direction.byName(side.toUpperCase(Locale.ROOT)) == null && ComputerSide.valueOfInsensitive(side.toUpperCase(Locale.ROOT)) == null) { + if (Direction.byName(side) != null || ComputerSide.valueOfInsensitive(side.toUpperCase(Locale.ROOT)) != null) { inventory = InventoryUtil.getHandlerFromDirection(arguments.getString(1), owner); } else { inventory = InventoryUtil.getHandlerFromName(computer, arguments.getString(1)); diff --git a/src/testMod/kotlin/de/srendi/advancedperipherals/test/PeripheralTest.kt b/src/testMod/kotlin/de/srendi/advancedperipherals/test/PeripheralTest.kt index 264be4d2a..7f0ffb13c 100644 --- a/src/testMod/kotlin/de/srendi/advancedperipherals/test/PeripheralTest.kt +++ b/src/testMod/kotlin/de/srendi/advancedperipherals/test/PeripheralTest.kt @@ -17,17 +17,17 @@ class PeripheralTest { // The ME System needs to boot up, so we use a sleep() in the specific lua script // We set the timeoutTicks to 300 so the test does not fail - @GameTest(timeoutTicks = 300) + @GameTest(timeoutTicks = 600) fun meCrafting(context: GameTestHelper) = context.sequence { thenComputerOk(); } - @GameTest(timeoutTicks = 300) + @GameTest(timeoutTicks = 600) fun meStorage(context: GameTestHelper) = context.sequence { thenComputerOk(); } - @GameTest(timeoutTicks = 300) + @GameTest(timeoutTicks = 600) fun meTransfer(context: GameTestHelper) = context.sequence { thenComputerOk(); } diff --git a/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.energydet.lua b/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.energydet.lua index 8b294ebde..4c442e746 100644 --- a/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.energydet.lua +++ b/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.energydet.lua @@ -16,7 +16,7 @@ sleep(0.5) test.eq(100, det.getTransferRate(), "Transfer Rate should be 100") test.eq(100, det.getTransferRateLimit(), "Transfer Rate Limit should be 100") -det.setTransferRateLimit(100000) +det.setTransferRateLimit(4000000) sleep(0.5) -test.eq(3200, det.getTransferRate(), "Transfer Rate should be 3200") -- Rate limit from the cables -test.eq(100000, det.getTransferRateLimit(), "Transfer Rate Limit should be 100000") +test.eq(100000, det.getTransferRate(), "Transfer Rate should be 100000") -- Rate limit from the cables +test.eq(4000000, det.getTransferRateLimit(), "Transfer Rate Limit should be 4000000") diff --git a/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.mecrafting.lua b/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.mecrafting.lua index ad9d15a7d..465dcc7a2 100644 --- a/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.mecrafting.lua +++ b/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.mecrafting.lua @@ -54,7 +54,7 @@ stickCount = bridge.getItem(stickFilter).amount test.assert(stickCount == 8, "We should have 8 sticks") -- There is no getFluid function, so we need to do it like this -waterCount = bridge.listCraftableFluid()[1].amount +waterCount = bridge.listCraftableFluids()[1].amount test.assert(waterCount == 0, "We should not have water") craftingSuccessful = bridge.craftFluid(waterFilter) diff --git a/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.metransfer.lua b/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.metransfer.lua index 84a7674f5..2b46d3308 100644 --- a/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.metransfer.lua +++ b/src/testMod/resources/data/advancedperipheralstest/computer/tests/peripheraltest.metransfer.lua @@ -5,7 +5,7 @@ --- sleep(4) -bridge = peripheral.wrap("me_bridge_3") +bridge = peripheral.wrap("me_bridge_20") chest = peripheral.wrap("minecraft:chest_2") test.assert(bridge, "Peripheral not found") test.assert(chest, "Chest not found") @@ -19,8 +19,8 @@ test.assert(energyUsage > 17, tostring(energyUsage) .. " Consumption does not se planksFilter = {name="minecraft:oak_planks", count=5} logFilter = {name="minecraft:oak_log", count=8} -exported, err = bridge.exportItemToPeripheral(planksFilter, peripheral.getName(chest)) -test.assert(exported == 5, "Export failed ".. (err or "")) +exported, err = bridge.exportItem(planksFilter, peripheral.getName(chest)) +test.assert(exported == 5, "Export failed 5 planks to chest ".. (err or "")) planksItem = bridge.getItem(planksFilter) test.assert(planksItem.amount == 251, "We should have 251 planks") @@ -36,7 +36,7 @@ test.assert(chestPlanks, "Planks not found in chest") test.assert(chestPlanks.count == 5, "We should have 5 planks in the chest") exported, err = bridge.exportItem(planksFilter, "front") -test.assert(exported == 5, "Export failed ".. (err or "")) +test.assert(exported == 5, "Export failed 5 planks to front:".. (err or "")) planksItem = bridge.getItem(planksFilter) test.assert(planksItem.amount == 246, "We should have 246 planks") @@ -50,8 +50,8 @@ end test.assert(chestPlanks, "Planks not found in chest") test.assert(chestPlanks.count == 10, "We should have 5 planks in the chest") -imported, err = bridge.importItemFromPeripheral(logFilter, peripheral.getName(chest)) -test.assert(imported == 8, "import failed ".. (err or "")) +imported, err = bridge.importItem(logFilter, peripheral.getName(chest)) +test.assert(imported == 8, "import failed 8 logs to chest".. (err or "")) logsItem = bridge.getItem(logFilter) test.assert(logsItem.amount == 264, "We should have 264 logs") @@ -67,7 +67,7 @@ test.assert(chestLogs, "Logs not found in chest") test.assert(chestLogs.count == 56, "We should have 56 logs in the chest") imported, err = bridge.importItem(logFilter, "south") -test.assert(imported == 8, "import failed ".. (err or "")) +test.assert(imported == 8, "import failed 8 logs from south".. (err or "")) logsItem = bridge.getItem(logFilter) test.assert(logsItem.amount == 272, "We should have 272 logs") diff --git a/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.energydet.snbt b/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.energydet.snbt index a7d9cca1b..fbb06aa29 100644 --- a/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.energydet.snbt +++ b/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.energydet.snbt @@ -32,21 +32,21 @@ {pos: [0, 1, 2], state: "minecraft:air"}, {pos: [0, 1, 3], state: "minecraft:air"}, {pos: [0, 1, 4], state: "minecraft:air"}, - {pos: [1, 1, 0], state: "mekanism:creative_energy_cube{facing:north,fluid_logged:empty}", nbt: {EnergyContainers: [], ForgeCaps: {}, Items: [], componentConfig: {config0: {side0: 1, side1: 1, side2: 1, side3: 1, side4: 1, side5: 1}, config6: {side0: 4, side1: 1, side2: 1, side3: 1, side4: 1, side5: 1}, eject0: 1b, eject6: 0b}, componentEjector: {color0: -1, color1: -1, color2: -1, color3: -1, color4: -1, color5: -1, strictInput: 0b}, componentFrequency: {Security: {name: "Security", owner: [I; 940439953, -167562164, -1601161573, -1389718966], publicFreq: 1b}}, componentSecurity: {owner: [I; 940439953, -167562164, -1601161573, -1389718966], securityMode: 0}, controlType: 0, currentRedstone: 0, id: "mekanism:creative_energy_cube", redstone: 0b}}, - {pos: [1, 1, 1], state: "mekanism:basic_universal_cable{fluid_logged:empty}", nbt: {ForgeCaps: {}, connection0: 0, connection1: 0, connection2: 0, connection3: 0, connection4: 0, connection5: 0, id: "mekanism:basic_universal_cable", redstone: 0b}}, - {pos: [1, 1, 2], state: "advancedperipherals:energy_detector{orientation:south_up}", nbt: {ForgeCaps: {}, ForgeData: {CustomName: "[Energy Detector]"}, Items: [], id: "advancedperipherals:energy_detector", rateLimit: 0}}, - {pos: [1, 1, 3], state: "mekanism:basic_universal_cable{fluid_logged:empty}", nbt: {ForgeCaps: {}, connection0: 0, connection1: 0, connection2: 0, connection3: 0, connection4: 0, connection5: 0, energy: "8000", id: "mekanism:basic_universal_cable", redstone: 0b}}, - {pos: [1, 1, 4], state: "mekanism:creative_energy_cube{facing:west,fluid_logged:empty}", nbt: {EnergyContainers: [{Container: 0b, stored: "18446744073709551615.9999"}], ForgeCaps: {}, Items: [], componentConfig: {config0: {side0: 4, side1: 4, side2: 4, side3: 4, side4: 4, side5: 4}, config6: {side0: 4, side1: 1, side2: 1, side3: 1, side4: 1, side5: 1}, eject0: 1b, eject6: 0b}, componentEjector: {color0: -1, color1: -1, color2: -1, color3: -1, color4: -1, color5: -1, strictInput: 0b}, componentFrequency: {Security: {name: "Security", owner: [I; 940439953, -167562164, -1601161573, -1389718966], publicFreq: 1b}}, componentSecurity: {owner: [I; 940439953, -167562164, -1601161573, -1389718966], securityMode: 0}, controlType: 0, currentRedstone: 15, id: "mekanism:creative_energy_cube", redstone: 0b}}, + {pos: [1, 1, 0], state: "powah:energy_cell_niotic{waterlogged:false}", nbt: {ForgeCaps: {}, Items: [], Size: 2, energy_stored_main_energy: 16400L, id: "powah:energy_cell", redstone_mode: 0, side_transfer_type: [I; 0, 0, 0, 0, 0, 0], variant: 4}}, + {pos: [1, 1, 1], state: "powah:energy_cable_nitro{down:false,east:false,north:false,south:false,up:false,waterlogged:false,west:false}", nbt: {ForgeCaps: {}, cs: 12b, energy_capacity_main_energy: 0L, energy_stored_main_energy: 0L, id: "powah:energy_cable", redstone_mode: 0, side_transfer_type: [I; 0, 0, 1, 2, 0, 0], variant: 6}}, + {pos: [1, 1, 2], state: "advancedperipherals:energy_detector{orientation:south_up}", nbt: {ForgeCaps: {}, ForgeData: {CustomName: "[Energy Detector]"}, Items: [], id: "advancedperipherals:energy_detector", rateLimit: 100}}, + {pos: [1, 1, 3], state: "powah:energy_cable_nitro{down:false,east:false,north:false,south:false,up:false,waterlogged:false,west:false}", nbt: {ForgeCaps: {}, cs: 12b, energy_capacity_main_energy: 0L, energy_stored_main_energy: 0L, id: "powah:energy_cable", redstone_mode: 0, side_transfer_type: [I; 0, 0, 1, 2, 0, 0], variant: 6}}, + {pos: [1, 1, 4], state: "powah:energy_cell_creative{waterlogged:false}", nbt: {ForgeCaps: {}, Items: [], Size: 2, energy_capacity_main_energy: 9000000000000000000L, energy_stored_main_energy: 9000000000000000000L, id: "powah:energy_cell", redstone_mode: 0, side_transfer_type: [I; 1, 1, 1, 1, 1, 1], variant: 7}}, {pos: [2, 1, 0], state: "minecraft:air"}, {pos: [2, 1, 1], state: "minecraft:air"}, {pos: [2, 1, 2], state: "computercraft:computer_advanced{facing:north,state:blinking}", nbt: {ComputerId: 0, ForgeCaps: {}, Label: "peripheraltest.energydet", On: 1b, id: "computercraft:computer_advanced"}}, {pos: [2, 1, 3], state: "minecraft:air"}, {pos: [2, 1, 4], state: "minecraft:air"}, - {pos: [3, 1, 0], state: "mekanism:creative_energy_cube{facing:east,fluid_logged:empty}", nbt: {EnergyContainers: [{Container: 0b, stored: "18446744073709551615.9999"}], ForgeCaps: {}, Items: [], componentConfig: {config0: {side0: 4, side1: 4, side2: 4, side3: 4, side4: 4, side5: 4}, config6: {side0: 4, side1: 1, side2: 1, side3: 1, side4: 1, side5: 1}, eject0: 1b, eject6: 0b}, componentEjector: {color0: -1, color1: -1, color2: -1, color3: -1, color4: -1, color5: -1, strictInput: 0b}, componentFrequency: {Security: {name: "Security", owner: [I; 940439953, -167562164, -1601161573, -1389718966], publicFreq: 1b}}, componentSecurity: {owner: [I; 940439953, -167562164, -1601161573, -1389718966], securityMode: 0}, controlType: 0, currentRedstone: 15, id: "mekanism:creative_energy_cube", redstone: 0b}}, - {pos: [3, 1, 1], state: "mekanism:basic_universal_cable{fluid_logged:empty}", nbt: {ForgeCaps: {}, connection0: 0, connection1: 0, connection2: 0, connection3: 0, connection4: 0, connection5: 0, energy: "8000", id: "mekanism:basic_universal_cable", redstone: 0b}}, - {pos: [3, 1, 2], state: "advancedperipherals:energy_detector{orientation:north_up}", nbt: {ForgeCaps: {}, ForgeData: {CustomName: "[Energy Detector]"}, Items: [], id: "advancedperipherals:energy_detector", rateLimit: 0}}, - {pos: [3, 1, 3], state: "mekanism:basic_universal_cable{fluid_logged:empty}", nbt: {ForgeCaps: {}, connection0: 0, connection1: 0, connection2: 0, connection3: 0, connection4: 0, connection5: 0, id: "mekanism:basic_universal_cable", redstone: 0b}}, - {pos: [3, 1, 4], state: "mekanism:basic_energy_cube{facing:west,fluid_logged:empty}", nbt: {EnergyContainers: [{Container: 0b, stored: "4000000"}], ForgeCaps: {}, Items: [], componentConfig: {config0: {side0: 4, side1: 1, side2: 1, side3: 1, side4: 1, side5: 1}, config6: {side0: 4, side1: 1, side2: 1, side3: 1, side4: 1, side5: 1}, eject0: 1b, eject6: 0b}, componentEjector: {color0: -1, color1: -1, color2: -1, color3: -1, color4: -1, color5: -1, strictInput: 0b}, componentFrequency: {Security: {name: "Security", owner: [I; 940439953, -167562164, -1601161573, -1389718966], publicFreq: 1b}}, componentSecurity: {owner: [I; 940439953, -167562164, -1601161573, -1389718966], securityMode: 0}, controlType: 0, currentRedstone: 15, id: "mekanism:basic_energy_cube", redstone: 0b}}, + {pos: [3, 1, 0], state: "minecraft:air"}, + {pos: [3, 1, 1], state: "minecraft:air"}, + {pos: [3, 1, 2], state: "minecraft:air"}, + {pos: [3, 1, 3], state: "minecraft:air"}, + {pos: [3, 1, 4], state: "minecraft:air"}, {pos: [4, 1, 0], state: "minecraft:air"}, {pos: [4, 1, 1], state: "minecraft:air"}, {pos: [4, 1, 2], state: "minecraft:air"}, @@ -132,13 +132,10 @@ palette: [ "minecraft:polished_andesite", "minecraft:air", - "mekanism:creative_energy_cube{facing:north,fluid_logged:empty}", - "mekanism:basic_universal_cable{fluid_logged:empty}", + "powah:energy_cell_niotic{waterlogged:false}", + "powah:energy_cable_nitro{down:false,east:false,north:false,south:false,up:false,waterlogged:false,west:false}", "advancedperipherals:energy_detector{orientation:south_up}", - "mekanism:creative_energy_cube{facing:west,fluid_logged:empty}", - "computercraft:computer_advanced{facing:north,state:blinking}", - "mekanism:creative_energy_cube{facing:east,fluid_logged:empty}", - "advancedperipherals:energy_detector{orientation:north_up}", - "mekanism:basic_energy_cube{facing:west,fluid_logged:empty}" + "powah:energy_cell_creative{waterlogged:false}", + "computercraft:computer_advanced{facing:north,state:blinking}" ] } diff --git a/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.metransfer.snbt b/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.metransfer.snbt index 8c10cfb87..c3a6101d9 100644 --- a/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.metransfer.snbt +++ b/src/testMod/resources/data/advancedperipheralstest/structures/peripheraltest.metransfer.snbt @@ -33,14 +33,14 @@ {pos: [0, 1, 3], state: "minecraft:air"}, {pos: [0, 1, 4], state: "minecraft:air"}, {pos: [1, 1, 0], state: "minecraft:air"}, - {pos: [1, 1, 1], state: "ae2:drive", nbt: {ForgeCaps: {}, forward: "NORTH", id: "ae2:drive", inv: {item0: {Count: 1b, id: "ae2:item_storage_cell_64k", tag: {amts: [L; 256L, 256L], ic: 512L, keys: [{"#c": "ae2:i", id: "minecraft:oak_planks"}, {"#c": "ae2:i", id: "minecraft:oak_log"}]}}, item1: {Count: 1b, id: "ae2:fluid_storage_cell_64k", tag: {}}, item2: {}, item3: {}, item4: {}, item5: {}, item6: {}, item7: {}, item8: {}, item9: {}}, priority: 0, proxy: {g: 1054L, k: -1L, p: 0}, up: "UP", visual: {cell0: {id: "ae2:item_storage_cell_64k", state: "not_empty"}, cell1: {id: "ae2:fluid_storage_cell_64k", state: "empty"}, online: 1b}}}, + {pos: [1, 1, 1], state: "ae2:drive", nbt: {ForgeCaps: {}, forward: "NORTH", id: "ae2:drive", inv: {item0: {Count: 1b, id: "ae2:item_storage_cell_64k", tag: {amts: [L; 256L, 256L], ic: 512L, keys: [{"#c": "ae2:i", id: "minecraft:oak_log"}, {"#c": "ae2:i", id: "minecraft:oak_planks"}]}}, item1: {Count: 1b, id: "ae2:fluid_storage_cell_64k", tag: {}}, item2: {}, item3: {}, item4: {}, item5: {}, item6: {}, item7: {}, item8: {}, item9: {}}, priority: 0, proxy: {g: 1054L, k: -1L, p: 0}, up: "UP", visual: {cell0: {id: "ae2:item_storage_cell_64k", state: "not_empty"}, cell1: {id: "ae2:fluid_storage_cell_64k", state: "empty"}, online: 1b}}}, {pos: [1, 1, 2], state: "computercraft:cable{cable:true,down:false,east:false,modem:up_off_peripheral,north:false,south:true,up:true,waterlogged:false,west:false}", nbt: {ForgeCaps: {}, PeirpheralAccess: 1b, PeripheralId: 3, PeripheralType: "computer", id: "computercraft:cable"}}, {pos: [1, 1, 3], state: "computercraft:cable{cable:true,down:false,east:true,modem:none,north:true,south:true,up:false,waterlogged:false,west:false}", nbt: {ForgeCaps: {}, PeirpheralAccess: 0b, id: "computercraft:cable"}}, {pos: [1, 1, 4], state: "computercraft:cable{cable:true,down:false,east:false,modem:none,north:true,south:false,up:true,waterlogged:false,west:false}", nbt: {ForgeCaps: {}, PeirpheralAccess: 0b, id: "computercraft:cable"}}, {pos: [2, 1, 0], state: "minecraft:air"}, {pos: [2, 1, 1], state: "ae2:controller{state:online,type:block}", nbt: {ForgeCaps: {}, id: "ae2:controller", internalCurrentPower: 0.0d, proxy: {g: 1054L, k: -1L, p: 0}, visual: {}}}, {pos: [2, 1, 2], state: "ae2:cable_bus{light_level:0,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_dense_cable", visual: {channelsNorth: 0, channelsUp: 0, connections: ["up", "north"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", visual: {}}}, - {pos: [2, 1, 3], state: "computercraft:cable{cable:true,down:false,east:false,modem:up_off_peripheral,north:false,south:false,up:true,waterlogged:false,west:true}", nbt: {ForgeCaps: {}, PeirpheralAccess: 1b, PeripheralId: 3, PeripheralType: "meBridge", id: "computercraft:cable"}}, + {pos: [2, 1, 3], state: "computercraft:cable{cable:true,down:false,east:false,modem:up_off_peripheral,north:false,south:false,up:true,waterlogged:false,west:true}", nbt: {ForgeCaps: {}, PeirpheralAccess: 1b, PeripheralId: 20, PeripheralType: "me_bridge", id: "computercraft:cable"}}, {pos: [2, 1, 4], state: "minecraft:air"}, {pos: [3, 1, 0], state: "minecraft:air"}, {pos: [3, 1, 1], state: "ae2:creative_energy_cell", nbt: {ForgeCaps: {}, forward: "NORTH", id: "ae2:creative_energy_cell", proxy: {g: 1054L, k: -1L, p: 0}, up: "UP", visual: {}}}, @@ -61,11 +61,11 @@ {pos: [1, 2, 1], state: "minecraft:air"}, {pos: [1, 2, 2], state: "computercraft:computer_advanced{facing:north,state:blinking}", nbt: {ComputerId: 0, ForgeCaps: {}, Label: "peripheraltest.metransfer", On: 1b, id: "computercraft:computer_advanced"}}, {pos: [1, 2, 3], state: "ae2:sky_stone_tank", nbt: {ForgeCaps: {}, forward: "SOUTH", id: "ae2:sky_tank", up: "UP", visual: {}}}, - {pos: [1, 2, 4], state: "computercraft:wired_modem_full{modem:false,peripheral:true}", nbt: {ForgeCaps: {}, PeripheralAccess: 1b, PeripheralId2: 1, PeripheralId5: 2, PeripheralType2: "ae2:sky_tank", PeripheralType5: "minecraft:chest", id: "computercraft:wired_modem_full"}}, + {pos: [1, 2, 4], state: "computercraft:wired_modem_full{modem:false,peripheral:true}", nbt: {ForgeCaps: {}, PeripheralAccess: 1b, PeripheralId1: 19, PeripheralId2: 1, PeripheralId5: 2, PeripheralType1: "me_bridge", PeripheralType2: "ae2:sky_tank", PeripheralType5: "minecraft:chest", id: "computercraft:wired_modem_full"}}, {pos: [2, 2, 0], state: "minecraft:air"}, {pos: [2, 2, 1], state: "ae2:cable_bus{light_level:9,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_cable", visual: {channelsDown: 0, channelsUp: 0, connections: ["down", "up"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", north: {filter_type: "ALL", gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:pattern_encoding_terminal", mode: "CRAFTING", sort_by: "NAME", sort_direction: "ASCENDING", spin: 0b, substitute: 0b, substituteFluids: 1b, view_mode: "ALL", visual: {missingChannel: 0b, powered: 1b}}, south: {id: "ae2:cable_anchor", visual: {}}, visual: {}}}, {pos: [2, 2, 2], state: "ae2:cable_bus{light_level:0,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_dense_cable", visual: {channelsDown: 0, channelsSouth: 0, channelsUp: 0, connections: ["down", "up", "south"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", north: {id: "ae2:cable_anchor", visual: {}}, visual: {}}}, - {pos: [2, 2, 3], state: "advancedperipherals:me_bridge{orientation:south_up}", nbt: {ForgeCaps: {}, ForgeData: {CustomName: "[ME Bridge]"}, Items: [], id: "advancedperipherals:me_bridge"}}, + {pos: [2, 2, 3], state: "advancedperipherals:me_bridge{orientation:south_up}", nbt: {ForgeCaps: {}, Items: [], id: "advancedperipherals:me_bridge"}}, {pos: [2, 2, 4], state: "minecraft:chest{facing:south,type:single,waterlogged:false}", nbt: {ForgeCaps: {}, Items: [{Count: 64b, Slot: 26b, id: "minecraft:oak_log"}], id: "minecraft:chest"}}, {pos: [3, 2, 0], state: "minecraft:air"}, {pos: [3, 2, 1], state: "minecraft:air"}, @@ -85,12 +85,12 @@ {pos: [1, 3, 0], state: "minecraft:air"}, {pos: [1, 3, 1], state: "minecraft:air"}, {pos: [1, 3, 2], state: "minecraft:air"}, - {pos: [1, 3, 3], state: "minecraft:air"}, + {pos: [1, 3, 3], state: "ae2:cable_bus{light_level:0,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_dense_cable", visual: {channelsEast: 0, connections: ["east"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", visual: {}}}, {pos: [1, 3, 4], state: "minecraft:air"}, {pos: [2, 3, 0], state: "minecraft:air"}, {pos: [2, 3, 1], state: "ae2:cable_bus{light_level:9,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_cable", visual: {channelsDown: 0, connections: ["down"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", north: {filter_type: "ALL", gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:crafting_terminal", sort_by: "NAME", sort_direction: "ASCENDING", spin: 0b, view_mode: "ALL", visual: {missingChannel: 0b, powered: 1b}}, south: {id: "ae2:cable_anchor", visual: {}}, visual: {}}}, - {pos: [2, 3, 2], state: "ae2:cable_bus{light_level:0,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_dense_cable", visual: {channelsDown: 0, connections: ["down"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", north: {id: "ae2:cable_anchor", visual: {}}, visual: {}}}, - {pos: [2, 3, 3], state: "minecraft:air"}, + {pos: [2, 3, 2], state: "ae2:cable_bus{light_level:0,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_dense_cable", visual: {channelsDown: 0, channelsSouth: 0, connections: ["down", "south"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", north: {id: "ae2:cable_anchor", visual: {}}, visual: {}}}, + {pos: [2, 3, 3], state: "ae2:cable_bus{light_level:0,waterlogged:false}", nbt: {ForgeCaps: {}, cable: {gn: {g: 1054L, k: -1L, p: 0}, id: "ae2:white_smart_dense_cable", visual: {channelsDown: 0, channelsNorth: 0, channelsWest: 0, connections: ["down", "north", "west"], missingChannel: 0b, powered: 1b}}, hasRedstone: 2, id: "ae2:cable_bus", visual: {}}}, {pos: [2, 3, 4], state: "minecraft:air"}, {pos: [3, 3, 0], state: "minecraft:air"}, {pos: [3, 3, 1], state: "minecraft:air"},