public static void SelectItem(CASMakeup ths, CASPart part, CASPartPreset preset, bool allowMultiple) { ICASModel cASModel = new CASModelProxy(Responder.Instance.CASModel); List<CASPart> wornParts = cASModel.GetWornParts(part.BodyType); bool flag = false; if ((part.Key == ths.kInvalidCASPart.Key) && (!allowMultiple)) { foreach (CASPart part2 in wornParts) { cASModel.RequestRemoveCASPart(part2); } } else if (!wornParts.Contains(part)) { flag = true; } if (preset != null) { ths.mCurrentPreset = preset; if (preset.mPresetString != null) { if (flag) { cASModel.RequestAddCASPart(part, preset.mPresetString); } else { cASModel.RequestCommitPresetToPart(part, preset.mPresetString); } } } else if (flag) { ths.mCurrentPreset = new CASPartPreset(part, null); cASModel.RequestAddCASPart(part, false); } ths.UpdateCostumePresetState(); Audio.StartSound("ui_tertiary_button"); }