package routers import ( "context" "sync" ) var _ = sync.Mutex{} var _ = context.Background // Protagonist traversal/web buff handling. Buff ids come from private-server.json. func GameRouter_Traversal_IsActiveProtagonist(ctx context.Context, state any, unitId uint64) bool { // Router implementation for GameRouter_Traversal_IsActiveProtagonist return true } func GameRouter_Traversal_EnsureFeiSuoActionBuff(ctx context.Context, rpcCtx *RpcContext) any { // Router implementation for GameRouter_Traversal_EnsureFeiSuoActionBuff var zero any; return zero } func GameRouter_Traversal_OnEnterFeiSuoCrouch(ctx context.Context, rpcCtx *RpcContext) any { // Router implementation for GameRouter_Traversal_OnEnterFeiSuoCrouch var zero any; return zero } func GameRouter_Traversal_OnFeiSuoSuccess(ctx context.Context, rpcCtx *RpcContext, feiSuoId int32) any { // Router implementation for GameRouter_Traversal_OnFeiSuoSuccess var zero any; return zero } func GameRouter_Traversal_OnLeaveFeiSuoCrouch(ctx context.Context, rpcCtx *RpcContext) any { // Router implementation for GameRouter_Traversal_OnLeaveFeiSuoCrouch var zero any; return zero } // // 蹲伏暗杀裁决:客户端上报「这几个在我背后」→ 服务端回 SyncEnemyCanAssassinate 授权。 // ★ 为什么必须有这一段:客户端 StealthManager 只负责算候选(每 0.4s 一次), // 真正的授权在服务端这一条回包上。本服 2026-09-26 之前既没有 handler 也从不下发 // (全仓只有 MethodId 常量)⇒ canAssassinate 恒 false ⇒ // EnemyInteractCore.TrySetFeisuoCrouchAssassinInteract 从不置 true ⇒ // HUD 不出暗杀提示、ControlPower 按钮不切成暗杀态。 // ⛑ 只在集合变化时发包:候选名单蹲着不动时是完全一样的,不做差分会每 0.4s 推一批。 // ⛑ 两态都发:撤销(canAssassinate=false)同样重要,否则目标走远了提示还在。 // func GameRouter_Traversal_OnReportCanAssassinateEnemies(ctx context.Context, rpcCtx *RpcContext, enemyIds []any) any { // Router implementation for GameRouter_Traversal_OnReportCanAssassinateEnemies var zero any; return zero } // 清空全部暗杀授权(离开蹲伏态 / 退场景时调用),逐个发 false。 func GameRouter_Traversal_RevokeAllAssassinationGrants(ctx context.Context, rpcCtx *RpcContext, phase string) any { // Router implementation for GameRouter_Traversal_RevokeAllAssassinationGrants var zero any; return zero } func GameRouter_Traversal_OnClientBuffAdd(ctx context.Context, rpcCtx *RpcContext, unitId uint64, buffId uint32) any { // Router implementation for GameRouter_Traversal_OnClientBuffAdd var zero any; return zero } func GameRouter_Traversal_OnClientBuffRemove(ctx context.Context, rpcCtx *RpcContext, unitId uint64, buffId uint32) any { // Router implementation for GameRouter_Traversal_OnClientBuffRemove var zero any; return zero } func GameRouter_Traversal_ClearClientWebLifecycleBuffs(ctx context.Context, rpcCtx *RpcContext, unitId uint64, phase string) any { // Router implementation for GameRouter_Traversal_ClearClientWebLifecycleBuffs var zero any; return zero }