Skip to content
Snippets Groups Projects
Commit 8985d454 authored by Pregmodder's avatar Pregmodder
Browse files

Merge branch 'pregmod-dev' into 'pregmod-master'

basic initialization of menstrual cycle variables

See merge request pregmodfan/fc-pregmod!4121
parents 162b6045 1b1e091e
No related branches found
No related tags found
No related merge requests found
......@@ -68,6 +68,20 @@ Do you know you are pregnant (currently unused due to lack of menstrual cycle)
0 - no
1 - yes
fertKnown:
Menstrual cycle known variable. To be used for fert cycle discover and things like pregnancy without a first period
0 - no
1 - yes
fertPeak:
Menstrual cycle control variable.
0 - Danger week
1+ - safe week
belly:
(uncommon in events)
......
......@@ -1878,6 +1878,20 @@ readyOva:
Number of ready to be impregnated ova (override normal cases), default - 0. For delayed impregnations with multiples. Used onetime on next call of the SetPregType widget. After SetPregType use it to override .pregType, it set back to 0 automatically.
fertKnown:
Menstrual cycle known variable. To be used for fert cycle discover and things like pregnancy without a first period
0 - no
1 - yes
fertPeak:
Menstrual cycle control variable.
0 - Danger week
1+ - safe week
ovaImplant:
Ovary implant type.
......
......@@ -846,6 +846,20 @@ App.Entity.SlaveState = class SlaveState {
* * "restraint": Provides structural support for extremely oversized pregnancies
*/
this.wombImplant = "none";
/**
* Menstrual cycle known variable. To be used for fert cycle discover and things like pregnancy without a first period
*
* * 0: no
* * 1: yes
*/
this.fertKnown = 0;
/**
* Menstrual cycle control variable.
*
* * 0: Danger week
* * 1+: safe week
*/
this.fertPeak = 0;
/**
* has the slave been turned into a broodmother
*
......
......@@ -289,6 +289,7 @@ window.SlaveDatatypeCleanup = (function SlaveDatatypeCleanup() {
if (typeof slave.ovaImplant !== "string") {
slave.ovaImplant = 0;
}
slave.fertPeak = Math.clamp(+slave.fertPeak, 0, 4) || 0;
slave.broodmother = Math.clamp(+slave.broodmother, 0, 3) || 0;
slave.broodmotherFetuses = Math.max(+slave.broodmotherFetuses, 0) || 0;
slave.broodmotherOnHold = Math.clamp(+slave.broodmotherOnHold, 0, 1) || 0;
......@@ -898,6 +899,7 @@ window.childPregnancyDatatypeCleanup = function childPregnancyDatatypeCleanup(ch
if (typeof child.pregControl !== "string") {
child.pregControl = "none";
}
child.fertPeak = Math.clamp(+child.fertPeak, 0, 4) || 0;
WombNormalizePreg(child);
};
......@@ -1252,6 +1254,7 @@ window.PCDatatypeCleanup = function PCDatatypeCleanup() {
}
PC.vagina = Math.clamp(+PC.vagina, 0, 1) || 0;
PC.belly = Math.max(+PC.belly, 0) || 0;
PC.fertPeak = Math.clamp(+PC.fertPeak, 0, 4) || 0;
PC.pregMood = Math.clamp(+PC.pregMood, 0, 2) || 0;
PC.labor = Math.clamp(+PC.labor, 0, 1) || 0;
PC.births = Math.max(+PC.births, 0) || 0;
......
......@@ -100,6 +100,8 @@
<<set $args[0].preg = $args[1].preg>>
<<set $args[0].pregSource = $args[1].pregSource>>
<<set $args[0].pregType = $args[1].pregType>>
<<set $args[0].fertKnown = $args[1].fertKnown>>
<<set $args[0].fertPeak = $args[1].fertPeak>>
<<set $args[0].broodmother = $args[1].broodmother>>
<<set $args[0].broodmotherFetuses = $args[1].broodmotherFetuses>>
<<set $args[0].broodmotherOnHold = $args[1].broodmotherOnHold>>
......
:: pregmod widgets [nobr widget]
<<widget "initPC">>
<<set $PC = {name: "Anonymous", surname: 0, title: 1, ID: -1, genes: "XY", pronoun: "he", possessive: "him", object: "his", dick: 1, vagina: 0, preg: 0, pregType: 0, pregWeek: 0, pregKnown: 0, belly: 0, bellyPreg: 0, mpreg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, lactation: 0, lactationDuration: 0, career: "capitalist", rumor: "wealth", birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, trading: 0, warfare: 0, slaving: 0, engineering: 0, medicine: 0, hacking: 0, cumTap: 0, race: "white", origRace: "white", skin: "white", origSkin: "white", markings: "none", eyeColor: "blue", origEye: "blue", pupil: "circular", sclerae: "white", hColor: "blonde", origHColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0, birthCitizen: 0, birthSelf: 0, birthLab: 0, birthFutaSis: 0, slavesFathered: 0, slavesKnockedUp: 0, intelligence: 100, face: 100, faceShape: "normal", actualAge: 35, physicalAge: 35, visualAge: 35, boobsImplant: 0, butt: 0, buttImplant: 0, balls: 0, ballsImplant: 0, ageImplant: 0, newVag: 0, reservedChildren: 0, reservedChildrenNursery: 0, fertDrugs: 0, forcedFertDrugs: 0, staminaPills: 0, ovaryAge: 35, eggType: "human", ballType: "human", storedCum: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", fetish: "none", pubicHStyle: "hairless", underArmHStyle: "hairless", geneticQuirks: {macromastia: 0, gigantomastia: 0, fertility: 0, hyperFertility: 0, superfetation: 0, gigantism: 0, dwarfism: 0, pFace: 0, uFace: 0, albinism: 0, heterochromia: 0, rearLipedema: 0, wellHung: 0, wGain: 0, wLoss: 0, androgyny: 0, girlsOnly: 0}}>>
<<set $PC = {name: "Anonymous", surname: 0, title: 1, ID: -1, genes: "XY", pronoun: "he", possessive: "him", object: "his", dick: 1, vagina: 0, preg: 0, pregType: 0, pregWeek: 0, pregKnown: 0, fertKnown: 0, fertPeak: 0, belly: 0, bellyPreg: 0, mpreg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, lactation: 0, lactationDuration: 0, career: "capitalist", rumor: "wealth", birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, trading: 0, warfare: 0, slaving: 0, engineering: 0, medicine: 0, hacking: 0, cumTap: 0, race: "white", origRace: "white", skin: "white", origSkin: "white", markings: "none", eyeColor: "blue", origEye: "blue", pupil: "circular", sclerae: "white", hColor: "blonde", origHColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0, birthCitizen: 0, birthSelf: 0, birthLab: 0, birthFutaSis: 0, slavesFathered: 0, slavesKnockedUp: 0, intelligence: 100, face: 100, faceShape: "normal", actualAge: 35, physicalAge: 35, visualAge: 35, boobsImplant: 0, butt: 0, buttImplant: 0, balls: 0, ballsImplant: 0, ageImplant: 0, newVag: 0, reservedChildren: 0, reservedChildrenNursery: 0, fertDrugs: 0, forcedFertDrugs: 0, staminaPills: 0, ovaryAge: 35, eggType: "human", ballType: "human", storedCum: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", fetish: "none", pubicHStyle: "hairless", underArmHStyle: "hairless", geneticQuirks: {macromastia: 0, gigantomastia: 0, fertility: 0, hyperFertility: 0, superfetation: 0, gigantism: 0, dwarfism: 0, pFace: 0, uFace: 0, albinism: 0, heterochromia: 0, rearLipedema: 0, wellHung: 0, wGain: 0, wLoss: 0, androgyny: 0, girlsOnly: 0}}>>
<<set WombInit($PC)>>
......@@ -107,8 +107,10 @@
<<if ndef $args[0].pubertyXX>>
<<if $args[0].physicalAge >= $args[0].pubertyAgeXX>>
<<set $args[0].pubertyXX = 1>>
<<set $args[0].fertKnown = 1>>
<<else>>
<<set $args[0].pubertyXX = 0>>
<<set $args[0].fertKnown = 0>>
<</if>>
<</if>>
<<if ndef $args[0].pubertyAgeXY>>
......
......@@ -182,6 +182,8 @@ slaveName: $activeSlave.slaveName /* TODO: figure out why this is being inden
<br>pregAdaptation: $activeSlave.pregAdaptation
<br>ovaImplant: $activeSlave.ovaImplant
<br>wombImplant: $activeSlave.wombImplant
<br>fertKnown: $activeSlave.fertKnown
<br>fertPeak: $activeSlave.fertPeak
<br>broodmother: $activeSlave.broodmother
<br>broodmotherFetuses: $activeSlave.broodmotherFetuses
<br>broodmotherOnHold: $activeSlave.broodmotherOnHold
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment