public static Texture2D GetAnalIcon(this Pawn pawn, bool drawOrigin = false) { var hediff = Genital_Helper.get_PartsHediffList(pawn, Genital_Helper.get_anusBPR(pawn)).FirstOrDefault((Hediff h) => h.def.defName.ToLower().Contains("anus")); if (hediff != null) { string icon; float severity; HediffComp_Anus comp = hediff.GetAnusComp(); if (comp != null) { CompProperties_Anus Props = (CompProperties_Anus)comp.props; icon = Props.analTex ?? "Genitals/Anal"; if (drawOrigin) { severity = comp.OriginAnusSize; } else { severity = hediff.Severity; } } else { icon = "Genitals/Anal"; severity = hediff.Severity; } if (severity < 0.20f) { icon += "00"; //micro } else if (severity < 0.40f) { icon += "01"; //tight } else if (severity < 0.60f) { icon += "02"; //average } else if (severity < 0.80f) { icon += "03"; //accomodating } else if (severity < 1.01f) { icon += "04"; //cavernous } else { icon += "05"; //abyssal } return(ContentFinder <Texture2D> .Get((icon), true)); } else { return(ContentFinder <Texture2D> .Get(("Genitals/Anal00"), true)); } }
public static string GetAnusLabel(this Pawn pawn) { var hediff = Genital_Helper.get_PartsHediffList(pawn, Genital_Helper.get_anusBPR(pawn)).FirstOrDefault((Hediff h) => h.def.defName.ToLower().Contains("anus")); if (hediff != null) { return(hediff.LabelBase.CapitalizeFirst() + "\n(" + hediff.LabelInBrackets + ")"); } else { return(""); } }
public static Texture2D GetAnalIcon(this Pawn pawn) { var hediff = Genital_Helper.get_PartsHediffList(pawn, Genital_Helper.get_anusBPR(pawn)).FirstOrDefault((Hediff h) => h.def.defName.ToLower().Contains("anus")); if (hediff != null) { CompProperties_Anus Props = (CompProperties_Anus)hediff.TryGetComp <HediffComp_Anus>()?.props; string icon; if (Props != null) { icon = Props.analTex ?? "Genitals/Anal"; } else { icon = "Genitals/Anal"; } if (hediff.Severity < 0.20f) { icon += "00"; //micro } else if (hediff.Severity < 0.40f) { icon += "01"; //tight } else if (hediff.Severity < 0.60f) { icon += "02"; //average } else if (hediff.Severity < 0.80f) { icon += "03"; //accomodating } else if (hediff.Severity < 1.01f) { icon += "04"; //cavernous } else { icon += "05"; //abyssal } return(ContentFinder <Texture2D> .Get((icon), true)); } else { return(ContentFinder <Texture2D> .Get(("Genitals/Anal00"), true)); } }