do attract sequence bullshit

This commit is contained in:
Tau
2019-11-06 17:28:29 -05:00
parent d14aea2a4a
commit 3c4087a35c
15 changed files with 119 additions and 0 deletions
+5
View File
@@ -12,6 +12,7 @@ import { loadRewardTable } from "./loadRewardTable";
import { loadServerList } from "./loadServerList";
import { loadStocker } from "./loadStocker";
import { loadTeam } from "./loadTeam";
import { loadTeamRanking, loadTeamRanking2 } from "./loadTeamRanking";
import { lockProfile } from "./lockProfile";
import { saveExpedition } from "./saveExpedition";
import { saveProfile } from "./saveProfile";
@@ -22,6 +23,7 @@ import { updateProvisionalStoreRank } from "./updateProvisionalStoreRank";
import { updateStoryClearNum } from "./updateStoryClearNum";
import { RequestCode } from "../defs";
import { Request } from "../request";
import { loadTopTen } from "./loadTopTen";
export type ReaderFn = ((buf: Buffer) => Request) & {
msgCode: RequestCode;
@@ -42,6 +44,9 @@ const funcList: ReaderFn[] = [
loadServerList,
loadStocker,
loadTeam,
loadTeamRanking,
loadTeamRanking2,
loadTopTen,
lockProfile,
saveExpedition,
saveProfile,
+22
View File
@@ -0,0 +1,22 @@
import { RequestCode } from "../defs";
import { LoadTeamRankingRequest } from "../request/loadTeamRanking";
loadTeamRanking.msgCode = 0x00b9 as RequestCode;
loadTeamRanking.msgLen = 0x0010;
export function loadTeamRanking(buf: Buffer): LoadTeamRankingRequest {
return {
type: "load_team_ranking_req",
};
}
// not sure what the difference is...
loadTeamRanking2.msgCode = 0x00bb as RequestCode;
loadTeamRanking2.msgLen = 0x0010;
export function loadTeamRanking2(buf: Buffer): LoadTeamRankingRequest {
return {
type: "load_team_ranking_req",
};
}
+11
View File
@@ -0,0 +1,11 @@
import { RequestCode } from "../defs";
import { LoadTopTenRequest } from "../request/loadTopTen";
loadTopTen.msgCode = 0x00b5 as RequestCode;
loadTopTen.msgLen = 0x00e0;
export function loadTopTen(buf: Buffer): LoadTopTenRequest {
return {
type: "load_top_ten",
};
}
+8
View File
@@ -14,11 +14,13 @@ import { loadProfile2 } from "./loadProfile2";
import { loadRewardTable } from "./loadRewardTable";
import { loadServerList } from "./loadServerList";
import { loadStocker } from "./loadStocker";
import { loadTeamRanking } from "./loadTeamRanking";
import { saveExpedition } from "./saveExpedition";
import { saveTopic } from "./saveTopic";
import { updateProvisionalStoreRank } from "./updateProvisionalStoreRank";
import { updateStoryClearNum } from "./updateStoryClearNum";
import { Response } from "../response";
import { loadTopTen } from "./loadTopTen";
function encode(res: Response): Buffer {
switch (res.type) {
@@ -61,6 +63,12 @@ function encode(res: Response): Buffer {
case "load_team_res":
return _team(res);
case "load_team_ranking_res":
return loadTeamRanking(res);
case "load_top_ten_res":
return loadTopTen(res);
case "lock_profile_res":
return lockProfile(res);
+10
View File
@@ -0,0 +1,10 @@
import { LoadTeamRankingResponse } from "../response/loadTeamRanking";
export function loadTeamRanking(res: LoadTeamRankingResponse): Buffer {
const buf = Buffer.alloc(0x0ba0);
buf.writeUInt16LE(0x00ba, 0x0000);
// Row stride is 0x94
return buf;
}
+10
View File
@@ -0,0 +1,10 @@
import { LoadTopTenResponse } from "../response/loadTopTen";
export function loadTopTen(res: LoadTopTenResponse): Buffer {
const buf = Buffer.alloc(0x1720);
buf.writeUInt16LE(0x00b6, 0x0000);
// in awe of the size of this lad too
return buf;
}
+8
View File
@@ -9,6 +9,8 @@ import { loadProfile } from "./loadProfile";
import { loadReward as loadRewardTable } from "./loadRewardTable";
import { loadServerList } from "./loadServerList";
import { loadStocker } from "./loadStocker";
import { loadTeamRanking } from "./loadTeamRanking";
import { loadTopTen } from "./loadTopTen";
import { lockProfile } from "./lockProfile";
import { saveExpedition } from "./saveExpedition";
import { saveProfile } from "./saveProfile";
@@ -59,9 +61,15 @@ export function dispatch(w: World, req: Request): Response {
case "load_team_req":
return _team(w, req);
case "load_top_ten_req":
return loadTopTen(w, req);
case "lock_profile_req":
return lockProfile(w, req);
case "load_team_ranking_req":
return loadTeamRanking(w, req);
case "save_expedition_req":
return saveExpedition(w, req);
+12
View File
@@ -0,0 +1,12 @@
import { LoadTeamRankingRequest } from "../request/loadTeamRanking";
import { LoadTeamRankingResponse } from "../response/loadTeamRanking";
import { World } from "../world";
export function loadTeamRanking(
w: World,
req: LoadTeamRankingRequest
): LoadTeamRankingResponse {
return {
type: "load_team_ranking_res",
};
}
+12
View File
@@ -0,0 +1,12 @@
import { LoadTopTenRequest } from "../request/loadTopTen";
import { LoadTopTenResponse } from "../response/loadTopTen";
import { World } from "../world";
export function loadTopTen(
w: World,
req: LoadTopTenRequest
): LoadTopTenResponse {
return {
type: "load_top_ten_res",
};
}
+4
View File
@@ -11,6 +11,8 @@ import { LoadRewardTableRequest } from "./loadRewardTable";
import { LoadServerListRequest } from "./loadServerList";
import { LoadStockerRequest } from "./loadStocker";
import { LoadTeamRequest } from "./loadTeam";
import { LoadTeamRankingRequest } from "./loadTeamRanking";
import { LoadTopTenRequest } from "./loadTopTen";
import { LockAccountRequest } from "./lockProfile";
import { SaveExpeditionRequest } from "./saveExpedition";
import { UpdateProvisionalStoreRankRequest } from "./updateProvisionalStoreRank";
@@ -32,6 +34,8 @@ export type Request =
| LoadServerListRequest
| LoadStockerRequest
| LoadTeamRequest
| LoadTeamRankingRequest
| LoadTopTenRequest
| LockAccountRequest
| SaveExpeditionRequest
| SaveProfileRequest
+3
View File
@@ -0,0 +1,3 @@
export interface LoadTeamRankingRequest {
type: "load_team_ranking_req";
}
+3
View File
@@ -0,0 +1,3 @@
export interface LoadTopTenRequest {
type: "load_top_ten_req";
}
+4
View File
@@ -11,6 +11,8 @@ import { LoadRewardTableResponse } from "./loadRewardTable";
import { LoadServerListResponse } from "./loadServerList";
import { LoadStockerResponse } from "./loadStocker";
import { LoadTeamResponse } from "./loadTeam";
import { LoadTeamRankingResponse } from "./loadTeamRanking";
import { LoadTopTenResponse } from "./loadTopTen";
import { LockProfileResponse } from "./lockProfile";
import { UpdateProvisionalStoreRankResponse } from "./updateProvisionalStoreRank";
import { UpdateStoryClearNumResponse } from "./updateStoryClearNum";
@@ -33,7 +35,9 @@ export type Response =
| LoadServerListResponse
| LoadStockerResponse
| LoadTeamResponse
| LoadTeamRankingResponse
| LockProfileResponse
| LoadTopTenResponse
| UpdateProvisionalStoreRankResponse
| UpdateStoryClearNumResponse
| SaveExpeditionResponse
+4
View File
@@ -0,0 +1,4 @@
export interface LoadTeamRankingResponse {
type: "load_team_ranking_res";
// TODO
}
+3
View File
@@ -0,0 +1,3 @@
export interface LoadTopTenResponse {
type: "load_top_ten_res";
}