Skip to content
Snippets Groups Projects
CompRJWHediffBodyPart.cs 3.54 KiB
Newer Older
Ed86's avatar
Ed86 committed
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();
			}
		}
	}
}