mirror of
https://gitgud.io/c0ffeeeeeeee/rimworld-animations.git
synced 2024-08-15 00:43:45 +00:00
4.8.0 changes
This commit is contained in:
parent
a0e88f1f23
commit
1195d292b0
7 changed files with 11 additions and 12 deletions
Binary file not shown.
|
@ -18,7 +18,7 @@ namespace Rimworld_Animations {
|
||||||
|
|
||||||
participants =
|
participants =
|
||||||
participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator)
|
participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator)
|
||||||
.OrderBy(p => p == sexProps.Giver)
|
.OrderBy(p => p == sexProps.giver)
|
||||||
.OrderByDescending(p => rjw.GenderHelper.GetSex(p) == rjw.GenderHelper.Sex.futa)
|
.OrderByDescending(p => rjw.GenderHelper.GetSex(p) == rjw.GenderHelper.Sex.futa)
|
||||||
.OrderBy(p => rjw.xxx.can_fuck(p))
|
.OrderBy(p => rjw.xxx.can_fuck(p))
|
||||||
.ToList();
|
.ToList();
|
||||||
|
@ -114,10 +114,10 @@ namespace Rimworld_Animations {
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
List<AnimationDef> optionsWithInteractionType = options.ToList().FindAll(x => x.interactionDefTypes != null && x.interactionDefTypes.Contains(sexProps.DictionaryKey));
|
List<AnimationDef> optionsWithInteractionType = options.ToList().FindAll(x => x.interactionDefTypes != null && x.interactionDefTypes.Contains(sexProps.sexType.ToStringSafe()));
|
||||||
if (optionsWithInteractionType.Any()) {
|
if (optionsWithInteractionType.Any()) {
|
||||||
if (AnimationSettings.debugMode)
|
if (AnimationSettings.debugMode)
|
||||||
Log.Message("Selecting animation for interaction type " + sexProps.DictionaryKey.defName + "...");
|
Log.Message("Selecting animation for interaction type " + sexProps.sexType.ToStringSafe() + "...");
|
||||||
return optionsWithInteractionType.RandomElement();
|
return optionsWithInteractionType.RandomElement();
|
||||||
}
|
}
|
||||||
List<AnimationDef> optionsWithSexType = options.ToList().FindAll(x => x.sexTypes != null && x.sexTypes.Contains(sexType));
|
List<AnimationDef> optionsWithSexType = options.ToList().FindAll(x => x.sexTypes != null && x.sexTypes.Contains(sexType));
|
||||||
|
|
|
@ -334,11 +334,10 @@ namespace Rimworld_Animations {
|
||||||
{
|
{
|
||||||
if(AnimationSettings.applySemenOnAnimationOrgasm && (pawn?.jobs?.curDriver is JobDriver_Sex))
|
if(AnimationSettings.applySemenOnAnimationOrgasm && (pawn?.jobs?.curDriver is JobDriver_Sex))
|
||||||
{
|
{
|
||||||
Pawn partner = (pawn.jobs.curDriver as JobDriver_Sex)?.Partner;
|
|
||||||
|
|
||||||
if (anim.sexTypes.Contains((pawn.jobs.curDriver as JobDriver_Sex).sexType))
|
if (anim.sexTypes.Contains((pawn.jobs.curDriver as JobDriver_Sex).Sexprops.sexType))
|
||||||
{
|
{
|
||||||
SemenHelper.calculateAndApplySemen(pawn, partner, (pawn.jobs.curDriver as JobDriver_Sex).sexType);
|
SemenHelper.calculateAndApplySemen((pawn.jobs.curDriver as JobDriver_Sex).Sexprops);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@ namespace Rimworld_Animations {
|
||||||
public int animationTimeTicks = 0; //do not set manually
|
public int animationTimeTicks = 0; //do not set manually
|
||||||
public bool sounds = false;
|
public bool sounds = false;
|
||||||
public List<rjw.xxx.rjwSextype> sexTypes = null;
|
public List<rjw.xxx.rjwSextype> sexTypes = null;
|
||||||
public List<InteractionDef> interactionDefTypes = null;
|
public List<String> interactionDefTypes = null;
|
||||||
|
|
||||||
public override void PostLoad() {
|
public override void PostLoad() {
|
||||||
base.PostLoad();
|
base.PostLoad();
|
||||||
|
|
|
@ -13,7 +13,7 @@ using Verse.AI;
|
||||||
namespace Rimworld_Animations
|
namespace Rimworld_Animations
|
||||||
{
|
{
|
||||||
|
|
||||||
[HarmonyPatch(typeof(xxx), "in_same_bed")]
|
[HarmonyPatch(typeof(Bed_Utility), "in_same_bed")]
|
||||||
public static class HarmonyPatch_JobDriver_InSameBedPatch
|
public static class HarmonyPatch_JobDriver_InSameBedPatch
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ namespace Rimworld_Animations
|
||||||
var toils = __result.ToList();
|
var toils = __result.ToList();
|
||||||
|
|
||||||
Toil goToPawnInBed = Toils_Goto.GotoThing(__instance.iTarget, PathEndMode.OnCell);
|
Toil goToPawnInBed = Toils_Goto.GotoThing(__instance.iTarget, PathEndMode.OnCell);
|
||||||
goToPawnInBed.FailOn(() => !RestUtility.InBed(__instance.Partner) && __instance.Partner.CurJobDef != xxx.gettin_loved && !xxx.in_same_bed(__instance.Partner, __instance.pawn));
|
goToPawnInBed.FailOn(() => !RestUtility.InBed(__instance.Partner) && __instance.Partner.CurJobDef != xxx.gettin_loved && !Bed_Utility.in_same_bed(__instance.Partner, __instance.pawn));
|
||||||
|
|
||||||
toils[1] = goToPawnInBed;
|
toils[1] = goToPawnInBed;
|
||||||
|
|
||||||
|
|
|
@ -36,10 +36,10 @@ namespace Rimworld_Animations {
|
||||||
|
|
||||||
|
|
||||||
if (bed != null) {
|
if (bed != null) {
|
||||||
RerollAnimations(Target, out AnimationTimeTicks, bed as Thing, __instance.sexType, quickie, sexProps: __instance.Sexprops);
|
RerollAnimations(Target, out AnimationTimeTicks, bed as Thing, __instance.Sexprops.sexType, quickie, sexProps: __instance.Sexprops);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
RerollAnimations(Target, out AnimationTimeTicks, sexType: __instance.sexType, fastAnimForQuickie: quickie, sexProps: __instance.Sexprops);
|
RerollAnimations(Target, out AnimationTimeTicks, sexType: __instance.Sexprops.sexType, fastAnimForQuickie: quickie, sexProps: __instance.Sexprops);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="RJW">
|
<Reference Include="RJW">
|
||||||
<HintPath>..\rjw\1.3\Assemblies\RJW.dll</HintPath>
|
<HintPath>..\rjw-master\1.3\Assemblies\RJW.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue