Advertisement
DigitalZilla

Untitled

Aug 17th, 2014
213
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 0.62 KB | None | 0 0
  1. os.loadAPI("ocs/apis/sensor");
  2.  
  3. local offset = {
  4.   X = 0,
  5.   Y = 2,
  6.   Z = 0,
  7. }
  8.  
  9. function distance(pos)
  10.   local deltaX = pos.X - offset.X;
  11.   local deltaY = pos.Y - offset.Y;
  12.   local deltaZ = pos.Z - offset.Z;
  13.  
  14.   return deltaX * deltaX + deltaY * deltaY + deltaZ * deltaZ;
  15. end
  16.  
  17. local prox = sensor.wrap("right");
  18.  
  19. while true do
  20.   local inRange = false;
  21.  
  22.   local targets = prox.getTargets();
  23.  
  24.   for k, v in pairs(targets) do
  25.     local distSq = distance(v.Position);
  26.     if (distSq <= 7) then
  27.       inRange = true;
  28.       break;
  29.     end
  30.   end
  31.  
  32.   redstone.setOutput("top", inRange);
  33.  
  34.   os.sleep(0.4);
  35. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement