public bool ConsumeAndFinish() { if (completed) { return(true); } CheckQuestConditions(); bool x = true; foreach (var s in stepsFinished) { if (!s) { x = false; } } if (!x) { return(false); } else { foreach (var sc in conditions) { switch (sc.type) { //no gears //no crews // no shuttles case ConditionType.ResourceCountCheck: { colony.storage.GetResources(sc.index, sc.value); break; } case ConditionType.MoneyCheck: { colony.GetEnergyCrystals(sc.value); break; } case ConditionType.FreeWorkersCheck: { colony.ConsumeWorkers(sc.index); break; } case ConditionType.StoredEnergyCondition: { colony.TryGetEnergy(sc.value); break; } } } MakeQuestCompleted(); StopQuest(true); return(true); } }