MudkipTheEpic

Free For All Chat CC

Dec 28th, 2012
173
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.47 KB | None | 0 0
  1. listen = function()
  2.  local senderId, message, distance = rednet.receive()
  3.  myid = os.getComputerID()
  4. if message == "kick "..myid then
  5. print("You have been kicked by Computer Id #"..senderId..".")
  6. sleep(2)
  7. kickedId = senderId
  8. rednet.broadcast("kicked")
  9. status = "kicked"
  10. return
  11. elseif message == "mute "..myid then
  12. print("You have been muted by Computer Id #"..senderId..".")
  13. sleep(2)
  14. muted = "true"
  15. rednet.broadcast("muted")
  16. return
  17. elseif message == "exit" then
  18. print("Computer Id #"..senderId.." left.")
  19. elseif message == "entry" then
  20. print("Computer Id #"..senderId.." entered chat.")
  21. elseif message == "ping" then
  22. print("You were pinged by Computer Id #"..senderId..".")
  23. rednet.send(senderId, "pongchat")
  24. elseif message == "pongchat" then
  25. print("Computer Id #"..senderId.." responded to your ping from "..distance.." blocks away.")
  26. elseif message == "unmute "..myid then
  27. print("You have been unmuted by Computer Id #"..senderId..".")
  28. rednet.broadcast("unmuted")
  29. muted = "false"
  30. spamcount = 0
  31. return
  32. elseif senderId == blocked then
  33. write("")
  34. elseif message == "spammuted" then
  35. print("Computer Id #"..senderId.." was muted for spamming.")
  36. elseif message == "kicked" then
  37. print ("Computer Id #"..senderId.." was kicked.")
  38. elseif message == "muted" then
  39. print ("Computer Id #"..senderId.." was muted.")
  40. elseif message == "unmuted" then
  41. print ("Computer Id #"..senderId.." was unmuted.")
  42. elseif message == "blockmessage" then
  43. print("Computer Id #"..senderId.." blocked you.")
  44. elseif message == "unblockmessage" then
  45. print("Computer Id #"..senderId.."unblocked you.")
  46. else
  47. print ("Computer Id #"..senderId.." said : '"..message.."' from "..distance.." blocks away.")
  48. end
  49. end
  50.  
  51. chat = function()
  52. input = read()
  53. if input == "exit" then
  54. textutils.slowPrint("Exiting..")
  55. sleep(3)
  56. term.clear()
  57. term.setCursorPos(1,1)
  58. rednet.broadcast("exit")
  59. os.reboot()
  60. elseif input == "entry" then
  61. print("Access denied: Used for login.")
  62. elseif input == "ping" then
  63. rednet.broadcast("ping")
  64. elseif input == "pongchat" then
  65. print("Access denied: Used for pinging.")
  66. elseif input == lastinput then
  67. if spamcount == 0 then
  68. print("You have been given ONE warning. Please don't spam.")
  69. else
  70. print("You were muted for spamming.")
  71. rednet.broadcast("spammuted")
  72. muted = "true"
  73. end
  74. spamcount = spamcount + 1
  75. elseif input == "block" then --Experimental!!!!
  76. print("What Computer ID would you like to block?")
  77. blocked = read()
  78. blocked = tonumber(blocked)
  79. rednet.send(blocked, "blockmessage")
  80. print("Blocked Computer Id #"..blocked..".")
  81. elseif input == "unblock" then
  82. if blocked ~= nil then
  83. print("Unblocking Computer Id #"..blocked.."...")
  84. rednet.send(blocked, "unblockmessage")
  85. blocked = nil
  86. else
  87. print("No computers blocked.")
  88. end
  89. elseif input == "spamkick" then
  90. print("Access denied: Used for internal messages.")
  91. elseif input == "kicked" then
  92. print("Access denied: Used for internal messages.")
  93. elseif input == "muted" then
  94. print("Access denied: Used for internal messages.")
  95. elseif input == "unmuted" then
  96. print("Access denied: Used for internal messages.")
  97. elseif input == "blockmessage" then
  98. print("Access denied: Used for internal messages.")
  99. else
  100. rednet.broadcast (input)
  101. lastinput = input
  102. end
  103. end
  104.  
  105. spamcount = 0
  106. rednet.broadcast("entry")
  107. while status ~= "kicked" do
  108. if muted == "true" then
  109. term.setCursorBlink(false)
  110. listen()
  111. else
  112. parallel.waitForAny (listen, chat)
  113. end
  114. end
  115. if status == "kicked" then
  116. print("You were kicked by Computer Id #"..kickedId..".")
  117. end
Add Comment
Please, Sign In to add comment