Esempio n. 1
0
        private static void DisableStoryDirectTimeoutIfNeeded(QuestBase quest)
        {
            if (!IsFirstStoryPhase() || !quest.IsSpecialQuest || !quest.IsOngoing)
            {
                return;
            }

            CampaignTime newDueTime = CampaignTime.Never;

            if (quest.QuestDueTime != newDueTime)
            {
                quest.ChangeQuestDueTime(newDueTime);
                ShowNotification(
                    new TextObject("{=!}Quest time remaining was updated."),
                    "event:/ui/notification/quest_update");
            }
        }
        private void SetStoryVisibleTimeoutIfNeeded(QuestBase quest)
        {
            if (!IsFirstStoryPhase() || !quest.IsSpecialQuest || !quest.IsOngoing)
            {
                return;
            }

            // set visible timeout to be when vanilla would have (silently) timed
            // out the quest,  minus a day to make very sure the quest doesn't
            // somehow trigger vanilla's silent timeout too early.
            CampaignTime newDueTime = FirstPhase.Instance.FirstPhaseStartTime
                                      + CampaignTime.Years(FirstPhaseTimeLimitInYears)
                                      - CampaignTime.Days(1);

            if (quest.QuestDueTime != newDueTime)
            {
                quest.ChangeQuestDueTime(newDueTime);
                ShowNotification(new TextObject("{=QuestTimeRemainingUpdated}Quest time remaining was updated."), "event:/ui/notification/quest_update");
            }
        }