Advertisement
PancakePhD

Untitled

Feb 9th, 2020
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. term.clear()
  2. term.setCursorPos(1,1)
  3.  
  4. print("ID:",os.getComputerID())
  5.  
  6. sidez={"top","bottom","left","right","front","back"}
  7. for i=1,6 do
  8. if peripheral.isPresent(sidez[i]) then
  9. if peripheral.getType(sidez[i])=="modem" then
  10. rednet.open(sidez[i]) break
  11. end end end
  12.  
  13. players = {}
  14.  
  15. while true do
  16.  
  17. event,id,message=os.pullEvent()
  18. if event=="redstone" and players ~= nil then
  19. for i=1,#players do
  20. rednet.send(players[i].HID, 0)
  21. end
  22. sleep(2)
  23. elseif event=="rednet_message" then
  24. print(event,"|",id,"|",message)
  25. if message=="register" then
  26. player = {
  27. HID = id,
  28. state = 0
  29. }
  30.  
  31. unique = true
  32.  
  33. for i=1,#players do
  34. if players[i].HID == id then
  35. unique = false
  36. end
  37. end
  38.  
  39. if unique then
  40. players[#players + 1] = player
  41. rednet.send(id, "registered")
  42. end
  43. elseif message == "reset" then
  44. print("game reset")
  45. for i=1,#players do
  46. rednet.send(players[i].HID, "reset")
  47. end
  48. elseif message=="ready" then
  49. for i=1,#players do
  50. if players[i].HID == id then
  51. players[i].state = 1
  52. end
  53. end
  54. elseif message=="unready" then
  55. for i=1,#players do
  56. if players[i].HID == id then
  57. players[i].state = 0
  58. end
  59. end
  60. end
  61. end
  62.  
  63. allPlayersReady = true
  64.  
  65. for i=1,#players do
  66. if players[i].state == 0 then
  67. allPlayersReady = false
  68. end
  69. end
  70.  
  71. if allPlayersReady then
  72. for i=1,#players do
  73. players[i].state = 0
  74. rednet.send(players[i].HID, "go")
  75. end
  76. end
  77. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement