Advertisement
Himeki

Smelt v1

Dec 12th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.39 KB | None | 0 0
  1. local tArgs = {...}
  2.  
  3. --variables
  4. local strSide = "left" --OutputSide
  5. local intCount = 0
  6. local fPulseLength = 0.2
  7. local fDelay = 11.0 --delay before repeating pulse
  8.  
  9. --predeclare
  10. local printUsage
  11. local rsPulse
  12. local clear
  13.  
  14. --functions
  15. function rsPulse(length)
  16.     if length < 0.1 then
  17.         print("Error: Pulse Length must be 0.1 or greater")
  18.         error()
  19.     else
  20.         redstone.setOutput(strSide, true)
  21.         sleep(length)
  22.         redstone.setOutput(strSide, false)
  23.         sleep(length)
  24.     end
  25. end
  26.  
  27. function clear()
  28.     term.clear()
  29.     term.setCursorPos(1,1)
  30. end
  31.  
  32. function printUsage()
  33.     print( "Usage: Smelt <# of pours>" )
  34.     print( "can substitute 'loop' in place of number." )
  35.     return
  36. end
  37.  
  38. --start--
  39.  
  40. if #tArgs ~= 1 then
  41.     printUsage()
  42.     return
  43. elseif (tostring(tArgs[1]) == "loop") then
  44.     while true do
  45.         print("Crafting on loop")
  46.         rsPulse(fPulseLength)
  47.         print("Waiting...")
  48.         sleep(fDelay)
  49.         clear()
  50.     end
  51. elseif (tonumber(tArgs[1]) > 0) then
  52.     local intCount = tonumber(tArgs[1])
  53.     while intCount > 0 do
  54.         print("Crafting: "..intCount.." remaining.")
  55.         rsPulse(fPulseLength)
  56.         intCount = intCount - 1
  57.         print("Waiting...")
  58.         sleep((fDelay * 2))
  59.         clear()
  60.     end
  61.     print("Crafting Complete.")
  62.     return
  63. else
  64.     print("Error.")
  65.     printUsage()
  66. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement