public override void LoadProgress() {
var entry = KunosCareerProgress.Instance.Entries.GetValueOrDefault(KunosCareerId);
if (entry == null) {
TakenPlace = KunosCareerType == KunosCareerObjectType.SingleEvents ? PlaceConditions.UnremarkablePlace : 0;
IsAvailable = KunosCareerType == KunosCareerObjectType.SingleEvents || EventNumber == 0;
IsPassed = false;
return;
}
var takenPlace = entry.EventsResults.GetValueOrDefault(EventNumber);
if (KunosCareerType == KunosCareerObjectType.SingleEvents) {
if (takenPlace > 0 && takenPlace < 4) {
takenPlace = 4 - takenPlace;
} else {
takenPlace = PlaceConditions.UnremarkablePlace;
}
}
TakenPlace = takenPlace;
if (KunosCareerType == KunosCareerObjectType.SingleEvents) {
IsAvailable = true;
IsPassed = false;
} else {
IsAvailable = TakenPlace == 0 && entry.SelectedEvent == EventNumber;
IsPassed = TakenPlace != 0;
}
}