View difference between Paste ID: NGRvZFQZ and gjvPLpYJ
SHOW: | | - or go back to the newest paste.
1
shell.run("clear")
2
os.loadAPI("ocs/apis/sensor")
3
mon = peripheral.wrap("front")
4
mon.clear()
5
mon.setTextScale(0.5)
6
rs.setOutput("left",false)
7
rs.setOutput("right",false)
8
sleep(0.5)
9
sen = sensor.wrap("bottom")
10
gx,gy = mon.getSize()
11
while true do
12
s = sen.getTargets()
13
yx = 2
14
mon.clear()
15
f = 0
16
17
for v,k in pairs(s) do
18
  s1 = sen.getTargetDetails(v)
19
  
20
  
21
  
22
  x = s1.Position.X
23
  y = s1.Position.Y
24
  z = s1.Position.Z
25
  mon.setCursorPos(2,yx)
26
  mon.write(v)
27
  mon.setCursorPos(18,yx)
28
  mon.write("X: " .. string.format("%d",x))
29
  mon.setCursorPos(24,yx)
30
  mon.write("Y: " .. string.format("%d",y))
31
  mon.setCursorPos(30,yx)
32
  mon.write("Z: " .. string.format("%d",z))
33
  
34
  if x < 3 and x > -3 and z > -12 and z < 8 then
35
        f = f + 1
36
        n = "INSIDE"
37
   else
38
       n = "OUTSIDE"
39
   end
40
   mon.setCursorPos(36,yx)
41
   mon.write("Position: " .. n)
42
   mon.setCursorPos(54,yx)
43
   mon.write("Held Item: " .. s1.HeldItem.Name)
44
   yx = yx + 1
45
end
46
47
if f == 0 then
48
  for b = 1,3,1 do
49
  rs.setOutput("right",true)
50
  sleep(0.5)
51
  rs.setOutput("right",false)
52
  sleep(0.5)
53
  
54
  --mon.setCursorPos(gx-5,gy)
55
  --mon.write("CLOSE")
56
  end
57
else
58
  for b = 1,3,1 do
59
  rs.setOutput("left",true)
60
  sleep(0.5)
61
  rs.setOutput("left",false)
62
  sleep(0.5)
63
  --mon.setCursorPos(gx-5,gy)
64
  --mon.write("OPEN")
65
end
66
sleep(0.5)
67
end
68
end