Scorpionfien

House 1

Jun 25th, 2015
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.83 KB | None | 0 0
  1. os.loadAPI("touchpoint","monitor1","monitor2")
  2.  
  3. --Monitor Number
  4. sSide = ("monitor_")
  5.  
  6. --Resets Outputs
  7. rs.setBundledOutput("bottom", 0)
  8. rs.setBundledOutput("bottom", colors.combine(rs.getBundledOutput("bottom"), colors.magenta)) --Lights ON!!
  9.  
  10. --Set Up Pages
  11. local page1 = touchpoint.new(sSide)
  12. local page2 = touchpoint.new(sSide)
  13. local page3 = touchpoint.new(sSide)
  14. local page4 = touchpoint.new(sSide)
  15.  
  16. --Functions
  17. --Ignores Input
  18. function doNothing()
  19. sleep(0.5)
  20. end
  21.  
  22. --Lights On
  23. function ltOn()
  24. page2:flash("On")
  25. rs.setBundledOutput("bottom", colors.combine(rs.getBundledOutput("bottom"), colors.magenta))
  26. end
  27.  
  28. --Lights Off
  29. function ltOff()
  30. page2:flash("Off")
  31. rs.setBundledOutput("bottom", colors.subtract(rs.getBundledOutput("bottom"), colors.magenta))
  32. end
  33.  
  34. --Power On
  35. function pwOn()
  36. page3:flash("On")
  37. rs.setBundledOutput("bottom", colors.combine(rs.getBundledOutput("bottom"), colors.orange))
  38. end
  39.  
  40. function pwOff()
  41. page3:flash("Off")
  42. rs.setBundledOutput("bottom", colors.subtract(rs.getBundledOutput("bottom"), colors.orange))
  43. end
  44.  
  45. --Door Open
  46. function drOpen()
  47. page4:flash("Open")
  48. rs.setBundledOutput("bottom", colors.combine(rs.getBundledOutput("bottom"), colors.white))
  49. end
  50.  
  51. --Door Close
  52. function drClose()
  53. page4:flash("Close")
  54. rs.setBundledOutput("bottom", colors.subtract(rs.getBundledOutput("bottom"), colors.white))
  55. end
  56.  
  57. --Door Timed
  58. function drTime()
  59. page4:toggle("Timed")
  60. rs.setBundledOutput("bottom", colors.combine(rs.getBundledOutput("bottom"), colors.white))
  61. sleep(5)
  62. page4:toggle("Timed")
  63. rs.setBundledOutput("bottom", colors.combine(rs.getBundledOutput("bottom"), colors.white))
  64. end
  65.  
  66. --Menus
  67. function mainTable()
  68. t = page1
  69. end
  70.  
  71. function lightTable()
  72. t = page2
  73. end
  74.  
  75. function powerTable()
  76. t = page3
  77. end
  78.  
  79. function doorTable()
  80. t = page4
  81. end
  82.  
  83. --Layout Buttons
  84. do
  85. page1:add("Home Menu", doNothing, 1, 1, 36, 3, colors.purple, colors.purple, colors.white, colors.white)
  86. page1:add("Lights Menu", lightTable, 1, 5, 36, 6, colors.purple, colors.lime, colors.orange, colors.black)
  87. page1:add("Power Menu", powerTable, 1, 8, 36, 9, colors.purple, colors.lime, colors.red, colors.black)
  88. page1:add("Door Menu", doorTable, 1, 11, 36, 12, colors.purple, colors.lime, colors.cyan, colors.black)
  89.  
  90. page2:add("Lights Menu", doNothing, 1, 1, 36, 3, colors.orange, colors.orange, colors.black, colors.black)
  91. page2:add("On", ltOn, 4, 6, 10, 7, colors.orange, colors.lime, colors.black, colors.black)
  92. page2:add("Off", ltOff, 14, 6, 20, 7, colors.orange, colors.lime, colors.black, colors.black)
  93. page2:add("Back", mainTable, 24, 6, 30, 7, colors.orange, colors.lime, colors.black, colors.black)
  94.  
  95. page3:add("Power Menu", doNothing, 1, 1, 36, 3, colors.red, colors.lime, colors.black, colors.black)
  96. page3:add("On", pwOn, 1, 5, 36, 6, colors.red, colors.lime, colors.black, colors.black)
  97. page3:add("Off", pwOff, 1, 8, 36, 9, colors.red, colors.lime, colors.black, colors.black)
  98. page3:add("Back", mainTable, 1, 11, 36, 12, colors.red, colors.lime, colors.black, colors.black)
  99.  
  100. page4:add("Door Menu", doNothing, 1, 1, 36, 3, colors.cyan, colors.cyan, colors.black, colors.black)
  101. page4:add("Open", drOpen, 1, 5, 36, 6, colors.cyan, colors.lime, colors.black, colors.black)
  102. page4:add("Close", drClose, 1, 7, 36, 9, colors.cyan, colors.lime, colors.black, colors.black)
  103. page4:add("Timed", drTime, 1, 11, 36, 12, colors.cyan, colors.lime, colors.black, colors.black)
  104. page4:add("Back", mainTable, 1, 14, 36, 15, colors.cyan, colors.lime, colors.black, colors.black)
  105.  
  106. end
  107.  
  108. --Begin Program
  109. mainTable()
  110.  
  111. while true do
  112. t:draw()
  113. local event, p1 = t:handleEvents(os.pullEvent())
  114. if event == "button_click" then
  115. t.buttonList[p1].func()
  116. else
  117. sleep(10)
  118. mainTable()
  119. end
  120. end
Advertisement
Add Comment
Please, Sign In to add comment