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: death marks (#1205)

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

651ab5f6
Sainan <sainan@calamity.inc>
提交于

代码差异

3 个文件 +21 -1
Modified src/models/inventoryModels/inventoryModel.ts +1 -1
@@ -1400,7 +1400,7 @@ const inventorySchema = new Schema<IInventoryDatabase, InventoryDocumentProps>(
1400 1400 //Discount Coupon
1401 1401 PendingCoupon: pendingCouponSchema,
1402 1402 //Like BossAladV,BossCaptainVor come for you on missions % chance
1403 DeathMarks: [String],
1403 DeathMarks: { type: [String], default: [] },
1404 1404 //Zanuka
1405 1405 Harvestable: Boolean,
1406 1406 //Grustag three
Modified src/services/missionInventoryUpdateService.ts +19 -0
@@ -294,6 +294,25 @@ export const addMissionInventoryUpdates = async (
294 294 inventory.SeasonChallengeHistory.push(...processedCompletions);
295 295 break;
296 296 }
297 case "DeathMarks": {
298 for (const deathMark of value) {
299 if (!inventory.DeathMarks.find(x => x == deathMark)) {
300 // It's a new death mark; we have to say the line.
301 await createMessage(inventory.accountOwnerId.toString(), [
302 {
303 sub: "/Lotus/Language/G1Quests/DeathMarkTitle",
304 sndr: "/Lotus/Language/G1Quests/DeathMarkSender",
305 msg: "/Lotus/Language/G1Quests/DeathMarkMessage",
306 icon: "/Lotus/Interface/Icons/Npcs/Stalker_d.png",
307 highPriority: true
308 }
309 ]);
310 // TODO: This type of inbox message seems to automatically delete itself. Figure out under which conditions.
311 }
312 }
313 inventory.DeathMarks = value;
314 break;
315 }
297 316 default:
298 317 // Equipment XP updates
299 318 if (equipmentKeys.includes(key as TEquipmentKey)) {
Modified src/types/requestTypes.ts +1 -0
@@ -107,6 +107,7 @@ export type IMissionInventoryUpdateRequest = {
107 107 DropTable: string;
108 108 DROP_MOD: number[];
109 109 }[];
110 DeathMarks?: string[];
110 111 } & {
111 112 [K in TEquipmentKey]?: IEquipmentClient[];
112 113 };