48 lines
2.1 KiB
Go
48 lines
2.1 KiB
Go
package routers
|
||
|
||
import (
|
||
"context"
|
||
"sync"
|
||
)
|
||
|
||
var _ = sync.Mutex{}
|
||
var _ = context.Background
|
||
|
||
//
|
||
// 敌人战斗姿态握手(2026-09-26 Wave 2,原生战斗管线复活)—— 移植 7k-v0.5
|
||
// GameRouter.EnemyAi.cs:21-49 SendEnemyCombatStanceAsync / ClearEnemyGunAim4229938,
|
||
// 逐行对齐,唯一差异:我们的 TcpSession 没有 ClosedToken,一律
|
||
// CancellationToken.None(与 GameAdminBridge 既有风格一致)。
|
||
// 这条握手是「客户端原生受击/战斗 locomotion」的激活钥匙之一:
|
||
// SyncBattleAnimSet 让客户端把单位切到指定 AnimationSetConfig(空手 325/327、
|
||
// 远程 337/338/340),原生 hurt/stagger 反应才有对应动画集可播;
|
||
// SyncAgentChangeWeapon 负责卸/换武器(melee 空手 = weaponId 0)。
|
||
// 7K 对 template 模式 / 无动画集可换的模板整段跳过,我们保持同样的判据,
|
||
// 所以 spawnCombatMode=off / template 时本文件一个包都不会发。
|
||
//
|
||
// 7K 原判据:melee 模式 + 已卸武器 + 有空手技能 = 空手单位。
|
||
func GameRouter_EnemyStance_IsUnarmedEnemyProfile4229938(ctx context.Context, profile any) bool {
|
||
// Router implementation for GameRouter_EnemyStance_IsUnarmedEnemyProfile4229938
|
||
return true
|
||
}
|
||
|
||
//
|
||
// 清空上半身持枪瞄准(移植 7K ClearEnemyGunAim4229938,消费方注释原文保留)。
|
||
// 两个包都是裸 u64(8B,无 marker)—— 7K 用 new UxWriter().U64(id),照抄。
|
||
//
|
||
func GameRouter_EnemyStance_ClearEnemyGunAim4229938(ctx context.Context, session *GameSession, id uint64) any {
|
||
// Router implementation for GameRouter_EnemyStance_ClearEnemyGunAim4229938
|
||
var zero any; return zero
|
||
}
|
||
|
||
//
|
||
// 战斗姿态握手(移植 7K SendEnemyCombatStanceAsync)。
|
||
// 判据与 7K 完全一致:profile null → 跳过;非空手且 BattleAnimSetTag==0 → 跳过
|
||
// (template / 持武器近战模板 7K 本来一个包都不发)。
|
||
//
|
||
func GameRouter_EnemyStance_SendEnemyCombatStanceAsync(ctx context.Context, session *GameSession, id uint64, profile any) any {
|
||
// Router implementation for GameRouter_EnemyStance_SendEnemyCombatStanceAsync
|
||
var zero any; return zero
|
||
}
|
||
|