*cries in spanish*

This commit is contained in:
Tau 2019-05-07 21:55:07 -04:00
parent 5d8e135c07
commit 6be956ad3c
6 changed files with 57 additions and 10 deletions

View File

@ -10,7 +10,7 @@ import { loadConfig } from "./loadConfig";
import { loadConfig2 } from "./loadConfig2";
import { loadEventInfo } from "./loadEventInfo";
import { loadGarage } from "./loadGarage";
import { loadGeneralReward } from "./loadGeneralReward";
import { loadGeneralReward1, loadGeneralReward2 } from "./loadGeneralReward";
import { loadGhost } from "./loadGhost";
import { loadProfile2, loadProfile3 } from "./loadProfile";
import { loadRewardTable } from "./loadRewardTable";
@ -58,7 +58,8 @@ const funcList: ReaderFn[] = [
loadConfig2,
loadEventInfo,
loadGarage,
loadGeneralReward,
loadGeneralReward1,
loadGeneralReward2,
loadGhost,
loadProfile2,
loadProfile3,

View File

@ -1,14 +1,29 @@
import { RequestCode } from "./_defs";
import { ExtId } from "../model/base";
import { Profile } from "../model/profile";
import { LoadGeneralRewardRequest } from "../request/loadGeneralReward";
import {
LoadGeneralRewardRequest1,
LoadGeneralRewardRequest2,
} from "../request/loadGeneralReward";
loadGeneralReward.msgCode = 0x009c as RequestCode;
loadGeneralReward.msgLen = 0x0010;
loadGeneralReward1.msgCode = 0x009c as RequestCode;
loadGeneralReward1.msgLen = 0x0010;
export function loadGeneralReward(buf: Buffer): LoadGeneralRewardRequest {
export function loadGeneralReward1(buf: Buffer): LoadGeneralRewardRequest1 {
return {
type: "load_general_reward_req",
format: 1,
profileId: buf.readUInt32LE(0x0004) as ExtId<Profile>,
};
}
loadGeneralReward2.msgCode = 0x013b as RequestCode;
loadGeneralReward2.msgLen = 0x0010;
export function loadGeneralReward2(buf: Buffer): LoadGeneralRewardRequest2 {
return {
type: "load_general_reward_req",
format: 2,
profileId: buf.readUInt32LE(0x0004) as ExtId<Profile>,
};
}

View File

@ -1,12 +1,11 @@
import { LoadGeneralRewardRequest } from "../request/loadGeneralReward";
import { GenericResponse } from "../response/generic";
import { LoadGeneralRewardResponse } from "../response/loadGeneralReward";
import { Repositories } from "../repo";
export function loadGeneralReward(
w: Repositories,
req: LoadGeneralRewardRequest
): LoadGeneralRewardResponse | GenericResponse {
// A non-generic response is also accepted, but why bother
): GenericResponse {
// A version-specific response is also accepted. Format TBD.
return { type: "generic_res" };
}

View File

@ -1,7 +1,21 @@
import { ExtId } from "../model/base";
import { Profile } from "../model/profile";
export interface LoadGeneralRewardRequest {
interface LoadGeneralRewardRequestBase {
type: "load_general_reward_req";
profileId: ExtId<Profile>;
}
export interface LoadGeneralRewardRequest1
extends LoadGeneralRewardRequestBase {
format: 1;
}
export interface LoadGeneralRewardRequest2
extends LoadGeneralRewardRequestBase {
format: 2;
}
export type LoadGeneralRewardRequest =
| LoadGeneralRewardRequest1
| LoadGeneralRewardRequest2;

View File

@ -0,0 +1,13 @@
export interface LoadGeneralRewardItem {
field_04: string; // 40 chars max
field_2C: number; // payload?
field_38: number; // u8
field_39: number; // u8
field_3C: number[]; // u32 * 4
}
export interface LoadGeneralRewardResponse1 {
type: "load_general_reward_res";
format: 1;
items: LoadGeneralRewardItem[];
}

View File

@ -0,0 +1,5 @@
export interface LoadGeneralRewardResponse2 {
type: "load_general_reward_res";
format: 2;
// TBD
}