public static void AddOrReplaceCategory(FarmAnimalCategory category) { var animals = ReadCache(); var index = animals.Categories.FindIndex(o => o.Category == category.Category); if (index == -1) { animals.Categories.Add(category); } else { animals.Categories[index] = category; } Write(animals); }
protected string DescribeFarmAnimalCategory(FarmAnimalCategory animal) { var str1 = "" + animal.Category + "\n" + "- Buildings: " + string.Join(",", animal.Buildings) + "\n"; var str2 = (!animal.CanBePurchased() ? str1 + "- AnimalShop: null\n" : str1 + "- AnimalShop:\n" + "-- Name: " + animal.AnimalShop.Name + "\n" + "-- Description: " + animal.AnimalShop.Description + "\n" + "-- Icon: " + animal.AnimalShop.Icon + "\n") + "- Types:\n"; foreach (var type in animal.Types) { str2 = str2 + "-- Type: " + type.Type + "\n"; str2 = str2 + "--- Data: " + (type.Data ?? "null") + "\n"; var flag1 = type.HasAdultSprite(); var flag2 = type.HasBabySprite(); var flag3 = type.HasReadyForHarvestSprite(); if (flag1 | flag2 | flag3) { str2 += "--- Sprites:\n"; str2 += flag1 ? "---- Adult: " + (type.Sprites.Adult ?? "null") + "\n" : ""; str2 += flag2 ? "---- Baby: " + (type.Sprites.Baby ?? "null") + "\n" : ""; str2 += flag3 ? "---- ReadyForHarvest: " + (type.Sprites.ReadyForHarvest ?? "null") + "\n" : ""; } if (type.HasLocalization()) { str2 += "--- Localization:\n"; foreach (var keyValuePair in type.Localization) { str2 = str2 + "---- " + keyValuePair.Key + ": " + string.Join(",", keyValuePair.Value) + "\n"; } } else { str2 += "--- Localization: null\n"; } } return(str2); }