forked from phenom/healer-man
Update Healer Man server
This commit is contained in:
1 parent
ab1434a3b8
commit
e284f4fc76
60 files changed
+2704
-118
No files matched your search
+22
-1
@@ -331,12 +331,33 @@ export function createGameServer(options = {}) {
|
||||
json(response, 200, dungeonRaceService.state(account));
|
||||
return;
|
||||
}
|
||||
if (url.pathname === "/api/gm/dungeon-races/combat-logs" && request.method === "GET") {
|
||||
const account = gameDatabase.authenticate(bearerToken(request));
|
||||
json(response, 200, { entries: gameDatabase.listDungeonRaceCombatLogs(account,
|
||||
Number(url.searchParams.get("limit") ?? 20)) });
|
||||
return;
|
||||
}
|
||||
const raceCombatLogMatch = /^\/api\/dungeon-races\/(race-[A-Za-z0-9-]+)\/combat-log$/.exec(url.pathname);
|
||||
if (raceCombatLogMatch && request.method === "GET") {
|
||||
const account = gameDatabase.authenticate(bearerToken(request));
|
||||
const requestedAccountId = url.searchParams.get("accountId");
|
||||
json(response, 200, gameDatabase.getDungeonRaceCombatLog(account, raceCombatLogMatch[1],
|
||||
requestedAccountId));
|
||||
return;
|
||||
}
|
||||
if (raceCombatLogMatch && request.method === "POST") {
|
||||
const account = gameDatabase.authenticate(bearerToken(request));
|
||||
const body = await readJson(request, 4 * 1024 * 1024);
|
||||
json(response, 200, gameDatabase.savePartialDungeonRaceCombatLog(raceCombatLogMatch[1],
|
||||
account.id, body?.combatLog, Date.now()));
|
||||
return;
|
||||
}
|
||||
const dungeonRaceMatch = /^\/api\/dungeon-races\/(race-[A-Za-z0-9-]+)\/(ready|finish|forfeit)$/.exec(url.pathname);
|
||||
if (dungeonRaceMatch && request.method === "POST") {
|
||||
const account = gameDatabase.authenticate(bearerToken(request));
|
||||
const [, id, action] = dungeonRaceMatch;
|
||||
json(response, 200, action === "ready" ? dungeonRaceService.ready(account, id)
|
||||
: action === "finish" ? dungeonRaceService.finish(account, id, await readJson(request, 4 * 1024))
|
||||
: action === "finish" ? dungeonRaceService.finish(account, id, await readJson(request, 4 * 1024 * 1024))
|
||||
: dungeonRaceService.leave(account, id));
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user