Skip to content

Commit adf978d

Browse files
committed
feat: implement _crcPreRaceData handler and update message handlers
1 parent 679e7de commit adf978d

File tree

4 files changed

+37
-2
lines changed

4 files changed

+37
-2
lines changed

.husky/commit-msg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
pnpm dlx commitlint --edit $1
1+
npx commitlint --edit $1

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
},
1212
"scripts": {
1313
"clean": "rm -rf **/node_modules node_modules",
14-
"start": "make start",
14+
"start": "npx tsx --import ./instrument.mjs --openssl-legacy-provider --env-file=.env src/nps_server.ts",
1515
"check:all": "pnpm run -r --stream check",
1616
"lint:all": "pnpm run -r --stream lint",
1717
"format:all": "pnpm run -r --stream format",
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import { OldServerMessage } from "rusty-motors-shared";
2+
import { GenericReplyMessage } from "./GenericReplyMessage.js";
3+
import type { MessageHandlerArgs, MessageHandlerResult } from "./handlers.js";
4+
import { getServerLogger } from "rusty-motors-shared";
5+
6+
const defaultLogger = getServerLogger("handlers/trackingPing");
7+
8+
/**
9+
* @param {MessageHandlerArgs} args
10+
* @return {Promise<MessageHandlerResult>}
11+
*/
12+
export async function _crcPreRaceData({
13+
connectionId,
14+
packet,
15+
log = defaultLogger,
16+
}: MessageHandlerArgs): Promise<MessageHandlerResult> {
17+
// Create new response packet
18+
const pReply = new GenericReplyMessage();
19+
pReply.msgNo = 101;
20+
pReply.msgReply = 455;
21+
const rPacket = new OldServerMessage();
22+
rPacket._header.sequence = packet.sequenceNumber;
23+
rPacket._header.flags = 8;
24+
25+
rPacket.setBuffer(pReply.serialize());
26+
27+
log.debug(`TrackingPing: ${rPacket.toString()}`);
28+
29+
return { connectionId, messages: [rPacket] };
30+
}

packages/transactions/src/handlers.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import { login } from "./login.js";
3131
import { trackingPing } from "./trackingPing.js";
3232
import { _buyCarFromDealer } from "./_buyCarFromDealer.js";
3333
import { IServerMessage } from "rusty-motors-shared-packets";
34+
import { _crcPreRaceData } from "./_crcPreRaceData.js";
3435

3536
export interface MessageHandlerArgs {
3637
connectionId: string;
@@ -112,5 +113,9 @@ export const messageHandlers: MessageHandler[] = [
112113
{
113114
name: "MC_PURCHASE_STOCK_CAR",
114115
handler: _buyCarFromDealer,
116+
},
117+
{
118+
name: "MC_CRC_PRE_RACE_DATA",
119+
handler: _crcPreRaceData
115120
}
116121
];

0 commit comments

Comments
 (0)