mirror of
https://gitgud.io/lutepickle/rjw_menstruation.git
synced 2024-08-14 22:46:52 +00:00
Disable breast growth for ageless pawns to prevent them from getting stuck at max size post-birth.
This commit is contained in:
parent
1a1bc2e385
commit
8d507a5e69
3 changed files with 14 additions and 5 deletions
Binary file not shown.
|
@ -246,8 +246,14 @@ namespace RJW_Menstruation
|
|||
|
||||
protected void CalculateBreastSize()
|
||||
{
|
||||
// Scenario A: the youngest child is less than halfway into babyhood: Full size
|
||||
if (ageOfLastBirth + BabyHalfAge * GenDate.TicksPerYear > Pawn.ageTracker.AgeBiologicalTicks)
|
||||
// Ageless pawns can't depend on the chrono age, so just disable their growth entirely
|
||||
if (Pawn.ageTracker.BiologicalTicksPerTick <= 0f && breastSizeIncreased > 0)
|
||||
{
|
||||
ShrinkBreasts();
|
||||
debugGrowthStatus = "Base size (ageless)";
|
||||
}
|
||||
// The youngest child is less than halfway into babyhood: Full size
|
||||
else if (ageOfLastBirth + BabyHalfAge * GenDate.TicksPerYear > Pawn.ageTracker.AgeBiologicalTicks)
|
||||
{
|
||||
debugGrowthStatus = "Full size due to young child";
|
||||
if (breastSizeIncreased < MaxBreastIncrement)
|
||||
|
@ -256,7 +262,7 @@ namespace RJW_Menstruation
|
|||
breastSizeIncreased = MaxBreastIncrement;
|
||||
}
|
||||
}
|
||||
// Scenario B: Pregnant, grow in the second half of first trimester
|
||||
// Pregnant, grow in the second half of first trimester
|
||||
else if (Pawn.IsRJWPregnant() || Pawn.IsBiotechPregnant())
|
||||
{
|
||||
float pregnancySize = Mathf.InverseLerp(breastGrowthStart, breastGrowthEnd, Pawn.GetFarthestPregnancyProgress()) * MaxBreastIncrement;
|
||||
|
@ -279,7 +285,7 @@ namespace RJW_Menstruation
|
|||
}
|
||||
else debugGrowthStatus = "Pregnant and full size";
|
||||
}
|
||||
// Scenario C: Not (or very early) pregnant and youngest child nonexistent or more than halfway into babyhood, time to shrink
|
||||
// Not (or very early) pregnant and youngest child nonexistent or more than halfway into babyhood, time to shrink
|
||||
else if (breastSizeIncreased > 0)
|
||||
{
|
||||
debugGrowthStatus = "Shrinking due to no pregnancy nor young child";
|
||||
|
@ -291,7 +297,9 @@ namespace RJW_Menstruation
|
|||
protected void CalculateNipples()
|
||||
{
|
||||
float newNippleProgress;
|
||||
if (ageOfLastBirth + BabyHalfAge * GenDate.TicksPerYear > Pawn.ageTracker.AgeBiologicalTicks)
|
||||
if (Pawn.ageTracker.BiologicalTicksPerTick <= 0f)
|
||||
newNippleProgress = 0f;
|
||||
else if (ageOfLastBirth + BabyHalfAge * GenDate.TicksPerYear > Pawn.ageTracker.AgeBiologicalTicks)
|
||||
newNippleProgress = 1f;
|
||||
else if (Pawn.IsRJWPregnant() || Pawn.IsBiotechPregnant())
|
||||
newNippleProgress = nippleTransitions.Evaluate(Pawn.GetFarthestPregnancyProgress());
|
||||
|
|
|
@ -5,6 +5,7 @@ Version 1.0.8.5
|
|||
- Some males will release small amounts of semen into a womb during vaginal sex before their actual ejaculation.
|
||||
- Babies born from multiple pregnancy will properly produce the prompt to name them.
|
||||
- Hopefully improve compatibility with xenotype inhertiance-altering mods for multiple pregnancy.
|
||||
- Pawns that have stopped aging will no longer have larger breasts during and after pregnancy.
|
||||
- Experimental "periodic ovulator" cycle type, currently not used. See Patches/Hediffs_Private_Parts_Animal.xml.
|
||||
|
||||
Version 1.0.8.4
|
||||
|
|
Loading…
Reference in a new issue