mirror of
				https://github.com/amevarashi/RJW-Sexperience.git
				synced 2024-08-14 23:54:08 +00:00 
			
		
		
		
	Refactor?
This commit is contained in:
		
							parent
							
								
									60b268695c
								
							
						
					
					
						commit
						cea590edd4
					
				
					 7 changed files with 63 additions and 63 deletions
				
			
		| 
						 | 
				
			
			@ -83,11 +83,11 @@ namespace RJWSexperience
 | 
			
		|||
 | 
			
		||||
			if (props.sexType != xxx.rjwSextype.Masturbation || props.partner != null)
 | 
			
		||||
			{
 | 
			
		||||
				lustDelta = Mathf.Clamp((satisfaction - base_sat_per_fuck) * RJWUtility.LustIncrementFactor((float)lust), -0.5f, 0.5f); // If the sex is satisfactory, lust grows up. Declines at the opposite.
 | 
			
		||||
				lustDelta = Mathf.Clamp((satisfaction - base_sat_per_fuck) * LustIncrementFactor((float)lust), -0.5f, 0.5f); // If the sex is satisfactory, lust grows up. Declines at the opposite.
 | 
			
		||||
			}
 | 
			
		||||
			else
 | 
			
		||||
			{
 | 
			
		||||
				lustDelta = Mathf.Clamp(satisfaction * satisfaction * RJWUtility.LustIncrementFactor((float)lust), 0, 0.5f); // Masturbation always increases lust.
 | 
			
		||||
				lustDelta = Mathf.Clamp(satisfaction * satisfaction * LustIncrementFactor((float)lust), 0, 0.5f); // Masturbation always increases lust.
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			if (lustDelta == 0)
 | 
			
		||||
| 
						 | 
				
			
			@ -96,6 +96,12 @@ namespace RJWSexperience
 | 
			
		|||
			rjw.Modules.Shared.Logs.LogManager.GetLogger<RjwSexperienceMod>().Message($"{props.pawn.NameShortColored}'s lust changed by {lustDelta} (from {lust})");
 | 
			
		||||
			props.pawn.records.AddTo(VariousDefOf.Lust, lustDelta);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		private static float LustIncrementFactor(float lust)
 | 
			
		||||
		{
 | 
			
		||||
			return Mathf.Exp(-Mathf.Pow(lust / Configurations.LustLimit, 2));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	[HarmonyPatch(typeof(SexUtility), "TransferNutrition")]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -81,7 +81,7 @@
 | 
			
		|||
    <Compile Include="RJWUtility.cs" />
 | 
			
		||||
    <Compile Include="SexHistory\HistoryUtility.cs" />
 | 
			
		||||
    <Compile Include="SexHistory\SexPartnerHistory.cs" />
 | 
			
		||||
    <Compile Include="SexHistory\SexHistory.cs" />
 | 
			
		||||
    <Compile Include="SexHistory\SexPartnerHistoryRecord.cs" />
 | 
			
		||||
    <Compile Include="PawnRelationWorkers.cs" />
 | 
			
		||||
    <Compile Include="Keyed.cs" />
 | 
			
		||||
    <Compile Include="Patches\Rimworld_Patch.cs" />
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,11 +16,6 @@ namespace RJWSexperience
 | 
			
		|||
{
 | 
			
		||||
    public static class RJWUtility
 | 
			
		||||
    {
 | 
			
		||||
        public static float LustIncrementFactor(float lust)
 | 
			
		||||
        {
 | 
			
		||||
            return Mathf.Exp(-Mathf.Pow(lust / Configurations.LustLimit, 2));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public static bool RemoveVirginTrait(Pawn pawn, Pawn partner, SexProps props)
 | 
			
		||||
        {
 | 
			
		||||
            int degree;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -13,7 +13,7 @@ namespace RJWSexperience
 | 
			
		|||
		public SexPartnerHistory() { }
 | 
			
		||||
		public const int ARRLEN = 20;
 | 
			
		||||
 | 
			
		||||
		protected Dictionary<string, SexHistory> histories = new Dictionary<string, SexHistory>();
 | 
			
		||||
		protected Dictionary<string, SexPartnerHistoryRecord> histories = new Dictionary<string, SexPartnerHistoryRecord>();
 | 
			
		||||
		protected string first = "";
 | 
			
		||||
		protected bool dirty = true;
 | 
			
		||||
		protected xxx.rjwSextype recentsex = xxx.rjwSextype.None;
 | 
			
		||||
| 
						 | 
				
			
			@ -46,7 +46,7 @@ namespace RJWSexperience
 | 
			
		|||
		protected int mostsextickabscache = 0;
 | 
			
		||||
		protected int bestsextickabscache = 0;
 | 
			
		||||
 | 
			
		||||
		public SexHistory GetFirstPartnerHistory
 | 
			
		||||
		public SexPartnerHistoryRecord GetFirstPartnerHistory
 | 
			
		||||
		{
 | 
			
		||||
			get
 | 
			
		||||
			{
 | 
			
		||||
| 
						 | 
				
			
			@ -54,7 +54,7 @@ namespace RJWSexperience
 | 
			
		|||
				return histories.TryGetValue(first);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		public SexHistory GetMostPartnerHistory
 | 
			
		||||
		public SexPartnerHistoryRecord GetMostPartnerHistory
 | 
			
		||||
		{
 | 
			
		||||
			get
 | 
			
		||||
			{
 | 
			
		||||
| 
						 | 
				
			
			@ -78,8 +78,8 @@ namespace RJWSexperience
 | 
			
		|||
				return mostsatsextypecache;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		public SexHistory GetRecentPartnersHistory => histories.TryGetValue(recentpartner);
 | 
			
		||||
		public SexHistory GetBestSexPartnerHistory
 | 
			
		||||
		public SexPartnerHistoryRecord GetRecentPartnersHistory => histories.TryGetValue(recentpartner);
 | 
			
		||||
		public SexPartnerHistoryRecord GetBestSexPartnerHistory
 | 
			
		||||
		{
 | 
			
		||||
			get
 | 
			
		||||
			{
 | 
			
		||||
| 
						 | 
				
			
			@ -96,11 +96,11 @@ namespace RJWSexperience
 | 
			
		|||
			}
 | 
			
		||||
		}
 | 
			
		||||
		public int VirginsTaken => virginstaken;
 | 
			
		||||
		public List<SexHistory> PartnerList
 | 
			
		||||
		public List<SexPartnerHistoryRecord> PartnerList
 | 
			
		||||
		{
 | 
			
		||||
			get
 | 
			
		||||
			{
 | 
			
		||||
				List<SexHistory> res = null;
 | 
			
		||||
				List<SexPartnerHistoryRecord> res = null;
 | 
			
		||||
				Update();
 | 
			
		||||
				if (!histories.NullOrEmpty())
 | 
			
		||||
				{
 | 
			
		||||
| 
						 | 
				
			
			@ -113,7 +113,7 @@ namespace RJWSexperience
 | 
			
		|||
		{
 | 
			
		||||
			get
 | 
			
		||||
			{
 | 
			
		||||
				if (histories == null) histories = new Dictionary<string, SexHistory>();
 | 
			
		||||
				if (histories == null) histories = new Dictionary<string, SexPartnerHistoryRecord>();
 | 
			
		||||
				return histories.Count;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			@ -272,7 +272,7 @@ namespace RJWSexperience
 | 
			
		|||
			Scribe_Collections.Look(ref sextypesatsave, "sextypesatsave", LookMode.Value);
 | 
			
		||||
			Scribe_Collections.Look(ref sextyperecenttickabssave, "sextyperecenttickabssave", LookMode.Value);
 | 
			
		||||
 | 
			
		||||
			if (histories == null) histories = new Dictionary<string, SexHistory>();
 | 
			
		||||
			if (histories == null) histories = new Dictionary<string, SexPartnerHistoryRecord>();
 | 
			
		||||
 | 
			
		||||
			if (Scribe.mode == LoadSaveMode.LoadingVars)
 | 
			
		||||
			{
 | 
			
		||||
| 
						 | 
				
			
			@ -280,7 +280,7 @@ namespace RJWSexperience
 | 
			
		|||
				sextypesat = sextypesatsave?.ToArray() ?? new float[ARRLEN];
 | 
			
		||||
				sextyperecenttickabs = sextyperecenttickabssave?.ToArray() ?? new int[ARRLEN];
 | 
			
		||||
 | 
			
		||||
				foreach (KeyValuePair<string, SexHistory> element in histories)
 | 
			
		||||
				foreach (KeyValuePair<string, SexPartnerHistoryRecord> element in histories)
 | 
			
		||||
				{
 | 
			
		||||
					element.Value.parent = this;
 | 
			
		||||
					element.Value.partnerID = element.Key;
 | 
			
		||||
| 
						 | 
				
			
			@ -292,10 +292,9 @@ namespace RJWSexperience
 | 
			
		|||
		public void RecordHistory(Pawn partner, SexProps props)
 | 
			
		||||
		{
 | 
			
		||||
			Pawn pawn = parent as Pawn;
 | 
			
		||||
			TryAddHistory(partner);
 | 
			
		||||
			SexPartnerHistoryRecord history = GetPartnerRecord(partner);
 | 
			
		||||
			RecordFirst(partner, props);
 | 
			
		||||
			recentpartner = partner.ThingID;
 | 
			
		||||
			SexHistory history = histories[partner.ThingID];
 | 
			
		||||
			history?.RecordSex(props);
 | 
			
		||||
			recentsex = props.sexType;
 | 
			
		||||
			sextypecount[(int)props.sexType]++;
 | 
			
		||||
| 
						 | 
				
			
			@ -309,51 +308,48 @@ namespace RJWSexperience
 | 
			
		|||
 | 
			
		||||
		public void RecordSatisfactionHistory(Pawn partner, SexProps props, float satisfaction)
 | 
			
		||||
		{
 | 
			
		||||
			TryAddHistory(partner);
 | 
			
		||||
			SexPartnerHistoryRecord history = GetPartnerRecord(partner);
 | 
			
		||||
			RecordFirst(partner, props);
 | 
			
		||||
			SexHistory history = histories[partner.ThingID];
 | 
			
		||||
			history?.RecordSatisfaction(props, satisfaction);
 | 
			
		||||
			recentsat = satisfaction;
 | 
			
		||||
			sextypesat[(int)props.sexType] += satisfaction;
 | 
			
		||||
			dirty = true;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		protected bool TryAddHistory(Pawn partner)
 | 
			
		||||
		protected SexPartnerHistoryRecord GetPartnerRecord(Pawn partner)
 | 
			
		||||
		{
 | 
			
		||||
			if (!histories.ContainsKey(partner.ThingID))
 | 
			
		||||
			string partnerId = partner.ThingID;
 | 
			
		||||
 | 
			
		||||
			if (histories.TryGetValue(partnerId, out SexPartnerHistoryRecord record))
 | 
			
		||||
			{
 | 
			
		||||
				SexHistory newhistory = new SexHistory(partner, partner.IsIncest(parent as Pawn));
 | 
			
		||||
				histories.Add(partner.ThingID, newhistory);
 | 
			
		||||
				Pawn pawn = parent as Pawn;
 | 
			
		||||
				if (pawn != null)
 | 
			
		||||
				{
 | 
			
		||||
					pawn.records.AddTo(VariousDefOf.SexPartnerCount, 1);
 | 
			
		||||
				}
 | 
			
		||||
				return true;
 | 
			
		||||
				return record;
 | 
			
		||||
			}
 | 
			
		||||
			return false;
 | 
			
		||||
 | 
			
		||||
			SexPartnerHistoryRecord newRecord = new SexPartnerHistoryRecord(partner, partner.IsIncest(parent as Pawn));
 | 
			
		||||
			histories.Add(partnerId, newRecord);
 | 
			
		||||
			if (parent is Pawn pawn)
 | 
			
		||||
			{
 | 
			
		||||
				pawn.records.Increment(VariousDefOf.SexPartnerCount);
 | 
			
		||||
			}
 | 
			
		||||
			return newRecord;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		public void RecordFirst(Pawn partner, SexProps props)
 | 
			
		||||
		{
 | 
			
		||||
			if (VirginCheck() && props.sexType == xxx.rjwSextype.Vaginal)
 | 
			
		||||
			{
 | 
			
		||||
				TryAddHistory(partner);
 | 
			
		||||
				GetPartnerRecord(partner);
 | 
			
		||||
				first = partner.ThingID;
 | 
			
		||||
				SexPartnerHistory history = partner.GetPartnerHistory();
 | 
			
		||||
				firstsextickabs = GenTicks.TicksAbs;
 | 
			
		||||
				if (history != null)
 | 
			
		||||
				{
 | 
			
		||||
					history.TakeSomeonesVirgin(parent as Pawn);
 | 
			
		||||
				}
 | 
			
		||||
				history?.TakeSomeonesVirgin(parent as Pawn);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		public void TakeSomeonesVirgin(Pawn partner)
 | 
			
		||||
		{
 | 
			
		||||
			TryAddHistory(partner);
 | 
			
		||||
			SexHistory history = histories[partner.ThingID];
 | 
			
		||||
			if (history != null) history.TookVirgin();
 | 
			
		||||
			SexPartnerHistoryRecord partnerRecord = GetPartnerRecord(partner);
 | 
			
		||||
			partnerRecord?.TookVirgin();
 | 
			
		||||
			virginstaken++;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -382,9 +378,9 @@ namespace RJWSexperience
 | 
			
		|||
			Dictionary<ThingDef, int> racetotalsat = new Dictionary<ThingDef, int>();
 | 
			
		||||
			List<Pawn> allpartners = new List<Pawn>();
 | 
			
		||||
 | 
			
		||||
			foreach (KeyValuePair<string, SexHistory> element in histories)
 | 
			
		||||
			foreach (KeyValuePair<string, SexPartnerHistoryRecord> element in histories)
 | 
			
		||||
			{
 | 
			
		||||
				SexHistory h = element.Value;
 | 
			
		||||
				SexPartnerHistoryRecord h = element.Value;
 | 
			
		||||
 | 
			
		||||
				//find most sex partner
 | 
			
		||||
				if (max < h.TotalSexCount)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,7 +11,7 @@ using RJWSexperience.ExtensionMethods;
 | 
			
		|||
 | 
			
		||||
namespace RJWSexperience
 | 
			
		||||
{
 | 
			
		||||
    public class SexHistory : IExposable
 | 
			
		||||
    public class SexPartnerHistoryRecord : IExposable
 | 
			
		||||
    {
 | 
			
		||||
        public SexPartnerHistory parent;
 | 
			
		||||
        public string partnerID;
 | 
			
		||||
| 
						 | 
				
			
			@ -115,9 +115,9 @@ namespace RJWSexperience
 | 
			
		|||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public SexHistory() { }
 | 
			
		||||
        public SexPartnerHistoryRecord() { }
 | 
			
		||||
 | 
			
		||||
        public SexHistory(Pawn pawn, bool incest = false)
 | 
			
		||||
        public SexPartnerHistoryRecord(Pawn pawn, bool incest = false)
 | 
			
		||||
        {
 | 
			
		||||
            this.partner = pawn;
 | 
			
		||||
            this.namecache = pawn.Label;
 | 
			
		||||
| 
						 | 
				
			
			@ -184,25 +184,25 @@ namespace RJWSexperience
 | 
			
		|||
            partner = Find.WorldPawns.AllPawnsAliveOrDead.FirstOrDefault(x => x.ThingID.Equals(partnerID));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public class RecentOrderComparer : IComparer<SexHistory>
 | 
			
		||||
        public class RecentOrderComparer : IComparer<SexPartnerHistoryRecord>
 | 
			
		||||
        {
 | 
			
		||||
            public int Compare(SexHistory x, SexHistory y)
 | 
			
		||||
            public int Compare(SexPartnerHistoryRecord x, SexPartnerHistoryRecord y)
 | 
			
		||||
            {
 | 
			
		||||
                return y.RecentSexTickAbs.CompareTo(x.RecentSexTickAbs);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public class MostOrderComparer : IComparer<SexHistory>
 | 
			
		||||
        public class MostOrderComparer : IComparer<SexPartnerHistoryRecord>
 | 
			
		||||
        {
 | 
			
		||||
            public int Compare(SexHistory x, SexHistory y)
 | 
			
		||||
            public int Compare(SexPartnerHistoryRecord x, SexPartnerHistoryRecord y)
 | 
			
		||||
            {
 | 
			
		||||
                return y.TotalSexCount.CompareTo(x.TotalSexCount);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public class NameOrderComparer : IComparer<SexHistory>
 | 
			
		||||
        public class NameOrderComparer : IComparer<SexPartnerHistoryRecord>
 | 
			
		||||
        {
 | 
			
		||||
            public int Compare(SexHistory x, SexHistory y)
 | 
			
		||||
            public int Compare(SexPartnerHistoryRecord x, SexPartnerHistoryRecord y)
 | 
			
		||||
            {
 | 
			
		||||
                return x.Label.CompareTo(y.Label);
 | 
			
		||||
            }
 | 
			
		||||
| 
						 | 
				
			
			@ -2,6 +2,7 @@
 | 
			
		|||
using System;
 | 
			
		||||
using UnityEngine;
 | 
			
		||||
using Verse;
 | 
			
		||||
using System.Diagnostics.CodeAnalysis;
 | 
			
		||||
 | 
			
		||||
namespace RJWSexperience
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			@ -10,7 +11,8 @@ namespace RJWSexperience
 | 
			
		|||
	/// </summary>
 | 
			
		||||
	public class StatPart_Lust : StatPart
 | 
			
		||||
	{
 | 
			
		||||
		public float factor; // Value is loaded from XML
 | 
			
		||||
		[SuppressMessage("Minor Code Smell", "S1104:Fields should not have public accessibility", Justification = "Field value loaded from XML")]
 | 
			
		||||
		public float factor;
 | 
			
		||||
 | 
			
		||||
		public override string ExplanationPart(StatRequest req)
 | 
			
		||||
		{
 | 
			
		||||
| 
						 | 
				
			
			@ -48,7 +50,8 @@ namespace RJWSexperience
 | 
			
		|||
	/// </summary>
 | 
			
		||||
	public class StatPart_Slave : StatPart
 | 
			
		||||
	{
 | 
			
		||||
		public float factor; // Value is loaded from XML
 | 
			
		||||
		[SuppressMessage("Minor Code Smell", "S1104:Fields should not have public accessibility", Justification = "Field value loaded from XML")]
 | 
			
		||||
		public float factor;
 | 
			
		||||
 | 
			
		||||
		public override string ExplanationPart(StatRequest req)
 | 
			
		||||
		{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -58,10 +58,10 @@ namespace RJWSexperience.UI
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
        protected Pawn pawn;
 | 
			
		||||
        protected SexHistory selectedPawn;
 | 
			
		||||
        protected SexPartnerHistoryRecord selectedPawn;
 | 
			
		||||
        protected SexPartnerHistory history;
 | 
			
		||||
        protected CompRJW rjwcomp;
 | 
			
		||||
        protected List<SexHistory> partnerList;
 | 
			
		||||
        protected List<SexPartnerHistoryRecord> partnerList;
 | 
			
		||||
        protected PartnerOrderMode orderMode;
 | 
			
		||||
 | 
			
		||||
        private static GUIStyleState fontstylestate = new GUIStyleState() { textColor = Color.white };
 | 
			
		||||
| 
						 | 
				
			
			@ -184,13 +184,13 @@ namespace RJWSexperience.UI
 | 
			
		|||
                    partnerList = history?.PartnerList;
 | 
			
		||||
                    break;
 | 
			
		||||
                case PartnerOrderMode.Recent:
 | 
			
		||||
                    partnerList.Sort(new SexHistory.RecentOrderComparer());
 | 
			
		||||
                    partnerList.Sort(new SexPartnerHistoryRecord.RecentOrderComparer());
 | 
			
		||||
                    break;
 | 
			
		||||
                case PartnerOrderMode.Most:
 | 
			
		||||
                    partnerList.Sort(new SexHistory.MostOrderComparer());
 | 
			
		||||
                    partnerList.Sort(new SexPartnerHistoryRecord.MostOrderComparer());
 | 
			
		||||
                    break;
 | 
			
		||||
                case PartnerOrderMode.Name:
 | 
			
		||||
                    partnerList.Sort(new SexHistory.NameOrderComparer());
 | 
			
		||||
                    partnerList.Sort(new SexPartnerHistoryRecord.NameOrderComparer());
 | 
			
		||||
                    break;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
| 
						 | 
				
			
			@ -222,7 +222,7 @@ namespace RJWSexperience.UI
 | 
			
		|||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        protected void DrawInfoWithPortrait(Rect rect, SexHistory history, string tooltip = "")
 | 
			
		||||
        protected void DrawInfoWithPortrait(Rect rect, SexPartnerHistoryRecord history, string tooltip = "")
 | 
			
		||||
        {
 | 
			
		||||
            Widgets.DrawMenuSection(rect);
 | 
			
		||||
            string str = tooltip;
 | 
			
		||||
| 
						 | 
				
			
			@ -271,7 +271,7 @@ namespace RJWSexperience.UI
 | 
			
		|||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        protected void DrawSexInfoCard(Rect rect, SexHistory history, string label, string tooltip, string rightlabel = "")
 | 
			
		||||
        protected void DrawSexInfoCard(Rect rect, SexPartnerHistoryRecord history, string label, string tooltip, string rightlabel = "")
 | 
			
		||||
        {
 | 
			
		||||
            Rect labelRect = new Rect(rect.x, rect.y, rect.width, FONTHEIGHT);
 | 
			
		||||
            Rect infoRect = new Rect(rect.x, rect.y + FONTHEIGHT, rect.width, rect.height - FONTHEIGHT);
 | 
			
		||||
| 
						 | 
				
			
			@ -579,7 +579,7 @@ namespace RJWSexperience.UI
 | 
			
		|||
            listmain.End();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        protected void DrawPartnerList(Rect rect, List<SexHistory> partnerList)
 | 
			
		||||
        protected void DrawPartnerList(Rect rect, List<SexPartnerHistoryRecord> partnerList)
 | 
			
		||||
        {
 | 
			
		||||
            Rect pawnRect = new Rect(rect.x, rect.y, LISTPAWNSIZE, LISTPAWNSIZE);
 | 
			
		||||
            for (int i = 0; i < partnerList.Count; i++)
 | 
			
		||||
| 
						 | 
				
			
			@ -603,7 +603,7 @@ namespace RJWSexperience.UI
 | 
			
		|||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        protected void DrawPawn(Rect rect, SexHistory history)
 | 
			
		||||
        protected void DrawPawn(Rect rect, SexPartnerHistoryRecord history)
 | 
			
		||||
        {
 | 
			
		||||
            if (history != null)
 | 
			
		||||
            {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue