Commit graph

272 commits

Author SHA1 Message Date
lutepickle
f2a599ab08 Fix typos in function names 2023-10-27 06:56:27 -07:00
lutepickle
db42fa0234 Optimize Notify_UpdatedGenes 2023-10-26 23:01:38 -07:00
lutepickle
89ecbcd5aa Properly put a space between the follicular description and the climacteric description for induced ovulators 2023-10-26 16:32:28 -07:00
lutepickle
9be4bc8e54 Tidy up VariousDefOf.HumanVaginaCompProperties 2023-10-26 15:49:05 -07:00
lutepickle
e8710149e5 Refactor the egg removing logic to make it a bit clearer 2023-10-23 09:57:52 -07:00
lutepickle
1ce69571f0 Refactor adding eggs to existing pregnancy, fix implanting eggs in a non-biotech pregnancy when set to biotech (e.g. animals) 2023-10-22 16:37:50 -07:00
lutepickle
5f97bd1433 Replace most instances of rjw part hediff lists with a simple check against the AllVaginas, etc lists 2023-10-11 08:21:47 -07:00
lutepickle
f08ff58b64 Split animal cycle check into generic ShouldCycle function, exclude egglaying races from cycling 2023-10-11 08:06:31 -07:00
lutepickle
ebf0db8ae6 Only show the button in the health tab for genitals, as opening the dialog for non-genital wombs causes errors. 2023-09-29 21:11:22 -07:00
lutepickle
4212fbab7b Be sure to specify pawn on pheromone exception 2023-09-15 18:37:23 -07:00
lutepickle
d5f2954aed Clarify ImplantChance: it's before the implant configuration setting 2023-09-06 12:16:43 -07:00
lutepickle
9cd87dda27 Refactor InducedOvulator.ShouldBeInEstrus 2023-09-05 11:56:07 -07:00
lutepickle
76eec3852a Use explicit types in a few places 2023-09-05 10:46:24 -07:00
lutepickle
8cdb00a8c2 Only give the littersizecurve ovulation warning once per pawn 2023-08-19 18:26:54 -07:00
lutepickle
690e61916c Ensure that bleeding ends right away if the pawn gains the no bleeding gene 2023-08-19 18:24:05 -07:00
lutepickle
aa84a2b8bc Revert "More descriptive error on race support incorrectly installed"
Apparently it goes off even if race support is installed right

This reverts commit 2737a680fa.
2023-08-16 19:39:07 -07:00
lutepickle
2737a680fa More descriptive error on race support incorrectly installed 2023-08-16 19:34:35 -07:00
lutepickle
caccc36fbf Remove redundant debug check 2023-08-10 20:22:32 -07:00
lutepickle
2c2b5a1ee2 Remove unnecessary "?? null" from GetFather 2023-08-10 18:48:56 -07:00
lutepickle
990774606c Compact the transpiler type checks a bit 2023-08-08 08:06:45 -07:00
lutepickle
9cdb887bdd If implant errors, see if there's a loose pregnancy to take. 2023-07-31 05:44:18 -07:00
lutepickle
0c38513084 Eliminate egg if there is an error implanting it. 2023-07-29 14:42:46 -07:00
lutepickle
214ab3ae88 Have the default constructor for eggs use the human lifespan 2023-07-28 09:50:13 -07:00
lutepickle
eb0d40ea1a Check for null pawn cum when merging cum 2023-07-27 14:44:14 -07:00
lutepickle
2350cf7355 Let a pawn precum into themself if it's otherwise valid 2023-07-27 14:42:45 -07:00
lutepickle
c37a7b0763 Don't precum into animals with cycle disabled 2023-07-27 14:41:45 -07:00
lutepickle
a7e452b254 Don't have androids with natural penises precum 2023-07-25 20:22:24 -07:00
lutepickle
2dc0885d53 Also initialize breasts on load 2023-07-03 09:21:55 -07:00
lutepickle
9d0d5f1d91 Initialize womb when displaying gizmo if needed. 2023-07-03 09:09:56 -07:00
lutepickle
39fe33acc6 Initialize after loading a pawn. This should cut down on uninitialized errors. 2023-07-03 09:08:38 -07:00
lutepickle
30a5d84476 Don't display cum overlay when stuffed with insect eggs 2023-06-29 15:59:02 -07:00
lutepickle
f5a302c272 Rename SimulationsPerHour to HoursBetweenSimulations. Also fix climacteric/menopause sex need calculation 2023-06-22 21:56:26 -07:00
lutepickle
b10baf2ba5 Remove the last vestiges of the sexperience bucket support 2023-06-21 10:33:42 -07:00
lutepickle
bd19a8c2ca Add animal pheromone slider to affect humanlikes 2023-06-18 08:48:05 -07:00
lutepickle
933c3cf626 Account for simulations per hour when increasing sex need in AfterSimulator 2023-06-17 11:21:34 -07:00
lutepickle
bccf587cea Updated womb/cum/fetus graphics by Euldrop 2023-06-17 09:52:01 -07:00
lutepickle
aba8ea1693 Introduce TickIntervalMaximum constant 2023-05-19 20:07:10 -07:00
lutepickle
f40a5f2246 Little refactor in GetCumsInfo 2023-05-19 19:45:27 -07:00
lutepickle
ff22e534d1 Encapsulate calculatingOvulationChance 2023-05-18 22:37:31 -07:00
lutepickle
924dc73024 Apply cramps to the comp's parent part instead of going through RJW to find it 2023-05-14 19:25:12 -07:00
lutepickle
f40eed6317 Capitalize EmitRatio 2023-05-09 23:01:55 -07:00
lutepickle
4c788906c7 Remove intensity from pheromone properties since it's just a modifier on daysToMaxSeverity 2023-05-09 15:50:36 -07:00
lutepickle
28d77ed1fb Allow pheromones to be disabled in the options 2023-05-09 10:57:49 -07:00
lutepickle
35adcf87ee Initial implementation of pheromone system 2023-05-09 10:53:08 -07:00
lutepickle
d67592e245 Replace Position with PositionHeld and Map with MapHeld 2023-05-09 09:00:33 -07:00
lutepickle
259201ec54 Have periodic ovulators properly go into anestrus if they don't bleed 2023-05-07 09:33:39 -07:00
lutepickle
d752bcfed4 Add egg restoration thought 2023-05-04 18:03:06 -07:00
lutepickle
b2e849eae1 Add new ideo-related thoughts 2023-05-04 17:52:42 -07:00
lutepickle
2601f88a2d Rename WantsToGetPregnant to IsProPregnancy and use it for cummers 2023-05-04 16:17:11 -07:00
lutepickle
45d7fc2c59 Fix spelling of overay to overlay 2023-05-04 15:18:19 -07:00
lutepickle
6f3f3d28cf Consolidate instances of TickInterval/TicksPerHour into a single function 2023-05-04 10:26:29 -07:00
lutepickle
42b465430e Account for tickinterval when considering fertility decay from antisperm 2023-05-04 10:10:15 -07:00
lutepickle
8f1c2eceb3 Add debug action to remove eggs, auto-remove eggs on setting follicular or bleeding 2023-05-04 07:54:58 -07:00
lutepickle
802fbbe3ca Simplify periodic ovulator's bleeding action 2023-05-03 22:52:30 -07:00
lutepickle
0999063728 Slight change to how ageOfLastBirth works, cut down on the save file size for breasts 2023-05-03 08:04:36 -07:00
lutepickle
6344a7c7ad Display the ovulation graphics going through the ovulation stage instead of at the end of follicular 2023-05-02 08:43:33 -07:00
lutepickle
a38d81424a Have CalculatedImplantChance use the cached ovulation chance 2023-05-02 08:35:39 -07:00
lutepickle
e43a50522b Add StageProgressNextUpdate 2023-05-01 15:11:58 -07:00
lutepickle
82a34f8ea8 Cache the ovulation and implantation chances to spare the UI 2023-05-01 14:23:02 -07:00
lutepickle
152a745af2 Make sure a fertilized egg loads properly when loading a pre-ticks save 2023-04-29 22:28:29 -07:00
lutepickle
270ac427c8 Pawn.RaceProps is equivalent to Pawn.def.race, so be consistent with it 2023-04-29 20:32:46 -07:00
lutepickle
6dc73a848e Give the ovulation stage the color of the sex drive 2023-04-29 17:49:02 -07:00
lutepickle
dd8ae8a09b Have sexperience-ideo pregnancy precepts count for mood effects 2023-04-23 20:16:26 -07:00
lutepickle
411fd16fe9 Change the text in the GC patch to be consistent with vanilla 2023-04-23 09:36:42 -07:00
lutepickle
2e2e2a120c For induced ovulators, use a variable instead of EggExist for estrus/dangerday in luteal. 2023-04-23 08:39:49 -07:00
lutepickle
3de006dbbf Don't show the tip string for dead pawns to avoid errors 2023-04-22 21:57:09 -07:00
lutepickle
0ff5fa96d0 Show the chance of implanation in the debug log on failure 2023-04-22 12:12:53 -07:00
lutepickle
bf0334d16e Add chance to debug implanation log 2023-04-21 07:59:01 -07:00
lutepickle
baeff0ea29 Little optimization in Fertilize calculation 2023-04-20 12:31:27 -07:00
lutepickle
db6e12fa8b Make the update interval setting exponential 2023-04-19 07:32:47 -07:00
lutepickle
0a5ab0bcfb Lower fluid leak to a filth every 2.5ml 2023-04-18 09:19:41 -07:00
lutepickle
e78a86599d Have cum fertility decay at the proper rate 2023-04-18 09:13:48 -07:00
lutepickle
02200b2bfa Little cleanups 2023-04-18 07:20:35 -07:00
lutepickle
5050e192ed Simulate when the pawn has a parent spawned, too 2023-04-17 21:52:41 -07:00
lutepickle
8718cca299 Fix Props not being initialized yet when calculating periodic ovulator race cycles 2023-04-16 19:41:57 -07:00
lutepickle
2dd9147afc Base periodic ovulator egg total off of the fastest interval of the vagina 2023-04-16 18:47:45 -07:00
lutepickle
08ebaa9db3 Unconditionally initialize cum and eggs (e.g. for infertile pawns) 2023-04-16 12:26:37 -07:00
lutepickle
4af5195de9 Give eggs the proper lifetime 2023-04-16 12:20:01 -07:00
lutepickle
eddccdc2ea Remove some force saves from Egg 2023-04-15 12:15:15 -07:00
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
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