Doppytoo

Drone

Oct 23rd, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.58 KB | None | 0 0
  1. local drone = component.proxy(component.list("drone")())
  2. local modem = component.proxy(component.list("modem")())
  3. local inventory = component.proxy(component.list("inventory_controller")())
  4. local port = 512
  5. local moveSpeed = 1.0
  6. local suckSide = 0
  7.  
  8. modem.open(port)
  9.  
  10. while true do
  11.     local e = { computer.pullSignal() }
  12.     if e[1] == "modem_message" then
  13.         if e[4] == port then
  14.             if e[6] == "ECSDrone" then
  15.                 drone.setStatusText("Команда: " .. e[7])
  16.                 if e[7] == "moveUp" then
  17.                     drone.move(0, moveSpeed, 0)
  18.                 elseif e[7] == "moveDown" then
  19.                     drone.move(0, -moveSpeed, 0)
  20.                 elseif e[7] == "moveForward" then
  21.                     drone.move(moveSpeed, 0, 0)
  22.                 elseif e[7] == "moveBack" then
  23.                     drone.move(-moveSpeed, 0, 0)
  24.                 elseif e[7] == "moveLeft" then
  25.                     drone.move(0, 0, -moveSpeed)
  26.                 elseif e[7] == "moveRight" then
  27.                     drone.move(0, 0, moveSpeed)
  28.                 elseif e[7] == "changeColor" then
  29.                     drone.setLightColor(math.random(0x0, 0xFFFFFF))
  30.                 elseif e[7] == "OTSOS" then
  31.                     for i = 1, (inventory.getInventorySize(0) or 1) do
  32.                         inventory.suckFromSlot(0, i)
  33.                     end
  34.                     for i = 1, (inventory.getInventorySize(1) or 1) do
  35.                         inventory.suckFromSlot(1, i)
  36.                     end
  37.                     elseif e[7] == "VIBROSI" then
  38.                         for i = 1, drone.inventorySize() do
  39.                             drone.select(i)
  40.                             drone.drop(64)
  41.                         end
  42.                     elseif e[7] == "moveSpeedUp" then
  43.                         moveSpeed = moveSpeed + 0.1
  44.                     elseif e[7] == "moveSpeedDown" then
  45.                         moveSpeed = moveSpeed - 0.1
  46.                         if moveSpeed < 0.1 then
  47.                             moveSpeed = 0.1
  48.                         end
  49.                     end
  50.                 end
  51.             end
  52.         end
  53.     end
  54. end
Add Comment
Please, Sign In to add comment