diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt index 40426cfc72bca0de5a05996859a64f2ddaa7cbe2..f0fd81842a545ea208d1217524198ece9f8fe7da 100644 --- a/devNotes/twine JS.txt +++ b/devNotes/twine JS.txt @@ -1043,7 +1043,7 @@ window.resetFSCredits = function() { }; window.generatePlayerPronouns = function(PC) { - if (PC.title === 0) + if (PC.title === 0) { PC.pronoun = "she"; PC.possessivePronoun = "hers"; PC.possessive = "her"; @@ -1060,21 +1060,22 @@ window.generatePlayerPronouns = function(PC) { } }; -window.generateAssistantPronouns = function(assistant) { - if (assistant === 0) - assistant.pronoun = "it"; - assistant.possessivePronoun = "its"; - assistant.possessive = "its"; - assistant.object = "it"; - assistant.objectReflexive = "itself"; - assistant.noun = "program"; +window.generateAssistantPronouns = function() { + const V = State.variables; + if (V.assistant === 0) { + V.assistantPronouns.pronoun = "it"; + V.assistantPronouns.possessivePronoun = "its"; + V.assistantPronouns.possessive = "its"; + V.assistantPronouns.object = "it"; + V.assistantPronouns.objectReflexive = "itself"; + V.assistantPronouns.noun = "program"; } else { - assistant.pronoun = "she"; - assistant.possessivePronoun = "hers"; - assistant.possessive = "her"; - assistant.object = "her"; - assistant.objectReflexive = "herself"; - assistant.noun = "girl"; + V.assistantPronouns.pronoun = "she"; + V.assistantPronouns.possessivePronoun = "hers"; + V.assistantPronouns.possessive = "her"; + V.assistantPronouns.object = "her"; + V.assistantPronouns.objectReflexive = "herself"; + V.assistantPronouns.noun = "girl"; } }; diff --git a/src/events/intro/initNationalities.tw b/src/events/intro/initNationalities.tw index 225e2d471f29b597b259f11a70d641bdf10dd9f4..dc95f0183bf06e2aef673aadd3c027ebb08333ef 100644 --- a/src/events/intro/initNationalities.tw +++ b/src/events/intro/initNationalities.tw @@ -7,6 +7,8 @@ /*PC qualities application*/ +<<run generatePlayerPronouns($PC)>> + <<set $upgradeMultiplierArcology = 1>> <<set $upgradeMultiplierMedicine = 1>> diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw index f2aa5f1139b1efa423d33c7260946f7177f2efa2..d3b308c08f386e26788af382cd8b9f1048d52e44 100644 --- a/src/events/intro/introSummary.tw +++ b/src/events/intro/introSummary.tw @@ -561,9 +561,9 @@ __''Player Character''__ <br>You are a $PCCreationSex. <br>Change to <<if $PCCreationSex != "masculine ''Master''">> - [[masculine Master|Intro Summary][$PC.title = 1, $PC.genes = "XY", $PC.pronoun = "he", $PC.possessive = "his", $PC.object = "him", $PCCreationSex = "masculine ''Master''"]] + [[masculine Master|Intro Summary][$PC.title = 1, $PC.genes = "XY", $PCCreationSex = "masculine ''Master''"]] <<elseif $PCCreationSex != "feminine ''Mistress''">> - [[feminine Mistress|Intro Summary][$PC.title = 0, $PC.genes = "XX", $PC.pronoun = "her", $PC.possessive = "her", $PC.object = "her", $PCCreationSex = "feminine ''Mistress''"]] + [[feminine Mistress|Intro Summary][$PC.title = 0, $PC.genes = "XX", $PCCreationSex = "feminine ''Mistress''"]] <</if>> <br>Everyone calls you ''<<= PlayerName()>>.'' diff --git a/src/events/intro/pcBodyIntro.tw b/src/events/intro/pcBodyIntro.tw index 95f68f16afc88757bfedb08c5086f5a83342183e..f42f251a3081a160f1f79d4d24c0ae16f5c9612f 100644 --- a/src/events/intro/pcBodyIntro.tw +++ b/src/events/intro/pcBodyIntro.tw @@ -7,10 +7,10 @@ Most slaveowners in the Free Cities are male. The preexisting power structures o <<if $PC.title > 0>> You are a <<if $PC.genes == "XX">>wo<</if>>man with a masculine figure and will be referred to as ''Master.'' - [[Switch to a feminine appearance|PC Body Intro][$PC.title = 0, $PC.pronoun = "her", $PC.possessive = "her", $PC.object = "her"]] + [[Switch to a feminine appearance|PC Body Intro][$PC.title = 0]] <<else>> You are a <<if $PC.genes == "XX">>wo<</if>>man with a feminine figure and will be referred to as ''Mistress.'' - [[Switch to a masculine appearance|PC Body Intro][$PC.title = 1, $PC.pronoun = "he", $PC.possessive = "his", $PC.object = "him"]] + [[Switch to a masculine appearance|PC Body Intro][$PC.title = 1]] <</if>> <br> //This option will affect scenes. Femininity may increase difficulty in the future, but for now only your chest and junk matter.// diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw index 8571f715b4366406604a501b5f3cda379f6f3d8d..3ed9117cf1b63b7cfbcb9d9dd9c3bd63bbec66d0 100644 --- a/src/init/storyInit.tw +++ b/src/init/storyInit.tw @@ -839,7 +839,7 @@ DairyRestraintsSetting($dairyRestraintsSetting) /* assistant FS appearance variable */ <<set $assistantFSAppearance = "default">> -<<set $assistantPronouns = {pronoun: "she", possessivePronoun: "hers", possessive: "her", object: "her", objectReflexive: "herself", noun: "girl"}>> +<<set $assistantPronouns = {pronoun: "it", possessivePronoun: "its", possessive: "its", object: "it", objectReflexive: "itself", noun: "program"}>> /*pregmod variables */ <<set $specialSlavesPriceOverride = 0>> diff --git a/src/js/datatypeCleanupJS.tw b/src/js/datatypeCleanupJS.tw index ef55f9714675aac9fcc5ee8119c9517dce7c7032..1a7bff01cf4fb6db6c6624a85a65a60d5aba1587 100644 --- a/src/js/datatypeCleanupJS.tw +++ b/src/js/datatypeCleanupJS.tw @@ -1238,6 +1238,9 @@ window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup() { V.fuckdolls = Math.max(+V.fuckdolls , 0) || 0; V.menialBioreactors = Math.max(+V.menialBioreactors , 0) || 0; + V.assistant = Math.clamp(+V.assistant, 0, 1) || 0; + generateAssistantPronouns(V.assistantPronouns); + V.foodCost = Math.trunc(2500/V.economy); V.drugsCost = Math.trunc(10000/V.economy); V.rulesCost = Math.trunc(10000/V.economy); diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw index 59a9f647d9397d88f184fda38588a090c0e90f66..fc6db751bf52e514687d61f8956bf895bbcae00e 100644 --- a/src/js/storyJS.tw +++ b/src/js/storyJS.tw @@ -1041,7 +1041,7 @@ window.resetFSCredits = function() { }; window.generatePlayerPronouns = function(PC) { - if (PC.title === 0) + if (PC.title === 0) { PC.pronoun = "she"; PC.possessivePronoun = "hers"; PC.possessive = "her"; @@ -1058,20 +1058,21 @@ window.generatePlayerPronouns = function(PC) { } }; -window.generateAssistantPronouns = function(assistant) { - if (assistant === 0) - assistant.pronoun = "it"; - assistant.possessivePronoun = "its"; - assistant.possessive = "its"; - assistant.object = "it"; - assistant.objectReflexive = "itself"; - assistant.noun = "program"; +window.generateAssistantPronouns = function() { + const V = State.variables; + if (V.assistant === 0) { + V.assistantPronouns.pronoun = "it"; + V.assistantPronouns.possessivePronoun = "its"; + V.assistantPronouns.possessive = "its"; + V.assistantPronouns.object = "it"; + V.assistantPronouns.objectReflexive = "itself"; + V.assistantPronouns.noun = "program"; } else { - assistant.pronoun = "she"; - assistant.possessivePronoun = "hers"; - assistant.possessive = "her"; - assistant.object = "her"; - assistant.objectReflexive = "herself"; - assistant.noun = "girl"; + V.assistantPronouns.pronoun = "she"; + V.assistantPronouns.possessivePronoun = "hers"; + V.assistantPronouns.possessive = "her"; + V.assistantPronouns.object = "her"; + V.assistantPronouns.objectReflexive = "herself"; + V.assistantPronouns.noun = "girl"; } }; diff --git a/src/pregmod/electiveSurgery.tw b/src/pregmod/electiveSurgery.tw index ab8f73e80c67000f566cd633f245a7076a091622..91357435184059f8f43d3f92a6bc114def34940b 100644 --- a/src/pregmod/electiveSurgery.tw +++ b/src/pregmod/electiveSurgery.tw @@ -361,9 +361,9 @@ You have @@.orange;$PC.skin skin.@@<<if $PC.skin != $PC.origSkin>> Your original [[Remove your male half|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 0, $PC.storedCum += 10, $cash -= 25000, $surgeryType = "herm2female"]] | [[Remove your female half|PC Surgery Degradation][$PC.vagina = 0, $PC.preg = 0, WombFlush($PC), $cash -= 25000, $surgeryType = "herm2male"]] <<if $PC.title > 0>> - | [[Remove your male half completely|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 0, $PC.storedCum += 10, $PC.title = 0, $PC.pronoun = "she", $PC.object = "her", $PC.possessive = "her", $cash -= 25000, $surgeryType = "herm2truefemale"]] + | [[Remove your male half completely|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 0, $PC.storedCum += 10, $PC.title = 0, generatePlayerPronouns($PC), $cash -= 25000, $surgeryType = "herm2truefemale"]] <<else>> - | [[Remove your female half completely|PC Surgery Degradation][$PC.vagina = 0, $PC.preg = 0, WombFlush($PC), $PC.boobs = 0, $PC.boobsBonus = 0, $PC.boobsImplant = 0, $PC.title = 1, $PC.pronoun = "he", $PC.object = "him", $PC.possessive = "his", $cash -= 25000, $surgeryType = "herm2truemale"]] + | [[Remove your female half completely|PC Surgery Degradation][$PC.vagina = 0, $PC.preg = 0, WombFlush($PC), $PC.boobs = 0, $PC.boobsBonus = 0, $PC.boobsImplant = 0, $PC.title = 1, generatePlayerPronouns($PC), $cash -= 25000, $surgeryType = "herm2truemale"]] <</if>> <<elseif $PC.dick == 1>> You have @@.orange;male genitalia@@ and a @@.orange;<<if $PC.title > 0>>masculine<<else>>feminine<</if>> appearance.@@ "We'll store some of your sperm for you, should you decide to lose your maleness, and have it shipped to your arcology. Who you decide to use it on, well... That's up to you!" @@ -371,8 +371,8 @@ You have @@.orange;$PC.skin skin.@@<<if $PC.skin != $PC.origSkin>> Your original [[Have your male organs replaced with female ones|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 0, $PC.vagina = 1, $PC.newVag = 1, $cash -= 50000, $surgeryType = "male2female"]] | [[Add a female reproductive tract|PC Surgery Degradation][$PC.vagina = 1, $PC.newVag = 1, $PC.preg = 0, WombFlush($PC), $cash -= 150000, $surgeryType = "male2herm"]] <<if $PC.title > 0>> - | [[Become a woman|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 0, $PC.storedCum += 10, $PC.vagina = 1, $PC.newVag = 1, $PC.preg = 0, $PC.title = 0, $PC.pronoun = "she", $PC.object = "her", $PC.possessive = "her", $cash -= 50000, $surgeryType = "male2truefemale"]] - | [[Become a hermaphrodite girl|PC Surgery Degradation][$PC.vagina = 1, $PC.newVag = 1, $PC.preg = 0, WombFlush($PC), $PC.title = 0, $PC.pronoun = "she", $PC.object = "her", $PC.possessive = "her", $cash -= 150000, $surgeryType = "male2hermfemale"]] + | [[Become a woman|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 0, $PC.storedCum += 10, $PC.vagina = 1, $PC.newVag = 1, $PC.preg = 0, $PC.title = 0, generatePlayerPronouns($PC), $cash -= 50000, $surgeryType = "male2truefemale"]] + | [[Become a hermaphrodite girl|PC Surgery Degradation][$PC.vagina = 1, $PC.newVag = 1, $PC.preg = 0, WombFlush($PC), $PC.title = 0, generatePlayerPronouns($PC), $cash -= 150000, $surgeryType = "male2hermfemale"]] <</if>> <<else>> You have @@.orange;female genitalia@@ and a @@.orange;<<if $PC.title > 0>>masculine<<else>>feminine<</if>> appearance.@@ @@ -380,8 +380,8 @@ You have @@.orange;$PC.skin skin.@@<<if $PC.skin != $PC.origSkin>> Your original [[Have your female organs replaced with male ones|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 1, $PC.vagina = 0, $cash -= 50000, $surgeryType = "female2male"]] | [[Add a male reproductive tract|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 1, $cash -= 150000, $surgeryType = "female2herm"]] <<if $PC.title == 0>> - | [[Become a man|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 1, $PC.vagina = 0, $PC.preg = 0, WombFlush($PC), $PC.title = 1, $PC.pronoun = "he", $PC.object = "him", $PC.possessive = "his", $PC.boobs = 0, $PC.boobsBonus = 0, $PC.boobsImplant = 0, $cash -= 50000, $surgeryType = "female2truemale"]] - | [[Become a hermaphrodite boy|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 1, $PC.title = 1, $PC.pronoun = "he", $PC.object = "him", $PC.possessive = "his", $PC.boobs = 0, $PC.boobsBonus = 0, $PC.boobsImplant = 0, $cash -= 150000, $surgeryType = "female2hermmale"]] + | [[Become a man|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 1, $PC.vagina = 0, $PC.preg = 0, WombFlush($PC), $PC.title = 1, generatePlayerPronouns($PC), $PC.boobs = 0, $PC.boobsBonus = 0, $PC.boobsImplant = 0, $cash -= 50000, $surgeryType = "female2truemale"]] + | [[Become a hermaphrodite boy|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.dick = 1, $PC.title = 1, generatePlayerPronouns($PC), $PC.boobs = 0, $PC.boobsBonus = 0, $PC.boobsImplant = 0, $cash -= 150000, $surgeryType = "female2hermmale"]] <</if>> <</if>> <</if>> diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw index 8a65a7d86c07f4b93c656ec93f05c25008b38b3e..0c02bdfe45d76ac7d07f9d9ade3737a7c3c89424 100644 --- a/src/pregmod/widgets/pregmodWidgets.tw +++ b/src/pregmod/widgets/pregmodWidgets.tw @@ -246,11 +246,17 @@ <<widget "setPlayerPronouns">> <<set _heP = $PC.pronoun>> <<set _hisP = $PC.possessive>> + <<set _hersP = $PC.possessivePronoun>> <<set _himP = $PC.object>> + <<set _himselfP = $PC.objectReflexive>> + <<set _womanP = $PC.noun>> <<set _HeP = capFirstChar(_heP)>> <<set _HisP = capFirstChar(_hisP)>> + <<set _HersP = capFirstChar(_hersP)>> <<set _HimP = capFirstChar(_himP)>> + <<set _HimselfP = capFirstChar(_himselfP)>> + <<set _WomanP = capFirstChar(_womanP)>> <</widget>> <<widget "setAssistantPronouns">> diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index 72f49ec89539445f1965647bc90967415ab869c1..c58da69d2aa29dc51e00be1e0ca1fdc730b6a294 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -989,11 +989,6 @@ <<if ndef $assistantBodyDesire>> <<set $assistantBodyDesire = 0>> <</if>> -<<if $assistant == 0>> - <<set $assistantPronouns = {pronoun: "it", possessivePronoun: "its", possessive: "its", object: "it", objectReflexive: "itself", noun: "program"}>> -<<else>> - <<set $assistantPronouns = {pronoun: "she", possessivePronoun: "hers", possessive: "her", object: "her", objectReflexive: "herself", noun: "girl"}>> -<</if>> <<if ndef $huskSlaveOrdered>> <<set $huskSlaveOrdered = 0>> <</if>> diff --git a/src/uncategorized/assistantEvents.tw b/src/uncategorized/assistantEvents.tw index 1292dce757d16612f49c9aa466b68a1d68130ba8..336a4b942776f282bfc2f733d0f698d85b1de612 100644 --- a/src/uncategorized/assistantEvents.tw +++ b/src/uncategorized/assistantEvents.tw @@ -1316,6 +1316,7 @@ You look over the details of the report. It would require another rather expansi <<replace "#result">> Your sultry-voiced assistant requests a slave to demonstrate what it - now she - means. You bring in a slave and a fuckmachine, and tell her to get on it. The lovely voice croons and talks dirty to the slave as the slave uses the machine, acting as though she is the machine's voice. The pace of the machine is different, too, irregular and more lifelike. The slave certainly enjoys herself, even if $assistantName is just simulating sex. <<set $assistant = 1>> + <<run generateAssistantPronouns($assistant)>> <</replace>> <</link>> <br><<link "No, stay impersonal">> @@ -1415,8 +1416,9 @@ __Personal assistant appearances:__ <</link>> <br><<link "Go back to the standard personality">> <<replace "#result">> - You tell $assistantName to reduce its lewdness by ninety percent. It reverts to its genderless, emotionless affect. + You tell $assistantName to reduce _hisA lewdness by ninety percent. _HeA reverts to _hisA genderless, emotionless affect. <<set $assistant = 0>> + <<run generateAssistantPronouns($assistant)>> <</replace>> <</link>> @@ -1425,7 +1427,7 @@ __Personal assistant appearances:__ __Personal assistant appearances:__ <br><<link "Keep your new appearance">> <<replace "#result">> - At your order, she enthusiastically explores her new body, perfecting its appearance. "Thank you, <<if $PC.title != 0>>sir<<else>>ma'am<</if>>. This was fun. As always, you can customize me from the arcology management menu," she states. "Oh! And if you choose to drive society in another direction, I'll have a new appearance ready for your enjoyment at once," she hastily adds. + At your order, _heA enthusiastically explores _hisA new body, perfecting its appearance. "Thank you, <<if $PC.title != 0>>sir<<else>>ma'am<</if>>. This was fun. As always, you can customize me from the arcology management menu," she states. "Oh! And if you choose to drive society in another direction, I'll have a new appearance ready for your enjoyment at once," she hastily adds. <<if $arcologies[0].FSPaternalist != "unset">> <<set $assistantFSAppearance = "paternalist">> <<elseif $arcologies[0].FSRepopulationFocus != "unset">> @@ -1487,6 +1489,7 @@ __Personal assistant appearances:__ <<replace "#result">> You tell $assistantName to reduce its lewdness by ninety percent. It reverts to its genderless, emotionless affect. <<set $assistant = 0>> + <<run generateAssistantPronouns($assistant)>> <</replace>> <</link>>