public static List <BasePart> GetAllTierParts(BasePart.PartTier tier, PartFlags flags = CustomizationManager.PartFlags.None)
    {
        List <BasePart> list = new List <BasePart>();

        if (tier == BasePart.PartTier.Regular)
        {
            for (int i = 0; i < WPFMonoBehaviour.gameData.m_parts.Count; i++)
            {
                if (flags == CustomizationManager.PartFlags.None)
                {
                    list.Add(WPFMonoBehaviour.gameData.m_parts[i].GetComponent <BasePart>());
                }
            }
        }
        else
        {
            List <CustomPartInfo> customParts = WPFMonoBehaviour.gameData.m_customParts;
            for (int j = 0; j < customParts.Count; j++)
            {
                if (customParts[j] != null && customParts[j].PartList != null && customParts[j].PartList.Count != 0)
                {
                    for (int k = 0; k < customParts[j].PartList.Count; k++)
                    {
                        if (customParts[j].PartList[k].m_partTier == tier && CustomizationManager.HasPartFlags(customParts[j].PartList[k], flags))
                        {
                            list.Add(customParts[j].PartList[k]);
                        }
                    }
                }
            }
        }
        return(list);
    }
    public static int CustomizationCount(BasePart.PartTier tier, PartFlags flags = CustomizationManager.PartFlags.None)
    {
        int num = 0;
        List <CustomPartInfo> customParts = WPFMonoBehaviour.gameData.m_customParts;

        for (int i = 0; i < customParts.Count; i++)
        {
            if (customParts[i] != null && customParts[i].PartList != null && customParts[i].PartList.Count != 0)
            {
                for (int j = 0; j < customParts[i].PartList.Count; j++)
                {
                    if (customParts[i].PartList[j].m_partTier == tier && CustomizationManager.HasPartFlags(customParts[i].PartList[j], flags))
                    {
                        num++;
                    }
                }
            }
        }
        return(num);
    }