Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local event = require("event")
- local c = require("component")
- local net = require("internet")
- local ser = require("serialization")
- local computer = require("computer")
- local debug = c.debug
- local run = true
- local scoreboards = {}
- scoreboards["deaths"] = "deaths"
- scoreboards["timealive"] = "timealive"
- scoreboards["timeplayed"] = "timeplayed"
- scoreboards["trains"] = "trains"
- scoreboards["damagedealt"] = "damagedealt"
- scoreboards["damagetaken"] = "damagetaken"
- scoreboards["babyheatkills"] = "babyheatkills"
- scoreboards["blazekills"] = "blazekills"
- scoreboards["cavespiderkills"] = "CaveSpiderkills"
- scoreboards["chickenkills"] = "Chickenkills"
- scoreboards["cowkills"] = "Cowkills"
- scoreboards["creeperkills"] = "Creeperkills"
- scoreboards["cyberzombiekills"] = "cyberzombiekills"
- scoreboards["cyberskelekills"] = "cyberskelekills"
- scoreboards["endermankills"] = "Endermankills"
- scoreboards["endermitekills"] = "Endermitekills"
- scoreboards["entityhorsekills"] = "EntityHorsekills"
- scoreboards["ghastkills"] = "Ghastkills"
- scoreboards["guardiankills"] = "Guardiankills"
- scoreboards["greygookills"] = "greygookills"
- scoreboards["heatscarkills"] = "heatscarkills"
- scoreboards["impkills"] = "impkills"
- scoreboards["lavaSlimekills"] = "LavaSlimekills"
- scoreboards["magmakills"] = "magmakills"
- scoreboards["mushroomcowkills"] = "MushroomCowkills"
- scoreboards["ncreeperkills"] = "ncreeperkills"
- scoreboards["ozelotkills"] = "Ozelotkills"
- scoreboards["pigkills"] = "Pigkills"
- scoreboards["pigzombiekills"] = "PigZombiekills"
- scoreboards["piratekills"] = "piratekills"
- scoreboards["polarbearkills"] = "PolarBearkills"
- scoreboards["rabbitkills"] = "Rabbitkills"
- scoreboards["sheepkills"] = "Sheepkills"
- scoreboards["shulkerkills"] = "Shulkerkills"
- scoreboards["silverfishkills"] = "Silverfishkills"
- scoreboards["skeletonkills"] = "Skeletonkills"
- scoreboards["slimekills"] = "Slimekills"
- scoreboards["spiderkills"] = "Spiderkills"
- scoreboards["squidkills"] = "Squidkills"
- scoreboards["villagerkills"] = "Villagerkills"
- scoreboards["witchkills"] = "Witchkills"
- scoreboards["wolfkills"] = "Wolfkills"
- scoreboards["zombiekills"] = "zombiekills"
- local show_message = true
- local url = "http://towerofawesome.org/railcraftpack/api/server_message"
- local days = 0
- local hours = 1
- local minutes = 0
- local seconds = 0
- local time = seconds + (minutes * 60) + (hours * 60 * 60) + (days * 60 * 60 * 24)
- local function get_message()
- return net.request(url)
- end
- local function handle_event(event, _, user, message)
- if scoreboards[message] ~= nil then
- print("Display scoreboard for \"" .. scoreboards[message] .. "\" for 30 seconds")
- debug.runCommand('scoreboard objectives setdisplay sidebar '..scoreboards[message])
- os.sleep(30)
- print("Hiding scoreboard " .. scoreboards[message])
- debug.runCommand('scoreboard objectives setdisplay sidebar')
- else
- if message == "clear" then
- print("Clearing scoreboard")
- debug.runCommand('scoreboard objectives setdisplay sidebar')
- end
- if message == "reset" then
- print("User triggered reboot!")
- debug.runCommand('tellraw @a [{"color":"red","text":"Scoreboard system rebooting..."}]')
- os.sleep(1)
- computer.shutdown(true)
- end
- end
- end
- event.listen("chat_message", handle_event)
- print("Setup done, main loop running once per " .. days .. " day(s), " .. hours .. " hour(s), " .. minutes .. " minute(s), " .. seconds .. " seconds.")
- debug.runCommand('tellraw @a [{"color":"red","text":"Scoreboard system online!"}]')
- while run do
- local ev = event.pull(time, "interrupted")
- if ev == "interrupted" then
- run = false
- elseif ev == nil then
- if show_message then
- --print("Show message \"" .. messages[message_index][2] .. "\"")
- local status, data = pcall(get_message)
- local message = ""
- if status then
- for chunk in data do
- message = message .. chunk
- end
- if message == "" then
- print("No message")
- else
- print(message)
- end
- else
- print(data)
- end
- if message ~= "" then
- print(debug.runCommand('tellraw @a ' .. message))
- end
- -- else
- -- print("Display scoreboard for \"" .. scoreboards[scoreboard_index] .. "\" for 20 seconds")
- -- debug.runCommand('scoreboard objectives setdisplay sidebar '..scoreboards[scoreboard_index])
- -- os.sleep(20)
- -- print("Hiding scoreboard " .. scoreboards[scoreboard_index])
- -- debug.runCommand('scoreboard objectives setdisplay sidebar')
- -- scoreboard_index = scoreboard_index + 1
- -- if scoreboards[scoreboard_index] == nil then
- -- scoreboard_index = 1
- -- end
- -- show_message = true
- end
- else
- print("Unknown state")
- end
- end
- event.ignore("chat_message", handle_event)
- print("End of line.")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement