private void DrawNutritionEatenPerDay(Rect rect, TransferableOneWay trad) { if (!trad.HasAnyThing) { return; } Pawn p = trad.AnyThing as Pawn; if (p == null || !p.RaceProps.EatsFood || p.Dead || p.needs.food == null) { return; } Widgets.DrawHighlightIfMouseover(rect); string text = (p.needs.food.FoodFallPerTickAssumingCategory(HungerCategory.Fed, ignoreMalnutrition: true) * 60000f).ToString("0.##"); DietCategory resolvedDietCategory = p.RaceProps.ResolvedDietCategory; if (resolvedDietCategory != DietCategory.Omnivorous) { text = text + " (" + resolvedDietCategory.ToStringHumanShort() + ")"; } GUI.color = new Color(1f, 0.5f, 0f); Widgets.Label(rect, text); GUI.color = Color.white; if (Mouse.IsOver(rect)) { TooltipHandler.TipRegion(rect, () => RaceProperties.NutritionEatenPerDayExplanation_NewTemp(p, showDiet: true, showLegend: true, showCalculations: false), trad.GetHashCode() ^ 0x17016B3E); } }
private void DrawNutritionEatenPerDay(Rect rect, TransferableOneWay trad) { if (trad.HasAnyThing) { Pawn p = trad.AnyThing as Pawn; if (p != null && p.RaceProps.EatsFood && !p.Dead && p.needs.food != null) { Widgets.DrawHighlightIfMouseover(rect); string text = (p.needs.food.FoodFallPerTick * 60000f).ToString("0.##"); DietCategory resolvedDietCategory = p.RaceProps.ResolvedDietCategory; if (resolvedDietCategory != DietCategory.Omnivorous) { text = text + " (" + resolvedDietCategory.ToStringHumanShort() + ")"; } GUI.color = new Color(1f, 0.5f, 0f); Widgets.Label(rect, text); GUI.color = Color.white; TooltipHandler.TipRegion(rect, delegate { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("NoDietCategoryLetter".Translate() + " - " + DietCategory.Omnivorous.ToStringHuman()); DietCategory[] array = (DietCategory[])Enum.GetValues(typeof(DietCategory)); for (int i = 0; i < array.Length; i++) { if (array[i] != 0 && array[i] != DietCategory.Omnivorous) { stringBuilder.AppendLine(); stringBuilder.Append(array[i].ToStringHumanShort() + " - " + array[i].ToStringHuman()); } } return("NutritionEatenPerDayTip".Translate(ThingDefOf.MealSimple.GetStatValueAbstract(StatDefOf.Nutrition).ToString("0.##"), stringBuilder.ToString(), p.RaceProps.foodType.ToHumanString())); }, trad.GetHashCode() ^ 0x17016B3E); } } }
public static string ToStringHuman(this DietCategory diet) { switch (diet) { case DietCategory.NeverEats: return("DietCategory_NeverEats".Translate()); case DietCategory.Herbivorous: return("DietCategory_Herbivorous".Translate()); case DietCategory.Dendrovorous: return("DietCategory_Dendrovorous".Translate()); case DietCategory.Ovivorous: return("DietCategory_Ovivorous".Translate()); case DietCategory.Omnivorous: return("DietCategory_Omnivorous".Translate()); case DietCategory.Carnivorous: return("DietCategory_Carnivorous".Translate()); default: return("error"); } }
public static string ToStringHuman(this DietCategory diet) { return(diet switch { DietCategory.NeverEats => "DietCategory_NeverEats".Translate(), DietCategory.Herbivorous => "DietCategory_Herbivorous".Translate(), DietCategory.Dendrovorous => "DietCategory_Dendrovorous".Translate(), DietCategory.Ovivorous => "DietCategory_Ovivorous".Translate(), DietCategory.Omnivorous => "DietCategory_Omnivorous".Translate(), DietCategory.Carnivorous => "DietCategory_Carnivorous".Translate(), _ => "error", });
public static string ToStringHuman(this DietCategory diet) { string result; switch (diet) { case DietCategory.NeverEats: result = "DietCategory_NeverEats".Translate(); break; case DietCategory.Herbivorous: result = "DietCategory_Herbivorous".Translate(); break; case DietCategory.Dendrovorous: result = "DietCategory_Dendrovorous".Translate(); break; case DietCategory.Ovivorous: result = "DietCategory_Ovivorous".Translate(); break; case DietCategory.Omnivorous: result = "DietCategory_Omnivorous".Translate(); break; case DietCategory.Carnivorous: result = "DietCategory_Carnivorous".Translate(); break; default: result = "error"; break; } return(result); }