SHOW:
|
|
- or go back to the newest paste.
| 1 | - | glass = peripheral.wrap("bottom")
|
| 1 | + | --Created and Developed by killzoms |
| 2 | - | local set = {}
|
| 2 | + | --Some Variable |
| 3 | - | function update() |
| 3 | + | set = {}
|
| 4 | - | |
| 4 | + | line = 220 |
| 5 | - | end |
| 5 | + | filte = {}
|
| 6 | - | function color() |
| 6 | + | time = {}
|
| 7 | - | if msg.match(msg, "&1") == true then |
| 7 | + | nu = {}
|
| 8 | ||
| 9 | - | end |
| 9 | + | updat = http.get("https://pastebin.com/raw/LcprcigA")
|
| 10 | - | end |
| 10 | + | upd = updat.readAll() |
| 11 | - | function clear() |
| 11 | + | cu = fs.open("LapChat", "w")
|
| 12 | - | if msg == "clear" then |
| 12 | + | cu.write(upd) |
| 13 | - | set["message1"] = nil |
| 13 | + | cu.flush() |
| 14 | - | set["message2"] = nil |
| 14 | + | cu.close() |
| 15 | - | set["message3"] = nil |
| 15 | + | os.run("LapChat")
|
| 16 | - | set["message4"] = nil |
| 16 | + | |
| 17 | - | set["message5"] = nil |
| 17 | + | --Download LapAPI |
| 18 | - | user = "" |
| 18 | + | -- updat = http.get("https://pastebin.com/raw/FM10T2EU")
|
| 19 | - | end |
| 19 | + | -- upd = updat.readAll() |
| 20 | - | end |
| 20 | + | -- cu = fs.open("LapAPI", "w")
|
| 21 | - | function save() |
| 21 | + | -- cu.write(upd) |
| 22 | - | f = fs.open("chatlog", "w")
|
| 22 | + | -- cu.flush() |
| 23 | - | if set["message4"] ~= nil then |
| 23 | + | -- cu.close() |
| 24 | - | set["message5"] = set["message4"] |
| 24 | + | -- os.loadAPI("LapAPI")
|
| 25 | - | set["line5"] = 70 |
| 25 | + | |
| 26 | - | end |
| 26 | + | --Run when the chat runs for the first time |
| 27 | - | if set["message3"] ~= nil then |
| 27 | + | --glass, mon, ups = LapAPI.runChatFirstTime() |
| 28 | - | set["message4"] = set["message3"] |
| 28 | + | |
| 29 | - | set["line4"] = 60 |
| 29 | + | --Function for finding commands |
| 30 | - | end |
| 30 | + | --function run(...) |
| 31 | - | if set["message2"] ~= nil then |
| 31 | + | -- _G.msgArgs = {}
|
| 32 | - | set["message3"] = set["message2"] |
| 32 | + | -- v = 1 |
| 33 | - | set["line3"] = 50 |
| 33 | + | --Check messages for spaces and split when found |
| 34 | - | end |
| 34 | + | -- for i in string.gmatch(msg, "%S+") do |
| 35 | - | if set["message1"] ~= nil then |
| 35 | + | -- _G.msgArgs[v] = i |
| 36 | - | set["message2"] = set["message1"] |
| 36 | + | -- v = v + 1 |
| 37 | - | set["line2"] = 40 |
| 37 | + | -- end |
| 38 | - | end |
| 38 | + | --Classic Command Prefix |
| 39 | - | if set["message"] ~= nil then |
| 39 | + | -- if string.match(arg[1], "/") ~= nil and string.match(arg[1], "./") == nil then |
| 40 | - | set["message1"] = set["message"] |
| 40 | + | -- return true |
| 41 | - | set["line1"] = 30 |
| 41 | + | -- else |
| 42 | - | end |
| 42 | + | -- return false |
| 43 | - | set["message"] = user.." > "..msg |
| 43 | + | -- end |
| 44 | - | set["line"] = 20 |
| 44 | + | --end |
| 45 | - | f.write(textutils.serialize(set)) |
| 45 | + | |
| 46 | - | f.flush() |
| 46 | + | --function fade() |
| 47 | - | end |
| 47 | + | --Will finish |
| 48 | - | function monitor() |
| 48 | + | --end |
| 49 | - | mon = peripheral.wrap("left")
|
| 49 | + | |
| 50 | - | if mon ~= nil then |
| 50 | + | --Load Addons |
| 51 | - | mon.setCursorPos(1,1) |
| 51 | + | --function addons() |
| 52 | - | mon.setTextScale(0.75) |
| 52 | + | -- installedAddons = {}
|
| 53 | - | mon.clear() |
| 53 | + | -- if fs.exists("Chat/InstalledAddons") == true then
|
| 54 | - | mon.write(user.." > "..msg) |
| 54 | + | -- iAddons = fs.open("Chat/InstalledAddons", "r")
|
| 55 | - | end |
| 55 | + | -- installedAddons = textutils.unserialize(iAddons.readAll()) |
| 56 | - | end |
| 56 | + | -- for i,v in ipairs(installedAddons) do |
| 57 | - | function multiline() |
| 57 | + | -- os.loadAPI("Chat/Addons/"..installedAddons[i])
|
| 58 | - | mult = fs.open("chatlog", "r")
|
| 58 | + | -- funct = loadstring(installedAddons[i]..".run()") |
| 59 | - | nu = textutils.unserialize(mult.readAll()) |
| 59 | + | -- funct() |
| 60 | - | if nu.message1 ~= nil then |
| 60 | + | -- end |
| 61 | - | line1 = nu.line1 |
| 61 | + | -- iAddons.close() |
| 62 | - | msg1 = nu.message1 |
| 62 | + | -- end |
| 63 | - | y = line1 - 1 |
| 63 | + | --end |
| 64 | - | glass.addBox(2, y, 324, 10, 0x000000, 0.5) |
| 64 | + | |
| 65 | - | glass.addText(2, line1, msg1, 0xFFFFFF) |
| 65 | + | --function color() |
| 66 | - | end |
| 66 | + | --Working on it |
| 67 | - | if nu.message2 ~= nil then |
| 67 | + | --end |
| 68 | - | line2 = nu.line2 |
| 68 | + | |
| 69 | - | msg2 = nu.message2 |
| 69 | + | --If mon present print messages to it |
| 70 | - | y = line2 - 1 |
| 70 | + | --function monitor() |
| 71 | - | glass.addBox(2, y, 324, 10, 0x000000, 0.5) |
| 71 | + | -- if mon then |
| 72 | - | glass.addText(2, line2, msg2, 0xFFFFFF) |
| 72 | + | -- mon.setCursorPos(1,1) |
| 73 | - | end |
| 73 | + | -- mon.setTextScale(0.75) |
| 74 | - | if nu.message3 ~= nil then |
| 74 | + | -- mon.clear() |
| 75 | - | line3 = nu.line3 |
| 75 | + | -- mon.write(realName.." > "..msg) |
| 76 | - | msg3 = nu.message3 |
| 76 | + | -- end |
| 77 | - | y = line3 - 1 |
| 77 | + | --end |
| 78 | - | glass.addBox(2, y, 324, 10, 0x000000, 0.5) |
| 78 | + | |
| 79 | - | glass.addText(2, line3, msg3, 0xFFFFFF) |
| 79 | + | --Main function |
| 80 | - | end |
| 80 | + | --function main() |
| 81 | - | if nu.message4 ~= nil then |
| 81 | + | -- while true do |
| 82 | - | line4 = nu.line4 |
| 82 | + | --Reset variables |
| 83 | - | msg4 = nu.message4 |
| 83 | + | -- _G.realName = "" |
| 84 | - | y = line4 - 1 |
| 84 | + | -- _G.facs = "" |
| 85 | - | glass.addBox(2, y, 324, 10, 0x000000, 0.5) |
| 85 | + | -- _G.rank = "" |
| 86 | - | glass.addText(2, line4, msg4, 0xFFFFFF) |
| 86 | + | -- _G.commandUser = nil |
| 87 | - | end |
| 87 | + | |
| 88 | - | if nu.message5 ~= nil then |
| 88 | + | --Update Chat |
| 89 | - | line5 = nu.line5 |
| 89 | + | -- if ups == true then |
| 90 | - | msg5 = nu.message5 |
| 90 | + | -- LapAPI.update("QDGKgTAh", "startup")
|
| 91 | - | y = line5 -1 |
| 91 | + | -- end |
| 92 | - | glass.addBox(2, y, 324, 10, 0x000000, 0.5) |
| 92 | + | |
| 93 | - | glass.addText(2, line5, msg5, 0xFFFFFF) |
| 93 | + | |
| 94 | - | end |
| 94 | + | --Pull events from the Terminal Glasses |
| 95 | - | end |
| 95 | + | -- e, side, _G.user, _G.uuid, _G.msg = os.pullEvent("glasses_chat_command")
|
| 96 | ||
| 97 | - | function nicknames() |
| 97 | + | --Check for Commands |
| 98 | - | if msg.match(msg, "nick ") ~= nil then |
| 98 | + | -- _G.isCommand = run(_G.msg) |
| 99 | - | nick = msg.gsub(msg, "nick ", "") |
| 99 | + | |
| 100 | - | name = fs.open("nicknames/"..user, "w")
|
| 100 | + | --If Command set user to command User |
| 101 | - | nik["_"] = user |
| 101 | + | -- if _G.isCommand then |
| 102 | - | nik["new"] = nick |
| 102 | + | -- _G.set = {}
|
| 103 | - | name.write(textutils.serialize(nik)) |
| 103 | + | -- _G.commandUser = _G.user |
| 104 | - | name.flush() |
| 104 | + | -- _G.user = "" |
| 105 | - | else |
| 105 | + | -- end |
| 106 | - | if fs.exists("nicknames/"..user) == true then
|
| 106 | + | |
| 107 | - | nicks = fs.open("nicknames/"..user, "r")
|
| 107 | + | --Initialize addons |
| 108 | - | nik = textutils.unserialize(nicks.readAll()) |
| 108 | + | -- addons() |
| 109 | - | user = nik.new |
| 109 | + | |
| 110 | - | end |
| 110 | + | --If Factions installed check for Faction commands |
| 111 | - | end |
| 111 | + | -- if Factions then |
| 112 | - | end |
| 112 | + | -- Factions.facCommands(_G.msgArgs, _G.user) |
| 113 | -- end | |
| 114 | - | while true do |
| 114 | + | |
| 115 | - | e, side, user, uuid, msg = os.pullEvent("glasses_chat_command")
|
| 115 | + | |
| 116 | - | nicknames() |
| 116 | + | --Load Faction name of user |
| 117 | - | clear() |
| 117 | + | -- if not isCommand then |
| 118 | - | if msg.match(msg, "nick ") == nil then |
| 118 | + | -- if Factions then |
| 119 | - | if msg ~= "clear" then |
| 119 | + | -- _G.facs = Factions.checkFac(_G.user) |
| 120 | - | monitor() |
| 120 | + | -- end |
| 121 | - | glass.clear() |
| 121 | + | -- end |
| 122 | - | save() |
| 122 | + | |
| 123 | - | glass.addBox(2, 19, 324, 10, 0x000000, 0.5) |
| 123 | + | -- LapAPI.clearChat(_G.msgArgs) |
| 124 | - | glass.addText(2, 20, user.." > "..msg, 0xFFFFFF) |
| 124 | + | |
| 125 | - | multiline() |
| 125 | + | -- monitor() |
| 126 | - | glass.sync() |
| 126 | + | -- LapAPI.chatSave(_G.facs, _G.rank, _G.hyph, _G.user, _G.msg, _G.isCommand) |
| 127 | - | end |
| 127 | + | -- if _G.con then |
| 128 | - | end |
| 128 | + | -- glass.addText(2, 230, "Console > ".._G.con, 0xFFFFFF) |
| 129 | - | end |
| 129 | + | -- end |
| 130 | ||
| 131 | -- fade() | |
| 132 | -- If a command not detected print multiple lines | |
| 133 | -- if not _G.isCommand then | |
| 134 | -- glass.clear() | |
| 135 | -- LapAPI.chatMultiline() | |
| 136 | -- end | |
| 137 | -- glass.sync() | |
| 138 | -- end | |
| 139 | --end | |
| 140 | ||
| 141 | --Run Multiple functions at once | |
| 142 | --parallel.waitForAll(main, LapAPI.chatConsole, LapAPI.chatSaveToFile, LapAPI.userJoined, LapAPI.userLeft) |