protected static List <CASParts.Wrapper> GetVisibleCASParts(CASLogic ths, BodyTypes bodyType, uint categories) { uint alteredCategories = categories; ths.AdjustAvailableCategoriesForCASMode(ref alteredCategories); SimBuilder builder = ths.mBuilder; CASAgeGenderFlags age = builder.Age; CASAgeGenderFlags gender = builder.Gender; CASAgeGenderFlags species = builder.Species; List <CASParts.Wrapper> list = new List <CASParts.Wrapper>(); foreach (CASParts.Wrapper part in CASBase.HairParts) { InvalidPartBase.Reason reason = InvalidPartBooter.Allow(part, age, gender, species, false, (OutfitCategories)categories); if (reason != InvalidPartBase.Reason.None) { continue; } if ((part.mPart.BodyType == bodyType) && OutfitUtils.PartMatchesSim(builder, alteredCategories, part.mPart)) { list.Add(part); } } return(list); }
protected List <CASParts.Wrapper> SubGetVisibleCASParts(BodyTypes bodyType, uint categories) { CASLogic logic = mCASModel as CASLogic; logic.AdjustAvailableCategoriesForCASMode(ref categories); List <CASParts.Wrapper> results = new List <CASParts.Wrapper>(); foreach (CASParts.Wrapper part in CASBase.sUnboxedParts) { if ((part.mPart.BodyType == bodyType) && OutfitUtils.PartMatchesSim(logic.mBuilder, categories, part.mPart)) { results.Add(part); } } return(results); }
protected static List<CASParts.Wrapper> GetVisibleCASParts(CASLogic ths, BodyTypes bodyType, uint categories) { uint alteredCategories = categories; ths.AdjustAvailableCategoriesForCASMode(ref alteredCategories); SimBuilder builder = ths.mBuilder; CASAgeGenderFlags age = builder.Age; CASAgeGenderFlags gender = builder.Gender; CASAgeGenderFlags species = builder.Species; List<CASParts.Wrapper> list = new List<CASParts.Wrapper>(); foreach(CASParts.Wrapper part in CASBase.HairParts) { InvalidPartBase.Reason reason = InvalidPartBooter.Allow(part, age, gender, species, false, (OutfitCategories)categories); if (reason != InvalidPartBase.Reason.None) continue; if ((part.mPart.BodyType == bodyType) && OutfitUtils.PartMatchesSim(builder, alteredCategories, part.mPart)) { list.Add(part); } } return list; }