Commit Graph

383 Commits

Author SHA1 Message Date
lutepickle 1133255b0a Rearrange LutealAction to let the stage end with fertilized eggs 2022-07-10 08:05:08 -07:00
lutepickle 9f66a3ea52 Missing elses in Follicular actions 2022-07-08 18:43:13 -07:00
lutepickle 96c81c70bf Use Max for the avglittersize 2022-07-08 18:35:47 -07:00
lutepickle 096f941762 Account for bleeding when calculating induced ovulator ovary power, for all zero of them that bleed 2022-07-08 14:51:24 -07:00
lutepickle 58b2e4983c Apply cycle speed properly to ovary power by age 2022-07-08 12:10:52 -07:00
lutepickle f612e0df24 Properly apply cycleSpeed to PeriodRandomizer 2022-07-08 10:28:21 -07:00
lutepickle 98f0580577 Remove old PeriodRandomizer 2022-07-08 10:17:02 -07:00
lutepickle 4dbfe6c1d5 Correct comment on CumIn, remove stray semicolon 2022-07-08 09:34:43 -07:00
lutepickle 02194fe941 Remove Stage_Fertilized translations 2022-07-08 09:28:37 -07:00
lutepickle 862696eef1 Make the recursion limiter on RandomVariabilityPercent return the proper value 2022-07-07 19:09:06 -07:00
lutepickle 5abfa07638 Make the 'sperm lifespan' tip account for drainage, too. Also add a "10 ml" tip for fertilization chance 2022-07-07 18:28:34 -07:00
lutepickle 9459899ed6 Fix dumb XML error 2022-07-07 17:51:25 -07:00
lutepickle ba11cf867c Build 2022-07-07 17:34:08 -07:00
lutepickle b2e26f2f1b New ovary power calculation for all vaginas. While at it, remove old deviation factor since it's obsolete, too. 2022-07-07 16:17:12 -07:00
lutepickle eade57bd9e Update default values 2022-07-07 12:37:12 -07:00
lutepickle a90d6bf343 Implement exponential fertilization chance 2022-07-07 12:23:45 -07:00
lutepickle 8a048ea7e5 Cum fertility overhaul. Now track volume and fertility percentage instead of fertvolume. 2022-07-07 12:14:47 -07:00
lutepickle 24e7f93bcc Cumming inside someone with an IUD adds the full volume. 2022-07-07 12:00:46 -07:00
lutepickle c7a2f0c55d Make not-cum not fertilize 2022-07-07 11:28:09 -07:00
lutepickle 4e3fa05af9 Make not-cum not fertilize 2022-07-07 11:27:44 -07:00
lutepickle 16bb69372c Revert "Remove unused Egg() constructor"
Rimworld might be using it after all

This reverts commit 9c9e120b92.
2022-07-07 11:15:37 -07:00
lutepickle 258f68a88d Some checks for initializing the currentIntervalHours. Also fix the capitalization 2022-07-07 11:14:04 -07:00
lutepickle 07221e01a8 Fix stage hours in GetEggIcon 2022-07-07 11:09:42 -07:00
lutepickle 5c1fb93613 Proper check for the new speed/variability on init 2022-07-07 10:57:44 -07:00
lutepickle 4737641673 Refactor the climacteric stage functions into the normal stage functions 2022-07-07 10:50:49 -07:00
lutepickle 9cc8897103 Initial implementation of new variance code 2022-07-07 10:28:53 -07:00
lutepickle 9c9e120b92 Remove unused Egg() constructor 2022-07-07 07:58:32 -07:00
lutepickle 805b7afa81 FertilizationCheck doesn't need to return anything 2022-07-07 07:55:33 -07:00
lutepickle 60a842fd2b Eggs implant at half luteal or 30 days, whichever comes first. 2022-07-07 07:52:43 -07:00
lutepickle a1250f4141 Fix 'folicularIntervalDays' typo 2022-07-07 07:30:16 -07:00
lutepickle 93218a8aa1 Use a weighted random when determining the stage of a new pawn 2022-07-07 07:26:53 -07:00
lutepickle 983e112edd Fertilized eggs never decay 2022-07-07 07:01:20 -07:00
lutepickle 5e164b74df Remove obsolete RJW_Sire/RJW_Pup relations 2022-07-07 06:55:44 -07:00
lutepickle b6bef2206e Remove obsolete Stage.Fertilized 2022-07-07 06:51:39 -07:00
lutepickle 75fe253911 Give animal children the standard mother/father relations instead of the old RJW_Sire/RJW_Pup ones 2022-07-02 07:55:31 -07:00
lutepickle b7a911000e Rename PawnGCPass_Patch to AccumulatePawnGCData_Patch 2022-07-02 07:30:27 -07:00
lutepickle f503deb09e Have a pawn that becomes fertile go into anestrus if they're out of season. 2022-06-25 20:07:23 -07:00
lutepickle 14174396b0 Increase ovipostor semen to make up for the lowered fert chance 2022-06-25 11:15:54 -07:00
lutepickle 3ac49afade Make the initial fertilization graphic based on the configured acceleration 2022-06-21 23:11:59 -07:00
lutepickle f021316869 Don't show the implanted egg icon when it's a mechanoid pregnancy 2022-06-21 21:00:37 -07:00
lutepickle 6283baa778 Make the IsNull checks in the hybrid extensions return true if thingDefName really is null. Also add another null check when searching for a hybrid. 2022-06-19 17:09:04 -07:00
lutepickle 204fe0ecc7 Fix null fertilizer when an egg tries to implant 2022-06-16 17:57:52 -07:00
lutepickle 1ef735f328 Migrate Harmony dependency to NuGet 2022-06-16 16:59:34 -07:00
lutepickle 31d6fce892 Remove unused parameter in DrawHediffRow_Patch 2022-06-08 06:37:04 -07:00
lutepickle 56691171b4 Implement random tick timing 2022-06-05 11:06:57 -07:00
lutepickle 617ed4bfe0 Make menstruation tickinterval a const 2022-06-05 06:22:54 -07:00
lutepickle f1fcbf13c1 Handle a null pawn's cum in fertilization 2022-06-04 21:42:59 -07:00
lutepickle 156dfc5f3e One less magic number 2022-06-04 18:09:34 -07:00
lutepickle 4ebf45aeb8 Make fertilization add to the pawn's record again 2022-06-03 23:32:33 -07:00
lutepickle b5b9002930 Make the pregnant breast growth start/end a const instead of a magic number 2022-06-03 20:22:32 -07:00
lutepickle 961e7f7b73 Better anti-prune algo. Also won't prune pawns with sperm/egg in a player faction/prisoner womb 2022-06-03 14:45:31 -07:00
lutepickle b814412eb0 Don't prune pawns with sperm or a fertilized egg in a colonist's womb 2022-06-03 11:04:39 -07:00
lutepickle 5e818ab879 Make IsInEstrus into a Pawn extension 2022-06-03 09:06:18 -07:00
lutepickle 9d83860d55 Have the first fertilized graphic go off of just the CycleFactor 2022-06-03 07:57:48 -07:00
lutepickle 7f84480bee Refactor IsBreedingSeason to be a bit cleaner 2022-06-02 14:21:43 -07:00
lutepickle e09c4aeb97 Move gather cum gizmo text to this project to account for sexperience removing it 2022-06-02 12:36:54 -07:00
lutepickle c082c70e68 Add a proper weighted random algo for selecting paternity 2022-06-02 12:31:31 -07:00
lutepickle 8b48fe51e5 Cum.fertFactor is unused for now, so remove it from the Fertilize() calculation 2022-06-01 20:34:18 -07:00
lutepickle e978feedb0 Reword stage descriptions a bit 2022-05-31 18:21:24 -07:00
lutepickle 5b784c3c59 Display ovaries on the womb dialog when near ovulation 2022-05-31 18:14:11 -07:00
lutepickle 4ce0574e0b Improve climacteric follicular 2022-05-31 14:36:26 -07:00
lutepickle bba7fd8dbb Use more of the fertilization graphics 2022-05-31 12:09:04 -07:00
lutepickle 91903be5a6 More little description tweaks 2022-05-31 11:13:42 -07:00
lutepickle ef57149289 Rearrange the 'came inside' defs to match their order in the code. 2022-05-31 10:08:22 -07:00
lutepickle 3aa0450b87 Remove some milder "he came inside" memories when a harsher one is applied. Should reduce unwanted stacking. 2022-05-31 09:54:58 -07:00
lutepickle e29c7a732a Might as well refactor RecoveryAction out to match the rest 2022-05-31 08:36:27 -07:00
lutepickle 32ae526b0f Better handle climacteric for induced ovulators 2022-05-31 08:22:35 -07:00
lutepickle 0a7e80b353 Add a short description when mousing over the phase in the womb dialog 2022-05-31 08:10:53 -07:00
lutepickle 871730ac3a Send climacteric follicular to luteal stage 2022-05-31 05:37:50 -07:00
lutepickle 46af80de5b More accurate text for the climacteric hediff 2022-05-31 05:32:18 -07:00
lutepickle 30bc8b8fbc Make FertilityDesc a bit shorter to avoid word wrap 2022-05-30 20:54:30 -07:00
lutepickle f909b8cfce Fix pawn generation for off-map pawns. 2022-05-30 20:22:47 -07:00
lutepickle c4f5e6b63c A whole mess of spelling, grammar, and description updates 2022-05-30 20:04:48 -07:00
lutepickle b292c3f931 Properly initialize ovaries for bad litterSizeCurves 2022-05-30 16:54:41 -07:00
lutepickle 5e4fadb4ba Move Props.baseImplantationChanceFactor into ImplantFactor 2022-05-28 23:00:28 -07:00
lutepickle 3480366337 More accurate comments in the new hookup transpilers 2022-05-28 21:28:20 -07:00
lutepickle 7461965174 Add message feedback to the debug actions 2022-05-28 19:18:35 -07:00
lutepickle 41054f979e Update the hookup transpilers to apply the estrus overrides in the other direction. 2022-05-28 19:05:10 -07:00
lutepickle 72e1712394 Set a newly initialized pawn to anestrus when out of season. 2022-05-28 17:55:13 -07:00
lutepickle b6f220b30b Show the status button in the health tab for pawns with a vagina as a second hediff. 2022-05-28 17:53:20 -07:00
lutepickle 42cd7a98ae Show womb gizmo for any gender 2022-05-27 17:59:36 -07:00
lutepickle 7f2856b6ef Turn the def in SetEstrus into a ternary 2022-05-18 20:57:48 -07:00
lutepickle 26ca087828 Remove random empty text file 2022-05-15 05:37:30 -07:00
lutepickle d5f87d0e45 Refactor IsDangerDay into a switch. 2022-05-14 16:50:27 -07:00
lutepickle 1a452cb120 Add a check for BabyHalfAge <= 0, just to be sure 2022-05-14 05:23:53 -07:00
lutepickle 2872d42f67 Fix BabyHalfAge for races with one lifestage 2022-05-13 22:01:07 -07:00
lutepickle e377f01a7d Make the transpiler noisier when it hits an error. Hopefully it'll make breakages more obvious. 2022-05-11 08:33:33 -07:00
lutepickle 52f9a10496 Fix the transpiler for FindBestPartner 2022-05-09 22:36:53 -07:00
lutepickle d9ab6cdcde On a littersizecurve exception, show the message in the log 2022-05-07 19:44:54 -07:00
lutepickle 0e34e3d4cc More parenthesis in ThoughtCumInside because I don't trust the compiler 2022-05-06 20:37:23 -07:00
lutepickle 3d5e1cae15 Locked absorbers can't get dirty or cause infections 2022-05-03 22:23:47 -07:00
lutepickle e7c395636b Handle cum inside thoughts for teratophiles 2022-05-01 18:27:29 -07:00
lutepickle 47d249e716 Update birth faction assignments to match RJW's. 2022-04-29 07:00:41 -07:00
lutepickle 4c2233659a Slight refactor of Roll_To_Skip_Patch.Transpiler and FindBestPartner_Patch.Transpiler. 2022-04-28 15:50:16 -07:00
lutepickle 2e6565fcc6 Resize main settings window dynamically based on selected options. 2022-04-28 11:00:24 -07:00
lutepickle 7b5f0880ed Remove unnecessary parameters from Harmony patches. 2022-04-28 09:52:51 -07:00
lutepickle 00ad2e94d4 The GetBodyFactor patch doesn't need to test for __result <= 0, as that isn't possible. While I'm at it, a slight refactor in CountSatisfiedQuirks. 2022-04-28 09:18:50 -07:00
lutepickle 71f3ba9585 Animals will prefer partners in estrus 2022-04-27 22:13:50 -07:00
lutepickle fffd4f5f00 Fix null reference on missing hybrid def 2022-04-27 17:42:02 -07:00
lutepickle 4896f949ab Fix typo in PawnModExtensions.xml's filename 2022-04-27 14:43:31 -07:00
lutepickle 1eaa459e04 Put a few nameof()s in the Harmony patches 2022-04-27 11:10:58 -07:00
lutepickle 1c24fab708 Concealed estrus gets a (very small) boost, too 2022-04-27 10:28:40 -07:00
lutepickle 3009a3c6ef Make the estrus hookup override only apply to pawns that can get them pregnant 2022-04-27 07:12:17 -07:00
lutepickle c5622a10f8 Shift the priorities of the came inside moods a bit 2022-04-27 06:33:31 -07:00
lutepickle 3f02fde439 Allow different hookup settings during estrus 2022-04-26 18:47:33 -07:00
lutepickle 191e4ab5d9 A pawn in estrus will prefer partners that can impregnate them, and prefer to use their vagina 2022-04-26 11:49:20 -07:00
lutepickle 9e374f3350 Downgrade bad litterSizeCurve to a yellow warning 2022-04-26 05:28:11 -07:00
lutepickle 3a044e8bd9 Build dlls 2022-04-26 05:26:02 -07:00
lutepickle 8e8816d72e Merge branch 'father-indication' into 'main'
Father indication

