Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- CCsensors: Proximity Module.
- Proximity requires the Proximity SensorModule to work.
- ]]--
- os.unloadAPI("sensors")
- os.loadAPI("/rom/apis/sensors")
- -- Variables
- controllerSide = sensors.getController()
- sizeX, sizeY = term.getSize()
- -- Check to see if there is a controller connected to the computer
- if not controllerSide then
- print("No sensor controller found!\nPlease connect a sensor controller.")
- return
- end
- --[[ Functions ]]--
- -- [[ Other functions ]] --
- function cp(c, x, y) if c==1 then term.clear() end term.setCursorPos(x,y) end
- function select( x, y, title, tData )
- local function writeAt(xPos, yPos, text)
- term.setCursorPos(xPos, yPos)
- write(text)
- end
- writeAt( x, y, title..": "..#tData )
- for i, text in pairs(tData) do
- writeAt( x + 2, y + 1 + i, text )
- end
- local sel = 1
- writeAt( x + 1, y + 1 + sel, "*")
- while true do
- _, key = os.pullEvent("key")
- writeAt( x + 1, y + 1 + sel, " ")
- if key == 200 then
- -- Up
- sel = sel - 1
- elseif key == 208 then
- -- Down
- sel = sel + 1
- elseif key == 28 then
- -- Enter
- return tData[sel]
- end
- if sel < 1 then sel = #tData
- elseif sel > #tData then sel = 1 end
- writeAt( x + 1, y + 1 + sel, "*")
- end
- end
- term.clear()
- -- Get and Select a sensor
- Sensors = sensors.getSensors(controllerSide)
- dataSensor = select( 1, 1, "Available Sensors", Sensors )
- -- Get and Select a probe
- Probes = sensors.getProbes( controllerSide, dataSensor )
- dataProbe = select( 1, #Sensors + 4, "Available Probes", Probes)
- while true do
- cp(1, 1, 1)
- Targets = sensors.getAvailableTargetsforProbe( controllerSide, dataSensor, dataProbe )
- sTarget = select(1, 1, "Targets", Targets)
- readings = sensors.getSensorReadingAsDict( controllerSide, dataSensor, sTarget, dataProbe)
- cp(1, 1, 1)
- for i, v in pairs(readings) do
- print(i .. ": " .. v)
- end
- sleep(5)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement