idz: Deal with multiple load2on2 formats

This commit is contained in:
Tau
2019-11-06 17:28:30 -05:00
parent dfdd775370
commit 2392aaa205
6 changed files with 74 additions and 10 deletions
+18 -4
View File
@@ -2,14 +2,28 @@ import { RequestCode } from "./_defs";
import { ExtId } from "../model/base";
import { Profile } from "../model/profile";
import { Team } from "../model/team";
import { Load2on2Request } from "../request/load2on2";
import { Load2on2Request1, Load2on2Request2 } from "../request/load2on2";
load2on2.msgCode = 0x00b0 as RequestCode;
load2on2.msgLen = 0x0010;
load2on2_v1.msgCode = 0x00b0 as RequestCode;
load2on2_v1.msgLen = 0x0010;
export function load2on2(buf: Buffer): Load2on2Request {
export function load2on2_v1(buf: Buffer): Load2on2Request1 {
return {
type: "load_2on2_req",
format: 1,
field_0002: buf.readUInt16LE(0x0002),
profileId: buf.readUInt32LE(0x0004) as ExtId<Profile>,
teamId: buf.readUInt32LE(0x0008) as ExtId<Team>,
};
}
load2on2_v2.msgCode = 0x0132 as RequestCode;
load2on2_v2.msgLen = 0x0010;
export function load2on2_v2(buf: Buffer): Load2on2Request2 {
return {
type: "load_2on2_req",
format: 2,
field_0002: buf.readUInt16LE(0x0002),
profileId: buf.readUInt32LE(0x0004) as ExtId<Profile>,
teamId: buf.readUInt32LE(0x0008) as ExtId<Team>,