Advertisement
flarn2006

objlistcsv.lua

Dec 11th, 2012
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 0.99 KB | None | 0 0
  1. function SaveObjectList()
  2.     local objlist = readInteger(0x1DDE268)
  3.     local count = readInteger(objlist)
  4.     objlist = readInteger(objlist + 0x04)
  5.    
  6.     local stage = readBytes(0x1934B70, 1, false)
  7.     local file = io.open("objlist"..stage..".csv", "w+")
  8.     file:write("name,flags,list,routine\n")
  9.    
  10.     for i=0,count-1 do
  11.         local name = readString(readInteger(objlist + 0x0C), 64)
  12.         local flags = readBytes(objlist, 1, false)
  13.         local list = readBytes(objlist + 0x01, 1, false)
  14.         local routine = readInteger(objlist + 0x08)
  15.         if name == nil then name = "???" end
  16.         file:write(name..","..num2hex(flags)..","..num2hex(list)..","..num2hex(routine).."\n")
  17.         objlist = objlist + 0x10
  18.     end
  19.    
  20.     file:close()
  21. end
  22.  
  23. function num2hex(num)
  24.     if num ~= nil then
  25.         local hexstr = '0123456789ABCDEF'
  26.         local s = ''
  27.         while num > 0 do
  28.             local mod = math.fmod(num, 16)
  29.             s = string.sub(hexstr, mod+1, mod+1) .. s
  30.             num = math.floor(num / 16)
  31.         end
  32.         if s == '' then s = '0' end
  33.         return s
  34.     else
  35.         return ""
  36.     end
  37. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement