diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt index e872f538fe3e985c5d6387d1fea1b18929de58f7..0460f81e7bd4256d00f2b505181ca4e3b5277188 100644 --- a/devNotes/twine JS.txt +++ b/devNotes/twine JS.txt @@ -10648,6 +10648,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } else { child.genes = "XY"; @@ -10691,6 +10719,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } @@ -10792,6 +10848,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } else { GenerateNewSlave("XY"); @@ -10836,6 +10920,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } @@ -11462,6 +11574,7 @@ window.WombRemoveFetus = function(actor, fetusNum) let ft = actor.womb[fetusNum]; actor.womb.splice(fetusNum, 1); WombSort(actor); + actor.pregType = actor.womb.length; return ft; } else @@ -11518,6 +11631,7 @@ window.WombCleanYYFetuses = function(actor) i--; } + actor.pregType = actor.womb.length; return reserved; } @@ -19091,6 +19205,7 @@ window.rulesAssistantOptions = (function() { ["chocolate"], ["chestnut"], ["hazel"], + ["jet black"], ["black"], ["grey"], ["silver"], @@ -19164,6 +19279,7 @@ window.rulesAssistantOptions = (function() { ["chocolate"], ["chestnut"], ["hazel"], + ["jet black"], ["black"], ["grey"], ["silver"], @@ -19246,6 +19362,7 @@ window.rulesAssistantOptions = (function() { ["chocolate"], ["chestnut"], ["hazel"], + ["jet black"], ["black"], ["grey"], ["silver"], @@ -19306,6 +19423,7 @@ window.rulesAssistantOptions = (function() { ["chocolate"], ["chestnut"], ["hazel"], + ["jet black"], ["black"], ["grey"], ["silver"], @@ -35408,6 +35526,10 @@ window.BadOutcome = function() { V.researchLab.hired = 0, V.fuckdolls = 0,V.menialBioreactors = 0, V.activeUnits = 0,V.secBots.troops = 0, V.createdSlavesUnits = 0, V.createdMilitiaUnits = 0, V.createdMercUnits = 0; + r+=`<br>The ${V.SF.Lower} still deploys into the old world to plunder as it pleases, but no longer for you. You receive no money from their exploits, and their total defiance and independence of you is a permanent stain on your reputation. Of course, you'll never have the needed military power to dislodge them, especially with all the redundant fortifications, crossfire envelopes, and myriad traps that paranoid bitch had built around each entrance ever since she went rouge. Trying to sabotage certain support beams from above to make the Firebase facility collapse in on itself could easily cause enough damage to topple other parts of the arcology too, and such a thing would be very difficult to cover up. In other words, you're stuck with them. The Firebase has become a permanent tumor on your Arcology and good name.`; + break; + case "Cruel and Psychopathic": + V.SF.BadOutcome = "Revolt",V.trinkets.push("${t} dog tags"),V.Rep = 0; r += `<br>Finally fed up with your constant intrusions into her territory and crew, The Colonel riles up her people for an utterly ferocious rebellion. The promises of rape and plunder and dominion over some of the wealthiest tenants in the entire Free City (and their world-class slaves) are all thats needed to give the selfish lot of them a nearly unshakable resolve in the task of delivering their overlord Her most coveted prize: You.`; r += `<br>It is now Midnight. The lights are the first thing they disable, as they still have the excellent night vision equipment you purchased for them. Some of your citizens start panicking almost immediately at the sudden blackout; this is very reminiscent of the Daughters of Liberty attack that still haunts many of their memories. Things like this were never supposed to happen again. You had promised them that you'd create an army that would protect them...`; r += `<br>Her army vanguard strikes fast and hard throughout the main Plaza, cutting through your security personnel, defensive platoons, and drones with an ease that stinks of months of careful planning and study. Your defensive platoons, veterans of many Battles, are outmanuvered at every turn; their hidden ammunition caches are found empty, their communications networks are mysteriously scrambled, and key chokepoints are found to be booby-trapped before your men can even get to them; their well-rehearsed arcology defense routines have gone to ash. Assuming you ever get a chance to speak to The Colonel again, you would ask if her betrayal was actually inevitable rather than something you triggered.`; diff --git a/src/SpecialForce/JS.js b/src/SpecialForce/JS.js index 160971a94cc94a1bde28c15c3749308013685594..c4703d40e87199558115c26242cd62e71a830375 100644 --- a/src/SpecialForce/JS.js +++ b/src/SpecialForce/JS.js @@ -664,7 +664,7 @@ window.BadOutcome = function() { V.researchLab.hired = 0, V.fuckdolls = 0,V.menialBioreactors = 0, V.activeUnits = 0,V.secBots.troops = 0, V.createdSlavesUnits = 0, V.createdMilitiaUnits = 0, V.createdMercUnits = 0; - r+=`<br>The ${V.SF.Lower} still deploys into the old world to plunder as it pleases, but no longer for you. You recieve no money from their exploits, and their total defiance and independance of you is a permanent stain on your reputation. Of course, you'll never have the needed military power to dislodge them, especially with all the redundant fortifications, crossfire envelopes, and myriad traps that paranoid bitch had built around each entrance ever since she went rouge. Trying to sabotage certain support beams from above to make the Firebase facility collapse in on itself could easily cause enough damage to topple other parts of the arcology too, and such a thing would be very difficult to cover up. In other words, you're stuck with them. The Firebase has become a permanent tumor on your Arcology and good name.`; + r+=`<br>The ${V.SF.Lower} still deploys into the old world to plunder as it pleases, but no longer for you. You receive no money from their exploits, and their total defiance and independence of you is a permanent stain on your reputation. Of course, you'll never have the needed military power to dislodge them, especially with all the redundant fortifications, crossfire envelopes, and myriad traps that paranoid bitch had built around each entrance ever since she went rouge. Trying to sabotage certain support beams from above to make the Firebase facility collapse in on itself could easily cause enough damage to topple other parts of the arcology too, and such a thing would be very difficult to cover up. In other words, you're stuck with them. The Firebase has become a permanent tumor on your Arcology and good name.`; break; case "Cruel and Psychopathic": V.SF.BadOutcome = "Revolt",V.trinkets.push("${t} dog tags"),V.Rep = 0; diff --git a/src/js/generateGenetics.tw b/src/js/generateGenetics.tw index 87987638965a41da15fdd0d97fd67cd9fba03392..eeee9419b8e916b89d4d6c6f1bbcbc705279bf62 100644 --- a/src/js/generateGenetics.tw +++ b/src/js/generateGenetics.tw @@ -575,6 +575,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } else { child.genes = "XY"; @@ -618,6 +646,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } @@ -719,6 +775,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } else { GenerateNewSlave("XY"); @@ -763,6 +847,34 @@ window.generateChild = function(mother, ova, destination) { } } else { child.slaveName = genes.name; + if (genes.mother == -1) { + child.slaveSurname = V.PC.surname; + } else { + if (genes.father == -1) { + child.slaveSurname = V.PC.surname; + } else if (genes.father > 0) { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } else { + let currentFather = getSlave(genes.father); + if (currentFather !== undefined) { + if (currentFather.slaveSurname !== 0 && currentFather.slaveSurname !== "") { + child.slaveSurname = currentFather.slaveSurname; + } + } + } + } else { + let currentMother = getSlave(genes.mother); + if (currentMother !== undefined) { + if (currentMother.slaveSurname !== 0 && currentMother.slaveSurname !== "") { + child.slaveSurname = currentMother.slaveSurname; + } + } + } + } } } diff --git a/src/js/wombJS.tw b/src/js/wombJS.tw index 108bcdb2b310085a92650ad2b18e3e99938d8c0d..ef5f378bf9dcd9e607256481c27611f966b7de1a 100644 --- a/src/js/wombJS.tw +++ b/src/js/wombJS.tw @@ -491,6 +491,7 @@ window.WombRemoveFetus = function(actor, fetusNum) let ft = actor.womb[fetusNum]; actor.womb.splice(fetusNum, 1); WombSort(actor); + actor.pregType = actor.womb.length; return ft; } else @@ -547,6 +548,7 @@ window.WombCleanYYFetuses = function(actor) i--; } + actor.pregType = actor.womb.length; return reserved; } diff --git a/src/uncategorized/managePenthouse.tw b/src/uncategorized/managePenthouse.tw index 6c5f3e87fbeaa525a6864ec1de781c4229ebeed1..766519761593bcc503bb001ade97e4b6bbdd62da 100644 --- a/src/uncategorized/managePenthouse.tw +++ b/src/uncategorized/managePenthouse.tw @@ -18,7 +18,7 @@ <<if $SF.Toggle && $SF.Active >= 1>> <<link "Take your express elevator down to $SF.Lower""Firebase">> <</link>> <br><br> -<<elseif $SF.BadOutcome === "lockdown">>> +<<elseif $SF.BadOutcome === "lockdown">> The thick wall of rubble in front of the entrance to $SF.Lower's firebase would make the trip worthless. <</if>> diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw index 8e560c9273c1c6fd9ec845d560bd3a6d5df026cc..413e1fd9442178afd537a9c47d2e791b61379fbe 100644 --- a/src/utility/descriptionWidgetsFlesh.tw +++ b/src/utility/descriptionWidgetsFlesh.tw @@ -15125,7 +15125,7 @@ $He has <<elseif $activeSlave.bellyPreg >= 1500>> Your breeding focused society finds a developing pregnancy very fashionable. <</if>> - <<elseif $arcologies[0].FSRepopulationFocusPregPolicy == 1>> + <<elseif $arcologies[0].FSRepopulationFocusPregPolicy == 1 && $activeSlave.bellyPreg >= 1500>> Thanks to your trendsetting policies, society finds $his pregnant belly fashionable. <<elseif $arcologies[0].FSRestart != "unset">> <<if $activeSlave.belly >= 1000000>>