Advertisement
CreeperNukeBoom

CC Event Printer

Feb 23rd, 2020
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.62 KB | None | 0 0
  1. --Event Printer
  2.  
  3. local notAllEventsShowing = false     --change this to true if you are getting events that aren't listed here
  4.  
  5. local function httpGet(stringURL,stringFileNameToSaveTo)
  6.   local h, err = http.get(stringURL)
  7.   if not h then printError(err) return end
  8.   local f = fs.open(stringFileNameToSaveTo, "w")
  9.   f.write(h.readAll())
  10.   f.close()
  11.   h.close()
  12. end
  13.  
  14. httpGet("https://pastebin.com/raw/xuMVS2GP","apis/CGBCoreLib.lua")  --keeps the CoreLib updated since it's always being updated
  15.  
  16. local core = require("apis/CGBCoreLib")
  17.  
  18. local events = {}
  19. local count = 1
  20. events[count] = {{"Event Printer Output file"},
  21. {"These names are representative only and by no means are what they are called: event[IsHeld] won't work unless it's coded in else it's event[3]"},}
  22. print(textutils.serialize(events[count]))
  23.  
  24.  
  25.  
  26. while true do
  27.   count = count + 1
  28.   events[count]={}
  29.   local event = {os.pullEvent()}
  30.   events[count]["[1]event_name"] = event[1]
  31.   --Begin CC events
  32.   if event[1] == "char" then
  33.     events[count]["[2]character"] = event[2]
  34.   elseif event[1] == "key" then
  35.     events[count]["[2]key"] = event[2]
  36.     events[count]["[3]isHeld"] = event[3]
  37.   elseif event[1] == "key_up" then
  38.     events[count]["[2]key"] = event[2]
  39.   elseif event[1] == "paste" then
  40.     events[count]["[2]paste_data"] = event[2]
  41.   elseif event[1] == "timer" then
  42.     events[count]["[2]timer_data"] = event[2]
  43.   elseif event[1] == "alarm" then
  44.     events[count]["[2]alarm_data"] = event[2]
  45.   elseif event[1] == "task_complete" then
  46.     events[count]["[2]numberTaskID"] = event[2]
  47.     events[count]["[3]boolSuccess"] = event[3]
  48.     events[count]["[4]stringError"] = event[4]
  49.     events[count]["[5]anyParam"] = event[5]
  50.   elseif event[1] == "redstone" then
  51.     events[count]["[2]"] = {"No data to return"}
  52.   elseif event[1] == "terminate" then
  53.     events[count]["[2]"] = {"No data to return"}
  54.   elseif event[1] == "disk" then
  55.     events[count]["[2]side"] = event[2]
  56.   elseif event[1] == "disk_eject" then
  57.     events[count]["[2]side"] = event[2]
  58.   elseif event[1] == "peripheral" then
  59.     events[count]["[2]side"] = event[2]
  60.   elseif event[1] == "peripheral_detach" then
  61.     events[count]["[2]side"] = event[2]
  62.   elseif event[1] == "rednet_message" then
  63.     events[count]["[2]senderID"] = event[2]
  64.     events[count]["[3]message"] = event[3]
  65.     events[count]["[4]protocol / numberDistanceTravelled"] = event[4]
  66.   elseif event[1] == "modem_message" then
  67.     events[count]["[2]side"] = event[2]
  68.     events[count]["[3]frequency"] = event[3]
  69.     events[count]["[4]reply_frequency"] = event[4]
  70.     events[count]["[5]message"] = event[5]
  71.     events[count]["[6]numberDistanceTravelled"] = event[6]
  72.   elseif event[1] == "http_success" then
  73.     events[count]["[2]URL"] = event[2]
  74.     events[count]["[3]tableSiteData"] = event[3]
  75.   elseif event[1] == "http_failure" then
  76.     events[count]["[2]URL"] = event[2]
  77.   elseif event[1] == "mouse_click" then
  78.     events[count]["[2]mouseButton"] = event[2]
  79.     events[count]["[3]x"] = event[3]
  80.     events[count]["[4]y"] = event[4]
  81.   elseif event[1] == "mouse_up" then
  82.     events[count]["[2]mouseButton"] = event[2]
  83.     events[count]["[3]x"] = event[3]
  84.     events[count]["[4]y"] = event[4]
  85.   elseif event[1] == "mouse_scroll" then
  86.     events[count]["[2]scrollDirection"] = event[2]
  87.     events[count]["[3]x"] = event[3]
  88.     events[count]["[4]y"] = event[4]
  89.   elseif event[1] == "mouse_drag" then
  90.     events[count]["[2]mouseButton"] = event[2]
  91.     events[count]["[3]x"] = event[3]
  92.     events[count]["[4]y"] = event[4]
  93.   elseif event[1] == "monitor_touch" then
  94.     events[count]["[2]location"] = event[2]
  95.     events[count]["[3]x"] = event[3]
  96.     events[count]["[4]y"] = event[4]
  97.   elseif event[1] == "monitor_resize" then
  98.     events[count]["[2]location"] = event[2]
  99.   elseif event[1] == "term_resize" then
  100.     events[count]["[2]"] = {"No data to return"}
  101.   elseif event[1] == "turtle_inventory" then
  102.     events[count]["[2]"] = {"No data to return"}
  103.  
  104.  
  105.   --start of plethora events, use this on an advanced computer or equivalent (nueral) on multi window.
  106.   elseif event[1] == "chat_message" then
  107.     events[count]["[2]from_player"] = event[2]
  108.     events[count]["[3]message"] = event[3]
  109.     events[count]["[4]UUID"] = event[4]
  110.   elseif event[1] == "chat_capture" then
  111.     events[count]["[2]message"] = event[2]
  112.     events[count]["[3]capture_pattern"] = event[3]
  113.     events[count]["[4]from_player"] = event[4]
  114.     events[count]["[5]UUID"] = event[5]
  115.   end
  116.   if notAllEventsShowing then
  117.     events[count].raw={event}
  118.   end
  119.   print(textutils.serialize(events[count]))
  120.   core.saveConfig("data/events.lua",events)
  121. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement