From ee46d1e6b88eaebc43d8df44cab4d0fd21c0b654 Mon Sep 17 00:00:00 2001 From: Dev Date: Mon, 7 Aug 2023 22:40:06 +0100 Subject: [PATCH] Extend sendLocalisedNpcMessageToPlayer() to allow for custom systemData --- project/src/services/MailSendService.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/project/src/services/MailSendService.ts b/project/src/services/MailSendService.ts index 6926215e..b71ecf13 100644 --- a/project/src/services/MailSendService.ts +++ b/project/src/services/MailSendService.ts @@ -79,7 +79,7 @@ export class MailSendService * @param items Optional items to send to player * @param maxStorageTimeSeconds Optional time to collect items before they expire */ - public sendLocalisedNpcMessageToPlayer(playerId: string, sender: Traders, messageType: MessageType, messageLocaleId: string, items: Item[] = [], maxStorageTimeSeconds = null): void + public sendLocalisedNpcMessageToPlayer(playerId: string, sender: Traders, messageType: MessageType, messageLocaleId: string, items: Item[] = [], maxStorageTimeSeconds = null, systemData = null): void { if (!sender) { @@ -103,6 +103,11 @@ export class MailSendService details.itemsMaxStorageLifetimeSeconds = maxStorageTimeSeconds; } + if (systemData) + { + details.systemData = systemData; + } + this.sendMessageToPlayer(details); } @@ -248,7 +253,7 @@ export class MailSendService templateId: messageDetails.templateId, // used by traders to send localised text from database\locales\global hasRewards: false, // The default dialog message has no rewards, can be added later via addRewardItemsToMessage() rewardCollected: false, // The default dialog message has no rewards, can be added later via addRewardItemsToMessage() - systemData: messageDetails.systemData ? messageDetails.systemData : undefined, // Used by ragfair + systemData: messageDetails.systemData ? messageDetails.systemData : undefined, // Used by ragfair / localised messages that need "location" or "time" profileChangeEvents: (messageDetails.profileChangeEvents?.length === 0) ? messageDetails.profileChangeEvents : undefined // no one knows, its never been used in any dumps };