mirror of
				https://github.com/amevarashi/RJW-Sexperience.git
				synced 2024-08-14 23:54:08 +00:00 
			
		
		
		
	- configurable virginity removal for male/male for anal sex
- configurable virginity removal for female/female scissoring sex - added double penetration to actions for virginity removal
This commit is contained in:
		
							parent
							
								
									190c6fc3d6
								
							
						
					
					
						commit
						b6d34be263
					
				
					 8 changed files with 51 additions and 5 deletions
				
			
		
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -85,6 +85,10 @@
 | 
			
		|||
  <RSOption_EnableSexHistory_Desc>* Needs a game restart\n\nEnables Sex History window, information collection for the said window and save/load of this information. Also enables sex partners count in the pawn's records.\n\n[Caution] Disabling this mid save will result in the loss of previously collected histories.</RSOption_EnableSexHistory_Desc>
 | 
			
		||||
  <RSOption_HideGizmoWhenDrafted_Label>Hide Sex History button when drafted</RSOption_HideGizmoWhenDrafted_Label>
 | 
			
		||||
  <RSOption_HideGizmoWhenDrafted_Desc>Hides Sex History Gizmo for currently drafted pawns</RSOption_HideGizmoWhenDrafted_Desc>
 | 
			
		||||
  <RSOption_VirginityCheck_M2M_Label>Remove virginity with anal sex (for male/male sex)</RSOption_VirginityCheck_M2M_Label>
 | 
			
		||||
  <RSOption_VirginityCheck_M2M_Desc>Remove virginity with anal sex (for male/male sex)</RSOption_VirginityCheck_M2M_Desc>
 | 
			
		||||
  <RSOption_VirginityCheck_F2F_Label>Remove virginity with scissoring sex (for female/female sex)</RSOption_VirginityCheck_F2F_Label>
 | 
			
		||||
  <RSOption_VirginityCheck_F2F_Desc>Remove virginity with scissoring sex (for female/female sex)</RSOption_VirginityCheck_F2F_Desc>
 | 
			
		||||
 | 
			
		||||
  <!-- Mod settings: Debug -->
 | 
			
		||||
  <RSOption_Debug_Label>Debug</RSOption_Debug_Label>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,6 +25,9 @@ namespace RJWSexperience
 | 
			
		|||
		public readonly SettingHandle<bool> EnableSexHistory = new SettingHandle<bool>("EnableSexHistory", true);
 | 
			
		||||
		public readonly SettingHandle<bool> HideGizmoWhenDrafted = new SettingHandle<bool>("HideGizmoWhenDrafted", true);
 | 
			
		||||
 | 
			
		||||
		public readonly SettingHandle<bool> VirginityCheck_M2M_Anal = new SettingHandle<bool>("VirginityCheck_M2M_Anal", true);
 | 
			
		||||
		public readonly SettingHandle<bool> VirginityCheck_F2F_Scissoring = new SettingHandle<bool>("VirginityCheck_F2F_Scissoring", false);
 | 
			
		||||
		
 | 
			
		||||
		public readonly SettingHandle<bool> DevMode = new SettingHandle<bool>("DevMode", false);
 | 
			
		||||
 | 
			
		||||
		public readonly SettingHandle<bool> SelectionLocked = new SettingHandle<bool>("SelectionLocked", false);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -98,6 +98,10 @@ namespace RJWSexperience
 | 
			
		|||
		public static readonly string Option_HideGizmoWithRJW_Label = "RSOption_HideGizmoWithRJW_Label".Translate();
 | 
			
		||||
		public static readonly string Option_HideGizmoWithRJW_Desc = "RSOption_HideGizmoWithRJW_Desc".Translate();
 | 
			
		||||
		public static readonly string Button_ResetToDefault = "Button_ResetToDefault".Translate();
 | 
			
		||||
		public static readonly string Option_VirginityCheck_M2M_Label = "RSOption_VirginityCheck_M2M_Label".Translate();
 | 
			
		||||
		public static readonly string Option_VirginityCheck_M2M_Desc = "RSOption_VirginityCheck_M2M_Desc".Translate();
 | 
			
		||||
		public static readonly string Option_VirginityCheck_F2F_Label = "RSOption_VirginityCheck_F2F_Label".Translate();
 | 
			
		||||
		public static readonly string Option_VirginityCheck_F2F_Desc = "RSOption_VirginityCheck_F2F_Desc".Translate();
 | 
			
		||||
 | 
			
		||||
		public static string Translate(this PartnerOrderMode mode)
 | 
			
		||||
		{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -94,11 +94,35 @@ namespace RJWSexperience
 | 
			
		|||
	{
 | 
			
		||||
		public static void Postfix(JobDriver_SexBaseInitiator __instance)
 | 
			
		||||
		{
 | 
			
		||||
			if (__instance.Sexprops.hasPartner() && __instance.Sexprops.sexType == xxx.rjwSextype.Vaginal)
 | 
			
		||||
			if (__instance.Sexprops.hasPartner())
 | 
			
		||||
			{
 | 
			
		||||
				// remove hetero virginity
 | 
			
		||||
				if((__instance.Sexprops.sexType == xxx.rjwSextype.Vaginal || __instance.Sexprops.sexType == xxx.rjwSextype.DoublePenetration))
 | 
			
		||||
				{
 | 
			
		||||
					__instance.pawn.TryRemoveVirginity(__instance.Partner, __instance.Sexprops);
 | 
			
		||||
					__instance.Partner.TryRemoveVirginity(__instance.pawn, __instance.Sexprops);
 | 
			
		||||
				} 
 | 
			
		||||
				else
 | 
			
		||||
                {
 | 
			
		||||
					// check if both pawn are male -> anal used as alternative virginity remover
 | 
			
		||||
					if(SexperienceMod.Settings.VirginityCheck_M2M_Anal &&
 | 
			
		||||
					   __instance.Sexprops.sexType == xxx.rjwSextype.Anal
 | 
			
		||||
					   && __instance.pawn.gender == Gender.Male && __instance.Partner.gender == Gender.Male)
 | 
			
		||||
					{
 | 
			
		||||
						__instance.pawn.TryRemoveVirginity(__instance.Partner, __instance.Sexprops);
 | 
			
		||||
						__instance.Partner.TryRemoveVirginity(__instance.pawn, __instance.Sexprops);
 | 
			
		||||
					}
 | 
			
		||||
					
 | 
			
		||||
					// check if both pawn are female -> scissoring used as alternative virginity remover
 | 
			
		||||
					if(SexperienceMod.Settings.VirginityCheck_F2F_Scissoring &&
 | 
			
		||||
					   __instance.Sexprops.sexType == xxx.rjwSextype.Scissoring
 | 
			
		||||
					   && __instance.pawn.gender == Gender.Female && __instance.Partner.gender == Gender.Female)
 | 
			
		||||
					{
 | 
			
		||||
						__instance.pawn.TryRemoveVirginity(__instance.Partner, __instance.Sexprops);
 | 
			
		||||
						__instance.Partner.TryRemoveVirginity(__instance.pawn, __instance.Sexprops);
 | 
			
		||||
					}
 | 
			
		||||
                }
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -31,7 +31,9 @@ namespace RJWSexperience.Settings
 | 
			
		|||
				settings.VirginRatio,
 | 
			
		||||
				settings.SlavesBeenRapedExp,
 | 
			
		||||
				settings.EnableSexHistory,
 | 
			
		||||
				settings.HideGizmoWhenDrafted
 | 
			
		||||
				settings.HideGizmoWhenDrafted,
 | 
			
		||||
				settings.VirginityCheck_M2M_Anal,
 | 
			
		||||
				settings.VirginityCheck_F2F_Scissoring
 | 
			
		||||
				}
 | 
			
		||||
			);
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,7 +21,9 @@ namespace RJWSexperience.Settings
 | 
			
		|||
				settings.VirginRatio,
 | 
			
		||||
				settings.SlavesBeenRapedExp,
 | 
			
		||||
				settings.EnableSexHistory,
 | 
			
		||||
				settings.HideGizmoWhenDrafted
 | 
			
		||||
				settings.HideGizmoWhenDrafted,
 | 
			
		||||
				settings.VirginityCheck_M2M_Anal,
 | 
			
		||||
				settings.VirginityCheck_F2F_Scissoring
 | 
			
		||||
			}
 | 
			
		||||
		) { }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -64,6 +66,9 @@ namespace RJWSexperience.Settings
 | 
			
		|||
				listmain.CheckboxLabeled(Keyed.Option_HideGizmoWhenDrafted_Label, settings.HideGizmoWhenDrafted, Keyed.Option_HideGizmoWhenDrafted_Desc);
 | 
			
		||||
			}
 | 
			
		||||
			
 | 
			
		||||
			listmain.CheckboxLabeled(Keyed.Option_VirginityCheck_M2M_Label, settings.VirginityCheck_M2M_Anal, Keyed.Option_VirginityCheck_M2M_Desc);
 | 
			
		||||
			listmain.CheckboxLabeled(Keyed.Option_VirginityCheck_F2F_Label, settings.VirginityCheck_F2F_Scissoring, Keyed.Option_VirginityCheck_F2F_Label);
 | 
			
		||||
 | 
			
		||||
			if (listmain.ButtonText(Keyed.Button_ResetToDefault))
 | 
			
		||||
			{
 | 
			
		||||
				Reset();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,6 +15,8 @@ namespace RJWSexperience.Settings
 | 
			
		|||
				settings.LustLimit,
 | 
			
		||||
				settings.MaxSingleLustChange,
 | 
			
		||||
				settings.SexCanFillBuckets,
 | 
			
		||||
				settings.VirginityCheck_M2M_Anal,
 | 
			
		||||
				settings.VirginityCheck_F2F_Scissoring
 | 
			
		||||
				}
 | 
			
		||||
			) { }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -27,6 +29,8 @@ namespace RJWSexperience.Settings
 | 
			
		|||
			listmain.SliderOption(Keyed.Option_MaxSingleLustChange_Label + " {0}", Keyed.Option_MaxSingleLustChange_Desc, settings.MaxSingleLustChange, new FloatRange(0f, 10f), 0.05f);
 | 
			
		||||
			listmain.CheckboxLabeled(Keyed.Option_EnableBastardRelation_Label, settings.EnableBastardRelation, Keyed.Option_EnableBastardRelation_Desc);
 | 
			
		||||
			listmain.CheckboxLabeled(Keyed.Option_SexCanFillBuckets_Label, settings.SexCanFillBuckets, Keyed.Option_SexCanFillBuckets_Desc);
 | 
			
		||||
			listmain.CheckboxLabeled(Keyed.Option_VirginityCheck_M2M_Label, settings.VirginityCheck_M2M_Anal, Keyed.Option_VirginityCheck_M2M_Desc);
 | 
			
		||||
			listmain.CheckboxLabeled(Keyed.Option_VirginityCheck_F2F_Label, settings.VirginityCheck_F2F_Scissoring, Keyed.Option_VirginityCheck_F2F_Desc);
 | 
			
		||||
 | 
			
		||||
			if (settings.DevMode)
 | 
			
		||||
				LustUtility.DrawGraph(listmain.GetRect(300f));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue