Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local component = require("component")
- local sides = require("sides")
- local lsched = require("lsched")
- local tp =
- {
- { tp_proxy = component.proxy("c47adbaa-de6e-4b20-8caf-5accdb262513"), in_side = sides.east, ex_sides = { sides.up, sides.north, sides.down, sides.south }},
- { tp_proxy = component.proxy("9823a6de-bc83-4799-a078-37659f77f205"), in_side = sides.west, ex_sides = { sides.up, sides.north, sides.down, sides.south }}
- }
- local function transfer(tp_proxy, in_side, ex_side)
- local items = tp_proxy.getAllStacks(in_side)
- for _, slot in pairs({1, 2, 3}) do
- local ex_slot
- if items[slot].label == "Redstone" then ex_slot = 2
- elseif items[slot].label == "Printed Silicon" then ex_slot = 3
- else ex_slot = 1
- end
- while not tp_proxy.transferItem(in_side, ex_side, items[slot].size, slot, ex_slot) do lsched.true_sleep(0.1) end
- end
- end
- local function ender_sched(tps)
- local tp_idx, ex_idx = 1, 1
- while true do
- while lsched.is_empty(tp[tp_idx].tp_proxy, tp[tp_idx].in_side, {1, 2, 3}) do lsched.true_sleep(0.1) end
- transfer(tp[tp_idx].tp_proxy, tp[tp_idx].in_side, tp[tp_idx].ex_sides[ex_idx])
- ex_idx = ex_idx + 1
- if ex_idx > #tp[tp_idx].ex_sides then
- ex_idx = 1
- tp_idx = tp_idx + 1
- if tp_idx > #tp then
- tp_idx = 1
- end
- end
- end
- end
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement