public class DialogRequirementShowBristonSpecialMissionsRebirth : BaseDialogRequirement { public override bool CheckRequirement(EntityPlayer player, EntityNPC talkingTo) { int numEntries = 0; int level = player.Progression.GetLevel(); //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement level: " + level); // SILENCER float numSilencerSchematicUnlocked = -1; if (player.Buffs.HasCustomVar("$FuriousRamsaySilencerSchematicUnlocked")) { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 1a"); numSilencerSchematicUnlocked = player.Buffs.GetCustomVar("$FuriousRamsaySilencerSchematicUnlocked"); } else { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 1b"); numSilencerSchematicUnlocked = 0; } if (numSilencerSchematicUnlocked == 0 && !HasActiveQuest(player, "quest_FuriousRamsayEventNanos") && level >= 30) { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 1c"); numEntries++; } //ZOMBIE PUTTY float numBrownPasteSchematicUnlocked = -1; if (player.Buffs.HasCustomVar("$FuriousRamsayBrownPasteSchematicUnlocked")) { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 2a"); numBrownPasteSchematicUnlocked = player.Buffs.GetCustomVar("$FuriousRamsayBrownPasteSchematicUnlocked"); } else { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 2b"); numBrownPasteSchematicUnlocked = 0; } if (numBrownPasteSchematicUnlocked == 0 && !HasActiveQuest(player, "quest_FuriousRamsayMissionBrownPaste") && level >= 20) { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 2c"); numEntries++; } // AMMO MACHINE float numAmmoMachineSchematicUnlocked = -1; if (player.Buffs.HasCustomVar("$FuriousRamsaySilencerSchematicUnlocked")) { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 3a"); numAmmoMachineSchematicUnlocked = player.Buffs.GetCustomVar("$FuriousRamsayAmmoMachineSchematicUnlocked"); } else { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 3b"); numAmmoMachineSchematicUnlocked = 0; } if (numAmmoMachineSchematicUnlocked == 0 && !HasActiveQuest(player, "quest_FuriousRamsayMissionAmmoMachine") && level >= 50) { //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement 3c"); numEntries++; } //Log.Out("ShowBristonSpecialMissionsRebirth-CheckRequirement numEntries: " + numEntries); if (numEntries > 0) { return true; } return false; } public bool HasActiveQuest(EntityPlayer player, string QuestID) { Quest newQuest = QuestClass.CreateQuest(QuestID); if (newQuest == null) { return false; } if (newQuest != null) { QuestClass questClass = newQuest.QuestClass; if (questClass != null) { for (int i = 0; i < player.QuestJournal.quests.Count; i++) { if (player.QuestJournal.quests[i].CurrentState == Quest.QuestState.InProgress) { if (player.QuestJournal.quests[i].ID.ToLower() == QuestID.ToLower()) { GameManager.ShowTooltip((EntityPlayerLocal)player, Localization.Get("ttAlreadyHaveActiveQuest")); return true; } } } } } return false; } }