Shaka01

gate controller

Feb 11th, 2018
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.57 KB | None | 0 0
  1. rednet.open("top")
  2.  
  3. SlDown = 21
  4. SlUp = 23
  5. Builder = 22
  6. Miner = 24
  7. SlOut = 25
  8. SlIn = 27
  9. SlDownE = 26
  10. SlUpE = 28
  11. Checker = 29
  12. Puller = 30
  13. Pusher = 31
  14.  
  15.  
  16.  
  17. function pulse(channel)
  18.     rednet.send(channel, "Do it")
  19. end
  20.  
  21. function evenOut()
  22. pulse(Builder)
  23. sleep(0.1)
  24. pulse(SlDownE)
  25. sleep(1.5)
  26. pulse(Builder)
  27. sleep(0.1)
  28. pulse(SlDownE)
  29. sleep(1.5)
  30. pulse(SlOut)
  31. end
  32.  
  33.  
  34. function SlideDown()
  35.     pulse(Builder)
  36.     sleep(0.1)
  37.     pulse(SlDown)
  38.     sleep(1.5)
  39.     pulse(Builder)
  40.     sleep(0.1)
  41.     pulse(SlDown)
  42.     sleep(1.5)
  43.     pulse(SlOut)
  44. end
  45.  
  46. function SlideUp()
  47.     pulse(SlIn)
  48.     sleep(1.5)
  49.     pulse(SlUp)
  50.     sleep(1.5)
  51.     pulse(Miner)
  52.     sleep(0.1)
  53.     pulse(SlUp)
  54.     sleep(1.5)
  55.     pulse(Miner)
  56. end
  57.  
  58. function evenOutAgain()
  59.     pulse(SlIn)
  60.     sleep(1.5)
  61.     pulse(SlUpE)
  62.     sleep(1.5)
  63.     pulse(Miner)
  64.     sleep(0.1)
  65.     pulse(SlUpE)
  66.     sleep(1.5)
  67.     pulse(Miner)
  68. end
  69.  
  70. function SlideAll()
  71.     for i=1, 7 do
  72.         SlideDown()
  73.         sleep(1.5)
  74.     end
  75. end
  76.  
  77. function SlideAllBack()
  78.     for i=1, 7 do
  79.         SlideUp()
  80.     end
  81. end
  82.  
  83. function checkOpen()
  84.     rednet.send(Checker, "Check?")
  85.     senderID = "lol"
  86.     repeat
  87.         senderID, message, protocol = rednet.receive()
  88.     until senderID == Checker
  89.     if message == "open" then
  90.         return true
  91.     else
  92.         return false
  93.     end
  94. end
  95.    
  96.    
  97. function allthethings()
  98.    
  99. while true do
  100. if redstone.getInput("back") then
  101.     if checkOpen() == false then
  102.         sleep(1.5)
  103.         evenOut()
  104.         sleep(1.5)
  105.         SlideAll()
  106.         pulse(Pusher)
  107.     end
  108. else
  109.     if checkOpen() == true then
  110.         sleep(1.5)
  111.         pulse(Puller)
  112.         sleep(1.5)
  113.         SlideAllBack()
  114.         evenOutAgain()
  115.     end
  116. end
  117. sleep(5)
  118. end
  119.  
  120. end
  121.  
  122. allthethings()
Add Comment
Please, Sign In to add comment