Advertisement
chesiren

receiver

Apr 30th, 2024 (edited)
708
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.18 KB | None | 0 0
  1. local p = peripheral
  2. local temp = p.find("minecraft:barrel")
  3. local press = p.find("create:depot")
  4. local stockage = p.find("create:item_vault")
  5. rednet.open("back")
  6.  
  7. print(press.list())
  8.  
  9. local function sender(parameters)
  10.    
  11.     local goal = parameters.count
  12.     for slot, item in pairs(temp.list()) do
  13.         if (item.name == parameters.name) then            
  14.             if (item.count >= goal) then
  15.                 temp.pushItems(p.getName(press), slot, goal)
  16.                 goal = 0
  17.                 break
  18.             else
  19.                 temp.pushItems(p.getName(press), slot, item.count)
  20.                 goal = goal - item.count
  21.             end
  22.         end
  23.     end
  24.  
  25.     print("sending to press done")
  26. end
  27.  
  28. local function withdrawer(parameters)
  29.  
  30.     print("withdrawing pressed items done")
  31. end
  32.  
  33. while true do
  34.     local senderID, message, distance = rednet.receive()
  35.     local eventName = message[1]  
  36.     local parameters = message[2]  
  37.  
  38.     if eventName == "press" then
  39.         print("Received press event from computer "..senderID)
  40.        
  41.         parallel.waitForAll(function() sender(parameters) end, function() withdrawer(parameters) end)
  42.     end
  43. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement