TovLenin

Копалка для одного лазора

Nov 24th, 2013
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. function DetectPeripheral(name)
  2. local sides = {"top" , "bottom" , "front" , "left" , "right" , "back"}
  3. for i = 1, 6 do
  4. if peripheral.isPresent(sides[i]) and peripheral.getType(sides[i]) == name then
  5. return sides[i]
  6. end
  7. end
  8. return nil
  9. end
  10.  
  11.  
  12.  
  13. m = peripheral.wrap(DetectPeripheral("mininglaser"))
  14. if not m.isMining() then
  15. term.setCursorPos(1, 1)
  16. passed = false
  17. term.clear()
  18. print("Press X to mine")
  19. event, scancode = os.pullEvent("key")
  20. while not passed do
  21. if tonumber(scancode) == 45 then
  22. print("Mining")
  23. m.startMining()
  24. passed = true
  25. end
  26. end
  27. end
  28. function interrupt()
  29. event, scancode = os.pullEvent("key")
  30. if tonumber(scancode) == 31 then
  31. m.stop()
  32. print("stopped")
  33. os.reboot()
  34. return 0
  35. end
  36. end
  37. function monitor()
  38. if m.isMining() then
  39. state, energy, layer, valuablesMined, valuablesInLayer = m.getMinerState()
  40. term.clear()
  41. term.setCursorPos(1, 1)
  42. print ("State: " .. state.. "Energy: " .. energy)
  43. print ("Mined: " .. valuablesMined .. "/" .. valuablesInLayer .. " at layer " .. layer)
  44. sleep(2)
  45. else
  46. os.reboot()
  47. end
  48. end
  49. while true do
  50. parallel.waitForAny(monitor, interrupt)
  51. end
Advertisement
Add Comment
Please, Sign In to add comment