package routers import ( "context" "sync" ) var _ = sync.Mutex{} var _ = context.Background // // Private-server GM surface (build 4229938): the in-game GM console sends these // C2S invokes. Strategy is return-real-ids-first: the client spawns GM entities locally // (GM invoke call sites ignore the return), the server records the ids so the admin // panel can manage them. If a command proves to wait for a server broadcast, the push // (SyncLogicVehicleEnter etc.) gets added for that command. // func GameRouter_Gm_GmSpawnVehicle(ctx context.Context, conn any, msg any) any { // Router implementation for GameRouter_Gm_GmSpawnVehicle var zero any; return zero } func GameRouter_Gm_GmAddEnemyWithPosition(ctx context.Context, conn any, msg any) any { // Router implementation for GameRouter_Gm_GmAddEnemyWithPosition var zero any; return zero } func GameRouter_Gm_GmAddEnemy(ctx context.Context, conn any, msg any) any { // Router implementation for GameRouter_Gm_GmAddEnemy var zero any; return zero } func GameRouter_Gm_GmAddEnemyByPlayer(ctx context.Context, conn any, msg any) any { // Router implementation for GameRouter_Gm_GmAddEnemyByPlayer var zero any; return zero } func GameRouter_Gm_GmAddNpc(ctx context.Context, conn any, msg any) any { // Router implementation for GameRouter_Gm_GmAddNpc var zero any; return zero } // // Materialises a civilian / friendly NPC for a GM add command. // GmAddNpc carries only two uint32s, so unlike the enemy commands it survives the client // console bridge intact and is currently the only usable C2S GM spawn command typed in // ALT+F1 (e.g. "GmAddNpc 4065053 0"). // func GameRouter_Gm_SpawnGmNpcAsync(ctx context.Context, conn any, npcId uint32, tag string) uint64 { // Router implementation for GameRouter_Gm_SpawnGmNpcAsync return 0 } // // Materialises an enemy for a GM add command. // The client forwards AddEnemy* to the server as a C2S invoke, so nothing appears unless // the server actually spawns. It also mangles the id on the way back (the panel asks for // 40100010 and the C2S arrives with 40900579), so the id the operator typed is preferred // over the forwarded one whenever it is still fresh. // func GameRouter_Gm_SpawnGmEnemyAsync(ctx context.Context, conn any, forwardedId uint32, explicitPos any, tag string) uint64 { // Router implementation for GameRouter_Gm_SpawnGmEnemyAsync return 0 } func GameRouter_Gm_GmTeleportXYZ(ctx context.Context, conn any, msg any) any { // Router implementation for GameRouter_Gm_GmTeleportXYZ var zero any; return zero }