Advertisement
frankxuxy123

1233

Mar 20th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- This is a comment. It's for humans only. All
  2. -- the green text is not run by the program
  3.  
  4. mouseWidth = 0
  5. mouseHeight = 0
  6. -- this creates two variables called mouseWidth
  7. -- and mouseHeight and sets them to 0. We will
  8. -- use them later
  9.  
  10. monitor = peripheral.wrap("left")
  11. -- you need this line! It tells the computer
  12. -- the monitor is on top. Change it if you want
  13. -- the monitor on a different side of the computer
  14.  
  15. monitor.clear()
  16. -- this clears the monitor screen
  17.  
  18. monitor.setCursorPos(1,1)
  19. -- this sets the cursor position to the top left
  20. -- corner of the monitor
  21.  
  22. w,h=monitor.getSize()
  23. -- gets the width and the height of the monitor
  24. -- and stores the numbers as w and h.
  25. -- w and h are variables
  26.  
  27. print(w)
  28. print(h)
  29. -- prints the w and h to the computer screen.
  30. -- You can see the monitor width is 7, height is 5
  31. -- It starts in the top left corner like a book.  
  32.  
  33.  
  34. -- Now to draw the two buttons
  35. -- Im english so I write colour but you can change
  36. -- it to color. It works the same.
  37.  
  38.  
  39. monitor.setBackgroundColour((colours.red))
  40. -- this changes the background colour of the text
  41. -- to lime green.
  42.  
  43. monitor.setCursorPos(1.5,2)
  44. -- this sets the start position for writing the 1st
  45. -- button on the monitor. It puts it 2 in from the
  46. -- left and 2 down from the top.
  47.  
  48. monitor.setTextColor(colors.black)
  49. monitor.write(" OPEN  ")
  50. -- this writes the word ON on the monitor. See the
  51. -- blank spaces before and after. These will be
  52. -- green. Our button is 5 letters long
  53. monitor.setTextColor(colors.black)
  54.  
  55. monitor.setCursorPos(1.5,4)
  56. -- this sets the next writing postition to 2 from
  57. -- the left and 4 down from the top. Just under
  58. -- the 1st button
  59.  
  60. monitor.write(" CLOSE ")
  61. -- this writes OFF but again its 5 long in total
  62. -- with the spaces
  63.  
  64. monitor.setBackgroundColour((colours.black))
  65. -- now we have drawn our buttons we should set
  66. -- the text background colour back to black
  67. monitor.setTextColor(colors.black)
  68.  
  69. -- Now we need to check if the button is clicked
  70.  
  71. -- First we are going to create a function called
  72. -- checkClickPosition(). A function will not run
  73. -- until you ask for it.
  74.  
  75. -- We know the first button starts at 2 from the
  76. -- top and 2 from the left. We also know it is 5
  77. -- spaces long. This means the button ends
  78. -- at width 7
  79.  
  80. -- We will be told which width and
  81. -- height the click happened at.
  82. -- If the width position is greater than 1 AND
  83. -- less than 8 we have clicked somewhere between
  84. -- 2 and 7.
  85.  
  86. -- If this is true we can then check the height
  87. -- position. Button one is at height 2 and button
  88. -- two is at height 4.
  89.  
  90. -- This means that if the width is greater than 1
  91. -- AND the width is less than 8 AND the height
  92. -- equals 2 we have clicked button 1
  93.  
  94. -- If the the width is greater than 1 AND the width
  95. -- is less than 8 AND the height equals 4 we have
  96. -- clicked button 2
  97.  
  98. -- now to write this as a function
  99. -- Functions are written like this
  100.  
  101. --     function exampleFunction()
  102. --       print("Hello")
  103. --       sleep(10)
  104. --       print("Goodbye")
  105. --     end
  106.  
  107. -- Now when you write exampleFunction() the program
  108. -- will print hello, sleep for 10 ticks and then
  109. -- print Goodbye.
  110. -- This is useful for making your programs easier
  111. -- to understand
  112.  
  113. function checkClickPosition()
  114.   if mouseWidth > 1 and mouseWidth < 8 and mouseHeight == 2 then
  115.     -- button one clicked
  116.     rs.setOutput("right",true)
  117.     sleep(3)
  118.     rs.setOutput("right",false)
  119.     -- turns redstone connected to the right on
  120.   elseif mouseWidth > 1 and mouseWidth < 8 and mouseHeight == 4 then
  121.     -- button two clicked
  122.     rs.setOutput("right",false)
  123.     -- turns redstone connected to the left off
  124.   end -- ends the if loop
  125. end -- ends the function
  126.    
  127. -- this function does nothing until you write
  128. -- checkClickPostion(). We will be doing this below
  129. -- It then checks the click position and turns the
  130. -- lamp on if button one is clicked or turns the
  131. -- lamp off if button two is clicked  
  132.  
  133. -- OK. Now we need to check if a click happens
  134. -- we will use a repeat-until loop.
  135. -- In the loop we we use a os.pullEvent().
  136. -- an os.pullEvent() gives you different info
  137. -- depending on the event type. We will mainly
  138. -- check the "monitor_touch" event.
  139.  
  140. -- In the second line you will see
  141. -- event,p1,p2,p3 = os.pullEvent()
  142. -- if the event is a click on the monitor it
  143. -- will give us 4 bits of info:
  144. --    event will be "monitor_touch"    
  145. --    p1 will be the side the monitor is on (top)
  146. --    p2 is the width postion of the click
  147. --    p3 is the height postition of the click  
  148.  
  149.  
  150.  
  151. repeat
  152. -- repeat runs a loop of code.
  153.  
  154.   event,p1,p2,p3 = os.pullEvent()
  155.   -- this line tells the computer to wait until
  156.   -- an event happens. We are waiting for a
  157.   -- touchscreen event
  158.  
  159.    if event=="monitor_touch" then
  160.    -- this checks to see if the event was a
  161.    -- touchscreen event
  162.    
  163.      mouseWidth = p2 -- sets mouseWidth
  164.      mouseHeight = p3 -- and mouseHeight
  165.      checkClickPosition() -- this runs our function
  166.      
  167.    end
  168.    -- the end of the "if loop".
  169.    
  170.    
  171. until event=="char" and p1==("x")
  172. -- this is the end of the "repeat loop". This will
  173. -- stop the repeat loop if a "char" event happens
  174. -- A char event means you press a character on
  175. -- the keyboard. This line is looking for the x key
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement