diff --git a/js/003-data/gameVariableData.js b/js/003-data/gameVariableData.js index 2e751af48116be9ccbe112d963c86a23788acd3a..02549edcb462cd9411f44e556153722acf5b51d7 100644 --- a/js/003-data/gameVariableData.js +++ b/js/003-data/gameVariableData.js @@ -584,9 +584,6 @@ App.Data.resetOnNGPlus = { independenceDay: 0, invasionVictory: 0, daughtersVictory: 0, - startingGirlCopied: 0, - startingGirlRelation: 0, - createRelatedSlave: 0, dormitory: 20, dormitoryPopulation: 0, diff --git a/src/js/assayJS.js b/src/js/assayJS.js index 443245cab40d35fdf0d9db577e6925db32b0b014..ec236ea84d327d62b8f4d99a82eb739caf2df4b6 100644 --- a/src/js/assayJS.js +++ b/src/js/assayJS.js @@ -1826,6 +1826,28 @@ window.retirementReady = function RetirementReady(slave) { return false; }; +/** advances the age of a slave by one year, incurring all aging side effects + * @param {App.Entity.SlaveState} slave + * @param {bool} [forceDevelopment=false] + */ +window.ageSlave = function ageSlave(slave, forceDevelopment=false) { + slave.physicalAge++; + slave.actualAge++; + if (slave.geneMods.NCS === 0) { + slave.visualAge++; + slave.ovaryAge += either(0.8, 0.9, 0.9, 1.0, 1.0, 1.0, 1.1); + } else { + /* Induced NCS completely takes over visual aging. Additionally, because of the neoteny aspects of NCS, ovaries don't age quite as fast. */ + slave.ovaryAge += either(0.5, 0.6, 0.7, 0.7, 0.8, 0.9, 1.0); + } + if (slave.broodmother === 1) { + slave.ovaryAge += 0.2; + } + if (slave.physicalAge <= 18 && (forceDevelopment || V.loliGrow > 0)) { + physicalDevelopment(slave); + } +}; + /** Is the slave a shelter slave? * @param {App.Entity.SlaveState} slave * @returns {boolean} diff --git a/src/js/extendedFamilyModeJS.js b/src/js/extendedFamilyModeJS.js index c1d74f93f296a65948fd88d7ada1dfe96665b38c..0bb9465f9196e20c1d94b2338e4fee3242190450 100644 --- a/src/js/extendedFamilyModeJS.js +++ b/src/js/extendedFamilyModeJS.js @@ -510,3 +510,21 @@ window.resetFamilyCounters = function() { } } }; + +/** Set any missing parents to a known ID for the given slave (usually so that a sibling can be safely generated) + * @param {App.Entity.SlaveState} slave + */ +window.setMissingParents = function(slave) { + function untraceableParentID(ID) { return ID === 0 || (ID < -1 && ID >= -20 && ID !== -3); } + + if (V.familyTesting === 1) { + if (untraceableParentID(slave.mother)) { + slave.mother = V.missingParentID; + V.missingParentID--; + } + if (untraceableParentID(slave.father)) { + slave.father = V.missingParentID; + V.missingParentID--; + } + } +}; diff --git a/src/js/generateRelatedSlave.js b/src/js/generateRelatedSlave.js index fef0c3948699998b04530dbd8351a919d7fa6253..fb4a6077896d2cbf18bd176f4b302e5cfb481e83 100644 --- a/src/js/generateRelatedSlave.js +++ b/src/js/generateRelatedSlave.js @@ -3,8 +3,8 @@ window.generateRelatedSlave = (function() { /** * Generate a very similar relative for an existing slave (for use in Household Liquidators, for example). - * @param {App.Entity.SlaveState} slave - the source relative - * @param {string} relationship - the relationship that the new relative has with the source. Currently supports "daughter", "sibling", "twin". + * @param {App.Entity.SlaveState} slave - the source relative. Note: this slave is NOT changed, calling code is responsible for setting up the source end of the relationship! + * @param {string} relationship - the relationship that the new relative has with the source. Currently supports "parent", "child", "older sibling", "younger sibling", "twin". * @param {bool} oppositeSex - set to true if the new relative should be the opposite sex of the old one (otherwise it will be the same sex). * @returns {SlaveState} - new relative */ @@ -12,10 +12,14 @@ window.generateRelatedSlave = (function() { let relative = prepareClone(slave); if (relationship === "twin") { makeTwin(relative); - } else if (relationship === "daughter") { - makeDaughter(relative); - } else if (relationship === "sibling") { - makeSibling(relative); + } else if (relationship === "child") { + makeChild(relative); + } else if (relationship === "parent") { + makeParent(relative); + } else if (relationship === "younger sibling") { + makeYoungerSibling(relative); + } else if (relationship === "older sibling") { + makeOlderSibling(relative); } if (oppositeSex) { if (slave.genes === "XX") { @@ -26,9 +30,12 @@ window.generateRelatedSlave = (function() { // we'll assume futa are their own opposites and don't need tweaking } } - if (relative.actualAge < slave.actualAge || oppositeSex) { // not used for same-sex twins + // perform age-related adjustment for all relatives *except* same-sex twins (preserve identicality) + if (relative.actualAge !== slave.actualAge || oppositeSex) { ageFixup(relative); } + setHealth(slave, slave.health.condition); + return relative; } @@ -85,7 +92,7 @@ window.generateRelatedSlave = (function() { * Finish configuring a sibling * @param {App.Entity.SlaveState} slave - the new sibling */ - function makeSibling(slave) { + function makeYoungerSibling(slave) { if (!V.familyTesting) { slave.relation = "sister"; slave.relationTarget = sourceID; @@ -99,22 +106,37 @@ window.generateRelatedSlave = (function() { slave.ovaryAge = slave.actualAge; slave.birthWeek = random(0, 51); - // fuzz boobs/butt - if (slave.boobs > 200) { - slave.boobs += either(-100, 0, 100); - } - if (slave.butt > 1) { - slave.butt += random(-1, 1); + fuzzPhysicalTraits(slave); + + randomiseFetishFlaws(slave); + } + + /** + * Finish configuring a sibling + * @param {App.Entity.SlaveState} slave - the new sibling + */ + function makeOlderSibling(slave) { + if (!V.familyTesting) { + slave.relation = "sister"; + slave.relationTarget = sourceID; } + // increase age + const maxDifference = (V.retirementAge - 1) - slave.actualAge; + const ageDifference = Math.min(random(2, 6), maxDifference); + fastForward(slave, ageDifference); + slave.birthWeek = random(0, 51); + + fuzzPhysicalTraits(slave); + randomiseFetishFlaws(slave); } /** - * Finish configuring a daughter - * @param {App.Entity.SlaveState} slave - the new daughter + * Finish configuring a child + * @param {App.Entity.SlaveState} slave - the new child */ - function makeDaughter(slave) { + function makeChild(slave) { if (!V.familyTesting) { slave.relation = "daughter"; slave.relationTarget = sourceID; @@ -144,13 +166,7 @@ window.generateRelatedSlave = (function() { slave.boobs -= 100; slave.butt -= 1; - // fuzz boobs/butt - if (slave.boobs > 200) { - slave.boobs += either(-100, 100); - } - if (slave.butt > 1) { - slave.butt += random(-1, 1); - } + fuzzPhysicalTraits(slave); // daughter has never had children and is likely a virgin slave.vagina = either(0, 0, 0, 1); @@ -159,6 +175,67 @@ window.generateRelatedSlave = (function() { randomiseFetishFlaws(slave); } + /** + * Finish configuring a parent + * @param {App.Entity.SlaveState} slave - the new parent + */ + function makeParent(slave) { + if (!V.familyTesting) { + slave.relation = "mother"; // no fathers without family testing + slave.relationTarget = sourceID; + } else { + slave.mother = 0; + slave.father = 0; + } + + // select age + const childAge = slave.actualAge; + let minAge = childAge + Math.max(11, V.minimumSlaveAge - 2); + let maxAge = Math.min(V.retirementAge - 1, childAge + 42); + if (maxAge < minAge) { + throw "Cannot generate parent (slave too old)"; + } + slave.actualAge = random(minAge, maxAge); + slave.visualAge = slave.actualAge; + slave.physicalAge = slave.actualAge; + slave.ovaryAge = slave.actualAge; + slave.birthWeek = random(0, 51); + + // parent always has less devotion/trust + slave.devotion -= 10; + slave.trust -= 10; + + // mother always has more boobs/butt + if (slave.genes === "XX") { + slave.boobs += 100; + slave.butt += 1; + } + + fuzzPhysicalTraits(slave); + + // mother has had one child (at least) + if (slave.genes === "XX") { + slave.vagina = Math.max(slave.vagina, 1); + slave.counter.birthsTotal = 1; + } + + randomiseFetishFlaws(slave); + } + + /** + * Fuzz some physical traits so we don't start out identical + * @param {App.Entity.SlaveState} slave + */ + function fuzzPhysicalTraits(slave) { + // fuzz boobs/butt + if (slave.boobs > 200) { + slave.boobs += either(-100, 0, 100); + } + if (slave.butt > 1) { + slave.butt += random(-1, 0, 1); + } + } + /** * Randomize fetish and flaws * @param {App.Entity.SlaveState} slave @@ -198,9 +275,6 @@ window.generateRelatedSlave = (function() { } } SetBellySize(slave); - - // reset health - setHealth(slave, slave.health.condition); } /** @@ -306,6 +380,12 @@ window.generateRelatedSlave = (function() { generatePuberty(slave); } + function fastForward(slave, years) { + for (let i = 0; i < years; ++i) { + ageSlave(slave, true); + } + } + /** * Give a slave a realistic chance to activate a sexlinked genetic quirk which her opposite-sex relative was only a carrier for. * @param {App.Entity.SlaveState} slave - the slave to adjust diff --git a/src/js/wombJS.js b/src/js/wombJS.js index 8e36eddced977b7255e6993b1c9d6adf713b2de9..e37ab2f3262d1008bf287dbc41da587307f3b8ff 100644 --- a/src/js/wombJS.js +++ b/src/js/wombJS.js @@ -140,15 +140,8 @@ window.WombImpregnateClone = function(actor, fCount, mother, motherOriginal, age tf.genetics = generateGenetics(mother, mother.ID, i + 1); // Stored genetic information. tf.ID = generateNewID(); - // Welcome to having to set up common relatives for the slave and her clone - if (mother.father === 0 || (mother.father < -1 && mother.father >= -20 && mother.father !== -3)) { - mother.father = State.variables.missingParentID; - State.variables.missingParentID--; - } - if (mother.mother === 0 || (mother.mother < -1 && mother.mother >= -20 && mother.mother !== -3)) { - mother.mother = State.variables.missingParentID; - State.variables.missingParentID--; - } + // set up common relatives for the slave and her clone + setMissingParents(mother); // gene corrections tf.fatherID = -7; diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw index 472cd6b1a2e12f78cfe22a8226a10c0a34f76cf1..f2a91d8ee0aa8e11d916d026d630520a93aea28e 100644 --- a/src/npc/acquisition.tw +++ b/src/npc/acquisition.tw @@ -1,7 +1,5 @@ :: Acquisition [nobr] -<<unset $startingGirlCopied, $startingGirlRelation>> - <<set $showEncyclopedia = 0>> <<if $saveImported == 1>><<set _valueOwed = 5000>><<else>><<set _valueOwed = 50000>><</if>> @@ -133,23 +131,23 @@ <</if>> <<if _pcMomFound == 0 && $PC.mother > 0>> <<set _lostMom = $PC.mother>> - <<set $PC.mother = $missingParentId>> + <<set $PC.mother = $missingParentID>> <<for _i = 0; _i < $slaves.length; _i++>> <<if $slaves[_i].mother == _lostMom>> - <<set $slaves[_i].mother = $missingParentId>> + <<set $slaves[_i].mother = $missingParentID>> <</if>> <</for>> - <<set $missingParentId-->> + <<set $missingParentID-->> <</if>> <<if _pcDadFound == 0 && $PC.father > 0>> <<set _lostDad = $PC.father>> - <<set $PC.father = $missingParentId>> + <<set $PC.father = $missingParentID>> <<for _i = 0; _i < $slaves.length; _i++>> <<if $slaves[_i].father == _lostDad>> - <<set $slaves[_i].father = $missingParentId>> + <<set $slaves[_i].father = $missingParentID>> <</if>> <</for>> - <<set $missingParentId-->> + <<set $missingParentID-->> <</if>> <<for _i = 0; _i < $slaves.length; _i++>> <<set _slaveMomFound = 0, _slaveDadFound = 0>> diff --git a/src/npc/startingGirls/commitStartingGirl.tw b/src/npc/startingGirls/commitStartingGirl.tw index 4e832f3fc4c3ebfcd6c405db36c51760bf4a28ba..122e48bb76e38a00e55f2ab071a27431d2fe1d07 100644 --- a/src/npc/startingGirls/commitStartingGirl.tw +++ b/src/npc/startingGirls/commitStartingGirl.tw @@ -19,43 +19,138 @@ <<set $activeSlave = generateStartingSlave()>> <<goto "Starting Girls">> <</link>> - <<if $familyTesting == 1>> - <br>[[Add another slave, based on the previous slave|Starting Girls][$startingGirlCopied = 1, $activeSlave.mother = 0, $activeSlave.father = 0]] - <<else>> - <br>[[Add another slave, based on the previous slave|Starting Girls][$activeSlave.relation = 0, $activeSlave.relationTarget = 0, $startingGirlCopied = 1]] - <</if>> - <<if $createRelatedSlave == 1>> - <br> - //Add another slave, related to the previous slave:// - <br> + <br> + <<link "Add another slave, based on the previous slave">> + <<set $activeSlave = clone($activeSlave)>> + <<set $activeSlave.ID = generateSlaveID()>> + <<run nationalityToName($activeSlave), randomizeUnknowns($activeSlave)>> <<if $familyTesting == 1>> - <br> //Use "based on the previous slave" and the available .father and .mother controls to create your family// + <<set $activeSlave.mother = 0, $activeSlave.father = 0>> <<else>> - <br> - <<if $activeSlave.actualAge <= 8 && ($PC.career == "servant" || $PC.career == "escort") && ($PC.vagina != -1)>> - <<else>> - <<if $activeSlave.actualAge >= ($fertilityAge + $minimumSlaveAge)>> - <br> - [[Daughter|RG AS Dump][$returnTo = "Starting Girls", $activeSlave.relation = "mother", $startingGirlRelation = "mother", $activeSlave.counter.birthsTotal += 1, $activeSlave.relationTarget = $activeSlave.ID+1, $startingGirlCopied = 1]] - <</if>> - <<if $activeSlave.actualAge <= 24>> - <br> - [[Mother|RG AS Dump][$returnTo = "Starting Girls", $activeSlave.relation = "daughter", $startingGirlRelation = "daughter", $activeSlave.relationTarget = $activeSlave.ID+1, $startingGirlCopied = 1]] - <</if>> - <<if $activeSlave.actualAge < 44>> - <br> - [[Older Sister|RG AS Dump][$returnTo = "Starting Girls", $activeSlave.relation = "sister", $startingGirlRelation = "older sister", $activeSlave.relationTarget = $activeSlave.ID+1, $startingGirlCopied = 1]] - <</if>> - <br> - [[Twin|RG AS Dump][$returnTo = "Starting Girls", $activeSlave.relation = "twin", $startingGirlRelation = "twin", $activeSlave.relationTarget = $activeSlave.ID+1, $startingGirlCopied = 1]] - <<if $activeSlave.actualAge > $minimumSlaveAge+1>> - <br> - [[Younger Sister|RG AS Dump][$returnTo = "Starting Girls", $activeSlave.relation = "sister", $startingGirlRelation = "younger sister", $activeSlave.relationTarget = $activeSlave.ID+1, $startingGirlCopied = 1]] - <</if>> + <<set $activeSlave.relation = 0, $activeSlave.relationTarget = 0>> + <</if>> + <<goto "Starting Girls">> + <</link>> + <<if ($familyTesting === 1) || ($activeSlave.relation === 0)>> + <<set _srcID = $activeSlave.ID>> + <br> + //Add another slave, related to the previous slave:// + <div class="indent"> + <<link "Twin">> + <<if $familyTesting == 1>> + <<run setMissingParents(getSlave(_srcID))>> + <</if>> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "twin")>> + <<run randomizeUnknowns($activeSlave)>> + <<if $familyTesting != 1>> + <<set getSlave(_srcID).relation = "twin", getSlave(_srcID).relationTarget = $activeSlave.ID>> + <</if>> + <<goto "Starting Girls">> + <</link>> + </div> + <<if $activeSlave.actualAge + $minimumSlaveAge < $retirementAge - 1>> + <<if $seeDicks !== 100 && ($familyTesting === 0 || $activeSlave.mother === 0)>> + <div class="indent"> + <<link "Mother">> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "parent", getSlave(_srcID).genes === "XY")>> + <<run randomizeUnknowns($activeSlave)>> + <<if $familyTesting === 1>> + <<set getSlave(_srcID).mother = $activeSlave.ID>> + <<else>> + <<set getSlave(_srcID).relation = "daughter", getSlave(_srcID).relationTarget = $activeSlave.ID>> + <</if>> + <<goto "Starting Girls">> + <</link>> + </div> + <</if>> + <<if $familyTesting === 1 && $seeDicks !== 0 && $activeSlave.father === 0>> + <div class="indent"> + <<link "Father">> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "parent", getSlave(_srcID).genes === "XX")>> + <<run randomizeUnknowns($activeSlave)>> + <<set getSlave(_srcID).father = $activeSlave.ID>> + <<goto "Starting Girls">> + <</link>> + </div> + <</if>> + <</if>> + <<if $activeSlave.actualAge < $retirementAge - 2>> + <<if $seeDicks !== 100>> + <div class="indent"> + <<link "Older Sister">> + <<if $familyTesting == 1>> + <<run setMissingParents(getSlave(_srcID))>> + <</if>> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "older sibling", getSlave(_srcID).genes === "XY")>> + <<run randomizeUnknowns($activeSlave)>> + <<if $familyTesting != 1>> + <<set getSlave(_srcID).relation = "sister", getSlave(_srcID).relationTarget = $activeSlave.ID>> + <</if>> + <<goto "Starting Girls">> + <</link>> + </div> + <</if>> + <<if $familyTesting === 1 && $seeDicks !== 0>> + <div class="indent"> + <<link "Older Brother">> + <<run setMissingParents(getSlave(_srcID))>> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "older sibling", getSlave(_srcID).genes === "XX")>> + <<run randomizeUnknowns($activeSlave)>> + <<goto "Starting Girls">> + <</link>> + </div> + <</if>> + <</if>> + <<if $activeSlave.actualAge > $minimumSlaveAge + 2>> + <<if $seeDicks !== 100>> + <div class="indent"> + <<link "Younger Sister">> + <<if $familyTesting == 1>> + <<run setMissingParents(getSlave(_srcID))>> + <</if>> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "younger sibling", getSlave(_srcID).genes === "XY")>> + <<run randomizeUnknowns($activeSlave)>> + <<if $familyTesting != 1>> + <<set getSlave(_srcID).relation = "sister", getSlave(_srcID).relationTarget = $activeSlave.ID>> + <</if>> + <<goto "Starting Girls">> + <</link>> + </div> + <</if>> + <<if $familyTesting === 1 && $seeDicks !== 0>> + <div class="indent"> + <<link "Younger Brother">> + <<run setMissingParents(getSlave(_srcID))>> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "younger sibling", getSlave(_srcID).genes === "XX")>> + <<run randomizeUnknowns($activeSlave)>> + <<goto "Starting Girls">> + <</link>> + </div> + <</if>> + <</if>> + <<if $activeSlave.actualAge > $minimumSlaveAge + 11>> + <<if $seeDicks !== 100>> + <div class="indent"> + <<link "Daughter">> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "child", getSlave(_srcID).genes === "XY")>> + <<run randomizeUnknowns($activeSlave)>> + <<if $familyTesting != 1>> + <<set getSlave(_srcID).relation = "mother", getSlave(_srcID).relationTarget = $activeSlave.ID>> + <</if>> + <<goto "Starting Girls">> + <</link>> + </div> + <</if>> + <<if $familyTesting === 1 && $seeDicks !== 0>> + <div class="indent"> + <<link "Son">> + <<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "child", getSlave(_srcID).genes === "XX")>> + <<run randomizeUnknowns($activeSlave)>> + <<goto "Starting Girls">> + <</link>> + </div> <</if>> <</if>> - <<elseif $activeSlave.relation == 0>> - <br>[[Add another slave, related to the previous slave|Commit Starting Girl][$createRelatedSlave = 1]] <</if>> <</if>> <br>[[Stop adding slaves and take control of the arcology|Acquisition]] diff --git a/src/npc/startingGirls/startingGirls.js b/src/npc/startingGirls/startingGirls.js index 66eaa43144f5962a6c98eaa8e32750286f7fc66e..c39e95063bc1bc038ce0604138eda3b78c3fa21f 100644 --- a/src/npc/startingGirls/startingGirls.js +++ b/src/npc/startingGirls/startingGirls.js @@ -1,7 +1,6 @@ /* Generate a new slave for the starting girls passage */ window.generateStartingSlave = function(params) { let slave = GenerateNewSlave(null, params); - V.startingGirlCopied = 0; setHealth(slave, 0); slave.devotion = 0; slave.trust = 0; @@ -164,3 +163,16 @@ window.applyCareerBonus = function(slave) { } } }; + +/* randomize things the player doesn't know about the slave */ +window.randomizeUnknowns = function(slave) { + if (slave.attrKnown === 0) { + slave.attrXX = random(0, 100); + slave.attrXY = random(0, 100); + slave.energy = random(1, 90); + } + if (slave.fetish !== "mindbroken" && slave.fetishKnown === 0) { + slave.fetishStrength = random(0, 90); + slave.fetish = either("boobs", "buttslut", "cumslut", "dom", "humiliation", "masochist", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "pregnancy", "sadist", "submissive"); + } +}; diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw index 8aac5be30eb4189ff203aa5b46bd43226ae5150f..a1d9780a3482b0ab9275367cdc1324126be8cacc 100644 --- a/src/npc/startingGirls/startingGirls.tw +++ b/src/npc/startingGirls/startingGirls.tw @@ -53,50 +53,6 @@ <<set $activeSlave = generateStartingSlave()>> <</if>> -<<if $startingGirlCopied>> - <<set _tempSlave = clone($activeSlave)>> - <<set $activeSlave.ID = generateSlaveID()>> - <<if $startingGirlRelation>> - <<if $familyTesting == 1>> - <<else>> - <<switch $startingGirlRelation>> - <<case "mother">> - <<set $activeSlave.relation = "daughter", $activeSlave.actualAge -= random(16,24)>> - <<case "daughter">> - <<set $activeSlave.relation = "mother", $activeSlave.actualAge += random(16,24)>> - <<if $activeSlave.vagina == 0>><<set $activeSlave.vagina++>><</if>> - <<case "older sister">> - <<set $activeSlave.relation = "sister", $activeSlave.actualAge += random(2,4)>> - <<case "younger sister">> - <<set $activeSlave.relation = "sister", $activeSlave.actualAge -= random(2,4)>> - <<default>> - <<set $activeSlave.relation = "twin">> - <</switch>> - <<set $activeSlave.relationTarget = _tempSlave.ID>> - <</if>> - <<if $startingGirlRelation != "twin">><<set $activeSlave.birthWeek = random(0,51)>><</if>> - <<if $activeSlave.slaveSurname>><<set _familyName = $activeSlave.slaveSurname>><</if>> - <<if $activeSlave.birthSurname>><<set _familyBirthSurname = $activeSlave.birthSurname>><</if>> - <</if>> - <<set $activeSlave.visualAge = $activeSlave.actualAge>> - <<set $activeSlave.physicalAge = $activeSlave.actualAge>> - <<set $activeSlave.ovaryAge = $activeSlave.actualAge>> - <<run nationalityToName($activeSlave)>> - <<if _familyName>><<set $activeSlave.slaveSurname = _familyName>><</if>> - <<if _familyBirthSurname>><<set $activeSlave.birthSurname = _familyBirthSurname>><</if>> - <<set $activeSlave.slaveName = $activeSlave.birthName>> - <<if $activeSlave.attrKnown == 0>> - <<set $activeSlave.attrXX = random(0,100)>> - <<set $activeSlave.attrXY = random(0,100)>> - <<set $activeSlave.energy = random(1,90)>> - <</if>> - <<if $activeSlave.fetish != "mindbroken" && $activeSlave.fetishKnown == 0>> - <<set $activeSlave.fetishStrength = random(0,90)>> - <<set $activeSlave.fetish = either("boobs", "buttslut", "cumslut", "dom", "humiliation", "masochist", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "pregnancy", "sadist", "submissive")>> - <</if>> - <<set $startingGirlCopied = 0, $startingGirlRelation = 0>> -<</if>> - <<run startingGirlCleanup($activeSlave)>> <<set _slaveCost = startingSlaveCost($activeSlave)>> <<set $saleDescription = 1>> @@ -1599,7 +1555,7 @@ <<if $PC.career != "engineer">> <div class="indent"> <<link "Add this slave">> - <<set $returnTo = "Commit Starting Girl", $createRelatedSlave = 0, $applyCareerBonus = 1>> + <<set $returnTo = "Commit Starting Girl", $applyCareerBonus = 1>> <<goto "RG AS Dump">> <</link>> <span class="note"> @@ -1633,7 +1589,7 @@ <<set _text = $PC.career != "engineer" ? "Add this slave without career bonus" : "Add this slave">> <div class="indent"> <<link _text>> - <<set $returnTo = "Commit Starting Girl", $createRelatedSlave = 0, $applyCareerBonus = 0>> + <<set $returnTo = "Commit Starting Girl", $applyCareerBonus = 0>> <<goto "RG AS Dump">> <</link>> </div> diff --git a/src/uncategorized/householdLiquidator.tw b/src/uncategorized/householdLiquidator.tw index 23e5fb99a49328b1d0aa17c6872041c6e29d56c4..8b9dcdc86242c09de94316ee9e53301b4ac51c2a 100644 --- a/src/uncategorized/householdLiquidator.tw +++ b/src/uncategorized/householdLiquidator.tw @@ -24,7 +24,7 @@ The household liquidator is offering a set of siblings for sale. As usual, you will only be permitted to inspect the older, but there is a guarantee that the younger will be similar. <br><br> -<<set _relativeSlave = generateRelatedSlave($activeSlave, "sibling")>> +<<set _relativeSlave = generateRelatedSlave($activeSlave, "younger sibling")>> <<if $familyTesting != 1>> <<set $activeSlave.relation = "sister">> <<set $activeSlave.relationTarget = _relativeSlave.ID>> @@ -62,7 +62,7 @@ The household liquidator is offering a set of siblings for sale. As usual, you w The household liquidator is offering a mother and $his daughter for sale. As usual, you will only be permitted to inspect the mother, but there is a guarantee that the daughter will be similar. <br><br> -<<set _relativeSlave = generateRelatedSlave($activeSlave, "daughter")>> +<<set _relativeSlave = generateRelatedSlave($activeSlave, "child")>> <<if $familyTesting != 1>> <<set $activeSlave.relation = "mother">> <<set $activeSlave.relationTarget = _relativeSlave.ID>> diff --git a/src/uncategorized/nextWeek.tw b/src/uncategorized/nextWeek.tw index 112ea69338e931615e0359497a9357b0b3256bfc..9f4727009d04da0c447ebf128d82b5d034406936 100644 --- a/src/uncategorized/nextWeek.tw +++ b/src/uncategorized/nextWeek.tw @@ -116,23 +116,7 @@ <<set $slaves[_i].birthWeek++>> <<if $slaves[_i].birthWeek >= 52>> <<set $slaves[_i].birthWeek = 0>> - <<if $seeAge == 1>> - <<set $slaves[_i].physicalAge += 1, $slaves[_i].actualAge += 1>> - /* Note Induced NCS completely takes over visual aging, so the increment from pre-existing code simply is trapped behind a !NCS test. Additionally, because of the neoteny aspects of NCS, ovaries don't age quite as fast. */ - <<if $slaves[_i].geneMods.NCS == 0>> - <<set $slaves[_i].visualAge += 1>> - /* (prev comment) Hopefully this works. It is intended, over a slave's lifetime, to cause her menopause to shift. */ - <<set $slaves[_i].ovaryAge += either(.8, .9, .9, 1, 1, 1, 1.1)>> - <<else>> - <<set $slaves[_i].ovaryAge += either(.5, .6, .7, .7, .8, .9, 1)>> - <</if>> - <<if $slaves[_i].broodmother == 1>> - <<set $slaves[_i].ovaryAge += .2>> - <</if>> - <<if $slaves[_i].physicalAge <= 18 && $loliGrow > 0>> - <<run physicalDevelopment($slaves[_i])>> - <</if>> - <</if>> + <<run ageSlave($slaves[_i])>> <</if>> <</if>> <<if $slaves[_i].indenture > 0>> diff --git a/src/uncategorized/pCoupAttempt.tw b/src/uncategorized/pCoupAttempt.tw index 71db6f8479e6d6325f3584fbbf72dcde0b764169..a60504571cfbb4ee8ec48ab24e2e26ccb9322fbe 100644 --- a/src/uncategorized/pCoupAttempt.tw +++ b/src/uncategorized/pCoupAttempt.tw @@ -26,13 +26,7 @@ <<set $traitor.birthWeek++>> <<if $traitor.birthWeek >= 52>> <<set $traitor.birthWeek = 0>> - <<if $seeAge == 1>> - <<set $traitor.physicalAge += 1, $traitor.actualAge += 1, $traitor.visualAge += 1>> - <<set $traitor.ovaryAge += either(.8, .9, .9, 1, 1, 1, 1.1)>> - <<if $traitor.physicalAge <= 18 && $loliGrow > 0>> - <<run physicalDevelopment($traitor)>> - <</if>> - <</if>> + <<run ageSlave($traitor)>> <</if>> <<set _weeks-->> <</for>> diff --git a/src/uncategorized/pCoupBetrayal.tw b/src/uncategorized/pCoupBetrayal.tw index 4cc634a8be6630fa0320cb474089d57e050f71e4..1258d68f7fce9d36552a3d6cdac1a874c74059dd 100644 --- a/src/uncategorized/pCoupBetrayal.tw +++ b/src/uncategorized/pCoupBetrayal.tw @@ -25,13 +25,7 @@ <<set $traitor.birthWeek++>> <<if $traitor.birthWeek >= 52>> <<set $traitor.birthWeek = 0>> - <<if $seeAge == 1>> - <<set $traitor.physicalAge += 1, $traitor.actualAge += 1, $traitor.visualAge += 1>> - <<set $traitor.ovaryAge += either(.8, .9, .9, 1, 1, 1, 1.1)>> - <<if $traitor.physicalAge <= 18 && $loliGrow > 0>> - <<run physicalDevelopment($traitor)>> - <</if>> - <</if>> + <<run ageSlave($traitor)>> <</if>> <<set _weeks-->> <</for>> diff --git a/src/uncategorized/pTraitorMessage.tw b/src/uncategorized/pTraitorMessage.tw index 3ba720727e70dd85f108657612b1a7c321abd571..e3bbedb530dcf3e7b0fcc3a2292171f438945483 100644 --- a/src/uncategorized/pTraitorMessage.tw +++ b/src/uncategorized/pTraitorMessage.tw @@ -49,13 +49,7 @@ <<set $traitor.birthWeek++>> <<if $traitor.birthWeek >= 52>> <<set $traitor.birthWeek = 0>> - <<if $seeAge == 1>> - <<set $traitor.physicalAge += 1, $traitor.actualAge += 1, $traitor.visualAge += 1>> - <<set $traitor.ovaryAge += either(.8, .9, .9, 1, 1, 1, 1.1)>> - <<if $traitor.physicalAge <= 18 && $loliGrow > 0>> - <<run physicalDevelopment($traitor)>> - <</if>> - <</if>> + <<run ageSlave($traitor)>> <</if>> <<set _weeks-->> <</for>> diff --git a/src/uncategorized/reBoomerang.tw b/src/uncategorized/reBoomerang.tw index e19a7b4ecd666551d517c096db639b7a84fa4480..a8c1d886d6889311062195e4380dbed240c57d51 100644 --- a/src/uncategorized/reBoomerang.tw +++ b/src/uncategorized/reBoomerang.tw @@ -51,13 +51,7 @@ brings up the relevant feeds. There's a naked body crumpled pathetically against <<set $activeSlave.birthWeek++>> <<if $activeSlave.birthWeek >= 52>> <<set $activeSlave.birthWeek = 0>> - <<if $seeAge == 1>> - <<set $activeSlave.physicalAge += 1, $activeSlave.actualAge += 1, $activeSlave.visualAge += 1>> - <<set $activeSlave.ovaryAge += either(.8, .9, .9, 1, 1, 1, 1.1)>> - <<if $activeSlave.physicalAge <= 18 && $loliGrow > 0>> - <<run physicalDevelopment($activeSlave)>> - <</if>> - <</if>> + <<run ageSlave($activeSlave)>> <</if>> <<set _weeks-->> <</for>> diff --git a/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw b/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw index 45405d5a43fbedff34f11ca0b79b6226938400db..68e1c672f553cd45f43d806e8e712df1c76a4daf 100644 --- a/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw +++ b/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw @@ -25,7 +25,7 @@ <<if ($activeSlave.dick > 0) && ($activeSlave.balls == 0)>><<set $activeSlave.balls = random(1,5)>><</if>> <<set _oppositeSex = $seeDicks > 0 && $seeDicks < 100 && (random(1, 4) <= 3)>> -<<set _secondSlave = generateRelatedSlave($activeSlave, "sibling", _oppositeSex)>> +<<set _secondSlave = generateRelatedSlave($activeSlave, "younger sibling", _oppositeSex)>> <<set _secondSlave.relationship = 4>> <<set _secondSlave.relationshipTarget = $activeSlave.ID>>