From 35a48ab67a6978874f6e0cb7cdf90b10ef6c2af0 Mon Sep 17 00:00:00 2001 From: Ed86 <email@email.com> Date: Mon, 20 Jan 2020 20:09:19 +0200 Subject: [PATCH] comps from wip_sizes --- Source/Comps/CompRJWHediffBodyPart.cs | 121 ++++++++++++++++++++++++++ Source/Comps/CompRJWThingBodyPart.cs | 92 ++++++++++++++++++++ 2 files changed, 213 insertions(+) create mode 100644 Source/Comps/CompRJWHediffBodyPart.cs create mode 100644 Source/Comps/CompRJWThingBodyPart.cs diff --git a/Source/Comps/CompRJWHediffBodyPart.cs b/Source/Comps/CompRJWHediffBodyPart.cs new file mode 100644 index 000000000..145717a82 --- /dev/null +++ b/Source/Comps/CompRJWHediffBodyPart.cs @@ -0,0 +1,121 @@ +using System.Text; +using Verse; + +namespace rjw +{ + public class CompHediffBodyPart : HediffComp + { + /// <summary> + /// Comp for rjw Thing parts. + /// </summary> + + public string Size = ""; //eventually replace with below, maybe + //public float Size; + //public float Lenghth; + //public float Width; + public string Eggs = ""; //for ovi eggs, maybe + public string FluidType = ""; //cummies/milk - insectjelly/honey etc + public string FluidAmmount = ""; //ammount of Milk/Ejaculation/Wetness + + public override string CompLabelInBracketsExtra + { + get + { + if (Size != "") + return Size; + + return null; + } + } + + public override void CompExposeData() + { + base.CompExposeData(); + Scribe_Values.Look(ref Size, "Size", "", true); + Scribe_Values.Look(ref FluidType, "FluidType", "", true); + Scribe_Values.Look(ref FluidAmmount, "FluidAmmount", "", true); + Scribe_Values.Look(ref Eggs, "Eggs", "", true); + } + + public override void CompPostMake() + { + //Log.Message("[RJW] CompPostMake " + xxx.get_pawnname(Pawn) + " " + parent.def.defName); + if (parent.def.defName.ToLower().Contains("breasts") || parent.def.defName.ToLower().Contains("udder")) + { + FluidType = "Milk"; + FluidAmmount = "Average"; + Size = "Average"; + } + if (parent.def.defName.ToLower().Contains("penis") || parent.def.defName.ToLower().Contains("vagina")) + { + FluidType = "Cum"; + if (parent.def.defName.ToLower().Contains("penis")) + FluidAmmount = "Average"; + if (parent.def.defName.ToLower().Contains("vagina")) + FluidAmmount = "Average"; + + Size = "Average"; + } + if (parent.def.defName.ToLower().Contains("anus")) + { + FluidType = "Dry"; + FluidAmmount = ""; + Size = "Average"; + } + if (parent.def.defName.ToLower().Contains("ovi")) + { + Eggs = Pawn.kindDef.race.label; + } + } + + public override string CompTipStringExtra + { + get + { + //Log.Message("[RJW] CompTipStringExtra " + xxx.get_pawnname(Pawn) + " " + parent.def.defName); + StringBuilder stringBuilder = new StringBuilder(); + //if (parent.def.defName.ToLower().Contains("breasts") || parent.def.defName.ToLower().Contains("udder")) + //{ + // if (FluidType != "") + // stringBuilder.AppendLine("Milk: " + FluidType); + // if (FluidAmmount != "") + // stringBuilder.AppendLine("Amount: " + FluidAmmount); + // if (Size != "") + // stringBuilder.AppendLine("Size: " + Size);//convert to Cups + //} + //if (parent.def.defName.ToLower().Contains("penis") || parent.def.defName.ToLower().Contains("vagina")) + //{ + // if (FluidType != "") + // stringBuilder.AppendLine("Cum: " + FluidType); + // if (FluidAmmount != "") + // { + // if (parent.def.defName.ToLower().Contains("penis")) + // stringBuilder.AppendLine("Ejaculation: " + FluidAmmount); + // if (parent.def.defName.ToLower().Contains("vagina")) + // stringBuilder.AppendLine("Wetness: " + FluidAmmount); + // } + // if (Size != "") + // stringBuilder.AppendLine("Size: " + Size);//convert to LxW + //} + //if (parent.def.defName.ToLower().Contains("anus")) + //{ + // if (FluidType != "") + // { + // stringBuilder.AppendLine("Lube: " + FluidType); + // if (parent.def.defName.ToLower().Contains("anus")) + // stringBuilder.AppendLine("Wetness: " + FluidAmmount); + // } + // if (Size != "") + // stringBuilder.AppendLine("Size: " + Size);//convert to LxW someday + //} + if (parent.def.defName.ToLower().Contains("ovi")) + { + if (Eggs != "") + stringBuilder.AppendLine("Eggs: " + Eggs); + } + + return stringBuilder.ToString(); + } + } + } +} \ No newline at end of file diff --git a/Source/Comps/CompRJWThingBodyPart.cs b/Source/Comps/CompRJWThingBodyPart.cs new file mode 100644 index 000000000..cd7767f52 --- /dev/null +++ b/Source/Comps/CompRJWThingBodyPart.cs @@ -0,0 +1,92 @@ +using System.Text; +using Verse; + +namespace rjw +{ + public class CompThingBodyPart : ThingComp + { + /// <summary> + /// Comp for rjw Thing parts. + /// </summary> + + public string Size = ""; //eventually replace with below, maybe + //public float Size; + //public float Lenghth; + //public float Width; + public string Eggs = ""; //for ovi eggs, maybe + public string FluidType = ""; //cummies/milk - insectjelly/honey etc + public string FluidAmmount = ""; //ammount of Milk/Ejaculation/Wetness + + //public override string CompInspectStringExtra() + //{ + // return Translator.Translate("Size") + ": " + Size; + //} + + //public override string TransformLabel(string label) + //{ + // if (Size != "") + // return label + " (" + Size + ")"; + + // return label; + //} + + public override string GetDescriptionPart() + { + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.AppendLine(base.GetDescriptionPart()); + if (parent.def.defName.ToLower().Contains("breasts") || parent.def.defName.ToLower().Contains("udder")) + { + //if (FluidType == "") + //{ + // FluidType = "Milk"; + // FluidAmmount = "none"; + //} + //stringBuilder.AppendLine("Milk: " + FluidType); + //stringBuilder.AppendLine("Amount: " + FluidAmmount); + + if (Size == "") + { + Size = "Average"; + } + stringBuilder.AppendLine("Size: " + Size);//convert to Cups + } + if (parent.def.defName.ToLower().Contains("penis") || parent.def.defName.ToLower().Contains("vagina")) + { + //if (FluidType == "") + //{ + // FluidType = "Cum"; + // FluidAmmount = "Average"; + //} + //stringBuilder.AppendLine("Cum: " + FluidType); + //if (parent.def.defName.ToLower().Contains("penis")) + // stringBuilder.AppendLine("Ejaculation: " + FluidAmmount); + //if (parent.def.defName.ToLower().Contains("vagina")) + // stringBuilder.AppendLine("Wetness: " + FluidAmmount); + + if (Size == "") + { + Size = "Average"; + } + stringBuilder.AppendLine("Size: " + Size);//convert to LxW + } + if (parent.def.defName.ToLower().Contains("anus")) + { + //if (FluidType == "") + //{ + // FluidType = "Dry"; + // FluidAmmount = "Dry"; + //} + if (Size == "") + { + Size = "Average"; + } + stringBuilder.AppendLine("Size: " + Size);//convert to LxW + } + if (parent.def.defName.ToLower().Contains("ovi")) + if (Eggs != "") + stringBuilder.AppendLine("Eggs: " + Eggs); + + return stringBuilder.ToString(); + } + } +} \ No newline at end of file -- GitLab