Commit Graph

309 Commits

Author SHA1 Message Date
lutepickle 80243c78f1 Keep a running total of fluid leaked and emit a filth every 5 ml 2023-04-15 08:30:39 -07:00
lutepickle 89a7d410df Cut down on the savefile size by not writing default values 2023-04-15 08:05:49 -07:00
lutepickle f2fa99853f Don't save DoCleanWomb if it's false 2023-04-15 07:41:23 -07:00
lutepickle a5bcf696ba Make the recalculation interval long instead of daily 2023-04-14 08:23:02 -07:00
lutepickle 30329c883b Reduce the leakage per ml 2023-04-13 21:30:06 -07:00
lutepickle a023c884d3 Fix cum not diminishing 2023-04-13 21:06:32 -07:00
lutepickle e37940abcf Initial implementation of variable update rate 2023-04-13 20:23:45 -07:00
lutepickle 2696c2b1f0 Update Traditional Chinese translation by Hydrogen 2023-04-11 06:09:45 -07:00
lutepickle 1088a4c8e9 Fix the texture path in the normal follicular, too. 2023-04-10 15:36:56 -07:00
lutepickle 25556c464e Fix bad texture error for low fertility during induced ovulator sex 2023-04-10 15:34:08 -07:00
lutepickle 334ef9d52a Fix blocking menstruation genes during pawn generation (e.g. colony setup) 2023-04-09 08:48:51 -07:00
lutepickle 80a987b0bd Just remove the ovarypower/ovulated comparsion. It's fine if ovarypower goes negative 2023-03-20 16:27:41 -07:00
lutepickle 2ac4e1f8e5 Fix wrong comparison in OvulatoryAction 2023-03-20 16:17:16 -07:00
lutepickle cb8a001cdf Change removecums to a HashSet 2023-03-19 22:52:39 -07:00
lutepickle f7e3d6c1c4 Switch deadeggs to a HashSet 2023-03-19 22:48:04 -07:00
lutepickle 310c03a193 Remove the early exit from the implant loop for non-RJW multiple pregnancy. This lets Biotech fraternal twins implant in the same hour. 2023-03-19 22:39:55 -07:00
lutepickle e5aa310528 Move quirk testing into a dedicated function in anticipation of the RJW quirk submod 2023-03-17 20:07:00 -07:00
lutepickle 5924c73b2f Track birth counts with the pregenerated babies 2023-03-17 09:34:45 -07:00
lutepickle f7348ccee8 SafeSkinColor needs to catch InvalidOperationException, too, it seems 2023-03-17 07:01:55 -07:00
lutepickle 93855c5ee7 Rework infertile decision, let the last egg ovulated potentially implant. Guarantee full drug ovulation even if eggs aren't available. 2023-03-16 12:24:47 -07:00
lutepickle 9aab479fe6 Correct PostFix to Postfix 2023-03-12 17:27:04 -07:00
lutepickle 699b3aa6d2 Fix bug introduced in ovulation rework which made induced ovulators not ovulate after follicular 2023-03-12 15:54:14 -07:00
lutepickle de2da85558 Fix Null father in womb dialog for Biotech pregnancies 2023-03-11 14:07:55 -08:00
lutepickle c05d8bad79 Only decrement ovary power by eggs actually ovulated, debug log under-ovulations 2023-03-11 10:21:25 -08:00
lutepickle 65b69eaf76 Shift breeder from implant chance to ovulation chane. It would overflow back down anyways. 2023-03-11 09:17:17 -08:00
lutepickle 2798d923b1 Don't show the ovulation chance on non-humans 2023-03-10 09:04:00 -08:00
lutepickle 3646f1135b Climacteric is 20% chance to skip, not 20% chance to ovulate 2023-03-06 17:52:11 -08:00
lutepickle 1aaaf50b64 Display ovaries at a lower state when ovulation chance is lower 2023-03-06 17:35:11 -08:00
lutepickle 2bb0871919 Properly set the conditions to not go/stay in the infertile stage for InfertileAction and RecoverAction 2023-03-06 17:20:49 -08:00
lutepickle 4504d02245 Switch some comp stages to GoNextStage 2023-03-06 17:05:01 -08:00
lutepickle 98cfa23b88 Replace some usage of Rand.Range with Rand.Chance 2023-03-06 16:58:23 -08:00
lutepickle c8d32f883f New ovulation chance system 2023-03-06 16:53:22 -08:00
lutepickle 7825418da9 Properly add space before climacteric label 2023-03-06 14:40:29 -08:00
lutepickle 325b60b51c Make EggHealth properly return a float 2023-03-06 13:51:11 -08:00
lutepickle 297e37a4ef Add comment on why fixedLastName doesn't work 2023-03-06 05:49:40 -08:00
lutepickle 1bc5b45669 Fix danger day and estrus considering eggs to last 24x times as long as they should 2023-03-05 21:20:16 -08:00
lutepickle 842f6ceec1 A little code cleanup 2023-03-05 19:24:23 -08:00
lutepickle 8752aa1437 Add state to hediff tooltip, and time to next state in debug tooltip 2023-03-04 15:51:57 -08:00
lutepickle f99d833e71 Set canine vaginas to periodic ovulation 2023-03-04 15:49:53 -08:00
lutepickle 51bc32248a Remove milk patch that was breaking MC's textures 2023-03-03 15:11:35 -08:00
lutepickle e4583fe9d7 Add placeholder graphic for genes 2023-03-02 18:55:29 -08:00
lutepickle 5abdf52dbe Use GoNextStage more to properly reset curStageHrs 2023-03-02 14:42:49 -08:00
lutepickle 69934d06f5 Add patch to darken nipples during Biotech lactation, but commented out 2023-03-01 17:00:58 -08:00
lutepickle 09f9438bcc Reset the baby name deadline at birth 2023-03-01 16:29:58 -08:00
lutepickle 91142d640f Copy hair color for identical twins 2023-03-01 10:21:59 -08:00
lutepickle b28beb8eaa Add some debug logging around the pregnancy to labor transition 2023-03-01 09:55:54 -08:00
lutepickle ca895ef296 Show the debug due date on the gizmo for Biotech pregnancies 2023-02-28 18:02:20 -08:00
lutepickle 5c27575446 Save the Biotech twins setting 2023-02-27 21:36:31 -08:00
lutepickle 92ace30022 Properly show multiple fetuses with pregenerated babies 2023-02-27 21:33:14 -08:00
lutepickle 672e6f6ecc Remove unneeded milk bottle graphics 2023-02-13 10:22:23 -08:00
lutepickle 2b0d5dd0e6 Some mods break SkinColor to the point that even trying to access it throws a null ref, so go work around that 2023-01-25 07:11:00 -08:00
lutepickle aba80efe58 Don't allow adding genes to pawns without wombs 2023-01-22 09:44:28 -08:00
lutepickle 9f20f78aab Remove a HarmonyDebug 2023-01-11 07:34:58 -08:00
lutepickle 71575c671e Fix error when trying to terminate a menstruation pregnancy 2023-01-11 07:32:50 -08:00
lutepickle da7284b909 Make the HAR disabler conditional only on the configuration. There's too many birtherThing/geneticMother edge cases to make puzzling it out practical 2023-01-11 06:24:14 -08:00
lutepickle 3132992aa3 A bunch of type-safety around HAR. 2023-01-10 16:09:37 -08:00
lutepickle 2cb26ea016 HAR transpiles ApplyBirthOutcome to produce multiple children per littersize, but the pregenerated babies already handle that. So patch HAR to only produce one if our system is running 2023-01-10 12:41:11 -08:00
lutepickle b9bfad10bb Resolve graphics on all newly generated babies, not just the first of a set 2023-01-10 08:20:22 -08:00
lutepickle 7d8228e03a Ensure that Biotech babies are born at zero ticks of age 2023-01-10 07:05:13 -08:00
lutepickle 93566b5fa3 Call ResolveAllGraphics unconditionally for babies. Also copy skinColorOverride for twins 2023-01-10 05:46:16 -08:00
lutepickle d34c96315a Have the babies track their fathers during pregnancy 2023-01-09 08:50:50 -08:00
lutepickle 638b9f4611 Make the mod options window a bit longer just to make all the buttons appear again 2023-01-08 12:53:26 -08:00
lutepickle 08a50e47c3 Add Biotech twin option to configuration settings, disabled by default 2023-01-08 12:33:06 -08:00
lutepickle c3176fb0e5 Integration of pregenerated babies into the womb dialog 2023-01-08 12:19:47 -08:00
lutepickle f5f8eba037 Save option for enabling biotech twins 2023-01-08 12:02:18 -08:00
lutepickle fcfb7cdefb Add support for pregenerated babies into Implant 2023-01-08 12:01:45 -08:00
lutepickle 89f26b2601 Add the two transpilers to allow looping through babies 2023-01-08 11:29:21 -08:00
lutepickle e42bbdb3d4 Add the ApplyBirthOutcome transpiler 2023-01-08 10:11:58 -08:00
lutepickle 7bf9f80742 Add a missing using directive to PregnancyCommon 2023-01-07 21:23:08 -08:00
lutepickle 8aff96e5a4 Prevent two humanlikes from creating an animal for Biotech pregnancies 2023-01-07 20:58:28 -08:00
lutepickle 12c760d16c Fix periodic ovulator cycle variability 2023-01-07 20:26:13 -08:00
lutepickle 045e9548f6 Framework for pregenerated babies 2023-01-07 20:18:17 -08:00
lutepickle 3f21b760b2 Make the MethodInfos in MultiplePregnancy static. 2023-01-07 12:00:48 -08:00
lutepickle 21e471ebf3 Use the builtin BestOutcome for the childbirth ritual instead of searching our own. 2023-01-07 11:50:37 -08:00
lutepickle da9903aaf9 Updated Traditional Chinese by Hydrogen 2023-01-07 06:46:15 -08:00
lutepickle 22b2aca312 Change the terminology of the gene descriptions a bit 2023-01-07 06:28:16 -08:00
lutepickle b4aa55c159 Re-add GetMenstruationComp(Hediff) marked as obsolete. There's code out there that calls it. 2023-01-07 06:08:42 -08:00
lutepickle 68f05dc272 The genes aren't inheritable, so don't bother saying "born with" in the egg multiplier descriptions. Leave support in the code, though. 2023-01-07 05:32:19 -08:00
lutepickle f3e14e67b0 Initial implementation of genes 2023-01-03 22:48:06 -08:00
lutepickle 8d507a5e69 Disable breast growth for ageless pawns to prevent them from getting stuck at max size post-birth. 2023-01-03 19:11:20 -08:00
lutepickle 1a1bc2e385 Small update to option text 2023-01-02 17:45:30 -08:00
lutepickle 190173d87d Have AddNewBaby use the vanilla xenotype inheritance functions 2022-12-28 09:03:39 -08:00
lutepickle ba3f24cba3 Only remove cramps if no other womb is bleeding 2022-12-27 06:52:33 -08:00
lutepickle 398f1b7066 Fix the biosculptor file spelling in the project file 2022-12-26 09:22:40 -08:00
lutepickle 5c3c4eff92 Update bioscultper pod icon 2022-12-25 15:51:33 -08:00
lutepickle f235c32af1 Add HediffComp_PeriodicOvulator 2022-12-25 15:41:36 -08:00
lutepickle b3ffe9afed Have luteal advance at curStageHrs == currentIntervalHours for consistency with the other stages 2022-12-25 14:32:52 -08:00
lutepickle def93aa218 Let about a third of penises precum during sex 2022-12-25 11:51:20 -08:00
lutepickle 70d65d379c Impregnation fetishists are less likely to pull out 2022-12-25 10:36:21 -08:00
lutepickle ecc849e85f Make ovipostor cum fertility go off of the right pawn 2022-12-25 09:18:51 -08:00
lutepickle 22a52093cb Reduce cumin chance for avoid pregnancy approach 2022-12-25 08:51:42 -08:00
lutepickle 8c0a8f05d1 A little cleanup 2022-12-25 06:38:58 -08:00
lutepickle cf2eff9556 Move the biosculpter patch since it's not Biotech 2022-12-25 06:36:56 -08:00
lutepickle 8d919739bf Produce baby naming letter in multiple pregnancy 2022-12-24 20:24:49 -08:00
lutepickle f6552b3a68 Add a biosculptor recipe to restore eggs 2022-12-24 19:44:07 -08:00
lutepickle 2bc1133861 Capitalize DoImpregnate_Patch to match RJW's capitalization 2022-12-15 14:47:20 -08:00
lutepickle bbd8030cc6 Update ingestion hediff giver for Biotech 2022-12-11 10:25:12 -08:00
lutepickle 221883c2fc Add option to hide womb status for drafted pawns 2022-12-11 10:21:01 -08:00
lutepickle 9c2c0dc5aa Properly capitalize Configurations.SetToDefault 2022-12-11 06:34:06 -08:00
lutepickle 2b38631d07 Change folder name to fix Traditional Chinese translation 2022-12-08 20:25:23 -08:00
lutepickle a917a940ee Add a function to damage pants based on fluid leakage. Not yet called by anything 2022-11-29 10:11:28 -08:00
lutepickle 60343e8b3f Have the breasts grow and shrink for Biotech pregnancies, too 2022-11-27 09:33:19 -08:00
lutepickle 06039238d2 Additional safety checks for the transpilers 2022-11-26 15:20:52 -08:00
lutepickle c955221f64 Shift the HAR generation to only the first baby of a set. 2022-11-26 15:20:16 -08:00
lutepickle 82440db26b Set up the xenotype inheritance for all babies, not just enzygotic ones 2022-11-25 07:52:16 -08:00
lutepickle 9891f72fc6 Poke HAR to generate parts early for enzygotic duplication 2022-11-25 07:40:45 -08:00
lutepickle 08d84801a6 HAR added headVariant and bodyVariant, so duplicate those for enzygotic siblings, too. 2022-11-24 17:24:21 -08:00
lutepickle 86aef06981 Do the post-pregnancy breast growth for Biotech births. 2022-11-24 07:12:30 -08:00
lutepickle fe20e9d78b Have terminate pregnancy operation work on multiple pregnancies. Only remove the one that is the least far along. 2022-11-22 17:48:20 -08:00
lutepickle 1b5e204795 Set new babies to baseliner if there's no xenotype to inherit 2022-11-20 21:26:03 -08:00
lutepickle 8d0d980048 Null check in the xenotype decider 2022-11-20 12:42:40 -08:00
lutepickle 5a17c0e72f Update for the RJW function changes. Again. 2022-11-18 06:48:43 -08:00
lutepickle 7eee57709d Re-enable Animal Genetics support 2022-11-17 09:19:46 -08:00
lutepickle 889e8f90f2 Remove obsolete melanin references 2022-11-16 19:19:18 -08:00
lutepickle 21144b0005 Rename gizmo patch file to match the others 2022-11-16 08:19:04 -08:00
lutepickle 80686dc008 Update for RJW 5.3.0.7 2022-11-16 07:46:02 -08:00
lutepickle 8b7902bc8a Pick up pregnancies on embryo implantation 2022-11-10 22:31:14 -08:00
lutepickle a8793765c5 Deduct an egg from a pawn's ovaries upon extraction 2022-11-10 21:46:42 -08:00
lutepickle 0154f89438 Don't allow ovum extraction for menopausal pawns 2022-11-10 21:25:07 -08:00
lutepickle 4f2830084c Have pawns with sterile genes start infertile 2022-11-10 08:19:56 -08:00
lutepickle b615b85597 Update race support patches for new and removed vaginas 2022-11-09 08:26:21 -08:00
lutepickle 3811b6cf0f Remove 'you need to restart' messages from the configs as that doesn't apply anymore 2022-11-08 18:08:51 -08:00
lutepickle 225e1fe143 Add a sterile genes check in the infertile and recovery actions 2022-11-05 07:59:44 -07:00
lutepickle b9494a9acc Min is not max. Again 2022-11-05 07:57:44 -07:00
lutepickle 2a7feede8b Null check Biotech fathers in womb window 2022-11-04 17:25:03 -07:00
lutepickle 06fbc0e188 Remove redundant assignments 2022-11-04 12:07:44 -07:00
lutepickle 6fe38eb46e Respect Biotech IUDs 2022-11-04 12:06:03 -07:00
lutepickle 742381dd54 Don't run the cycle for pawns that are genetically sterile 2022-11-04 10:52:25 -07:00
lutepickle ba6f1886d1 Males with sterile genes cum 0 fertility sperm 2022-11-04 10:44:33 -07:00
lutepickle 0647d25fa2 Don't need the null check in enzygoticSiblings anymore in 1.4 2022-11-04 09:18:27 -07:00
lutepickle db5813d768 Move the xenotype inheritance fully into the gene null check, since it is possible with the hybrid system for two humans to make an animal 2022-11-04 09:01:36 -07:00
lutepickle 040ea6e672 Test for Biotech and only set xenotype if it's not null 2022-11-04 08:59:39 -07:00
lutepickle ea1c5794f9 Handle inheritable xenotypes and hybrids 2022-11-04 08:43:58 -07:00
lutepickle 8c213c4fe6 Don't let a biotech pregnancy go into labor if another womb already is 2022-11-04 07:09:33 -07:00
lutepickle 2846117881 Track the changing hediff through pregnancy and labor 2022-11-03 19:01:50 -07:00
lutepickle 483ab2f7c0 Somehow OvaryPowerThreshold can end up as 0 and cause errors, so be sure to make it minimum 1 2022-10-31 20:53:57 -07:00
lutepickle 03f511fa02 Remove commented-out MultiplePregnancy options 2022-10-30 19:18:28 -07:00
lutepickle a9d227153f Rebuild 2022-10-30 10:37:08 -07:00
lutepickle d8ce861448 Add the option to start new biotech pregnancies 2022-10-30 10:36:38 -07:00
lutepickle 2f10a9cc3d Use ModsConfig.IsActive to detect HAR and AG 2022-10-30 10:05:58 -07:00
lutepickle e64bd53318 Finally fix the scroll bug in the mod options 2022-10-30 09:29:28 -07:00
lutepickle 67e6818d73 We don't have to test for existing biotech pregs on implantation. The existing code will catch a non-multiple. This will also allow multiwomb pregnancy properly with one in biotech. 2022-10-29 19:05:08 -07:00
lutepickle 6e6579f1ff Have humans lactate on birth with biotech 2022-10-29 08:56:55 -07:00
lutepickle 592cb361ad Properly display biotech pregnanies in the womb dialog and gizmo 2022-10-28 15:14:29 -07:00
lutepickle c72ff42da1 Update GetPregnancyIcon for non-RJW pregnancies 2022-10-28 15:01:28 -07:00
lutepickle 31c3026ca0 Basic framework of biotech pregnancy handling 2022-10-27 13:57:25 -07:00
lutepickle f368f643f4 Update version number and changelog 2022-10-24 18:02:25 -07:00
lutepickle 5888458c46 Properly inherit genes from parents and copy to identical twins 2022-10-24 17:49:58 -07:00
lutepickle 523facc980 Build 2022-10-23 19:51:24 -07:00
lutepickle ee9ef8f22e Don't save Cum.internalThing 2022-10-23 19:50:20 -07:00
lutepickle 7504171b42 Remove nipple back compatibility 2022-10-23 19:38:00 -07:00
lutepickle 10664bfb69 Remove obsolete climacteric and menopause hediffs 2022-10-23 19:35:30 -07:00
lutepickle e697793eb1 Rename Young stage to Infertile, as it applies to all 0% ferility pawns 2022-10-23 19:29:01 -07:00
lutepickle 9a82b4ab84 Remove climacteric stages 2022-10-23 19:26:59 -07:00
lutepickle 6b3044488d Basic cleanup of errors related to new rimworld API 2022-10-23 19:23:00 -07:00
lutepickle 908eb01a50 Update references to 1.4 2022-10-23 18:27:19 -07:00
lutepickle 5c1cc89f81 Disable Animal Genetics compatibility for now 2022-10-23 18:24:39 -07:00
lutepickle 65d9df832d Delete the sexperience module entirely 2022-10-23 18:03:58 -07:00
lutepickle ee2ea2e34f Inital file copy for 1.4 2022-10-23 18:02:02 -07:00