if not _G.__GAC_FACECAM_PROBE_BATTLE then local ok,err=pcall(function() local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60) local manager=CS.RPG.Client.GlobalVars.s_GamePhaseManager local phase=typeof(CS.RPG.Client.GamePhaseManager):GetField('_CurrentPhase',flags):GetValue(manager) if not phase or not typeof(CS.RPG.Client.BattleGamePhase):IsInstanceOfType(phase) then return end _G.__GAC_FACECAM_PROBE_BATTLE=true local t=phase:GetType() CS.UnityEngine.Debug.Log('[FaceCam battle] phase='..tostring(t)) for _,members in ipairs({t:GetFields(flags),t:GetProperties(flags)}) do for i=0,math.min(members.Length-1,199) do local m=members[i];local n=tostring(m.Name):lower() if n:find('actor') or n:find('entity') or n:find('avatar') or n:find('turn') or n:find('battle') or n:find('stage') then CS.UnityEngine.Debug.Log('[FaceCam battle] member='..tostring(m.Name)..' detail='..tostring(m)) end end end end) if not ok then _G.__GAC_FACECAM_PROBE_BATTLE=true;CS.UnityEngine.Debug.Log('[FaceCam battle] error='..tostring(err)) end end