Ejemplo n.º 1
0
 public static bool DeploysFromEscapePod(this ThingDef def)
 {
     return(def.apparel != null || (def.weaponTags != null && def.weaponTags.Count > 0) || def.BelongsToCategory("FoodMeals") || (def == ThingDefOf.Medicine || def.defName.Equals("GlitterworldMedicine")));
 }
Ejemplo n.º 2
0
 protected InventoryType CategorizeDefinition(ThingDef def)
 {
     if (def.category == ThingCategory.Projectile)
     {
         return(InventoryType.UNKNOWN);
     }
     if (def.thingCategories != null)
     {
         if (def.thingCategories.FirstOrDefault((ThingCategoryDef d) => d.defName.StartsWith("Corpses")) != null)
         {
             return(InventoryType.UNKNOWN);
         }
     }
     if (def.IsFrame)
     {
         return(InventoryType.UNKNOWN);
     }
     if (def.building != null)
     {
         if ("Furniture".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_FURNITURE);
         }
         if ("Structure".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_STRUCTURE);
         }
         if ("Power".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_POWER);
         }
         if ("Production".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_PRODUCTION);
         }
         if ("Security".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_SECURITY);
         }
         if ("Ship".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_SHIP);
         }
         if ("Joy".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_JOY);
         }
         if ("Temperature".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_TEMPERATURE);
         }
         if ("FoodUtilities".Equals(def.designationCategory))
         {
             return(InventoryType.BUILDING_FOOD_UTILITIES);
         }
         if (def.BelongsToCategory("Joy") || (def.graphic.path != null && def.graphic.path.IndexOf("/Joy/") != -1))
         {
             return(InventoryType.BUILDING_JOY);
         }
         return(InventoryType.BUILDING_OTHER);
     }
     else
     {
         if (def.apparel != null)
         {
             return(InventoryType.ITEM_APPAREL);
         }
         if (def.weaponTags != null && def.weaponTags.Count > 0)
         {
             return(InventoryType.ITEM_EQUIPMENT);
         }
         if (def.ingestible != null)
         {
             return(InventoryType.ITEM_FOOD);
         }
         if (!def.CountAsResource)
         {
             return(InventoryType.ITEM_OTHER);
         }
         if (this.schematicDef != null && def.thingCategories != null && def.thingCategories.Contains(this.schematicDef))
         {
             return(InventoryType.ITEM_SCHEMATIC);
         }
         if (def.CountAsResource)
         {
             return(InventoryType.ITEM_RESOURCE);
         }
         return(InventoryType.UNKNOWN);
     }
 }