disabled initiator check + ovipositor fix

This commit is contained in:
c0ffeeeeeeee 2020-10-15 16:43:33 -07:00
parent a237e2ef1b
commit 16d825975b
3 changed files with 10 additions and 6 deletions

View File

@ -88,7 +88,7 @@ namespace Rimworld_Animations {
if (x.actors[i].requiredGenitals.Contains("Penis")) { if (x.actors[i].requiredGenitals.Contains("Penis")) {
if (!(rjw.Genital_Helper.has_multipenis(localParticipants[i]) || rjw.Genital_Helper.has_penis_infertile(localParticipants[i]) || rjw.Genital_Helper.has_penis_fertile(localParticipants[i]))) { if (!(rjw.Genital_Helper.has_multipenis(localParticipants[i]) || rjw.Genital_Helper.has_penis_infertile(localParticipants[i]) || rjw.Genital_Helper.has_penis_fertile(localParticipants[i]) || rjw.Genital_Helper.has_ovipositorM(localParticipants[i]))) {
if (AnimationSettings.debugMode) if (AnimationSettings.debugMode)
Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have penis"); Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have penis");
return false; return false;
@ -197,6 +197,8 @@ namespace Rimworld_Animations {
return true; return true;
}); });
List<AnimationDef> optionsWithSexType = options.ToList().FindAll(x => x.sexTypes.Contains(sexType)); List<AnimationDef> optionsWithSexType = options.ToList().FindAll(x => x.sexTypes.Contains(sexType));
/*
List<AnimationDef> optionsWithSexTypeAndInitiator = optionsWithSexType.FindAll(x => { List<AnimationDef> optionsWithSexTypeAndInitiator = optionsWithSexType.FindAll(x => {
bool initiatorsAlignWithSexType = true; bool initiatorsAlignWithSexType = true;
for (int i = 0; i < x.actors.Count; i++) { for (int i = 0; i < x.actors.Count; i++) {
@ -217,6 +219,7 @@ namespace Rimworld_Animations {
} }
return initiatorsAlignWithSexType; return initiatorsAlignWithSexType;
}); });
List<AnimationDef> optionsWithInitiator = options.ToList().FindAll(x => { List<AnimationDef> optionsWithInitiator = options.ToList().FindAll(x => {
bool initiatorsAlignWithSexType = true; bool initiatorsAlignWithSexType = true;
for (int i = 0; i < x.actors.Count; i++) { for (int i = 0; i < x.actors.Count; i++) {
@ -237,24 +240,26 @@ namespace Rimworld_Animations {
} }
return initiatorsAlignWithSexType; return initiatorsAlignWithSexType;
}); });
*/
/*
if (optionsWithSexTypeAndInitiator.Any()) { if (optionsWithSexTypeAndInitiator.Any()) {
if (AnimationSettings.debugMode) if (AnimationSettings.debugMode)
Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + " and initiators..."); Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + " and initiators...");
return optionsWithSexTypeAndInitiator.RandomElement(); return optionsWithSexTypeAndInitiator.RandomElement();
} }
*/
if (optionsWithSexType.Any()) { if (optionsWithSexType.Any()) {
if (AnimationSettings.debugMode) if (AnimationSettings.debugMode)
Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + "..."); Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + "...");
return optionsWithSexType.RandomElement(); return optionsWithSexType.RandomElement();
} }
/*
if(optionsWithInitiator.Any()) { if(optionsWithInitiator.Any()) {
if (AnimationSettings.debugMode) if (AnimationSettings.debugMode)
Log.Message("Selecting animation for initiators..."); Log.Message("Selecting animation for initiators...");
} }
*/
if (options != null && options.Any()) { if (options != null && options.Any()) {
if (AnimationSettings.debugMode) if (AnimationSettings.debugMode)

View File

@ -50,7 +50,7 @@ namespace Rimworld_Animations {
} }
listingStandard.Label("Offset for race " + curPawn.def.defName + " in actor position " + curPawn.TryGetComp<CompBodyAnimator>().ActorIndex + (curPawn.TryGetComp<CompBodyAnimator>().Mirror ? " mirrored" : "")); listingStandard.Label("Offset for race " + curPawn.def.defName + " in actor position " + curPawn.TryGetComp<CompBodyAnimator>().ActorIndex + " for animation " + def.label + (curPawn.TryGetComp<CompBodyAnimator>().Mirror ? " mirrored" : ""));
if(curPawn.def.defName == "Human") { if(curPawn.def.defName == "Human") {
listingStandard.Label("Warning--You generally don't want to change human offsets, only alien offsets"); listingStandard.Label("Warning--You generally don't want to change human offsets, only alien offsets");
@ -83,7 +83,6 @@ namespace Rimworld_Animations {
} }
} }
else { else {
listingStandard.Label("Select a pawn currently in an animation to change their offsets"); listingStandard.Label("Select a pawn currently in an animation to change their offsets");