49 lines
2.0 KiB
Lua
49 lines
2.0 KiB
Lua
-- Temporary analysis only. Keep outside scripts/ unless deliberately dispatched.
|
|||
|
|
-- Twelve members per heartbeat, exact live module types, no scene factory calls.
|
||
|
|
do
|
||
|
|
local function capture()
|
||
|
|
local s=_G.__gacEventStellaMeta1 or {module=1,index=0,kind='fields'}
|
||
|
|
_G.__gacEventStellaMeta1=s
|
||
|
|
local names={'ComicDessertModule','ChenLingBattleModule','FiveDimModule'}
|
||
|
|
if s.module>#names then return end
|
||
|
|
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
|
||
|
|
local manager=CS.RPG.Client.GlobalVars.s_GamePhaseManager
|
||
|
|
if not manager then return end
|
||
|
|
local phase=typeof(CS.RPG.Client.GamePhaseManager):GetField('_CurrentPhase',flags):GetValue(manager)
|
||
|
|
if not phase or typeof(CS.RPG.Client.BattleGamePhase):IsInstanceOfType(phase) then return end
|
||
|
|
local modules=CS.RPG.Client.GlobalVars.s_ModuleManager
|
||
|
|
if not modules then return end
|
||
|
|
local value=modules[names[s.module]]
|
||
|
|
local log=function(v) CS.UnityEngine.Debug.Log('[GAC_EVENT_STELLA_META] '..tostring(v)) end
|
||
|
|
if not value then log('MISSING '..names[s.module]);s.module=s.module+1;return end
|
||
|
|
if not s.target then
|
||
|
|
s.target=value:GetType();s.members=s.target:GetFields(flags)
|
||
|
|
log('TYPE '..s.target.FullName)
|
||
|
|
end
|
||
|
|
for n=1,12 do
|
||
|
|
if s.index>=s.members.Length then
|
||
|
|
if s.kind=='fields' then
|
||
|
|
s.kind='methods';s.index=0;s.members=s.target:GetMethods(flags)
|
||
|
|
return
|
||
|
|
end
|
||
|
|
log('END_TYPE '..s.target.FullName)
|
||
|
|
s.module=s.module+1;s.target=nil;s.members=nil;s.kind='fields';s.index=0
|
||
|
|
if s.module>#names then log('END') end
|
||
|
|
return
|
||
|
|
end
|
||
|
|
local member=s.members[s.index];s.index=s.index+1
|
||
|
|
if member.DeclaringType==s.target then
|
||
|
|
if s.kind=='fields' then
|
||
|
|
log('FIELD '..member.Name..' '..member.FieldType.FullName)
|
||
|
|
else
|
||
|
|
log('METHOD '..tostring(member)..' HANDLE '..tostring(member.MethodHandle.Value))
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
local ok,e=pcall(capture)
|
||
|
|
if not ok then
|
||
|
|
_G.__gacEventStellaMeta1={module=99}
|
||
|
|
CS.UnityEngine.Debug.Log('[GAC_EVENT_STELLA_META] ERROR '..tostring(e))
|
||
|
|
end
|
||
|
|
end
|