public static void AssignQuality(Thing thing, QualityGenerator?qualityGenerator)
        {
            CompQuality compQuality = thing.TryGetComp <CompQuality>();

            if (compQuality != null)
            {
                QualityCategory q = QualityUtility.GenerateQuality(qualityGenerator ?? QualityGenerator.BaseGen);
                compQuality.SetQuality(q, ArtGenerationContext.Outsider);
            }
        }
 private static void CalculateAllowedThingStuffPairs(IEnumerable <ThingDef> allowed, TechLevel techLevel, QualityGenerator qualityGenerator)
 {
     allowedThingStuffPairs.Clear();
     foreach (ThingDef td in allowed)
     {
         for (int i = 0; i < 5; i++)
         {
             if (GenStuff.TryRandomStuffFor(td, out ThingDef stuff, techLevel, (ThingDef x) => !ThingSetMakerUtility.IsDerpAndDisallowed(td, x, qualityGenerator)))
             {
                 QualityCategory quality = td.HasComp(typeof(CompQuality)) ? QualityUtility.GenerateQuality(qualityGenerator) : QualityCategory.Normal;
                 allowedThingStuffPairs.Add(new ThingStuffPairWithQuality(td, stuff, quality));
             }
         }
     }
 }
Beispiel #3
0
 private static void CalculateAllowedThingStuffPairs(IEnumerable <ThingDef> allowed, TechLevel techLevel, QualityGenerator qualityGenerator)
 {
     ThingSetMakerByTotalStatUtility.allowedThingStuffPairs.Clear();
     foreach (ThingDef thingDef in allowed)
     {
         for (int i = 0; i < 5; i++)
         {
             ThingDef stuff;
             if (GenStuff.TryRandomStuffFor(thingDef, out stuff, techLevel))
             {
                 QualityCategory quality = (!thingDef.HasComp(typeof(CompQuality))) ? QualityCategory.Normal : QualityUtility.GenerateQuality(qualityGenerator);
                 ThingSetMakerByTotalStatUtility.allowedThingStuffPairs.Add(new ThingStuffPairWithQuality(thingDef, stuff, quality));
             }
         }
     }
 }
 private static void CalculateAllowedThingStuffPairs(IEnumerable <ThingDef> allowed, TechLevel techLevel, QualityGenerator qualityGenerator)
 {
     allowedThingStuffPairs.Clear();
     foreach (ThingDef item in allowed)
     {
         for (int i = 0; i < 5; i++)
         {
             if (GenStuff.TryRandomStuffFor(item, out ThingDef stuff, techLevel))
             {
                 QualityCategory quality = (!item.HasComp(typeof(CompQuality))) ? QualityCategory.Normal : QualityUtility.GenerateQuality(qualityGenerator);
                 allowedThingStuffPairs.Add(new ThingStuffPairWithQuality(item, stuff, quality));
             }
         }
     }
 }