See merge request lutepickle/rjw_menstruation!2
2022-04-26 12:24:50 +00:00
amevarashi 7d22c91433 Add option to disable GatherCum gizmo 2022-04-26 10:37:52 +05:00
amevarashi 454f50c97c Move "reset to default" label to XML 2022-04-24 20:23:05 +05:00
amevarashi 99fc386e1a Debug mode overrides InfoDetail 2022-04-24 17:07:15 +05:00
amevarashi a884ab2652 Hide name if parent unknown 2022-04-24 09:52:10 +05:00
lutepickle 72402e9e1d Rebuild SexperienceModule.dll, too 2022-04-23 05:32:58 -07:00
lutepickle b0984f6d61 Rebuild dlls after merge 2022-04-22 21:54:21 -07:00
lutepickle 0f8d6a53f3 Merge branch 'main' of https://gitgud.io/lutepickle/rjw_menstruation 2022-04-22 21:53:47 -07:00
lutepickle 0e9a5fabda Merge branch 'bugfixes' into 'main'
Bugfixes

See merge request lutepickle/rjw_menstruation!1
2022-04-23 04:53:34 +00:00
lutepickle a7968b530d Proper rewrite of induced ovulator dangerday 2022-04-17 22:40:30 -07:00
lutepickle 92d732992a Fix null ref when bleeding 0, add debug action to clear out a womb. 2022-04-17 21:39:18 -07:00
lutepickle 0f9bfcd302 Fix CumIn of 0 volume (e.g. setting bleed rate to 0 ml/h) 2022-04-17 19:16:15 -07:00
lutepickle 565f19e5e3 Fix the spelling on the filename of HediffComp_InducedOvulator.cs 2022-04-14 21:58:41 -07:00
lutepickle 1511c40001 Make the debug luteal action actually set to luteal 2022-04-06 08:46:57 -07:00
lutepickle 477468f8e4 Proply handle bad litter sizes 2022-04-03 22:12:45 -07:00
amevarashi 6e022789a2 Merge branch 'main' into bugfixes 2022-03-31 18:04:51 +05:00
amevarashi e67010239b Optimized gizmo injection 2022-03-23 21:27:06 +05:00
amevarashi 55e55fbc35 Hide egg implantation for the hidden pregnancy 2022-03-20 18:16:08 +05:00
amevarashi 33bbde68ca Disguise progress bar color for the hidden pregnancy 2022-03-20 17:48:27 +05:00
amevarashi b7267e614c Fix futanari impregnation 2022-03-20 14:21:00 +05:00
amevarashi d5d5dbd77c Womb cleaning spams job if no bucket on the map 2022-03-20 14:16:16 +05:00
lutepickle 23b09b0fa9 Add debug action to recalculate ovary power 2022-03-19 16:32:17 -07:00
lutepickle 38b16c75c3 Set newly initialized (e.g. newborn) pawns' stage to Young if they have 0 fertility 2022-03-19 16:29:48 -07:00
lutepickle 3ae66bd4a6 A whole mess of suggested code refactorings 2022-03-18 09:34:17 -07:00
lutepickle 9e8441ca2e Fix the 'consealed' typo 2022-03-18 07:14:14 -07:00
lutepickle 052b7661e4 Alter updateTraits to properly handle zygotic twin inheritance for differing number of natural traits 2022-03-17 12:14:01 -07:00
lutepickle 26b49379b1 Add various debug actions 2022-03-17 09:19:19 -07:00
lutepickle 531313f5d2 Enzygotic twins get the same inherited traits 2022-03-17 08:17:53 -07:00
lutepickle 8013481634 Properly count quirks for impregnation fetish 2022-03-16 12:28:37 -07:00
lutepickle 4677db4e93 Merge breastadjuster branch 2022-03-16 09:22:42 -07:00
lutepickle 51b3b1a924 The womb can hold its extra cum for at least the first part of a pregnancy 2022-03-15 11:21:04 -07:00
lutepickle 91c9f38fd0 More accurate debug text for breast growth 2022-03-15 11:13:08 -07:00
lutepickle 1fda8cbab9 Fix the fertilization chance setting slider at default 2022-03-15 09:36:04 -07:00
lutepickle 998fdee7e9 Add udder-specific graphics for the womb status 2022-03-15 06:59:04 -07:00
lutepickle 71c6b7aa2c A bit nicer debug breast status on load 2022-03-14 17:48:43 -07:00
lutepickle 26cc49e176 Add udder support 2022-03-14 17:29:57 -07:00
lutepickle a5c9ada196 Move growth/shrink debug info into the widget to not clutter the logs 2022-03-14 16:08:48 -07:00
lutepickle b985f4188d Set no backstory on newborns to match base RJW 2022-03-13 18:01:12 -07:00
lutepickle 10e0d67ae6 Set no backstory on newborns to match base RJW 2022-03-13 18:00:26 -07:00
lutepickle a967c7cfe3 Induced ovulators still get one more shot in climacteric follicular 2022-03-13 08:59:49 -07:00
lutepickle 89d6353e16 Make the breast adjustment go off of the mother's biological age 2022-03-13 08:31:50 -07:00
lutepickle e0b8f30e76 Make breast growth handle body size changes 2022-03-12 22:17:18 -08:00
lutepickle 1290d289a8 InverseLerp isn't Lerp. And use floats in the right place this time. 2022-03-12 20:53:17 -08:00
lutepickle 13a883ea69 Make breast growth handle body size changes 2022-03-12 20:14:06 -08:00
lutepickle ea45789db8 lastBabyBorn is calculated on load anyways, so there's no need to actually save it out 2022-03-12 18:11:45 -08:00
lutepickle e6fdeb837e Initial implementation of redone breast grow/shrink 2022-03-12 17:46:55 -08:00
lutepickle 47492f6472 Display correct fertility chance for wombs with a fertility modifier. 2022-03-12 10:16:04 -08:00
lutepickle af6003911c Lower default fertilization chance to 10%/ml to account for the increased cums injected. 2022-03-12 10:15:54 -08:00
lutepickle e9e352cf9a Overfilled vaginas lose cum up to twice as fast 2022-03-12 10:15:48 -08:00
lutepickle 7ce860dc1e Give induced ovulators special treatment for danger day 2022-03-12 10:15:42 -08:00
lutepickle 7387c0dfe9 Impregnation fetishists only prefer the ovulating 2022-03-12 10:15:36 -08:00
lutepickle 9da2c39d0e Only put cum in the womb when the one with the penis orgasms, and increase the volume to make up for it.
Also remove RJW's cum on body amount setting from the calculations.
2022-03-12 10:15:27 -08:00
lutepickle 6e0d6d691b Default babies to mother's last name instead of father's 2022-03-12 10:15:20 -08:00
lutepickle eff3d8177a Reset a baby's chrono age when they're born 2022-03-12 10:15:15 -08:00
lutepickle 680af9d3af Babies inherit parent traits 2022-03-12 10:15:11 -08:00
lutepickle 84c1d12cff Properly calculate gestation hours 2022-03-12 10:15:04 -08:00
lutepickle dc832dfb0f Don't start the infection timer until the absorber is dirty 2022-03-12 10:14:57 -08:00
lutepickle 3e589524e1 Clear estrusflag for induced after Follicular 2022-03-12 10:14:45 -08:00
lutepickle 6d442b5964 No leaking during knotting 2022-03-12 10:14:11 -08:00
c0ffee 9237ba6724 rebuild 2021-11-25 12:22:06 -08:00
c0ffee 9b98ad22d2 tentative update 2021-11-24 20:06:32 -08:00
moreoreganostodump 77cdbb23c8 1.0.5.9 2021-10-16 22:17:39 +09:00
moreoreganostodump 1a8d386e02 1.0.5.8 2021-09-26 18:19:24 +09:00
moreoreganostodump 29afd70610 1.0.5.7 2021-09-13 00:31:27 +09:00
moreoreganostodump ee897672c9 1.0.5.6 2021-08-29 22:54:54 +09:00
moreoreganostodump 86db33f800 Merge branch 'master' of https://github.com/moreoreganostodump/RJW_Menstruation 2021-08-22 01:30:59 +09:00
moreoreganostodump 07e05f0e92 1.0.5.5 2021-08-22 01:01:54 +09:00
EndsM 48b2094915
Update RJW_Menstruation.xml
Update the keyed values only cause I don't have right tool to extract text can be injected.
It mostly based on ts01252248 's translation, I basically just added the missing lines.
2021-08-16 23:38:46 +08:00
moreoreganostodump c1ac806cb2 1.0.5.4 2021-08-14 00:29:43 +09:00
moreoreganostodump 1851627615 1.0.5.3 2021-08-07 02:26:13 +09:00
moreoreganostodump 595ad1318c 1.0.5.2 2021-07-30 23:06:05 +09:00
moreoreganostodump cdfde8cea5 1.3 support 2021-07-22 19:11:26 +09:00
moreoreganostodump 4eb2cc38f4 1.3prerelease 2021-07-21 14:26:02 +09:00
moreoreganostodump 931cd83f91 1.3prerelease 2021-07-21 14:22:22 +09:00
moreoreganostodump 9e5dcb0392 1.3 2021-07-21 14:10:06 +09:00