XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFESpaceNinjaServer

feat: ascension ceremony inbox message (#1284)

Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/1284

5a56c2e9
Sainan <sainan@calamity.inc>
提交于

代码差异

1 个文件 +33 -1
Modified src/controllers/api/contributeGuildClassController.ts +33 -1
@@ -1,7 +1,8 @@
1 1 import { toMongoDate } from "@/src/helpers/inventoryHelpers";
2 2 import { getJSONfromString } from "@/src/helpers/stringHelpers";
3 import { Guild } from "@/src/models/guildModel";
3 import { Guild, GuildMember } from "@/src/models/guildModel";
4 4 import { config } from "@/src/services/configService";
5 import { createMessage } from "@/src/services/inboxService";
5 6 import { getInventory } from "@/src/services/inventoryService";
6 7 import { getAccountIdForRequest } from "@/src/services/loginService";
7 8 import { RequestHandler } from "express";
@@ -35,6 +36,37 @@ export const contributeGuildClassController: RequestHandler = async (req, res) =
35 36 guild.Class = guild.CeremonyClass!;
36 37 guild.CeremonyClass = undefined;
37 38 guild.CeremonyResetDate = new Date(Date.now() + (config.fastClanAscension ? 5_000 : 72 * 3600_000));
39 if (!config.fastClanAscension) {
40 // Send message to all active guild members
41 const members = await GuildMember.find({ guildId: payload.GuildId, status: 0 }, "accountId");
42 for (const member of members) {
43 // somewhat unfaithful as on live the "msg" is not a loctag, but since we don't have the string, we'll let the client fill it in with "arg".
44 await createMessage(member.accountId.toString(), [
45 {
46 sndr: guild.Name,
47 msg: "/Lotus/Language/Clan/Clan_AscensionCeremonyInProgressDetails",
48 arg: [
49 {
50 Key: "RESETDATE",
51 Tag:
52 guild.CeremonyResetDate.getUTCMonth() +
53 "/" +
54 guild.CeremonyResetDate.getUTCDate() +
55 "/" +
56 (guild.CeremonyResetDate.getUTCFullYear() % 100) +
57 " " +
58 guild.CeremonyResetDate.getUTCHours().toString().padStart(2, "0") +
59 ":" +
60 guild.CeremonyResetDate.getUTCMinutes().toString().padStart(2, "0")
61 }
62 ],
63 sub: "/Lotus/Language/Clan/Clan_AscensionCeremonyInProgress",
64 icon: "/Lotus/Interface/Graphics/ClanTileImages/ClanEnterDojo.png",
65 highPriority: true
66 }
67 ]);
68 }
69 }
38 70 }
39 71
40 72 await guild.save();