diff --git a/Source/JobGivers/JobGiver_Bestiality.cs b/Source/JobGivers/JobGiver_Bestiality.cs index 5a2ec362c0e336f4cd4423ae1e80e5d3175c6efa..842edb3a50567493e4bf3dbefd88b7320eb6236b 100644 --- a/Source/JobGivers/JobGiver_Bestiality.cs +++ b/Source/JobGivers/JobGiver_Bestiality.cs @@ -20,6 +20,8 @@ namespace rjw protected override Job TryGiveJob(Pawn pawn) { + if (pawn.Drafted) return null; + // Most checks are now done in ThinkNode_ConditionalBestiality DebugText("[RJW] JobGiver_Bestiality::TryGiveJob( " + xxx.get_pawnname(pawn) + " ) called"); diff --git a/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs b/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs index 91f1e39391feaa1cced79839693fc595ef98eacb..497b1b2ad4979e37eee3c4e6eb6f5f81672763fc 100644 --- a/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs +++ b/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs @@ -54,6 +54,8 @@ namespace rjw if (!xxx.is_healthy(rapist) || rapist.IsDesignatedComfort() || (!SexUtility.ReadyForLovin(rapist) && !xxx.is_frustrated(rapist))) return null; } + if (rapist.Drafted) return null; + //Log.Message("[RJW] JobGiver_ComfortPrisonerRape::TryGiveJob( " + xxx.get_pawnname(rapist) + " ) called1"); if (!xxx.can_rape(rapist)) return null; diff --git a/Source/JobGivers/JobGiver_DoFappin.cs b/Source/JobGivers/JobGiver_DoFappin.cs index fdb010d9b82386a7f63b2b549efc4793630893dd..047fa17d0e09d478ec7bfe50d2dd85601acefca9 100644 --- a/Source/JobGivers/JobGiver_DoFappin.cs +++ b/Source/JobGivers/JobGiver_DoFappin.cs @@ -139,6 +139,8 @@ namespace rjw { //--Log.Message("[RJW] JobGiver_DoFappin::TryGiveJob( " + xxx.get_pawnname(fapper) + " ) called"); + if (fapper.Drafted) return null; + if (!xxx.can_be_fucked(fapper) && !xxx.can_fuck(fapper)) return null; // Whores only fap if frustrated, unless imprisoned. diff --git a/Source/JobGivers/JobGiver_JoinInBed.cs b/Source/JobGivers/JobGiver_JoinInBed.cs index 39cf6c915b92cf83e0afa21de4ddcf4f71a214bf..64db0361605e282de7334780e7953738bc6e649b 100644 --- a/Source/JobGivers/JobGiver_JoinInBed.cs +++ b/Source/JobGivers/JobGiver_JoinInBed.cs @@ -84,6 +84,7 @@ namespace rjw { //--Log.Message("[RJW] JobGiver_JoinInBed( " + xxx.get_pawnname(pawn) + " ) called"); + if (pawn.Drafted) return null; if (!SexUtility.ReadyForLovin(pawn) && !xxx.is_frustrated(pawn)) return null; if (pawn.CurJob == null || pawn.CurJob.def == JobDefOf.LayDown) diff --git a/Source/JobGivers/JobGiver_RapeEnemy.cs b/Source/JobGivers/JobGiver_RapeEnemy.cs index e1b061b1f334bc6497a4d342ccbb5370370c27ad..3f22f33c8330e90d3d04af1fde0c624cec195b57 100644 --- a/Source/JobGivers/JobGiver_RapeEnemy.cs +++ b/Source/JobGivers/JobGiver_RapeEnemy.cs @@ -20,6 +20,8 @@ namespace rjw //Log.Message("[RJW] JobGiver_RapeEnemy::TryGiveJob( " + xxx.get_pawnname(rapist) + " ) 1 " + Find.TickManager.TicksGame); //Log.Message("[RJW] JobGiver_RapeEnemy::TryGiveJob( " + xxx.get_pawnname(rapist) + " ) 2 " + rapist.mindState.canLovinTick); + if (rapist.Drafted) return null; + if (rapist.health.hediffSet.HasHediff(HediffDef.Named("Hediff_RapeEnemyCD")) || !rapist.health.capacities.CanBeAwake || !(SexUtility.ReadyForLovin(rapist) || xxx.need_some_sex(rapist) <= 1f)) //if (rapist.health.hediffSet.HasHediff(HediffDef.Named("Hediff_RapeEnemyCD")) || !rapist.health.capacities.CanBeAwake || (SexUtility.ReadyForLovin(rapist) || xxx.is_human(rapist) ? xxx.need_some_sex(rapist) <= 1f : false)) return null; diff --git a/Source/JobGivers/JobGiver_ViolateCorpse.cs b/Source/JobGivers/JobGiver_ViolateCorpse.cs index 44baf49e64ad4f1e5e70859ff3fe84204b3e6f18..e04cab48e4c24a208887487c4ae272f51d2f83a8 100644 --- a/Source/JobGivers/JobGiver_ViolateCorpse.cs +++ b/Source/JobGivers/JobGiver_ViolateCorpse.cs @@ -46,6 +46,8 @@ namespace rjw // filter out necro for nymphs if (!RJWSettings.necrophilia_enabled) return null; + if (rapist.Drafted) return null; + //--Log.Message("[RJW] JobGiver_ViolateCorpse::TryGiveJob for ( " + xxx.get_pawnname(rapist) + " )"); if (SexUtility.ReadyForLovin(rapist) || xxx.need_some_sex(rapist) > 1f) { diff --git a/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs b/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs index efa81183ae7c3ab7272cccaf1905e1b8666a7e38..7e14aaf7a1d8d4decf09a4b9a2142c2b7e48e55a 100644 --- a/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs +++ b/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs @@ -123,13 +123,16 @@ namespace rjw if (!potentialClients.Any()) return null; - //Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of potential clients " + potentialClients.Count()); + //Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn whore: " + xxx.get_pawnname(whore)); + //Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of potential clients pass1 " + potentialClients.Count()); IEnumerable<Pawn> guestsSpawned = potentialClients.Where(x => x.Faction != whore.Faction && WhoringHelper.CanAfford(x, whore, priceOfWhore) && !MemoryChecker(x, ThoughtDef.Named("RJWFailedSolicitation")) && x != LovePartnerRelationUtility.ExistingLovePartner(whore)); + //Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of potential clients pass2 " + potentialClients.Count()); + if (guestsSpawned.Any()) { //Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of acceptable guests " + guestsSpawned.Count()); @@ -159,10 +162,12 @@ namespace rjw { // Most things are now checked in the ThinkNode_ConditionalWhore. + if (pawn.Drafted) return null; + //Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::TryGiveJob( " + xxx.get_pawnname(pawn) + " ) called"); if (!SexUtility.ReadyForLovin(pawn)) { - //Whores need rest too, but this'll redude the wait a bit every it triggers. + //Whores need rest too, but this'll reduxe the wait a bit every it triggers. pawn.mindState.canLovinTick -= 40; return null; }