返回提交历史
Modified
src/services/guildService.ts
+8
-2
XFEstudio/SpaceNinjaServer
fix: use 1-based indexing for clan ranks for versions before U24 (#2857)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2857 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
c535044a
代码差异
1 个文件
+8
-2
@@ -22,7 +22,7 @@ import type {
22
22
ITechProjectDatabase
23
23
} from "../types/guildTypes.ts";
24
24
import { GuildPermission } from "../types/guildTypes.ts";
25
import { toMongoDate, toOid, toOid2 } from "../helpers/inventoryHelpers.ts";
25
import { toMongoDate, toOid, toOid2, version_compare } from "../helpers/inventoryHelpers.ts";
26
26
import type { Types } from "mongoose";
27
27
import type { IDojoBuild, IDojoResearch } from "warframe-public-export-plus";
28
28
import { ExportDojoRecipes, ExportResources } from "warframe-public-export-plus";
@@ -68,9 +68,15 @@ export const getGuildClient = async (
68
68
let missingEntry = true;
69
69
const dataFillInPromises: Promise<void>[] = [];
70
70
for (const guildMember of guildMembers) {
71
// Use 1-based indexing for clan ranks for versions before U24. In my testing, 2018.06.14.23.21 and below used 1-based indexing and 2019.04.04.21.31 and above used 0-based indexing. I didn't narrow it down further, but I think U24 is a good spot for them to have changed it.
72
let rankBase = 0;
73
if (account.BuildLabel && version_compare(account.BuildLabel, "2018.11.08.14.45") < 0) {
74
rankBase += 1;
75
}
76
71
77
const member: IGuildMemberClient = {
72
78
_id: toOid2(guildMember.accountId, account.BuildLabel),
73
Rank: guildMember.rank,
79
Rank: guildMember.rank + rankBase,
74
80
Status: guildMember.status,
75
81
Note: guildMember.RequestMsg,
76
82
RequestExpiry: guildMember.RequestExpiry ? toMongoDate(guildMember.RequestExpiry) : undefined