public static float GetValue(this ToolDef toolDef, ToolType toolType, float fallback = 0f, ThingDef stuffDef = null)
 {
     if (toolDef.TryGetValue(toolType, out float val, stuffDef))
     {
         return(val);
     }
     return(fallback);
 }
 public static bool TryGetValue(this ToolDef toolDef, ToolType toolType, out float val, ThingDef stuffDef = null)
 {
     val = 0f;
     if (!toolDef.CompProp.toolTypesValue.ToolTypeListContains(toolType, out var modifier))
     {
         return(false);
     }
     val = modifier.value * toolType.GetStuffEfficiency(stuffDef);
     return(true);
 }