/// <summary> /// Attempt to start the quest. If successful, adds the quest to the list of quests. /// </summary> public void TryStart() { if (StartConditions != null) { if (StartConditions.All(cond => cond.CheckSatisfied())) { Program.Renderer.Player.ActiveQuests.Add((ID, CurrentStage)); Program.Renderer.AddCheck(Stages[CurrentStage]); } } }
public bool StartConditionsMet(PropertyInfo actualProperty, object actualObj, object expectedObj , PropertyInfo expectedProperty = null) { return(StartConditions.All(x => x.CanStrategyStart(actualProperty, actualObj, expectedObj))); }