24 lines
1.5 KiB
Go
24 lines
1.5 KiB
Go
package methods
|
||
|
||
//
|
||
// 车辆改装店(ApplyCar / RepairShop)进场事务所用的三个 wire 契约 —— 2026-09-25 从
|
||
// 俄语上游 donor 的 repair-shop.zip 移植,并用本地 Lua 副本逐字节复核:
|
||
// · C2S AskTeleportToParkingWaypoint(67618512) / AskTeleportToLeavingWaypoint(67349910)
|
||
// —— ClientToGameSceneDelegate.lua:3568/2006 的 Serializer 只有一句
|
||
// WritePrimitive(writer, carshopid, writer.WriteUInt32, 0) ⇒ 顶层<u>没有</u> complex 标记,
|
||
// 就是一个裸 u32,所以这边必须是 Inline = true 的单字段契约(多写 FF 会被当成坏包)。
|
||
// · S2C SyncTeleportVehicle(68088911) —— RPCDeserializeAuto.lua:5203:
|
||
// ReadUInt64 + ReadStruct(UXVector3)×2 + ReadSingle + ReadBoolean + ReadInt32,
|
||
// 同样是 inline(无 complex 标记)。
|
||
// 另外:68681875 SyncStartSummonVehicle 是 CSharpOnly(RPCDeserializeAuto.lua:1131),
|
||
// Lua 侧根本没有 reader ⇒ 由客户端原生 C# 接收;它的载荷与 SummonVehicleResult 完全相同
|
||
// (u64 entity + u64 token),故复用那份契约,不另建类。
|
||
//
|
||
// AskVehicleToParkingWaypoint(67618512) 的入参:CarShopConfig.Id(1=西门 / 2=海边)。
|
||
//
|
||
// AskTeleportToLeavingWaypoint(67349910) 的入参:CarShopConfig.Id。
|
||
// ok 回执会让客户端重置店内状态(OnLeaveRepairShopComplete / ParkingVehicleId=0),
|
||
// 真正的位移靠服务端推 SyncTeleport。
|
||
//
|
||
// S2C SyncTeleportVehicle(68088911):把服务端生成/召唤的车搬到指定坐标。
|