Example #1
0
        public override TaggedString GetExplanation()
        {
            StringBuilder stringBuilder = new StringBuilder();
            bool          amputatable   = false;
            var           sortedAnimals = TinyTweaksUtility.SortedAnimalList(SickAnimals);

            for (int i = 0; i < sortedAnimals.Count; i++)
            {
                var pawn      = sortedAnimals[i];
                var listEntry = pawn.NameShortColored.CapitalizeFirst();
                if (pawn.HasBondRelation())
                {
                    listEntry += $" {"BondBrackets".Translate()}".Colorize(ColoredText.NameColor);
                }
                stringBuilder.AppendLine("  - " + listEntry.Resolve());
                var hediffs = pawn.health.hediffSet.hediffs;
                for (int j = 0; j < hediffs.Count; j++)
                {
                    var hediff = hediffs[j];
                    if (hediff.CurStage != null && hediff.CurStage.lifeThreatening && hediff.Part != null && hediff.Part != pawn.RaceProps.body.corePart)
                    {
                        amputatable = true;
                        break;
                    }
                }
            }
            if (amputatable)
            {
                return(string.Format("TinyTweaks.AnimalsWithLifeThreateningDiseaseAmputation_Desc".Translate(), stringBuilder.ToString()));
            }
            return(string.Format("TinyTweaks.AnimalsWithLifeThreateningDisease_Desc".Translate(), stringBuilder.ToString()));
        }
        public override TaggedString GetExplanation()
        {
            StringBuilder stringBuilder = new StringBuilder();
            var           sortedAnimals = TinyTweaksUtility.SortedAnimalList(AnimalsNeedingRescue);

            for (int i = 0; i < sortedAnimals.Count; i++)
            {
                var pawn      = sortedAnimals[i];
                var listEntry = pawn.NameShortColored.CapitalizeFirst();
                if (pawn.HasBondRelation())
                {
                    listEntry += $" {"BondBrackets".Translate()}".Colorize(ColoredText.NameColor);
                }
                stringBuilder.AppendLine("  - " + listEntry.Resolve());
            }
            return(string.Format("TinyTweaks.AnimalsNeedRescue_Desc".Translate(), stringBuilder.ToString()));
        }
        public override TaggedString GetExplanation()
        {
            var stringBuilder = new StringBuilder();
            var sortedAnimals = TinyTweaksUtility.SortedAnimalList(NeedingAnimals);

            foreach (var pawn in sortedAnimals)
            {
                var listEntry = pawn.NameShortColored.CapitalizeFirst();
                if (pawn.HasBondRelation())
                {
                    listEntry += $" {"BondBrackets".Translate()}".Colorize(ColoredText.NameColor);
                }

                stringBuilder.AppendLine("  - " + listEntry.Resolve());
            }

            return(string.Format("TinyTweaks.AnimalNeedsTreatment_Desc".Translate(), stringBuilder));
        }
Example #4
0
        public override TaggedString GetExplanation()
        {
            var stringBuilder = new StringBuilder();
            var amputatable   = false;
            var sortedAnimals = TinyTweaksUtility.SortedAnimalList(SickAnimals);

            foreach (var pawn in sortedAnimals)
            {
                var listEntry = pawn.NameShortColored.CapitalizeFirst();
                if (pawn.HasBondRelation())
                {
                    listEntry += $" {"BondBrackets".Translate()}".Colorize(ColoredText.NameColor);
                }

                stringBuilder.AppendLine("  - " + listEntry.Resolve());
                var hediffs = pawn.health.hediffSet.hediffs;
                foreach (var hediff in hediffs)
                {
                    if (hediff.CurStage == null || !hediff.CurStage.lifeThreatening || hediff.Part == null ||
                        hediff.Part == pawn.RaceProps.body.corePart)
                    {
                        continue;
                    }

                    amputatable = true;
                    break;
                }
            }

            if (amputatable)
            {
                return(string.Format("TinyTweaks.AnimalsWithLifeThreateningDiseaseAmputation_Desc".Translate(),
                                     stringBuilder));
            }

            return(string.Format("TinyTweaks.AnimalsWithLifeThreateningDisease_Desc".Translate(), stringBuilder));
        }