コード例 #1
0
        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);
            }
        }
コード例 #2
0
 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);
         }
     }
 }
コード例 #3
0
        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");
            }
        }
コード例 #4
0
 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",
     });
コード例 #5
0
        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);
        }