bindre12

Custom Command Turtles (Computer)

Dec 17th, 2012
482
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 6.06 KB | None | 0 0
  1. -- Computer
  2.  
  3. for i,v in pairs(rs.getSides()) do
  4. rednet.open(v)
  5. end
  6. local Turtle = 1
  7. local Pmode = false
  8. local pdone = 0
  9.  
  10. function reset()
  11.  term.clear()
  12.  term.setCursorPos(1, 1)
  13.  print("Turtle Command Operating System Beta v2.3")
  14.  print("Press 'L' for Help, List of Commands, and Features")
  15.  print("")
  16.  if Turtle == 1 then
  17.   print("Turtle Selected: Digger")
  18.  end
  19.  if Turtle == 2 then
  20.   print("Turtle Selected: Miner")
  21.  end
  22.  if Turtle == 3 then
  23.   print("Turtle Selected: Logger")
  24.  end
  25.  if Turtle == 4 then
  26.   print("Turtle Selected: Farmer")
  27.  end
  28.  if Turtle == 5 then
  29.   print("Turtle Selected: Basic")
  30.  end
  31. end
  32.  
  33. while true do
  34.  reset()
  35.  if Pmode == true then
  36.   print("'Program Mode'")
  37.   input = read()
  38.   if input == "tunnel" then
  39.    if Turtle == 1 or Turtle == 3 or Turtle == 4 or Turtle == 5 then
  40.     print("Doesn't Use That Command")
  41.     sleep(2)
  42.    end
  43.    if Turtle == 2 then
  44.     rednet.broadcast(Turtle.."Tunnel")
  45.     while pdone == 0 do
  46.      local id, mgs, dis = rednet.receive()
  47.      if mgs == "MDone" then
  48.       pdone = 1
  49.      end
  50.     end
  51.     pdone = 0
  52.    end
  53.   end
  54.   if input == "hole" then
  55.    if Turtle == 2 or Turtle == 3 or Turtle == 4 or Turtle == 5 then
  56.     print("Doesn't Use That Command")
  57.     sleep(2)
  58.    end
  59.    if Turtle == 1 then
  60.     rednet.broadcast(Turtle.."Hole")
  61.     while pdone == 0 do
  62.      local id, mgs, dis = rednet.receive()
  63.      if mgs == "DDone" then
  64.       pdone = 1
  65.      end
  66.     end
  67.     pdone = 0
  68.    end
  69.   end
  70.   if input == "cut" then
  71.    if Turtle == 1 or Turtle == 2 or Turtle == 4 or Turtle == 5 then
  72.     print("Doesn't Use That Command")
  73.     sleep(2)
  74.    end
  75.    if Turtle == 3 then
  76.     rednet.broadcast(Turtle.."Cut")
  77.     while pdone == 0 do
  78.      local id, mgs, dis = rednet.receive()
  79.      if mgs == "LDone" then
  80.       pdone = 1
  81.      end
  82.     end
  83.     pdone = 0
  84.    end
  85.   end
  86.   if input == "exit" then
  87.   Pmode = false
  88.   sleep(0.1)
  89.   reset()
  90.   end
  91.  end
  92.  
  93.  if Pmode == false then
  94.   event, key = os.pullEvent("key")
  95.   if key == 44 then
  96.    os.shutdown()
  97.   end
  98.   if key == 38 then
  99.    term.clear()
  100.    term.setCursorPos(1, 1)
  101.    print("- Select a Turtle Type By Using Numbers 1-5 -")
  102.    print("")
  103.    print("Turtle's Names and Number:")
  104.    print("'digger' '1' (Defalt) Digs anything a shovel can")
  105.    print("'miner' '2' Mines Stone and Ores")
  106.    print("'logger' '3' Chops Wood and Wood Products")
  107.    print("'farmer' '4' Makes Farmland and Plants crops")
  108.    print("'basic' '5' Does Very Basic Commands")
  109.    print("")
  110.    print("Preloaded Programs, Enter Program Mode using 'P', Type Program's Name")
  111.    print("")
  112.    print("'tunnel' (3x3x2) For Miner Only")
  113.    print("'hole' (3x3x...) For Digger Only")
  114.    print("'cut' For Logger Only")
  115.    print("")
  116.    print("Press Any Key to Go to Page 2")
  117.    event, key = os.pullEvent("key")
  118.    term.clear()
  119.    term.setCursorPos(1, 1)
  120.    print("- Press Keys to Send Commands to Turtles -")
  121.    print("")
  122.    print("Commands:")
  123.    print("Forwards = D")
  124.    print("Backwards = S")
  125.    print("Left = A")
  126.    print("Right = D")
  127.    print("up = E")
  128.    print("Down = Q")
  129.    print("Dig = T  -(Basic Can't Use)")
  130.    print("Dig up = Y  -(Farmer and Basic Can't Use)-")
  131.    print("Dig Down = U  -(Basic Can't Use)")
  132.    print("Place Block = R")
  133.    print("Place Block up = F  -(Farmer Can't Use)-")
  134.    print("Place block Down = G")
  135.    print("Drop Items (Can be Deposited into Chests) = H")
  136.    print("")
  137.    print("Press Any Key to Go to Page 3")
  138.    event, key = os.pullEvent("key")
  139.    term.clear()
  140.    term.setCursorPos(1, 1)
  141.    print(" - Commands Continued -")
  142.    print("")
  143.    print("Suck Items = X (Only for Basic)")
  144.    print("Input Program Mode = P")
  145.    print("Exit Program Mode = (Type) exit")
  146.    print("Select Digger = 1")
  147.    print("Select Miner = 2")
  148.    print("Select Logger = 3")
  149.    print("Select Farmer = 4")
  150.    print("Select Basic = 5")
  151.    print("Exit Program = Z")
  152.    print("")
  153.    print("Press Any Key to Exit")
  154.    event, key = os.pullEvent("key")
  155.   end
  156.   if key == 2 then
  157.    Turtle = 1
  158.   end
  159.   if key == 3 then
  160.    Turtle = 2
  161.   end
  162.   if key == 4 then
  163.    Turtle = 3
  164.   end
  165.   if key == 5 then
  166.    Turtle = 4
  167.   end
  168.   if key == 6 then
  169.    Turtle = 5
  170.   end
  171.   if key == 17 then
  172.    rednet.broadcast(Turtle.."Forward")
  173.    sleep(0.1)
  174.   end
  175.   if key == 31 then
  176.    rednet.broadcast(Turtle.."Back")
  177.    sleep(0.1)
  178.   end
  179.   if key == 32 then
  180.    rednet.broadcast(Turtle.."TurnRight")
  181.    sleep(0.1)
  182.   end
  183.   if key == 30 then
  184.    rednet.broadcast(Turtle.."TurnLeft")
  185.    sleep(0.1)
  186.   end
  187.   if key == 16 then
  188.    rednet.broadcast(Turtle.."Down")
  189.    sleep(0.1)
  190.   end
  191.   if key == 18 then
  192.    rednet.broadcast(Turtle.."Up")
  193.     sleep(0.1)
  194.   end
  195.   if key == 20 then
  196.    if Turtle == 1 or Turtle == 2 or Turtle == 3 or Turtle == 4 then
  197.     rednet.broadcast(Turtle.."Dig")
  198.     sleep(0.1)
  199.    end
  200.    if Turtle == 5 then
  201.     print("Doesn't Use That Command")
  202.     sleep(2)
  203.    end
  204.   end
  205.   if key == 21 then
  206.    if Turtle == 1 or  Turtle == 2 or Turtle == 3 then
  207.     rednet.broadcast(Turtle.."DigUp")
  208.     sleep(0.1)
  209.    end
  210.    if Turtle == 4 or Turtle == 5 then
  211.     print("Doesn't Use That Command")
  212.     sleep(2)
  213.    end
  214.   end
  215.   if key == 22 then
  216.    if Turtle == 1 or Turtle == 2 or Turtle == 3 or Turtle == 4 then
  217.     rednet.broadcast(Turtle.."DigDown")
  218.     sleep(0.1)
  219.    end
  220.    if Turtle == 5 then
  221.     print("Doesn't Use That Command")
  222.     sleep(2)
  223.    end
  224.   end
  225.   if key == 19 then
  226.    rednet.broadcast(Turtle.."Place")
  227.     sleep(0.1)
  228.   end
  229.   if key == 33 then
  230.    if Turtle == 1 or Turtle == 2 or Turtle == 3 or Turtle == 5 then
  231.     rednet.broadcast(Turtle.."PlaceUp")
  232.     sleep(0.1)
  233.    end
  234.    if Turtle == 4 then
  235.     print("Doesn't Use That Command")
  236.     sleep(2)
  237.    end
  238.   end
  239.   if key == 34 then
  240.    rednet.broadcast(Turtle.."PlaceDown")
  241.    sleep(0.1)
  242.   end
  243.   if key == 35 then
  244.    rednet.broadcast(Turtle.."Drop")
  245.     sleep(0.1)
  246.   end
  247.   if key == 45 then
  248.    if Turtle == 1 or Turtle == 2 or Turtle == 3 or Turtle == 4 then
  249.     print("Doesn't Use That Command")
  250.     sleep(2)
  251.    end
  252.    if Turtle == 5 then
  253.     rednet.broadcast(Turtle.."Suck")
  254.     sleep(0.1)
  255.    end
  256.   end
  257.   if key == 25 then
  258.    Pmode = true
  259.    sleep(0.1)
  260.   end
  261.  end
  262. end
Advertisement
Add Comment
Please, Sign In to add comment