Save scav quests into scav profile when accepting them
This commit is contained in:
parent
650a3173c8
commit
99cb77d3cf
@ -326,12 +326,11 @@ export class QuestController
|
|||||||
{
|
{
|
||||||
const acceptQuestResponse = this.eventOutputHolder.getOutput(sessionID);
|
const acceptQuestResponse = this.eventOutputHolder.getOutput(sessionID);
|
||||||
|
|
||||||
const state = QuestStatus.Started;
|
const desiredQuestState = QuestStatus.Started;
|
||||||
const newQuest = this.questHelper.getQuestReadyForProfile(pmcData, state, acceptedQuest);
|
const newQuest = this.questHelper.getQuestReadyForProfile(pmcData, desiredQuestState, acceptedQuest);
|
||||||
pmcData.Quests.push(newQuest);
|
pmcData.Quests.push(newQuest);
|
||||||
|
|
||||||
const repeatableQuestProfile = this.getRepeatableQuestFromProfile(pmcData, acceptedQuest);
|
const repeatableQuestProfile = this.getRepeatableQuestFromProfile(pmcData, acceptedQuest);
|
||||||
|
|
||||||
if (!repeatableQuestProfile)
|
if (!repeatableQuestProfile)
|
||||||
{
|
{
|
||||||
this.logger.error(this.localisationService.getText("repeatable-accepted_repeatable_quest_not_found_in_active_quests", acceptedQuest.qid));
|
this.logger.error(this.localisationService.getText("repeatable-accepted_repeatable_quest_not_found_in_active_quests", acceptedQuest.qid));
|
||||||
@ -339,6 +338,18 @@ export class QuestController
|
|||||||
throw new Error(this.localisationService.getText("repeatable-unable_to_accept_quest_see_log"));
|
throw new Error(this.localisationService.getText("repeatable-unable_to_accept_quest_see_log"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Scav quests need to be added to scav profile
|
||||||
|
if (repeatableQuestProfile.side === "Scav")
|
||||||
|
{
|
||||||
|
const fullProfile = this.profileHelper.getFullProfile(sessionID);
|
||||||
|
if (!fullProfile.characters.scav.Quests)
|
||||||
|
{
|
||||||
|
fullProfile.characters.scav.Quests = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
fullProfile.characters.scav.Quests.push(newQuest);
|
||||||
|
}
|
||||||
|
|
||||||
const locale = this.localeService.getLocaleDb();
|
const locale = this.localeService.getLocaleDb();
|
||||||
const questStartedMessageKey = this.questHelper.getMessageIdForQuestStart(repeatableQuestProfile.startedMessageText, repeatableQuestProfile.description);
|
const questStartedMessageKey = this.questHelper.getMessageIdForQuestStart(repeatableQuestProfile.startedMessageText, repeatableQuestProfile.description);
|
||||||
|
|
||||||
@ -361,7 +372,7 @@ export class QuestController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const questRewards = this.questHelper.getQuestRewardItems(<IQuest><unknown>repeatableQuestProfile, state);
|
const questRewards = this.questHelper.getQuestRewardItems(<IQuest><unknown>repeatableQuestProfile, desiredQuestState);
|
||||||
|
|
||||||
this.mailSendService.sendLocalisedNpcMessageToPlayer(
|
this.mailSendService.sendLocalisedNpcMessageToPlayer(
|
||||||
sessionID,
|
sessionID,
|
||||||
@ -372,6 +383,7 @@ export class QuestController
|
|||||||
this.timeUtil.getHoursAsSeconds(this.questConfig.redeemTime));
|
this.timeUtil.getHoursAsSeconds(this.questConfig.redeemTime));
|
||||||
|
|
||||||
acceptQuestResponse.profileChanges[sessionID].quests = this.questHelper.getNewlyAccessibleQuestsWhenStartingQuest(acceptedQuest.qid, sessionID);
|
acceptQuestResponse.profileChanges[sessionID].quests = this.questHelper.getNewlyAccessibleQuestsWhenStartingQuest(acceptedQuest.qid, sessionID);
|
||||||
|
|
||||||
return acceptQuestResponse;
|
return acceptQuestResponse;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -133,6 +133,7 @@ export class RepeatableQuestController
|
|||||||
// introduce a dynamic quest pool to avoid duplicates
|
// introduce a dynamic quest pool to avoid duplicates
|
||||||
const questTypePool = this.generateQuestPool(repeatableConfig, pmcData.Info.Level);
|
const questTypePool = this.generateQuestPool(repeatableConfig, pmcData.Info.Level);
|
||||||
|
|
||||||
|
// Add daily quests
|
||||||
for (let i = 0; i < repeatableConfig.numQuests; i++)
|
for (let i = 0; i < repeatableConfig.numQuests; i++)
|
||||||
{
|
{
|
||||||
let quest = null;
|
let quest = null;
|
||||||
|
Loading…
Reference in New Issue
Block a user