28 lines
1.2 KiB
Lua
28 lines
1.2 KiB
Lua
-- CW-only, read-only reflection, one named type per heartbeat.
|
|||
|
|
do
|
||
|
|
local names={'GridFightModule','GridFightPlayerProfile','GridFightDivisionInfo','GridFightSeason','GridFightGameSession','GridFightGameRef','GridFightDivisionConfig','GridFightTutorialStageConfig'}
|
||
|
|
_G.__gacCwSchemaIndex=_G.__gacCwSchemaIndex or 1
|
||
|
|
local index=_G.__gacCwSchemaIndex
|
||
|
|
if index<=#names then
|
||
|
|
_G.__gacCwSchemaIndex=index+1
|
||
|
|
local function log(v)CS.UnityEngine.Debug.Log('[GAC_CW_SCHEMA] '..tostring(v))end
|
||
|
|
local ok,err=pcall(function()
|
||
|
|
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
|
||
|
|
local ns=CS.RPG.Client
|
||
|
|
local t=typeof(ns[names[index]])
|
||
|
|
log('TYPE '..tostring(t))
|
||
|
|
local fields=t:GetFields(flags)
|
||
|
|
for i=0,fields.Length-1 do log('FIELD '..tostring(fields[i]))end
|
||
|
|
local methods=t:GetMethods(flags)
|
||
|
|
for i=0,methods.Length-1 do
|
||
|
|
local m=methods[i]
|
||
|
|
if m.DeclaringType==t then
|
||
|
|
local n=tostring(m.Name)
|
||
|
|
if names[index]~='GridFightModule' or n:find('Data') or n:find('Sync') or n:find('Season') or n:find('Config') or n:find('GamePlay') then log('METHOD '..tostring(m)) end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
log('END '..names[index])
|
||
|
|
end)
|
||
|
|
if not ok then log('ERROR '..names[index]..' '..tostring(err))end
|
||
|
|
end
|
||
|
|
end
|