From 5e93ba6f4772dc60ad9a7dd6c40d3a2e4466a62e Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Wed, 21 Oct 2026 21:42:17 +0800 Subject: [PATCH] =?UTF-8?q?feat(state):=20=E6=95=B0=E6=8D=AE=E6=B5=81?= =?UTF-8?q?=E8=A6=86=E7=9B=96=E5=8C=BF=E5=90=8D=E5=87=BD=E6=95=B0/IIFE/?= =?UTF-8?q?=E5=8E=9F=E5=9E=8B=E6=96=B9=E6=B3=95=EF=BC=8C=E5=89=94=E9=99=A4?= =?UTF-8?q?=20copy=20=E8=BD=AC=E5=8F=91=E5=99=AA=E5=A3=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1) 作用域索引从「具名 function」扩到三类:具名函数、赋值到原型的方法(ld(Cls).m = function)、IIFE((function(t){...})(a,b));形参解析按由内向外逐层尝试。 2) 关键修正:Kotlin 给 data class 生成的 copy/with(原型方法里 return new Cls(同名形参…))是循环证据,不能当类型依据。剔除后覆盖率从虚高的 1185(55.7%) 回落到 689(32.4%),被剔除的 497 个字段标注为「仅 copy 转发(无类型信息)」。 3) 新增 --stats:输出仍认不出的实参形态分布,便于决定下一条规则。 4) 与 158 个运行时真值对比仍无新增冲突(保持 3 处真实分歧:AddBattle.suspicionLevel / UpdateEventPass.eventPassEndTime / SetDrone.resource)。 --- 3DTank/tools/gen_action_kt.js | 157 +- .../src/jsMain/kotlin/App/State/Inventory.kt | 1544 ++++++++--------- 2 files changed, 915 insertions(+), 786 deletions(-) diff --git a/3DTank/tools/gen_action_kt.js b/3DTank/tools/gen_action_kt.js index 3a5d7b0..f11a912 100644 --- a/3DTank/tools/gen_action_kt.js +++ b/3DTank/tools/gen_action_kt.js @@ -26,6 +26,25 @@ const Arg = (N, D) => { const I = Argv.indexOf('--' + N); return I >= 0 && Argv[ // --audit:对「已有运行时真值」的字段也跑一遍推断,输出冲突,用来校验推断规则是否可靠 const Audit = Argv.indexOf('--audit') >= 0; const Conflicts = []; +// --stats:统计仍然认不出的实参形态(决定下一条推断规则该打哪里) +const Stats = Argv.indexOf('--stats') >= 0; +const ShapeHist = new Map(); +const CallHist = new Map(); +function Shape(Expr) { + const E = String(Expr || '').trim(); + if (!E) return 'empty'; + if (E === 'null') return 'null'; + if (/^[A-Za-z_$][\w$]*$/.test(E)) return 'ident'; + if (/^this\.[A-Za-z0-9_$]+$/.test(E)) return 'this.field'; + if (/^(?:[A-Za-z_$][\w$]*\.)+[A-Za-z0-9_$]+$/.test(E)) return 'a.b.path'; + if (/^[A-Za-z_$][\w$]*\(/.test(E) || /^(?:[A-Za-z_$][\w$]*\.)+[A-Za-z0-9_$]+\(/.test(E)) return 'call'; + if (/^new\s+/.test(E)) return 'new'; + if (/^function|^\(function/.test(E)) return 'func'; + if (/^\[/.test(E)) return 'array'; + if (/^\{/.test(E)) return 'object'; + if (/^!/.test(E)) return 'not'; + return 'other'; +} // TankIC/3DTank/tools → TankIC/TankiOffline/... const OUT = path.resolve(Arg('out', path.join(PROJECT, '..', 'TankiOffline', 'app', 'src', 'jsMain', 'kotlin', 'App', 'State', 'Inventory.kt'))); @@ -183,16 +202,95 @@ function FnIndex(Mod) { } return FnIndexCache.get(Mod); } -// 包住 Off、且形参表里含 Param 的最内层函数 -function EnclosingFn(Mod, Off, Param) { - let Best = null; +// 包住 Off、且形参表里含 Param 的所有函数,由内向外(具名 / 赋值到方法 / IIFE 三种) +function ScopesFor(Mod, Off, Param) { + const Out = []; for (const F of FnIndex(Mod)) { + if (F.Start <= Off && F.End >= Off && F.Params.indexOf(Param) >= 0) Out.push({ ...F, Kind: 'named' }); + } + for (const F of AnonIndex(Mod)) { + if (F.Start > Off || F.End < Off || F.Params.indexOf(Param) < 0) continue; + if (F.Method) Out.push({ ...F, Kind: 'method', Name: F.Method }); + if (F.Iife) Out.push({ ...F, Kind: 'iife' }); + } + Out.sort((A, B) => B.Start - A.Start); + return Out; +} + +// 匿名函数表达式:赋值到方法(`x.m = function (…)`)或立即调用(`(function (…) {…})(a, b)`) +const AnonCache = new Map(); +function AnonIndex(Mod) { + if (AnonCache.has(Mod)) return AnonCache.get(Mod); + const Text = SrcOf(Mod); + const Pairs = BracePairs(Text); + const List = []; + for (const M of Text.matchAll(/(? S.trim()) : []; + // 立即调用:} (…) 或 } ) (…) + let I = End + 1; + while (I < Text.length && /\s/.test(Text[I])) I++; + if (Text[I] === ')') { I++; while (I < Text.length && /\s/.test(Text[I])) I++; } + let Iife = null; + let IifeAt = -1; + if (Text[I] === '(') { + const Close = MatchParen(Text, I); + if (Close > 0) { Iife = SplitArgs(Text.slice(I + 1, Close)); IifeAt = I; } + } + List.push({ Params, Start: M.index, End, Method: Asg ? Asg[1] : null, Iife, IifeAt }); + } + AnonCache.set(Mod, List); + return List; +} + +// `x.(…)` 调用点(用于 `x.m = function (…)` 这种原型方法) +const MethodCallsCache = new Map(); +function MethodCalls(Mod, Name) { + const Key = Mod + '|.' + Name; + if (MethodCallsCache.has(Key)) return MethodCallsCache.get(Key); + const Text = SrcOf(Mod); + const Out = []; + const Re = new RegExp('\\.' + Name.replace(/[$]/g, '\\$') + '\\s*\\(', 'g'); + let M; + while ((M = Re.exec(Text)) && Out.length < 40) { + const Open = Text.indexOf('(', M.index); + if (/=\s*function\s*$/.test(Text.slice(Math.max(0, M.index - 20), M.index))) continue; + const End = MatchParen(Text, Open); + if (End < 0) continue; + Out.push({ Args: SplitArgs(Text.slice(Open + 1, End)), At: M.index }); + } + MethodCallsCache.set(Key, Out); + return Out; +} + +// 包住 Off 的最内层函数(不管形参是什么) +function InnermostScope(Mod, Off) { + let Best = null; + for (const F of FnIndex(Mod)) if (F.Start <= Off && F.End >= Off && (!Best || F.Start > Best.Start)) Best = { ...F, Kind: 'named' }; + for (const F of AnonIndex(Mod)) { if (F.Start > Off || F.End < Off) continue; - if (F.Params.indexOf(Param) < 0) continue; - if (!Best || F.Start > Best.Start) Best = F; + if (!Best || F.Start > Best.Start) Best = { ...F, Kind: F.Method ? 'method' : (F.Iife ? 'iife' : 'anon'), Name: F.Method }; } return Best; } +// 原样转发:实参就是所在函数的形参表,且该函数挂在原型上(`ld(Cls).m = function (…) { return new Cls(…) }`)。 +// 这是 Kotlin 为 data class 生成的 copy/with,类型信息就是类自身的字段,属于循环,不能当证据。 +// 自由函数里的 `make(a, b) { return new X(a, b) }` 不在此列(那条链是有信息的)。 +const ForwardCache = new WeakSet(); +const ForwardJudged = new WeakSet(); +function IsForwarding(Mod, Site) { + if (ForwardJudged.has(Site)) return ForwardCache.has(Site); + ForwardJudged.add(Site); + const Sc = InnermostScope(Mod, Site.At); + if (!Sc || Sc.Kind !== 'method' || !Sc.Params.length) return false; + if (Sc.Params.length !== Site.Args.length) return false; + for (let I = 0; I < Sc.Params.length; I++) if (Site.Args[I].trim() !== Sc.Params[I]) return false; + ForwardCache.add(Site); + return true; +} const FnCallsCache = new Map(); function FnCalls(Mod, Name) { @@ -275,20 +373,25 @@ function InferDeep(Expr, Mod, Off, Depth) { if (FlowSeen.has(Guard)) return null; FlowSeen.add(Guard); try { - // ① 形参 → 调用点(按调用点自身的作用域继续回溯) - const Fn = EnclosingFn(Mod, Off, E); - if (Fn) { - const Idx = Fn.Params.indexOf(E); + // ① 形参 → 调用点 / IIFE 实参(由内向外逐层试,按调用点自身的作用域继续回溯) + const Scopes = ScopesFor(Mod, Off, E); + for (const Scope of Scopes) { + const Idx = Scope.Params.indexOf(E); const Types = []; - for (const Site of FnCalls(Mod, Fn.Name)) { - if (Site.Args.length <= Idx) continue; - Types.push(InferDeep(Site.Args[Idx], Mod, Site.At, Depth - 1)); + if (Scope.Kind === 'iife') { + if (Scope.Iife.length > Idx) Types.push(InferDeep(Scope.Iife[Idx], Mod, Scope.IifeAt, Depth - 1)); + } else { + const CallSites = Scope.Kind === 'method' ? MethodCalls(Mod, Scope.Name) : FnCalls(Mod, Scope.Name); + for (const Site of CallSites) { + if (Site.Args.length <= Idx) continue; + Types.push(InferDeep(Site.Args[Idx], Mod, Site.At, Depth - 1)); + } } const U = Unify(Types); if (U) return U; } // ② 所在函数体内的最近一次赋值 - const Assign = LastAssign(Text, E, Fn ? Fn.Start : 0, Off); + const Assign = LastAssign(Text, E, Scopes.length ? Scopes[0].Start : 0, Off); if (Assign && Assign !== E) return InferDeep(Assign, Mod, Off, Depth - 1); } finally { FlowSeen.delete(Guard); @@ -315,11 +418,15 @@ for (const R of Inventory.Rows) { let InferredSource = ''; const Notes = []; let NullSeen = false; + let SiteSeen = 0; + let SiteSkipped = 0; { const Deep = []; for (const S of Sites) { const A = S.Args[I]; if (A === undefined) continue; + SiteSeen++; + if (IsForwarding(S.Module, S)) { SiteSkipped++; continue; } if (A.trim() === 'null') NullSeen = true; const T = InferType(A); if (T) { if (!Inferred) { Inferred = T; InferredSource = 'callsite'; } } @@ -346,7 +453,23 @@ for (const R of Inventory.Rows) { else { Note = '// 未收录类型: ' + C.Bad + '(' + Source + ')'; Type = null; } } if (Type) TypedFields++; - if (!Type && !Note) Note = Notes.length ? '// 调用点: ' + Notes.join(' | ') : '// 无调用点'; + if (Stats && !Type) { + for (const S of Sites) { + const A = S.Args[I]; + if (A === undefined) continue; + const K = Shape(A); + ShapeHist.set(K, (ShapeHist.get(K) || 0) + 1); + if (K === 'call') { + const All = String(A).trim().match(/[A-Za-z0-9_$]+(?=\s*\()/g) || []; + const Name = All.length ? All[All.length - 1] : '?'; + CallHist.set(Name, (CallHist.get(Name) || 0) + 1); + } + } + } + if (!Type && !Note) { + if (SiteSeen && SiteSkipped === SiteSeen) Note = '// 仅 copy 转发(无类型信息)'; + else Note = Notes.length ? '// 调用点: ' + Notes.join(' | ') : '// 无调用点'; + } if (!Note) Note = '// ' + Source; // 注释必须压成单行,且逗号要放在注释之前(否则逗号被 // 吞掉) Note = Note.replace(/\s+/g, ' ').slice(0, 120); @@ -374,4 +497,10 @@ if (Audit) { console.log('推断 vs 运行时真值冲突 ' + Conflicts.length + ' 处'); for (const C of Conflicts.slice(0, 25)) console.log(' ' + C); } +if (Stats) { + console.log('认不出的实参形态:'); + for (const [K, V] of [...ShapeHist.entries()].sort((A, B) => B[1] - A[1])) console.log(' ' + K + ' = ' + V); + console.log('其中调用表达式的被调名 Top 15:'); + for (const [K, V] of [...CallHist.entries()].sort((A, B) => B[1] - A[1]).slice(0, 15)) console.log(' ' + K + ' = ' + V); +} console.log(' 输出: ' + OUT); diff --git a/TankiOffline/app/src/jsMain/kotlin/App/State/Inventory.kt b/TankiOffline/app/src/jsMain/kotlin/App/State/Inventory.kt index 0f05b29..4ec7807 100644 --- a/TankiOffline/app/src/jsMain/kotlin/App/State/Inventory.kt +++ b/TankiOffline/app/src/jsMain/kotlin/App/State/Inventory.kt @@ -5,13 +5,13 @@ package App.State import Core.Vector3 -// 动作/状态类共 816 个,字段 2129 个(已定类型 722 个) +// 动作/状态类共 816 个,字段 2129 个(已定类型 689 个) data class AnnouncementState( - val isEnabled: Boolean, // dataflow - val modelLoaded: Any?, // 调用点: n - val items: Any?, // 调用点: i - val wasInBattle: Any?, // 调用点: r - val skipNextPromotedAnnounce: Any?, // 调用点: e + val isEnabled: Any?, // 仅 copy 转发(无类型信息) + val modelLoaded: Any?, // 仅 copy 转发(无类型信息) + val items: Any?, // 仅 copy 转发(无类型信息) + val wasInBattle: Any?, // 仅 copy 转发(无类型信息) + val skipNextPromotedAnnounce: Any?, // 仅 copy 转发(无类型信息) ) data class State( @@ -40,14 +40,14 @@ data class ActionButtonClicked( ) data class AntiAddictionState( - val isEnableRealNameCheck: Any?, // 调用点: t - val unknownUserId: Any?, // 调用点: n - val urlForEnterUserId: Int, // dataflow - val playingTimeInMinutes: Any?, // 调用点: r - val alertMessage: Any?, // 调用点: e - val idNumber: Any?, // 调用点: u - val realName: Any?, // 调用点: s - val validateStatus: Any?, // 调用点: o + val isEnableRealNameCheck: Any?, // 仅 copy 转发(无类型信息) + val unknownUserId: Any?, // 仅 copy 转发(无类型信息) + val urlForEnterUserId: Any?, // 仅 copy 转发(无类型信息) + val playingTimeInMinutes: Any?, // 仅 copy 转发(无类型信息) + val alertMessage: Any?, // 仅 copy 转发(无类型信息) + val idNumber: Any?, // 仅 copy 转发(无类型信息) + val realName: Any?, // 仅 copy 转发(无类型信息) + val validateStatus: Any?, // 仅 copy 转发(无类型信息) ) data class SetAndValidateUserData( @@ -74,9 +74,9 @@ data class ShowAntiAddictionAlert( ) data class BattleTutorialState( - val message: Any?, // 调用点: t - val fragsCount: Any?, // 调用点: n - val movementHasStarted: Any?, // 调用点: i + val message: Any?, // 仅 copy 转发(无类型信息) + val fragsCount: Any?, // 仅 copy 转发(无类型信息) + val movementHasStarted: Any?, // 仅 copy 转发(无类型信息) ) data class ShowMessage( @@ -84,7 +84,7 @@ data class ShowMessage( ) data class SetFragsCount( - val fragsCount: Any?, // 调用点: t + val fragsCount: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateLocalTankLogAction( @@ -92,8 +92,8 @@ data class UpdateLocalTankLogAction( ) data class LocalBattleUserState( - val weaponResistanceProperty: Any?, // 调用点: t - val isReArmorTemporaryDisabled: Boolean, // dataflow + val weaponResistanceProperty: Any?, // 仅 copy 转发(无类型信息) + val isReArmorTemporaryDisabled: Any?, // 仅 copy 转发(无类型信息) ) data class SetLocalWeaponResistanceProperty( @@ -105,11 +105,11 @@ data class SetReArmorTemporaryDisabled( ) data class SuppliesState( - val count: Any?, // 调用点: t + val count: Any?, // 仅 copy 转发(无类型信息) ) data class BattleMessageState( - val messages: Any?, // 调用点: t + val messages: Any?, // 仅 copy 转发(无类型信息) ) data class LocalizedMessage( @@ -181,9 +181,9 @@ data class DoAddTextMessage( ) data class BattlePauseState( - val inAutoPauseMode: Any?, // 调用点: t | cd - val timeForAutoLeave: Boolean, // dataflow - val idleKickPeriodInMsec: Boolean, // dataflow + val inAutoPauseMode: Any?, // 调用点: cd + val timeForAutoLeave: Any?, // 调用点: cd + val idleKickPeriodInMsec: Any?, // 调用点: n.uqb_1 ) data class OnPauseMode( @@ -200,13 +200,13 @@ data class PauseActivated( ) data class BattleViewState( - val inBackgroundState: Any?, // 调用点: t - val isHidden: Boolean, // dataflow - val invisibleElements: Boolean, // dataflow - val inputEnabled: Any?, // 调用点: r - val battleStatisticsActive: Any?, // 调用点: e - val battleMenuActive: Any?, // 调用点: u - val joystickPosition: Any?, // 调用点: s + val inBackgroundState: Any?, // 仅 copy 转发(无类型信息) + val isHidden: Any?, // 仅 copy 转发(无类型信息) + val invisibleElements: Any?, // 仅 copy 转发(无类型信息) + val inputEnabled: Any?, // 仅 copy 转发(无类型信息) + val battleStatisticsActive: Any?, // 仅 copy 转发(无类型信息) + val battleMenuActive: Any?, // 仅 copy 转发(无类型信息) + val joystickPosition: Any?, // 仅 copy 转发(无类型信息) ) data class SetVisibility( @@ -220,8 +220,8 @@ data class SetElementsVisibility( ) data class TankActionsLogState( - val logs: Any?, // 调用点: t - val noticed: Boolean, // dataflow + val logs: Any?, // 仅 copy 转发(无类型信息) + val noticed: Any?, // 仅 copy 转发(无类型信息) ) data class OnKilled( @@ -265,17 +265,17 @@ data class TankUserActionLog( ) data class Moderation( - val moderatorMode: Any?, // 调用点: t - val battleModeratorMode: Boolean, // dataflow - val eventOrganizerMode: Any?, // 调用点: i - val moderationToolBattleUrlTemplate: Any?, // 调用点: r - val moderationToolUserUrlTemplate: Any?, // 调用点: e - val battleInfo: Any?, // 调用点: u - val forceShowBattleInfo: Any?, // 调用点: s - val systemMessage: Any?, // 调用点: o - val forceShowSystemMessage: Any?, // 调用点: _ - val forceShowBlockUserMenu: Any?, // 调用点: h - val selectedUsers: Any?, // 调用点: a + val moderatorMode: Any?, // 仅 copy 转发(无类型信息) + val battleModeratorMode: Any?, // 仅 copy 转发(无类型信息) + val eventOrganizerMode: Any?, // 仅 copy 转发(无类型信息) + val moderationToolBattleUrlTemplate: Any?, // 仅 copy 转发(无类型信息) + val moderationToolUserUrlTemplate: Any?, // 仅 copy 转发(无类型信息) + val battleInfo: Any?, // 仅 copy 转发(无类型信息) + val forceShowBattleInfo: Any?, // 仅 copy 转发(无类型信息) + val systemMessage: Any?, // 仅 copy 转发(无类型信息) + val forceShowSystemMessage: Any?, // 仅 copy 转发(无类型信息) + val forceShowBlockUserMenu: Any?, // 仅 copy 转发(无类型信息) + val selectedUsers: Any?, // 仅 copy 转发(无类型信息) ) data class ModerationBattleInfo( @@ -345,39 +345,39 @@ data class BattleFormat( ) data class BattlesSelect( - val loaded: Any?, // 调用点: t - val battles: Any?, // 调用点: n - val score: Any?, // 调用点: i - val users: Any?, // 调用点: r - val creators: Any?, // 调用点: e - val usersTeam: Any?, // 调用点: u - val userScore: Any?, // 调用点: s - val userSuspicion: Any?, // 调用点: o - val userSuspicionByIp: Any?, // 调用点: _ - val roundEndTimes: Any?, // 调用点: h - val alreadySeeBattleInfo: Any?, // 调用点: a - val fund: Any?, // 调用点: c - val proLimit: Any?, // 调用点: l - val isLimitReached: Any?, // 调用点: f - val reEnterProtectBattleId: Any?, // 调用点: v + val loaded: Any?, // 仅 copy 转发(无类型信息) + val battles: Any?, // 仅 copy 转发(无类型信息) + val score: Any?, // 仅 copy 转发(无类型信息) + val users: Any?, // 仅 copy 转发(无类型信息) + val creators: Any?, // 仅 copy 转发(无类型信息) + val usersTeam: Any?, // 仅 copy 转发(无类型信息) + val userScore: Any?, // 仅 copy 转发(无类型信息) + val userSuspicion: Any?, // 仅 copy 转发(无类型信息) + val userSuspicionByIp: Any?, // 仅 copy 转发(无类型信息) + val roundEndTimes: Any?, // 仅 copy 转发(无类型信息) + val alreadySeeBattleInfo: Any?, // 仅 copy 转发(无类型信息) + val fund: Any?, // 仅 copy 转发(无类型信息) + val proLimit: Any?, // 仅 copy 转发(无类型信息) + val isLimitReached: Any?, // 仅 copy 转发(无类型信息) + val reEnterProtectBattleId: Any?, // 仅 copy 转发(无类型信息) ) data class BattleParams( val map: Long, // callsite val battleMode: Int, // callsite - val format: Boolean, // dataflow - val limits: Boolean, // dataflow + val format: Any?, // 调用点: cA().aqi(r.mbz_1) + val limits: Any?, // 调用点: r.vbz() val mapId: Long, // callsite val maxPeopleCount: Int, // callsite val name: String, // callsite val parkourMode: Boolean, // callsite - val valuableBattle: Boolean, // dataflow - val privateBattle: Boolean, // dataflow + val valuableBattle: Any?, // 调用点: u.h1(_m()) + val privateBattle: Any?, // 调用点: u.h1(hm()) val proBattle: Boolean, // callsite - val rankRange: Boolean, // dataflow + val rankRange: Any?, // 调用点: r.wbz() val theme: Int, // callsite - val suspicionLevel: Boolean, // dataflow - val options: Boolean, // dataflow + val suspicionLevel: Any?, // 调用点: e + val options: Any?, // 调用点: u ) data class AddBattle( @@ -468,11 +468,11 @@ data class LimitReached( ) data class SetReEnterProtectBattleId( - val battleId: Any?, // 调用点: null | t + val battleId: Any?, // 调用点: null ) data class Maps( - val mapDescriptionsById: Any?, // 调用点: t + val mapDescriptionsById: Any?, // 仅 copy 转发(无类型信息) ) data class MapInfo( @@ -491,9 +491,9 @@ data class MapInfo( data class MapDescription( val mapId: Long, // callsite - val name: Int, // dataflow + val name: Any?, // 调用点: n.xc1() val defaultTheme: Int, // callsite - val themes: Any?, // 调用点: r | ag() + val themes: Any?, // 调用点: ag() ) data class AddMap( @@ -502,10 +502,10 @@ data class AddMap( ) data class Spectator( - val isSpectator: Any?, // 调用点: t - val spectatorHudLayout: Boolean, // dataflow - val spectators: Boolean, // dataflow - val spectatorsListVisible: Any?, // 调用点: r + val isSpectator: Any?, // 仅 copy 转发(无类型信息) + val spectatorHudLayout: Any?, // 仅 copy 转发(无类型信息) + val spectators: Any?, // 仅 copy 转发(无类型信息) + val spectatorsListVisible: Any?, // 仅 copy 转发(无类型信息) ) data class SetSpectator( @@ -542,11 +542,11 @@ data class SpectatorInfo( ) data class BattleResult( - val hasBattleResult: Any?, // 调用点: t | cd - val rewards: Boolean, // dataflow - val initialCurrentUserXP: Boolean, // dataflow - val increasedReward: Any?, // 调用点: r - val simpleReward: Any?, // 调用点: e + val hasBattleResult: Any?, // 调用点: cd + val rewards: Any?, // 调用点: cd + val initialCurrentUserXP: Any?, // 调用点: t.zqo_1 + val increasedReward: Any?, // 仅 copy 转发(无类型信息) + val simpleReward: Any?, // 仅 copy 转发(无类型信息) ) data class SetHasBattleResult( @@ -584,33 +584,33 @@ data class UserBattleStat( ) data class BattleStatistics( - val battleId: Any?, // 调用点: t + val battleId: Boolean, // dataflow val mapName: Boolean, // dataflow val mode: Boolean, // dataflow val isMMBattle: Boolean, // dataflow val isParkourMode: Boolean, // dataflow - val isTutorial: Any?, // 调用点: u - val valuableBattle: Any?, // 调用点: s - val isReArmorEnabled: Any?, // 调用点: o - val rankRange: Any?, // 调用点: _ - val isContinueBattle: Any?, // 调用点: h - val roundRestartTime: Any?, // 调用点: a + val isTutorial: Boolean, // dataflow + val valuableBattle: Boolean, // dataflow + val isReArmorEnabled: Boolean, // dataflow + val rankRange: Boolean, // dataflow + val isContinueBattle: Boolean, // dataflow + val roundRestartTime: Boolean, // dataflow val score: Boolean, // dataflow - val fund: Any?, // 调用点: l - val gameModeLevelsCount: Any?, // 调用点: f - val flagOrBallOwner: Any?, // 调用点: v - val statVisible: Any?, // 调用点: p - val roundStarted: Any?, // 调用点: w - val scoreLimit: Any?, // 调用点: d - val menuVisible: Any?, // 调用点: g - val remainingTimeInSec: Any?, // 调用点: m - val battleLoaded: Any?, // 调用点: k - val options: Any?, // 调用点: z - val customBattleName: Any?, // 调用点: b - val battleFormat: Any?, // 调用点: q - val isMatchmakingMark: Any?, // 调用点: y - val mapNameWithoutMode: Any?, // 调用点: $ - val displayClientInfo: Any?, // 调用点: x + val fund: Boolean, // dataflow + val gameModeLevelsCount: Boolean, // dataflow + val flagOrBallOwner: Boolean, // dataflow + val statVisible: Boolean, // dataflow + val roundStarted: Boolean, // dataflow + val scoreLimit: Boolean, // dataflow + val menuVisible: Boolean, // dataflow + val remainingTimeInSec: Boolean, // dataflow + val battleLoaded: Boolean, // dataflow + val options: Boolean, // dataflow + val customBattleName: Boolean, // dataflow + val battleFormat: Boolean, // dataflow + val isMatchmakingMark: Boolean, // dataflow + val mapNameWithoutMode: Boolean, // dataflow + val displayClientInfo: Boolean, // dataflow ) data class UpdateScore( @@ -659,19 +659,19 @@ data class InitBattleModeWithLevels( ) data class BattleUsers( - val onlineUsers: Any?, // 调用点: t - val uids: Boolean, // dataflow - val ranks: Boolean, // dataflow - val clanTags: Any?, // 调用点: r - val usersPremium: Any?, // 调用点: e - val teams: Any?, // 调用点: u - val stats: Any?, // 调用点: s - val gearScores: Any?, // 调用点: o - val tankInfo: Any?, // 调用点: _ - val tankResistance: Any?, // 调用点: h - val tankLevels: Any?, // 调用点: a - val suspiciousUsers: Any?, // 调用点: c - val suspiciousByIpUsers: Any?, // 调用点: l + val onlineUsers: Any?, // 仅 copy 转发(无类型信息) + val uids: Any?, // 仅 copy 转发(无类型信息) + val ranks: Any?, // 仅 copy 转发(无类型信息) + val clanTags: Any?, // 仅 copy 转发(无类型信息) + val usersPremium: Any?, // 仅 copy 转发(无类型信息) + val teams: Any?, // 仅 copy 转发(无类型信息) + val stats: Any?, // 仅 copy 转发(无类型信息) + val gearScores: Any?, // 仅 copy 转发(无类型信息) + val tankInfo: Any?, // 仅 copy 转发(无类型信息) + val tankResistance: Any?, // 仅 copy 转发(无类型信息) + val tankLevels: Any?, // 仅 copy 转发(无类型信息) + val suspiciousUsers: Any?, // 仅 copy 转发(无类型信息) + val suspiciousByIpUsers: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateUserRank( @@ -684,9 +684,9 @@ data class UpdateUsersClanTag( ) data class UpdateUserSuspiciousState( - val id: Any?, // 调用点: t - val suspicious: Any?, // 调用点: n - val suspiciousByIp: Any?, // 调用点: i + val id: Any?, // 仅 copy 转发(无类型信息) + val suspicious: Any?, // 仅 copy 转发(无类型信息) + val suspiciousByIp: Any?, // 仅 copy 转发(无类型信息) ) data class InitSuspiciousState( @@ -699,8 +699,8 @@ data class InitUserLevels( ) data class UpdateUserLevel( - val userId: Any?, // 调用点: t | t - val level: Any?, // 调用点: n | n + val userId: Any?, // 调用点: t + val level: Any?, // 调用点: n ) data class UpdateUserScoreKillsAndDeaths( @@ -731,10 +731,10 @@ data class SetTankResistance( ) data class CaptchaState( - val useFake: Any?, // 调用点: t - val enabledLocations: Boolean, // dataflow - val verifiedLocations: Any?, // 调用点: i - val locationsToReset: Any?, // 调用点: r + val useFake: Any?, // 仅 copy 转发(无类型信息) + val enabledLocations: Any?, // 仅 copy 转发(无类型信息) + val verifiedLocations: Any?, // 仅 copy 转发(无类型信息) + val locationsToReset: Any?, // 仅 copy 转发(无类型信息) ) data class SetLocations( @@ -750,26 +750,26 @@ data class LocationsUpdated( ) data class ChatState( - val open: Any?, // 调用点: t - val currentChannel: Any?, // 调用点: n - val contextMenuData: Any?, // 调用点: i - val chatMessage: Boolean, // dataflow - val selectedUid: Any?, // 调用点: e - val config: Any?, // 调用点: u - val messagesByChannel: Any?, // 调用点: s - val isShowKeyboard: Any?, // 调用点: o - val isNeedToHideKeyboard: Any?, // 调用点: _ - val isNeedScroll: Any?, // 调用点: h - val haveNewDirectMessages: Any?, // 调用点: a - val symbolCost: Any?, // 调用点: c - val enterCost: Any?, // 调用点: l - val lastMessageTime: Any?, // 调用点: f - val isFirstChannelMessagesLoad: Any?, // 调用点: v - val ignoredUserIds: Any?, // 调用点: p + val open: Any?, // 仅 copy 转发(无类型信息) + val currentChannel: Any?, // 仅 copy 转发(无类型信息) + val contextMenuData: Any?, // 仅 copy 转发(无类型信息) + val chatMessage: Any?, // 仅 copy 转发(无类型信息) + val selectedUid: Any?, // 仅 copy 转发(无类型信息) + val config: Any?, // 仅 copy 转发(无类型信息) + val messagesByChannel: Any?, // 仅 copy 转发(无类型信息) + val isShowKeyboard: Any?, // 仅 copy 转发(无类型信息) + val isNeedToHideKeyboard: Any?, // 仅 copy 转发(无类型信息) + val isNeedScroll: Any?, // 仅 copy 转发(无类型信息) + val haveNewDirectMessages: Any?, // 仅 copy 转发(无类型信息) + val symbolCost: Any?, // 仅 copy 转发(无类型信息) + val enterCost: Any?, // 仅 copy 转发(无类型信息) + val lastMessageTime: Any?, // 仅 copy 转发(无类型信息) + val isFirstChannelMessagesLoad: Any?, // 仅 copy 转发(无类型信息) + val ignoredUserIds: Any?, // 仅 copy 转发(无类型信息) ) data class ChatMessageAndAddress( - val message: Any?, // 调用点: n.zd().g1(3) | t + val message: Any?, // 调用点: n.zd().g1(3) | $q val address: Any?, // 调用点: new UP(n.zd().g1(1), i) | i.equ_1 ) @@ -796,7 +796,7 @@ data class ShowContextMenu( ) data class CleanUsersMessage( - val uid: Any?, // 调用点: t + val uid: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateUsers( @@ -853,42 +853,42 @@ data class ShowUserMessages( ) data class Clan( - val currentClanId: Any?, // 调用点: t + val currentClanId: Boolean, // dataflow val creatorId: Boolean, // dataflow val name: Boolean, // dataflow - val createTime: Any?, // 调用点: r - val description: Any?, // 调用点: e - val tag: Any?, // 调用点: u - val intermediateRequestsEnabled: Any?, // 调用点: s - val intermediateMinRankIndex: Any?, // 调用点: o - val intermediateDescription: Any?, // 调用点: _ - val rulesConfirmed: Any?, // 调用点: h - val hasLicense: Any?, // 调用点: a - val hasClan: Any?, // 调用点: c - val isLoaded: Any?, // 调用点: l - val incomingUsers: Any?, // 调用点: f - val outgoingUsers: Any?, // 调用点: v - val clanUserValidation: Any?, // 调用点: p - val clanNameNameValidation: Any?, // 调用点: w - val clanTagNameValidation: Any?, // 调用点: d - val clanSearchValidation: Any?, // 调用点: g - val clanAcceptedMembers: Any?, // 调用点: m - val clanAcceptedMembersNew: Any?, // 调用点: k - val minRankForCreateClan: Any?, // 调用点: z - val clanMembersStatistics: Any?, // 调用点: b - val outgoingClans: Any?, // 调用点: q - val incomingClans: Any?, // 调用点: y - val restrictionToJoinInClan: Any?, // 调用点: $ - val banned: Any?, // 调用点: x - val banReason: Any?, // 调用点: j - val newIncomingClans: Any?, // 调用点: S - val newIncoming: Any?, // 调用点: C - val notificationsCount: Any?, // 调用点: E - val incomingUserNotificationCount: Any?, // 调用点: T - val acceptedUserNotificationCount: Any?, // 调用点: I - val clanInviteNotificationCount: Any?, // 调用点: A - val clanModalVisible: Any?, // 调用点: R - val clanEditPrice: Any?, // 调用点: P + val createTime: Boolean, // dataflow + val description: Boolean, // dataflow + val tag: Boolean, // dataflow + val intermediateRequestsEnabled: Boolean, // dataflow + val intermediateMinRankIndex: Boolean, // dataflow + val intermediateDescription: Boolean, // dataflow + val rulesConfirmed: Boolean, // dataflow + val hasLicense: Boolean, // dataflow + val hasClan: Boolean, // dataflow + val isLoaded: Boolean, // dataflow + val incomingUsers: Boolean, // dataflow + val outgoingUsers: Boolean, // dataflow + val clanUserValidation: Boolean, // dataflow + val clanNameNameValidation: Boolean, // dataflow + val clanTagNameValidation: Boolean, // dataflow + val clanSearchValidation: Boolean, // dataflow + val clanAcceptedMembers: Boolean, // dataflow + val clanAcceptedMembersNew: Boolean, // dataflow + val minRankForCreateClan: Int, // dataflow + val clanMembersStatistics: Boolean, // dataflow + val outgoingClans: Boolean, // dataflow + val incomingClans: Boolean, // dataflow + val restrictionToJoinInClan: Boolean, // dataflow + val banned: Boolean, // dataflow + val banReason: Boolean, // dataflow + val newIncomingClans: Boolean, // dataflow + val newIncoming: Boolean, // dataflow + val notificationsCount: Boolean, // dataflow + val incomingUserNotificationCount: Boolean, // dataflow + val acceptedUserNotificationCount: Boolean, // dataflow + val clanInviteNotificationCount: Boolean, // dataflow + val clanModalVisible: Boolean, // dataflow + val clanEditPrice: Boolean, // dataflow ) data class Kick( @@ -904,7 +904,7 @@ data class AddUsersToAccepted( ) data class RemoveUserFromAccepted( - val userId: Any?, // 调用点: t + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class AddUsersToNewAccepted( @@ -942,7 +942,7 @@ data class OutgoingAdded( ) data class OutgoingRemoved( - val outgoingUser: Any?, // 调用点: t + val outgoingUser: Any?, // 仅 copy 转发(无类型信息) ) data class Accept( @@ -1011,11 +1011,11 @@ data class ClanLoaded( ) data class AddOutgoingClan( - val clanId: Any?, // 调用点: i | t + val clanId: Any?, // 调用点: i ) data class RemoveOutgoingClan( - val clanId: Any?, // 调用点: t + val clanId: Any?, // 仅 copy 转发(无类型信息) ) data class AddIncomingClan( @@ -1023,7 +1023,7 @@ data class AddIncomingClan( ) data class RemoveIncomingClan( - val clanId: Any?, // 调用点: t + val clanId: Any?, // 仅 copy 转发(无类型信息) ) data class AddNewIncomingClan( @@ -1031,7 +1031,7 @@ data class AddNewIncomingClan( ) data class RemoveNewIncomingClan( - val clanId: Any?, // 调用点: t + val clanId: Any?, // 仅 copy 转发(无类型信息) ) data class IncomingClanViewed( @@ -1075,7 +1075,7 @@ data class RecruitmentChanged( ) data class ClanBanned( - val reason: Any?, // 调用点: t + val reason: Any?, // 仅 copy 转发(无类型信息) ) data class ShowForeignClan( @@ -1087,7 +1087,7 @@ data class AddNewIncoming( ) data class RemoveNewIncoming( - val newIncoming: Any?, // 调用点: t + val newIncoming: Any?, // 仅 copy 转发(无类型信息) ) data class IncomingUserViewed( @@ -1131,7 +1131,7 @@ data class MakeUserClanOwner( ) data class ClanUserInfo( - val users: Any?, // 调用点: t + val users: Any?, // 仅 copy 转发(无类型信息) ) data class Loaded( @@ -1139,28 +1139,28 @@ data class Loaded( ) data class ClansStorage( - val clans: Any?, // 调用点: t - val foreignClanId: Boolean, // dataflow - val foreignClan: Any?, // 调用点: i + val clans: Any?, // 仅 copy 转发(无类型信息) + val foreignClanId: Any?, // 仅 copy 转发(无类型信息) + val foreignClan: Any?, // 仅 copy 转发(无类型信息) ) data class ClanInfo( - val id: Any?, // 调用点: t | n - val name: Boolean, // dataflow - val tag: Boolean, // dataflow + val id: Any?, // 调用点: n | t.qpv_1.xqv_1 + val name: Any?, // 调用点: i + val tag: Any?, // 调用点: e val description: String, // dataflow val minRankIndexForAddClan: Int, // dataflow val incomingRequestEnabled: Boolean, // dataflow val creatorId: Long, // dataflow val createTime: Long, // dataflow - val users: Long, // dataflow - val gameObject: Any?, // 调用点: h | a + val users: Any?, // 调用点: h + val gameObject: Any?, // 调用点: a val maxCharactersDescription: Int, // dataflow val blocked: Boolean, // dataflow val reasonForBlocking: String, // dataflow val self: Boolean, // dataflow val maxMembers: Int, // dataflow - val newUsers: Boolean, // dataflow + val newUsers: Any?, // 仅 copy 转发(无类型信息) ) data class ClanUnloaded( @@ -1168,7 +1168,7 @@ data class ClanUnloaded( ) data class ForeignClanLoaded( - val clan: Any?, // 调用点: t + val clan: Any?, // 仅 copy 转发(无类型信息) ) data class Convert( @@ -1176,8 +1176,8 @@ data class Convert( ) data class CreatorTagState( - val creatorTag: Any?, // 调用点: t - val creatorTags: Boolean, // dataflow + val creatorTag: Any?, // 仅 copy 转发(无类型信息) + val creatorTags: Any?, // 仅 copy 转发(无类型信息) ) data class SetCreatorTags( @@ -1193,10 +1193,10 @@ data class SetAttachedCreatorTag( ) data class PurchaseDialogState( - val withEmail: Any?, // 调用点: t - val goods: Boolean, // dataflow - val emailStatus: Any?, // 调用点: i - val time: Any?, // 调用点: r + val withEmail: Any?, // 仅 copy 转发(无类型信息) + val goods: Any?, // 仅 copy 转发(无类型信息) + val emailStatus: Any?, // 仅 copy 转发(无类型信息) + val time: Any?, // 仅 copy 转发(无类型信息) ) data class Confirm( @@ -1223,7 +1223,7 @@ data class SuccessfullyPurchase( ) data class RankUpDialogState( - val availableItems: Any?, // 调用点: t + val availableItems: Any?, // 仅 copy 转发(无类型信息) ) data class GarageItemInfoWithResistance( @@ -1237,27 +1237,27 @@ data class ShowAvailableItems( ) data class SocialNetworkPair( - val uid: Any?, // 调用点: s.g1(0) | t + val uid: Any?, // 调用点: s.g1(0) | o val socialNetworkId: Any?, // 调用点: s.g1(1) | n ) data class EntranceState( - val showSocialNetworks: Any?, // 调用点: t - val controlsForChina: Any?, // 调用点: n - val isRunningInChinaDataCenter: Any?, // 调用点: i - val isRunningInChinaPartners: Any?, // 调用点: r - val isAgeWarnShow: Any?, // 调用点: e - val authorizedByChinaSdkToken: Any?, // 调用点: u - val isClassic: Any?, // 调用点: s - val authorizedByClassicEarlyAccessToken: Any?, // 调用点: o + val showSocialNetworks: Any?, // 仅 copy 转发(无类型信息) + val controlsForChina: Any?, // 仅 copy 转发(无类型信息) + val isRunningInChinaDataCenter: Any?, // 仅 copy 转发(无类型信息) + val isRunningInChinaPartners: Any?, // 仅 copy 转发(无类型信息) + val isAgeWarnShow: Any?, // 仅 copy 转发(无类型信息) + val authorizedByChinaSdkToken: Any?, // 仅 copy 转发(无类型信息) + val isClassic: Any?, // 仅 copy 转发(无类型信息) + val authorizedByClassicEarlyAccessToken: Any?, // 仅 copy 转发(无类型信息) ) data class InviteState( - val isInviteNeed: Any?, // 调用点: t - val invite: Boolean, // dataflow - val status: Boolean, // dataflow - val existsUid: Boolean, // dataflow - val inviteAccepted: Boolean, // dataflow + val isInviteNeed: Any?, // 仅 copy 转发(无类型信息) + val invite: Any?, // 仅 copy 转发(无类型信息) + val status: Any?, // 仅 copy 转发(无类型信息) + val existsUid: Any?, // 仅 copy 转发(无类型信息) + val inviteAccepted: Any?, // 仅 copy 转发(无类型信息) ) data class SetInviteNeed( @@ -1269,13 +1269,13 @@ data class ApplyInvite( ) data class LoginByPasswordState( - val login: Any?, // 调用点: t - val password: Boolean, // dataflow - val rememberMe: Boolean, // dataflow - val status: Boolean, // dataflow - val onlyLogin: Boolean, // dataflow - val incorrectLogin2FA: Any?, // 调用点: u - val requestsNumber2FA: Boolean, // dataflow + val login: Any?, // 仅 copy 转发(无类型信息) + val password: Any?, // 仅 copy 转发(无类型信息) + val rememberMe: Any?, // 仅 copy 转发(无类型信息) + val status: Any?, // 仅 copy 转发(无类型信息) + val onlyLogin: Any?, // 仅 copy 转发(无类型信息) + val incorrectLogin2FA: Any?, // 仅 copy 转发(无类型信息) + val requestsNumber2FA: Any?, // 仅 copy 转发(无类型信息) ) data class SetLogin( @@ -1341,26 +1341,26 @@ data class ChangePasswordAndEmail( ) data class ShowEmailAndPasswordChangeDialog( - val email: Any?, // 调用点: t | i + val email: Any?, // 调用点: i val uid: Any?, // 调用点: n val reason: Any?, // 调用点: mg() ) data class PasswordChangeState( - val hash: Any?, // 调用点: t - val uid: Boolean, // dataflow - val email: Boolean, // dataflow + val hash: Any?, // 仅 copy 转发(无类型信息) + val uid: Any?, // 仅 copy 转发(无类型信息) + val email: Any?, // 仅 copy 转发(无类型信息) ) data class Friends( - val userSearchState: Any?, // 调用点: t - val contextMenuUser: Boolean, // dataflow - val acceptedLimit: Boolean, // dataflow - val incomingLimit: Any?, // 调用点: r - val accepted: Any?, // 调用点: e - val newAccepted: Boolean, // dataflow - val incoming: Boolean, // dataflow - val newIncoming: Any?, // 调用点: o + val userSearchState: Any?, // 仅 copy 转发(无类型信息) + val contextMenuUser: Any?, // 仅 copy 转发(无类型信息) + val acceptedLimit: Any?, // 仅 copy 转发(无类型信息) + val incomingLimit: Any?, // 仅 copy 转发(无类型信息) + val accepted: Any?, // 仅 copy 转发(无类型信息) + val newAccepted: Any?, // 仅 copy 转发(无类型信息) + val incoming: Any?, // 仅 copy 转发(无类型信息) + val newIncoming: Any?, // 仅 copy 转发(无类型信息) ) data class ChangeFriendAddFindState( @@ -1385,7 +1385,7 @@ data class SendRequestRemoveUsersFromNewAccepted( ) data class RemoveUserFromNewAccepted( - val userId: Any?, // 调用点: t + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class RemoveFriend( @@ -1409,7 +1409,7 @@ data class RemoveUsersFromNewIncoming( ) data class RemoveUserFromIncoming( - val userId: Any?, // 调用点: t + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class AcceptedRequest( @@ -1425,30 +1425,30 @@ data class Break( ) data class ShowNotificationAlreadyInAcceptedFriends( - val uid: Any?, // 调用点: t - val userId: Any?, // 调用点: n + val uid: Any?, // 仅 copy 转发(无类型信息) + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class ShowNotificationAlreadyInIncomingFriends( - val uid: Any?, // 调用点: t - val userId: Any?, // 调用点: n + val uid: Any?, // 仅 copy 转发(无类型信息) + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class ShowNotificationAlreadyInOutgoingFriends( - val uid: Any?, // 调用点: t - val userId: Any?, // 调用点: n + val uid: Any?, // 仅 copy 转发(无类型信息) + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class ShowNotificationAcceptedLimitExceeded( - val uid: Any?, // 调用点: t - val userId: Any?, // 调用点: n + val uid: Any?, // 仅 copy 转发(无类型信息) + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class Discount( - val itemId: Any?, // 调用点: t | n + val itemId: Any?, // 调用点: n val discount: Float, // callsite - val timeLeft: Any?, // 调用点: i | _ - val timeStart: Boolean, // dataflow + val timeLeft: Any?, // 调用点: _ + val timeStart: Any?, // 调用点: a val isBuyable: Boolean, // dataflow ) @@ -1457,46 +1457,46 @@ data class UpdateDiscount( ) data class GarageItem( - val id: Any?, // 调用点: h | t + val id: Boolean, // dataflow val name: Boolean, // dataflow - val category: Int, // dataflow + val category: Any?, // 调用点: d | i val viewCategory: Any?, // 调用点: w | r - val priceWithoutDiscount: Int, // dataflow + val priceWithoutDiscount: Any?, // 调用点: p | e val description: Boolean, // dataflow - val descriptionMedia: Any?, // 调用点: v | s - val preview: Any?, // 调用点: g | o - val isPremium: Any?, // 调用点: q | _ - val owned: Any?, // 调用点: r | h - val mountable: Any?, // 调用点: m | a + val descriptionMedia: Boolean, // dataflow + val preview: Boolean, // dataflow + val isPremium: Boolean, // dataflow + val owned: Boolean, // dataflow + val mountable: Boolean, // dataflow val mounted: Boolean, // dataflow - val mountIndex: String, // dataflow + val mountIndex: Boolean, // dataflow val position: Any?, // 调用点: k | f - val minRank: Int, // dataflow - val maxRank: Int, // dataflow - val discount: Int, // dataflow - val modification: Int, // dataflow - val properties: Any?, // 调用点: R | g - val upgradeableParams: Any?, // 调用点: M | m - val count: Int, // dataflow - val kit: Int, // dataflow - val countable: Int, // dataflow - val hasDeviceSale: Any?, // 调用点: K | q - val devicesAvailable: Any?, // 调用点: F | y - val devicePreview: Any?, // 调用点: H | $ - val buyable: Any?, // 调用点: _ | x - val availableForAll: Any?, // 调用点: Z | j - val availableSkins: Any?, // 调用点: Q | S - val availableShotSkins: Any?, // 调用点: tt | C - val mountedSkin: Any?, // 调用点: nt | E - val mountedShotSkin: Any?, // 调用点: it | T - val skinPreview: Any?, // 调用点: rt | I - val group: Any?, // 调用点: o | A - val rarity: Any?, // 调用点: et | R - val favorite: Any?, // 调用点: ut | P - val resistanceBackgroundImg: Any?, // 调用点: n.ire_1 | N + val minRank: Any?, // 调用点: z | v + val maxRank: Any?, // 调用点: b | p + val discount: Boolean, // dataflow + val modification: Boolean, // dataflow + val properties: Boolean, // dataflow + val upgradeableParams: Boolean, // dataflow + val count: Boolean, // dataflow + val kit: Boolean, // dataflow + val countable: Boolean, // dataflow + val hasDeviceSale: Boolean, // dataflow + val devicesAvailable: Boolean, // dataflow + val devicePreview: Boolean, // dataflow + val buyable: Boolean, // dataflow + val availableForAll: Boolean, // dataflow + val availableSkins: Boolean, // dataflow + val availableShotSkins: Boolean, // dataflow + val mountedSkin: Boolean, // dataflow + val mountedShotSkin: Boolean, // dataflow + val skinPreview: Boolean, // dataflow + val group: Boolean, // dataflow + val rarity: Boolean, // dataflow + val favorite: Boolean, // dataflow + val resistanceBackgroundImg: Boolean, // dataflow val visible: Boolean, // dataflow val secret: Boolean, // dataflow - val saleByKitItems: Any?, // 调用点: n.lre_1 | D + val saleByKitItems: Boolean, // dataflow val isSellingForCoin: Boolean, // dataflow val isSellingForCrystal: Boolean, // dataflow val isSellingForRuby: Boolean, // dataflow @@ -1514,7 +1514,7 @@ data class Kit( ) data class GarageItemObject( - val id: Any?, // 调用点: t | o + val id: Boolean, // dataflow val description: Boolean, // dataflow val item: Boolean, // dataflow val isPremium: Boolean, // dataflow @@ -1564,35 +1564,35 @@ data class GarageObject( ) data class Garage( - val itemsOnDepot: Any?, // 调用点: t - val itemsOnMarket: Any?, // 调用点: n - val mountedItems: Any?, // 调用点: i - val skinsItems: Any?, // 调用点: r - val items: Any?, // 调用点: e - val devices: Any?, // 调用点: u - val garageObject: Any?, // 调用点: s - val isLoaded: Any?, // 调用点: o - val currentCategory: Any?, // 调用点: _ - val currentItemId: Any?, // 调用点: h - val selectAlterationId: Any?, // 调用点: a - val selectedSkinId: Any?, // 调用点: c - val selectedShotSkinId: Any?, // 调用点: l - val newItems: Any?, // 调用点: f - val resistanceReadyToMount: Any?, // 调用点: v - val delayMountTimeMs: Any?, // 调用点: p - val cooldownReduceEndTime: Any?, // 调用点: w - val timeToReduceUpdateInMin: Any?, // 调用点: d - val currentRarity: Any?, // 调用点: g - val purchaseOfUpgradesShopItemId: Any?, // 调用点: m - val garageDiscountNotification: Any?, // 调用点: k - val showVideoInDescription: Any?, // 调用点: z - val unlockedProtectionSlots: Any?, // 调用点: b - val pricesToUnlockSlot: Any?, // 调用点: q - val numberRowsInPaintsUI: Any?, // 调用点: y - val overdriveDescriptions: Any?, // 调用点: $ - val weaponToResistanceModule: Any?, // 调用点: x - val waitServerItemMount: Any?, // 调用点: j - val bazookaToSupply: Any?, // 调用点: S + val itemsOnDepot: Boolean, // dataflow + val itemsOnMarket: Boolean, // dataflow + val mountedItems: Boolean, // dataflow + val skinsItems: Boolean, // dataflow + val items: Boolean, // dataflow + val devices: Boolean, // dataflow + val garageObject: Boolean, // dataflow + val isLoaded: Boolean, // dataflow + val currentCategory: Boolean, // dataflow + val currentItemId: Boolean, // dataflow + val selectAlterationId: Boolean, // dataflow + val selectedSkinId: Boolean, // dataflow + val selectedShotSkinId: Boolean, // dataflow + val newItems: Boolean, // dataflow + val resistanceReadyToMount: Boolean, // dataflow + val delayMountTimeMs: Boolean, // dataflow + val cooldownReduceEndTime: Boolean, // dataflow + val timeToReduceUpdateInMin: Boolean, // dataflow + val currentRarity: Boolean, // dataflow + val purchaseOfUpgradesShopItemId: Boolean, // dataflow + val garageDiscountNotification: Boolean, // dataflow + val showVideoInDescription: Boolean, // dataflow + val unlockedProtectionSlots: Boolean, // dataflow + val pricesToUnlockSlot: Boolean, // dataflow + val numberRowsInPaintsUI: Boolean, // dataflow + val overdriveDescriptions: Boolean, // dataflow + val weaponToResistanceModule: Boolean, // dataflow + val waitServerItemMount: Boolean, // dataflow + val bazookaToSupply: Boolean, // dataflow val upgradeCoolDownEndTimes: Boolean, // dataflow val upgradeItemInProcessingId: Boolean, // dataflow ) @@ -1627,7 +1627,7 @@ data class GarageItemBought( ) data class GarageItemMounted( - val item: Boolean, // dataflow + val item: Any?, // 调用点: n | s val needServerMount: Boolean, // callsite ) @@ -1752,7 +1752,7 @@ data class GarageUpgradeItemCoolDownStarted( ) data class GarageUpgradeItemCoolDownFinished( - val itemId: Boolean, // dataflow + val itemId: Any?, // 调用点: n val endTime: Any?, // 调用点: i ) @@ -1777,7 +1777,7 @@ data class GarageAddItemToDepot( data class ItemPurchaseData( val isAvailable: Boolean, // dataflow val item: Any?, // 调用点: r | i - val amount: Any?, // 调用点: i | n + val amount: Boolean, // dataflow val priceWithoutDiscount: Any?, // 调用点: e | i.hrf(n, !1) val priceWithDiscount: Any?, // 调用点: u | r val discountInPercent: Any?, // 调用点: s | i.wrb_1 @@ -1839,33 +1839,33 @@ data class Devices( ) data class GarageDevice( - val id: Any?, // 调用点: e | t - val baseItemId: Any?, // 调用点: u | n + val id: Boolean, // dataflow + val baseItemId: Boolean, // dataflow val installed: Boolean, // callsite - val name: Int, // dataflow - val category: Int, // dataflow - val viewCategory: Int, // dataflow + val name: Boolean, // dataflow + val category: Any?, // 调用点: c | e + val viewCategory: Any?, // 调用点: a | u val priceWithoutDiscount: Int, // callsite - val description: Any?, // 调用点: o | o - val descriptionMedia: Any?, // 调用点: _ | _ - val previewImage: Int, // dataflow + val description: Boolean, // dataflow + val descriptionMedia: Boolean, // dataflow + val previewImage: Boolean, // dataflow val isPremium: Boolean, // callsite val position: Int, // callsite val minRank: Int, // callsite val maxRank: Int, // callsite val discount: Int, // callsite - val timeDiscountEnd: Int, // dataflow - val timeDiscountToStart: Any?, // 调用点: z | w + val timeDiscountEnd: Boolean, // dataflow + val timeDiscountToStart: Boolean, // dataflow val infinityLifetimeItem: Boolean, // callsite val lifeTimeInSec: Int, // callsite val property: String, // callsite - val properties: Any?, // 调用点: null == x ? md() : x | k + val properties: Boolean, // dataflow val isSellingForCoin: Boolean, // callsite val isSellingForCrystal: Boolean, // callsite val isSellingForRuby: Boolean, // callsite val isSellingForADS: Boolean, // callsite val isSellingForMoney: Boolean, // callsite - val rarity: Any?, // 调用点: t.trn_1 | x + val rarity: Boolean, // dataflow val visible: Boolean, // callsite val secret: Boolean, // callsite val buyable: Boolean, // callsite @@ -1900,7 +1900,7 @@ data class UpgradableItemParams( val currentLevel: Int, // callsite val upgradeParams: Any?, // 调用点: this.qrc_1 | n.ocj() val upgradeDiscount: Int, // callsite - val upgradeConfirmed: Any?, // 调用点: u + val upgradeConfirmed: Any?, // 仅 copy 转发(无类型信息) ) data class ItemPropertyParams( @@ -1915,28 +1915,28 @@ data class ItemPropertyParams( ) data class GaragePreview( - val isVisible: Any?, // 调用点: t - val photoMode: Any?, // 调用点: n - val needVisible: Any?, // 调用点: i - val viewStyle: Any?, // 调用点: r - val dynViewStyle: Any?, // 调用点: e - val tankPreviewSettings: Any?, // 调用点: u - val needShowDrone: Any?, // 调用点: s - val params: Any?, // 调用点: o - val hullData: Any?, // 调用点: _ - val weaponData: Any?, // 调用点: h - val droneData: Any?, // 调用点: a - val grenadeData: Any?, // 调用点: c - val hasGrenades: Any?, // 调用点: l - val hullEngineType: Any?, // 调用点: f - val turretMechanism: Any?, // 调用点: v - val paint: Boolean, // dataflow - val properties: Boolean, // dataflow - val captureScreenshotAction: Boolean, // dataflow - val captureVideoAction: Boolean, // dataflow - val item3dModelActionCache: Boolean, // dataflow - val requestedItems: Boolean, // dataflow - val expectedItemId: Boolean, // dataflow + val isVisible: Any?, // 仅 copy 转发(无类型信息) + val photoMode: Any?, // 仅 copy 转发(无类型信息) + val needVisible: Any?, // 仅 copy 转发(无类型信息) + val viewStyle: Any?, // 仅 copy 转发(无类型信息) + val dynViewStyle: Any?, // 仅 copy 转发(无类型信息) + val tankPreviewSettings: Any?, // 仅 copy 转发(无类型信息) + val needShowDrone: Any?, // 仅 copy 转发(无类型信息) + val params: Any?, // 仅 copy 转发(无类型信息) + val hullData: Any?, // 仅 copy 转发(无类型信息) + val weaponData: Any?, // 仅 copy 转发(无类型信息) + val droneData: Any?, // 仅 copy 转发(无类型信息) + val grenadeData: Any?, // 仅 copy 转发(无类型信息) + val hasGrenades: Any?, // 仅 copy 转发(无类型信息) + val hullEngineType: Any?, // 仅 copy 转发(无类型信息) + val turretMechanism: Any?, // 仅 copy 转发(无类型信息) + val paint: Any?, // 仅 copy 转发(无类型信息) + val properties: Any?, // 仅 copy 转发(无类型信息) + val captureScreenshotAction: Any?, // 仅 copy 转发(无类型信息) + val captureVideoAction: Any?, // 仅 copy 转发(无类型信息) + val item3dModelActionCache: Any?, // 仅 copy 转发(无类型信息) + val requestedItems: Any?, // 仅 copy 转发(无类型信息) + val expectedItemId: Any?, // 仅 copy 转发(无类型信息) ) data class ShowRequest( @@ -1994,7 +1994,7 @@ data class SetMountedItemsProperties( ) data class IconsState( - val icons: Any?, // 调用点: t + val icons: Any?, // 仅 copy 转发(无类型信息) ) data class SetIcons( @@ -2002,28 +2002,28 @@ data class SetIcons( ) data class LootBoxes( - val rewardsForKeys: Any?, // 调用点: t - val currentContainerType: Boolean, // dataflow - val keys: Boolean, // dataflow - val containerNames: Any?, // 调用点: r - val containerDescriptions: Any?, // 调用点: e - val rewards: Any?, // 调用点: u - val shownRewards: Any?, // 调用点: s - val gotoGarage: Any?, // 调用点: o - val timeToGiveLootBox: Any?, // 调用点: _ - val periodOfGiveLootBoxInSec: Any?, // 调用点: h - val openingFailed: Any?, // 调用点: a - val adsAvailable: Any?, // 调用点: c - val currentCategory: Any?, // 调用点: l - val isOpening: Any?, // 调用点: f - val isAccelerated: Any?, // 调用点: v - val isShopVisited: Any?, // 调用点: p - val isReopening: Any?, // 调用点: w - val isBlockOpenButtons: Any?, // 调用点: d + val rewardsForKeys: Any?, // 仅 copy 转发(无类型信息) + val currentContainerType: Any?, // 仅 copy 转发(无类型信息) + val keys: Any?, // 仅 copy 转发(无类型信息) + val containerNames: Any?, // 仅 copy 转发(无类型信息) + val containerDescriptions: Any?, // 仅 copy 转发(无类型信息) + val rewards: Any?, // 仅 copy 转发(无类型信息) + val shownRewards: Any?, // 仅 copy 转发(无类型信息) + val gotoGarage: Any?, // 仅 copy 转发(无类型信息) + val timeToGiveLootBox: Any?, // 仅 copy 转发(无类型信息) + val periodOfGiveLootBoxInSec: Any?, // 仅 copy 转发(无类型信息) + val openingFailed: Any?, // 仅 copy 转发(无类型信息) + val adsAvailable: Any?, // 仅 copy 转发(无类型信息) + val currentCategory: Any?, // 仅 copy 转发(无类型信息) + val isOpening: Any?, // 仅 copy 转发(无类型信息) + val isAccelerated: Any?, // 仅 copy 转发(无类型信息) + val isShopVisited: Any?, // 仅 copy 转发(无类型信息) + val isReopening: Any?, // 仅 copy 转发(无类型信息) + val isBlockOpenButtons: Any?, // 仅 copy 转发(无类型信息) ) data class SetPossibleRewards( - val rewards: Any?, // 调用点: t + val rewards: Any?, // 仅 copy 转发(无类型信息) ) data class SetCurrentContainer( @@ -2035,8 +2035,8 @@ data class SetKeys( ) data class AddKeys( - val keyType: Any?, // 调用点: t - val delta: Any?, // 调用点: n + val keyType: Any?, // 仅 copy 转发(无类型信息) + val delta: Any?, // 仅 copy 转发(无类型信息) ) data class SetContainerData( @@ -2075,25 +2075,25 @@ data class SetIsShopVisited( ) data class MatchmakingState( - val matchmakingModeRanks: Any?, // 调用点: t - val selectedMatchmakingMode: Boolean, // dataflow - val disabledModes: Boolean, // dataflow - val matchmakingAndLoadingBattleInProgress: Any?, // 调用点: r - val startLoadingBattle: Any?, // 调用点: e - val holidayEnabled: Any?, // 调用点: u - val holidayTitle: Boolean, // dataflow - val holidayIcon: Boolean, // dataflow - val eventBigTile: Boolean, // dataflow - val holidayDescription: Boolean, // dataflow - val minRankForProBattle: Boolean, // dataflow - val avgWaitTimeInSeconds: Boolean, // dataflow - val mode: Boolean, // dataflow - val maxUsersInGroup: Boolean, // dataflow - val groupsInEventMode: Boolean, // dataflow - val eventEndDate: Boolean, // dataflow - val borderColorForEventButton: Boolean, // dataflow - val requestSent: Boolean, // dataflow - val rankIndexToMinGS: Any?, // 调用点: g + val matchmakingModeRanks: Any?, // 仅 copy 转发(无类型信息) + val selectedMatchmakingMode: Any?, // 仅 copy 转发(无类型信息) + val disabledModes: Any?, // 仅 copy 转发(无类型信息) + val matchmakingAndLoadingBattleInProgress: Any?, // 仅 copy 转发(无类型信息) + val startLoadingBattle: Any?, // 仅 copy 转发(无类型信息) + val holidayEnabled: Any?, // 仅 copy 转发(无类型信息) + val holidayTitle: Any?, // 仅 copy 转发(无类型信息) + val holidayIcon: Any?, // 仅 copy 转发(无类型信息) + val eventBigTile: Any?, // 仅 copy 转发(无类型信息) + val holidayDescription: Any?, // 仅 copy 转发(无类型信息) + val minRankForProBattle: Any?, // 仅 copy 转发(无类型信息) + val avgWaitTimeInSeconds: Any?, // 仅 copy 转发(无类型信息) + val mode: Any?, // 仅 copy 转发(无类型信息) + val maxUsersInGroup: Any?, // 仅 copy 转发(无类型信息) + val groupsInEventMode: Any?, // 仅 copy 转发(无类型信息) + val eventEndDate: Any?, // 仅 copy 转发(无类型信息) + val borderColorForEventButton: Any?, // 仅 copy 转发(无类型信息) + val requestSent: Any?, // 仅 copy 转发(无类型信息) + val rankIndexToMinGS: Any?, // 仅 copy 转发(无类型信息) ) data class Play( @@ -2103,8 +2103,8 @@ data class Play( ) data class Registered( - val avgWaitTimeInSeconds: Any?, // 调用点: t - val mode: Any?, // 调用点: n + val avgWaitTimeInSeconds: Any?, // 仅 copy 转发(无类型信息) + val mode: Any?, // 仅 copy 转发(无类型信息) ) data class WasRegistered( @@ -2137,10 +2137,10 @@ data class ShowGSWarnOrContinue( ) data class MatchmakingGroup( - val members: Any?, // 调用点: t - val allowedFromFriends: Boolean, // dataflow - val pendingInvitationsUsers: Boolean, // dataflow - val selectedPlayersSendInvite: Any?, // 调用点: r + val members: Any?, // 仅 copy 转发(无类型信息) + val allowedFromFriends: Any?, // 仅 copy 转发(无类型信息) + val pendingInvitationsUsers: Any?, // 仅 copy 转发(无类型信息) + val selectedPlayersSendInvite: Any?, // 仅 copy 转发(无类型信息) ) data class SetAllowedFromFriends( @@ -2148,7 +2148,7 @@ data class SetAllowedFromFriends( ) data class UserRemoved( - val userId: Any?, // 调用点: t + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class AcceptInvite( @@ -2164,7 +2164,7 @@ data class Invite( ) data class UpdateMountItems( - val mountItemsUserData: Any?, // 调用点: t + val mountItemsUserData: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateUserReadiness( @@ -2189,7 +2189,7 @@ data class OnClickToUserItem( ) data class InvitedToGroup( - val leaderId: Any?, // 调用点: t + val leaderId: Any?, // 仅 copy 转发(无类型信息) ) data class RejectedInviteToGroup( @@ -2198,7 +2198,7 @@ data class RejectedInviteToGroup( ) data class AcceptedInviteToGroup( - val userId: Any?, // 调用点: t + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class InitMatchmakingGroup( @@ -2213,8 +2213,8 @@ data class GoToWithLoader( ) data class LobbyLoader( - val isShowLoader: Boolean, // dataflow - val activeLoadersCount: Boolean, // dataflow + val isShowLoader: Any?, // 仅 copy 转发(无类型信息) + val activeLoadersCount: Any?, // 仅 copy 转发(无类型信息) ) data class AddModal( @@ -2230,8 +2230,8 @@ data class RemoveCurrentByName( ) data class ModalScreen( - val current: Any?, // 调用点: t - val modalQueue: Boolean, // dataflow + val current: Any?, // 仅 copy 转发(无类型信息) + val modalQueue: Any?, // 仅 copy 转发(无类型信息) ) data class ChangeOwner( @@ -2300,7 +2300,7 @@ data class GetRatingModal( ) data class RewardsModal( - val goods: Any?, // 调用点: t + val goods: Any?, // 仅 copy 转发(无类型信息) ) data class NegativeBalanceAlert( @@ -2345,7 +2345,7 @@ data class ShowTutorial( ) data class RepatriationBonus( - val bonusItems: Any?, // 调用点: t + val bonusItems: Any?, // 仅 copy 转发(无类型信息) ) data class RankProgressItems( @@ -2388,16 +2388,16 @@ data class TemporaryCashExpiredInfo( ) data class Screen( - val current: Any?, // 调用点: PX() | t - val loaderBackgroundImage: Boolean, // dataflow - val foreground: Any?, // 调用点: i - val screenStack: Any?, // 调用点: r - val enableBack: Any?, // 调用点: e - val isResetBackStackOnNextGoTo: Any?, // 调用点: u - val isDelayedGoto: Any?, // 调用点: s - val pressedAnyButton: Any?, // 调用点: o - val displayMainEntranceScreen: Any?, // 调用点: _ - val needReauthorization: Any?, // 调用点: h + val current: Any?, // 调用点: PX() + val loaderBackgroundImage: Any?, // 仅 copy 转发(无类型信息) + val foreground: Any?, // 仅 copy 转发(无类型信息) + val screenStack: Any?, // 仅 copy 转发(无类型信息) + val enableBack: Any?, // 仅 copy 转发(无类型信息) + val isResetBackStackOnNextGoTo: Any?, // 仅 copy 转发(无类型信息) + val isDelayedGoto: Any?, // 仅 copy 转发(无类型信息) + val pressedAnyButton: Any?, // 仅 copy 转发(无类型信息) + val displayMainEntranceScreen: Any?, // 仅 copy 转发(无类型信息) + val needReauthorization: Any?, // 仅 copy 转发(无类型信息) ) data class GoTo( @@ -2431,20 +2431,20 @@ data class ChangeUid( ) data class MigrationOut( - val uid: Any?, // 调用点: t + val uid: Any?, // 仅 copy 转发(无类型信息) ) data class MigrationOutError( - val message: Any?, // 调用点: t + val message: Any?, // 仅 copy 转发(无类型信息) ) data class MigrationInForm( - val oldUid: Any?, // 调用点: t | t + val oldUid: Any?, // 调用点: t val needNewUid: Boolean, // callsite ) data class NeedEnterByLogin( - val uid: Any?, // 调用点: t + val uid: Any?, // 仅 copy 转发(无类型信息) ) data class InviteToBattle( @@ -2467,14 +2467,14 @@ data class Announcement( ) data class ItemInfo( - val category: Any?, // 调用点: i | n + val category: Boolean, // dataflow ) data class NewsState( - val isOpen: Any?, // 调用点: t - val news: Any?, // 调用点: n - val unreadNewsCounter: Boolean, // dataflow - val p: Any?, // 调用点: r + val isOpen: Any?, // 仅 copy 转发(无类型信息) + val news: Any?, // 仅 copy 转发(无类型信息) + val unreadNewsCounter: Any?, // 仅 copy 转发(无类型信息) + val p: Any?, // 仅 copy 转发(无类型信息) ) data class SetNewsItemAction( @@ -2482,11 +2482,11 @@ data class SetNewsItemAction( ) data class AddNewsItemAction( - val news: Any?, // 调用点: t + val news: Any?, // 仅 copy 转发(无类型信息) ) data class RemoveNewsItemAction( - val newsId: Any?, // 调用点: t + val newsId: Any?, // 仅 copy 转发(无类型信息) ) data class SetUnreadNewsCounter( @@ -2494,15 +2494,15 @@ data class SetUnreadNewsCounter( ) data class NotificationByCountry( - val disableRegistrationMessage: Any?, // 调用点: t - val disableShopMessage: Boolean, // dataflow - val homeScreenMessage: Boolean, // dataflow - val homeScreenDialogShown: Any?, // 调用点: r + val disableRegistrationMessage: Any?, // 仅 copy 转发(无类型信息) + val disableShopMessage: Any?, // 仅 copy 转发(无类型信息) + val homeScreenMessage: Any?, // 仅 copy 转发(无类型信息) + val homeScreenDialogShown: Any?, // 仅 copy 转发(无类型信息) ) data class Notifications( - val notifications: Any?, // 调用点: t - val notificationSound: Boolean, // dataflow + val notifications: Any?, // 仅 copy 转发(无类型信息) + val notificationSound: Any?, // 仅 copy 转发(无类型信息) ) data class InitNotificationSound( @@ -2514,21 +2514,21 @@ data class AddNotification( ) data class PartnerState( - val partnerId: Any?, // 调用点: t | G_.qsf(n) - val loginParams: Any?, // 调用点: n - val params: Any?, // 调用点: i - val hasOwnPaymentSystem: Any?, // 调用点: r - val hasSocialFunction: Any?, // 调用点: e - val hasClientPaymentAction: Any?, // 调用点: u - val paymentAction: Any?, // 调用点: s - val inviteAction: Any?, // 调用点: o - val canOpenExternalLinks: Any?, // 调用点: _ - val hasAccountBinding: Any?, // 调用点: h - val failedRedirectUrl: Any?, // 调用点: a - val loginForBindingStatus: Any?, // 调用点: c - val isAccountAlreadyLinked: Any?, // 调用点: l - val itemsEnabledForPartner: Any?, // 调用点: f - val isPartnerReady: Any?, // 调用点: v + val partnerId: Any?, // 调用点: G_.qsf(n) + val loginParams: Any?, // 仅 copy 转发(无类型信息) + val params: Any?, // 仅 copy 转发(无类型信息) + val hasOwnPaymentSystem: Any?, // 仅 copy 转发(无类型信息) + val hasSocialFunction: Any?, // 仅 copy 转发(无类型信息) + val hasClientPaymentAction: Any?, // 仅 copy 转发(无类型信息) + val paymentAction: Any?, // 仅 copy 转发(无类型信息) + val inviteAction: Any?, // 仅 copy 转发(无类型信息) + val canOpenExternalLinks: Any?, // 仅 copy 转发(无类型信息) + val hasAccountBinding: Any?, // 仅 copy 转发(无类型信息) + val failedRedirectUrl: Any?, // 仅 copy 转发(无类型信息) + val loginForBindingStatus: Any?, // 仅 copy 转发(无类型信息) + val isAccountAlreadyLinked: Any?, // 仅 copy 转发(无类型信息) + val itemsEnabledForPartner: Any?, // 仅 copy 转发(无类型信息) + val isPartnerReady: Any?, // 仅 copy 转发(无类型信息) ) data class SetPartnerId( @@ -2584,7 +2584,7 @@ data class SetPartnerParameters( ) data class PromoCode( - val validateStatus: Any?, // 调用点: t + val validateStatus: Any?, // 仅 copy 转发(无类型信息) ) data class ActivatePromoCode( @@ -2596,9 +2596,9 @@ data class SetCodeValidateStatus( ) data class QuestCategoriesState( - val categories: Any?, // 调用点: t - val statistic: Any?, // 调用点: n - val statisticLoadedTime: Any?, // 调用点: i + val categories: Any?, // 仅 copy 转发(无类型信息) + val statistic: Any?, // 仅 copy 转发(无类型信息) + val statisticLoadedTime: Any?, // 仅 copy 转发(无类型信息) ) data class SetQuestCategories( @@ -2618,10 +2618,10 @@ data class SetQuestCategoriesStatistic( ) data class Challenges( - val stars: Boolean, // dataflow - val challenge: Any?, // 调用点: n - val battlePassPackages: Any?, // 调用点: i - val battlePasses: Any?, // 调用点: r + val stars: Any?, // 仅 copy 转发(无类型信息) + val challenge: Any?, // 仅 copy 转发(无类型信息) + val battlePassPackages: Any?, // 仅 copy 转发(无类型信息) + val battlePasses: Any?, // 仅 copy 转发(无类型信息) ) data class RequestChallengeInfo( @@ -2657,7 +2657,7 @@ data class SetTakenBattlePassRewardIndex( ) data class SetBattlePass( - val battlePassFlavor: Any?, // 调用点: n | t + val battlePassFlavor: Any?, // 调用点: n ) data class SetBattlePassPackages( @@ -2673,11 +2673,11 @@ data class RemoveChallenge( ) data class MainQuests( - val isLoaded: Any?, // 调用点: t - val quests: Any?, // 调用点: n - val rewardedQuests: Any?, // 调用点: i - val eventPassShopItemId: Any?, // 调用点: r - val lastBattleUpdatedQuests: Any?, // 调用点: e + val isLoaded: Any?, // 仅 copy 转发(无类型信息) + val quests: Any?, // 仅 copy 转发(无类型信息) + val rewardedQuests: Any?, // 仅 copy 转发(无类型信息) + val eventPassShopItemId: Any?, // 仅 copy 转发(无类型信息) + val lastBattleUpdatedQuests: Any?, // 仅 copy 转发(无类型信息) ) data class QuestsLoaded( @@ -2709,20 +2709,20 @@ data class SetBattleUpdatedQuests( ) data class ReferralEventState( - val referrer: Any?, // 调用点: t - val referrerUid: Boolean, // dataflow - val referralsCount: Any?, // 调用点: i - val referralsData: Boolean, // dataflow - val code: Any?, // 调用点: e - val referrerPanelTitle: Any?, // 调用点: u - val promoCodeDialogImage: Any?, // 调用点: s - val promoCodeDialogBackGround: Any?, // 调用点: o - val referrerCategoryId: Any?, // 调用点: _ - val referralCategoryId: Any?, // 调用点: h - val referralQuestsSize: Any?, // 调用点: a - val hideReferrerCategory: Any?, // 调用点: c - val hideReferralCategory: Any?, // 调用点: l - val hidedAnnounce: Any?, // 调用点: f + val referrer: Any?, // 仅 copy 转发(无类型信息) + val referrerUid: Any?, // 仅 copy 转发(无类型信息) + val referralsCount: Any?, // 仅 copy 转发(无类型信息) + val referralsData: Any?, // 仅 copy 转发(无类型信息) + val code: Any?, // 仅 copy 转发(无类型信息) + val referrerPanelTitle: Any?, // 仅 copy 转发(无类型信息) + val promoCodeDialogImage: Any?, // 仅 copy 转发(无类型信息) + val promoCodeDialogBackGround: Any?, // 仅 copy 转发(无类型信息) + val referrerCategoryId: Any?, // 仅 copy 转发(无类型信息) + val referralCategoryId: Any?, // 仅 copy 转发(无类型信息) + val referralQuestsSize: Any?, // 仅 copy 转发(无类型信息) + val hideReferrerCategory: Any?, // 仅 copy 转发(无类型信息) + val hideReferralCategory: Any?, // 仅 copy 转发(无类型信息) + val hidedAnnounce: Any?, // 仅 copy 转发(无类型信息) ) data class SetReferralEventData( @@ -2739,22 +2739,22 @@ data class SetReferrals( ) data class SetReferrer( - val referrerId: Any?, // 调用点: t - val referrerUid: Any?, // 调用点: n + val referrerId: Any?, // 仅 copy 转发(无类型信息) + val referrerUid: Any?, // 仅 copy 转发(无类型信息) ) data class RemoteUserData( - val userId: Any?, // 调用点: t | _ - val uid: Any?, // 调用点: n | h - val rank: Boolean, // dataflow + val userId: Any?, // 调用点: _ | g + val uid: Any?, // 调用点: h | cd + val rank: Any?, // 调用点: m | cd val hasPremium: Boolean, // callsite - val clanTag: Boolean, // dataflow - val onlineStatus: Boolean, // dataflow - val battle: Boolean, // dataflow + val clanTag: Any?, // 调用点: D | cd + val onlineStatus: Any?, // 调用点: Y | cd + val battle: Any?, // 调用点: ut ) data class RemoteUserDataStorage( - val userIdToData: Any?, // 调用点: t + val userIdToData: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateUids( @@ -2782,11 +2782,11 @@ data class UserEnterBattle( ) data class UserLeaveBattle( - val userId: Any?, // 调用点: t + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class UserLeaveGroup( - val userId: Any?, // 调用点: t + val userId: Any?, // 仅 copy 转发(无类型信息) ) data class SubscribeUpdateUserData( @@ -2803,7 +2803,7 @@ data class AvailabilityState( ) data class RewardedVideosState( - val displayState: Any?, // 调用点: t + val displayState: Any?, // 仅 copy 转发(无类型信息) ) data class GiveRewardForQuest( @@ -2819,7 +2819,7 @@ data class SetDisplayState( ) data class RulesUpdatedState( - val text: Any?, // 调用点: t + val text: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateRules( @@ -2827,20 +2827,20 @@ data class UpdateRules( ) data class HomeScreen( - val shopDiscountNotification: Any?, // 调用点: t + val shopDiscountNotification: Any?, // 仅 copy 转发(无类型信息) ) data class ItemNotificationsState( - val notifications: Boolean, // dataflow + val notifications: Any?, // 仅 copy 转发(无类型信息) ) data class ItemNotificationData( - val section: Any?, // 调用点: t | i.hsn_1 + val section: Any?, // 调用点: i.hsn_1 | n val itemId: Long, // callsite - val type: Any?, // 调用点: i | i.jsn_1 - val parentId: Any?, // 调用点: r | i.ksn_1 - val startTime: Any?, // 调用点: e | i.lsn_1 - val endTime: Any?, // 调用点: u | i.msn_1 + val type: Any?, // 调用点: i.jsn_1 | r + val parentId: Any?, // 调用点: i.ksn_1 | f.z2(d) + val startTime: Any?, // 调用点: i.lsn_1 | n.le8().g1(_) + val endTime: Any?, // 调用点: i.msn_1 ) data class AddItemNotifications( @@ -2884,17 +2884,17 @@ data class ItemNotificationDataStore( ) data class BattleSettings( - val showAimHelperDot: Any?, // 调用点: t | e.l2f("settings.battle..show_dot", r.xso - val showDamage: Int, // dataflow - val showTankPointers: Any?, // 调用点: i | e.l2f("settings.battle..showTankPointers - val showButtonLabels: Any?, // 调用点: r | e.l2f("settings.battle..showButtonLabels - val autoSuicide: Any?, // 调用点: e | e.l2f("settings.battle..auto_suicide", r - val showStatusName: Boolean, // dataflow - val isCenteredLayout: Any?, // 调用点: s | e.l2f("settings.battle..is_centered_layo - val battleUISize: Int, // dataflow - val aimhelperDotOpacity: Any?, // 调用点: _ | e.d2f("settings.battle..aim_opacity", r. - val aimhelperDotScale: Any?, // 调用点: h | e.d2f("settings.battle..aim_scale", r.gs - val autoSupply: Any?, // 调用点: a | e.l2f("settings.battle..auto_supply", r. + val showAimHelperDot: Any?, // 调用点: e.l2f("settings.battle..show_dot", r.xso + val showDamage: Any?, // 调用点: e.l2f("settings.battle..show_damage", r. + val showTankPointers: Any?, // 调用点: e.l2f("settings.battle..showTankPointers + val showButtonLabels: Any?, // 调用点: e.l2f("settings.battle..showButtonLabels + val autoSuicide: Any?, // 调用点: e.l2f("settings.battle..auto_suicide", r + val showStatusName: Any?, // 调用点: e.l2f("settings.battle..show_status_name + val isCenteredLayout: Any?, // 调用点: e.l2f("settings.battle..is_centered_layo + val battleUISize: Any?, // 调用点: e.d2f("settings.battle..battle_ui_scale" + val aimhelperDotOpacity: Any?, // 调用点: e.d2f("settings.battle..aim_opacity", r. + val aimhelperDotScale: Any?, // 调用点: e.d2f("settings.battle..aim_scale", r.gs + val autoSupply: Any?, // 调用点: e.l2f("settings.battle..auto_supply", r. ) data class UpdateSettings( @@ -2902,8 +2902,8 @@ data class UpdateSettings( ) data class Mouse( - val cameraSensitivity: Any?, // 调用点: t | e.d2f("settings.control.mouse.cameraSens - val enableAcceleration: Boolean, // dataflow + val cameraSensitivity: Any?, // 调用点: e.d2f("settings.control.mouse.cameraSens + val enableAcceleration: Any?, // 调用点: e.l2f("settings.control.mouse.enableAcce ) data class Gamepad( @@ -2913,32 +2913,32 @@ data class Gamepad( ) data class Touchscreen( - val cameraSensitivity: Any?, // 调用点: t | e.d2f("settings.control.touchscreen.came - val rotateJoystick: Boolean, // dataflow - val movableJoystick: Boolean, // dataflow - val doubleTapFire: Any?, // 调用点: r | e.l2f("settings.control.touchscreen.doub - val autoFire: Any?, // 调用点: e | e.l2f("settings.control.touchscreen.auto - val showMovementIndicator: Any?, // 调用点: u | e.l2f("settings.control.touchscreen.show - val autoCenterTurret: Any?, // 调用点: s | e.l2f("settings.control.touchscreen.auto + val cameraSensitivity: Any?, // 调用点: e.d2f("settings.control.touchscreen.came + val rotateJoystick: Any?, // 调用点: e.l2f("settings.control.touchscreen.rota + val movableJoystick: Any?, // 调用点: e.l2f("settings.control.touchscreen.mova + val doubleTapFire: Any?, // 调用点: e.l2f("settings.control.touchscreen.doub + val autoFire: Any?, // 调用点: e.l2f("settings.control.touchscreen.auto + val showMovementIndicator: Any?, // 调用点: e.l2f("settings.control.touchscreen.show + val autoCenterTurret: Any?, // 调用点: e.l2f("settings.control.touchscreen.auto ) data class ControlSettings( - val availableInputModes: Any?, // 调用点: t | cd - val inputMode: Boolean, // dataflow - val inversedBackwardMoving: Boolean, // dataflow - val invertShaftVerticalAxis: Boolean, // dataflow - val mouse: Boolean, // dataflow - val gamepad: Boolean, // dataflow - val touchscreen: Boolean, // dataflow + val availableInputModes: Any?, // 调用点: cd + val inputMode: Any?, // 调用点: o + val inversedBackwardMoving: Any?, // 调用点: e.l2f("settings.control.inversedBackward + val invertShaftVerticalAxis: Any?, // 调用点: e.l2f("settings.control.invertShaftVerti + val mouse: Any?, // 调用点: new Q0( e.d2f("setting + val gamepad: Any?, // 调用点: new t2(e.l2f("settings.control.gamepad.e + val touchscreen: Any?, // 调用点: new n2( e.d2f("setting ) data class GameSettings( - val showDropZones: Any?, // 调用点: t | (u = f2(r).t2f()).l2f("settings.game..sh - val showYourDrone: Any?, // 调用点: n | u.l2f("settings.game..show_your_drone", - val showChat: Any?, // 调用点: i | u.l2f("settings.game..show_chat", e.iss_ - val showNotifications: Any?, // 调用点: r | u.l2f("settings.game..show_notification" - val showOtherDrone: Any?, // 调用点: e | u.l2f("settings.game..show_other_drone", - val mobilePadding: Any?, // 调用点: u | F$( u.d2f( + val showDropZones: Any?, // 调用点: (u = f2(r).t2f()).l2f("settings.game..sh | $q + val showYourDrone: Any?, // 调用点: u.l2f("settings.game..show_your_drone", | $q + val showChat: Any?, // 调用点: u.l2f("settings.game..show_chat", e.iss_ | $q + val showNotifications: Any?, // 调用点: u.l2f("settings.game..show_notification" | $q + val showOtherDrone: Any?, // 调用点: u.l2f("settings.game..show_other_drone", | $q + val mobilePadding: Any?, // 调用点: F$( u.d2f( | e ) data class GraphicsSettings( @@ -2970,7 +2970,7 @@ data class HudElementSettings( ) data class SecuritySettingsState( - val isProfileBlocked: Boolean, // dataflow + val isProfileBlocked: Any?, // 仅 copy 转发(无类型信息) ) data class SetProfileBlockStatus( @@ -3006,13 +3006,13 @@ data class SelectCategoryId( ) data class Categories( - val categories: Any?, // 调用点: t - val categoryTypeToId: Any?, // 调用点: n - val categoryIdToType: Any?, // 调用点: i - val categoriesWithDiscount: Any?, // 调用点: r - val categoriesWithBonus: Any?, // 调用点: e - val selectedCategoryType: Any?, // 调用点: u - val selectedCategoryId: Any?, // 调用点: s + val categories: Any?, // 仅 copy 转发(无类型信息) + val categoryTypeToId: Any?, // 仅 copy 转发(无类型信息) + val categoryIdToType: Any?, // 仅 copy 转发(无类型信息) + val categoriesWithDiscount: Any?, // 仅 copy 转发(无类型信息) + val categoriesWithBonus: Any?, // 仅 copy 转发(无类型信息) + val selectedCategoryType: Any?, // 仅 copy 转发(无类型信息) + val selectedCategoryId: Any?, // 仅 copy 转发(无类型信息) ) data class InitCategory( @@ -3024,7 +3024,7 @@ data class SetupDiscountCategoryByItem( ) data class EventGoodsState( - val eventGoods: Any?, // 调用点: t + val eventGoods: Any?, // 仅 copy 转发(无类型信息) ) data class InitEventGoods( @@ -3112,15 +3112,15 @@ data class ShopItem( data class ShopCard( val activeUntil: Long, // dataflow - val goodInfo: Any?, // 调用点: t.qt2_1 | n - val name: Any?, // 调用点: t.pt2_1.m() | i + val goodInfo: Any?, // 调用点: t.qt2_1 + val name: Any?, // 调用点: t.pt2_1.m() val sold: Boolean, // dataflow val pinned: Boolean, // dataflow - val type: Any?, // 调用点: t.pt2_1.ueb_1 | u - val view: Boolean, // dataflow - val discount: Any?, // 调用点: cd | o + val type: Int, // dataflow + val view: Any?, // 调用点: cd + val discount: Any?, // 调用点: cd val sortIndex: Int, // dataflow - val shopCategoryId: Any?, // 调用点: t.rt2_1 | h + val shopCategoryId: Any?, // 调用点: t.rt2_1 ) data class DiscountItem( @@ -3140,29 +3140,29 @@ data class PaymentProviderItem( ) data class ShopItems( - val items: Any?, // 调用点: t - val discountItems: Boolean, // dataflow - val featureItems: Boolean, // dataflow - val specialKitPackage: Boolean, // dataflow - val crystalKitPackage: Boolean, // dataflow - val coinPackage: Boolean, // dataflow - val keysPackage: Boolean, // dataflow - val itemViewType: Boolean, // dataflow - val shopItemName: Boolean, // dataflow - val kitPackage: Boolean, // dataflow - val kitBanner: Any?, // 调用点: a - val amountString: Any?, // 调用点: c - val paymentModeAsShopItem: Any?, // 调用点: l - val restrictionByPayMode: Any?, // 调用点: f - val singleItemKit: Any?, // 调用点: v - val lootBoxAndPaint: Any?, // 调用点: p - val oneTimePurchaseItems: Any?, // 调用点: w - val compensationItems: Any?, // 调用点: d - val paymentProviderItems: Any?, // 调用点: g - val additionalDescription: Any?, // 调用点: m - val rewardedVideosBlocks: Any?, // 调用点: k - val shopCards: Any?, // 调用点: z - val groups: Boolean, // dataflow + val items: Any?, // 仅 copy 转发(无类型信息) + val discountItems: Any?, // 仅 copy 转发(无类型信息) + val featureItems: Any?, // 仅 copy 转发(无类型信息) + val specialKitPackage: Any?, // 仅 copy 转发(无类型信息) + val crystalKitPackage: Any?, // 仅 copy 转发(无类型信息) + val coinPackage: Any?, // 仅 copy 转发(无类型信息) + val keysPackage: Any?, // 仅 copy 转发(无类型信息) + val itemViewType: Any?, // 仅 copy 转发(无类型信息) + val shopItemName: Any?, // 仅 copy 转发(无类型信息) + val kitPackage: Any?, // 仅 copy 转发(无类型信息) + val kitBanner: Any?, // 仅 copy 转发(无类型信息) + val amountString: Any?, // 仅 copy 转发(无类型信息) + val paymentModeAsShopItem: Any?, // 仅 copy 转发(无类型信息) + val restrictionByPayMode: Any?, // 仅 copy 转发(无类型信息) + val singleItemKit: Any?, // 仅 copy 转发(无类型信息) + val lootBoxAndPaint: Any?, // 仅 copy 转发(无类型信息) + val oneTimePurchaseItems: Any?, // 仅 copy 转发(无类型信息) + val compensationItems: Any?, // 仅 copy 转发(无类型信息) + val paymentProviderItems: Any?, // 仅 copy 转发(无类型信息) + val additionalDescription: Any?, // 仅 copy 转发(无类型信息) + val rewardedVideosBlocks: Any?, // 仅 copy 转发(无类型信息) + val shopCards: Any?, // 仅 copy 转发(无类型信息) + val groups: Any?, // 仅 copy 转发(无类型信息) ) data class FeatureItem( @@ -3218,8 +3218,8 @@ data class LootBoxAndPain( ) data class OneTimePurchaseItem( - val isTriedToBuy: Any?, // 调用点: t | this.q7k().leh_1 - val quantityRestriction: Boolean, // dataflow + val isTriedToBuy: Any?, // 调用点: this.q7k().leh_1 | this.q7k().leh_1 + val quantityRestriction: Any?, // 仅 copy 转发(无类型信息) ) data class AdditionalDescription( @@ -3331,7 +3331,7 @@ data class InitKeysPackage( ) data class ShopCardExpired( - val itemId: Any?, // 调用点: t + val itemId: Any?, // 仅 copy 转发(无类型信息) ) data class DeleteOneTimePurchaseItem( @@ -3360,7 +3360,7 @@ data class ShopCardRemoved( ) data class ShopCardSold( - val itemId: Any?, // 调用点: t + val itemId: Any?, // 仅 copy 转发(无类型信息) ) data class InitAmountString( @@ -3385,19 +3385,19 @@ data class SetPurchaseCompleted( ) data class SavePreviousScreen( - val screen: Any?, // 调用点: i + val screen: Boolean, // dataflow ) data class SaveTargetVisitedCategory( - val targetCategory: Any?, // 调用点: e + val targetCategory: Boolean, // dataflow ) data class SaveTargetProductId( - val targetProductId: Any?, // 调用点: r + val targetProductId: Boolean, // dataflow ) data class OverviewProductPackageAndBuy( - val shopItem: Any?, // 调用点: i | t + val shopItem: Int, // dataflow ) data class SelectMoneyPayModeAndBuy( @@ -3490,8 +3490,8 @@ data class StripePaymentInit( ) data class SetStripeIntentParams( - val clientSecret: Any?, // 调用点: t | null - val publishKey: Any?, // 调用点: n | null + val clientSecret: Any?, // 调用点: null + val publishKey: Any?, // 调用点: null ) data class SteamProcessPurchase( @@ -3500,12 +3500,12 @@ data class SteamProcessPurchase( ) data class InitPaymentViewType( - val payModeId: Boolean, // dataflow + val payModeId: Any?, // 调用点: ot().k7k().x57() | ot().k7k().x57() val paymentViewType: Any?, // 调用点: Dc() | Dc() ) data class PaymentUrlReceived( - val url: Any?, // 调用点: t | t + val url: Any?, // 仅 copy 转发(无类型信息) ) data class InitPayModeAction( @@ -3513,7 +3513,7 @@ data class InitPayModeAction( ) data class SetBraintreeToken( - val token: Any?, // 调用点: t + val token: Any?, // 仅 copy 转发(无类型信息) ) data class ValidatePayment( @@ -3553,9 +3553,9 @@ data class ValidatePaymentInternal( ) data class Shop( - val shopCategories: Any?, // 调用点: cd | t - val shopItems: Any?, // 调用点: cd | n - val initShopItemId: Any?, // 调用点: cd | i + val shopCategories: Boolean, // dataflow + val shopItems: Boolean, // dataflow + val initShopItemId: Boolean, // dataflow val selectedItemId: Boolean, // dataflow val isLoaded: Boolean, // dataflow val itemForPurchase: Boolean, // dataflow @@ -3576,27 +3576,27 @@ data class Shop( val stripeClientSecret: Boolean, // dataflow val stripePublishKey: Boolean, // dataflow val isBlockedBackButton: Boolean, // dataflow - val braintreeLoadingInterrupt: Any?, // 调用点: q - val goToHomeAfterBuy: Any?, // 调用点: y - val previousScreen: Any?, // 调用点: $ - val targetCategory: Any?, // 调用点: x - val targetProductId: Any?, // 调用点: j + val braintreeLoadingInterrupt: Boolean, // dataflow + val goToHomeAfterBuy: Boolean, // dataflow + val previousScreen: Boolean, // dataflow + val targetCategory: Boolean, // dataflow + val targetProductId: Boolean, // dataflow val lastPurchasedItem: Boolean, // dataflow - val ordersInProcessing: Any?, // 调用点: C + val ordersInProcessing: Boolean, // dataflow ) data class SupportUrlState( - val url: Any?, // 调用点: t + val url: Any?, // 仅 copy 转发(无类型信息) ) data class SetUrl( - val url: Any?, // 调用点: t + val url: Any?, // 仅 copy 转发(无类型信息) ) data class SystemScreenState( - val message: Boolean, // dataflow - val restart: Any?, // 调用点: n - val fatalError: Any?, // 调用点: i + val message: Any?, // 仅 copy 转发(无类型信息) + val restart: Any?, // 仅 copy 转发(无类型信息) + val fatalError: Any?, // 仅 copy 转发(无类型信息) ) data class ShowSystemMessage( @@ -3604,14 +3604,14 @@ data class ShowSystemMessage( ) data class ShowKickAlertWithTime( - val blockReason: Any?, // 调用点: t - val minutes: Any?, // 调用点: n - val hours: Any?, // 调用点: i - val days: Any?, // 调用点: r + val blockReason: Any?, // 仅 copy 转发(无类型信息) + val minutes: Any?, // 仅 copy 转发(无类型信息) + val hours: Any?, // 仅 copy 转发(无类型信息) + val days: Any?, // 仅 copy 转发(无类型信息) ) data class SetFatalError( - val fatalError: Boolean, // dataflow + val fatalError: Any?, // 调用点: i | t ) data class DoShowMessage( @@ -3620,9 +3620,9 @@ data class DoShowMessage( ) data class TwitchState( - val isTwitchEnabled: Any?, // 调用点: t - val twitchAccount: Boolean, // dataflow - val daysForNextLinking: Boolean, // dataflow + val isTwitchEnabled: Any?, // 仅 copy 转发(无类型信息) + val twitchAccount: Any?, // 仅 copy 转发(无类型信息) + val daysForNextLinking: Any?, // 仅 copy 转发(无类型信息) ) data class SetTwitchEnabled( @@ -3638,12 +3638,12 @@ data class SetDaysForNextLinking( ) data class TwoStepVerificationState( - val isUse2FA: Any?, // 调用点: t - val isActivated2FA: Boolean, // dataflow - val qrCodeDataURI: Boolean, // dataflow - val sharedSecret: Any?, // 调用点: r - val verificationStatus: Any?, // 调用点: e - val enable2FaRequest: Any?, // 调用点: u + val isUse2FA: Any?, // 仅 copy 转发(无类型信息) + val isActivated2FA: Any?, // 仅 copy 转发(无类型信息) + val qrCodeDataURI: Any?, // 仅 copy 转发(无类型信息) + val sharedSecret: Any?, // 仅 copy 转发(无类型信息) + val verificationStatus: Any?, // 仅 copy 转发(无类型信息) + val enable2FaRequest: Any?, // 仅 copy 转发(无类型信息) ) data class SetUse2FA( @@ -3655,8 +3655,8 @@ data class ActivationStatus2FA( ) data class SetSecretAndQRCode( - val sharedSecret: Any?, // 调用点: t | null - val qrCodeDataURI: Any?, // 调用点: n | null + val sharedSecret: Any?, // 调用点: null + val qrCodeDataURI: Any?, // 调用点: null ) data class AuthorizationByCode( @@ -3684,7 +3684,7 @@ data class ValidateForPaidRename( ) data class SetValidationStatus( - val status: Any?, // 调用点: t + val status: Any?, // 仅 copy 转发(无类型信息) ) data class UserLabelData( @@ -3702,16 +3702,16 @@ data class TemporaryCashSlot( ) data class User( - val isUserPropertiesLoaded: Any?, // 调用点: t + val isUserPropertiesLoaded: Boolean, // dataflow val id: Boolean, // dataflow - val clan: Any?, // 调用点: i - val crystals: Any?, // 调用点: r - val coins: Any?, // 调用点: e - val spentCoins: Any?, // 调用点: u - val rubies: Any?, // 调用点: s - val spentRubies: Any?, // 调用点: o - val hasTemporaryCash: Any?, // 调用点: _ - val rank: Any?, // 调用点: h + val clan: Boolean, // dataflow + val crystals: Boolean, // dataflow + val coins: Boolean, // dataflow + val spentCoins: Int, // dataflow + val rubies: Boolean, // dataflow + val spentRubies: Int, // dataflow + val hasTemporaryCash: Boolean, // dataflow + val rank: Boolean, // dataflow val rankBounds: Boolean, // dataflow val score: Boolean, // dataflow val gearScore: Boolean, // dataflow @@ -3732,8 +3732,8 @@ data class User( val profileUrl: Boolean, // dataflow val eventPassEndTime: Boolean, // dataflow val lobbyTutorialEnabled: Boolean, // dataflow - val inDebt: Any?, // 调用点: E - val batteryLevel: Any?, // 调用点: T + val inDebt: Boolean, // dataflow + val batteryLevel: Boolean, // dataflow ) data class UpdateCrystals( @@ -3745,7 +3745,7 @@ data class SpendCrystals( ) data class AddCoins( - val coins: Any?, // 调用点: t + val coins: Any?, // 仅 copy 转发(无类型信息) ) data class SpendCoins( @@ -3757,7 +3757,7 @@ data class SetCoins( ) data class AddRubies( - val rubies: Any?, // 调用点: t + val rubies: Any?, // 仅 copy 转发(无类型信息) ) data class SpendRubies( @@ -3769,7 +3769,7 @@ data class SetRubies( ) data class SetHasTemporaryCash( - val hasTemporaryCash: Any?, // 调用点: t + val hasTemporaryCash: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateGearScore( @@ -3782,11 +3782,11 @@ data class UpdateGearScore( ) data class UpdateUserRating( - val userRating: Any?, // 调用点: t + val userRating: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateUid( - val uid: Any?, // 调用点: t + val uid: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateClanTag( @@ -3844,16 +3844,16 @@ data class SetBatteryLevel( ) data class UserRenameState( - val isFreeRenameAvailable: Any?, // 调用点: t - val userRenameShopItemId: Boolean, // dataflow - val uidInputState: Boolean, // dataflow - val renameSuccessful: Any?, // 调用点: r - val rubiesForRename: Any?, // 调用点: e - val isResponseDelivered: Any?, // 调用点: u - val isResponseActual: Any?, // 调用点: s - val changeUidHash: Any?, // 调用点: o - val email: Any?, // 调用点: _ - val showLinkErrorWarning: Long, // dataflow + val isFreeRenameAvailable: Any?, // 仅 copy 转发(无类型信息) + val userRenameShopItemId: Any?, // 仅 copy 转发(无类型信息) + val uidInputState: Any?, // 仅 copy 转发(无类型信息) + val renameSuccessful: Any?, // 仅 copy 转发(无类型信息) + val rubiesForRename: Any?, // 仅 copy 转发(无类型信息) + val isResponseDelivered: Any?, // 仅 copy 转发(无类型信息) + val isResponseActual: Any?, // 仅 copy 转发(无类型信息) + val changeUidHash: Any?, // 仅 copy 转发(无类型信息) + val email: Any?, // 仅 copy 转发(无类型信息) + val showLinkErrorWarning: Any?, // 仅 copy 转发(无类型信息) ) data class ChangeUidInputState( @@ -3893,24 +3893,24 @@ data class CreateBattleCanvas( ) data class BattleCreateState( - val config: Any?, // 调用点: t | f - val name: Boolean, // dataflow - val selectedMinRank: Any?, // 调用点: i | h - val selectedMaxRank: Any?, // 调用点: r | a - val availableMinRank: Any?, // 调用点: e | c - val availableMaxRank: Any?, // 调用点: u | l - val battleMode: Boolean, // dataflow - val maxPeopleInTeam: Boolean, // dataflow - val timeLimitInMinutes: Boolean, // dataflow - val scoreLimit: Boolean, // dataflow - val format: Boolean, // dataflow - val map: Boolean, // dataflow - val selectedOptions: Boolean, // dataflow - val creating: Boolean, // dataflow - val mapTheme: Boolean, // dataflow - val search: Boolean, // dataflow - val isExpandThemesPanel: Boolean, // dataflow - val currentPage: Boolean, // dataflow + val config: Any?, // 调用点: f + val name: Any?, // 调用点: o + val selectedMinRank: Int, // dataflow + val selectedMaxRank: Int, // dataflow + val availableMinRank: Int, // dataflow + val availableMaxRank: Int, // dataflow + val battleMode: Any?, // 调用点: s + val maxPeopleInTeam: Any?, // 调用点: _ + val timeLimitInMinutes: Any?, // 调用点: cd + val scoreLimit: Any?, // 调用点: cd + val format: Any?, // 调用点: v + val map: Any?, // 调用点: e + val selectedOptions: Any?, // 仅 copy 转发(无类型信息) + val creating: Any?, // 仅 copy 转发(无类型信息) + val mapTheme: Any?, // 仅 copy 转发(无类型信息) + val search: Any?, // 仅 copy 转发(无类型信息) + val isExpandThemesPanel: Any?, // 仅 copy 转发(无类型信息) + val currentPage: Any?, // 仅 copy 转发(无类型信息) ) data class BattleOpt( @@ -3935,17 +3935,17 @@ data class CreateBattle( ) data class BattleChatUserMessage( - val id: Any?, // 调用点: t - val userId: Any?, // 调用点: n - val message: Any?, // 调用点: i - val team: Any?, // 调用点: r + val id: Any?, // 仅 copy 转发(无类型信息) + val userId: Any?, // 仅 copy 转发(无类型信息) + val message: Any?, // 仅 copy 转发(无类型信息) + val team: Any?, // 仅 copy 转发(无类型信息) ) data class BattleChatTeamMessage( - val id: Any?, // 调用点: t - val userId: Any?, // 调用点: n - val message: Any?, // 调用点: i - val team: Any?, // 调用点: r + val id: Any?, // 仅 copy 转发(无类型信息) + val userId: Any?, // 仅 copy 转发(无类型信息) + val message: Any?, // 仅 copy 转发(无类型信息) + val team: Any?, // 仅 copy 转发(无类型信息) ) data class BattleChatSpectatorMessage( @@ -3958,12 +3958,12 @@ data class BattleChatSystemMessage( ) data class BattleChatState( - val commonBattleChatEnabled: Any?, // 调用点: t - val teamBattleChatEnabled: Boolean, // dataflow - val loaded: Boolean, // dataflow - val messages: Any?, // 调用点: r - val isInputActive: Any?, // 调用点: e - val isHistoryOpen: Any?, // 调用点: u + val commonBattleChatEnabled: Any?, // 仅 copy 转发(无类型信息) + val teamBattleChatEnabled: Any?, // 仅 copy 转发(无类型信息) + val loaded: Any?, // 仅 copy 转发(无类型信息) + val messages: Any?, // 仅 copy 转发(无类型信息) + val isInputActive: Any?, // 仅 copy 转发(无类型信息) + val isHistoryOpen: Any?, // 仅 copy 转发(无类型信息) ) data class VoteForUser( @@ -3986,9 +3986,9 @@ data class SendSpectatorTeamMessage( ) data class BattleInviteState( - val isEnabled: Any?, // 调用点: t - val invitedUsers: Boolean, // dataflow - val selectedForInvite: Boolean, // dataflow + val isEnabled: Any?, // 仅 copy 转发(无类型信息) + val invitedUsers: Any?, // 仅 copy 转发(无类型信息) + val selectedForInvite: Any?, // 仅 copy 转发(无类型信息) ) data class EnableSetBattleInviteNotifications( @@ -4012,8 +4012,8 @@ data class OnClickToInvited( ) data class Notify( - val userId: Any?, // 调用点: t - val data: Any?, // 调用点: n + val userId: Any?, // 仅 copy 转发(无类型信息) + val data: Any?, // 仅 copy 转发(无类型信息) ) data class InvitationResponse( @@ -4022,11 +4022,11 @@ data class InvitationResponse( ) data class BattleSearchState( - val filter: Any?, // 调用点: t - val selectedFormat: Any?, // 调用点: n - val search: Boolean, // dataflow - val suspiciousBattlesOnly: Any?, // 调用点: r - val selectedBattleId: Any?, // 调用点: e + val filter: Any?, // 仅 copy 转发(无类型信息) + val selectedFormat: Any?, // 仅 copy 转发(无类型信息) + val search: Any?, // 仅 copy 转发(无类型信息) + val suspiciousBattlesOnly: Any?, // 仅 copy 转发(无类型信息) + val selectedBattleId: Any?, // 仅 copy 转发(无类型信息) ) data class SetSuspiciousFilter( @@ -4050,9 +4050,9 @@ data class SelectBattleFormat( ) data class ProBattleState( - val lastFightBattleId: Any?, // 调用点: t - val lastFightBattleTeam: Any?, // 调用点: n - val battlePasswords: Boolean, // dataflow + val lastFightBattleId: Any?, // 仅 copy 转发(无类型信息) + val lastFightBattleTeam: Any?, // 仅 copy 转发(无类型信息) + val battlePasswords: Any?, // 仅 copy 转发(无类型信息) ) data class Fight( @@ -4090,13 +4090,13 @@ data class ContextMenuData( ) data class ClanChatState( - val open: Any?, // 调用点: t - val messages: Any?, // 调用点: n - val config: Any?, // 调用点: i + val open: Any?, // 仅 copy 转发(无类型信息) + val messages: Any?, // 仅 copy 转发(无类型信息) + val config: Any?, // 仅 copy 转发(无类型信息) ) data class AddMessagesHistory( - val messages: Any?, // 调用点: t + val messages: Any?, // 仅 copy 转发(无类型信息) ) data class DoAddMessages( @@ -4104,9 +4104,9 @@ data class DoAddMessages( ) data class ContractState( - val activeContractId: Any?, // 调用点: t - val contracts: Any?, // 调用点: n - val lastBattleProgress: Any?, // 调用点: i + val activeContractId: Any?, // 仅 copy 转发(无类型信息) + val contracts: Any?, // 仅 copy 转发(无类型信息) + val lastBattleProgress: Any?, // 仅 copy 转发(无类型信息) ) data class SetActiveContract( @@ -4118,12 +4118,12 @@ data class SetContract( ) data class UpdateProgress( - val contactId: Any?, // 调用点: t - val progress: Any?, // 调用点: n + val contactId: Any?, // 仅 copy 转发(无类型信息) + val progress: Any?, // 仅 copy 转发(无类型信息) ) data class SetBattleProgress( - val progress: Any?, // 调用点: t + val progress: Any?, // 仅 copy 转发(无类型信息) ) data class EarlyCompletion( @@ -4165,13 +4165,13 @@ data class SetInviteStatus( ) data class MigrationState( - val requestLogin: Any?, // 调用点: t - val login: Boolean, // dataflow - val forceLogin: Boolean, // dataflow - val password: Any?, // 调用点: r - val loginStatus: Any?, // 调用点: e - val registerStatus: Any?, // 调用点: u - val advisedUids: Any?, // 调用点: s + val requestLogin: Any?, // 仅 copy 转发(无类型信息) + val login: Any?, // 仅 copy 转发(无类型信息) + val forceLogin: Any?, // 仅 copy 转发(无类型信息) + val password: Any?, // 仅 copy 转发(无类型信息) + val loginStatus: Any?, // 仅 copy 转发(无类型信息) + val registerStatus: Any?, // 仅 copy 转发(无类型信息) + val advisedUids: Any?, // 仅 copy 转发(无类型信息) ) data class MigrationCompleteWithUidAction( @@ -4184,22 +4184,22 @@ data class MigrationCompleteAction( ) data class RegisterState( - val isDisabled: Any?, // 调用点: t - val login: Boolean, // dataflow - val forceLogin: Boolean, // dataflow - val password: Boolean, // dataflow - val uidValidationStatus: Boolean, // dataflow - val registerStatus: Boolean, // dataflow - val advisedUids: Boolean, // dataflow - val socialNetworkAvailability: Any?, // 调用点: o - val socialNetworkClientIds: Long, // dataflow - val socialNetworkOAuthData: Any?, // 调用点: h - val minPasswordLength: Any?, // 调用点: a - val maxPasswordLength: Any?, // 调用点: c - val passwordNeedLower: Any?, // 调用点: l - val passwordNeedUpper: Any?, // 调用点: f - val passwordNeedDigit: Any?, // 调用点: v - val openedPassword: Any?, // 调用点: p + val isDisabled: Any?, // 仅 copy 转发(无类型信息) + val login: Any?, // 仅 copy 转发(无类型信息) + val forceLogin: Any?, // 仅 copy 转发(无类型信息) + val password: Any?, // 仅 copy 转发(无类型信息) + val uidValidationStatus: Any?, // 仅 copy 转发(无类型信息) + val registerStatus: Any?, // 仅 copy 转发(无类型信息) + val advisedUids: Any?, // 仅 copy 转发(无类型信息) + val socialNetworkAvailability: Any?, // 仅 copy 转发(无类型信息) + val socialNetworkClientIds: Any?, // 仅 copy 转发(无类型信息) + val socialNetworkOAuthData: Any?, // 仅 copy 转发(无类型信息) + val minPasswordLength: Any?, // 仅 copy 转发(无类型信息) + val maxPasswordLength: Any?, // 仅 copy 转发(无类型信息) + val passwordNeedLower: Any?, // 仅 copy 转发(无类型信息) + val passwordNeedUpper: Any?, // 仅 copy 转发(无类型信息) + val passwordNeedDigit: Any?, // 仅 copy 转发(无类型信息) + val openedPassword: Any?, // 仅 copy 转发(无类型信息) ) data class StartOAuthData( @@ -4216,7 +4216,7 @@ data class SetPasswordRestrictions( ) data class EnteredUidIsBusy( - val advisedUids: Any?, // 调用点: t + val advisedUids: Any?, // 仅 copy 转发(无类型信息) ) data class SetChinaUserRealName( @@ -4270,12 +4270,12 @@ data class SetOpenedPassword( ) data class TankBuilderState( - val hulls: Any?, // 调用点: t - val weapons: Boolean, // dataflow - val paints: Boolean, // dataflow - val paintInfo: Boolean, // dataflow - val partInfo: Boolean, // dataflow - val kode: Boolean, // dataflow + val hulls: Any?, // 仅 copy 转发(无类型信息) + val weapons: Any?, // 仅 copy 转发(无类型信息) + val paints: Any?, // 仅 copy 转发(无类型信息) + val paintInfo: Any?, // 仅 copy 转发(无类型信息) + val partInfo: Any?, // 仅 copy 转发(无类型信息) + val kode: Any?, // 仅 copy 转发(无类型信息) ) data class LogAction( @@ -4316,9 +4316,9 @@ data class SetRating( ) data class Quests( - val currentSection: Any?, // 调用点: t - val currentCategory: Any?, // 调用点: n - val isNotCompletedQuests: Any?, // 调用点: i + val currentSection: Any?, // 仅 copy 转发(无类型信息) + val currentCategory: Any?, // 仅 copy 转发(无类型信息) + val isNotCompletedQuests: Any?, // 仅 copy 转发(无类型信息) ) data class QuestsChangeCategory( @@ -4337,12 +4337,12 @@ data class GoToCategory( ) data class SetRewardForDialog( - val battlePassFlavor: Any?, // 调用点: t - val stars: Any?, // 调用点: n + val battlePassFlavor: Any?, // 仅 copy 转发(无类型信息) + val stars: Any?, // 仅 copy 转发(无类型信息) ) data class AvailabilityByRankState( - val data: Any?, // 调用点: t + val data: Any?, // 仅 copy 转发(无类型信息) ) data class ShowOrLoadAvailableItems( @@ -4363,19 +4363,19 @@ data class SetLoadedData( ) data class AccountSettings( - val isCurrentPasswordMandatory: Any?, // 调用点: t - val currentPassword: Boolean, // dataflow - val newPassword: Boolean, // dataflow - val repeatNewPassword: Any?, // 调用点: r - val newPasswordStatus: Boolean, // dataflow - val countryCode: Any?, // 调用点: u - val countryName: Any?, // 调用点: s - val email: Any?, // 调用点: o - val emailConfirmed: Any?, // 调用点: _ - val locationCheckEnabled: Any?, // 调用点: h - val isUnlockButtonForRenameUid: Any?, // 调用点: a - val isClearInputUid: Any?, // 调用点: c - val removalTimer: Any?, // 调用点: l + val isCurrentPasswordMandatory: Any?, // 仅 copy 转发(无类型信息) + val currentPassword: Any?, // 仅 copy 转发(无类型信息) + val newPassword: Any?, // 仅 copy 转发(无类型信息) + val repeatNewPassword: Any?, // 仅 copy 转发(无类型信息) + val newPasswordStatus: Any?, // 仅 copy 转发(无类型信息) + val countryCode: Any?, // 仅 copy 转发(无类型信息) + val countryName: Any?, // 仅 copy 转发(无类型信息) + val email: Any?, // 仅 copy 转发(无类型信息) + val emailConfirmed: Any?, // 仅 copy 转发(无类型信息) + val locationCheckEnabled: Any?, // 仅 copy 转发(无类型信息) + val isUnlockButtonForRenameUid: Any?, // 仅 copy 转发(无类型信息) + val isClearInputUid: Any?, // 仅 copy 转发(无类型信息) + val removalTimer: Any?, // 仅 copy 转发(无类型信息) ) data class ClearInputUid( @@ -4395,16 +4395,16 @@ data class SetRepeatPasswordAndValidate( ) data class SoundSettings( - val masterVolume: Any?, // 调用点: t | u - val uiVolume: Boolean, // dataflow - val musicVolume: Boolean, // dataflow - val ambientVolume: Any?, // 调用点: r | o - val sfxVolume: Boolean, // dataflow - val hitmarkPlayerVolume: Boolean, // dataflow - val hitmarkEnemyVolume: Boolean, // dataflow + val masterVolume: Any?, // 调用点: u | cd + val uiVolume: Any?, // 调用点: r.d2f("settings:audio.uiVolume", e.vte_1 | cd + val musicVolume: Any?, // 调用点: s | cd + val ambientVolume: Any?, // 调用点: o | cd + val sfxVolume: Any?, // 调用点: _ | cd + val hitmarkPlayerVolume: Any?, // 调用点: r.d2f("settings:audio.hitmarkPlayerVolum | cd + val hitmarkEnemyVolume: Any?, // 调用点: r.d2f("settings:audio.hitmarkEnemyVolume | cd val mute: Boolean, // callsite - val muteInBackground: Boolean, // dataflow - val isEntranceSoundOn: Boolean, // dataflow + val muteInBackground: Any?, // 调用点: r.l2f("settings:audio.blurMute", e.ctf_1 | cd + val isEntranceSoundOn: Any?, // 调用点: r.l2f("settings:audio.entranceSoundOn", | Let(this).t2f().l2f("settings:audio.entr ) data class SetEntranceSoundEnabled( @@ -4416,11 +4416,11 @@ data class UpdateEntranceSoundEnabled( ) data class DroppableGoldState( - val showDroppableGoldAuthor: Any?, // 调用点: t + val showDroppableGoldAuthor: Any?, // 仅 copy 转发(无类型信息) ) data class KeyboardSettings( - val mapping: Any?, // 调用点: t | rut().mu7_1 + val mapping: Any?, // 调用点: rut().mu7_1 ) data class ChangeAction( @@ -4439,8 +4439,8 @@ data class ResetAction( ) data class Settings( - val currentCategory: Any?, // 调用点: t - val disableAccountSettings: Boolean, // dataflow + val currentCategory: Any?, // 仅 copy 转发(无类型信息) + val disableAccountSettings: Any?, // 仅 copy 转发(无类型信息) ) data class ProcessPurchase( @@ -4456,8 +4456,8 @@ data class InitProductIdMap( ) data class SuppliesTutorialState( - val loadedElement: Any?, // 调用点: t - val activatedInCurrentBattle: Boolean, // dataflow + val loadedElement: Any?, // 仅 copy 转发(无类型信息) + val activatedInCurrentBattle: Any?, // 仅 copy 转发(无类型信息) ) data class ActivatedInCurrentBattle( @@ -4465,11 +4465,11 @@ data class ActivatedInCurrentBattle( ) data class SetLoadedElement( - val loadedElement: Any?, // 调用点: null | t + val loadedElement: Any?, // 调用点: null ) data class TipsState( - val tips: Any?, // 调用点: t + val tips: Any?, // 仅 copy 转发(无类型信息) ) data class UpdateTips( @@ -4477,8 +4477,8 @@ data class UpdateTips( ) data class UpdateTipsFromServer( - val tipsData: Any?, // 调用点: t - val hash: Any?, // 调用点: n + val tipsData: Any?, // 仅 copy 转发(无类型信息) + val hash: Any?, // 仅 copy 转发(无类型信息) ) data class TipsContent( @@ -4493,10 +4493,10 @@ data class TipsDataStore( ) data class ContextTutorialState( - val currentElement: Any?, // 调用点: t - val loadedElements: Int, // dataflow - val unViewedElements: Any?, // 调用点: i - val missionToElement: Any?, // 调用点: r + val currentElement: Any?, // 仅 copy 转发(无类型信息) + val loadedElements: Any?, // 仅 copy 转发(无类型信息) + val unViewedElements: Any?, // 仅 copy 转发(无类型信息) + val missionToElement: Any?, // 仅 copy 转发(无类型信息) ) data class LoadCurrentElement( @@ -4534,16 +4534,16 @@ data class LoadOrShowTutorial( ) data class AddLoadedElement( - val element: Any?, // 调用点: t - val content: Any?, // 调用点: n + val element: Any?, // 仅 copy 转发(无类型信息) + val content: Any?, // 仅 copy 转发(无类型信息) ) data class UserReportsState( - val isEnabled: Any?, // 调用点: t - val helpdeskTicketsEnabled: Any?, // 调用点: n - val availableReports: Boolean, // dataflow - val availableGameReports: Any?, // 调用点: r - val reports: Any?, // 调用点: e + val isEnabled: Any?, // 仅 copy 转发(无类型信息) + val helpdeskTicketsEnabled: Any?, // 仅 copy 转发(无类型信息) + val availableReports: Any?, // 仅 copy 转发(无类型信息) + val availableGameReports: Any?, // 仅 copy 转发(无类型信息) + val reports: Any?, // 仅 copy 转发(无类型信息) ) data class InitUserReports( @@ -4566,7 +4566,7 @@ data class ReportProBattleName( ) data class ReportLobbyChatMessage( - val messageId: Boolean, // dataflow + val messageId: Any?, // 调用点: n ) data class ReportBattleChatMessage(