private void Start() { mascotNames = new List <string>(); mascotService = Service.Get <MascotService>(); setTitleText(); setLevelText(); }
public void Awake() { dispatcher = Service.Get <EventDispatcher>(); mascotService = Service.Get <MascotService>(); updateTimer = new Timer(1f, repeat: true, delegate { onTimerTick(); }); }
private bool isChapterAvailable(int chapterNum) { bool result = true; bool flag = false; MascotService mascotService = Service.Get <MascotService>(); Mascot mascot = mascotService.GetMascot(mascotData.name); for (int i = 0; i < mascot.KnownQuests.Length; i++) { QuestDefinition questDefinition = mascot.KnownQuests[i]; if (questDefinition.ChapterNumber != chapterNum || questDefinition.QuestNumber != 1) { continue; } if (questDefinition.CompletedQuestRequirement.Length == 0) { flag = true; continue; } for (int j = 0; j < questDefinition.CompletedQuestRequirement.Length; j++) { QuestDefinition questDefinition2 = questDefinition.CompletedQuestRequirement[j]; mascot = mascotService.GetMascot(questDefinition2.Mascot.name); foreach (Quest availableQuest in mascot.AvailableQuests) { if (availableQuest.Definition.name == questDefinition2.name) { flag = true; if (availableQuest.TimesCompleted == 0) { result = false; break; } } } } } if (!flag) { result = false; } return(result); }
private static List <DRewardPopupScreen> buildQuestsScreen(DRewardPopup popupData, bool checkForNonMemberScreens) { DRewardPopupScreenQuests dRewardPopupScreenQuests = new DRewardPopupScreenQuests(); List <QuestDefinition> list = new List <QuestDefinition>(); bool isRewardsAllNonMember = false; if (popupData.PopupType == DRewardPopup.RewardPopupType.levelUp) { MascotService mascotService = Service.Get <MascotService>(); Mascot mascot = mascotService.GetMascot(popupData.MascotName); int num = Service.Get <ProgressionService>().MascotLevel(mascot.Name); if (popupData.MascotName == "AuntArctic" && num == 1) { foreach (Mascot mascot2 in mascotService.Mascots) { if (!mascot2.IsQuestGiver || !(mascot2.Name != "AuntArctic")) { continue; } for (int i = 0; i < mascot2.KnownQuests.Length; i++) { QuestDefinition questDefinition = mascot2.KnownQuests[i]; if (questDefinition.QuestNumber == 1 && questDefinition.ChapterNumber == 1) { list.Add(questDefinition); } if (list.Count >= 2) { break; } } } } if (list.Count < 2) { for (int i = 0; i < mascot.KnownQuests.Length; i++) { QuestDefinition questDefinition = mascot.KnownQuests[i]; if (!questDefinition.Prototyped && questDefinition.LevelRequirement == num) { list.Add(questDefinition); } if (list.Count >= 2) { break; } } } } List <DRewardPopupScreen> list2 = new List <DRewardPopupScreen>(); if (list.Count > 0) { dRewardPopupScreenQuests.quests = list.ToArray(); if (checkForNonMemberScreens) { for (int i = 0; i < dRewardPopupScreenQuests.quests.Length; i++) { if (dRewardPopupScreenQuests.quests[i].isMemberOnly) { isRewardsAllNonMember = false; break; } isRewardsAllNonMember = true; } } dRewardPopupScreenQuests.IsRewardsAllNonMember = isRewardsAllNonMember; list2.Add(dRewardPopupScreenQuests); } return(list2); }
public new void Start() { base.Start(); mascotService = Service.Get <MascotService>(); }