Advertisement
Guest User

Untitled

a guest
Jun 5th, 2022
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.60 KB | None | 0 0
  1.         local function writeObject(fs, object, indent)
  2.             local idx = string.rep("  ", indent)
  3.             local lb = "\r\n"
  4.  
  5.             if type(object) == "table" then
  6.                 fs:write(idx .. "{" .. lb)
  7.                 for k, v in pairs(object) do
  8.                     if k == "__index" then
  9.                             writeObject(fs, idx .. "" .. tostring(k) .. " = <SELF>,", indent + 1)
  10.                     else
  11.                         if type(v) == "table" then
  12.                             fs:write(string.rep("  ", indent + 1) .. tostring(k) .. " = ")
  13.                             writeObject(fs, v, indent + 1)
  14.                         else
  15.                             writeObject(fs, idx .. "" .. tostring(k) .. " = " .. tostring(v) .. ",", indent + 1)
  16.                         end
  17.                     end
  18.                 end
  19.                 fs:write(idx .. "}" .. (indent > 0 and "," or "") .. lb)
  20.             else
  21.                 fs:write(idx .. tostring(object) .. lb)
  22.             end
  23.         end
  24.  
  25.         function fsOut(...)
  26.             local fs = getFileWriter("nice_output.txt", true, false)
  27.  
  28.             local items = table.pack(...)
  29.  
  30.             if #items == 0 then
  31.                 writeObject(fs, "nil!", 0)
  32.             elseif #items == 1 then
  33.                 writeObject(fs, items[1], 0)
  34.             else
  35.                 for _, i in ipairs(items) do
  36.                     writeObject(fs, "-------", 0)
  37.                     writeObject(fs, i, 0)
  38.                 end
  39.                 writeObject(fs, "-------", 0)
  40.             end
  41.  
  42.             fs:close()
  43.         end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement