diff --git a/src/endWeek/saWhore.js b/src/endWeek/saWhore.js index 48acba4e0ac19f4c9150418808a530186dc51ccc..05e5a3fb5892d1db676d80a67fcc9fbaf9f425b9 100644 --- a/src/endWeek/saWhore.js +++ b/src/endWeek/saWhore.js @@ -1395,7 +1395,6 @@ window.saWhore = (function saWhore() { } /** - * @param {App.Entity.SlaveState} slave */ function applyFSDecoration() { /* FACILITY DECORATION IMPACTS */ diff --git a/src/js/PenthouseNaming.js b/src/js/PenthouseNaming.js index 6e85f6ab59a4e61cc0f9708a1031132165704503..a894cd61a6bcee1c4e4a784d365d8662079a2c39 100644 --- a/src/js/PenthouseNaming.js +++ b/src/js/PenthouseNaming.js @@ -1,5 +1,5 @@ /** - * @return {string} + * @returns {string} */ window.MasterSuiteUIName = function() { const V = State.variables; @@ -8,7 +8,7 @@ window.MasterSuiteUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.HeadGirlSuiteUIName = function() { const V = State.variables; @@ -17,7 +17,7 @@ window.HeadGirlSuiteUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.ServantQuartersUIName = function() { const V = State.variables; @@ -26,7 +26,7 @@ window.ServantQuartersUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.SpaUIName = function() { const V = State.variables; @@ -35,7 +35,7 @@ window.SpaUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.NurseryUIName = function() { const V = State.variables; @@ -44,7 +44,7 @@ window.NurseryUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.ClinicUIName = function() { const V = State.variables; @@ -53,7 +53,7 @@ window.ClinicUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.SchoolRoomUIName = function() { const V = State.variables; @@ -62,7 +62,7 @@ window.SchoolRoomUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.CellblockUIName = function() { const V = State.variables; @@ -71,7 +71,7 @@ window.CellblockUIName = function() { }; /** - * @return {string} + * @returns {string} */ window.IncubatorUIName = function() { const V = State.variables; diff --git a/src/js/assayJS.js b/src/js/assayJS.js index bb407e6e9612210cdca5973794b6acd5d720cfdc..f7fd4fc764c29b88a9a4361b4a8361dab0b153d4 100644 --- a/src/js/assayJS.js +++ b/src/js/assayJS.js @@ -72,7 +72,7 @@ window.isLeaderP = function isLeaderP(slave) { /** * Helper function returning PC's title * @returns {string} -*/ + */ window.properTitle = function properTitle() { const PC = State.variables.PC; if (PC.customTitle) { @@ -87,7 +87,7 @@ window.properTitle = function properTitle() { /** * Helper function returning slave's title for PC in situations where WrittenMaster() is inappropriate * @returns {string} -*/ + */ window.properMaster = function properMaster() { const PC = State.variables.PC; if (PC.customTitle) { diff --git a/src/js/descriptionWidgets.js b/src/js/descriptionWidgets.js index dd088cc835e8444bb3823acb0bf856e9c85694a3..a62bd5e4b7758d2eb5613c7dc36d217002472c3f 100644 --- a/src/js/descriptionWidgets.js +++ b/src/js/descriptionWidgets.js @@ -1,6 +1,6 @@ /** * @param {App.Entity.SlaveState} slave - * @return {string} Slave's eyes + * @returns {string} Slave's eyes */ App.Desc.eyes = function(slave) { "use strict"; diff --git a/src/js/heroCreator.js b/src/js/heroCreator.js index 1200dc10bd31b2393952563c997c3e0f336eb2fa..fc109a2b52a3aaff577ccc6ad6ce5b5edda68c54 100644 --- a/src/js/heroCreator.js +++ b/src/js/heroCreator.js @@ -1,7 +1,7 @@ /** * @param {App.Entity.SlaveState} heroSlave * @param {App.Entity.SlaveState} baseHeroSlave - * @return {App.Entity.SlaveState} + * @returns {App.Entity.SlaveState} */ App.Utils.getHeroSlave = function(heroSlave, baseHeroSlave) { function isObject(o) { diff --git a/src/js/pregJS.js b/src/js/pregJS.js index 4b9237d938313e4f54af4b5a35555302aabbb4b1..c6d3a9a01acb6d4144f5de57eeca7cc7c110d68f 100644 --- a/src/js/pregJS.js +++ b/src/js/pregJS.js @@ -59,6 +59,7 @@ window.bellyAdjective = function(slave) { return `swollen`; } } + return ""; }; /* calculates and returns expected ovum count during conception*/ diff --git a/src/js/rulesAssistant.js b/src/js/rulesAssistant.js index d73689da190cb2e063548078451e4757d8a929a1..295ee026945a2ab22414a4d295d68666046831ac 100644 --- a/src/js/rulesAssistant.js +++ b/src/js/rulesAssistant.js @@ -404,7 +404,7 @@ window.RulesDeconfliction = function RulesDeconfliction(slave) { /** * Creates a table to summarize RA * @returns {string} -*/ + */ window.RASummaryCell = function RASummaryCell() { const V = State.variables; let r = ""; diff --git a/src/js/sexActsJS.js b/src/js/sexActsJS.js index e45a7d2dc64837fca849f6a6086ec19d7b25d2cb..579eea5689e8fe229c1a404a1ff10361df9714f5 100644 --- a/src/js/sexActsJS.js +++ b/src/js/sexActsJS.js @@ -130,7 +130,7 @@ window.VCheck = (function() { * @param {number} [analTimes=1] how many times to increment the anal counts, if there is no vagina available. * @param {number} [bothTimes=1] how many times to increment both holes counts (usually it is half of analTimes). * @returns {string} - */ + */ function BothVCheck(analTimes = 1, bothTimes = 1) { const V = State.variables; const slave = V.activeSlave; @@ -248,7 +248,7 @@ window.VCheck = (function() { /** call as VCheck.Simple() * @param {number} [times=1] how many times to increment either the Vaginal or the Anal counts, if there is no Vagina available. * @returns {string} - */ + */ function SimpleVCheck(times = 1) { if (canDoVaginal(State.variables.activeSlave)) { return VaginalVCheck(times); @@ -358,13 +358,13 @@ window.SimpleSexAct = function SimpleSexAct(slave, fuckCount = 1) { }; /** - count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave. - If count is left undefined it will assume it to be 1. - Intended to be a simple "x got fucked y times and I don't want to keep coding it". - Pregnancy chance is handled in saLongTermEffects.tw. - @param {App.Entity.SlaveState} slave - @param {number} fuckCount -*/ + * count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave. + * If count is left undefined it will assume it to be 1. + * Intended to be a simple "x got fucked y times and I don't want to keep coding it". + * Pregnancy chance is handled in saLongTermEffects.tw. + * @param {App.Entity.SlaveState} slave + * @param {number} fuckCount + */ window.SimpleSlaveFucking = function SimpleSlaveFucking(slave, fuckCount = 1) { const V = State.variables; let fuckTarget = 0; @@ -388,14 +388,14 @@ window.SimpleSlaveFucking = function SimpleSlaveFucking(slave, fuckCount = 1) { }; /** - count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave. - If count is left undefined it will assume it to be 1. - Intended to be a simple "x got fucked y times by z and I don't want to keep coding it". - @param {App.Entity.SlaveState} subslave - @param {App.Entity.SlaveState} domslave - @param {number} fuckCount - @returns {string} -*/ + * count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave. + * If count is left undefined it will assume it to be 1. + * Intended to be a simple "x got fucked y times by z and I don't want to keep coding it". + * @param {App.Entity.SlaveState} subslave + * @param {App.Entity.SlaveState} domslave + * @param {number} fuckCount + * @returns {string} + */ window.SimpleSlaveSlaveFucking = function SimpleSlaveSlaveFucking(subslave, domslave, fuckCount = 1) { const V = State.variables; let fuckTarget = 0; diff --git a/src/js/slaveListing.js b/src/js/slaveListing.js index 34f3b17fd285c70c8b0bab2808677133397ea530..6f4a2976f68ac706b79a716c9d8a44bcc014a2b9 100644 --- a/src/js/slaveListing.js +++ b/src/js/slaveListing.js @@ -11,7 +11,7 @@ App.UI.SlaveList = {}; * @callback slaveTextGenerator * @param {App.Entity.SlaveState} slave * @param {number} index - * @return {string} + * @returns {string} */ App.UI.SlaveList.render = function() { 'use strict'; @@ -159,8 +159,8 @@ App.UI.SlaveList.render = function() { /** * @param {number[]} indices - * @return {string} - */ + * @returns {string} + */ function createQuickList(indices) { let res = ""; @@ -276,7 +276,7 @@ App.UI.SlaveList.SlaveInteract = {}; /** * @param {App.Entity.SlaveState} slave * @param {number} index - * @return {string} + * @returns {string} */ App.UI.SlaveList.SlaveInteract.stdInteract = (slave, index) => App.UI.passageLink(SlaveFullName(slave), 'Slave Interact', `$activeSlave = $slaves[${index}]`); @@ -285,7 +285,7 @@ App.UI.SlaveList.SlaveInteract.stdInteract = (slave, index) => /** * @param {App.Entity.SlaveState} slave * @param {number} index - * @return {string} + * @returns {string} */ App.UI.SlaveList.SlaveInteract.penthouseInteract = (slave, index) => { return App.UI.SlaveList.Decoration.penthousePositions(slave) + ' ' + App.UI.SlaveList.SlaveInteract.stdInteract(slave, index); @@ -293,7 +293,7 @@ App.UI.SlaveList.SlaveInteract.penthouseInteract = (slave, index) => { /** * @param {App.Entity.SlaveState} slave - * @return {string} + * @returns {string} */ App.UI.SlaveList.SlaveInteract.personalAttention = (slave) => App.UI.passageLink(SlaveFullName(slave), undefined, `App.UI.selectSlaveForPersonalAttention(${slave.ID});`); @@ -301,7 +301,7 @@ App.UI.SlaveList.SlaveInteract.personalAttention = (slave) => /** * @param {App.Entity.SlaveState} slave * @param {number} index - * @return {string} + * @returns {string} */ App.UI.SlaveList.SlaveInteract.assign = (slave, index) => App.UI.passageLink(SlaveFullName(slave), "Assign", `$i = ${index}`); @@ -309,7 +309,7 @@ App.UI.SlaveList.SlaveInteract.assign = (slave, index) => /** * @param {App.Entity.SlaveState} slave * @param {number} index - * @return {string} + * @returns {string} */ App.UI.SlaveList.SlaveInteract.retrieve = (slave, index) => App.UI.passageLink(SlaveFullName(slave), "Retrieve", `$i = ${index}`); @@ -794,7 +794,7 @@ App.UI.SlaveList.slaveSelectionList = function() { * @param {slaveTestCallback} [experianceChecker] * @param {slaveTextGenerator} [postNote] * @returns {string} - */ + */ function selection(filter, interactionLink, experianceChecker, postNote) { if (experianceChecker === null) { experianceChecker = undefined; } State.temporary.slaveSelection = { diff --git a/src/js/slaveSummaryWidgets.js b/src/js/slaveSummaryWidgets.js index c6798bf89e2b4be3ad32537725e61647a725942e..f0ef4175f96bc324424aef14355ca092b029b422 100644 --- a/src/js/slaveSummaryWidgets.js +++ b/src/js/slaveSummaryWidgets.js @@ -991,6 +991,7 @@ window.SlaveSummaryUncached = (function() { * @param {App.Entity.SlaveState} slave */ function long_drugs(slave) { + let swd = WombGetLittersData(slave); if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) { r += `<span class="tan">On ${slave.drugs}.</span> `; } @@ -1041,6 +1042,11 @@ window.SlaveSummaryUncached = (function() { r += `May be pregnant.`; } else if ((slave.preg >= 36) && (slave.broodmother > 0)) { r += `Permanently pregnant.`; + } else if (swd.litters.length > 1) { + r += `<span class="lime">`; + r += `Mutipregnant, (` + swd.litters.length + ` sets).`; + r+= ` Max:` + swd.litters[0] + ` / Min:` + swd.litters[swd.litters.length-1] + ` week(s).`; + r += `</span> `; } else if (slave.pregKnown === 1) { if (slave.pregType < 2 || slave.broodmother > 0) { r += `${slave.pregWeek} weeks pregnant.`; diff --git a/src/js/storyJS.js b/src/js/storyJS.js index 10eae2183ff7e04c5c0c81d6d3a72c8b2a14c32a..045496c404886f65017e10203a58af40f2adefde 100644 --- a/src/js/storyJS.js +++ b/src/js/storyJS.js @@ -24,7 +24,7 @@ window.variableAsNumber = function(x, defaultValue = 0, minValue, maxValue) { /** * @param {App.Entity.SlaveState} slave - * @return {boolean} + * @returns {boolean} */ window.isSexuallyPure = function(slave) { if (!slave) { @@ -484,10 +484,10 @@ window.overpowerCheck = function(slave, PC) { }; /** -* returns array of IDs of all characters who impregnated slave -* @param {App.Entity.SlaveState} slave -* @returns {number[]} -*/ + * returns array of IDs of all characters who impregnated slave + * @param {App.Entity.SlaveState} slave + * @returns {number[]} + */ window.impregnatedBy = function(slave) { const IDArray = []; if (!Array.isArray(slave.womb)) { diff --git a/src/pregmod/birthStorm.tw b/src/pregmod/birthStorm.tw index 11624a4127533daef834bb56dcfc14513c219c17..f7850907aa542a70402a6b34065fa1d615b546de 100644 --- a/src/pregmod/birthStorm.tw +++ b/src/pregmod/birthStorm.tw @@ -3,7 +3,7 @@ <<set $nextButton = "Back", $nextLink = "Slave Interact">> <<set $activeSlave.curBabies = WombBirth($activeSlave, 34)>> /*Here check - how many children survive this event. 34 weeks minimum.*/ -<<set _curBabies = $activeSlave.curBabies>> +<<set _curBabies = $activeSlave.curBabies.length>> The remote surgery allows the removal of the pregnancy generator through conventional means, an injection to induce labor and the resulting birthing of the womb's contents. <<if $activeSlave.broodmother == 2>> @@ -43,7 +43,7 @@ The remote surgery allows the removal of the pregnancy generator through convent <<set $activeSlave.devotion += 4>> <</if>> -<<if $slaves[$i].birthsTat > -1>> +<<if $activeSlave.birthsTat > -1>> <<set $activeSlave.birthsTat++>> The temporary tattoo of a child has been replaced with $his <<= ordinalSuffix($activeSlave.birthsTat)>> permanent infant. <<run cashX(forceNeg($modCost), "slaveMod", $activeSlave)>> diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw index 17e96b1ed2882c0eca14c5152f618bf1da488be1..2f1cbe44d4e3946738b233a965e8ee1bc2c0d1de 100644 --- a/src/uncategorized/slaveInteract.tw +++ b/src/uncategorized/slaveInteract.tw @@ -1225,7 +1225,7 @@ Aphrodisiacs: <span id="aphrodisiacs"><strong><<if $activeSlave.aphrodisiacs > 1 <<if $activeSlave.broodmotherOnHold != 1>> [[Turn off implant|Slave Interact][$activeSlave.broodmotherOnHold = 1, $activeSlave.broodmotherCountDown = 38-WombMinPreg($activeSlave)]] <</if>> - <<if ($activeSlave.preg > 37)>> + <<if ($activeSlave.preg >= 36)>> | [[Induce mass childbirth|BirthStorm]] <</if>> <<elseif ($activeSlave.preg > $activeSlave.pregData.minLiveBirth)>>