23 lines
1.1 KiB
Lua
23 lines
1.1 KiB
Lua
-- Serialize only the live CW ActivityPanelConditionRow; no condition mutation.
|
|
do
|
|
if not _G.__gacCwBookConditionRowCapture2 then
|
|
_G.__gacCwBookConditionRowCapture2=true
|
|
local function log(v)CS.UnityEngine.Debug.Log('[GAC_CW_BOOK_CONDITION] '..tostring(v))end
|
|
log('BEGIN')
|
|
local ok,err=pcall(function()
|
|
local class=package.loaded['Ui.DailyMission.Rogue.GridFight.HandbookRogueGridFightTabItem']
|
|
local constants
|
|
for i=1,16 do local n,v=debug.getupvalue(class._on_click_go,i);if not n then break end;if n=='_GRID_FIGHT_CONSTANTS'then constants=v;break end end
|
|
local panel=CS.RPG.Client.GlobalVars.s_ModuleManager.ActivityModule:GetPanelData(constants.ActivityID)
|
|
local state=panel.StateData
|
|
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
|
|
local f=state:GetType():GetField('<ConditionConfig>k__BackingField',flags)
|
|
local row=f:GetValue(state)
|
|
local value=CS.Newtonsoft.Json.JsonConvert.SerializeObject(row)
|
|
if #value>16384 then error('Condition row exceeds bound')end
|
|
log('ROW '..value)
|
|
end)
|
|
if not ok then log('ERROR '..tostring(err))end
|
|
end
|
|
end
|