private static void AddIfMissing(ref List <ClothingPart> allParts, List <ClothingPart> initial, ClothingPartEnum missingParts) { if (allParts.FirstOrDefault((ClothingPart x) => x.Id == missingParts) == null) { ClothingPart item = initial.FirstOrDefault((ClothingPart x) => x.Id == missingParts); allParts.Add(item); } }
internal static AvatarOptions FromString(string base64String) { if (string.IsNullOrEmpty(base64String)) { Log.Error("AvatarOptions.FromString with empty value!"); return(new AvatarOptions { ClothingParts = AvatarOptions.InitialParts() }); } string[] parts = Conv.StringPartsFromBase64(base64String, "AvatarOptions"); AvatarOptions avatarOptions = new AvatarOptions(); avatarOptions.GenderChosen = Conv.getStringFromParts(parts, "a").ToLower().Equals("true"); avatarOptions.IsFemale = Conv.getStringFromParts(parts, "b").ToLower().Equals("true"); string stringFromParts = Conv.getStringFromParts(parts, "c"); string[] array = stringFromParts.Split(new char[] { '&' }); List <ClothingPart> list = new List <ClothingPart>(); string[] array2 = array; for (int i = 0; i < array2.Length; i++) { string text = array2[i]; if (!string.IsNullOrEmpty(text)) { list.Add(ClothingPart.FromString(text)); } } avatarOptions.ClothingPartsOld = list; avatarOptions.HasLongHair = Conv.getStringFromParts(parts, "d").ToLower().Equals("true"); avatarOptions.HasBoughtLongHair = Conv.getStringFromParts(parts, "e").ToLower().Equals("true"); stringFromParts = Conv.getStringFromParts(parts, "f"); array = stringFromParts.Split(new char[] { '&' }); List <ClothingPart> list2 = new List <ClothingPart>(); string[] array3 = array; for (int j = 0; j < array3.Length; j++) { string text2 = array3[j]; if (!string.IsNullOrEmpty(text2)) { list2.Add(ClothingPart.FromString(text2)); } } avatarOptions.ClothingParts = list2; AvatarOptions.CheckIfAllAdded(ref avatarOptions.ClothingParts); avatarOptions.HasBoughtHair3 = Conv.getStringFromParts(parts, "g").ToLower().Equals("true"); avatarOptions.HairStyle = Conv.getIntFromParts(parts, "h"); return(avatarOptions); }
internal static ClothingPart FromString(string base64String) { if (string.IsNullOrEmpty(base64String)) { Log.Error("ClothingPart.FromString with empty value!"); return(null); } string[] parts = Conv.StringPartsFromBase64(base64String, "ClothingPart"); ClothingPart clothingPart = new ClothingPart(); clothingPart.Id = (ClothingPartEnum)Conv.getIntFromParts(parts, "a"); clothingPart.PermanentGPCost = Conv.getDoubleFromParts(parts, "b"); clothingPart.CreationTierNeeded = Conv.getIntFromParts(parts, "c"); clothingPart.GodDefeatedTierNeeded = Conv.getIntFromParts(parts, "d"); clothingPart.IsPermanentUnlocked = Conv.getStringFromParts(parts, "e").ToLower().Equals("true"); clothingPart.IsPlayerSet = Conv.getStringFromParts(parts, "f").ToLower().Equals("true"); if (clothingPart.Id == ClothingPartEnum.arty_reward) { clothingPart.PermanentGPCost = 999999; } return(clothingPart); }