Advertisement
Guest User

spawner.lua

a guest
Mar 31st, 2020
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.46 KB | None | 0 0
  1. local args = {...}
  2. local channel = 70
  3.  
  4. if args[1] == nil then
  5.    return
  6. end
  7.  
  8. local modem = peripheral.wrap("back")
  9.  
  10. -- spawner table
  11. local spawners = {}
  12. spawners["blaze"] = "1"
  13. spawners["enderman"] = "2"
  14. spawners["wither_skeleton"] = "3"
  15.  
  16. function printSituation(situation)
  17.     local name = ""
  18.     for k,v in pairs(spawners) do
  19.         if v == situation:sub(1,1) then
  20.             name = k
  21.         end
  22.     end
  23.     if situation:sub(2,2) == "1" then
  24.         print(name .. ": on")
  25.     else
  26.         print(name .. ": off")
  27.     end
  28. end
  29.  
  30. -- spawner get
  31. if args[1] == "get" then
  32.     modem.open(channel)
  33.     modem.transmit(69,channel,"11")
  34.     local event, modemSide, senderChannel, replyChannel, message, senderDistance = os.pullEvent("modem_message")
  35.     --print(message)
  36.     for i = 1,message:len(),2 do
  37.         printSituation(message:sub(i,i+1))  
  38.     end
  39.     return
  40. end
  41.  
  42. -- spawner on/off
  43. -- check if it is valid
  44. local valid = false
  45. for k,v in pairs(spawners) do
  46.     if k == args[1] then
  47.         valid = true
  48.     end
  49. end
  50. if not (args[2] == "on" or args[2] == "off") then
  51.     valid = false
  52. end
  53. if valid == false then
  54.     print("Invalid command")
  55.     return
  56. end
  57. -- perform on/off
  58. local entityid = ""
  59. for k,v in pairs(spawners) do
  60.     if k == args[1] then
  61.         entityid = v
  62.     end
  63. end
  64. if args[2] == "on" then
  65.     modem.transmit(69,channel,"10" .. entityid .. "1")
  66. else
  67.     modem.transmit(69,channel,"10" .. entityid .. "0")
  68. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement