diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt index 30cd54b3c64e85470c0174c02d46f17a907377f8..05d56cfe7004ebbecbc0a58f2b767dea6ccd4d2e 100644 --- a/devNotes/VersionChangeLog-Premod+LoliMod.txt +++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt @@ -9,6 +9,8 @@ Pregmod -easier to passively gain slaving skill -added overalls outfit -UI changes + -slave data structural changes + -tanning and skin color tweaks -fixes -code cleaning diff --git a/src/js/pregJS.js b/src/js/pregJS.js index 29a156582111bfd18ffccd936ccf538fab404962..c3024a85201ec1b1d85af3d525ae407d35affe4e 100644 --- a/src/js/pregJS.js +++ b/src/js/pregJS.js @@ -382,6 +382,9 @@ window.setPregType = function(actor) { } } } + if (actor.geneticQuirks.superfetation === 2 && actor.womb.length > 0) { + ovum = Math.ceiling(ovum / 4); + } return ovum; }; @@ -395,7 +398,13 @@ window.setPregType = function(actor) { */ window.knockMeUp = function(target, chance, hole, fatherID, displayOverride) { const V = State.variables; + let pronouns; + let He; let r = ""; + if (target.ID !== -1) { + pronouns = getPronouns(slave); + He = capFirstChar(pronouns.pronoun); + } if (V.seePreg !== 0) { if (jsRandom(0,99) < (chance + (V.reproductionFormula*((target.pregSource <= 0) ? ((target.ID === -1) ? 0 : 10) : 20)))) { if (target.mpreg === hole) { @@ -416,10 +425,8 @@ window.knockMeUp = function(target, chance, hole, fatherID, displayOverride) { target.pregKnown = 1; if (target.ID === -1) { /* r += "@@.lime;You have gotten pregnant.@@"; */ - } else if (target.fuckdoll === 0) { - r += "@@.lime;She has become pregnant.@@"; } else { - r += "@@.lime;It has become pregnant.@@"; + r += `<span class="lime">${He} has become pregnant.</span>`; } } else { target.pregKnown = 1; @@ -443,13 +450,25 @@ window.knockMeUp = function(target, chance, hole, fatherID, displayOverride) { target.pregKnown = 1; if (target.ID === -1) { /* r += "@@.lime;You have gotten pregnant.@@"; */ - } else if (target.fuckdoll === 0) { - r += "@@.lime;She has become pregnant.@@"; } else { - r += "@@.lime;It has become pregnant.@@"; + r += `<span class="lime">${He} has become pregnant.</span>`; + } + if (target.geneticQuirks.superfetation === 2 && target.womb.length > 0) { + if (V.seeHyperPreg === 1) { + target.fertPeak = 1; + } else { + target.fertPeak = jsRandom(10, 20); + } } } else { target.pregKnown = 1; + if (target.geneticQuirks.superfetation === 2 && target.womb.length > 0) { + if (V.seeHyperPreg === 1) { + target.fertPeak = 1; + } else { + target.fertPeak = jsRandom(10, 20); + } + } } } } diff --git a/src/js/slaveStatsChecker.js b/src/js/slaveStatsChecker.js index b88a492d73a69d0a67d0dbe0fb368e908656f06d..16ee9096abd3dfbd39034d26e2e2d10c7868a280 100644 --- a/src/js/slaveStatsChecker.js +++ b/src/js/slaveStatsChecker.js @@ -183,8 +183,6 @@ window.isFertile = function(slave) { if (slave.womb.length > 0 && slave.geneticQuirks.superfetation < 2) { /* currently pregnant without superfetation */ return false; - } else if (slave.womb.length > 0) { /* temp failure condition to prevent current double preg bug */ - return false; } else if (slave.broodmother > 0) { /* currently broodmother */ return false; } else if (slave.preg < -1) { /* sterile */ @@ -200,8 +198,18 @@ window.isFertile = function(slave) { } else if (slave.bellyImplant !== -1) { return false; } else if (slave.mpreg === 1) { + if (slave.womb.length > 0) { // superfetation route + if (slave.fertPeak !== 0) { + return false; + } + } return true; /* pregmod end */ } else if (slave.ovaries === 1) { + if (slave.womb.length > 0) { // superfetation route + if (slave.fertPeak !== 0) { + return false; + } + } return true; } return false; diff --git a/src/uncategorized/corporationDevelopments.tw b/src/uncategorized/corporationDevelopments.tw index 7b7b5cf9b9382224d6ad91de3fc77fc08c7af273..3dfe357eb9594c13d9e593c51a9492c84c28844d 100644 --- a/src/uncategorized/corporationDevelopments.tw +++ b/src/uncategorized/corporationDevelopments.tw @@ -395,7 +395,7 @@ _corpDivWhoreSlavesRoom = corpDivWhoreSlavesRoom()>> $corpDivTrainSlaves2 = 0>> to the market and made @@.yellowgreen;<<print cashFormat(_corpDivTrainRev)>>.@@ <</if>> - <<elseif $corpDivTrainSlaves2 > 0>>It is holding <<if $corpDivTrainSlaves2 > 1>>$corpDivTrainSlaves2 trained slaves<<elseif $corpDivTrainSlaves2 == 1>>one trained slave<<else>> at the end of the week.<</if>> + <<elseif $corpDivTrainSlaves2 > 0>>It is holding <<if $corpDivTrainSlaves2 > 1>>$corpDivTrainSlaves2 trained slaves<<elseif $corpDivTrainSlaves2 == 1>>one trained slave<</if>> at the end of the week. <<if $corpDivTrainSlaves2 > Math.trunc($corpDivTrainDev * 0.4)>> <<if $corpDivTrainSurgeryTimer < 5 || $corpDivSurgery == 0>> <<set _corpDivTrainCapSlaves = $corpDivTrainSlaves2 - Math.trunc($corpDivTrainDev * 0.4), diff --git a/src/uncategorized/nextWeek.tw b/src/uncategorized/nextWeek.tw index b1b4d7d45eb1c9c9eb9b78e710528eb55f5d7a79..d12f5702b41db198b78d39e80047a9d29756fc67 100644 --- a/src/uncategorized/nextWeek.tw +++ b/src/uncategorized/nextWeek.tw @@ -25,6 +25,15 @@ <</if>> <</if>> <</if>> +<<if $menstruation == 1>> +<<elseif $PC.geneticQuirks.superfetation == 2 && $PC.womb.length > 0>> + <<if $PC.fertPeak == 0>> + <<set $PC.fertPeak = 1>> + <</if>> + <<set $PC.fertPeak-->> +<<elseif $PC.fertPeak != 0>> + <<set $PC.fertPeak = 0>> +<</if>> /*Adding random changes to the economy*/ <<if $difficultySwitch == 1>> @@ -131,6 +140,15 @@ <<set $slaves[_i].boobs += $slaves[_i].boobsMilk>> <</if>> <</if>> + <<if $menstruation == 1>> + <<elseif $slaves[_i].geneticQuirks.superfetation == 2 && $slaves[_i].womb.length > 0>> + <<if $slaves[_i].fertPeak == 0>> + <<set $slaves[_i].fertPeak = 1>> + <</if>> + <<set $slaves[_i].fertPeak-->> + <<elseif $slaves[_i].fertPeak != 0>> + <<set $slaves[_i].fertPeak = 0>> + <</if>> <<set $slaves[_i].trust = Number($slaves[_i].trust.toFixed(1)), $slaves[_i].devotion = Number($slaves[_i].devotion.toFixed(1))>> <<set $slaves[_i].oldDevotion = $slaves[_i].devotion, $slaves[_i].oldTrust = $slaves[_i].trust, $slaves[_i].tired = 0, $slaves[_i].minorInjury = 0>> <<if $slaves[_i].sentence > 1>> diff --git a/src/utility/descriptionWidgets.tw b/src/utility/descriptionWidgets.tw index 2c434b5a4c7555985fe7b52bdcf2ef20e5780fb2..3d8083498c91874328e2b29de13b59ee422097ff 100644 --- a/src/utility/descriptionWidgets.tw +++ b/src/utility/descriptionWidgets.tw @@ -121,6 +121,13 @@ fertile. <</if>> <</if>> + <<if $activeSlave.geneticQuirks.superfetation == 2>> + <<if isFertile($activeSlave)>> + $He posses a rare genetic flaw that causes pregnancy to not block ovulation. $He is fully capable of getting pregnant while already pregnant. + <<else>> + $He posses a rare genetic flaw that causes pregnancy to not block ovulation; not that it matters when $he can't get pregnant. + <</if>> + <</if>> <<if $activeSlave.geneticQuirks.wellHung == 2>> <<if $activeSlave.physicalAge <= 16 && $activeSlave.hormoneBalance < 100 && $activeSlave.dick > 0>> $He is likely to experience an inordinate amount of penile growth during $his physical development.