diff --git a/Changelog.txt b/Changelog.txt index df87ca8a451ad91caef516558402f6899ccc5b70..a8c7630dabd040a3660c05f850bac5509e0adf4b 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,7 +1,17 @@ Pregmod +06/14/2019 + 0.10.7.1-2.5.x +06/17/2019 + + 1 + -fixes + -more vignettes added + +06/14/2019 + 0 -RA refactoring -multibranding @@ -10,6 +20,7 @@ Pregmod -superfetation tweaks -preg analysis can now identify genetic quirks in fetuses -enabled weight gain/loss genetic quirks + -added androgyny genetic quirk -fixes 0.10.7.1-2.4.x diff --git a/devNotes/AnatomyOfAFreeCitiesEvent.txt b/devNotes/AnatomyOfAFreeCitiesEvent.txt index 1e92894883d85befb0ae52c40c3bbcfd9abcd25e..97c4d085fa3a401e042243eb0d3ff6881f49c6e6 100644 --- a/devNotes/AnatomyOfAFreeCitiesEvent.txt +++ b/devNotes/AnatomyOfAFreeCitiesEvent.txt @@ -122,9 +122,9 @@ A choice doesn't need to have a specific effect. If your event has an immediate /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/devTools/FC.d.ts b/devTools/FC.d.ts index 3c0e94debd2d951332bef19dc578c63a179060d2..57cfd50b8e97ffcaeda1de83772e646325255930 100644 --- a/devTools/FC.d.ts +++ b/devTools/FC.d.ts @@ -40,6 +40,11 @@ declare namespace App { val: number; } + class NumericRange { + min: number; + max: number; + } + class RuleConditions { function: boolean | string; data: any; @@ -110,7 +115,7 @@ declare namespace App { vaginalAttachment: string; buttplugAttachment: string; eyeColor: string; - makeup: string; + makeup: number; nails: string; hColor: string; hLength: number; @@ -152,7 +157,8 @@ declare namespace App { relationshipRules: string; standardPunishment: string; standardReward: string; - diet: string | number; + weight: NumericRange; + diet: string; dietCum: number; dietMilk: number; onDiet: number; diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt index 47f5b1185ae93aa585a6c225d06e0de79d63f516..db4ec0a8b640af2e2abaddbd5d98378cc2f5dceb 100644 --- a/slave variables documentation - Pregmod.txt +++ b/slave variables documentation - Pregmod.txt @@ -184,6 +184,14 @@ setup.whoreCareers "an escort" "an exotic dancer" +setup.servantCareers +"a butler" +"a cook" +"a handmaiden" +"a housewife" +"a maid" +"a shrine maiden" + setup.HGCareers "a captain" "a corporate executive" @@ -201,22 +209,6 @@ setup.HGCareers "a slaver" "a student council president" -setup.recruiterCareers -"a club recruiter" -"a college scout" -"a con artist" -"a cult leader" -"a girl scout" -"a hunter" -"a lobbyist" -"a military recruiter" -"a missionary" -"a political activist" -"a princess" -"a spy" -"a talent scout" -"retired" - setup.madamCareers "a banker" "a business owner" @@ -385,23 +377,52 @@ setup.schoolteacherCareers "an astronaut" "an economist" -setup.servantCareers -"a butler" -"a cook" -"a handmaiden" -a housewife" -"a maid" -"a shrine maiden" +setup.recruiterCareers +"a club recruiter" +"a college scout" +"a con artist" +"a cult leader" +"a girl scout" +"a hunter" +"a lobbyist" +"a military recruiter" +"a missionary" +"a political activist" +"a princess" +"a spy" +"a talent scout" +"retired" -others -"a breeder" -"a Futanari Sister" -"a fuckdoll" +setup.otherCareers "a bioreactor" -"a slave" -"a dairy slave" -"a dairy cow" +"a breeder" "a breeding bull" +"a businesswoman" +"a cat burglar" +"a criminal businesswoman" +"a dairy cow" +"a dairy slave" +"a drug pusher" +"a drug smuggler" +"a fence" +"a Fuckdoll" +"a lady courtier" +"a merchant" +"a murderer" +"a priest" +"a producer" +"a slave since birth" +"a slave" +"a smuggler" +"a trophy spouse" +"a wanderer" +"a well connected individual" +"an antislavery activist" +"an arcology owner" +"an arms dealer" +"being homeschooled by her parents" +"from a middle class family" +"from an upper class family" ID: @@ -2305,7 +2326,7 @@ nail type brand: is an object -keys include any place on a slave body that can recieve a brand, values are a string for the brand. +keys include any place on a slave body that can receive a brand, values are a string for the brand. earPiercing: @@ -3123,7 +3144,7 @@ geneticQuirks: 0 - does not have 1 - carrier 2 - active -3 - inactive (used for triggering macromastia and kin to start growin) +3 - inactive (used for triggering macromastia and kin to start growing) { diff --git a/src/002-config/fc-version.js b/src/002-config/fc-version.js index 5f4be65ad078a7cdf316f6755e53f6b618c5a547..5906cb73a9f9c32668a2d2dd6934d3b4b485ff73 100644 --- a/src/002-config/fc-version.js +++ b/src/002-config/fc-version.js @@ -1,6 +1,6 @@ App.Version = { base: "0.10.7", - pmod: "2.4.X", + pmod: "2.5.X", release: 1047, }; diff --git a/src/003-assets/CSS/RAoptions.css b/src/003-assets/CSS/RAoptions.css index a8f3728ab77415ba9689a30ceab601e3a4b629c7..3a3c4fcc3d53779a892516ff7aedc21e424ff436 100644 --- a/src/003-assets/CSS/RAoptions.css +++ b/src/003-assets/CSS/RAoptions.css @@ -46,3 +46,43 @@ right: 0px; background-color: #2D80E0; } +.ra-radio-label { + margin: 0.5em; +} + +.ra-container { + display: grid; + grid-template-columns: minmax(100px, max-content) auto; + grid-row-gap: 0.5ex; +} + +.ra-label { + grid-column: 1; +} + +.ra-label::after { + content: ":"; + margin-right: 0.5em; +} + +.ra-sub-label { + font-style: italic; + margin-left: 2.5em; +} + +.ra-sub-label::after { + content: ":"; + margin-right: 0.5em; +} + +.ra-inline-label { + margin-right: 0.5em; +} + +.ra-inline-label::after { + content: ":"; +} + +.ra-setters { + margin-top: 3ex; +} diff --git a/src/003-assets/CSS/general.css b/src/003-assets/CSS/general.css new file mode 100644 index 0000000000000000000000000000000000000000..f3467c9abe50b08fbfaa5a0fb83f80f058e02fe1 --- /dev/null +++ b/src/003-assets/CSS/general.css @@ -0,0 +1,13 @@ +input:invalid{ + border-color: #900; + background-color: rgba(255, 0, 0, 0.25); +} + +input:focus:invalid { + outline: none; +} + +input:out-of-range { + background-color: rgba(255, 0, 0, 0.25); + border: 2px solid #900; +} diff --git a/src/004-base/facility.js b/src/004-base/facility.js index ad3095f1f5a7ae25535d6252ed53bc2b38e961cb..988a76f0b0919eda8f141ae8a32932a0133b3e5c 100644 --- a/src/004-base/facility.js +++ b/src/004-base/facility.js @@ -7,6 +7,8 @@ App.Data.JobDesc = class { this.fuckdollAccepted = false; /** @type {boolean|undefined} */ this.broodmotherAccepted = false; + /** workers can take part time jobs in addition to their main (full-time) one */ + this.partTime = false; } }; diff --git a/src/Mods/DinnerParty/dinnerPartyExecution.tw b/src/Mods/DinnerParty/dinnerPartyExecution.tw index 221ef3abb8e7e765122143b61b2f0816c9481778..8e36ac110de0eb52e79a2b8e5a1608cd00e1ee39 100644 --- a/src/Mods/DinnerParty/dinnerPartyExecution.tw +++ b/src/Mods/DinnerParty/dinnerPartyExecution.tw @@ -13,10 +13,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> @@ -426,13 +426,7 @@ $HeadGirl.slaveName tries to slip away, but $he was grabbed at the neck by the leader of the pack. He pulls $him down to the ground forcefully. $HeadGirl.slaveName knows better than to resist, $he is still a slave despite $his position as your Head Girl. A slave does not raise their hand against a Master, even one that's not $his own. The leader rips off $his dress, exposing $his bare chest. Your Head Girl is frozen in terror when $he is lifted onto the hastily cleared dining hall table by several of the men. $His eyes desperately search for you. You are the only one who can stop this. All that's required is a single word from you. $HeadGirl.slaveName's eyes meets yours; the look of relief on $his face is soon replaced by the sad realization that you will not intervene. - $His mouth just barely forms the word - <<if $PC.title > 0>> - 'Master' - <<else>> - 'Mistress' - <</if>> - as you shake your head, so $he closes $his mouth and resigns $himself to $his fate. + $His mouth just barely forms the word "<<= WrittenMaster($HeadGirl)>>" as you shake your head, so $he closes $his mouth and resigns $himself to $his fate. <br> Your Head Girl is placed across the corner of the dining hall table face-down, $his hands and legs held open by four men. $He finds a hand on $his ass, groping roughly. Then another hand on the other cheek, roughly parting $his globes to get better access. /% Pussy Check %/ diff --git a/src/SecExp/authorityReport.tw b/src/SecExp/authorityReport.tw index 7ebe182cc8dae982d03b0b4ee3baffbefca6086d..b56e08c95f4a879ff8e073f267ed401d8ba1fe1a 100644 --- a/src/SecExp/authorityReport.tw +++ b/src/SecExp/authorityReport.tw @@ -18,97 +18,97 @@ Your authority is <<set _authGrowth = 0>> <<if $PC.career == "wealth">> - As part of the idle wealth, you were used to have obedience coming naturally to you. Now you find it harder to maintain authority over the arcology. - <<set _authGrowth -= 10 * random(5,15)>> + As part of the idle rich, you were used to having obedience coming naturally to you. Now you find it harder to maintain authority over the arcology. + <<set _authGrowth -= (10 * random(5,15))>> <<elseif $PC.career == "slaver">> Your past as a slaver helps you assert your authority over the arcology. - <<set _authGrowth += 10 * random(5,15)>> + <<set _authGrowth += (10 * random(5,15))>> <<elseif $PC.career == "escort">> Given your past career as an escort, you find it hard to assert your authority over the arcology and its inhabitants. - <<set _authGrowth -= 10 * random(5,15)>> + <<set _authGrowth -= (10 * random(5,15))>> <<elseif $PC.career == "servant">> Given your past career as a servant, you find it hard to assert your authority over the arcology and its inhabitants. - <<set _authGrowth -= 10 * random(5,15)>> + <<set _authGrowth -= (10 * random(5,15))>> <<elseif $PC.career == "BlackHat">> - Given your past career as a, rather questionable, incursion specialist, you find it hard to assert your authority over the arcology and its inhabitants, despite what you may know about them. - <<set _authGrowth -= 10 * random(5,15)>> + Given your past career as a (rather questionable) incursion specialist, you find it hard to assert your authority over the arcology and its inhabitants, despite what you may know about them. + <<set _authGrowth -= (10 * random(5,15))>> <<elseif $PC.career == "gang">> Given your past life as a gang leader, you find it easier to assert your authority over the arcology and its inhabitants. - <<set _authGrowth += 10 * random(5,15)>> + <<set _authGrowth += (10 * random(5,15))>> <</if>> <<if $rep >= 19500>> Your legend is so well known that your mere presence commands respect and obedience, increasing your authority. - <<set _authGrowth += 10 * random(10,20)>> + <<set _authGrowth += (10 * random(10,20))>> <<elseif $rep >= 15000>> Your reputation is so high that your mere presence commands respect, increasing your authority. - <<set _authGrowth += 10 * random(5,15)>> + <<set _authGrowth += (10 * random(5,15))>> <<elseif $rep >= 10000>> Your reputation is high enough that your presence commands some respect, increasing your authority. - <<set _authGrowth += 10 * random(2,8)>> + <<set _authGrowth += (10 * random(2,8))>> <</if>> <<if $security >= 90>> Your arcology is incredibly secure and your citizens know quite well who to thank, greatly increasing your authority. - <<set _authGrowth += 10 * random(10,20)>> + <<set _authGrowth += (10 * random(10,20))>> <<elseif $security >= 70>> Your arcology is really secure and your citizens know quite well who to thank, increasing your authority. - <<set _authGrowth += 10 * random(5,15)>> + <<set _authGrowth += (10 * random(5,15))>> <<elseif $security >= 50>> Your arcology is quite secure and your citizens know who to thank, increasing your authority. - <<set _authGrowth += 10 * random(2,8)>> + <<set _authGrowth += (10 * random(2,8))>> <</if>> <<if $crime >= 90>> The all powerful criminal organizations controlling the arcology have a very easy time undermining your authority. - <<set _authGrowth -= 10 * random(10,20)>> + <<set _authGrowth -= (10 * random(10,20))>> <<elseif $crime >= 70>> Crime is king in the arcology, powerful criminals have a very easy time undermining your authority. - <<set _authGrowth -= 10 * random(5,15)>> + <<set _authGrowth -= (10 * random(5,15))>> <<elseif $crime >= 50>> Criminal organizations have a strong foothold in the arcology, their activities undermine your authority. - <<set _authGrowth -= 10 * random(2,8)>> + <<set _authGrowth -= (10 * random(2,8))>> <</if>> <<if $averageDevotion >= 50 && $averageTrust >= 50>> The high devotion and trust of your slaves speak eloquently of your leadership capabilities, helping your authority grow. - <<set _authGrowth += 5 * (($averageDevotion + $averageTrust) / 10)>> + <<set _authGrowth += (5 * (($averageDevotion + $averageTrust) / 10))>> <<elseif $averageDevotion >= 50>> - The high devotion of your slaves speak eloquently of your leadership capabilities, helping your authority grow. - <<set _authGrowth += 5 * ($averageDevotion / 10)>> + The high devotion of your slaves speaks eloquently of your leadership capabilities, helping your authority grow. + <<set _authGrowth += (5 * ($averageDevotion / 10))>> <<elseif $averageTrust >= 50>> - The high trust of your slaves speak eloquently of your leadership capabilities, helping your authority grow. - <<set _authGrowth += 5 * ($averageTrust / 10)>> + The high trust of your slaves speaks eloquently of your leadership capabilities, helping your authority grow. + <<set _authGrowth += (5 * ($averageTrust / 10))>> <</if>> <<if $arcologies[0].ownership >= 90>> You own so much of the arcology that your authority quickly increases. - <<set _authGrowth += 5 * Math.trunc($arcologies[0].ownership / 10)>> + <<set _authGrowth += (5 * Math.trunc($arcologies[0].ownership / 10))>> <<elseif $arcologies[0].ownership >= 70>> You own a big part of the arcology, causing your authority to increase. - <<set _authGrowth += 5 * Math.trunc($arcologies[0].ownership / 10)>> + <<set _authGrowth += (5 * Math.trunc($arcologies[0].ownership / 10))>> <<elseif $arcologies[0].ownership >= 50>> You own the majority of the arcology, causing your authority to slowly increase. - <<set _authGrowth += 5 * Math.trunc($arcologies[0].ownership / 10)>> + <<set _authGrowth += (5 * Math.trunc($arcologies[0].ownership / 10))>> <<else>> Your low ownership of the arcology causes your authority to decrease. - <<set _authGrowth -= 5 * Math.trunc($arcologies[0].ownership / 10)>> + <<set _authGrowth -= (5 * Math.trunc($arcologies[0].ownership / 10))>> <</if>> <<if $activeUnits >= 9>> - Your military is massive, commanding so many troops greatly increases your authority. - <<set _authGrowth += 12 * $activeUnits>> + Your military is massive; commanding so many troops greatly increases your authority. + <<set _authGrowth += (12 * $activeUnits)>> <<elseif $activeUnits >= 7>> - Your military is huge, commanding such a number of soldiers increases your authority. - <<set _authGrowth += 12 * $activeUnits>> + Your military is huge; commanding such a number of soldiers increases your authority. + <<set _authGrowth += (12 * $activeUnits)>> <<elseif $activeUnits >= 4>> - Your military is at a decent size, commanding a small army increases your authority. - <<set _authGrowth += 12 * $activeUnits>> + Your military is at a decent size; commanding a small army increases your authority. + <<set _authGrowth += (12 * $activeUnits)>> <</if>> <<if $SF.Toggle && $SF.Active >= 1 && $SF.Size > 10>> - Having a powerful special force, increases your authority. - <<set _authGrowth += $SF.Size/10>> + Having a powerful special force increases your authority. + <<set _authGrowth += ($SF.Size/10)>> <</if>> <<if $arcologies[0].FSChattelReligionist >= 90>> @@ -144,13 +144,13 @@ Your authority is <</if>> <<if $miniTruth >= 1>> - Your authenticity department works tirelessly to impose your authority in all the arcology. - <<set _authGrowth += 15 * $miniTruth>> + Your authenticity department works tirelessly to impose your authority in all of the arcology. + <<set _authGrowth += (15 * $miniTruth)>> <</if>> <<if $secretService >= 1>> Your secret services constantly keep under surveillance any potential threat, intervening when necessary. Rumors of the secretive security service and mysterious disappearances make your authority increase. - <<set _authGrowth += 15 * $secretService>> + <<set _authGrowth += (15 * $secretService)>> <</if>> <<if $edictsAuthUpkeep > 0>> diff --git a/src/SecExp/edicts.tw b/src/SecExp/edicts.tw index ae5bd171732a92fd23c9c4a5f1c56b1483d70d68..7796710d8dc8a055b528714e3b4573a96142ea87 100644 --- a/src/SecExp/edicts.tw +++ b/src/SecExp/edicts.tw @@ -223,7 +223,7 @@ <<if $alternativeRents == 0>> <br>''Alternative rent payment:'' allow citizens to pay for their rents in menial slaves rather than cash, if so they wish. <<if $authority >= 1000>> - [[Implement|edicts][$alternativeRents = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$alternativeRents = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -233,7 +233,7 @@ <<if $enslavementRights == 0>> <br>''Enslavement rights:'' the arcology owner will be the only authority able to declare a person enslaved or not. <<if $authority >= 1000>> - [[Implement|edicts][$enslavementRights = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep += 10]] + [[Implement|edicts][$enslavementRights = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -243,7 +243,7 @@ <<if $sellData == 0 && ($secUpgrades.nanoCams == 1 || $secUpgrades.cyberBots == 1 || $secUpgrades.eyeScan == 1 || $secUpgrades.cryptoAnalyzer == 1 || $crimeUpgrades.autoTrial == 1 || $crimeUpgrades.autoArchive == 1 || $crimeUpgrades.worldProfiler == 1 || $crimeUpgrades.advForensic == 1)>> <br>''Private Data marketization:'' allow the selling of private citizens' data. <<if $authority >= 1000>> - [[Implement|edicts][$sellData = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep += 10]] + [[Implement|edicts][$sellData = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -254,7 +254,7 @@ <<if $propCampaignBoost == 0>> <br>''Obligatory educational material:'' force residents to read curated educational material about the arcology. <<if $authority >= 1000>> - [[Implement|edicts][$propCampaignBoost = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000]] + [[Implement|edicts][$propCampaignBoost = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -266,7 +266,7 @@ <<if $tradeLegalAid == 0>> <br>''Legal aid for new businesses:'' Support new businesses in the arcology by helping them cover legal costs and issues. <<if $authority >= 1000>> - [[Implement|edicts][$tradeLegalAid = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000]] + [[Implement|edicts][$tradeLegalAid = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -275,7 +275,7 @@ <<if $taxTrade == 0>> <br>''Trade tariffs:'' all goods transitioning in your arcology will have to pay a transition fee. <<if $authority >= 1000>> - [[Implement|edicts][$taxTrade = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$taxTrade = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -287,7 +287,7 @@ <<if $slaveWatch == 0>> <br>''@@.lime;Slave mistreatment watch:@@'' slaves will be able access a special security service in case of mistreatment. <<if $authority >= 1000>> - [[Implement|edicts][$slaveWatch = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000]] + [[Implement|edicts][$slaveWatch = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -299,7 +299,7 @@ <<if $subsidyChurch == 0>> <br>''@@.lime;Religious activities subsidy:@@'' will provide economic support to religious activities following the official dogma. <<if $authority >= 1000>> - [[Implement|edicts][$subsidyChurch = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000]] + [[Implement|edicts][$subsidyChurch = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -312,7 +312,7 @@ <<if !$SFSupportLevel && $reqMenials > 5>> <br>''Equipment provision:'' $SF.Caps will provide the security HQ with advanced equipment. <<if $authority >= 1000>> - [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "policies"), $authority -= 1000, $SFSupportUpkeep += 1000, $reqMenials -= 5]] + [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "edicts"), $authority -= 1000, $SFSupportUpkeep += 1000, $reqMenials -= 5]] <<else>> <br>//Not enough Authority.// <</if>> @@ -320,7 +320,7 @@ <<elseif $SFSupportLevel && $SF.Squad.Firebase >= 4 && $reqMenials > 5>> <br>''Personnel training:'' $SF.Caps will provide the security HQ personnel with advanced training. <<if $authority >= 1000>> - [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "policies"), $authority -= 1000, $SFSupportUpkeep += 2000, $reqMenials -= 5]] + [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "edicts"), $authority -= 1000, $SFSupportUpkeep += 2000, $reqMenials -= 5]] <<else>> <br>//Not enough Authority.// <</if>> @@ -328,7 +328,7 @@ <<elseif $SFSupportLevel === 2 && $SF.Squad.Firebase >= 6 && $reqMenials > 5>> <br>''Troops detachment:'' $SF.Caps will provide troops to the security department. <<if $authority >= 1000>> - [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "policies"), $authority -= 1000, $SFSupportUpkeep += 3000, $reqMenials -= 5]] + [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "edicts"), $authority -= 1000, $SFSupportUpkeep += 3000, $reqMenials -= 5]] <<else>> <br>//Not enough Authority.// <</if>> @@ -336,7 +336,7 @@ <<elseif $SFSupportLevel === 3 && $SF.Squad.Firebase >= 6 && $reqMenials > 5>> <br>''Full Support:'' $SF.Caps will give the security department its full support. <<if $authority >= 1000>> - [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "policies"), $authority -= 1000, $SFSupportUpkeep += 3000, $reqMenials -= 5]] + [[Implement|edicts][$SFSupportLevel++, cashX(-5000, "edicts"), $authority -= 1000, $SFSupportUpkeep += 3000, $reqMenials -= 5]] <<else>> <br>//Not enough Authority.// <</if>> @@ -344,7 +344,7 @@ <<elseif $SFSupportLevel === 4 && $SF.Squad.Firebase === 10 && $reqMenials > 5>> <br>''Network assistance:'' $SF.Caps will assist the security department with installing a local version of their custom network. <<if $authority >= 1000>> - [[Implement|edicts][$SFSupportLevel++, cashX(-50000, "policies"), $authority -= 1000, $SFSupportUpkeep += 4000, $secHQUpkeep += 1000, $reqMenials -= 5]] + [[Implement|edicts][$SFSupportLevel++, cashX(-50000, "edicts"), $authority -= 1000, $SFSupportUpkeep += 4000, $secHQUpkeep += 1000, $reqMenials -= 5]] <<else>> <br>//Not enough Authority.// <</if>> @@ -357,7 +357,7 @@ <<if $limitImmigration == 0>> <br>''Immigration limits:'' institute limits to the amount of people the arcology will accept each week. <<if $authority >= 1000>> - [[Implement|edicts][$openBorders = 0, $limitImmigration = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$openBorders = 0, $limitImmigration = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -367,7 +367,7 @@ <<if $openBorders == 0>> <br>''Open borders:'' considerably lower requirements to become citizens. <<if $authority >= 1000>> - [[Implement|edicts][$openBorders = 1, $limitImmigration = 0, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$openBorders = 1, $limitImmigration = 0, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -378,7 +378,7 @@ <<if $weaponsLaw == 3>> <br>''Heavy weaponry forbidden:'' set the range of weapons allowed within the arcology to non-heavy, non-explosive. <<if $authority >= 1000>> - [[Implement|edicts][$weaponsLaw = 2, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep += 10]] + [[Implement|edicts][$weaponsLaw = 2, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -386,14 +386,14 @@ <<elseif $weaponsLaw == 2>> <br>''All weapons allowed:'' allow residents of the arcology to buy, sell and keep weaponry of any kind within the arcology. <<if $authority >= 1000>> - [[Implement|edicts][$weaponsLaw = 3, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep -= 10]] + [[Implement|edicts][$weaponsLaw = 3, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep -= 10]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will slightly increase prosperity and provide a small weekly amount of reputation, but rebellions will be very well armed.// <br>''Heavily restricted weaponry:'' set the range of weapons allowed within the arcology to non-automatic, non-high caliber. <<if $authority >= 1000>> - [[Implement|edicts][$weaponsLaw = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep += 10]] + [[Implement|edicts][$weaponsLaw = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -401,14 +401,14 @@ <<elseif $weaponsLaw == 1>> <br>''Heavy weaponry forbidden:'' set the range of weapons allowed within the arcology to non-heavy, non-explosive. <<if $authority >= 1000>> - [[Implement|edicts][$weaponsLaw = 2, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep -= 10]] + [[Implement|edicts][$weaponsLaw = 2, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep -= 10]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will slightly increase prosperity, but will cost a small amount of authority each week and will leave rebellions decently armed.// <br>''Forbid weapons inside the arcology:'' forbid residents to buy, sell and keep weaponry while within the arcology. <<if $authority >= 1000>> - [[Implement|edicts][$weaponsLaw = 0, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep += 10]] + [[Implement|edicts][$weaponsLaw = 0, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -416,7 +416,7 @@ <<elseif $weaponsLaw == 0>> <br>''Heavily restricted weaponry:'' set the range of weapons allowed within the arcology to non-automatic, non-high caliber. <<if $authority >= 1000>> - [[Implement|edicts][$weaponsLaw = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep -= 10]] + [[Implement|edicts][$weaponsLaw = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep -= 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -429,7 +429,7 @@ <<if $soldierWages == 0>> <br>''Average wages for soldiers:'' will set the wages paid to the soldiers of the arcology to an average amount. <<if $authority >= 1000>> - [[Implement|edicts][$soldierWages += 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$soldierWages += 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -437,14 +437,14 @@ <<elseif $soldierWages == 1>> <br>''Low wages for soldiers:'' will set the wages paid to the soldiers of the arcology to a low amount. <<if $authority >= 1000>> - [[Implement|edicts][$soldierWages -= 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$soldierWages -= 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will lower all units upkeep and push loyalty to low levels.// <br>''High wages for soldiers:'' will set the wages paid to the soldiers of the arcology to a high amount. <<if $authority >= 1000>> - [[Implement|edicts][$soldierWages += 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$soldierWages += 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -452,7 +452,7 @@ <<else>> <br>''Average wages for soldiers:'' will set the wages paid to the soldiers of the arcology to an average amount. <<if $authority >= 1000>> - [[Implement|edicts][$soldierWages -= 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$soldierWages -= 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -462,7 +462,7 @@ <<if $slavesOfficers == 0>> <br>''Slave Officers:'' allow your trusted slaves to lead the defense forces of the arcology. <<if $authority >= 1000>> - [[Implement|edicts][$slavesOfficers = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep += 10]] + [[Implement|edicts][$slavesOfficers = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -473,7 +473,7 @@ <<if $discountMercenaries == 0>> <br>''Mercenary subsidy:'' mercenaries willing to immigrate in your arcology will be offered a discount on rent. <<if $authority >= 1000>> - [[Implement|edicts][$discountMercenaries = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$discountMercenaries = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -484,7 +484,7 @@ <<if $militiaFounded == 0>> <br>''Found the militia:'' lay the groundwork for the formation of the arcology's citizens' army. <<if $authority >= 1000>> - [[Implement|edicts][$militiaFounded = 1, $recruitVolunteers = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$militiaFounded = 1, $recruitVolunteers = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -495,7 +495,7 @@ <<if $recruitVolunteers == 0>> <br>''Volunteers' militia:'' only volunteers will be accepted in the militia. <<if $authority >= 1000>> - [[Implement|edicts][$militarizedSociety = 0, $militaryService = 0, $conscription = 0, $recruitVolunteers = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$militarizedSociety = 0, $militaryService = 0, $conscription = 0, $recruitVolunteers = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -504,7 +504,7 @@ <<if $conscription == 0>> <br>''Conscription:'' every citizen is required to train in the militia and serve the arcology if the need arises. <<if $authority >= 4000>> - [[Implement|edicts][$militarizedSociety = 0, $militaryService = 0, $conscription = 1, $recruitVolunteers = 0, cashX(-5000, "policies"), $authority -= 4000]] + [[Implement|edicts][$militarizedSociety = 0, $militaryService = 0, $conscription = 1, $recruitVolunteers = 0, cashX(-5000, "edicts"), $authority -= 4000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -513,7 +513,7 @@ <<if $militaryService == 0>> <br>''Obligatory military service:'' every citizen is required to register and serve under the militia. <<if $authority >= 6000>> - [[Implement|edicts][$militarizedSociety = 0, $militaryService = 1, $conscription = 0, $recruitVolunteers = 0, cashX(-5000, "policies"), $authority -= 6000]] + [[Implement|edicts][$militarizedSociety = 0, $militaryService = 1, $conscription = 0, $recruitVolunteers = 0, cashX(-5000, "edicts"), $authority -= 6000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -522,7 +522,7 @@ <<if $militarizedSociety == 0>> <br>''Militarized Society:'' every adult citizen is required to train and participate in the defense of the arcology. <<if $authority >= 8000>> - [[Implement|edicts][$militarizedSociety = 1, $militaryService = 0, $conscription = 0, $recruitVolunteers = 0, cashX(-5000, "policies"), $authority -= 8000]] + [[Implement|edicts][$militarizedSociety = 1, $militaryService = 0, $conscription = 0, $recruitVolunteers = 0, cashX(-5000, "edicts"), $authority -= 8000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -532,7 +532,7 @@ <<if $militaryExemption == 0 && ($conscription == 1 || $militaryService == 1 || $militarizedSociety == 1)>> <br>''Military exemption:'' allow citizens to avoid military duty by paying a weekly fee. <<if $authority >= 1000>> - [[Implement|edicts][$militaryExemption = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$militaryExemption = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -543,7 +543,7 @@ <<if $lowerRquirements == 0>> <br>''@@.lime;Revised minimum requirements:@@'' will allow citizens outside the normally accepted range to join the militia. <<if $authority >= 1000>> - [[Implement|edicts][$lowerRquirements = 1, cashX(-5000, "policies"), $authority -= 1000, $militiaBaseDefense--, $militiaBaseHp--]] + [[Implement|edicts][$lowerRquirements = 1, cashX(-5000, "edicts"), $authority -= 1000, $militiaBaseDefense--, $militiaBaseHp--]] <<else>> <br>//Not enough Authority.// <</if>> @@ -555,7 +555,7 @@ <<if $noSubhumansInArmy == 0>> <br>''@@.lime;No subhumans in the militia:@@'' prevent subhumans from joining the militia. <<if $authority >= 1000>> - [[Implement|edicts][$noSubhumansInArmy = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$noSubhumansInArmy = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -567,7 +567,7 @@ <<if $pregExemption == 0>> <br>''@@.lime;Military exemption for pregnancies:@@'' pregnant citizens will be allowed, and encouraged, to avoid military service. <<if $authority >= 1000>> - [[Implement|edicts][$pregExemption = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$pregExemption = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -579,7 +579,7 @@ <<if $militiaSoldierPrivilege == 0 && $militiaFounded == 1>> <br>''Special militia privileges'' will allow citizens joining the militia to avoid paying rent. <<if $authority >= 1000>> - [[Implement|edicts][$militiaSoldierPrivilege = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$militiaSoldierPrivilege = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -589,7 +589,7 @@ <<if $slaveSoldierPrivilege == 0>> <br>''Special slaves privileges'' will allow slaves drafted into the army to be able to have material possessions. <<if $authority >= 1000>> - [[Implement|edicts][$slaveSoldierPrivilege = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsAuthUpkeep += 10]] + [[Implement|edicts][$slaveSoldierPrivilege = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsAuthUpkeep += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -599,7 +599,7 @@ <<if $mercSoldierPrivilege == 0 && $mercenaries > 0>> <br>''Special mercenary privileges'' will allow mercenaries under contract to claim part of the loot gained from battles. <<if $authority >= 1000>> - [[Implement|edicts][$mercSoldierPrivilege = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$mercSoldierPrivilege = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -610,7 +610,7 @@ <<if $martialSchool == 0>> <br>''@@.lime;Slave martial schools:@@'' specialized schools will be set up to train slaves in martial arts and bodyguarding. <<if $authority >= 1000>> - [[Implement|edicts][$martialSchool = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000, $slaveBaseMorale += 5]] + [[Implement|edicts][$martialSchool = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000, $slaveBaseMorale += 5]] <<else>> <br>//Not enough Authority.// <</if>> @@ -622,7 +622,7 @@ <<if $eliteOfficers == 0>> <br>''@@.lime;Elite officers:@@'' officers will be exclusively recruited from the elite of society. <<if $authority >= 1000>> - [[Implement|edicts][$eliteOfficers = 1, cashX(-5000, "policies"), $authority -= 1000, $militiaBaseMorale += 5, $slaveBaseMorale -= 5]] + [[Implement|edicts][$eliteOfficers = 1, cashX(-5000, "edicts"), $authority -= 1000, $militiaBaseMorale += 5, $slaveBaseMorale -= 5]] <<else>> <br>//Not enough Authority.// <</if>> @@ -634,7 +634,7 @@ <<if $liveTargets == 0>> <br>''@@.lime;Live targets drills:@@'' disobedient slaves will be used as live targets at shooting ranges. <<if $authority >= 1000>> - [[Implement|edicts][$liveTargets = 1, cashX(-5000, "policies"), $authority -= 1000]] + [[Implement|edicts][$liveTargets = 1, cashX(-5000, "edicts"), $authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> @@ -649,7 +649,7 @@ <<if $legionTradition == 0>> <br>''@@.lime;Legionaries traditions:@@'' Fund specialized training for your recruits to turn them into the professional of Roman tradition. <<if $authority >= 1000>> - [[Implement|edicts][$legionTradition = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000, $militiaBaseDefense += 2, $militiaBaseMorale += 5, $militiaBaseHp++]] + [[Implement|edicts][$legionTradition = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000, $militiaBaseDefense += 2, $militiaBaseMorale += 5, $militiaBaseHp++]] <<else>> <br>//Not enough Authority.// <</if>> @@ -661,7 +661,7 @@ <<if $pharaonTradition == 0>> <br>''@@.lime;Pharaonic traditions:@@'' Fund specialized training for your recruits to turn them into an army worthy of a pharaoh. <<if $authority >= 1000>> - [[Implement|edicts][$pharaonTradition = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000, $militiaBaseAttack += 2, $militiaBaseDefense += 2, $militiaBaseMorale += 10]] + [[Implement|edicts][$pharaonTradition = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000, $militiaBaseAttack += 2, $militiaBaseDefense += 2, $militiaBaseMorale += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -673,7 +673,7 @@ <<if $eagleWarriors == 0>> <br>''@@.lime;Eagle warriors traditions:@@'' Fund specialized training for your mercenaries to turn them into the elite units of Aztec tradition. <<if $authority >= 1000>> - [[Implement|edicts][$eagleWarriors = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000, $mercBaseAttack += 4, $mercBaseDefense -= 2, $mercBaseMorale += 10]] + [[Implement|edicts][$eagleWarriors = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000, $mercBaseAttack += 4, $mercBaseDefense -= 2, $mercBaseMorale += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -685,7 +685,7 @@ <<if $ronin == 0>> <br>''@@.lime;Ronin traditions:@@'' Fund specialized training for your mercenaries to turn them into the errant samurai of Japanese tradition. <<if $authority >= 1000>> - [[Implement|edicts][$ronin = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000, $mercBaseAttack += 2, $mercBaseDefense += 2, $mercBaseMorale += 10]] + [[Implement|edicts][$ronin = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000, $mercBaseAttack += 2, $mercBaseDefense += 2, $mercBaseMorale += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -697,7 +697,7 @@ <<if $mamluks == 0>> <br>''@@.lime;Mamluks traditions:@@'' Fund specialized training for your slaves to turn them into the mamluks slave soldiers of Arabian tradition. <<if $authority >= 1000>> - [[Implement|edicts][$mamluks = 1, cashX(-5000, "policies"), $authority -= 1000, $edictsUpkeep += 1000, $slaveBaseAttack += 2, $slaveBaseHp++, $slaveBaseMorale += 10]] + [[Implement|edicts][$mamluks = 1, cashX(-5000, "edicts"), $authority -= 1000, $edictsUpkeep += 1000, $slaveBaseAttack += 2, $slaveBaseHp++, $slaveBaseMorale += 10]] <<else>> <br>//Not enough Authority.// <</if>> @@ -709,7 +709,7 @@ <<if $sunTzu == 0>> <br>''@@.lime;Sun Tzu Teachings:@@'' Fund specialized training for your units and officers to conform your army to the teachings of the "Art of War". <<if $authority >= 1000>> - [[Implement|edicts][$sunTzu = 1, cashX(-5000, "policies"), $authority -= 1000, $militiaBaseAttack++, $militiaBaseDefense++, $mercBaseAttack++, $mercBaseDefense++, $slaveBaseAttack++, $slaveBaseDefense++, $militiaBaseMorale += 5, $mercBaseMorale += 5, $slaveBaseMorale += 5, $edictsUpkeep += 1000]] + [[Implement|edicts][$sunTzu = 1, cashX(-5000, "edicts"), $authority -= 1000, $militiaBaseAttack++, $militiaBaseDefense++, $mercBaseAttack++, $mercBaseDefense++, $slaveBaseAttack++, $slaveBaseDefense++, $militiaBaseMorale += 5, $mercBaseMorale += 5, $slaveBaseMorale += 5, $edictsUpkeep += 1000]] <<else>> <br>//Not enough Authority.// <</if>> diff --git a/src/SecExp/rebellionReport.tw b/src/SecExp/rebellionReport.tw index 6485649e69ad0cbe127ae985f57f6ac777d18187..12bc823aa686a1e4827953b64164af6895310e9b 100644 --- a/src/SecExp/rebellionReport.tw +++ b/src/SecExp/rebellionReport.tw @@ -97,7 +97,7 @@ $menialBioreactors -= Math.trunc(($menialBioreactors / $ASlaves) * $enemyLosses)>> <<if $battleResult == 3>> <<if $battleTurns <= 5>> - The fight was quick and one sided, our men easily stopped the disorganized revolt in a few well aimed assaults. + The fight was quick and one sided: our men easily stopped the disorganized revolt in a few well aimed assaults. <<elseif $battleTurns <= 7>> The fight was hard, but in the end our men stopped the disorganized revolt with several well aimed assaults. <<else>> @@ -105,7 +105,7 @@ <</if>> <<elseif $battleResult == -3>> <<if $battleTurns <= 5>> - The fight was quick and one sided, our men were easily crushed by the furious charge of the rebels. + The fight was quick and one sided: our men were easily crushed by the furious charge of the rebels. <<elseif $battleTurns <= 7>> The fight was hard and in the end the rebels proved too much to handle for our men. <<else>> @@ -114,7 +114,7 @@ <<elseif $battleResult == 2>> The fight was long and hard, but in the end our men managed to stop the revolt, though not without difficulty. <<elseif $battleResult == -2>> - The fight was long and hard. Our men in the end had to yield to the rebelling slaves, which were fortunately unable to capitalize on their victory. + The fight was long and hard. In the end, our men had to yield to the rebelling slaves, which were fortunately unable to capitalize on their victory. <<elseif $battleResult == -1>> You gave your troops the order to surrender; they obediently stand down. <</if>> @@ -561,7 +561,7 @@ <</if>> <<if $garrison.assistant == 0>> <<if random(1,100) <= (75 - ($fort.assistant * 25))>> - Unfortunately during the fighting a group of slaves infiltrated the facility housing $assistantName's mainframe and sabotaged it. Without its AI the arcology will be next to impossible to manage. + Unfortunately during the fighting a group of slaves infiltrated the facility housing $assistantName's mainframe and sabotaged it. Without its AI, the arcology will be next to impossible to manage. It will take @@.red;time and money to repair the damage.@@ <<set $garrison.assistantTime = $repairTime + random(1) - $fort.assistant, IncreasePCSkills('engineering', 0.1)>> <<run cashX(-2000, "war")>> @@ -573,10 +573,10 @@ <</if>> <<if $garrison.penthouse == 1 && $Bodyguard != 0>> <<setLocalPronouns $Bodyguard 2>> - The garrison assigned to the penthouse together with your loyal bodyguard stopped all assaults against your penthouse with ease. + The garrison assigned to the penthouse together with your loyal Bodyguard stopped all assaults against your penthouse with ease. <<elseif $Bodyguard != 0>> <<if random(1,100) <= 75>> - During the fighting a group of slaves assaulted the penthouse. Your bodyguard, $Bodyguard.slaveName, stood strong against the furious attack. + During the fighting a group of slaves assaulted the penthouse. Your Bodyguard, $Bodyguard.slaveName, stood strong against the furious attack. <<set _woundChance = 0>> <<if $PC.career == "mercenary" || $PC.career == "gang">> <<set _woundChance -= 5>> @@ -601,7 +601,7 @@ <<if $PC.preg >= 30>> <<set _woundChance += random(1,5)>> <</if>> - <<if $PC.balls == 2>> + <<if $PC.balls >= 2>> <<set _woundChance += random(1,5)>> <</if>> <<if $PC.ballsImplant >= 2>> @@ -658,7 +658,7 @@ <</if>> <<set _woundChance *= random(2,4)>> <<if random(1,100) <= _woundChance>> - Your concubine was unfortunately caught in the crossfire and + Your Concubine was unfortunately caught in the crossfire and <<set $woundType = random(1,10)>> <<if $woundType == 1>> a splinter pierced $his throat, severing $his vocal cords. @@ -721,7 +721,7 @@ <</if>> <<set _woundChance *= random(2,4)>> <<if random(1,100) <= _woundChance>> - During one of the assaults your bodyguard was hit. + During one of the assaults your Bodyguard was hit. <<set $woundType = random(1,10)>> <<if $woundType == 1>> A splinter pierced _his2 throat, severing _his2 vocal cords. @@ -774,7 +774,7 @@ <<if $PC.preg >= 30>> <<set _woundChance += random(1,5)>> <</if>> - <<if $PC.balls == 2>> + <<if $PC.balls >= 2>> <<set _woundChance += random(1,5)>> <</if>> <<if $PC.ballsImplant >= 2>> @@ -832,7 +832,7 @@ <</if>> <<set _woundChance *= random(2,4)>> <<if random(1,100) <= _woundChance>> - Your concubine was unfortunately caught in the crossfire and + Your Concubine was unfortunately caught in the crossfire and <<set $woundType = random(1,10)>> <<if $woundType == 1>> a splinter pierced $his throat, severing $his vocal cords. @@ -886,7 +886,7 @@ <<if $PC.preg >= 30>> <<set _woundChance += random(1,5)>> <</if>> - <<if $PC.balls == 2>> + <<if $PC.balls >= 2>> <<set _woundChance += random(1,5)>> <</if>> <<if $PC.ballsImplant >= 2>> @@ -944,7 +944,7 @@ <</if>> <<set _woundChance *= random(2,4)>> <<if random(1,100) <= _woundChance>> - Your concubine was unfortunately caught in the crossfire and + Your Concubine was unfortunately caught in the crossfire and <<set $woundType = random(1,10)>> <<if $woundType == 1>> a splinter pierced $his throat, severing $his vocal cords. diff --git a/src/SecExp/secBarracks.tw b/src/SecExp/secBarracks.tw index 936f8a64dcc8d7fd879422ec370f1fc0b27f20b4..991df65da21d14599b5d3b54a2940ecd699bc46b 100644 --- a/src/SecExp/secBarracks.tw +++ b/src/SecExp/secBarracks.tw @@ -29,7 +29,7 @@ While this a sore sight for many citizens of $arcologies[0].name, the barracks s <<elseif $secBarracksUpgrades.luxury == 3>> The barracks have been made more comfortable by installing high tech furniture and advanced kitchen facilities. It also provides free access to any digital media. <<else>> - The barracks have been made more comfortable by installing high tech furniture and advanced kitchen facilities. It also provides free access to any digital media. A small limited access brothel has been added to the structure. + The barracks have been made more comfortable by installing high tech furniture and advanced kitchen facilities. It also provides free access to any digital media. A small limited-access brothel has been added to the structure. <</if>> <<if $secBarracksUpgrades.training == 0>> The building lacks the space and the equipment to train your units. diff --git a/src/SecExp/secExpSmilingMan.tw b/src/SecExp/secExpSmilingMan.tw index cbf3ecafb7456f1a9a3133888fdf603eace3c97a..bc9a7c5025f688030cf75a642b55a4c28784e634 100644 --- a/src/SecExp/secExpSmilingMan.tw +++ b/src/SecExp/secExpSmilingMan.tw @@ -312,9 +312,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -381,9 +381,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -400,9 +400,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/SpecialForce/SpecialForce.js b/src/SpecialForce/SpecialForce.js index 2bac10de259e0df00d4bd5144f5fb8023c76e9d1..a305ab7a9be2e20cb5476d8450a5986ff7e51fa8 100644 --- a/src/SpecialForce/SpecialForce.js +++ b/src/SpecialForce/SpecialForce.js @@ -762,7 +762,7 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100, text = `\n`) text += `\nThe garage has an additional machine room installed, but this one has a special purpose; it is a private research facility for the creation, improvement, and installation of newer, better, and more portable incubators. These incubators are cutting edge by global standards, pioneering the complex science of growing existing babies to become bigger, stronger, smarter, more beautiful, and of course, more fertile. All of this special machinery has a purpose, of course; the next generation of skilled mechanics and crewmen is fast approaching.\n`; } if (textDisplay === 65 && V.SF.FS[FS_OPTIONS[i]].lv >= textDisplay) { - text += `\nEvery main battle tank you have features a much broader and taller turret than before, and even more strangely, each turret is egg-shaped. This peculiar shape accommodates an extreme functionality; the multi-pregnancy cockpit - in which tankers not only control their vehicles, but also conceive, deliver, and incubate their own babies. The latest in compact conventional incubators line the interior walls of the turret, and through these, your tanker crews are known to make and sustain all of their newest children throughout their careers in your armour units. It is well known that your tank crews rarely spend much time away from their vehicles for this very reason, and their offspring often choose to become tankers themselves.\n`; + text += `\nEvery main battle tank you have features a much broader and taller turret than before, and even more strangely, each turret is egg-shaped. This peculiar shape accommodates an extreme functionality; the multi-pregnancy cockpit - in which tankers not only control their vehicles, but also conceive, deliver, and incubate their own babies. The latest in compact conventional incubators line the interior walls of the turret, and through these, your tanker crews are known to make and sustain all of their newest children throughout their careers in your armor units. It is well known that your tank crews rarely spend much time away from their vehicles for this very reason, and their offspring often choose to become tankers themselves.\n`; } if (textDisplay === 70 && V.SF.FS[FS_OPTIONS[i]].lv >= textDisplay) { text += `\nThe hangar is a cavernous place, and when takeoffs and landings are not in progress there are many open spaces for gangs of playing children to run around and play, as well as lots of places to simply stow baby carriages out of the way of important airman crews. At any given time, these open spaces are in heavy use by the unattended children of the airmen and airwomen who are busy at work here. The longest wall of the hangar is also host to a massive and beautiful mural altogether depicting all of the newborn children fathered or mothered by the Firebase's pilots and airmen thus far. While artful, this mural also holds the promise that through this multitude of progeny, the hangar will always have a rich supply of dedicated pilots and service personnel for the foreseeable future.\n`; @@ -2816,7 +2816,7 @@ App.SF.UpgradeCost = function(cost, unit) { S = V.SF.Squad; let value = 0; value = cost * T.Env * (1.15 + (V.SF.Size / 10)) * (1.15 + (unit / 100)); - if ([S.Sub, S.AircraftCarrier, S.MissileSilo, S.GiantRobot, S.Satellite.lv, S.GunS, S.SpacePlane, S.Drones].includes(unit)) { + if ([S.AircraftCarrier, S.Drones, S.GiantRobot, S.GunS, S.MissileSilo, S.Satellite.lv, S.SpacePlane, S.Sub].includes(unit)) { value *= V.HackingSkillMultiplier; } return Math.ceil(value); @@ -3089,7 +3089,6 @@ App.SF.UnitText = function(input) { let recom1 = `has been recommissioned from the old world for ${V.SF.Lower}. It`; let jets = `Formerly mothballed strike jets`, - loc2 = ``, radar = ``, AAG = ``; let prop = ``, @@ -3098,21 +3097,6 @@ App.SF.UnitText = function(input) { power1 = ``, scramble1 = ``; - if (V.week % 6 === 0) { - let loc2 = `is` - if (input !== 'HAT') { - loc2 += ` moored to`; - } else { - loc2 += ` parked on`; - } - loc2 += ` the pier in the Naval Yard`; - if (input === 'HAT') { - loc2 += `, ready to ferry ${tons} tons of soldiers and vehicles`; - } - } else { - const loc2 = `is patrolling the waters near ${V.arcologies[0].name}`; - } - let recom = `has been recommissioned from the old world, and`; let reactor0 = `Because diesel engines provide power and breathing oxygen is kept in pressurized canisters, the sub must frequently surface.`; let reactor1 = ``, @@ -3124,7 +3108,7 @@ App.SF.UnitText = function(input) { let control = ``, missiles = ``; - let recom2 = `; has been recommissioned for use by ${V.SF.Lower}. It`; + let recom2 = `has been recommissioned for use by ${V.SF.Lower}. It `; let tons = `200`, skirt = ``, guns = ``, @@ -3137,6 +3121,21 @@ App.SF.UnitText = function(input) { HATframe = ``, loadout = ``; + let loc2 = ``; + if (V.week % 6 === 0) { + loc2 += `is` + if (input !== 'HAT') { + loc2 += ` moored to`; + } else { + loc2 += ` parked on`; + } + loc2 += ` the pier in the Naval Yard`; + if (input === 'HAT') { + loc2 += `, ready to ferry ${tons} tons of soldiers and vehicles`; + } + } else { + loc2 += `is patrolling the waters near ${V.arcologies[0].name}`; + } switch (input) { case 'firebase': if (S.Firebase >= 0) { @@ -3767,7 +3766,7 @@ App.SF.UnitText = function(input) { const text17 = `<br> ''Amphibious Transport:''`; if (S.HAT >= 2) { skirt = `The skirt has been upgraded to increase durability and improve cushion when traveling over uneven terrain and waves.`; - recom2 = `;`; + recom2 = ``; } if (S.HAT >= 3) { guns = `A minigun`; @@ -3798,7 +3797,7 @@ App.SF.UnitText = function(input) { if (S.HAT >= 10) { loadout = `An experimental loadout sacrifices all carrying capacity to instead act as a floating gun platform by mounting several rotary autocannons the deck, should the need arise.`; } - return `${text17} An air cushion transport vehicle, or hovercraft ${recom2} ${loc2}. ${guns} ${guns2} ${fans} ${turbines} ${speed} ${skirt} ${armor10} ${ramps} ${HATframe} ${loadout}`; + return `${text17} An air cushion transport vehicle, or hovercraft; ${recom2}${loc2}. ${guns} ${guns2} ${fans} ${turbines} ${speed} ${skirt} ${armor10} ${ramps} ${HATframe} ${loadout}`; } break; } diff --git a/src/SpecialForce/TrickShotNight.tw b/src/SpecialForce/TrickShotNight.tw index e841286d46b12c36120ec904347871fc62b73796..c857faa4afc2689c8fa82bcee6563291100b5eb1 100644 --- a/src/SpecialForce/TrickShotNight.tw +++ b/src/SpecialForce/TrickShotNight.tw @@ -106,9 +106,9 @@ Despite your direct elevator, interaction with the majority of your security for /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -129,9 +129,9 @@ Despite your direct elevator, interaction with the majority of your security for /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/art/artJS.js b/src/art/artJS.js index 4f23c9685416bc224a52fd41ecc6df8df8e0be26..e28379ddb02a19e245673ad4c276aa7f6f481f1e 100644 --- a/src/art/artJS.js +++ b/src/art/artJS.js @@ -1,21 +1,15 @@ /* eslint-disable no-console */ /* eslint-disable no-undef */ -/* -Call as <<= SlaveArt(...)>> or <<print SlaveArt(...)>> -Displays slave images. Currently passage-based. -artSlave: Slave. -artSize: Image size/center. - 3: Large, right. Example: long slave description. - 2: Medium, right. Example: random events. - 1: Small, left. Example: lists. - 0: Tiny, left. Example: facilities -UIDisplay (optional, only used by legacy art): icon UI Display for vector art, 1 for on. -*/ /** - * @param {App.Entity.SlaveState} artSlave - * @param {number} artSize - * @param {number} UIDisplay - * @returns {object} // TODO: I think + * Call as <<= SlaveArt(...)>> or <<print SlaveArt(...)>>Displays slave images. Currently passage-based. + * @param {App.Entity.SlaveState} artSlave Slave + * @param {number} artSize Image size/center: + * * 3: Large, right. Example: long slave description. + * * 2: Medium, right. Example: random events. + * * 1: Small, left. Example: lists. + * * 0: Tiny, left. Example: facilities + * @param {number} [UIDisplay] (optional, only used by legacy art): icon UI Display for vector art, 1 for on + * @returns {string} */ window.SlaveArt = function(artSlave, artSize, UIDisplay) { const imageChoice = State.variables.imageChoice; @@ -282,1541 +276,1541 @@ window.skinColorCatcher = function(artSlave) { colorSlave.lipsColor = "#e0d050"; } else { /* natural colors */ switch (artSlave.race) { - case "white": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#F4EAF0"; - colorSlave.areolaColor = "#FCCCDC"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#F4EAF0"; - colorSlave.areolaColor = "#FCCCDC"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#F5E1DF"; - colorSlave.areolaColor = "#EFBFCA"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#F5E1DF"; - colorSlave.areolaColor = "#EFBFCA"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#F5D5C9"; - colorSlave.areolaColor = "#E2B4B9"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#F5D5C9"; - colorSlave.areolaColor = "#E2B4B9"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#F4C9AA"; - colorSlave.areolaColor = "#F19795"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#E1B585"; - colorSlave.areolaColor = "#C39696"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#E1B585"; - colorSlave.areolaColor = "#C39696"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#D58E5F"; - colorSlave.areolaColor = "#B17777"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#D58E5F"; - colorSlave.areolaColor = "#B17777"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#A2805C"; - colorSlave.areolaColor = "#8E6454"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#825633"; - colorSlave.areolaColor = "#734B2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#784F2F"; - colorSlave.areolaColor = "#583E2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#784F2F"; - colorSlave.areolaColor = "#583E2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - colorSlave.skinColor = "#65422C"; - colorSlave.areolaColor = "#4A3A33"; - colorSlave.labiaColor = "#F977A3"; - break; - case "black": - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#D58E5F"; - colorSlave.areolaColor = "#B17777"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - } - break; + case "white": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#F4EAF0"; + colorSlave.areolaColor = "#FCCCDC"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#F4EAF0"; + colorSlave.areolaColor = "#FCCCDC"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#F5E1DF"; + colorSlave.areolaColor = "#EFBFCA"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#F5E1DF"; + colorSlave.areolaColor = "#EFBFCA"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#F5D5C9"; + colorSlave.areolaColor = "#E2B4B9"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#F5D5C9"; + colorSlave.areolaColor = "#E2B4B9"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#F4C9AA"; + colorSlave.areolaColor = "#F19795"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#E1B585"; + colorSlave.areolaColor = "#C39696"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#E1B585"; + colorSlave.areolaColor = "#C39696"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#D58E5F"; + colorSlave.areolaColor = "#B17777"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#D58E5F"; + colorSlave.areolaColor = "#B17777"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#A2805C"; + colorSlave.areolaColor = "#8E6454"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#825633"; + colorSlave.areolaColor = "#734B2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#784F2F"; + colorSlave.areolaColor = "#583E2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#784F2F"; + colorSlave.areolaColor = "#583E2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + colorSlave.skinColor = "#65422C"; + colorSlave.areolaColor = "#4A3A33"; + colorSlave.labiaColor = "#F977A3"; + break; + case "black": + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#D58E5F"; + colorSlave.areolaColor = "#B17777"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + } + break; - case "black": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FEE4CA"; - colorSlave.areolaColor = "#E0B3A2"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FEE4CA"; - colorSlave.areolaColor = "#E0B3A2"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#E3C5A7"; - colorSlave.areolaColor = "#EFBDC9"; - colorSlave.labiaColor = "#CC9B88"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#E3C5A7"; - colorSlave.areolaColor = "#CC9B88"; - colorSlave.labiaColor = "#CC9B88"; - break; - case "very fair": - colorSlave.skinColor = "#DEB892"; - colorSlave.areolaColor = "#AB806F"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#DEB892"; - colorSlave.areolaColor = "#AB806F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#D59D73"; - colorSlave.areolaColor = "#8D6859"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#AC7C4A"; - colorSlave.areolaColor = "#7C594B"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#AC7C4A"; - colorSlave.areolaColor = "#7C594B"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#985C34"; - colorSlave.areolaColor = "#764B3A"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#985C34"; - colorSlave.areolaColor = "#764B3A"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#745C42"; - colorSlave.areolaColor = "#63463B"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#65422C"; - colorSlave.areolaColor = "#4B3121"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#5A3C24"; - colorSlave.areolaColor = "#493326"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#5A3C24"; - colorSlave.areolaColor = "#493326"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#46362C"; - colorSlave.labiaColor = "#F977A3"; - break; - case "black": - colorSlave.skinColor = "#583D3D"; - colorSlave.areolaColor = "#3B3028"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#4A3A33"; - colorSlave.areolaColor = "#332B27"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#312926"; - colorSlave.areolaColor = "#181616"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#985C34"; - colorSlave.areolaColor = "#764B3A"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "black": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FEE4CA"; + colorSlave.areolaColor = "#E0B3A2"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FEE4CA"; + colorSlave.areolaColor = "#E0B3A2"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#E3C5A7"; + colorSlave.areolaColor = "#EFBDC9"; + colorSlave.labiaColor = "#CC9B88"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#E3C5A7"; + colorSlave.areolaColor = "#CC9B88"; + colorSlave.labiaColor = "#CC9B88"; + break; + case "very fair": + colorSlave.skinColor = "#DEB892"; + colorSlave.areolaColor = "#AB806F"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#DEB892"; + colorSlave.areolaColor = "#AB806F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#D59D73"; + colorSlave.areolaColor = "#8D6859"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#AC7C4A"; + colorSlave.areolaColor = "#7C594B"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#AC7C4A"; + colorSlave.areolaColor = "#7C594B"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#985C34"; + colorSlave.areolaColor = "#764B3A"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#985C34"; + colorSlave.areolaColor = "#764B3A"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#745C42"; + colorSlave.areolaColor = "#63463B"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#65422C"; + colorSlave.areolaColor = "#4B3121"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#5A3C24"; + colorSlave.areolaColor = "#493326"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#5A3C24"; + colorSlave.areolaColor = "#493326"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#46362C"; + colorSlave.labiaColor = "#F977A3"; + break; + case "black": + colorSlave.skinColor = "#583D3D"; + colorSlave.areolaColor = "#3B3028"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#4A3A33"; + colorSlave.areolaColor = "#332B27"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#312926"; + colorSlave.areolaColor = "#181616"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#985C34"; + colorSlave.areolaColor = "#764B3A"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "latina": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FEDECE"; - colorSlave.areolaColor = "#E3BBAB"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FEDECE"; - colorSlave.areolaColor = "#E3BBAB"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#E6C2B0"; - colorSlave.areolaColor = "#D1A695"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#E6C2B0"; - colorSlave.areolaColor = "#D1A695"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#E1B59F"; - colorSlave.areolaColor = "#B48D7E"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#E1B59F"; - colorSlave.areolaColor = "#B48D7E"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#DAA782"; - colorSlave.areolaColor = "#9E7666"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#B27554"; - colorSlave.areolaColor = "#92684C"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#B27554"; - colorSlave.areolaColor = "#92684C"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#8B644F"; - colorSlave.areolaColor = "#7B5749"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#775031"; - colorSlave.areolaColor = "#69452F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#774A31"; - colorSlave.areolaColor = "#614330"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#774A31"; - colorSlave.areolaColor = "#614330"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - colorSlave.skinColor = "#74523E"; - colorSlave.areolaColor = "#573F30"; - colorSlave.labiaColor = "#F977A3"; - break; - case "black": - colorSlave.skinColor = "#6B4B4B"; - colorSlave.areolaColor = "#473426"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#634F45"; - colorSlave.areolaColor = "#4D3A2E"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#634F45"; - colorSlave.areolaColor = "#4D3A2E"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "latina": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FEDECE"; + colorSlave.areolaColor = "#E3BBAB"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FEDECE"; + colorSlave.areolaColor = "#E3BBAB"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#E6C2B0"; + colorSlave.areolaColor = "#D1A695"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#E6C2B0"; + colorSlave.areolaColor = "#D1A695"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#E1B59F"; + colorSlave.areolaColor = "#B48D7E"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#E1B59F"; + colorSlave.areolaColor = "#B48D7E"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#DAA782"; + colorSlave.areolaColor = "#9E7666"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#B27554"; + colorSlave.areolaColor = "#92684C"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#B27554"; + colorSlave.areolaColor = "#92684C"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#8B644F"; + colorSlave.areolaColor = "#7B5749"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#775031"; + colorSlave.areolaColor = "#69452F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#774A31"; + colorSlave.areolaColor = "#614330"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#774A31"; + colorSlave.areolaColor = "#614330"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + colorSlave.skinColor = "#74523E"; + colorSlave.areolaColor = "#573F30"; + colorSlave.labiaColor = "#F977A3"; + break; + case "black": + colorSlave.skinColor = "#6B4B4B"; + colorSlave.areolaColor = "#473426"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#634F45"; + colorSlave.areolaColor = "#4D3A2E"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#634F45"; + colorSlave.areolaColor = "#4D3A2E"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "asian": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FFF8EE"; - colorSlave.areolaColor = "#F7DBD0"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FFF8EE"; - colorSlave.areolaColor = "#F7DBD0"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#F5E7DC"; - colorSlave.areolaColor = "#EABFB3"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#F5E7DC"; - colorSlave.areolaColor = "#EABFB3"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#F5D4B5"; - colorSlave.areolaColor = "#CB988B"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#F5D4B5"; - colorSlave.areolaColor = "#CB988B"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#F4D1A3"; - colorSlave.areolaColor = "#BA8E83"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#CFB48D"; - colorSlave.areolaColor = "#AC8074"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#CFB48D"; - colorSlave.areolaColor = "#AC8074"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#C38C4D"; - colorSlave.areolaColor = "#A67A6F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#C38C4D"; - colorSlave.areolaColor = "#A67A6F"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#9A774A"; - colorSlave.areolaColor = "#855E4E"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#855834"; - colorSlave.areolaColor = "#734B2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#83522B"; - colorSlave.areolaColor = "#68442A"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#83522B"; - colorSlave.areolaColor = "#68442A"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#724826"; - colorSlave.areolaColor = "#5C3D26"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#C38C4D"; - colorSlave.areolaColor = "#A67A6F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "asian": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FFF8EE"; + colorSlave.areolaColor = "#F7DBD0"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FFF8EE"; + colorSlave.areolaColor = "#F7DBD0"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#F5E7DC"; + colorSlave.areolaColor = "#EABFB3"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#F5E7DC"; + colorSlave.areolaColor = "#EABFB3"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#F5D4B5"; + colorSlave.areolaColor = "#CB988B"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#F5D4B5"; + colorSlave.areolaColor = "#CB988B"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#F4D1A3"; + colorSlave.areolaColor = "#BA8E83"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#CFB48D"; + colorSlave.areolaColor = "#AC8074"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#CFB48D"; + colorSlave.areolaColor = "#AC8074"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#C38C4D"; + colorSlave.areolaColor = "#A67A6F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#C38C4D"; + colorSlave.areolaColor = "#A67A6F"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#9A774A"; + colorSlave.areolaColor = "#855E4E"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#855834"; + colorSlave.areolaColor = "#734B2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#83522B"; + colorSlave.areolaColor = "#68442A"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#83522B"; + colorSlave.areolaColor = "#68442A"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#724826"; + colorSlave.areolaColor = "#5C3D26"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#C38C4D"; + colorSlave.areolaColor = "#A67A6F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "middle eastern": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#E8CFCF"; - colorSlave.areolaColor = "#DCADBC"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#E8CFCF"; - colorSlave.areolaColor = "#DCADBC"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#FBCCC6"; - colorSlave.areolaColor = "#E79E8B"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#FBCCC6"; - colorSlave.areolaColor = "#E79E8B"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#EAAB92"; - colorSlave.areolaColor = "#D27B64"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#EAAB92"; - colorSlave.areolaColor = "#D27B64"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#EDA571"; - colorSlave.areolaColor = "#B16854"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#CC8D53"; - colorSlave.areolaColor = "#A7624F"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#CC8D53"; - colorSlave.areolaColor = "#A7624F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#CA7136"; - colorSlave.areolaColor = "#9B5959"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#CA7136"; - colorSlave.areolaColor = "#9B5959"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#84684A"; - colorSlave.areolaColor = "#735143"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#684528"; - colorSlave.areolaColor = "#563826"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#6E4730"; - colorSlave.areolaColor = "#604534"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#6E4730"; - colorSlave.areolaColor = "#604534"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#604534 "; - colorSlave.areolaColor = "#514039"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#CA7136"; - colorSlave.areolaColor = "#9B5959"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "middle eastern": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#E8CFCF"; + colorSlave.areolaColor = "#DCADBC"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#E8CFCF"; + colorSlave.areolaColor = "#DCADBC"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#FBCCC6"; + colorSlave.areolaColor = "#E79E8B"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#FBCCC6"; + colorSlave.areolaColor = "#E79E8B"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#EAAB92"; + colorSlave.areolaColor = "#D27B64"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#EAAB92"; + colorSlave.areolaColor = "#D27B64"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#EDA571"; + colorSlave.areolaColor = "#B16854"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#CC8D53"; + colorSlave.areolaColor = "#A7624F"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#CC8D53"; + colorSlave.areolaColor = "#A7624F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#CA7136"; + colorSlave.areolaColor = "#9B5959"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#CA7136"; + colorSlave.areolaColor = "#9B5959"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#84684A"; + colorSlave.areolaColor = "#735143"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#684528"; + colorSlave.areolaColor = "#563826"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#6E4730"; + colorSlave.areolaColor = "#604534"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#6E4730"; + colorSlave.areolaColor = "#604534"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#604534 "; + colorSlave.areolaColor = "#514039"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#CA7136"; + colorSlave.areolaColor = "#9B5959"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "amerindian": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FDE4BF"; - colorSlave.areolaColor = "#F0BEAA"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FDE4BF"; - colorSlave.areolaColor = "#F0BEAA"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#F5E7DC"; - colorSlave.areolaColor = "#CDA499"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#F5E7DC"; - colorSlave.areolaColor = "#CDA499"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#F5D4B5"; - colorSlave.areolaColor = "#CB988B"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#F5D4B5"; - colorSlave.areolaColor = "#CB988B"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#F4D1A3"; - colorSlave.areolaColor = "#BA8E83"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#CFB48D"; - colorSlave.areolaColor = "#AC8074"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#CFB48D"; - colorSlave.areolaColor = "#AC8074"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#C38C4D"; - colorSlave.areolaColor = "#A67A6F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#C38C4D"; - colorSlave.areolaColor = "#A67A6F"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#9A774A"; - colorSlave.areolaColor = "#855E4E"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#855834"; - colorSlave.areolaColor = "#734B2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#83522B"; - colorSlave.areolaColor = "#68442A"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#83522B"; - colorSlave.areolaColor = "#68442A"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#724826"; - colorSlave.areolaColor = "#5C3D26"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#C38C4D"; - colorSlave.areolaColor = "#A67A6F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "amerindian": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FDE4BF"; + colorSlave.areolaColor = "#F0BEAA"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FDE4BF"; + colorSlave.areolaColor = "#F0BEAA"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#F5E7DC"; + colorSlave.areolaColor = "#CDA499"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#F5E7DC"; + colorSlave.areolaColor = "#CDA499"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#F5D4B5"; + colorSlave.areolaColor = "#CB988B"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#F5D4B5"; + colorSlave.areolaColor = "#CB988B"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#F4D1A3"; + colorSlave.areolaColor = "#BA8E83"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#CFB48D"; + colorSlave.areolaColor = "#AC8074"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#CFB48D"; + colorSlave.areolaColor = "#AC8074"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#C38C4D"; + colorSlave.areolaColor = "#A67A6F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#C38C4D"; + colorSlave.areolaColor = "#A67A6F"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#9A774A"; + colorSlave.areolaColor = "#855E4E"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#855834"; + colorSlave.areolaColor = "#734B2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#83522B"; + colorSlave.areolaColor = "#68442A"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#83522B"; + colorSlave.areolaColor = "#68442A"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#724826"; + colorSlave.areolaColor = "#5C3D26"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#C38C4D"; + colorSlave.areolaColor = "#A67A6F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "southern european": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#EBDBE4"; - colorSlave.areolaColor = "#FFE4E0"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#EBDBE4"; - colorSlave.areolaColor = "#FFE4E0"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#F0D0CC"; - colorSlave.areolaColor = "#EAACBA"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#F0D0CC"; - colorSlave.areolaColor = "#EAACBA"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#F1C6B5"; - colorSlave.areolaColor = "#DCA2A9"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#F1C6B5"; - colorSlave.areolaColor = "#DCA2A9"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#F2BC94"; - colorSlave.areolaColor = "#EE8280"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#DCA972"; - colorSlave.areolaColor = "#BF7577"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#DCA972"; - colorSlave.areolaColor = "#BF7577"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#D0814C"; - colorSlave.areolaColor = "#A96767"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#D0814C"; - colorSlave.areolaColor = "#A96767"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#937453"; - colorSlave.areolaColor = "#7F5A4B"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#7F5431"; - colorSlave.areolaColor = "#734B2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#784F2F"; - colorSlave.areolaColor = "#583E2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#784F2F"; - colorSlave.areolaColor = "#583E2F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#65422C"; - colorSlave.areolaColor = "#4A3A33"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#D0814C"; - colorSlave.areolaColor = "#A96767"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "southern european": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#EBDBE4"; + colorSlave.areolaColor = "#FFE4E0"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#EBDBE4"; + colorSlave.areolaColor = "#FFE4E0"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#F0D0CC"; + colorSlave.areolaColor = "#EAACBA"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#F0D0CC"; + colorSlave.areolaColor = "#EAACBA"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#F1C6B5"; + colorSlave.areolaColor = "#DCA2A9"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#F1C6B5"; + colorSlave.areolaColor = "#DCA2A9"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#F2BC94"; + colorSlave.areolaColor = "#EE8280"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#DCA972"; + colorSlave.areolaColor = "#BF7577"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#DCA972"; + colorSlave.areolaColor = "#BF7577"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#D0814C"; + colorSlave.areolaColor = "#A96767"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#D0814C"; + colorSlave.areolaColor = "#A96767"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#937453"; + colorSlave.areolaColor = "#7F5A4B"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#7F5431"; + colorSlave.areolaColor = "#734B2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#784F2F"; + colorSlave.areolaColor = "#583E2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#784F2F"; + colorSlave.areolaColor = "#583E2F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#65422C"; + colorSlave.areolaColor = "#4A3A33"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#D0814C"; + colorSlave.areolaColor = "#A96767"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "semitic": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#E8CFCF"; - colorSlave.areolaColor = "#DCADBC"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#E8CFCF"; - colorSlave.areolaColor = "#DCADBC"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#FBCCC6"; - colorSlave.areolaColor = "#E79E8B"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#FBCCC6"; - colorSlave.areolaColor = "#E79E8B"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#EAAB92"; - colorSlave.areolaColor = "#D27B64"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#EAAB92"; - colorSlave.areolaColor = "#D27B64"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#EDA571"; - colorSlave.areolaColor = "#B16854"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#CC8D53"; - colorSlave.areolaColor = "#A7624F"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#CC8D53"; - colorSlave.areolaColor = "#A7624F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#CA7136"; - colorSlave.areolaColor = "#9B5959"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#CA7136"; - colorSlave.areolaColor = "#9B5959"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#84684A"; - colorSlave.areolaColor = "#735143"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#684528"; - colorSlave.areolaColor = "#563826"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#6E4730"; - colorSlave.areolaColor = "#604534"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#6E4730"; - colorSlave.areolaColor = "#604534"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#604534 "; - colorSlave.areolaColor = "#514039"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#CA7136"; - colorSlave.areolaColor = "#9B5959"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "semitic": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#E8CFCF"; + colorSlave.areolaColor = "#DCADBC"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#E8CFCF"; + colorSlave.areolaColor = "#DCADBC"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#FBCCC6"; + colorSlave.areolaColor = "#E79E8B"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#FBCCC6"; + colorSlave.areolaColor = "#E79E8B"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#EAAB92"; + colorSlave.areolaColor = "#D27B64"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#EAAB92"; + colorSlave.areolaColor = "#D27B64"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#EDA571"; + colorSlave.areolaColor = "#B16854"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#CC8D53"; + colorSlave.areolaColor = "#A7624F"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#CC8D53"; + colorSlave.areolaColor = "#A7624F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#CA7136"; + colorSlave.areolaColor = "#9B5959"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#CA7136"; + colorSlave.areolaColor = "#9B5959"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#84684A"; + colorSlave.areolaColor = "#735143"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#684528"; + colorSlave.areolaColor = "#563826"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#6E4730"; + colorSlave.areolaColor = "#604534"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#6E4730"; + colorSlave.areolaColor = "#604534"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#604534 "; + colorSlave.areolaColor = "#514039"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#CA7136"; + colorSlave.areolaColor = "#9B5959"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "malay": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FBD1B2"; - colorSlave.areolaColor = "#F39E7D"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FBD1B2"; - colorSlave.areolaColor = "#F39E7D"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#E8B892"; - colorSlave.areolaColor = "#E2856C"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#E8B892"; - colorSlave.areolaColor = "#E2856C"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#EA9870"; - colorSlave.areolaColor = "#BE6C56"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#EA9870"; - colorSlave.areolaColor = "#BE6C56"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#EA9760"; - colorSlave.areolaColor = "#AB6755"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#BA855E"; - colorSlave.areolaColor = "#976051"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#BA855E"; - colorSlave.areolaColor = "#976051"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#A46138"; - colorSlave.areolaColor = "#8F5E51"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#A46138"; - colorSlave.areolaColor = "#8F5E51"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#7C563C"; - colorSlave.areolaColor = "#70493A"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#804A28"; - colorSlave.areolaColor = "#5F3F27"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#6F4523"; - colorSlave.areolaColor = "#623C20"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#6F4523"; - colorSlave.areolaColor = "#623C20"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#6F3E27"; - colorSlave.areolaColor = "#553823"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#A46138"; - colorSlave.areolaColor = "#8F5E51"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "malay": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FBD1B2"; + colorSlave.areolaColor = "#F39E7D"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FBD1B2"; + colorSlave.areolaColor = "#F39E7D"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#E8B892"; + colorSlave.areolaColor = "#E2856C"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#E8B892"; + colorSlave.areolaColor = "#E2856C"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#EA9870"; + colorSlave.areolaColor = "#BE6C56"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#EA9870"; + colorSlave.areolaColor = "#BE6C56"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#EA9760"; + colorSlave.areolaColor = "#AB6755"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#BA855E"; + colorSlave.areolaColor = "#976051"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#BA855E"; + colorSlave.areolaColor = "#976051"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#A46138"; + colorSlave.areolaColor = "#8F5E51"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#A46138"; + colorSlave.areolaColor = "#8F5E51"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#7C563C"; + colorSlave.areolaColor = "#70493A"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#804A28"; + colorSlave.areolaColor = "#5F3F27"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#6F4523"; + colorSlave.areolaColor = "#623C20"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#6F4523"; + colorSlave.areolaColor = "#623C20"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#6F3E27"; + colorSlave.areolaColor = "#553823"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#A46138"; + colorSlave.areolaColor = "#8F5E51"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "indo-aryan": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#F8D4BE"; - colorSlave.areolaColor = "#F8B6A4"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#F8D4BE"; - colorSlave.areolaColor = "#F8B6A4"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#EFCCAF"; - colorSlave.areolaColor = "#EA9B86"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#EFCCAF"; - colorSlave.areolaColor = "#EA9B86"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#FCC49A"; - colorSlave.areolaColor = "#D29577"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#FCC49A"; - colorSlave.areolaColor = "#D29577"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#E8B68E"; - colorSlave.areolaColor = "#D08661"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#C17848"; - colorSlave.areolaColor = "#C36E45"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#C17848"; - colorSlave.areolaColor = "#C36E45"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#C17848"; - colorSlave.areolaColor = "#A75A34"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#C17848"; - colorSlave.areolaColor = "#A75A34"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#83684B"; - colorSlave.areolaColor = "#715043"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#8A593C"; - colorSlave.areolaColor = "#714931"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#845834"; - colorSlave.areolaColor = "#614635"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#845834"; - colorSlave.areolaColor = "#614635"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#7C5842"; - colorSlave.areolaColor = "#5F4538"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#6B5449"; - colorSlave.areolaColor = "#473C37"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#6B5449"; - colorSlave.areolaColor = "#473C37"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#C17848"; - colorSlave.areolaColor = "#A75A34"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "indo-aryan": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#F8D4BE"; + colorSlave.areolaColor = "#F8B6A4"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#F8D4BE"; + colorSlave.areolaColor = "#F8B6A4"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#EFCCAF"; + colorSlave.areolaColor = "#EA9B86"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#EFCCAF"; + colorSlave.areolaColor = "#EA9B86"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#FCC49A"; + colorSlave.areolaColor = "#D29577"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#FCC49A"; + colorSlave.areolaColor = "#D29577"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#E8B68E"; + colorSlave.areolaColor = "#D08661"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#C17848"; + colorSlave.areolaColor = "#C36E45"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#C17848"; + colorSlave.areolaColor = "#C36E45"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#C17848"; + colorSlave.areolaColor = "#A75A34"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#C17848"; + colorSlave.areolaColor = "#A75A34"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#83684B"; + colorSlave.areolaColor = "#715043"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#8A593C"; + colorSlave.areolaColor = "#714931"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#845834"; + colorSlave.areolaColor = "#614635"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#845834"; + colorSlave.areolaColor = "#614635"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#7C5842"; + colorSlave.areolaColor = "#5F4538"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#6B5449"; + colorSlave.areolaColor = "#473C37"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#6B5449"; + colorSlave.areolaColor = "#473C37"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#C17848"; + colorSlave.areolaColor = "#A75A34"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "pacific islander": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FBD1B2"; - colorSlave.areolaColor = "#F39E7D"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FBD1B2"; - colorSlave.areolaColor = "#F39E7D"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#E8B892"; - colorSlave.areolaColor = "#E2856C"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#E8B892"; - colorSlave.areolaColor = "#E2856C"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#EA9870"; - colorSlave.areolaColor = "#BE6C56"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#EA9870"; - colorSlave.areolaColor = "#BE6C56"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#EA9760"; - colorSlave.areolaColor = "#AB6755"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#BA855E"; - colorSlave.areolaColor = "#976051"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#BA855E"; - colorSlave.areolaColor = "#976051"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#A46138"; - colorSlave.areolaColor = "#8F5E51"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#A46138"; - colorSlave.areolaColor = "#8F5E51"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#7C563C"; - colorSlave.areolaColor = "#70493A"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#804A28"; - colorSlave.areolaColor = "#5F3F27"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#6F4523"; - colorSlave.areolaColor = "#623C20"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#6F4523"; - colorSlave.areolaColor = "#623C20"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - case "black": - colorSlave.skinColor = "#6F3E27"; - colorSlave.areolaColor = "#553823"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#583E2F"; - colorSlave.areolaColor = "#3F3A38"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#A46138"; - colorSlave.areolaColor = "#8F5E51"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "pacific islander": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FBD1B2"; + colorSlave.areolaColor = "#F39E7D"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FBD1B2"; + colorSlave.areolaColor = "#F39E7D"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#E8B892"; + colorSlave.areolaColor = "#E2856C"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#E8B892"; + colorSlave.areolaColor = "#E2856C"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#EA9870"; + colorSlave.areolaColor = "#BE6C56"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#EA9870"; + colorSlave.areolaColor = "#BE6C56"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#EA9760"; + colorSlave.areolaColor = "#AB6755"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#BA855E"; + colorSlave.areolaColor = "#976051"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#BA855E"; + colorSlave.areolaColor = "#976051"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#A46138"; + colorSlave.areolaColor = "#8F5E51"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#A46138"; + colorSlave.areolaColor = "#8F5E51"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#7C563C"; + colorSlave.areolaColor = "#70493A"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#804A28"; + colorSlave.areolaColor = "#5F3F27"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#6F4523"; + colorSlave.areolaColor = "#623C20"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#6F4523"; + colorSlave.areolaColor = "#623C20"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + case "black": + colorSlave.skinColor = "#6F3E27"; + colorSlave.areolaColor = "#553823"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#583E2F"; + colorSlave.areolaColor = "#3F3A38"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#A46138"; + colorSlave.areolaColor = "#8F5E51"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - case "mixed race": - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FEE5CC"; - colorSlave.areolaColor = "#E3BBAB"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FEE5CC"; - colorSlave.areolaColor = "#E3BBAB"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#E6C2B0"; - colorSlave.areolaColor = "#D1A695"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#E6C2B0"; - colorSlave.areolaColor = "#D1A695"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#E1B59F"; - colorSlave.areolaColor = "#B48D7E"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#E1B59F"; - colorSlave.areolaColor = "#B48D7E"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#DAA782"; - colorSlave.areolaColor = "#9E7666"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#B27554"; - colorSlave.areolaColor = "#92684C"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#B27554"; - colorSlave.areolaColor = "#92684C"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#8B644F"; - colorSlave.areolaColor = "#7B5749"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#775031"; - colorSlave.areolaColor = "#69452F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#774A31"; - colorSlave.areolaColor = "#5E4434"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#774A31"; - colorSlave.areolaColor = "#5E4434"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - colorSlave.skinColor = "#74523E"; - colorSlave.areolaColor = "#574135"; - colorSlave.labiaColor = "#F977A3"; - break; - case "black": - colorSlave.skinColor = "#6B4B4B"; - colorSlave.areolaColor = "#413228"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#634F45"; - colorSlave.areolaColor = "#4E3C32"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#634F45"; - colorSlave.areolaColor = "#4E3C32"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; + case "mixed race": + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FEE5CC"; + colorSlave.areolaColor = "#E3BBAB"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FEE5CC"; + colorSlave.areolaColor = "#E3BBAB"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#E6C2B0"; + colorSlave.areolaColor = "#D1A695"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#E6C2B0"; + colorSlave.areolaColor = "#D1A695"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#E1B59F"; + colorSlave.areolaColor = "#B48D7E"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#E1B59F"; + colorSlave.areolaColor = "#B48D7E"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#DAA782"; + colorSlave.areolaColor = "#9E7666"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#B27554"; + colorSlave.areolaColor = "#92684C"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#B27554"; + colorSlave.areolaColor = "#92684C"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#8B644F"; + colorSlave.areolaColor = "#7B5749"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#775031"; + colorSlave.areolaColor = "#69452F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#774A31"; + colorSlave.areolaColor = "#5E4434"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#774A31"; + colorSlave.areolaColor = "#5E4434"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + colorSlave.skinColor = "#74523E"; + colorSlave.areolaColor = "#574135"; + colorSlave.labiaColor = "#F977A3"; + break; + case "black": + colorSlave.skinColor = "#6B4B4B"; + colorSlave.areolaColor = "#413228"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#634F45"; + colorSlave.areolaColor = "#4E3C32"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#634F45"; + colorSlave.areolaColor = "#4E3C32"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; } break; - default: - switch (artSlave.skin) { - case "pure white": - case "ivory": - case "white": - colorSlave.skinColor = "#FEE5CC"; - colorSlave.areolaColor = "#E3BBAB"; - colorSlave.labiaColor = "#F977A3"; - break; - case "extremely pale": - case "very pale": - colorSlave.skinColor = "#FEE5CC"; - colorSlave.areolaColor = "#E3BBAB"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "pale": - colorSlave.skinColor = "#E6C2B0"; - colorSlave.areolaColor = "#D1A695"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ffb9ca"; - break; - case "extremely fair": - colorSlave.skinColor = "#E6C2B0"; - colorSlave.areolaColor = "#D1A695"; - colorSlave.labiaColor = "#F977A3"; - break; - case "very fair": - colorSlave.skinColor = "#E1B59F"; - colorSlave.areolaColor = "#B48D7E"; - colorSlave.labiaColor = "#F977A3"; - break; - case "fair": - colorSlave.skinColor = "#E1B59F"; - colorSlave.areolaColor = "#B48D7E"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light": - colorSlave.skinColor = "#DAA782"; - colorSlave.areolaColor = "#9E7666"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#ce6876"; - break; - case "light olive": - colorSlave.skinColor = "#B27554"; - colorSlave.areolaColor = "#92684C"; - colorSlave.labiaColor = "#F977A3"; - break; - case "tan": - colorSlave.skinColor = "#B27554"; - colorSlave.areolaColor = "#92684C"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#c1a785"; - break; - case "olive": - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - break; - case "bronze": - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark olive": - colorSlave.skinColor = "#8B644F"; - colorSlave.areolaColor = "#7B5749"; - colorSlave.labiaColor = "#F977A3"; - break; - case "dark": - case "light beige": - colorSlave.skinColor = "#775031"; - colorSlave.areolaColor = "#69452F"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "beige": - case "dark beige": - case "light brown": - colorSlave.skinColor = "#774A31"; - colorSlave.areolaColor = "#5E4434"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#5d2f1b"; - break; - case "brown": - colorSlave.skinColor = "#774A31"; - colorSlave.areolaColor = "#5E4434"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#714536"; - break; - case "dark brown": - colorSlave.skinColor = "#74523E"; - colorSlave.areolaColor = "#574135"; - colorSlave.labiaColor = "#F977A3"; - break; - case "black": - colorSlave.skinColor = "#6B4B4B"; - colorSlave.areolaColor = "#413228"; - colorSlave.labiaColor = "#F977A3"; - break; - case "ebony": - colorSlave.skinColor = "#634F45"; - colorSlave.areolaColor = "#4E3C32"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#403030"; - break; - case "pure black": - colorSlave.skinColor = "#634F45"; - colorSlave.areolaColor = "#4E3C32"; - colorSlave.labiaColor = "#F977A3"; - break; - default: - colorSlave.skinColor = "#B6784E"; - colorSlave.areolaColor = "#8F5A45"; - colorSlave.labiaColor = "#F977A3"; - colorSlave.lipsColor = "#9e4c44"; - } + default: + switch (artSlave.skin) { + case "pure white": + case "ivory": + case "white": + colorSlave.skinColor = "#FEE5CC"; + colorSlave.areolaColor = "#E3BBAB"; + colorSlave.labiaColor = "#F977A3"; + break; + case "extremely pale": + case "very pale": + colorSlave.skinColor = "#FEE5CC"; + colorSlave.areolaColor = "#E3BBAB"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "pale": + colorSlave.skinColor = "#E6C2B0"; + colorSlave.areolaColor = "#D1A695"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ffb9ca"; + break; + case "extremely fair": + colorSlave.skinColor = "#E6C2B0"; + colorSlave.areolaColor = "#D1A695"; + colorSlave.labiaColor = "#F977A3"; + break; + case "very fair": + colorSlave.skinColor = "#E1B59F"; + colorSlave.areolaColor = "#B48D7E"; + colorSlave.labiaColor = "#F977A3"; + break; + case "fair": + colorSlave.skinColor = "#E1B59F"; + colorSlave.areolaColor = "#B48D7E"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light": + colorSlave.skinColor = "#DAA782"; + colorSlave.areolaColor = "#9E7666"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#ce6876"; + break; + case "light olive": + colorSlave.skinColor = "#B27554"; + colorSlave.areolaColor = "#92684C"; + colorSlave.labiaColor = "#F977A3"; + break; + case "tan": + colorSlave.skinColor = "#B27554"; + colorSlave.areolaColor = "#92684C"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#c1a785"; + break; + case "olive": + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + break; + case "bronze": + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark olive": + colorSlave.skinColor = "#8B644F"; + colorSlave.areolaColor = "#7B5749"; + colorSlave.labiaColor = "#F977A3"; + break; + case "dark": + case "light beige": + colorSlave.skinColor = "#775031"; + colorSlave.areolaColor = "#69452F"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "beige": + case "dark beige": + case "light brown": + colorSlave.skinColor = "#774A31"; + colorSlave.areolaColor = "#5E4434"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#5d2f1b"; + break; + case "brown": + colorSlave.skinColor = "#774A31"; + colorSlave.areolaColor = "#5E4434"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#714536"; + break; + case "dark brown": + colorSlave.skinColor = "#74523E"; + colorSlave.areolaColor = "#574135"; + colorSlave.labiaColor = "#F977A3"; + break; + case "black": + colorSlave.skinColor = "#6B4B4B"; + colorSlave.areolaColor = "#413228"; + colorSlave.labiaColor = "#F977A3"; + break; + case "ebony": + colorSlave.skinColor = "#634F45"; + colorSlave.areolaColor = "#4E3C32"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#403030"; + break; + case "pure black": + colorSlave.skinColor = "#634F45"; + colorSlave.areolaColor = "#4E3C32"; + colorSlave.labiaColor = "#F977A3"; + break; + default: + colorSlave.skinColor = "#B6784E"; + colorSlave.areolaColor = "#8F5A45"; + colorSlave.labiaColor = "#F977A3"; + colorSlave.lipsColor = "#9e4c44"; + } } } return colorSlave; diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw index 5c7529bfef3b141d4977db18f21ec21c8046bff9..b247e2f8ac5b8068ada94913a7209eb5ffaddae2 100644 --- a/src/art/artWidgets.tw +++ b/src/art/artWidgets.tw @@ -1,23 +1,6 @@ :: art widgets [nobr widget] -/% -Call as <<SlaveArt>> -Displays slave images. Currently passage-based. -$args[0]: Slave. -$args[1]: Image size/center. - 3: Large, right. Example: long slave description. - 2: Medium, right. Example: random events. - 1: Small, left. Example: lists. - 0: Tiny, left. Example: facilities -$args[2]: icon UI Display for vector art, 1 for on. -%/ -<<widget "SlaveArt">> - -<<= SlaveArt($args[0], $args[1], $args[2])>> - -<</widget>> - <<widget "SlaveArtById">> <<set _s = getSlave($args[0])>> - <<SlaveArt _s $args[1]>> + <<= SlaveArt(_s, $args[1])>> <</widget>> diff --git a/src/art/vector/VectorArtJS.js b/src/art/vector/VectorArtJS.js index e81777be2769465443d91a9de947b435ea6829ae..e208250d74e2e01ab89cc766c876c0ad7a43f7fe 100644 --- a/src/art/vector/VectorArtJS.js +++ b/src/art/vector/VectorArtJS.js @@ -2844,18 +2844,18 @@ window.LegacyVectorArt = function(slave, artSize) { /* Torso */ if (slave.waist < -40) { if (slave.weight > 30) { - torsoSize = "Hourglass"; + torsoSize = "hourglass"; } else { - torsoSize = "Unnatural"; + torsoSize = "unnatural"; } } else if (slave.waist <= 10) { if (slave.weight > 30) { - torsoSize = "Normal"; + torsoSize = "normal"; } else { - torsoSize = "Hourglass"; + torsoSize = "hourglass"; } } else { - torsoSize = "Normal"; + torsoSize = "normal"; } r += `<img class='paperdoll' src=${skinFilePath}/torso ${torsoSize}.svg' style='${skinFilter}'>`; if (wearingLatex === true) { diff --git a/src/cheats/PCCheatMenu.tw b/src/cheats/PCCheatMenu.tw index 5b29cbdec5e9f466209f6ec4f8e3396532077fea..5393e5b619097c3444f4d5ff27f7591437f619f2 100644 --- a/src/cheats/PCCheatMenu.tw +++ b/src/cheats/PCCheatMenu.tw @@ -90,7 +90,7 @@ __Age__ __Pregnancy__ <br>''Pregnancy Length'': <<textbox "$tempSlave.preg" $tempSlave.preg>> //how far along your pregnancy is (pregMood kicks in at 24+ weeks) - -2: infertile, -1: contraceptives, 0: not pregnant, 1 - 42: pregnant, 43+: giving birth// <br>''Fetus Count'': <<textbox "$tempSlave.pregType" $tempSlave.pregType>> //how many you're having (1-8)// -<br>''PregSource'': <<textbox "$tempSlave.pregSource" $tempSlave.pregSource>> //who knocked you up - 0: unknown, -1: self-impreg, -2: citizen, -3: former master, -4: male arc owner, -5: client, -6: Societal Elite, -7: designer baby, -9: Futanari Sister// +<br>''PregSource'': <<textbox "$tempSlave.pregSource" $tempSlave.pregSource>> //who knocked you up - 0: unknown, -1: self-impreg, -2: citizen, -3: former Master, -4: male arc owner, -5: client, -6: Societal Elite, -7: designer baby, -9: Futanari Sister// <br>''PregMood'': <<textbox "$tempSlave.pregMood" $tempSlave.pregMood>> //how you act when heavily pregnant - 0: no change, 1: submissive and motherly, 2: aggressive and dominant// <br><br> diff --git a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw index 227c60dffbc96c8759a01cd6801ec9d7204112e7..df5252953aebe5545434d071f8b2ed5540b3fa8c 100644 --- a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw +++ b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw @@ -30,11 +30,6 @@ <<set $tempSlave.belly = 0>> <<set $tempSlave.pregWeek = 0>> <</if>> -<<run PCDatatypeCleanup()>> -<<set $upgradeMultiplierArcology = upgradeMultiplierArcology()>> -<<set $upgradeMultiplierMedicine = upgradeMultiplierMedicine()>> -<<set $upgradeMultiplierTrade = upgradeMultiplierTrade()>> -<<set $HackingSkillMultiplier = HackingSkillMultiplier()>> <<if $tempSlave.boobs == 0>> <<set $tempSlave.boobsBonus = 0>> @@ -59,4 +54,9 @@ You perform the dark rituals, pray to the dark gods, and sell your soul for the power to reshape your body and life at will. What a cheater! <<set $PC = clone($tempSlave)>> +<<run PCDatatypeCleanup()>> +<<set $upgradeMultiplierArcology = upgradeMultiplierArcology()>> +<<set $upgradeMultiplierMedicine = upgradeMultiplierMedicine()>> +<<set $upgradeMultiplierTrade = upgradeMultiplierTrade()>> +<<set $HackingSkillMultiplier = HackingSkillMultiplier()>> <<unset $tempSlave>> diff --git a/src/cheats/mod_EditChildCheatNew.tw b/src/cheats/mod_EditChildCheatNew.tw index ec66e7029e3514f7d3b1b3594aff42918f6e4ea8..2707537b7db9173b7ef22595d06ef1d2ed3192dd 100644 --- a/src/cheats/mod_EditChildCheatNew.tw +++ b/src/cheats/mod_EditChildCheatNew.tw @@ -1858,7 +1858,7 @@ <<elseif $tempSlave.pregType == 2>> @@.yellow;Twins@@. <<elseif $tempSlave.pregType == 3>> - @@.yellow;Triples@@. + @@.yellow;Triplets@@. <<elseif $tempSlave.pregType == 4>> @@.yellow;Quadruplets@@. <<elseif $tempSlave.pregType > 4>> diff --git a/src/cheats/mod_EditSlaveCheat.tw b/src/cheats/mod_EditSlaveCheat.tw index 451ac60811091c85f6c10a01bce28fa5883b48c7..2c300de95bad96e98aea3c4cc4fb6c62a720c6b6 100644 --- a/src/cheats/mod_EditSlaveCheat.tw +++ b/src/cheats/mod_EditSlaveCheat.tw @@ -327,7 +327,7 @@ Custom sclera color: <<textbox "$tempSlave.sclerae" $tempSlave.sclerae>> <<radiobutton "$tempSlave.eyes" 1>> Normal <<radiobutton "$tempSlave.eyes" -1>> Nearsighted <<if $seeExtreme == 1>> -<<radiobutton "$tempSlave.eyes" -2>> Blind + <<radiobutton "$tempSlave.eyes" -2>> Blind <</if>> <br> @@ -343,25 +343,25 @@ Custom sclera color: <<textbox "$tempSlave.sclerae" $tempSlave.sclerae>> <<radiobutton "$tempSlave.hears" 0>> Normal <<radiobutton "$tempSlave.hears" -1>> Hard Of Hearing <<if $seeExtreme == 1>> -<<radiobutton "$tempSlave.hears" -2>> Deaf + <<radiobutton "$tempSlave.hears" -2>> Deaf <</if>> <br><br> <<if $seeExtreme == 1>> -''$His sense of smell is (-1: disabled, 0: normal): $tempSlave.smells'' -<br>Ears: <<textbox "$tempSlave.smells" $tempSlave.smells>> -<<radiobutton "$tempSlave.smells" 0>> Normal -<<radiobutton "$tempSlave.smells" -1>> None + ''$His sense of smell is (-1: disabled, 0: normal): $tempSlave.smells'' + <br>Ears: <<textbox "$tempSlave.smells" $tempSlave.smells>> + <<radiobutton "$tempSlave.smells" 0>> Normal + <<radiobutton "$tempSlave.smells" -1>> None -<br><br> + <br><br> -''$His sense of taste is (-1: disabled, 0: normal): $tempSlave.tastes'' -<br>Ears: <<textbox "$tempSlave.tastes" $tempSlave.tastes>> -<<radiobutton "$tempSlave.tastes" 0>> Normal -<<radiobutton "$tempSlave.tastes" -1>> None + ''$His sense of taste is (-1: disabled, 0: normal): $tempSlave.tastes'' + <br>Ears: <<textbox "$tempSlave.tastes" $tempSlave.tastes>> + <<radiobutton "$tempSlave.tastes" 0>> Normal + <<radiobutton "$tempSlave.tastes" -1>> None -<br><br> + <br><br> <</if>> ''Change $his custom tattoo:'' <<textbox "$tempSlave.custom.tattoo" $tempSlave.custom.tattoo>> @@ -428,15 +428,15 @@ Custom sclera color: <<textbox "$tempSlave.sclerae" $tempSlave.sclerae>> ''Oral sex (0 to 100):'' <<if $tempSlave.skill.oral <= 10>> -Unskilled. + Unskilled. <<elseif $tempSlave.skill.oral <= 30>> -@@.cyan;Basic.@@ + @@.cyan;Basic.@@ <<elseif $tempSlave.skill.oral <= 60>> -@@.cyan;Skilled.@@ + @@.cyan;Skilled.@@ <<elseif $tempSlave.skill.oral < 100>> -@@.cyan;Expert.@@ + @@.cyan;Expert.@@ <<else>> -@@.cyan;Masterful.@@ + @@.cyan;Masterful.@@ <</if>> <<textbox "$tempSlave.skill.oral" $tempSlave.skill.oral>> <br> @@ -546,19 +546,19 @@ Unskilled. ''Weight (-100 to 100):'' <<if $tempSlave.weight < -95>> -@@.red;Emaciated.@@ + @@.red;Emaciated.@@ <<elseif $tempSlave.weight < -30>> -@@.red;Skinny.@@ + @@.red;Skinny.@@ <<elseif $tempSlave.weight < -10>> -Thin. + Thin. <<elseif $tempSlave.weight <= 10 >> -Average. + Average. <<elseif $tempSlave.weight <= 30>> -Plush. + Plush. <<elseif $tempSlave.weight <= 95>> -@@.red;Chubby.@@ + @@.red;Chubby.@@ <<else>> -@@.red;Fat.@@ + @@.red;Fat.@@ <</if>> <<textbox "$tempSlave.weight" $tempSlave.weight>> <br> @@ -757,15 +757,15 @@ Plush. ''Anal sex (0 to 100):'' <<if $tempSlave.skill.anal <= 10>> -Unskilled. + Unskilled. <<elseif $tempSlave.skill.anal <= 30>> -@@.cyan;Basic.@@ + @@.cyan;Basic.@@ <<elseif $tempSlave.skill.anal <= 60>> -@@.cyan;Skilled.@@ + @@.cyan;Skilled.@@ <<elseif $tempSlave.skill.anal < 100>> -@@.cyan;Expert.@@ + @@.cyan;Expert.@@ <<else>> -@@.cyan;Masterful.@@ + @@.cyan;Masterful.@@ <</if>> <<textbox "$tempSlave.skill.anal" $tempSlave.skill.anal>> <br> @@ -779,15 +779,15 @@ Unskilled. ''Vagina (no vagina:-1,0,1,2,3):'' <<if $tempSlave.vagina == -1>> -//No vagina.// + //No vagina.// <<elseif $tempSlave.vagina == 0>> -@@.lime;Virgin.@@ + @@.lime;Virgin.@@ <<elseif $tempSlave.vagina == 1>> -Normal. + Normal. <<elseif $tempSlave.vagina == 2>> -Veteran. + Veteran. <<else>> -Gaping. + Gaping. <</if>> <<textbox "$tempSlave.vagina" $tempSlave.vagina>> <br> @@ -801,11 +801,11 @@ Gaping. ''Vagina Wetness (0,1,2):'' <<if $tempSlave.vaginaLube == 0>> -Dry. + Dry. <<elseif $tempSlave.vaginaLube == 1>> -Normal. + Normal. <<else>> -Excessive. + Excessive. <</if>> <<textbox "$tempSlave.vaginaLube" $tempSlave.vaginaLube>> <br> @@ -818,24 +818,24 @@ Excessive. ''Ovaries (none: 0 | exist: 1): $tempSlave.ovaries'' <<textbox "$tempSlave.ovaries" $tempSlave.ovaries>> <<if $tempSlave.ovaries == 1>> -<<checkbox "$tempSlave.ovaries" 0 1 checked>> + <<checkbox "$tempSlave.ovaries" 0 1 checked>> <<else>> -<<checkbox "$tempSlave.ovaries" 0 1>> + <<checkbox "$tempSlave.ovaries" 0 1>> <</if>> <br> ''Vaginal sex (0 to 100):'' <<if $tempSlave.skill.vaginal <= 10>> -Unskilled. + Unskilled. <<elseif $tempSlave.skill.vaginal <= 30>> -@@.cyan;Basic.@@ + @@.cyan;Basic.@@ <<elseif $tempSlave.skill.vaginal <= 60>> -@@.cyan;Skilled.@@ + @@.cyan;Skilled.@@ <<elseif $tempSlave.skill.vaginal < 100>> -@@.cyan;Expert.@@ + @@.cyan;Expert.@@ <<else>> -@@.cyan;Masterful.@@ + @@.cyan;Masterful.@@ <</if>> <<textbox "$tempSlave.skill.vaginal" $tempSlave.skill.vaginal>> <br> @@ -849,15 +849,15 @@ Unskilled. ''Clit:'' <<if $tempSlave.clit == 0>> -Normal. | + Normal. | <<elseif $tempSlave.clit == 1>> -Big. | + Big. | <<elseif $tempSlave.clit == 2>> -Huge. | + Huge. | <<elseif $tempSlave.clit == 3>> -Enormous. | + Enormous. | <<else>> -Dick-like. | + Dick-like. | <</if>> <<textbox "$tempSlave.clit" $tempSlave.clit>> <br> @@ -873,13 +873,13 @@ Dick-like. | ''Labia:'' <<if $tempSlave.labia == 0>> -Minimal. | + Minimal. | <<elseif $tempSlave.labia == 1>> -Normal. | + Normal. | <<elseif $tempSlave.labia == 2>> -Large. | + Large. | <<else>> -Huge. | + Huge. | <</if>> <<textbox "$tempSlave.labia" $tempSlave.labia>> <br> @@ -892,32 +892,32 @@ Huge. | ''Pregnancy Level (-2: sterile, -1: contraceptives, 0: not pregnant, 1 to 25: pregnant):'' <<if $tempSlave.preg > 20>> -Advanced. + Advanced. <<elseif $tempSlave.preg > 5>> -Early. + Early. <<elseif $tempSlave.preg == 0>> -None. + None. <<elseif $tempSlave.preg == -1>> -Using contraceptives. + Using contraceptives. <<else>> -Sterile. + Sterile. <</if>> <<textbox "$tempSlave.preg" $tempSlave.preg>> <br> ''Number of babies (0: none, 1 - 5):'' <<if $tempSlave.pregType == 1>> -A single baby. + A single baby. <<elseif $tempSlave.pregType == 2>> -Twins. + Twins. <<elseif $tempSlave.pregType == 3>> -Triples. + Triplets. <<elseif $tempSlave.pregType == 4>> -Quadruplets. + Quadruplets. <<elseif $tempSlave.pregType > 4>> -Quintuplets. + Quintuplets. <<else>> -None. + None. <</if>> <<textbox "$tempSlave.pregType" $tempSlave.pregType>> <br> @@ -936,25 +936,25 @@ None. ''Penis (none:0, 1 to 10):'' <<if $tempSlave.dick == 0>> -None. + None. <<elseif $tempSlave.dick == 1>> -Tiny. + Tiny. <<elseif $tempSlave.dick == 2>> -Small. + Small. <<elseif $tempSlave.dick == 3>> -Normal. + Normal. <<elseif $tempSlave.dick == 4>> -Large. + Large. <<elseif $tempSlave.dick == 5>> -Massive. + Massive. <<elseif $tempSlave.dick == 6>> -Huger + Huger. <<elseif $tempSlave.dick == 7>> -Still huge. + Still huge. <<elseif $tempSlave.dick == 8>> -Enormous. + Enormous. <<else>> -Monstrous. + Monstrous. <</if>> <<textbox "$tempSlave.dick" $tempSlave.dick>> <br> @@ -991,19 +991,19 @@ Monstrous. ''Testicles (0 to 6):'' <<if $tempSlave.balls == 0>> -None. + None. <<elseif $tempSlave.balls == 1>> -Vestigial. + Vestigial. <<elseif $tempSlave.balls == 2>> -Small. + Small. <<elseif $tempSlave.balls == 3>> -Normal. + Normal. <<elseif $tempSlave.balls == 4>> -Large. + Large. <<elseif $tempSlave.balls == 5>> -Huge. + Huge. <<else>> -Titanic. + Titanic. <</if>> <<textbox "$tempSlave.balls" $tempSlave.balls>> <br> @@ -1023,23 +1023,23 @@ Titanic. ''Ballsack (0 to 8):'' <<if $tempSlave.scrotum == 0>> -None. + None. <<elseif $tempSlave.scrotum == 1>> -Vestigial. + Vestigial. <<elseif $tempSlave.scrotum == 2>> -Small. + Small. <<elseif $tempSlave.scrotum == 3>> -Normal. + Normal. <<elseif $tempSlave.scrotum == 4>> -Large. + Large. <<elseif $tempSlave.scrotum == 5>> -Huge. + Huge. <<elseif $tempSlave.scrotum == 6>> -Massive. + Massive. <<elseif $tempSlave.scrotum == 7>> -Enormous. + Enormous. <<else>> -Monstrous. + Monstrous. <</if>> <<textbox "$tempSlave.scrotum" $tempSlave.scrotum>> <br> @@ -1067,15 +1067,15 @@ Monstrous. ''Prostitution (0 to 100):'' <<if $tempSlave.skill.whoring <= 10>> -Unskilled. + Unskilled. <<elseif $tempSlave.skill.whoring <= 30>> -@@.cyan;Basic.@@ + @@.cyan;Basic.@@ <<elseif $tempSlave.skill.whoring <= 60>> -@@.cyan;Skilled.@@ + @@.cyan;Skilled.@@ <<elseif $tempSlave.skill.whoring < 100>> -@@.cyan;Expert.@@ + @@.cyan;Expert.@@ <<else>> -@@.cyan;Masterful.@@ + @@.cyan;Masterful.@@ <</if>> <<textbox "$tempSlave.skill.whoring" $tempSlave.skill.whoring>> <br> @@ -1089,15 +1089,15 @@ Unskilled. ''Entertainment (0 to 100):'' <<if $tempSlave.skill.entertainment <= 10>> -Unskilled. + Unskilled. <<elseif $tempSlave.skill.entertainment <= 30>> -@@.cyan;Basic.@@ + @@.cyan;Basic.@@ <<elseif $tempSlave.skill.entertainment <= 60>> -@@.cyan;Skilled.@@ + @@.cyan;Skilled.@@ <<elseif $tempSlave.skill.entertainment < 100>> -@@.cyan;Expert.@@ + @@.cyan;Expert.@@ <<else>> -@@.cyan;Masterful.@@ + @@.cyan;Masterful.@@ <</if>> <<textbox "$tempSlave.skill.entertainment" $tempSlave.skill.entertainment>> <br> @@ -1111,9 +1111,9 @@ Unskilled. ''Combat (0,1):'' <<if $tempSlave.skill.combat == 0>> -Unskilled. + Unskilled. <<else>> -@@.cyan;Skilled.@@ + @@.cyan;Skilled.@@ <</if>> <<textbox "$tempSlave.skill.combat" $tempSlave.skill.combat>> <br> @@ -1175,9 +1175,9 @@ Unskilled. <br> <<if $tempSlave.fetish == "none">> -''Fetish:'' @@.pink;$tempSlave.fetish.@@ + ''Fetish:'' @@.pink;$tempSlave.fetish.@@ <<else>> -''Fetish:'' @@.lightcoral;$tempSlave.fetish.@@ + ''Fetish:'' @@.lightcoral;$tempSlave.fetish.@@ <</if>> <<textbox "$tempSlave.fetish" $tempSlave.fetish>> <br> @@ -1196,11 +1196,11 @@ Unskilled. ''Fetish strength (0 to 100):'' <<if $tempSlave.fetishStrength > 95>> -@@.lightcoral;High.@@ + @@.lightcoral;High.@@ <<elseif $tempSlave.fetishStrength <= 60>> -@@.pink;Low.@@ + @@.pink;Low.@@ <<else>> -@@.hotpink;Normal.@@ + @@.hotpink;Normal.@@ <</if>> <<textbox "$tempSlave.fetishStrength" $tempSlave.fetishStrength>> <br> @@ -1276,17 +1276,17 @@ Unskilled. ''Sex drive (0 - 100):'' <<if $tempSlave.energy == 100>> -@@.green;Nympho!@@ + @@.green;Nympho!@@ <<elseif $tempSlave.energy > 80>> -@@.green;Sex addict.@@ + @@.green;Sex addict.@@ <<elseif $tempSlave.energy > 60>> -@@.green;Powerful.@@ + @@.green;Powerful.@@ <<elseif $tempSlave.energy > 40>> -@@.yellow;Average.@@ + @@.yellow;Average.@@ <<elseif $tempSlave.energy > 20>> -@@.red;Poor.@@ + @@.red;Poor.@@ <<else>> -@@.red;Frigid.@@ + @@.red;Frigid.@@ <</if>> <<textbox "$tempSlave.energy" $tempSlave.energy>> @@ -1294,9 +1294,9 @@ Unskilled. ''Behavioral Flaw:'' <<if $tempSlave.behavioralFlaw == "none">> -//$tempSlave.behavioralFlaw.// + //$tempSlave.behavioralFlaw.// <<else>> -@@.red;$tempSlave.behavioralFlaw.@@ + @@.red;$tempSlave.behavioralFlaw.@@ <</if>> <<textbox "$tempSlave.behavioralFlaw" $tempSlave.behavioralFlaw>> <br> @@ -1315,9 +1315,9 @@ Unskilled. ''Behavioral Quirk:'' <<if $tempSlave.behavioralQuirk == "none">> -//$tempSlave.behavioralQuirk.// + //$tempSlave.behavioralQuirk.// <<else>> -@@.green;$tempSlave.behavioralQuirk.@@ + @@.green;$tempSlave.behavioralQuirk.@@ <</if>> <<textbox "$tempSlave.behavioralQuirk" $tempSlave.behavioralQuirk>> <br> @@ -1332,16 +1332,16 @@ Unskilled. <<radiobutton "$tempSlave.behavioralQuirk" "sinful">> Sinful <<radiobutton "$tempSlave.behavioralQuirk" "advocate">> Advocate <<if $tempSlave.behavioralQuirk != "none">> -<<set $tempSlave.behavioralFlaw = "none">> + <<set $tempSlave.behavioralFlaw = "none">> <</if>> <br><br> ''Sexual Flaw / Paraphilias:'' <<if $tempSlave.sexualFlaw == "none">> -//$tempSlave.sexualFlaw.// + //$tempSlave.sexualFlaw.// <<else>> -@@.red;$tempSlave.sexualFlaw.@@ + @@.red;$tempSlave.sexualFlaw.@@ <</if>> <<textbox "$tempSlave.sexualFlaw" $tempSlave.sexualFlaw>> <br> diff --git a/src/cheats/mod_editSlaveCheatNew.tw b/src/cheats/mod_editSlaveCheatNew.tw index 69d88b038fefc6c17c6bb99c826eb9209354540d..2057745f2a975c5f739da64df5f943b26dee40ff 100644 --- a/src/cheats/mod_editSlaveCheatNew.tw +++ b/src/cheats/mod_editSlaveCheatNew.tw @@ -257,11 +257,11 @@ <<COptions "a street urchin" >> <<print " | ">> <<COptions "a student from a boarding school" >> - <<print " | ">> + <br> <<COptions "a sweatshop worker" >> <<print " | ">> <<COptions "a thief" >> - <br> + <<print " | ">> <<COptions "an orphan" >> <<print " | ">> <<COptions "from a lower class family" >> @@ -346,12 +346,16 @@ <<print " | ">> <<COptions "a receptionist" >> <<print " | ">> - <<COptions "a ride attendant" >> + <<COptions "a referee" >> + <<print " | ">> + <<COptions "a repairman" >> <<print " | ">> + <<COptions "a ride attendant" >> + <br> <<COptions "a roadie" >> <<print " | ">> <<COptions "a sailor" >> - <br> + <<print " | ">> <<COptions "a seamstress" >> <<print " | ">> <<COptions "a service worker" >> @@ -367,11 +371,11 @@ <<COptions "a switchboard operator" >> <<print " | ">> <<COptions "a tailor" >> - <<print " | ">> + <br> <<COptions "a taxi driver" >> <<print " | ">> <<COptions "a terrorist" >> - <br> + <<print " | ">> <<COptions "a tour guide" >> <<print " | ">> <<COptions "a train conductor" >> @@ -387,17 +391,21 @@ <<COptions "an arcade attendant" >> <<print " | ">> <<COptions "an electrician" >> - <<print " | ">> + <br> <<COptions "an engineer" >> <<print " | ">> <<COptions "an exterminator" >> - <br> + <<print " | ">> + <<COptions "an installation technician" >> + <<print " | ">> <<COptions "an intern" >> <br> <br>Entertainment Careers<br> <<COptions "a ballerina" >> <<print " | ">> + <<COptions "a blogger" >> + <<print " | ">> <<COptions "a camgirl" >> <<print " | ">> <<COptions "a camwhore" >> @@ -412,39 +420,57 @@ <<print " | ">> <<COptions "a comedian" >> <<print " | ">> + <<COptions "a gymnast" >> + <br> <<COptions "a journalist" >> <<print " | ">> <<COptions "a local news anchor" >> - <br> + <<print " | ">> <<COptions "a magician's assistant" >> <<print " | ">> - <<COptions "a marching band leader" >> + <<COptions "a medium" >> + <<print " | ">> + <<COptions "a mime" >> + <<print " | ">> + <<COptions "a painter" >> <<print " | ">> <<COptions "a party girl" >> <<print " | ">> - <<COptions "a racing driver" >> + <<COptions "a photographer" >> <<print " | ">> - <<COptions "a rodeo star" >> + <<COptions "a poet" >> + <<print " | ">> + <<COptions "a racing driver" >> + <br> + <<COptions "a sculptor" >> <<print " | ">> <<COptions "a stage magician" >> <<print " | ">> <<COptions "a street performer" >> <<print " | ">> + <<COptions "a student athlete" >> + <<print " | ">> <<COptions "a stuntwoman" >> <<print " | ">> <<COptions "a video game streamer" >> <<print " | ">> <<COptions "a waitress" >> - <br> + <<print " | ">> <<COptions "a weathergirl" >> <<print " | ">> <<COptions "a wrestler" >> <<print " | ">> <<COptions "a writer" >> + <br> + <<COptions "an acrobat" >> <<print " | ">> <<COptions "an actress" >> <<print " | ">> + <<COptions "an animator" >> + <<print " | ">> <<COptions "an artist" >> + <<print " | ">> + <<COptions "an athlete" >> <br> <br>Whore Careers<br> @@ -489,11 +515,33 @@ <<COptions "an exotic dancer" >> <br> + <br>Servant Careers<br> + <<COptions "a butler" >> + <<print " | ">> + <<COptions "a cook" >> + <<print " | ">> + <<COptions "a handmaiden" >> + <<print " | ">> + <<COptions "a housewife" >> + <<print " | ">> + <<COptions "a maid" >> + <<print " | ">> + <<COptions "a shrine maiden" >> + <br> + <br>HeadGirl Careers<br> + <<COptions "a captain" >> + <<print " | ">> <<COptions "a corporate executive" >> <<print " | ">> + <<COptions "a director" >> + <<print " | ">> + <<COptions "a dominatrix" >> + <<print " | ">> <<COptions "a gang leader" >> <<print " | ">> + <<COptions "a judge" >> + <<print " | ">> <<COptions "a lawyer" >> <<print " | ">> <<COptions "a leading arcology citizen" >> @@ -501,39 +549,25 @@ <<COptions "a military officer" >> <<print " | ">> <<COptions "a model-UN star" >> + <br> + <<COptions "a noblewoman" >> <<print " | ">> <<COptions "a politician" >> <<print " | ">> <<COptions "a Queen" >> <<print " | ">> - <<COptions "a student council president" >> - <br> - - <br>Recruiter Careers<br> - <<COptions "a club recruiter" >> - <<print " | ">> - <<COptions "a college scout" >> - <<print " | ">> - <<COptions "a con artist" >> + <<COptions "a slaver" >> <<print " | ">> - <<COptions "a cult leader" >> - <<print " | ">> - <<COptions "a girl scout" >> - <<print " | ">> - <<COptions "a military recruiter" >> - <<print " | ">> - <<COptions "a missionary" >> - <<print " | ">> - <<COptions "a political activist" >> - <<print " | ">> - <<COptions "a princess" >> - <<print " | ">> - <<COptions "a talent scout" >> + <<COptions "a student council president" >> <br> <br>Madam Careers<br> + <<COptions "a banker" >> + <<print " | ">> <<COptions "a business owner" >> <<print " | ">> + <<COptions "a businessman" >> + <<print " | ">> <<COptions "a camp counselor" >> <<print " | ">> <<COptions "a club manager" >> @@ -546,10 +580,14 @@ <<print " | ">> <<COptions "a manager" >> <<print " | ">> + <<COptions "a park ranger" >> + <br> <<COptions "a pimp" >> <<print " | ">> <<COptions "a procuress" >> <<print " | ">> + <<COptions "a stockbroker" >> + <<print " | ">> <<COptions "an innkeeper" >> <br> @@ -562,6 +600,8 @@ <<print " | ">> <<COptions "a house DJ" >> <<print " | ">> + <<COptions "a marching band leader" >> + <<print " | ">> <<COptions "a musician" >> <<print " | ">> <<COptions "a radio show host" >> @@ -569,15 +609,21 @@ <<COptions "an aspiring pop star" >> <<print " | ">> <<COptions "an idol" >> + <<print " | ">> + <<COptions "an orchestra conductor" >> <br> <br>Bodyguard Careers<br> <<COptions "a bodyguard" >> <<print " | ">> + <<COptions "a boxer" >> + <<print " | ">> <<COptions "a bully hunter" >> <<print " | ">> <<COptions "a child soldier" >> <<print " | ">> + <<COptions "a hitman" >> + <<print " | ">> <<COptions "a kunoichi" >> <<print " | ">> <<COptions "a law enforcement officer" >> @@ -587,11 +633,13 @@ <<COptions "a prince" >> <<print " | ">> <<COptions "a revolutionary" >> + <br> + <<COptions "a sniper" >> <<print " | ">> <<COptions "a soldier" >> <<print " | ">> <<COptions "a transporter" >> - <br> + <<print " | ">> <<COptions "an assassin" >> <<print " | ">> <<COptions "an MS pilot" >> @@ -599,6 +647,8 @@ <<COptions "captain of the kendo club" >> <<print " | ">> <<COptions "in a militia" >> + <<print " | ">> + <<COptions "spec ops" >> <br> <br>Wardeness Careers<br> @@ -618,10 +668,12 @@ <<print " | ">> <<COptions "a police detective" >> <<print " | ">> - <<COptions "a prison guard" >> + <<COptions "a police officer" >> <<print " | ">> - <<COptions "a prison warden" >> + <<COptions "a prison guard" >> <br> + <<COptions "a prison warden" >> + <<print " | ">> <<COptions "a private detective" >> <<print " | ">> <<COptions "a security guard" >> @@ -629,9 +681,17 @@ <<COptions "a street thug" >> <<print " | ">> <<COptions "an enforcer" >> + <<print " | ">> + <<COptions "an orderly" >> <br> <br>Nurse Careers<br> + <<COptions "a chemist" >> + <<print " | ">> + <<COptions "a chiropractor" >> + <<print " | ">> + <<COptions "a coroner" >> + <<print " | ">> <<COptions "a dentist" >> <<print " | ">> <<COptions "a doctor" >> @@ -644,21 +704,25 @@ <<print " | ">> <<COptions "a midwife" >> <<print " | ">> + <<COptions "a mortician" >> + <br> <<COptions "a nurse" >> <<print " | ">> <<COptions "a paramedic" >> <<print " | ">> <<COptions "a pharmacist" >> <<print " | ">> + <<COptions "a physician" >> + <<print " | ">> <<COptions "a school nurse" >> - <br> + <<print " | ">> <<COptions "a school nurse's assistant" >> <<print " | ">> <<COptions "a surgeon" >> <br> <br>Attendant Careers<br> - <<COptions "a babysitter" >> + <<COptions "a barber" >> <<print " | ">> <<COptions "a cosmetologist" >> <<print " | ">> @@ -666,6 +730,10 @@ <<print " | ">> <<COptions "a dispatch officer" >> <<print " | ">> + <<COptions "a fortune teller" >> + <<print " | ">> + <<COptions "a groomer" >> + <<print " | ">> <<COptions "a latchkey kid" >> <<print " | ">> <<COptions "a lifeguard" >> @@ -673,16 +741,26 @@ <<COptions "a masseuse" >> <<print " | ">> <<COptions "a mediator" >> - <<print " | ">> - <<COptions "a nanny" >> + <br> + <<COptions "a personal trainer" >> <<print " | ">> <<COptions "a police negotiator" >> - <br> + <<print " | ">> <<COptions "a psychologist" >> <<print " | ">> <<COptions "a therapist" >> <<print " | ">> <<COptions "a yoga instructor" >> + <br> + + <br>Matron Careers<br> + <<COptions "a babysitter" >> + <<print " | ">> + <<COptions "a nanny" >> + <<print " | ">> + <<COptions "a practitioner" >> + <<print " | ">> + <<COptions "a wet nurse" >> <<print " | ">> <<COptions "an au pair" >> <br> @@ -692,8 +770,6 @@ <<print " | ">> <<COptions "a dairy worker" >> <<print " | ">> - <<COptions "a farmer" >> - <<print " | ">> <<COptions "a farmer's daughter" >> <<print " | ">> <<COptions "a milkmaid" >> @@ -703,6 +779,20 @@ <<COptions "a shepherd" >> <<print " | ">> <<COptions "a veterinarian" >> + <br> + + <br>Farmer Careers<br> + <<COptions "a beekeeper" >> + <<print " | ">> + <<COptions "a bullfighter" >> + <<print " | ">> + <<COptions "a farmer" >> + <<print " | ">> + <<COptions "a farmhand" >> + <<print " | ">> + <<COptions "a rancher" >> + <<print " | ">> + <<COptions "a rodeo star" >> <<print " | ">> <<COptions "a zookeeper" >> <br> @@ -712,6 +802,8 @@ <<print " | ">> <<COptions "a bartender" >> <<print " | ">> + <<COptions "a brewer" >> + <<print " | ">> <<COptions "a bureaucrat" >> <<print " | ">> <<COptions "a caregiver" >> @@ -722,12 +814,14 @@ <<print " | ">> <<COptions "a concierge" >> <<print " | ">> - <<COptions "a housesitter" >> + <<COptions "a housekeeper" >> <<print " | ">> + <<COptions "a housesitter" >> + <br> <<COptions "a lemonade stand operator" >> <<print " | ">> <<COptions "a personal assistant" >> - <br> + <<print " | ">> <<COptions "a professional bartender" >> <<print " | ">> <<COptions "a secretary" >> @@ -736,10 +830,14 @@ <<print " | ">> <<COptions "an air hostess" >> <<print " | ">> + <<COptions "an architect" >> + <<print " | ">> + <<COptions "an editor" >> + <<print " | ">> <<COptions "an estate agent" >> <<print " | ">> <<COptions "an investor" >> - <<print " | ">> + <br> <<COptions "an office worker" >> <br> @@ -750,6 +848,8 @@ <<print " | ">> <<COptions "a dean" >> <<print " | ">> + <<COptions "a historian" >> + <<print " | ">> <<COptions "a librarian" >> <<print " | ">> <<COptions "a principal" >> @@ -761,24 +861,70 @@ <<COptions "a scholar" >> <<print " | ">> <<COptions "a scientist" >> - <<print " | ">> - <<COptions "a teacher" >> <br> + <<COptions "a teacher" >> + <<print " | ">> <<COptions "a teacher's pet" >> <<print " | ">> <<COptions "a teaching assistant" >> + <<print " | ">> + <<COptions "an archaeologist" >> + <<print " | ">> + <<COptions "an astronaut" >> + <<print " | ">> + <<COptions "an economist" >> + <br> + + <br>Recruiter Careers<br> + <<COptions "a club recruiter" >> + <<print " | ">> + <<COptions "a college scout" >> + <<print " | ">> + <<COptions "a con artist" >> + <<print " | ">> + <<COptions "a cult leader" >> + <<print " | ">> + <<COptions "a girl scout" >> + <<print " | ">> + <<COptions "a military recruiter" >> + <<print " | ">> + <<COptions "a missionary" >> + <<print " | ">> + <<COptions "a political activist" >> + <<print " | ">> + <<COptions "a princess" >> + <<print " | ">> + <<COptions "a spy" >> + <br> + <<COptions "a talent scout" >> + <<print " | ">> + <<COptions "retired" >> <br> <br>Others<br> + <<COptions "a bioreactor" >> + <<print " | ">> <<COptions "a breeder" >> <<print " | ">> - <<COptions "a Futanari Sister" >> + <<COptions "a breeding bull" >> <<print " | ">> - <<COptions "a fuckdoll" >> + <<COptions "a dairy cow" >> <<print " | ">> - <<COptions "a bioreactor" >> + <<COptions "a dairy slave" >> + <<print " | ">> + <<COptions "a Fuckdoll" >> + <<print " | ">> + <<COptions "a producer" >> <<print " | ">> <<COptions "a slave" >> + <<print " | ">> + <<COptions "a slave since birth" >> + <<print " | ">> + <<COptions "being homeschooled by her parents" >> + <br> + <<COptions "from a middle class family" >> + <<print " | ">> + <<COptions "from an upper class family" >> <br> <</replace>> <<else>> @@ -1516,7 +1662,7 @@ <br> <<radiobutton "$tempSlave.smells" 0>> Normal <<radiobutton "$tempSlave.smells" -1>> None - <br> + <br><br> ''Horn Type: @@.yellow;$tempSlave.horn@@ '' <br> @@ -2671,7 +2817,7 @@ <<elseif $tempSlave.pregType == 2>> @@.yellow;Twins@@. <<elseif $tempSlave.pregType == 3>> - @@.yellow;Triples@@. + @@.yellow;Triplets@@. <<elseif $tempSlave.pregType == 4>> @@.yellow;Quadruplets@@. <<elseif $tempSlave.pregType > 4>> @@ -3004,7 +3150,7 @@ <<radiobutton "$tempSlave.intelligence" 30>> Smart <<radiobutton "$tempSlave.intelligence" 60>> Very Smart <<radiobutton "$tempSlave.intelligence" 100>> Brilliant - <br> + <br><br> ''Education (0 to 30):'' <<if $tempSlave.intelligenceImplant >= 30>> @@.deepskyblue;Well Educated.@@ @@ -3148,6 +3294,11 @@ <</widget>> <<widget StatisticTab>> + <br> + ''Milk Lactated: ''@@.yellow;$tempSlave.counter.milk@@ | + <<textbox "$tempSlave.counter.milk" $tempSlave.counter.milk>><br> + ''Cum Ejaculated: ''@@.yellow;$tempSlave.counter.cum@@ | + <<textbox "$tempSlave.counter.cum" $tempSlave.counter.cum>><br> <br> ''Penetrative Sex: ''@@.yellow;$tempSlave.counter.penetrative@@ | <<textbox "$tempSlave.counter.penetrative" $tempSlave.counter.penetrative>><br> @@ -3162,10 +3313,21 @@ ''Titjobs: ''@@.yellow;$tempSlave.counter.mammary@@ | <<textbox "$tempSlave.counter.mammary" $tempSlave.counter.mammary>><br> <br> + ''Births in Arcology: ''@@.yellow;$tempSlave.counter.births@@ | + <<textbox "$tempSlave.counter.births" $tempSlave.counter.births>><br> ''Total Births: ''@@.yellow;$tempSlave.counter.birthsTotal@@ | <<textbox "$tempSlave.counter.birthsTotal" $tempSlave.counter.birthsTotal>><br> ''Kills in the Pit: ''@@.yellow;$tempSlave.counter.pitKills@@ | <<textbox "$tempSlave.counter.pitKills" $tempSlave.counter.pitKills>><br> + <br> + ''Times Impregnated Other Slaves: ''@@.yellow;$tempSlave.counter.slavesKnockedUp@@ | + <<textbox "$tempSlave.counter.slavesKnockedUp" $tempSlave.counter.slavesKnockedUp>><br> + ''Times Impregnated You: ''@@.yellow;$tempSlave.counter.PCKnockedUp@@ | + <<textbox "$tempSlave.counter.PCKnockedUp" $tempSlave.counter.PCKnockedUp>><br> + ''Times Fathered Slaves' Children: ''@@.yellow;$tempSlave.counter.slavesFathered@@ | + <<textbox "$tempSlave.counter.slavesFathered" $tempSlave.counter.slavesFathered>><br> + ''Times Fathered Your Children: ''@@.yellow;$tempSlave.counter.PCChildrenFathered@@ | + <<textbox "$tempSlave.counter.PCChildrenFathered" $tempSlave.counter.PCChildrenFathered>><br> <</widget>> <<widget FlaQuiTab>> @@ -3320,7 +3482,7 @@ <<radiobutton "$tempSlave.geneticQuirks.fertility" 1>> Carrier <<radiobutton "$tempSlave.geneticQuirks.fertility" 2>> Active <br> - ''hyperFertility: '' + ''Hyperfertility: '' <<switch $tempSlave.geneticQuirks.hyperFertility >> <<case 0 >> @@.yellow;none@@ | @@ -3462,7 +3624,7 @@ /* <<textbox "$tempSlave.geneticQuirks.heterochromia" $tempSlave.geneticQuirks.heterochromia>> */ <span id=ecol3></span> <br> - ''rear Lipedema: '' + ''Rear Lipedema: '' <<switch $tempSlave.geneticQuirks.rearLipedema>> <<case 0 >> @@.yellow;none@@ | diff --git a/src/endWeek/saServant.js b/src/endWeek/saServant.js index 576d273a637bd296e629e5d22a575eb2b3f55c34..d0923cdef03bef49268d0e43e30f324164bcec54 100644 --- a/src/endWeek/saServant.js +++ b/src/endWeek/saServant.js @@ -118,19 +118,20 @@ window.saServant = function saServant(slave) { } if (V.showVignettes === 1 && (slave.assignment === Job.SERVANT || slave.assignment === Job.SERVER)) { - const _vignette = GetVignette(slave); - t += ` __This week__ ${_vignette.text} `; - if (_vignette.type === "cash") { - if (_vignette.effect > 0) { - t += `<span class="yellowgreen">making you an extra ${cashFormat(Math.trunc(V.FResult*_vignette.effect))}.</span>`; - } else if (_vignette.effect < 0) { - t += `<span class="red">losing you ${cashFormat(Math.abs(Math.trunc(V.FResult*_vignette.effect)))}.</span>`; + const vignette = GetVignette(slave); + t += ` __This week__ ${vignette.text} `; + if (vignette.type === "cash") { + let modifier = FResult(slave); + if (vignette.effect > 0) { + t += `<span class="yellowgreen">making you an extra ${cashFormat(Math.trunc(modifier * vignette.effect))}.</span>`; + } else if (vignette.effect < 0) { + t += `<span class="red">losing you ${cashFormat(Math.abs(Math.trunc(modifier * vignette.effect)))}.</span>`; } else { t += `an incident without lasting effect.`; } - cashX(Math.trunc(V.FResult * _vignette.effect), "houseServant", slave); - } else if (_vignette.type === "devotion") { - if (_vignette.effect > 0) { + cashX(Math.trunc(modifier * vignette.effect), "houseServant", slave); + } else if (vignette.type === "devotion") { + if (vignette.effect > 0) { if (slave.devotion > 50) { t += `<span class="hotpink">increasing ${his} devotion to you.</span>`; } else if (slave.devotion >= -20) { @@ -140,7 +141,7 @@ window.saServant = function saServant(slave) { } else { t += `<span class="hotpink">reducing ${his} hatred of you.</span>`; } - } else if (_vignette.effect < 0) { + } else if (vignette.effect < 0) { if (slave.devotion > 50) { t += `<span class="mediumorchid">reducing ${his} devotion to you.</span>`; } else if (slave.devotion >= -20) { @@ -153,9 +154,9 @@ window.saServant = function saServant(slave) { } else { t += `an incident without lasting effect.`; } - slave.devotion += (1 * _vignette.effect); - } else if (_vignette.type === "trust") { - if (_vignette.effect > 0) { + slave.devotion += (1 * vignette.effect); + } else if (vignette.type === "trust") { + if (vignette.effect > 0) { if (slave.trust > 20) { t += `<span class="mediumaquamarine">increasing ${his} trust in you.</span>`; } else if (slave.trust > -10) { @@ -163,7 +164,7 @@ window.saServant = function saServant(slave) { } else { t += `<span class="mediumaquamarine">reducing ${his} terror of you.</span>`; } - } else if (_vignette.effect < 0) { + } else if (vignette.effect < 0) { if (slave.trust > 20) { t += `<span class="gold">reducing ${his} trust in you.</span>`; } else if (slave.trust >= -20) { @@ -174,25 +175,26 @@ window.saServant = function saServant(slave) { } else { t += `an incident without lasting effect.`; } - slave.trust += (1 * _vignette.effect); - } else if (_vignette.type === "health") { - if (_vignette.effect > 0) { + slave.trust += (1 * vignette.effect); + } else if (vignette.type === "health") { + if (vignette.effect > 0) { t += `<span class="green">improving ${his} health.</span>`; - } else if (_vignette.effect < 0) { + } else if (vignette.effect < 0) { t += `<span class="red">affecting ${his} health.</span>`; } else { t += `an incident without lasting effect.`; } - slave.health += (2 * _vignette.effect); + slave.health += (2 * vignette.effect); } else { - if (_vignette.effect > 0) { + let modifier = FResult(slave); + if (vignette.effect > 0) { t += `<span class="green">gaining you a bit of reputation.</span>`; - } else if (_vignette.effect < 0) { + } else if (vignette.effect < 0) { t += `<span class="red">losing you a bit of reputation.</span>`; } else { t += `an incident without lasting effect.`; } - repX((V.FResult * _vignette.effect * 0.1), "vignette", slave); + repX((modifier * vignette.effect * 0.1), "vignette", slave); } } diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw index 8ff72a505523406d1f1f5a618b398b2f99fda8e1..1189556739d53aafe5293f7caba0144f3124b80f 100644 --- a/src/events/intro/introSummary.tw +++ b/src/events/intro/introSummary.tw @@ -1188,7 +1188,7 @@ __''Player Character''__ <<if $imageChoice == 1>> <br> <div style="position:relative;width:200px;height:200px;margin:0 auto;"> - <<SlaveArt _exampleSlave 0 0>> + <<= SlaveArt(_exampleSlave, 0, 0)>> </div> <br> <<options $seeFaces>> @@ -1219,12 +1219,12 @@ __''Player Character''__ <<elseif $imageChoice == 2>> <br> <div style="position:relative;width:200px;height:200px;margin:0 auto;"> - <<SlaveArt _exampleSlave 0 0>> + <<= SlaveArt(_exampleSlave, 0, 0)>> </div> <<elseif $imageChoice == 3>> <br> <div style="position:relative;width:200px;height:200px;margin:0 auto;"> - <<SlaveArt _exampleSlave 0 0>> + <<= SlaveArt(_exampleSlave, 0, 0)>> </div> <br> <<options $seeVectorArtHighlights>> diff --git a/src/facilities/brothel/brothelAssignmentScene.tw b/src/facilities/brothel/brothelAssignmentScene.tw index 87224360d83511f2bfd1c186df129f245189f5bd..3a589a4e3ee9ac1a22aa014bff8816144d98dfb2 100644 --- a/src/facilities/brothel/brothelAssignmentScene.tw +++ b/src/facilities/brothel/brothelAssignmentScene.tw @@ -8,9 +8,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/facilities/farmyard/farmyardFramework.js b/src/facilities/farmyard/farmyardFramework.js index 3d7496571ae1ad1b7bbf4cd3c6f9ca2c11ba3386..7b2c17271b64a24016bdb4d5aa2df725b99780db 100644 --- a/src/facilities/farmyard/farmyardFramework.js +++ b/src/facilities/farmyard/farmyardFramework.js @@ -29,4 +29,4 @@ App.Data.Facilities.farmyard = { App.Entity.facilities.farmyard = new App.Entity.Facilities.SingleJobFacility( App.Data.Facilities.farmyard -); +); \ No newline at end of file diff --git a/src/facilities/farmyard/farmyardReport.tw b/src/facilities/farmyard/farmyardReport.tw index cb3ac738b904513bd4fb0c08ad53391662c03fbf..411652d0455edcbd18e75a25afb8b3a101b8a071 100644 --- a/src/facilities/farmyard/farmyardReport.tw +++ b/src/facilities/farmyard/farmyardReport.tw @@ -170,7 +170,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -241,7 +241,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/facilities/nursery/childSummary.tw b/src/facilities/nursery/childSummary.tw index 35f8efbff88e59a4646bb1cb06c6631e30e7a496..1afa46531d55cb22ec4d3b620b35287244a07f04 100644 --- a/src/facilities/nursery/childSummary.tw +++ b/src/facilities/nursery/childSummary.tw @@ -100,7 +100,7 @@ <<set _chosenClothes = saChoosesOwnClothes(_Child)>> <<set $cribs[_csi].devotion = _oldDevotion, _Child = $cribs[_csi]>> /* restore devotion value so repeatedly changing clothes isn't an exploit */ <</if>> - <br style="clear:both"><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Child 1>></div><</if>> + <br style="clear:both"><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<= SlaveArt(_Child, 1)>></div><</if>> <<if "be your Head Girl" == _Child.assignment>>''@@.lightcoral;HG@@'' <<elseif "recruit girls" == _Child.assignment>>''@@.lightcoral;RC@@'' <<elseif "guard you" == _Child.assignment>>''@@.lightcoral;BG@@'' @@ -110,7 +110,7 @@ /* TODO: will the PC be able to give children PA? */ <<case "Personal Attention Select">> - <br style="clear:both"><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Child 1>></div><</if>> + <br style="clear:both"><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<= SlaveArt(_Child, 1)>></div><</if>> <<link _childName>> <<if !Array.isArray($personalAttention)>> /* first PA target */ <<set $personalAttention = [{ID: $cribs[_csi].ID, trainingRegimen: "undecided"}]>> diff --git a/src/facilities/nursery/longChildDescription.tw b/src/facilities/nursery/longChildDescription.tw index f1cc1ff88d26c7bc3f73628bd72df5a64c047f87..4a1ebb19e48f6c9c71db572756ea21e1b447ccd2 100644 --- a/src/facilities/nursery/longChildDescription.tw +++ b/src/facilities/nursery/longChildDescription.tw @@ -7,9 +7,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeChild 3 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeChild, 3, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeChild 3 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeChild, 3, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/facilities/nursery/nursery.tw b/src/facilities/nursery/nursery.tw index da052095f97c96cc0c9e215cac5b2104e9a6bdd1..a6593bec57a83064270e20a76f86bd52ed0559f4 100644 --- a/src/facilities/nursery/nursery.tw +++ b/src/facilities/nursery/nursery.tw @@ -143,115 +143,118 @@ $nurseryNameCaps Reserve an eligible mother-to-be's child to be placed in a room upon birth. Of $nursery rooms, <<print $freeCribs>> <<if $freeCribs == 1>>is<<else>>are<</if>> unoccupied. Of those, $reservedChildrenNursery room<<if $reservedChildrenNursery == 1>> is<<else>>s are<</if>> reserved. <<if (0 < _SL)>> - <<set $sortNurseryList = $sortNurseryList || 'Unsorted'>> - <br>//Sorting:// ''<span id="qlNurserySort">$sortNurseryList</span>.'' - <<link "Sort by Name">> - <<set $sortNurseryList = 'Name'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> - <<script>> - sortNurseryPossiblesByName(); - <</script>> - <</link>> | - <<link "Sort by Reserved Nursery Spots">> - <<set $sortNurseryList = 'Reserved Nursery Spots'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> - <<script>> - sortNurseryPossiblesByReservedSpots(); - <</script>> - <</link>> | - <<link "Sort by Pregnancy Week">> - <<set $sortNurseryList = 'Pregnancy Week'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> - <<script>> - sortNurseryPossiblesByPregnancyWeek(); - <</script>> - <</link>> | - <<link "Sort by Number of Children">> - <<set $sortNurseryList = 'Number of Children'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> - <<script>> - sortNurseryPossiblesByPregnancyCount(); - <</script>> - <</link>> - <br> + <<set $sortNurseryList = $sortNurseryList || 'Unsorted'>> + <br>//Sorting:// ''<span id="qlNurserySort">$sortNurseryList</span>.'' + <<link "Sort by Name">> + <<set $sortNurseryList = 'Name'>> + <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<script>> + sortNurseryPossiblesByName(); + <</script>> + <</link>> | + <<link "Sort by Reserved Nursery Spots">> + <<set $sortNurseryList = 'Reserved Nursery Spots'>> + <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<script>> + sortNurseryPossiblesByReservedSpots(); + <</script>> + <</link>> | + <<link "Sort by Pregnancy Week">> + <<set $sortNurseryList = 'Pregnancy Week'>> + <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<script>> + sortNurseryPossiblesByPregnancyWeek(); + <</script>> + <</link>> | + <<link "Sort by Number of Children">> + <<set $sortNurseryList = 'Number of Children'>> + <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<script>> + sortNurseryPossiblesByPregnancyCount(); + <</script>> + <</link>> + <br> <</if>> <div id="qlNursery"> <<for _u = 0; _u < _SL; _u++>> <<setLocalPronouns $slaves[_u]>> <<if $slaves[_u].preg > 0 && $slaves[_u].broodmother == 0 && $slaves[_u].pregKnown == 1 && $slaves[_u].eggType == "human">> - <<if $slaves[_u].assignment == "work in the dairy" && $dairyPregSetting > 0>> - <<else>> - <<set _slaveId = "slave-" + $slaves[_u].ID>> - <<set _WL = $slaves[_u].womb.length>> - <<set _reservedNursery = WombReserveCount($slaves[_u], "nursery")>> - <<set _reservedIncubator = WombReserveCount($slaves[_u], "incubator")>> - <<set _pregWeek = $slaves[_u].pregWeek>> - <<set _slaveName = SlaveFullName($slaves[_u])>> - <div class="possible" @id="_slaveId" @data-preg-count="_WL" @data-reserved-spots="_reservedNursery" @data-preg-week="_pregWeek" @data-name="_slaveName"> - <<print "[[_slaveName|Long Slave Description][$activeSlave = $slaves[" + _u + "], $nextLink = passage()]]">> is $slaves[_u].pregWeek weeks pregnant with - <<if $slaves[_u].pregSource == 0 || $slaves[_u].preg <= 5>>someone's<<if $slaves[_u].preg <= 5>>, though it is too early to tell whose,<</if>> - <<elseif $slaves[_u].pregSource == -1>>your - <<elseif $slaves[_u].pregSource == -2>>a citizen's - <<elseif $slaves[_u].pregSource == -3>>your Master's - <<elseif $slaves[_u].pregSource == -7>>the lab's - <<elseif $slaves[_u].pregSource == -9>>the Futanari Sisters' + <<if $slaves[_u].assignment == "work in the dairy" && $dairyPregSetting > 0>> <<else>> - <<set _t = $slaveIndices[$slaves[_u].pregSource]>> - <<if def _t>> - <<print $slaves[_t].slaveName>>'s - <</if>> - <</if>> - <<if _WL > 1>>_WL babies<<else>>baby<</if>>. - <<if _reservedNursery > 0>> - <<set _childrenReservedNursery = 1>> - <<if _WL == 1>> - $His child will be placed in $nurseryName. - <<elseif _reservedNursery < _WL>> - _reservedNursery of $his children will be placed in $nurseryName. - <<elseif _WL == 2>> - Both of $his children will be placed in $nurseryName. + <<set _slaveId = "slave-" + $slaves[_u].ID>> + <<set _WL = $slaves[_u].womb.length>> + <<set _reservedNursery = WombReserveCount($slaves[_u], "nursery")>> + <<set _reservedIncubator = WombReserveCount($slaves[_u], "incubator")>> + <<set _pregWeek = $slaves[_u].pregWeek>> + <<set _slaveName = SlaveFullName($slaves[_u])>> + <div class="possible" @id="_slaveId" @data-preg-count="_WL" @data-reserved-spots="_reservedNursery" @data-preg-week="_pregWeek" @data-name="_slaveName"> + <<print "[[_slaveName|Long Slave Description][$activeSlave = $slaves[" + _u + "], $nextLink = passage()]]">> is $slaves[_u].pregWeek weeks pregnant with + <<if $slaves[_u].pregSource == 0 || $slaves[_u].preg <= 5>>someone's<<if $slaves[_u].preg <= 5>>, though it is too early to tell whose,<</if>> + <<elseif $slaves[_u].pregSource == -1>>your + <<elseif $slaves[_u].pregSource == -2>>a citizen's + <<elseif $slaves[_u].pregSource == -3>>your Master's + <<elseif $slaves[_u].pregSource == -4>>another arcology owner's + <<elseif $slaves[_u].pregSource == -5>>your client's + <<elseif $slaves[_u].pregSource == -6>>the Societal Elite's + <<elseif $slaves[_u].pregSource == -7>>the lab's + <<elseif $slaves[_u].pregSource == -9>>the Futanari Sisters' <<else>> - All _reservedNursery of $his children will be placed in $nurseryName. + <<set _t = $slaveIndices[$slaves[_u].pregSource]>> + <<if def _t>> + <<print $slaves[_t].slaveName>>'s + <</if>> <</if>> - <<if (_reservedIncubator + _reservedNursery < _WL) && ($reservedChildrenNursery < $freeCribs)>> - <br> - <<print "[[Keep another child|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> - <<if _reservedNursery > 0>> - | <<print "[[Keep one less child|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> + <<if _WL > 1>>_WL babies<<else>>baby<</if>>. + <<if _reservedNursery > 0>> + <<set _childrenReservedNursery = 1>> + <<if _WL == 1>> + $His child will be placed in $nurseryName. + <<elseif _reservedNursery < _WL>> + _reservedNursery of $his children will be placed in $nurseryName. + <<elseif _WL == 2>> + Both of $his children will be placed in $nurseryName. + <<else>> + All _reservedNursery of $his children will be placed in $nurseryName. <</if>> - <<if _reservedNursery > 1>> - | <<print "[[Keep none of " + $his + " children|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> + <<if (_reservedIncubator + _reservedNursery < _WL) && ($reservedChildrenNursery < $freeCribs)>> + <br> + <<print "[[Keep another child|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> + <<if _reservedNursery > 0>> + | <<print "[[Keep one less child|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> + <</if>> + <<if _reservedNursery > 1>> + | <<print "[[Keep none of " + $his + " children|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> + <</if>> + <<if ($reservedChildrenNursery + _WL - _reservedNursery) <= $freeCribs>> + | <<print "[[Keep the rest of " + $his + " children|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> + <</if>> + <<elseif (_reservedNursery == _WL) || ($reservedChildrenNursery == $freeCribs) || (_reservedIncubator + _reservedNursery == _WL)>> + <br> + <<print "[[Keep one less child|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> + <<if _reservedNursery > 1>> + | <<print "[[Keep none of " + $his + " children|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> + <</if>> <</if>> - <<if ($reservedChildrenNursery + _WL - _reservedNursery) <= $freeCribs>> - | <<print "[[Keep the rest of " + $his + " children|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> + <<elseif ($reservedChildrenNursery < $freeCribs) && ($freeCribs > _WL)>> + <<if _WL - _reservedIncubator == 0>> + //$His children are already reserved for $incubatorName// + <br> + <<print "[[Keep " + $his + " " + ((_WL > 1) ? "children" : "child") + " here instead|Nursery][WombChangeReserveType($slaves[" + _u + "], 'incubator', 'nursery')]]">> + <<else>> + You have <<if $freeCribs == 1>>an<</if>> @@.lime;available room<<if $freeCribs > 1>>s<</if>>.@@ + <br> + <<print "[[Keep "+ ((_WL > 1) ? "a" : "the") +" child|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> + <<if (_WL > 1) && ($reservedChildrenNursery + _WL - _reservedNursery) <= $freeCribs>> + | <<print "[[Keep all of " + $his + " children|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> + <</if>> <</if>> - <<elseif (_reservedNursery == _WL) || ($reservedChildrenNursery == $freeCribs) || (_reservedIncubator + _reservedNursery == _WL)>> + <<elseif $reservedChildrenNursery == $freeCribs>> <br> - <<print "[[Keep one less child|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> - <<if _reservedNursery > 1>> - | <<print "[[Keep none of " + $his + " children|Nursery][WombCleanGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> - <</if>> + You have @@.red;no room for $his offspring.@@ <</if>> - <<elseif ($reservedChildrenNursery < $freeCribs) && ($freeCribs > _WL)>> - <<if _WL - _reservedIncubator == 0>> - //$His children are already reserved for $incubatorName// - <br> - <<print "[[Keep " + $his + " " + ((_WL > 1) ? "children" : "child") + " here instead|Nursery][WombChangeReserveType($slaves[" + _u + "], 'incubator', 'nursery')]]">> - <<else>> - You have <<if $freeCribs == 1>>an<</if>> @@.lime;available room<<if $freeCribs > 1>>s<</if>>.@@ - <br> - <<print "[[Keep "+ ((_WL > 1) ? "a" : "the") +" child|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 1)]]">> - <<if (_WL > 1) && ($reservedChildrenNursery + _WL - _reservedNursery) <= $freeCribs>> - | <<print "[[Keep all of " + $his + " children|Nursery][WombAddToGenericReserve($slaves[" + _u + "], 'nursery', 9999)]]">> - <</if>> - <</if>> - <<elseif $reservedChildrenNursery == $freeCribs>> - <br> - You have @@.red;no room for $his offspring.@@ + <<set _eligibility = 1>> + </div> <</if>> - <<set _eligibility = 1>> - </div> - <</if>> <</if>> <</for>> </div> @@ -262,29 +265,16 @@ Reserve an eligible mother-to-be's child to be placed in a room upon birth. Of $ <br> //You have no pregnant slaves bearing eligible children.// <</if>> -<<if $PC.pregKnown == 1 && $PC.pregSource != -6>> +<<if $PC.pregKnown == 1 && ($arcologies[0].FSRestart == "unset" || $eugenicsFullControl == 1 || ($PC.pregSource != -1 && $PC.pregSource != -6))>> <<set _WL = $PC.womb.length>> <<set _reservedIncubator = WombReserveCount($PC, "incubator")>> <<set _reservedNursery = WombReserveCount($PC, "nursery")>> <br>''@@.pink;You're pregnant@@'' and going to have - <<switch _WL>> - <<case 1>> + <<if _WL == 1>> a baby. - <<case 2>> - twins. - <<case 3>> - triplets. - <<case 4>> - quadruplets. - <<case 5>> - quintuplets. - <<case 6>> - sextuplets. - <<case 7>> - septuplets. - <<case 8>> - octuplets. - <</switch>> + <<else>> + <<print pregNumberName(_WL, 1)>> + <</if>> <<if _reservedNursery > 0>> <<set _childrenReservedNursery = 1>> <<if _WL == 1>> @@ -531,66 +521,66 @@ Filter by assignment: | <<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>> -<<set _j = "Back", _k = "AC Dump", _l = "Main">> -<<for $i = 0; $i < _CL; $i++>> -<<if ($cribs[$i].assignment == "please you")>> - <<setLocalPronouns $cribs[$i]>> - <br><<include "Toychest">> //In the coming week you plan to concentrate on - <<if $cribs[$i].fuckdoll == 0>> - <<if $cribs[$i].toyHole != "all her holes">> - $his $cribs[$i].toyHole, but for now:// - <br> [["Use "+$his+" mouth"|FLips][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] | [["Play with "+$his+" tits|FBoobs][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <<if canDoVaginal($cribs[$i])>> - | [["Fuck "+$him|FVagina][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <<if canDoAnal($cribs[$i])>> - | [["Use "+$his+" holes"|FButt][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <</if>> - <</if>> - <<if canDoAnal($cribs[$i])>> - | [["Fuck "+$his+" ass"|FAnus][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <</if>> - <<if canDoVaginal($cribs[$i]) || canDoAnal($cribs[$i])>> - <<if $cribs[$i].belly >= 300000>> - | [["Fuck "+$him+" over "+$his+" belly"|FBellyFuck][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <</if>> - <</if>> - /*check*//* - <<if canPenetrate($cribs[$i])>> - | [["Ride "+$him|FDick][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j,$nextLink = _k,$returnTo = _l]] - <</if>> - | [["Abuse "+$him|FAbuse][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j,$nextLink = _k,$returnTo = _l]] - <<else>> - all of $his holes equally, but for now:// - <br> [["Use "+$his+" mouth"|FLips][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] | [["Play with "+$his+" tits"|FBoobs][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <<if canDoVaginal($cribs[$i])>> - | [["Fuck "+$him|FVagina][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <<if canDoAnal($cribs[$i])>> - | [["Use "+$his+" holes"|FButt][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <<set _j = "Back", _k = "AC Dump", _l = "Main">> + <<for $i = 0; $i < _CL; $i++>> + <<if ($cribs[$i].assignment == "please you")>> + <<setLocalPronouns $cribs[$i]>> + <br><<include "Toychest">> //In the coming week you plan to concentrate on + <<if $cribs[$i].fuckdoll == 0>> + <<if $cribs[$i].toyHole != "all her holes">> + $his $cribs[$i].toyHole, but for now:// + <br> [["Use "+$his+" mouth"|FLips][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] | [["Play with "+$his+" tits|FBoobs][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <<if canDoVaginal($cribs[$i])>> + | [["Fuck "+$him|FVagina][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <<if canDoAnal($cribs[$i])>> + | [["Use "+$his+" holes"|FButt][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <</if>> + <</if>> + <<if canDoAnal($cribs[$i])>> + | [["Fuck "+$his+" ass"|FAnus][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <</if>> + <<if canDoVaginal($cribs[$i]) || canDoAnal($cribs[$i])>> + <<if $cribs[$i].belly >= 300000>> + | [["Fuck "+$him+" over "+$his+" belly"|FBellyFuck][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <</if>> + <</if>> + /*check*//* + <<if canPenetrate($cribs[$i])>> + | [["Ride "+$him|FDick][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j,$nextLink = _k,$returnTo = _l]] + <</if>> + | [["Abuse "+$him|FAbuse][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j,$nextLink = _k,$returnTo = _l]] + <<else>> + all of $his holes equally, but for now:// + <br> [["Use "+$his+" mouth"|FLips][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] | [["Play with "+$his+" tits"|FBoobs][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <<if canDoVaginal($cribs[$i])>> + | [["Fuck "+$him|FVagina][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <<if canDoAnal($cribs[$i])>> + | [["Use "+$his+" holes"|FButt][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <</if>> + <</if>> + <<if canDoAnal($cribs[$i])>> + | [["Fuck "+$his+" ass"|FAnus][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <</if>> + <<if canDoVaginal($cribs[$i]) || canDoAnal($cribs[$i])>> + <<if $cribs[$i].belly >= 300000>> + | [["Fuck "+$him+" over "+$his+" belly"|FBellyFuck][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <</if>> + <</if>> + /*check*//* + <<if canPenetrate($cribs[$i])>> + | [["Ride "+$him|FDick][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j,$nextLink = _k,$returnTo = _l]] + <</if>> + | [["Abuse "+$him|FAbuse][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] <</if>> - <</if>> - <<if canDoAnal($cribs[$i])>> - | [["Fuck "+$his+" ass"|FAnus][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <</if>> - <<if canDoVaginal($cribs[$i]) || canDoAnal($cribs[$i])>> - <<if $cribs[$i].belly >= 300000>> - | [["Fuck "+$him+" over "+$his+" belly"|FBellyFuck][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] + <<else>> + <<if $cribs[$i].toyHole != "all her holes">> + $his $cribs[$i].toyHole. + <<else>> + all of $his holes. <</if>> <</if>> - /*check*//* - <<if canPenetrate($cribs[$i])>> - | [["Ride "+$him|FDick][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j,$nextLink = _k,$returnTo = _l]] - <</if>> - | [["Abuse "+$him|FAbuse][$activeSlave = $cribs["+$i+"], $childSex = 1, $nextButton = _j, $nextLink = _k, $returnTo = _l]] - <</if>> - <<else>> - <<if $cribs[$i].toyHole != "all her holes">> - $his $cribs[$i].toyHole. - <<else>> - all of $his holes. <</if>> - <</if>> -<</if>> -<</for>> + <</for>> <</if>> /* closes $nurseryBabies check *//* <br> */ diff --git a/src/facilities/nursery/nurseryReport.tw b/src/facilities/nursery/nurseryReport.tw index 625ee08ab13cd3a2515b1dd454ce48227cc1430a..a4d54f6e347e6ff5faf84ebc2ac6329380bc3d0d 100644 --- a/src/facilities/nursery/nurseryReport.tw +++ b/src/facilities/nursery/nurseryReport.tw @@ -106,7 +106,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef smlImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -161,7 +161,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef smlImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/facilities/pit/pitFramework.js b/src/facilities/pit/pitFramework.js index 42bec475f68033b5856c16efad19db8c024fc68e..9280cc191ff4eb0c73c592d467a81e2106e53526 100644 --- a/src/facilities/pit/pitFramework.js +++ b/src/facilities/pit/pitFramework.js @@ -6,7 +6,8 @@ App.Data.Facilities.pit = { position: "fighter", assignment: "", publicSexUse: false, - fuckdollAccepted: false + fuckdollAccepted: false, + partTime: true } }, defaultJob: "fighter", diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw index dad9013735a86b43cd7e04591a2cdcc6c55a9a17..9af6d8a194d313be52245b0a4f1989fd92cca246 100644 --- a/src/gui/Encyclopedia/encyclopedia.tw +++ b/src/gui/Encyclopedia/encyclopedia.tw @@ -176,7 +176,7 @@ Design Your Master <<if $showSecExp == 1>> , but you will find @@.darkviolet;[[authority|Encyclopedia][$encyclopedia = "Security Expansion"]]@@ quite hard to maintain <</if>>. - Starts having already mastered [[Hacking|Encyclopedia][$encyclopedia = "PC Skills"]. + Starts having already mastered [[Hacking|Encyclopedia][$encyclopedia = "PC Skills"]]. <br><br> <<if $showSecExp == 0>> @@ -2619,6 +2619,7 @@ LORE: INTERVIEWS <br>''Sonofrevvan'' for fDance and fBeg. <br>''skriv'' for fixes and endless code cleaning. <br>''Arkerthan'' for various additions including merging cybermod and vanilla prosthetics. + <br>''Sonofrevvan'' for making slaves beg and dance. <br>''git contributors lost to time'' for their submissions and work through pregmod's git. <br>''Bane70'' optimized huge swaths of code with notable professionalism. <br>''Circle Tritagonist'' provided several new collars and outfits. diff --git a/src/interaction/main/toychest.js b/src/interaction/main/toychest.js index d71a23e8175af593f976b1c26dc8f7a159be59e0..2b35b8db014fc8ecefc2a2e5e47958aba5a59cdd 100644 --- a/src/interaction/main/toychest.js +++ b/src/interaction/main/toychest.js @@ -131,7 +131,16 @@ App.Interact.ToyChest = function(slave) { r += `${His} cat-themed lingerie gives the office a bizarrely innocent air of perversion.`; break; case "a succubus outfit": - r += `${He}'s dressed to look like a succubus. There is a <<if $PC.title == 1>>demon<<else>>demoness<</if>> in this office, and ${he} serves _himP.`; + r += `${He}'s dressed to look like a succubus. There is a demon`; + if ($PC.title === 0) { + r += `ess`; + } + r += `in this office, and ${he} serves `; + if ($PC.title === 0) { + r += `her.`; + } else { + r += `him.`; + } break; case "spats and a tank top": r += `${He}'s wearing spats and a tank top, giving the office the active air of a gym.`; diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js index 21c4722a39db5759634a2693b7999f737feabaed..c199a8fe389264ff516ca23df376ce001fba7a47 100644 --- a/src/js/DefaultRules.js +++ b/src/js/DefaultRules.js @@ -1225,20 +1225,30 @@ window.DefaultRules = (function() { r += `<br>${slave.slaveName}'s pregnancy has been terminated; `; if (slave.sexualFlaw === "breeder") { r += `it broke ${his} mind.`; - slave.fetish = "mindbroken", slave.behavioralQuirk = "none", slave.behavioralFlaw = "none", slave.sexualQuirk = "none", slave.sexualFlaw = "none", slave.devotion = 0, slave.trust = 0; + slave.fetish = "mindbroken"; + slave.behavioralQuirk = "none"; + slave.behavioralFlaw = "none"; + slave.sexualQuirk = "none"; + slave.sexualFlaw = "none"; + slave.devotion = 0; + slave.trust = 0; } else if (slave.devotion < -50) { r += `${he} did not handle it well.`; - slave.trust -= 10, slave.devotion -= 25; + slave.trust -= 10; + slave.devotion -= 25; } else if (slave.devotion < -20) { r += `${he} did not handle it well.`; - slave.trust -= 10, slave.devotion -= 10; + slave.trust -= 10; + slave.devotion -= 10; } else if (slave.fetish === "pregnancy") { r += `${he} did not handle it well.`; - let fetishModifier = (slave.fetishStrength / 2); - slave.devotion -= (1 * fetishModifier), (slave.trust -= 1 * fetishModifier); + let fetishModifier = slave.fetishStrength / 2; + slave.devotion -= fetishModifier; + slave.trust -= fetishModifier; } else if (slave.devotion <= 20) { r += `${he} did not handle it well.`; - slave.trust -= 10, slave.devotion -= 5; + slave.trust -= 10; + slave.devotion -= 5; } else if (slave.devotion <= 50) { r += `${he} did not handle it well.`; slave.trust -= 10; @@ -1253,11 +1263,15 @@ window.DefaultRules = (function() { slave.preg = 0; } if (slave.abortionTat > -1) { - slave.abortionTat++, cashX(forceNeg(V.surgeryCost), "slaveSurgery", slave); + slave.abortionTat++; + cashX(forceNeg(V.surgeryCost), "slaveSurgery", slave); } V.reservedChildren = FetusGlobalReserveCount("incubator"); V.reservedChildrenNursery = FetusGlobalReserveCount("nursery"); - slave.pregType = 0, slave.pregSource = 0, slave.pregKnown = 0, slave.pregWeek = -2; + slave.pregType = 0; + slave.pregSource = 0; + slave.pregKnown = 0; + slave.pregWeek = -2; WombFlush(slave); } else if (rule.abortion === "male") { if (slave.preg < 4) { @@ -1270,7 +1284,10 @@ window.DefaultRules = (function() { } } if (WL === 0) { - slave.pregType = 0, slave.pregSource = 0, slave.pregKnown = 0, slave.pregWeek = -2; + slave.pregType = 0; + slave.pregSource = 0; + slave.pregKnown = 0; + slave.pregWeek = -2; WombFlush(slave); } r += `<br>${slave.slaveName}'s male fetuses have been terminated.`; @@ -1286,7 +1303,10 @@ window.DefaultRules = (function() { } } if (WL === 0) { - slave.pregType = 0, slave.pregSource = 0, slave.pregKnown = 0, slave.pregWeek = -2; + slave.pregType = 0; + slave.pregSource = 0; + slave.pregKnown = 0; + slave.pregWeek = -2; WombFlush(slave); } r += `<br>${slave.slaveName}'s female fetuses have been terminated.`; @@ -1320,6 +1340,14 @@ window.DefaultRules = (function() { balls: s => s.balls, }; + const maxAssetSize = { + lips: V.seeExtreme ? 95 : 85, + boobs: 48000, + butt: 20, + dick: 31, + balls: 125 + }; + const growDrugs = { lips: "lip injections", boobs: "breast injections", @@ -1390,7 +1418,7 @@ window.DefaultRules = (function() { } const flesh = fleshFunc[asset](slave); - if (growDrugs[asset] !== null && App.RA.shallGrow(flesh, target, step)) { + if (growDrugs[asset] !== null && App.RA.shallGrow(flesh, target, step) && maxAssetSize[asset] > slave[asset]) { priorities.push({ drug: growDrugs[asset], weight: 1.0 - (flesh / target.val) @@ -1441,7 +1469,7 @@ window.DefaultRules = (function() { /** * @param {App.Entity.SlaveState} slave - * @param {object} rule + * @param {App.RA.RuleSetters} rule */ function ProcessOtherDrugs(slave, rule) { // Other Drugs @@ -1485,31 +1513,31 @@ window.DefaultRules = (function() { break; case "breast injections": - if (!(slave.boobs < 48000)) { + if (slave.boobs >= 48000) { flag = false; } break; case "hyper breast injections": - if (!(slave.boobs < 48000)) { + if (slave.boobs >= 48000) { flag = false; } break; case "breast redistributors": - if (!(slave.boobs - slave.boobsImplant > 100)) { + if (slave.boobs - slave.boobsImplant <= 100) { flag = false; } break; case "butt injections": - if (!(slave.butt < 9)) { + if (slave.butt >= 9) { flag = false; } break; case "hyper butt injections": - if (!(slave.butt < 20)) { + if (slave.butt >= 20) { flag = false; } break; @@ -1521,7 +1549,7 @@ window.DefaultRules = (function() { break; case "butt redistributors": - if (!(slave.buttImplant > 0)) { + if (slave.buttImplant <= 0) { flag = false; } break; @@ -1533,7 +1561,7 @@ window.DefaultRules = (function() { break; case "lip atrophiers": - if (!(slave.lips - slave.lipsImplant > 0)) { + if (slave.lips - slave.lipsImplant <= 0) { flag = false; } break; @@ -1557,43 +1585,43 @@ window.DefaultRules = (function() { break; case "penis atrophiers": - if (!(slave.dick > 1)) { + if (slave.dick <= 1) { flag = false; } break; case "testicle enhancement": - if (!(slave.balls > 0)) { + if (slave.balls <= 0) { flag = false; } break; case "hyper testicle enhancement": - if (!(slave.balls > 0)) { + if (slave.balls <= 0) { flag = false; } break; case "testicle atrophiers": - if (!(slave.balls > 1)) { + if (slave.balls <= 1) { flag = false; } break; case "clitoris atrophiers": - if (!(slave.clit > 0)) { + if (slave.clit <= 0) { flag = false; } break; case "labia atrophiers": - if (!(slave.labia > 0)) { + if (slave.labia <= 0) { flag = false; } break; case "appetite suppressors": - if (!(slave.weight <= -95)) { + if (slave.weight > -95) { flag = false; } break; @@ -1661,7 +1689,7 @@ window.DefaultRules = (function() { /** * @param {App.Entity.SlaveState} slave - * @param {object} rule + * @param {App.RA.RuleSetters} rule */ function ProcessDiet(slave, rule) { // Diet Setting @@ -1677,7 +1705,7 @@ window.DefaultRules = (function() { if (rule.diet === "healthy" && slave.diet !== "healthy") { slave.diet = "healthy"; r += `<br>${slave.slaveName} has been assigned to a healthy diet.`; - } else if ((slave.boobs >= 1600) && (slave.muscles > 5) && (slave.diet === "muscle building") && ((rule.muscles === null) || (rule.muscles === 0))) { + } else if ((slave.boobs >= 1600) && (slave.muscles > 5) && (slave.diet === "muscle building") && ((rule.muscles === null) || (rule.muscles.val === 0))) { slave.diet = "healthy"; r += `<br>${slave.slaveName} has huge boobs, but ${he} already has the back muscles to bear them, so ${he}'s been assigned to stop working out so hard.`; } else if ((rule.dietGrowthSupport === 1) && ((slave.drugs === "breast injections") || (slave.drugs === "butt injections")) && (slave.weight <= 95)) { @@ -1686,17 +1714,13 @@ window.DefaultRules = (function() { r += `<br>${slave.slaveName} is on drugs designed to expand major body parts, so ${he}'s been put on a fattening diet to provide ${his} body as much fuel for growth as possible.`; } } else { - if (!(isNaN(rule.diet))) { - if ((slave.weight - rule.diet) > 5) { - if ((slave.diet !== "restricted")) { - slave.diet = "restricted"; - r += `<br>${slave.slaveName} is too fat so ${his} diet has been set to restricted.`; - } - } else if ((slave.weight - rule.diet) < -5) { - if ((slave.diet !== "fattening")) { - slave.diet = "fattening"; - r += `<br>${slave.slaveName} is too skinny so ${his} diet has been set to fattening.`; - } + if (rule.weight !== null) { + if (slave.weight - 5 > rule.weight.max && slave.diet !== "restricted") { + slave.diet = "restricted"; + r += `<br>${slave.slaveName} is too fat so ${his} diet has been set to restricted.`; + } else if (slave.weight + 5 < rule.weight.min && slave.diet !== "fattening") { + slave.diet = "fattening"; + r += `<br>${slave.slaveName} is too skinny so ${his} diet has been set to fattening.`; } else if ((rule.muscles !== undefined) && (rule.muscles !== null) && (slave.amp !== 1)) { if (App.RA.shallShrink(slave.muscles, rule.muscles, 8)) { if ((slave.diet !== "slimming")) { @@ -2061,20 +2085,22 @@ window.DefaultRules = (function() { */ function ProcessRelease(slave, rule) { if ((rule.releaseRules !== undefined) && (rule.releaseRules !== null)) { - let _release = 0; + let release = 0; if (rule.releaseRules === "restrictive" && !(["be a subordinate slave", "be confined in the arcade", "be your Head Girl", "get milked", "please you", "serve in the club", "serve in the master suite", "serve the public", "whore", "work a glory hole", "work as a farmhand", "work in the brothel", "work in the dairy"].contains(slave.assignment))) { - _release = 1; - } else { - _release = 1; - } - if ((slave.fetish === "mindbroken") && (slave.releaseRules !== "permissive")) { - slave.releaseRules = "permissive"; - r += `<br>Since ${slave.slaveName} is mindbroken, ${his} masturbation rules have been set to permissive.`; - } else if ((slave.amp === 1 || slave.fuckdoll > 0) && (slave.releaseRules === "masturbation")) { - slave.releaseRules = "restrictive"; - r += `<br>Since ${slave.slaveName} is unable to masturbate, ${his} masturbation rules have been set to restrictive.`; - } else if ((_release !== 0) && (slave.releaseRules !== rule.releaseRules)) { + release = 1; + } + if (slave.fetish === "mindbroken") { + if (slave.releaseRules !== "permissive") { + slave.releaseRules = "permissive"; + r += `<br>Since ${slave.slaveName} is mindbroken, ${his} masturbation rules have been set to permissive.`; + } + } else if (slave.amp === 1 || slave.fuckdoll > 0) { + if (slave.releaseRules === "masturbation") { + slave.releaseRules = "restrictive"; + r += `<br>Since ${slave.slaveName} is unable to masturbate, ${his} masturbation rules have been set to restrictive.`; + } + } else if ((release !== 0) && (slave.releaseRules !== rule.releaseRules)) { slave.releaseRules = rule.releaseRules; r += `<br>${slave.slaveName}'s masturbation rules have been set to ${rule.releaseRules}.`; } @@ -2248,7 +2274,7 @@ window.DefaultRules = (function() { /** * @param {App.Entity.SlaveState} slave - * @param {object} rule + * @param {App.RA.RuleSetters} rule */ function ProcessStyle(slave, rule) { if (rule.eyeColor !== undefined && (rule.eyeColor !== null)) { @@ -2833,7 +2859,7 @@ window.DefaultRules = (function() { } else if (rule.brandTarget === "shoulders") { left = "left shoulder"; right = "right shoulder"; - }else if (rule.brandTarget === "upper arms") { + } else if (rule.brandTarget === "upper arms") { left = "left upper arm"; right = "right upper arm"; } else if (rule.brandTarget === "wrists") { diff --git a/src/js/assignJS.js b/src/js/assignJS.js index 35d9b8a7bc4f6458848a63c40c6cdc4d89b256f6..e75c3a4fc7432fdb98cdef6442a8afedab23f3b1 100644 --- a/src/js/assignJS.js +++ b/src/js/assignJS.js @@ -72,6 +72,9 @@ window.assignJob = function assignJob(slave, job) { case "Youth Preferentialist": case "Slimness Enthusiast": case "Hedonistic": + case "Intellectual Dependency": + case "Petite Admiration": + case "Statuesque Glorification": slave.livingRules = "luxurious"; break; @@ -172,7 +175,7 @@ window.assignJob = function assignJob(slave, job) { if (V.masterSuiteUpgradeLuxury > 0) { slave.livingRules = "luxurious"; } else { - slave.livingRules = "spare"; + slave.livingRules = "normal"; } break; @@ -205,6 +208,27 @@ window.assignJob = function assignJob(slave, job) { case "Egyptian Revivalist": slave.livingRules = "spare"; break; + case "Slave Professionalism": + if (slave.intelligence + slave.intelligenceImplant > 15) { + slave.livingRules = "normal"; + } else { + slave.livingRules = "spare"; + } + break; + case "Petite Admiration": + if (heightPass(slave)) { + slave.livingRules = "normal"; + } else { + slave.livingRules = "spare"; + } + break; + case "Statuesque Glorification": + if (heightPass(slave)) { + slave.livingRules = "normal"; + } else { + slave.livingRules = "spare"; + } + break; default: slave.livingRules = "normal"; break; @@ -473,8 +497,25 @@ window.removeJob = function removeJob(slave, assignment) { break; case "be your head girl": + let attentionCheck = 1; slave.assignment = "rest"; - if (V.HGSuiteEquality === 0 && V.personalAttention === "HG") { + const HGSlave = V.slaves.findIndex(s => s.assignment === "live with your Head Girl"); + if (HGSlave !== -1) { + if (V.HGSuiteEquality === 1) { + if (V.slaves[HGSlave].devotion > 50) { + removeJob(V.slaves[HGSlave], "live with your Head Girl"); + assignJob(V.slaves[HGSlave], "be your Head Girl"); + V.HeadGirl = V.slaves[HGSlave]; + V.slaves[HGSlave].diet = "healthy"; + attentionCheck = 0; + } else { + removeJob(V.slaves[HGSlave], "live with your Head Girl"); + } + } else { + removeJob(V.slaves[HGSlave], "live with your Head Girl"); + } + } + if (V.personalAttention === "HG" && attentionCheck === 1) { if (V.PC.career === "escort") { V.personalAttention = "whoring"; } else if (V.PC.career === "servant") { diff --git a/src/js/datatypeCleanupJS.js b/src/js/datatypeCleanupJS.js index 8fc321d5d57b9e0fbfa6463da3532464401fd690..680270460ecbc732972711445c0abe432d6cdc34 100644 --- a/src/js/datatypeCleanupJS.js +++ b/src/js/datatypeCleanupJS.js @@ -1935,7 +1935,7 @@ window.FacilityDatatypeCleanup = (function() { V.clinic = Math.max(+V.clinic, 0) || 0; V.clinicUpgradeScanner = Math.clamp(+V.clinicUpgradeScanner, 0, 1) || 0; V.clinicUpgradeFilters = Math.clamp(+V.clinicUpgradeFilters, 0, 1) || 0; - V.clinicUpgradePurge = Math.clamp(+V.clinicUpgradePurge, 0, 1) || 0; + V.clinicUpgradePurge = Math.clamp(+V.clinicUpgradePurge, 0, 3) || 0; V.clinicInflateBelly = Math.clamp(+V.clinicInflateBelly, 0, 1) || 0; V.clinicSpeedGestation = Math.clamp(+V.clinicSpeedGestation, 0, 1) || 0; /* nurse */ @@ -2127,10 +2127,13 @@ App.Entity.Utils.RARuleDatatypeCleanup = function() { if (typeof v !== 'string') { continue; } + if (["XX", "XY", "XXY"].includes(v)) { + continue; + } if (v === "null") { set[k] = null; } - if (k === 'assignment' || k === 'clothes') { + if (k === 'assignment' || k === 'clothes' || k === 'label' || k === 'removeLabel' ) { continue; } if (v[0].toLowerCase() !== v[0]) { @@ -2188,6 +2191,14 @@ App.Entity.Utils.RARuleDatatypeCleanup = function() { set.growth.intensity = Math.clamp(+set.growth.intensity, 0, 1) || 0; correctStringValues(set); + + // moving numeric diets to the 'weight' attribute + if (typeof set.diet === 'number') { + set.weight = App.RA.makeRange(set.diet, set.diet); + set.diet = null; + } else { + set.weight = null; + } } }(); diff --git a/src/js/descriptionWidgets.js b/src/js/descriptionWidgets.js index dbf13f0b5f3f11506c5667191257055aa115d8ef..37c771a001d3bab8831817e5d4d39d9851e8d28b 100644 --- a/src/js/descriptionWidgets.js +++ b/src/js/descriptionWidgets.js @@ -122,7 +122,7 @@ App.Desc.eyes = function(slave) { r += `but ${his} facial expressions reveal ${he} is as dull as ${his} eyes; ${he} is <span class="orangered">quite stupid</span> and ignorant. `; } } else { - r += `though you doubt it would be much different if (V.{he}) could see; `; + r += `though you doubt it would be much different if ${he} could see; `; if (slave.intelligence + slave.intelligenceImplant >= -95) { r += `even with ${his} education, ${he} is still <span class="orangered">really stupid.</span>`; } else if (slave.intelligenceImplant > 0) { @@ -569,40 +569,38 @@ App.Desc.ageAndHealth = function(slave) { App.Desc.brand = function(slave, surface) { "use strict"; let r = ``; - let bellyAccessory; + const bellyAccessory = slave.bellyAccessory; /* eslint-disable no-unused-vars*/ const { he, him, his, hers, himself, boy, He, His } = getPronouns(slave); /* eslint-enable */ if (State.variables.showBodyMods === 1) { - if (surface) { - if (slave.brand[surface]) { + if (surface) { /* describes a single branded body part */ + if (surface === "belly" && setup.fakeBellies.includes(bellyAccessory) && slave.brand.belly) { + r += `${His} fake belly has the same brand, ${slave.brand.belly}, as ${his} real one. `; + } else if (slave.brand[surface]) { r += `${He} has ${slave.brand[surface]} branded into the flesh of ${his} ${surface}. `; } - return r; - } - - if (slave.brand) { - bellyAccessory = slave.bellyAccessory; - if (setup.fakeBellies.includes(bellyAccessory) && slave.brand.belly) { - r += `${His} fake belly has ${slave.brand.belly} branded on it. `; - } else { - for (let [key, value] of Object.entries(slave.brand)) { - if (r === ``) { - r += `${He} has `; - } - r += `${value} branded into the flesh of ${his} ${key}, `; + } else { /* describes all branded body parts */ + for (let [key, value] of Object.entries(slave.brand)) { + if (r === ``) { + r += `${He} has `; } - if (r !== ``) { - r += `marking him as yours. `; + if (key === "belly" && setup.fakeBellies.includes(bellyAccessory) && slave.brand.belly) { + r += `${value} branded on both ${his} real belly and ${his} fake one, `; } else { - r += `${His} body is unmarked by brands. `; + r += `${value} branded into the flesh of ${his} ${key}, `; } } + if (r !== ``) { + r += `marking ${him} as yours. `; + } else { + r += `${His} body is unmarked by brands. `; + } } - return r; } + return r; }; /** diff --git a/src/js/economyJS.js b/src/js/economyJS.js index 636fa2642c3559aaeb4f42064d5820bb63702d2c..53c67af4eb33ad3448d4d91b6ba43b8975029d62 100644 --- a/src/js/economyJS.js +++ b/src/js/economyJS.js @@ -169,7 +169,7 @@ window.calculateCosts = (function() { function getArcadeCosts() { const V = State.variables; - return (0.05 + 0.02 * V.arcadeUpgradeInjectors + 0.05 * V.arcadeUpgradeCollectors + 0.02 * V.arcadeUpgradeHealth) * (V.arcade + V.facilityCost); + return (0.05 + 0.02 * V.arcadeUpgradeInjectors + 0.05 * V.arcadeUpgradeCollectors + 0.02 * V.arcadeUpgradeHealth) * (V.arcade * V.facilityCost); } function getClubCosts() { @@ -979,7 +979,7 @@ window.slaveJobValues = function() { } if (V.DJ.muscles > 5 && V.DJ.muscles <= 95) { V.DJRepBonus += 0.05; - // $His toned body helps $him lead $his fellow club girls by letting $him dance all night. + // $His toned body helps $him lead $his fellow club sluts by letting $him dance all night. } if (V.DJ.intelligence + V.DJ.intelligenceImplant > 15) { V.DJRepBonus += 0.05 * Math.floor((V.DJ.intelligence + V.DJ.intelligenceImplant) / 32); diff --git a/src/js/eventSelectionJS.js b/src/js/eventSelectionJS.js index f9e5cce1b2e25ab1a0d0f957c35c7eb64ce914da..2dd71f7912e680309cda9c6b9e921150631d731c 100644 --- a/src/js/eventSelectionJS.js +++ b/src/js/eventSelectionJS.js @@ -28,14 +28,18 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } - if (State.variables.familyTesting === 0) { - if (eventSlave.devotion > 20) { - if (eventSlave.sexualQuirk === "perverted" || eventSlave.energy > 80) { - if (eventSlave.relation === "mother") { - if (eventSlave.belly < 100000) { - if (eventSlave.lactation) { - if (eventSlave.nipples !== "fuckable") { - if (eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "masturbation" && eventSlave.releaseRules !== "chastity") { + if (eventSlave.devotion > 20) { + if (eventSlave.sexualQuirk === "perverted" || eventSlave.energy > 80) { + if (eventSlave.belly < 100000) { + if (eventSlave.lactation > 0) { + if (eventSlave.nipples !== "fuckable") { + if (eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "masturbation" && eventSlave.releaseRules !== "chastity") { + if (State.variables.familyTesting === 0) { + if (eventSlave.relation === "mother") { + State.variables.RETSevent.push("incestuous nursing"); + } + } else { + if (eventSlave.daughters > 0) { State.variables.RETSevent.push("incestuous nursing"); } } @@ -44,10 +48,6 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } } - } else { - if (eventSlave.devotion > 20 && (eventSlave.sexualQuirk === "perverted" || eventSlave.energy > 80) && eventSlave.belly < 100000 && eventSlave.lactation > 0 && eventSlave.nipples !== "fuckable" && eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "masturbation" && eventSlave.releaseRules !== "chastity" && eventSlave.daughters > 0) { - State.variables.RETSevent.push("incestuous nursing"); - } } if (eventSlave.intelligence + eventSlave.intelligenceImplant > 50) { @@ -60,7 +60,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } - if (eventSlave.skill.entertainment >= 60 || ["a dancer", "a house DJ", "a party girl", "an aspiring pop star", "an exotic dancer"].includes(eventSlave.career)) { + if (eventSlave.skill.entertainment >= 60 || ["a ballerina", "a camgirl", "a camwhore", "a cheerleader", "a classical dancer", "a dancer", "a house DJ", "a party girl", "an aspiring pop star", "an exotic dancer", "an idol"].includes(eventSlave.career)) { if (canHear(eventSlave)) { if (eventSlave.health > 40) { if (eventSlave.devotion > 50) { @@ -89,7 +89,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.devotion >= -20) { if (canSee(eventSlave)) { if (eventSlave.devotion <= 50) { - if (["be a servant", "work as a servant"].includes(eventSlave.assignment)) { + if (eventSlave.assignment === "be a servant") { if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) { State.variables.RESSevent.push("PA servant"); } @@ -374,7 +374,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.face >= -10) { if (eventSlave.devotion >= 10) { - if (eventSlave.assignment === "serve the public" || eventSlave.assignment === "whore") { + if (["serve the public", "whore"].includes(eventSlave.assignment)) { if (State.variables.REUglyCheckinIDs.includes(eventSlave.ID)) { State.variables.RECIevent.push("ugly"); } @@ -412,7 +412,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } */ - if (eventSlave.assignment === "be a servant" || eventSlave.assignment === "work as a servant") { + if (eventSlave.assignment === "be a servant") { if (eventSlave.devotion <= 95) { if (eventSlave.intelligence + eventSlave.intelligenceImplant < -50) { State.variables.RESSevent.push("cooler lockin"); @@ -602,7 +602,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (State.variables.PC.dick === 1) { if (State.variables.PC.belly < 5000) { - if (["be a servant", "work as a servant"].includes(eventSlave.assignment)) { + if (eventSlave.assignment === "be a servant") { if (eventSlave.attrXY <= 35 || eventSlave.behavioralFlaw === "hates men" || eventSlave.sexualFlaw === "repressed") { if (eventSlave.devotion >= -20) { if (eventSlave.trust > 20) { @@ -708,7 +708,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.physicalAge > 35) { if (eventSlave.speechRules !== "restrictive") { - if (["serve in the club", "serve the public", "whore", "work in the brothel"].includes(eventSlave.assignment)) { + if (["serve the public", "whore"].includes(eventSlave.assignment)) { if (eventSlave.devotion >= -20) { if (eventSlave.devotion <= 95) { State.variables.RESSevent.push("ara ara"); @@ -1231,7 +1231,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.skill.entertainment >= 100) { if (eventSlave.trust > 50) { - if (["serve in the club", "serve the public"].includes(eventSlave.assignment)) { + if (eventSlave.assignment === "serve the public") { State.variables.RESSevent.push("masterful entertainer"); } } @@ -1239,7 +1239,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.skill.whoring >= 100) { if (eventSlave.trust > 50) { - if (["whore", "work in the brothel"].includes(eventSlave.assignment)) { + if (eventSlave.assignment === "whore") { State.variables.RESSevent.push("masterful whore"); } } @@ -1247,7 +1247,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.dick > 0) { if (eventSlave.balls === 0) { - if (eventSlave.ovaries === 0) { + if (eventSlave.genes === "XY") { if (eventSlave.devotion <= 50) { if (eventSlave.trust < -50) { if (eventSlave.anus > 0) { @@ -1299,7 +1299,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } - if (["serve in the club", "serve the public", "whore", "work in the brothel"].includes(eventSlave.assignment)) { + if (["serve the public", "whore"].includes(eventSlave.assignment)) { if (eventSlave.vagina !== 0) { if (eventSlave.anus !== 0) { if (canDoAnal(eventSlave)) { @@ -1351,7 +1351,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } - if (eventSlave.assignment === "please you") { + if (["be your Concubine", "please you", "serve in the master suite"].includes(eventSlave.assignment)) { if (eventSlave.devotion > 20) { if (eventSlave.trust >= -20) { if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) { @@ -1380,30 +1380,6 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } } - } else if (["be your Concubine", "serve in the master suite"].includes(eventSlave.assignment)) { - if (eventSlave.devotion > 20) { - if (eventSlave.trust >= -20) { - if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) { - if ((eventSlave.chastityPenis !== 1) || (eventSlave.dick === 0)) { - if (State.variables.corpIncorporated !== 0) { - State.variables.RESSevent.push("shift sleep"); - } - if (eventSlave.skill.entertainment >= 60) { - State.variables.RESSevent.push("shift doorframe"); - } - } - if (canDoVaginal(eventSlave)) { - if (State.variables.PC.vagina === 1) { - if (eventSlave.dick === 0) { - if (State.variables.fuckSlaves > 2) { - State.variables.RESSevent.push("fucktoy tribbing"); - } - } - } - } - } - } - } } if (eventSlave.speechRules !== "restrictive") { @@ -1509,7 +1485,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.devotion > 50) { if (eventSlave.trust > 50) { - if (eventSlave.assignment === "please you" || eventSlave.assignment === "serve in the master suite" || eventSlave.assignment === "be your Concubine") { + if (["be your Concubine", "please you", "serve in the master suite"].includes(eventSlave.assignment)) { State.variables.RESSevent.push("bed snuggle"); } } @@ -1730,7 +1706,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.fetishKnown === 1) { if (eventSlave.fetish === "cumslut" || eventSlave.energy > 95) { - if (["serve in the club", "serve the public", "whore", "work a glory hole", "work in the brothel"].includes(eventSlave.assignment)) { + if (["serve the public", "whore", "work a glory hole"].includes(eventSlave.assignment)) { if (eventSlave.devotion > 20) { if (State.variables.PC.dick !== 0) { State.variables.RESSevent.push("cumslut whore"); @@ -1748,14 +1724,6 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } - if (eventSlave.relationship === 4) { - if (eventSlave.devotion > 20) { - if (eventSlave.trust > 20) { - State.variables.events.push("RE slave marriage"); - } - } - } - if (State.variables.PC.dick !== 0) { if (eventSlave.bellyPreg >= 300000) { State.variables.RESSevent.push("hyperpreg stuck"); @@ -1807,13 +1775,13 @@ window.generateRandomEventPoolStandard = function(eventSlave) { if (eventSlave.balls > 6) { if (eventSlave.dick > 6) { - if (eventSlave.assignment === "work in the dairy" || eventSlave.assignment === "get milked") { + if (eventSlave.assignment === "get milked") { State.variables.events.push("RE legendary balls"); } } } - if (eventSlave.origin === "You sentenced $him to enslavement as a punishment for attempted theft of a slave." || eventSlave.origin === "$He is an enslaved Daughter of Liberty." || eventSlave.origin === "You got $him at the Slave Shelter. $He is an enslaved Daughter of Liberty, caught some weeks after the failed coup. $His previous owner used $him as a punching bag and dart board, then when he was bored of $him tattooed obscenities all over $his body and threw $him away." || eventSlave.origin === "$He is an enslaved member of an anti-slavery extremist group.") { + if (eventSlave.origin === "You sentenced $him to enslavement as a punishment for attempted theft of a slave." || eventSlave.origin === "$He is an enslaved Daughter of Liberty." || eventSlave.origin === "You got $him at the Slave Shelter. $He is an enslaved Daughter of Liberty, caught some weeks after the failed coup. $His previous owner used $him as a punching bag and dart board, then when he was bored of $him tattooed obscenities all over $his body and threw $him away." || eventSlave.origin === "$He is an enslaved member of an anti-slavery extremist group." || eventSlave.career === "an antislavery activist") { if (eventSlave.devotion > 95 && eventSlave.assignment === "please you") { State.variables.events.push("RE former abolitionist"); } @@ -1822,6 +1790,14 @@ window.generateRandomEventPoolStandard = function(eventSlave) { } } + if (eventSlave.relationship === 4) { + if (eventSlave.devotion > 20) { + if (eventSlave.trust > 20) { + State.variables.events.push("RE slave marriage"); + } + } + } + /* NICKNAME EVENTS */ if (State.variables.nicknamesAllowed === 1) { @@ -1840,7 +1816,7 @@ window.generateRandomEventPoolStandard = function(eventSlave) { State.variables.RESSevent.push("mindbroken morning"); } if (eventSlave.kindness !== undefined && eventSlave.kindness >= 100) { - if ((isSlaveAvailable(eventSlave) && canWalk(eventSlave)) || (["please you", "serve in the master suite", "be your Concubine"].includes(eventSlave.assignment))) { + if ((isSlaveAvailable(eventSlave) && canWalk(eventSlave)) || (["be your Concubine", "please you", "serve in the master suite"].includes(eventSlave.assignment))) { if (eventSlave.relationship === -3) { if (jsRandom(1, 200) < eventSlave.kindness) { State.variables.RESSevent.push("surprising wakeup"); @@ -1893,14 +1869,18 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (State.variables.familyTesting === 0) { - if (eventSlave.devotion > 20) { - if (eventSlave.sexualQuirk === "perverted" || eventSlave.energy > 80) { - if (eventSlave.relation === "mother") { - if (eventSlave.belly < 100000) { - if (eventSlave.lactation) { - if (eventSlave.nipples !== "fuckable") { - if (eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "masturbation" && eventSlave.releaseRules !== "chastity") { + if (eventSlave.devotion > 20) { + if (eventSlave.sexualQuirk === "perverted" || eventSlave.energy > 80) { + if (eventSlave.belly < 100000) { + if (eventSlave.lactation > 0) { + if (eventSlave.nipples !== "fuckable") { + if (eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "masturbation" && eventSlave.releaseRules !== "chastity") { + if (State.variables.familyTesting === 0) { + if (eventSlave.relation === "mother") { + State.variables.RETSevent.push("incestuous nursing"); + } + } else { + if (eventSlave.daughters > 0) { State.variables.RETSevent.push("incestuous nursing"); } } @@ -1909,18 +1889,13 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } } - } else { - if (eventSlave.devotion > 20 && (eventSlave.sexualQuirk === "perverted" || eventSlave.energy > 80) && eventSlave.belly < 100000 && eventSlave.lactation > 0 && eventSlave.nipples !== "fuckable" && eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "masturbation" && eventSlave.releaseRules !== "chastity" && eventSlave.daughters > 0) { - State.variables.RETSevent.push("incestuous nursing"); - } } - if (State.variables.assistant > 0) { if (State.variables.assistantAppearance !== "normal") { if (eventSlave.devotion >= -20) { - if (eventSlave.devotion <= 50) { - if (["be a servant", "work as a servant"].includes(eventSlave.assignment)) { + if (canSee(eventSlave)) { + if (eventSlave.devotion <= 50) { if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) { State.variables.RESSevent.push("PA servant"); } @@ -2012,11 +1987,9 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (eventSlave.assignment === "be a servant" || eventSlave.assignment === "work as a servant") { - if (eventSlave.devotion <= 95) { - if (eventSlave.intelligence + eventSlave.intelligenceImplant < -50) { - State.variables.RESSevent.push("cooler lockin"); - } + if (eventSlave.devotion <= 95) { + if (eventSlave.intelligence + eventSlave.intelligenceImplant < -50) { + State.variables.RESSevent.push("cooler lockin"); } } @@ -2176,12 +2149,10 @@ window.generateRandomEventPoolServant = function(eventSlave) { if (State.variables.PC.dick === 1) { if (State.variables.PC.belly < 5000) { - if (["be a servant", "work as a servant"].includes(eventSlave.assignment)) { - if (eventSlave.attrXY <= 35 || eventSlave.behavioralFlaw === "hates men" || eventSlave.sexualFlaw === "repressed") { - if (eventSlave.devotion >= -20) { - if (eventSlave.trust > 20) { - State.variables.RESSevent.push("frightening dick"); - } + if (eventSlave.attrXY <= 35 || eventSlave.behavioralFlaw === "hates men" || eventSlave.sexualFlaw === "repressed") { + if (eventSlave.devotion >= -20) { + if (eventSlave.trust > 20) { + State.variables.RESSevent.push("frightening dick"); } } } @@ -2526,14 +2497,10 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (State.variables.seeExtreme === 1) { - if (eventSlave.devotion < -50) { - if (eventSlave.trust >= -50) { - if (eventSlave.assignment !== "stay confined") { - if (eventSlave.heels !== 1) { - State.variables.RESSevent.push("escapee"); - } - } + if (eventSlave.devotion < -50) { + if (eventSlave.trust >= -50) { + if (eventSlave.heels !== 1) { + State.variables.RESSevent.push("escapee"); } } } @@ -2568,11 +2535,11 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (eventSlave.releaseRules === "restrictive") { + if (eventSlave.releaseRules === "restrictive" || eventSlave.releaseRules === "chastity") { if (eventSlave.need) { if (eventSlave.devotion <= 95) { if (eventSlave.trust >= -20) { - if (eventSlave.chastityPenis !== 1 || (eventSlave.dick === 0)) { + if ((eventSlave.chastityPenis !== 1) || (eventSlave.dick === 0)) { State.variables.RESSevent.push("forbidden masturbation"); } } @@ -2623,7 +2590,7 @@ window.generateRandomEventPoolServant = function(eventSlave) { if (eventSlave.dick > 0) { if (eventSlave.balls === 0) { - if (eventSlave.ovaries === 0) { + if (eventSlave.genes === "XY") { if (eventSlave.devotion <= 50) { if (eventSlave.trust < -50) { if (eventSlave.anus > 0) { @@ -2637,20 +2604,22 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (isFertile(eventSlave)) { - if (eventSlave.devotion > 50) { - if (State.variables.PC.dick !== 0) { - if (eventSlave.fetish === "pregnancy" || eventSlave.energy > 95) { - if (eventSlave.eggType === "human") { - if (eventSlave.fetishKnown === 1) { - if (eventSlave.vagina !== 0) { - if (eventSlave.anus > 0) { - if (eventSlave.geneticQuirks.superfetation === 2 && (eventSlave.intelligence + eventSlave.intelligenceImplant > 15) && eventSlave.womb.length > 0) { - if (eventSlave.belly < (eventSlave.pregAdaptation * 1750)) { + if (State.variables.seePreg !== 0) { + if (isFertile(eventSlave)) { + if (eventSlave.devotion > 50) { + if (State.variables.PC.dick !== 0) { + if (eventSlave.fetish === "pregnancy" || eventSlave.energy > 95) { + if (eventSlave.eggType === "human") { + if (eventSlave.fetishKnown === 1) { + if (eventSlave.vagina !== 0) { + if (eventSlave.anus > 0) { + if (eventSlave.geneticQuirks.superfetation === 2 && (eventSlave.intelligence + eventSlave.intelligenceImplant > 15) && eventSlave.womb.length > 0) { + if (eventSlave.belly < (eventSlave.pregAdaptation * 1750)) { + State.variables.RESSevent.push("impregnation please"); + } + } else { State.variables.RESSevent.push("impregnation please"); } - } else { - State.variables.RESSevent.push("impregnation please"); } } } @@ -2661,8 +2630,8 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (["large plug", "long, large plug", "huge plug", "long, huge plug"].includes(eventSlave.buttplug)) { - if (eventSlave.assignment !== "stay confined" && isSlaveAvailable(eventSlave)) { + if (["huge plug", "large plug", "long, huge plug", "long, large plug"].includes(eventSlave.buttplug)) { + if (isSlaveAvailable(eventSlave)) { if (eventSlave.devotion <= 20) { if (eventSlave.trust >= -50) { if (eventSlave.anus < 3) { @@ -2786,16 +2755,12 @@ window.generateRandomEventPoolServant = function(eventSlave) { } if (eventSlave.devotion <= 50) { - if (eventSlave.assignment === "work as a servant" || eventSlave.assignment === "be a servant") { - State.variables.RESSevent.push("scrubbing"); - } + State.variables.RESSevent.push("scrubbing"); } if (eventSlave.devotion <= 20) { - if (eventSlave.assignment === "work as a servant" || eventSlave.assignment === "be a servant") { - if (eventSlave.clothes === "a slutty maid outfit" || eventSlave.clothes === "a nice maid outfit") { - State.variables.RESSevent.push("servant maid"); - } + if (eventSlave.clothes === "a slutty maid outfit" || eventSlave.clothes === "a nice maid outfit") { + State.variables.RESSevent.push("servant maid"); } } @@ -2813,7 +2778,7 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (eventSlave.releaseRules !== "restrictive") { + if (eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "chastity") { if (eventSlave.dick > 4) { if (eventSlave.amp !== 1) { if (canAchieveErection(eventSlave)) { @@ -2835,7 +2800,7 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (eventSlave.releaseRules !== "restrictive") { + if (eventSlave.releaseRules !== "restrictive" && eventSlave.releaseRules !== "chastity") { if (eventSlave.belly < 300000) { if (eventSlave.anus > 2) { if (eventSlave.fetish === "buttslut" || eventSlave.energy > 95) { @@ -2849,22 +2814,6 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (eventSlave.boobs < 500) { - if (eventSlave.butt < 3) { - if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) { - if (eventSlave.devotion <= 50) { - if (eventSlave.devotion > 20 && eventSlave.trust >= -20) { - if (eventSlave.weight <= 10) { - if (eventSlave.muscles <= 30) { - State.variables.RESSevent.push("obedient girlish"); - } - } - } - } - } - } - } - if (eventSlave.boobs > 1200) { if (eventSlave.areolaeShape !== "circle") { if (eventSlave.devotion > 50) { @@ -2873,8 +2822,10 @@ window.generateRandomEventPoolServant = function(eventSlave) { } } - if (eventSlave.bellyPreg >= 10000) { - State.variables.RESSevent.push("hugely pregnant"); + if (State.variables.seePreg !== 0) { + if (eventSlave.bellyPreg >= 10000) { + State.variables.RESSevent.push("hugely pregnant"); + } } if (eventSlave.hormoneBalance >= 50) { @@ -2954,15 +2905,6 @@ window.generateRandomEventPoolServant = function(eventSlave) { if (canWalk(eventSlave)) { State.variables.RESSevent.push("mindbroken morning"); } - if (eventSlave.kindness !== undefined && eventSlave.kindness >= 100) { - if ((isSlaveAvailable(eventSlave) && canWalk(eventSlave)) || (["be your Concubine", "please you", "serve in the master suite"].includes(eventSlave.assignment))) { - if (eventSlave.relationship === -3) { - if (jsRandom(1, 200) < eventSlave.kindness) { - State.variables.RESSevent.push("surprising wakeup"); - } - } - } - } } }; diff --git a/src/js/familyTreeJS.js b/src/js/familyTreeJS.js index 68054ad7d62f9b83d2e7d919c794cd75857cd4e8..7afa1005f384d4ec12715a349e80d4513f19b9b4 100644 --- a/src/js/familyTreeJS.js +++ b/src/js/familyTreeJS.js @@ -221,7 +221,7 @@ window.buildFamilyTree = function(slaves, filterID) { let node_lookup = {}; let preset_lookup = { '-2': 'A citizen', - '-3': 'Former master', + '-3': 'Former Master', '-4': 'An arcology owner', '-5': 'Client', '-6': 'Social Elite', diff --git a/src/js/generateGenetics.js b/src/js/generateGenetics.js index 30aa181eee457bdc04e8d9421a93a0258985279b..587a44afbd0988b98d8aa69352e0ea80ea6a5964 100644 --- a/src/js/generateGenetics.js +++ b/src/js/generateGenetics.js @@ -10,7 +10,7 @@ window.generateGenetics = (function() { let V; // intelligence and face parameters are the same so we can use the same distribution for both values - const fuzzy = (a, b) => Math.clamp(normalRandInt((a+b)/2, 20), -100, 100); + const fuzzy = (a, b) => normalRandInt((a+b)/2, 20, -100, 100); function generateGenetics(actor1, actor2, x) { V = State.variables; @@ -411,7 +411,7 @@ window.generateGenetics = (function() { break; case "milky white": case "implant": - hEyeColor = jsEither(["blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue"]); + hEyeColor = jsEither(["blue", "brown", "dark blue", "dark green", "green", "hazel", "light blue", "light green"]); break; } return jsEither(eyeColorArray); diff --git a/src/js/generateMarketSlave.js b/src/js/generateMarketSlave.js index e1c8c8226f60436687172429a8cc2c4c98d0ed6a..082248aa176b9914690a1e8b1a25de4ac45ecede 100644 --- a/src/js/generateMarketSlave.js +++ b/src/js/generateMarketSlave.js @@ -845,7 +845,13 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) { } } if (V.arcologies[market].FSRomanRevivalist > 20) { - r += `They've often seen things that drive any squeamishness out of them. `; + r += `They've often `; + if (!canSee(V.activeSlave)) { + r += `been party to`; + } else { + r += `seen`; + } + r += ` things that drive any squeamishness out of them. `; V.activeSlave.slaveName = setup.romanSlaveNames.random(); if (jsRandom(0, 1) === 0) { V.activeSlave.sexualQuirk = "unflinching"; @@ -1538,7 +1544,7 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) { V.activeSlave.behavioralFlaw = jsEither(["arrogant", "none", "odd"]); V.activeSlave.hStyle = "short"; V.activeSlave.hLength = 2; - V.activeSlave.custom.tattoo = "$He has the baroque crest of the Gymnasium-Academy that trained $him branded into $his left cheek."; + V.activeSlave.brand["left cheek"] = "the baroque crest of the Gymnasium-Academy that trained $him"; break; case "TCR": if (V.TCR.schoolUpgrade === 2 && jsRandom(1, 100) <= 20) { @@ -1581,7 +1587,7 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) { V.activeSlave.heels = 1; V.activeSlave.hStyle = "neat"; V.activeSlave.collar = "leather with cowbell"; - V.activeSlave.custom.tattoo = "$He has the logo of the Cattle Ranch branded on $his thigh."; + V.activeSlave.brand["right thigh"] = "the logo of the Cattle Ranch"; } else if (V.TCR.schoolUpgrade === 1 && jsRandom(1, 100) <= 20) { V.activeSlaveOneTimeMinAge = V.potencyAge+1; V.activeSlaveOneTimeMaxAge = 24; @@ -1627,7 +1633,7 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) { V.activeSlave.sexualQuirk = "none"; V.activeSlave.behavioralQuirk = "none"; V.activeSlave.hStyle = "neat"; - V.activeSlave.custom.tattoo = "$He has the logo of the Cattle Ranch branded on $his thigh."; + V.activeSlave.brand["right thigh"] = "the logo of the Cattle Ranch"; } else { V.activeSlaveOneTimeMinAge = 19; V.activeSlaveOneTimeMaxAge = 24; @@ -1682,7 +1688,7 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) { V.activeSlave.behavioralQuirk = "none"; V.activeSlave.hStyle = "neat"; V.activeSlave.collar = "leather with cowbell"; - V.activeSlave.custom.tattoo = "$He has the logo of the Cattle Ranch branded on $his thigh."; + V.activeSlave.brand["right thigh"] = "the logo of the Cattle Ranch"; } break; case "TFS": diff --git a/src/js/pregJS.js b/src/js/pregJS.js index c23e1caf4d8000c3988e8e5ea358bbb7bd9c224b..32462087bbd33b500c41b5192f95fde5c359e405 100644 --- a/src/js/pregJS.js +++ b/src/js/pregJS.js @@ -390,16 +390,26 @@ window.setPregType = function(actor) { maxvol /= 10; // without hyperpreg enabled it's limited to be roughly ten times smaller. } let freevol = maxvol - cmvol; - let coeff = ((maxvol/actor.womb.length) / (freevol/ftvol)) / 2; // more divide to 2 is to balance for ensured 1 ova even if overlimit. - // console.log("ftvol:", ftvol, " cmvol:", cmvol, " maxvol:", maxvol, " freevol:", freevol, " coeff:", coeff); + let coeff = ((maxvol/actor.womb.length) / (freevol/ftvol)) / 2; // more divide to 2 is to balance for ensured 1 ova even if over limit. + + if (coeff < 0) + coeff = 0; + + if (State.variables.seeHyperPreg !== 0) { + coeff += jsRandom(0, fertilityStack/2); //this second chance for implantation. Should be affected only by chemical and genetic for easier implantation. Not directly related to ova count, only to body/womb condition. Raise successful implantation chance with already overfull womb. AFTER previous check. + } + if (ovum > coeff) { ovum = coeff; } - /* for future, if mounthly cycle will be a thing to implement, this will be useful. + + /* for future, if monthly cycle will be a thing to implement, this will be useful. if (ovum < 0) ovum = jsRandom(coeff/fertilityStack, 1); */ if (ovum < 1) { ovum = 1; } + + //console.log("Name: ", actor.slaveName, " ftvol:", ftvol, " cmvol:", cmvol, " maxvol:", maxvol, " freevol:", freevol, " coeff:", coeff, " fertilityStack: ", fertilityStack, " ovum: ", ovum); } return Math.ceil(ovum); diff --git a/src/js/random.js b/src/js/random.js new file mode 100644 index 0000000000000000000000000000000000000000..c98890793ea53e37c1e18b6fbbf308cf66d0d8b0 --- /dev/null +++ b/src/js/random.js @@ -0,0 +1,75 @@ +/** + * generate two independent Gaussian numbers using Box-Muller transform. + * mean and deviation specify the desired mean and standard deviation. + * @returns {number[]} + */ +window.gaussianPair = function(mean = 0, deviation = 1) { + const r = Math.sqrt(-2.0 * Math.log(1 - Math.random())); + const sigma = 2.0 * Math.PI * (1 - Math.random()); + return [r * Math.cos(sigma), r * Math.sin(sigma)].map(val => val * deviation + mean); +}; + +// Generate a random integer with a normal distribution between min and max (both inclusive). +// Default parameters result in truncating the standard normal distribution between -3 and +3. +// Not specifying min/max results in rerolling val approximately 0.3% of the time. +window.normalRandInt = function(mean = 0, deviation = 1, min = mean - 3 * deviation, max = mean + 3 * deviation) { + let val = gaussianPair(mean, deviation)[0]; + while (val < min || val > max) { + val = gaussianPair(mean, deviation)[0]; + } + return Math.round(val); +}; + +/** + * Returns a random integer between min and max (both inclusive). + * If count is defined, chooses that many random numbers between min and max and returns the average. This is an approximation of a normal distribution. + * @param {number} min + * @param {number} max + * @returns {number} + */ +window.jsRandom = function(min, max, count = 1) { + function rand() { + return Math.random() * (max - min + 1) + min; + } + + if (count === 1) { + return Math.floor(rand()); + } + + let total = 0; + for (let i = 0; i < count; i++) { + total += rand(); + } + return Math.floor(total/count); +}; + +/** + * Chooses multiple random elements of an array. + * @param {number[]} arr + * @param {number} count + * @returns {number[]} + */ +window.jsRandomMany = function(arr, count) { + let result = []; + let _tmp = arr.slice(); + for (let i = 0; i < count; i++) { + let index = Math.floor(Math.random() * _tmp.length); + result.push(_tmp.splice(index, 1)[0]); + } + return result; +}; + +/** + * Accepts both an array and a list, returns undefined if nothing is passed. + * @param {number|string|number[]|string[]} choices + * @param {...(number|string|number[]|string[])} otherChoices + * @returns {number|string|number[]|string[]|undefined} + */ +window.jsEither = function(choices, ...otherChoices) { + if (otherChoices.length === 0 && Array.isArray(choices)) { + return choices[Math.floor(Math.random() * choices.length)]; + } + const allChoices = otherChoices; + allChoices.push(choices); + return allChoices[Math.floor(Math.random() * allChoices.length)]; +}; diff --git a/src/js/rulesAssistant.js b/src/js/rulesAssistant.js index 2bff5a14ce2b81c0df411cf9901114a1362f4fcd..b1ed14d3311e6030e8255296f4ff462a9dbba61e 100644 --- a/src/js/rulesAssistant.js +++ b/src/js/rulesAssistant.js @@ -337,6 +337,7 @@ App.RA.newRule = function() { relationshipRules: null, standardPunishment: null, standardReward: null, + weight: null, diet: null, dietCum: null, dietMilk: null, @@ -547,6 +548,18 @@ App.RA.makeTarget = function(condition, val) { }; }; +/** + * Creates RA range object used in rules + * @param {number} minValue + * @param {number} maxValue + * @returns {App.RA.NumericRange} + */ +App.RA.makeRange = function(minValue, maxValue) { + return { + min: minValue, max: maxValue + }; +}; + /** * Shall the current value be increased according to the target and condition * @param {number} current diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js index 443f6e425dddbe818cf748760f8d5ae642dc9d65..43ead43cd73d59ddc0466ac98107e649d45b653b 100644 --- a/src/js/rulesAssistantOptions.js +++ b/src/js/rulesAssistantOptions.js @@ -112,9 +112,13 @@ window.rulesAssistantOptions = (function() { this.children = []; } + /** + * @param {Element} child + */ appendChild(child) { child.parent = this; this.children.push(child); + child._appendContentTo(this.element); this.element.appendChild(child.element); } @@ -131,6 +135,14 @@ window.rulesAssistantOptions = (function() { this.parent.children.slice(idx, 1); this.element.remove(); } + + /** + * @protected + * @param {HTMLElement} container + */ + _appendContentTo(container) { + container.appendChild(this.element); + } } class Section extends Element { @@ -155,7 +167,7 @@ window.rulesAssistantOptions = (function() { appendChild(child) { child.parent = this; this.children.push(child); - this.hidey.appendChild(child.element); + child._appendContentTo(this.hidey); } toggle_hidey() { @@ -170,12 +182,74 @@ window.rulesAssistantOptions = (function() { } } + class Tab extends Element { + /** + * + * @param {string} name + * @param {string} label + * @param {HTMLDivElement} tabButtonsContainer + */ + constructor(name, label, tabButtonsContainer) { + super(name); + tabButtonsContainer.appendChild(Tab.makeTabButton(name, label)); + } + render(name) { + const tab = document.createElement("div"); + tab.id = name; + tab.className = "tabcontent"; + + this.tabContent_ = document.createElement("div"); + this.tabContent_.classList.add("content"); + this.tabContent_.classList.add("ra-container"); + tab.appendChild(this.tabContent_); + + return tab; + } + + appendChild(child) { + child.parent = this; + this.children.push(child); + child._appendContentTo(this.tabContent_); + } + + static makeTabButton(name, text) { + const btn = document.createElement("button"); + btn.className = "tablinks"; + btn.id = `tab ${name}`; + btn.innerHTML = text; + btn.onclick = (event) => App.UI.tabbar.openTab(event, name); + return btn; + } + } + + class ElementWithLabel extends Element { + /** + * @param {string} label + * @param {*} args + */ + constructor(label, ...args) { + super(...args); + this.labelElement_ = document.createElement("span"); + this.labelElement_.className = "ra-label"; + this.labelElement_.innerHTML = label; + } + + /** + * @protected + * @param {HTMLElement} container + */ + _appendContentTo(container) { + container.appendChild(this.labelElement_); + super._appendContentTo(container); + } + } + // list of clickable elements // has a short explanation (the prefix) and a value display // value display can optionally be an editable text input field // it can be "bound" to a variable by setting its "onchange" method - class EditorWithShortcuts extends Element { + class EditorWithShortcuts extends ElementWithLabel { /** * * @param {string} prefix @@ -186,7 +260,7 @@ window.rulesAssistantOptions = (function() { * @param {...any} args */ constructor(prefix, data = [], allowNullValue = true, editor = false, capitalizeShortcuts = false, ...args) { - super(`${prefix}: `, editor, ...args); + super(prefix, editor, ...args); this.selectedItem = null; /** @protected */ this._allowNullValue = allowNullValue; @@ -195,22 +269,24 @@ window.rulesAssistantOptions = (function() { if (allowNullValue) { this.appendChild(new ListItem(capFirstChar(noDefaultSetting.text), null)); } - data.forEach(item => this.appendChild(this._createListItem(...item))); + data.forEach(item => this.appendChild(this._createListItem(item))); } createEditor(...args) { return null; } - render(prefix, editor, ...args) { + createValueElement() { return document.createElement("strong"); } + + render(editor, ...args) { const elem = document.createElement("div"); - const label = document.createElement("span"); - label.innerHTML = prefix; - this.value = editor ? this.createEditor(...args) : document.createElement("strong"); - elem.appendChild(label); - elem.appendChild(this.value); + this.value = editor ? this.createEditor(...args) : this.createValueElement(); + if (this.value !== null) { + elem.appendChild(this.value); + } elem.classList.add("rajs-list"); return elem; } + inputEdited() { if (this.selectedItem) { this.selectedItem.deselect(); } this.propagateChange(); @@ -225,10 +301,12 @@ window.rulesAssistantOptions = (function() { setValue(what) { const str = what === null ? "no default setting" : `${what}`; - if (this.value.tagName === "INPUT") { - this.value.value = str; - } else { - this.value.innerHTML = str; + if (this.value) { + if (this.value.tagName === "INPUT") { + this.value.value = str; + } else { + this.value.innerHTML = str; + } } } @@ -247,16 +325,23 @@ window.rulesAssistantOptions = (function() { /** * @private - * @param {string} display - * @param {any} data + * @param {string|string[]} item * @returns {ListItem} */ - _createListItem(display, data) { - if (this._capitalizeShortcuts) { - return new ListItem(capFirstChar(display), data); + _createListItem(item) { + let display = ''; + let data = null; + if (Array.isArray(item)) { + display = item[0]; + data = item.length > 1 ? item[1] : display; } else { - return new ListItem(display, data); + display = item; + data = item; } + if (this._capitalizeShortcuts) { + display = capFirstChar(display); + } + return new ListItem(display, data); } } @@ -290,17 +375,14 @@ window.rulesAssistantOptions = (function() { } } - class ListSelector extends Element { + class ListSelector extends ElementWithLabel { constructor(prefix, data = [], allowNullValue = true) { - super(`${prefix}: `, data, allowNullValue); + super(prefix, data, allowNullValue); } - render(prefix, data, allowNullValue) { + render(data, allowNullValue) { const elem = document.createElement("div"); - const label = document.createElement("span"); - label.innerHTML = prefix; this.value = document.createElement("select"); - elem.appendChild(label); elem.appendChild(this.value); elem.classList.add("rajs-list"); this.values_ = new Map(); @@ -345,6 +427,73 @@ window.rulesAssistantOptions = (function() { } } + class RadioSelector extends ElementWithLabel { + /** + * + * @param {string} prefix + * @param {Array} [data=[]] + * @param {boolean} [allowNullValue=true] + */ + constructor(prefix, data = [], allowNullValue = true) { + super(prefix, prefix, data, allowNullValue); + } + + render(prefix, data, allowNullValue) { + this.name_ = prefix.replace(' ', '_'); + const elem = document.createElement("div"); + this.values_ = new Map(); + this.radios_ = new Map(); + + let values = []; + if (allowNullValue) { + values.push([noDefaultSetting.value, noDefaultSetting.text]); + this.values_.set(noDefaultSetting.value, null); + } + for (const dr of data) { + const dv = Array.isArray(dr) ? (dr.length > 1 ? [dr[1], dr[0]] : [dr[0], dr[0]]) : [dr, dr]; + values.push(dv); + this.values_.set(`${dv[0]}`, dv[0]); + } + + for (const v of values) { + let inp = document.createElement("input"); + inp.type = "radio"; + inp.name = this.name_; + inp.id = `${prefix}_${v[0]}`; + inp.value = v[0]; + + let lbl = document.createElement("label"); + lbl.htmlFor = inp.id; + lbl.className = "ra-radio-label"; + lbl.innerHTML = capFirstChar(v[1]); + inp.onclick = () => { this.inputEdited(); }; + this.radios_.set(v[0], inp); + + elem.appendChild(inp); + elem.appendChild(lbl); + } + return elem; + } + + getData() { + return this.values_.get($(`input[name='${this.name_}']:checked`).val()); + } + + setValue(what) { + this.radios_.get(what === null ? noDefaultSetting.value : what).checked = true; + } + + inputEdited() { + this.propagateChange(); + } + + propagateChange() { + if (this.onchange instanceof Function) { + this.onchange(this.getData()); + } + } + } + class List extends EditorWithShortcuts { constructor(prefix, data = [], allowNullValue = true, textinput = false, capitalizeShortcuts = true) { super(prefix, data, allowNullValue, textinput, capitalizeShortcuts); @@ -418,13 +567,13 @@ window.rulesAssistantOptions = (function() { } } - class BooleanSwitch extends Element { + class BooleanSwitch extends ElementWithLabel { /** * @param {string} prefix * @param {Array} values values for "false" and "true" */ constructor(prefix, values = [false, true]) { - super(prefix); + super(prefix, prefix); /** @private */ this.values_ = { @@ -435,8 +584,6 @@ window.rulesAssistantOptions = (function() { render(prefix) { const elem = document.createElement("div"); - const label = document.createElement("span"); - label.innerHTML = `${prefix}: `; let switchContainer = document.createElement("div"); switchContainer.className = "ra-onoffswitch"; this.checkBox_ = document.createElement("input"); @@ -452,13 +599,12 @@ window.rulesAssistantOptions = (function() { switchSpan.className = "ra-onoffswitch-switch"; switchLabel.appendChild(innerSpan); switchLabel.appendChild(switchSpan); - elem.appendChild(label); switchContainer.appendChild(this.checkBox_); switchContainer.appendChild(switchLabel); elem.appendChild(switchContainer); elem.classList.add("rajs-list"); - this.checkBox_.onchange = () => { this.inputEdited();} + this.checkBox_.onchange = () => { this.inputEdited(); }; return elem; } @@ -481,7 +627,7 @@ window.rulesAssistantOptions = (function() { } } - class NumberRange extends EditorWithShortcuts { + class NumericTargetEditor extends EditorWithShortcuts { /** * @param {string} prefix * @param {Array} [data=[]] @@ -491,7 +637,7 @@ window.rulesAssistantOptions = (function() { * @param {boolean} [spinBox=false] */ constructor(prefix, data = [], allowNullValue = true, min = 0, max = 100, spinBox = false) { - super(prefix, data, allowNullValue, spinBox, true, min, max); + super(prefix, data, allowNullValue, spinBox, true, min, max); } createEditor(min, max) { @@ -511,9 +657,9 @@ window.rulesAssistantOptions = (function() { }; this.numEditor = document.createElement("input"); - this.numEditor.setAttribute("type", "number"); - this.numEditor.setAttribute("min", min); - this.numEditor.setAttribute("max", max); + this.numEditor.type = "number"; + this.numEditor.min = min; + this.numEditor.max= max; this.numEditor.classList.add("rajs-value"); // this.numEditor.onblur = () => { this.inputEdited(); @@ -550,21 +696,102 @@ window.rulesAssistantOptions = (function() { } } + class NumericRangeEditor extends EditorWithShortcuts { + /** + * @param {string} prefix + * @param {Array} [data=[]] + * @param {boolean} [allowNullValue=true] + * @param {number} [min=0] + * @param {number} [max=100] + */ + constructor(prefix, data = [], allowNullValue = true, min = 0, max = 100) { + super(prefix, data, allowNullValue, true, true, min, max); + } + + createEditor(min, max) { + this._min = min; + this._max = max; + let res = document.createElement("span"); + + function makeElem(lbl, container, editor) { + const spinBox = document.createElement("input"); + spinBox.type = "number"; + spinBox.min = min; + spinBox.max = max; + + const label = document.createElement("span"); + label.textContent = lbl; + label.className = "ra-inline-label"; + + const elem = document.createElement("span"); + elem.appendChild(label); + elem.appendChild(spinBox); + container.appendChild(elem); + + spinBox.onblur = () => { + editor.inputEdited(); + }; + spinBox.onkeypress = (e) => { + if (returnP(e)) { editor.inputEdited(); } + }; + + return spinBox; + } + + this._minEditor = makeElem("Min", res, this); + this._maxEditor = makeElem("Max", res, this); + + this._minEditor.addEventListener("input", event => { + const v = parseInt(this._minEditor.value); + if (!Number.isNaN(v)) { + this._maxEditor.min = Math.max(this._min, v).toString(); + } + }); + + this._maxEditor.addEventListener("input", event => { + const v = parseInt(this._maxEditor.value); + if (!Number.isNaN(v)) { + this._minEditor.max = Math.min(this._max, v).toString(); + } + }); + + return res; + } + + getData() { + function parse(what) { + return what === "" ? null : parseInt(what); + } + + const vMin = parse(this._minEditor.value); + const vMax = parse(this._maxEditor.value); + return (vMin === null && vMax === null) ? null : + App.RA.makeRange(vMin !== null ? vMin : this._min, vMax !== null ? vMax : this._max); + } + + setValue(what) { + if (what === null) { + this._minEditor.value = null; + this._maxEditor.value = null; + } else { + this._minEditor.value = what.min; + this._maxEditor.value = what.max; + } + } + } + // a way to organize lists with too many elements in subsections // children are bound to the master list - class ListSubSection extends Element { + class ListSubSection extends ElementWithLabel { constructor(parent, label, pairs) { super(label); this.parent = parent; - pairs.forEach(item => this.appendChild(new ListItem(...item))); + this.labelElement_.className = "ra-sub-label"; + pairs.forEach(item => this.appendChild(Array.isArray(item) ? new ListItem( ...item) : new ListItem(item))); } - render(label) { - const elem = document.createElement("div"); - const lelem = document.createElement("em"); - lelem.innerText = `${label}: `; - elem.appendChild(lelem); - return elem; + render() { + return document.createElement("div"); } appendChild(child) { @@ -588,6 +815,24 @@ window.rulesAssistantOptions = (function() { } } + class OptionsWithLabel extends Options { + constructor(prefix, elements = []) { + super(elements); + this.labelElement_ = document.createElement("span"); + this.labelElement_.className = "ra-label"; + this.labelElement_.innerHTML = prefix; + } + + /** + * @protected + * @param {HTMLElement} container + */ + _appendContentTo(container) { + container.appendChild(this.labelElement_); + super._appendContentTo(container); + } + } + // options equivalent of ListItem class OptionsItem extends Element { constructor(label, onclick) { @@ -685,7 +930,7 @@ window.rulesAssistantOptions = (function() { const text = this.textarea.value; try { const rule = JSON.parse(text); - if (rule instanceof Array) { + if (Array.isArray(rule)) { rule.forEach(r => { V.defaultRules.push(App.Entity.Utils.RARuleDatatypeCleanup(r)); }); @@ -714,6 +959,7 @@ window.rulesAssistantOptions = (function() { this.appendChild(new RuleOptions(this)); this.appendChild(new ConditionEditor(this)); this.appendChild(new EffectEditor(this)); + App.UI.tabbar.handlePreSelectedTab("appearance", true); } render(element) { @@ -910,8 +1156,7 @@ window.rulesAssistantOptions = (function() { } render() { - const elem = document.createElement("div"); - return elem; + return document.createElement("div"); } fnchanged(value) { @@ -1159,7 +1404,7 @@ window.rulesAssistantOptions = (function() { ["exclude", 0], ["only", 1] ]; - super("Special slaves", items, true, false, true); + super("Special slaves", items, false, false, true); this.setValue(current_rule.condition.specialSlaves); this.onchange = (value) => current_rule.condition.specialSlaves = value; } @@ -1218,24 +1463,28 @@ window.rulesAssistantOptions = (function() { class EffectEditor extends Element { constructor() { super(); - this.appendChild(new AppearanceSection(true)); - this.appendChild(new CosmeticSection(true)); - this.appendChild(new BodyModSection(true)); - this.appendChild(new AutosurgerySection(true)); - this.appendChild(new RegimenSection(true)); - this.appendChild(new BehaviourSection(true)); - this.appendChild(new OtherSection(true)); + this.appendChild(new AppearanceTab(this.tabButtons_)); + this.appendChild(new CosmeticTab(this.tabButtons_)); + this.appendChild(new BodyModTab(this.tabButtons_)); + this.appendChild(new AutosurgeryTab(this.tabButtons_)); + this.appendChild(new RegimenTab(this.tabButtons_)); + this.appendChild(new BehaviourTab(this.tabButtons_)); + this.appendChild(new OtherTab(this.tabButtons_)); } render() { const element = document.createElement("div"); + element.className = "ra-setters"; + this.tabButtons_ = document.createElement("div"); + this.tabButtons_.className = "tab"; + element.appendChild(this.tabButtons_); return element; } } - class AppearanceSection extends Section { - constructor(isCollapsed) { - super("Appearance Settings", isCollapsed); + class AppearanceTab extends Tab { + constructor(tabButtons) { + super("appearance", "Appearance", tabButtons); this.appendChild(new ClothesList()); this.appendChild(new CollarList()); this.appendChild(new ShoeList()); @@ -1260,11 +1509,12 @@ window.rulesAssistantOptions = (function() { } } - class RegimenSection extends Section { - constructor(isCollapsed) { - super("Physical Regimen Settings", isCollapsed); - if (V.arcologies[0].FSAssetExpansionistResearch === 1) + class RegimenTab extends Tab { + constructor(tabButtons) { + super("regiment", "Physical Regiment", tabButtons); + if (V.arcologies[0].FSAssetExpansionistResearch === 1) { this.appendChild(new HyperGrowthSwitch()); + } this.appendChild(new IntensiveGrowthSwitch()); this.appendChild(new GrowthList()); this.appendChild(new CurrativesList()); @@ -1281,6 +1531,7 @@ window.rulesAssistantOptions = (function() { if (V.enema === 1) { this.appendChild(new EnemaList()); } + this.appendChild(new WeightEditor()) this.appendChild(new DietList()); this.appendChild(new DietGrowthList()); this.appendChild(new DietBaseList()); @@ -1292,9 +1543,9 @@ window.rulesAssistantOptions = (function() { } } - class BehaviourSection extends Section { - constructor(isCollapsed) { - super("Behavior Settings", isCollapsed); + class BehaviourTab extends Tab { + constructor(tabButtons) { + super("behavior", "Behavior", tabButtons); this.appendChild(new AutomaticAssignmentList()); this.appendChild(new LivingStandardList()); this.appendChild(new PunishmentList()); @@ -1314,17 +1565,17 @@ window.rulesAssistantOptions = (function() { } } - class OtherSection extends Section { - constructor(isCollapsed) { - super("Other Settings", isCollapsed); + class OtherTab extends Tab { + constructor(tabButtons) { + super("other", "Other", tabButtons); this.appendChild(new LabelList()); this.appendChild(new LabelRemoveList()); } } - class CosmeticSection extends Section { - constructor(isCollapsed) { - super("Cosmetic Settings", isCollapsed); + class CosmeticTab extends Tab { + constructor(tabButtons) { + super("cosmetic", "Cosmetic", tabButtons); this.appendChild(new EyewearList()); this.appendChild(new LensesList()); this.appendChild(new EarwearList()); @@ -1346,9 +1597,9 @@ window.rulesAssistantOptions = (function() { } } - class BodyModSection extends Section { - constructor(isCollapsed) { - super("Body Mod Settings", isCollapsed); + class BodyModTab extends Tab { + constructor(tabButtons) { + super("bodyMod", "Body Mod", tabButtons); this.appendChild(new EarPiercingList()); this.appendChild(new NosePiercingList()); this.appendChild(new EyebrowPiercingList()); @@ -1383,9 +1634,9 @@ window.rulesAssistantOptions = (function() { } } - class AutosurgerySection extends Section { - constructor() { - super("Autosurgery Settings", true); + class AutosurgeryTab extends Tab { + constructor(tabButtons) { + super("autosurgery", "Autosurgery", tabButtons); this.appendChild(new AutosurgerySwitch()); this.appendChild(new VisionSurgeryList()); this.appendChild(new HearingSurgeryList()); @@ -1527,8 +1778,7 @@ window.rulesAssistantOptions = (function() { ]; spclothes.forEach(pair => { if (isItemAccessible(pair[1])) { nclothes.push(pair); } }); fsnclothes.forEach(pair => { if (isItemAccessible(pair[1])) { nclothes.push(pair); } }); - const nice = new ListSubSection(this, "Nice", nclothes); - this.appendChild(nice); + this._nice = new ListSubSection(this, "Nice", nclothes); const hclothes = [ ["Nude", "no clothing"], @@ -1542,12 +1792,17 @@ window.rulesAssistantOptions = (function() { ]; fshclothes.forEach(pair => { if (isItemAccessible(pair[1])) { hclothes.push(pair); } }); - const harsh = new ListSubSection(this, "Harsh", hclothes); - this.appendChild(harsh); + this._harsh = new ListSubSection(this, "Harsh", hclothes); this.setValue(current_rule.set.clothes); this.onchange = (value) => current_rule.set.clothes = value; } + + _appendContentTo(container) { + super._appendContentTo(container); + this._nice._appendContentTo(container); + this._harsh._appendContentTo(container); + } } class CollarList extends List { @@ -1572,8 +1827,7 @@ window.rulesAssistantOptions = (function() { ["Ancient Egyptian", "ancient Egyptian"], ]; fsncollars.forEach(pair => { if (isItemAccessible(pair[1])) { ncollars.push(pair); } }); - const nice = new ListSubSection(this, "Nice", ncollars); - this.appendChild(nice); + this._nice = new ListSubSection(this, "Nice", ncollars); const hcollars = []; setup.harshCollars.forEach(item => { @@ -1587,12 +1841,17 @@ window.rulesAssistantOptions = (function() { hcollars.push([item.name, item.value]); } }); - const harsh = new ListSubSection(this, "Harsh", hcollars); - this.appendChild(harsh); + this._harsh = new ListSubSection(this, "Harsh", hcollars); this.setValue(current_rule.set.collar); this.onchange = (value) => current_rule.set.collar = value; } + + _appendContentTo(container) { + super._appendContentTo(container); + this._nice._appendContentTo(container); + this._harsh._appendContentTo(container); + } } class ShoeList extends ListSelector { @@ -1613,7 +1872,7 @@ window.rulesAssistantOptions = (function() { bellies.push([`${acc.name} (FS)`, acc.value]); } else if (acc.rs === "boughtBelly" && V.clothesBoughtBelly === 1) { bellies.push([`${acc.name} (Purchased)`, acc.value]); -} + } }); super("Corsetage", bellies); this.setValue(current_rule.set.bellyAccessory); @@ -1647,13 +1906,13 @@ window.rulesAssistantOptions = (function() { } } - class VagChastityList extends List { + class VagChastityList extends RadioSelector { constructor() { const chaste = [ ["none", 0], ["chastity", 1], ]; - super("Vaginal chastity", chaste, true, false, true); + super("Vaginal chastity", chaste, true); this.setValue(current_rule.set.chastityVagina); this.onchange = (value) => current_rule.set.chastityVagina = value; } @@ -1723,13 +1982,13 @@ window.rulesAssistantOptions = (function() { } } - class DickChastityList extends List { + class DickChastityList extends RadioSelector { constructor() { const items = [ ["none", 0], ["chastity cage", 1], ]; - super("Penile chastity", items, true, false, true); + super("Penile chastity", items, true); this.setValue(current_rule.set.chastityPenis); this.onchange = (value) => current_rule.set.chastityPenis = value; } @@ -1751,13 +2010,13 @@ window.rulesAssistantOptions = (function() { } } - class AnalChastityList extends List { + class AnalChastityList extends RadioSelector { constructor() { const items = [ ["none", 0], ["chastity", 1], ]; - super("Anal chastity", items, true, false, true); + super("Anal chastity", items, true); this.setValue(current_rule.set.chastityAnus); this.onchange = (value) => current_rule.set.chastityAnus = value; } @@ -1771,7 +2030,7 @@ window.rulesAssistantOptions = (function() { accs.push([acc.name, acc.value]); } else if (acc.rs === "buyBigPlugs" && V.toysBoughtButtPlugs === 1) { accs.push([`${acc.name} (Purchased)`, acc.value]); -} + } }); super("Buttplugs for anal virgins", accs); this.setValue(current_rule.set.aVirginButtplug); @@ -1787,7 +2046,7 @@ window.rulesAssistantOptions = (function() { accs.push([acc.name, acc.value]); } else if (acc.rs === "buyBigPlugs" && V.toysBoughtButtPlugs === 1) { accs.push([`${acc.name} (Purchased)`, acc.value]); -} + } }); super("Buttplugs for other slaves", accs); this.setValue(current_rule.set.buttplug); @@ -1803,7 +2062,7 @@ window.rulesAssistantOptions = (function() { accs.push([acc.name, acc.value]); } else if (acc.rs === "buyTails" && V.toysBoughtButtPlugTails === 1) { accs.push([`${acc.name} (Purchased)`, acc.value]); -} + } }); super("Buttplug attachments for slaves with buttplugs", accs); this.setValue(current_rule.set.buttplugAttachment); @@ -1857,9 +2116,9 @@ window.rulesAssistantOptions = (function() { } } - class GrowthList extends Options { + class GrowthList extends OptionsWithLabel { constructor() { - super(); + super("Growth hormone regimes for healthy slaves"); this.sublists = []; const pairs = [ [capFirstChar(noDefaultSetting.text), () => this.nds()], @@ -1881,16 +2140,11 @@ window.rulesAssistantOptions = (function() { this.balls = new BallGrowthList(); this.sublists.push(this.dicks, this.balls); } - - this.sublists.forEach(i => this.appendChild(i)); } - render() { - const elem = document.createElement("div"); - const span = document.createElement("span"); - span.innerHTML = "Growth hormone regimes for healthy slaves: "; - elem.appendChild(span); - return elem; + _appendContentTo(container) { + super._appendContentTo(container); + this.sublists.forEach(i => i._appendContentTo(container)); } nds() { @@ -1904,8 +2158,8 @@ window.rulesAssistantOptions = (function() { this.breasts.setValue(App.RA.makeTarget('<=', 350)); this.butts.setValue(App.RA.makeTarget('<=', 2)); this.lips.setValue(App.RA.makeTarget('<=', 25)); - if (this.dicks) this.dicks.setValue(App.RA.makeTarget('==', 0)); - if (this.balls) this.balls.setValue(App.RA.makeTarget('==', 0)); + if (this.dicks) { this.dicks.setValue(App.RA.makeTarget('==', 0)); } + if (this.balls) { this.balls.setValue(App.RA.makeTarget('==', 0)); } this.sublists.forEach(i => i.propagateChange()); } @@ -1913,8 +2167,8 @@ window.rulesAssistantOptions = (function() { this.breasts.setValue(App.RA.makeTarget('>=', 1000)); this.butts.setValue(App.RA.makeTarget('>=', 5)); this.lips.setValue(App.RA.makeTarget('>=', 25)); - if (this.dicks) this.dicks.setValue(App.RA.makeTarget('>=', 4)); - if (this.balls) this.balls.setValue(App.RA.makeTarget('>=', 4)); + if (this.dicks) { this.dicks.setValue(App.RA.makeTarget('>=', 4)); } + if (this.balls) { this.balls.setValue(App.RA.makeTarget('>=', 4)); } this.sublists.forEach(i => i.propagateChange()); } @@ -1922,8 +2176,8 @@ window.rulesAssistantOptions = (function() { this.breasts.setValue(App.RA.makeTarget('>=', 9000)); this.butts.setValue(App.RA.makeTarget('>=', 10)); this.lips.setValue(App.RA.makeTarget('>=', 45)); - if (this.dicks) this.dicks.setValue(App.RA.makeTarget('>=', 6)); - if (this.balls) this.balls.setValue(App.RA.makeTarget('>=', 6)); + if (this.dicks) { this.dicks.setValue(App.RA.makeTarget('>=', 6)); } + if (this.balls) { this.balls.setValue(App.RA.makeTarget('>=', 6)); } this.sublists.forEach(i => i.propagateChange()); } @@ -1931,8 +2185,8 @@ window.rulesAssistantOptions = (function() { this.breasts.setValue(App.RA.makeTarget('>=', 48000)); this.butts.setValue(App.RA.makeTarget('>=', 20)); this.lips.setValue(App.RA.makeTarget('>=', 100)); - if (this.dicks) this.dicks.setValue(App.RA.makeTarget('>=', 30)); - if (this.balls) this.balls.setValue(App.RA.makeTarget('>=', 125)); + if (this.dicks) { this.dicks.setValue(App.RA.makeTarget('>=', 30)); } + if (this.balls) { this.balls.setValue(App.RA.makeTarget('>=', 125)); } this.sublists.forEach(i => i.propagateChange()); } @@ -1944,7 +2198,7 @@ window.rulesAssistantOptions = (function() { } } - class BreastGrowthList extends NumberRange { + class BreastGrowthList extends NumericTargetEditor { constructor() { const pairs = [ ["B-Cup", 350], @@ -1959,7 +2213,7 @@ window.rulesAssistantOptions = (function() { } } - class ButtGrowthList extends NumberRange { + class ButtGrowthList extends NumericTargetEditor { constructor() { const pairs = [ ["cute", 2], @@ -1974,7 +2228,7 @@ window.rulesAssistantOptions = (function() { } } - class LipGrowthList extends NumberRange { + class LipGrowthList extends NumericTargetEditor { constructor() { const pairs = [ ["plump", 25], @@ -1988,7 +2242,7 @@ window.rulesAssistantOptions = (function() { } } - class DickGrowthList extends NumberRange { + class DickGrowthList extends NumericTargetEditor { constructor() { const pairs = [ ["above average", 4], @@ -2002,7 +2256,7 @@ window.rulesAssistantOptions = (function() { } } - class BallGrowthList extends NumberRange { + class BallGrowthList extends NumericTargetEditor { constructor() { const pairs = [ ["sizable", 4], @@ -2043,13 +2297,13 @@ window.rulesAssistantOptions = (function() { } } - class ContraceptiveList extends List { + class ContraceptiveList extends RadioSelector { constructor() { const drugs = [ ["contraceptives", true], ["fertile", false], ]; - super("Contraceptives for fertile slaves", drugs, true, false, true); + super("Contraceptives for fertile slaves", drugs, true); this.setValue(current_rule.set.preg); this.onchange = (value) => current_rule.set.preg = value; } @@ -2060,7 +2314,7 @@ window.rulesAssistantOptions = (function() { const pairs = [ ["abort all", "all"], ]; - if (V.pregnancyMonitoringUpgrade === 1 && V.geneticMappingUpgrade === 1) { + if (V.pregnancyMonitoringUpgrade === 1 && V.geneticMappingUpgrade >= 1) { pairs.push(["abort boys", "male"]); pairs.push(["abort girls", "female"]); } @@ -2209,14 +2463,29 @@ window.rulesAssistantOptions = (function() { } } + class WeightEditor extends NumericRangeEditor { + constructor() { + const pairs = [ + ["rail thin", App.RA.makeRange(-100, -96)], + ["thin", App.RA.makeRange(-95, -31)], + ["pleasingly thin", App.RA.makeRange(-30, -11)], + ["healthy", App.RA.makeRange(-10, 10)], + ["curvy", App.RA.makeRange(10, 30)], + ["quite curvy", App.RA.makeRange(10, 30)], + ["extremely curvy", App.RA.makeRange(31, 95)] + ]; + + super("Weight", pairs, true, -100, 200); + this.setValue(current_rule.set.weight); + this.onchange = (value) => current_rule.set.weight = value; + } + } + class DietList extends ListSelector { constructor() { const diets = [ ["Healthy diet", "healthy"], ["fix fat and skinny slaves", "attractive"], - ["curvy", 30], - ["average", 0], - ["thin", -30] ]; if (V.feeder === 1) { diets.push( @@ -2237,7 +2506,7 @@ window.rulesAssistantOptions = (function() { diets.push(["cum production"]); } - super("Slave diets", diets); + super("Special diets", diets); this.setValue(current_rule.set.diet); this.onchange = (value) => current_rule.set.diet = value; } @@ -2277,19 +2546,19 @@ window.rulesAssistantOptions = (function() { } } - class DietSolidFoodList extends List { + class DietSolidFoodList extends RadioSelector { constructor() { const pairs = [ ["permitted", 0], ["forbidden", 1], ]; - super("Solid food access", pairs, true, false, true); + super("Solid food access", pairs, true); this.setValue(current_rule.set.onDiet); this.onchange = (value) => current_rule.set.onDiet = value; } } - class MuscleList extends NumberRange { + class MuscleList extends NumericTargetEditor { constructor() { const pairs = [ ["none", 0], @@ -2453,39 +2722,39 @@ window.rulesAssistantOptions = (function() { } } - class SpeechList extends List { + class SpeechList extends RadioSelector { constructor() { const pairs = [ ["permissive"], ["suppress accents", "accent elimination"], ["restrictive"] ]; - super("Speech rules", pairs, true, false, true); + super("Speech rules", pairs, true); this.setValue(current_rule.set.speechRules); this.onchange = (value) => current_rule.set.speechRules = value; } } - class RelationshipList extends List { + class RelationshipList extends RadioSelector { constructor() { const pairs = [ ["permissive"], ["just friends"], ["restrictive"] ]; - super("Relationship rules", pairs, true, false, true); + super("Relationship rules", pairs, true); this.setValue(current_rule.set.relationshipRules); this.onchange = (value) => current_rule.set.relationshipRules = value; } } - class PornBroadcastStatus extends List { + class PornBroadcastStatus extends RadioSelector { constructor() { const pairs = [ ["disabled", 0], ["enabled", 1] ]; - super("Porn Broadcasting Status", pairs, true, false, true); + super("Porn Broadcasting Status", pairs, true); this.setValue(current_rule.set.pornFeed); this.onchange = (value) => current_rule.set.pornFeed = value; } @@ -2524,92 +2793,100 @@ window.rulesAssistantOptions = (function() { } } - class LensesList extends Element { + class LensesList extends List { constructor() { - super(current_rule.set.eyeColor); - this.appendChild(new OptionsItem(capFirstChar(noDefaultSetting.text), () => this.setValue(null))); - this.colorlist = new LensesColorList(); - this.shapelist = new LensesShapeList(); - this.appendChild(this.colorlist); - this.appendChild(this.shapelist); + super("Eye coloring"); + this.colorlist = new LensesColorList(this); + this.shapelist = new LensesShapeList(this); + this.colorlist.onchange = () => this.setValue(undefined); + this.shapelist.onchange = () => this.setValue(undefined); + this.setValue(current_rule.set.eyeColor); + this.onchange = (value) => current_rule.set.eyeColor = value; } - render(color) { - const elem = document.createElement("div"); - elem.innerHTML = "Eye coloring: "; - this.label = document.createElement("strong"); - this.label.innerText = color; - elem.appendChild(this.label); - return elem; + _appendContentTo(container) { + super._appendContentTo(container); + this.colorlist._appendContentTo(container); + this.shapelist._appendContentTo(container); } combine() { const lst = []; - if (this.colorlist.value !== null) - lst.push(this.colorlist.value); - if (this.shapelist.value !== null) - lst.push(this.shapelist.value); - if (lst.length === 0) return null; - else return lst.join(" "); + if (this.colorlist.getData() !== null) { lst.push(this.colorlist.getData()); } + if (this.shapelist.getData() !== null) { lst.push(this.shapelist.getData()); } + return (lst.length === 0) ? null : lst.join(" "); } setValue(val) { - if (val === undefined) { val = this.combine(); } - this.label.innerText = `${val} `; + if (val === undefined) { + val = this.combine(); + } else { + if (val === noDefaultSetting.value) { + this.colorlist.setValue(val); + this.shapelist.setValue(val); + } else { + // + } + } + super.setValue(val); current_rule.set.eyeColor = val; } } - class LensesColorList extends Options { - constructor() { - const items = []; - [ - null, - "blue", - "black", - "brown", - "green", - "turquoise", - "sky-blue", - "hazel", - "pale-grey", - "white", - "pink", - "yellow", - "orange", - "amber", - "red" - ].forEach(i => items.push(new OptionsItem(i, item => { - this.value = item.label; - this.parent.setValue(); - }))); - super(items); - } - } - - class LensesShapeList extends Options { - constructor() { - const items = []; - [ - null, - "catlike", - "serpent-like", - "goat-like", - "devilish", - "demonic", - "hypnotic", - "heart-shaped", - "star-shaped", - "wide-eyed", - "almond-shaped", - "bright", - "teary", - "vacant" - ].forEach(i => items.push(new OptionsItem(i, item => { - this.value = item.label; - this.parent.setValue(); - }))); - super(items); + class LensesColorList extends List { + constructor(parent) { + const items = + [ + "blue", + "black", + "brown", + "green", + "turquoise", + "sky-blue", + "hazel", + "pale-grey", + "white", + "pink", + "yellow", + "orange", + "amber", + "red" + ]; + super("Color", items); + this.labelElement_.className = "ra-sub-label"; + this.parent = parent; + } + + createValueElement() { + return null; + } + } + + class LensesShapeList extends List { + constructor(parent) { + const items = + [ + "catlike", + "serpent-like", + "goat-like", + "devilish", + "demonic", + "hypnotic", + "heart-shaped", + "star-shaped", + "wide-eyed", + "almond-shaped", + "bright", + "teary", + "vacant" + ]; + super("Shape", items); + this.labelElement_.className = "ra-sub-label"; + this.parent = parent; + } + + createValueElement() { + return null; } } @@ -2621,7 +2898,7 @@ window.rulesAssistantOptions = (function() { ["muffle with ear plugs"], ["deafen with ear plugs"] ]; - super("Earwear", pairs, true, false, true); + super("Earwear", pairs, true); this.setValue(current_rule.set.earwear); this.onchange = (value) => current_rule.set.earwear = value; } @@ -3110,106 +3387,93 @@ window.rulesAssistantOptions = (function() { // I sorted this next section from top of body down, to make it easier to read for users. Hopefully when making similar lists elsewhere in the game, folks will use the same order. Makes it much easier to compare and make sure nothing is missing. And alphabetical is a poor choice for user facing lists. // Head - const cheeks = new ListSubSection(this, "Cheeks", [ + this._cheeks = new ListSubSection(this, "Cheeks", [ ["Left", "left cheek"], ["Right", "right cheek"], ["Both", "cheeks"] ]); - this.appendChild(cheeks); - const ears = new ListSubSection(this, "Ears", [ + this._ears = new ListSubSection(this, "Ears", [ ["Left", "left ear"], ["Right", "right ear"], ["Both", "ears"] ]); - this.appendChild(ears); // Torso - const breasts = new ListSubSection(this, "Breasts", [ + this._breasts = new ListSubSection(this, "Breasts", [ ["Left", "left breast"], ["Right", "right breast"], ["Both", "breasts"] ]); - this.appendChild(breasts); // Arms - const shoulders = new ListSubSection(this, "Shoulders", [ + this._shoulders = new ListSubSection(this, "Shoulders", [ ["Left", "left shoulder"], ["Right", "right shoulder"], ["Both", "shoulders"] ]); - this.appendChild(shoulders); - const upper_arms = new ListSubSection(this, "Arms, upper", [ + this._upperArms = new ListSubSection(this, "Arms, upper", [ ["Left", "left upper arm"], ["Right", "right upper arm"], ["Both", "upper arms"] ]); - this.appendChild(upper_arms); - const lower_arms = new ListSubSection(this, "Arms, lower", [ + this._lowerArms = new ListSubSection(this, "Arms, lower", [ ["Left", "left lower arm"], ["Right", "right lower arm"], ["Both", "lower arms"] ]); - this.appendChild(lower_arms); - const wrist = new ListSubSection(this, "Wrist", [ + this._wrist = new ListSubSection(this, "Wrist", [ ["Left", "left wrist"], ["Right", "right wrist"], ["Both", "wrists"] ]); - this.appendChild(wrist); - const hand = new ListSubSection(this, "Hand", [ + this._hand = new ListSubSection(this, "Hand", [ ["Left", "left hand"], ["Right", "right hand"], ["Both", "hands"] ]); - this.appendChild(hand); // Legs - const buttocks = new ListSubSection(this, "Buttocks", [ + this._buttocks = new ListSubSection(this, "Buttocks", [ ["Left", "left buttock"], ["Right", "right buttock"], ["Both", "buttocks"] ]); - this.appendChild(buttocks); - const thigh = new ListSubSection(this, "Thigh", [ + this._thigh = new ListSubSection(this, "Thigh", [ ["Left", "left thigh"], ["Right", "right thigh"], ["Both", "thighs"] ]); - this.appendChild(thigh); - const calf = new ListSubSection(this, "Calf", [ + this._calf = new ListSubSection(this, "Calf", [ ["Left", "left calf"], ["Right", "right calf"], ["Both", "calves"] ]); - this.appendChild(calf); - const ankle = new ListSubSection(this, "Ankle", [ + this._ankle = new ListSubSection(this, "Ankle", [ ["Left", "left ankle"], ["Right", "right ankle"], ["Both", "ankles"] ]); - this.appendChild(ankle); - const feet = new ListSubSection(this, "Feet", [ + this._feet = new ListSubSection(this, "Feet", [ ["Left", "left foot"], ["Right", "right foot"], ["Both", "feet"] ]); - this.appendChild(feet); // Other - const other = new ListSubSection(this, "Other", [ + this._other = new ListSubSection(this, "Other", [ ["Neck", "neck"], ["Chest", "chest"], ["Back", "back"], @@ -3220,11 +3484,27 @@ window.rulesAssistantOptions = (function() { // Ignoring testicles and penis for now, as not all slaves have them. - this.appendChild(other); - this.setValue(current_rule.set.brandTarget); this.onchange = (value) => current_rule.set.brandTarget = value; } + + _appendContentTo(container) { + super._appendContentTo(container); + this._cheeks._appendContentTo(container); + this._ears._appendContentTo(container); + this._breasts._appendContentTo(container); + this._shoulders._appendContentTo(container); + this._upperArms._appendContentTo(container); + this._lowerArms._appendContentTo(container); + this._wrist._appendContentTo(container); + this._hand._appendContentTo(container); + this._buttocks._appendContentTo(container); + this._thigh._appendContentTo(container); + this._calf._appendContentTo(container); + this._ankle._appendContentTo(container); + this._feet._appendContentTo(container); + this._other._appendContentTo(container); + } } class BrandDesignList extends StringEditor { @@ -3458,85 +3738,85 @@ window.rulesAssistantOptions = (function() { } } - class VisionSurgeryList extends List { + class VisionSurgeryList extends RadioSelector { constructor() { const items = [ ["fixed", 1], ["blurred", -1], ]; - super("Vision correction", items, true, false, true); + super("Vision correction", items, true); this.setValue(current_rule.set.surgery.eyes); this.onchange = (value) => current_rule.set.surgery.eyes = value; } } - class HearingSurgeryList extends List { + class HearingSurgeryList extends RadioSelector { constructor() { const items = [ ["fixed", 0], ["muffled", -1], ]; - super("Hearing correction", items, true, false, true); + super("Hearing correction", items, true); this.setValue(current_rule.set.surgery.hears); this.onchange = (value) => current_rule.set.surgery.hears = value; } } - class SmellSurgeryList extends List { + class SmellSurgeryList extends RadioSelector { constructor() { const items = [ ["fixed", 0], ["disabled", -1], ]; - super("Olfactory correction", items, true, false, true); + super("Olfactory correction", items, true); this.setValue(current_rule.set.surgery.smells); this.onchange = (value) => current_rule.set.surgery.smells = value; } } - class TasteSurgeryList extends List { + class TasteSurgeryList extends RadioSelector { constructor() { const items = [ ["fixed", 0], ["disabled", -1], ]; - super("Gustatory correction", items, true, false, true); + super("Gustatory correction", items, true); this.setValue(current_rule.set.surgery.tastes); this.onchange = (value) => current_rule.set.surgery.tastes = value; } } - class LactationSurgeryList extends List { + class LactationSurgeryList extends RadioSelector { constructor() { const items = [ ["implanted", 1], ["removed", 0], ]; - super("Lactation drug implants", items, true, false, true); + super("Lactation drug implants", items, true); this.setValue(current_rule.set.surgery.lactation); this.onchange = (value) => current_rule.set.surgery.lactation = value; } } - class SemenSurgeryList extends List { + class SemenSurgeryList extends RadioSelector { constructor() { const items = [ ["implanted", 1], ["removed", 0], ]; - super("Prostate production enhancing drug implants", items, true, false, true); + super("Prostate production enhancing drug implants", items, true); this.setValue(current_rule.set.surgery.prostate); this.onchange = (value) => current_rule.set.surgery.prostate = value; } } - class VasectomyList extends List { + class VasectomyList extends RadioSelector { constructor() { const items = [ ["apply vasectomy", true], ["undo vasectomy", false], ]; - super("Apply or undo vasectomy for slaves with testicles", items, true, false, true); + super("Apply or undo vasectomy for slaves with testicles", items, true); this.setValue(current_rule.set.surgery.vasectomy); this.onchange = (value) => current_rule.set.surgery.vasectomy = value; } @@ -3549,13 +3829,13 @@ window.rulesAssistantOptions = (function() { ["subtle", 1], ["invasive", 2], ]; - super("Cosmetic Surgery", items, true, false, true); + super("Cosmetic Surgery", items, true); this.setValue(current_rule.set.surgery.cosmetic); this.onchange = (value) => current_rule.set.surgery.cosmetic = value; } } - class LipSurgeryList extends NumberRange { + class LipSurgeryList extends NumericTargetEditor { constructor() { const items = [ ["removed", 0], @@ -3570,7 +3850,7 @@ window.rulesAssistantOptions = (function() { } } - class ButtSurgeryList extends NumberRange { + class ButtSurgeryList extends NumericTargetEditor { constructor() { const items = [ ["removed", 0], @@ -3585,7 +3865,7 @@ window.rulesAssistantOptions = (function() { } } - class BreastSurgeryList extends NumberRange { + class BreastSurgeryList extends NumericTargetEditor { constructor() { const items = [ ["removed", 0], @@ -3601,49 +3881,49 @@ window.rulesAssistantOptions = (function() { } } - class TighteningSurgeryList extends List { + class TighteningSurgeryList extends RadioSelector { constructor() { const items = [ ["tightening", 1], ["virginity restoration", 2], ]; - super("Orifice Tightening", items, true, false, true); + super("Orifice Tightening", items, true); this.setValue(current_rule.set.surgery.holes); this.onchange = (value) => current_rule.set.surgery.holes = value; } } - class TummyTuckSurgeryList extends List { + class TummyTuckSurgeryList extends RadioSelector { constructor() { const items = [ ["tuck", 1], ]; - super("Tummy Tuck", items, true, false, true); + super("Tummy Tuck", items, true); this.setValue(current_rule.set.surgery.tummy); this.onchange = (value) => current_rule.set.surgery.tummy = value; } } - class BodyHairSurgeryList extends List { + class BodyHairSurgeryList extends RadioSelector { constructor() { const items = [ ["keep", 1], ["removal", 2], ]; - super("Body Hair", items, true, false, true); + super("Body Hair", items, true); this.setValue(current_rule.set.surgery.bodyhair); this.onchange = (value) => current_rule.set.surgery.bodyhair = value; } } - class HairSurgeryList extends List { + class HairSurgeryList extends RadioSelector { constructor() { const items = [ ["keep", 1], ["removal", 2], ]; - super("Hair", items, true, false, true); + super("Hair", items, true); this.setValue(current_rule.set.surgery.hair); this.onchange = (value) => current_rule.set.surgery.hair = value; } @@ -3708,13 +3988,13 @@ window.rulesAssistantOptions = (function() { } } - class BellyImplantList extends List { + class BellyImplantList extends RadioSelector { constructor() { const items = [ ["install", "install"], ["remove", "remove"], ]; - super("Belly implant", items, true, false, true); + super("Belly implant", items, true); this.setValue(current_rule.set.surgery.bellyImplant); this.onchange = (value) => current_rule.set.surgery.bellyImplant = value; } diff --git a/src/js/rulesAutosurgery.js b/src/js/rulesAutosurgery.js index 04a3c5e82ba5ddac781dfe197cb9e3d879b9ef8c..2d4d1700d844f3431852a25774284e43a1a754a1 100644 --- a/src/js/rulesAutosurgery.js +++ b/src/js/rulesAutosurgery.js @@ -302,7 +302,7 @@ window.rulesAutosurgery = (function() { if (slave.health > 20 && surgeries.length < 3) { if (slave.faceImplant <= 15 && slave.face <= 95 && thisSurgery.cosmetic > 0) { commitProcedure("a nicer face", slave => { - if (slave.faceShape === "masculine") slave.faceShape = "androgynous"; + if (slave.faceShape === "masculine") { slave.faceShape = "androgynous"; } slave.faceImplant += 25 - 5 * Math.trunc(V.PC.medicine / 50) - 5 * V.surgeryUpgrade; slave.face = Math.clamp(slave.face + 20, -100, 100); }); @@ -310,16 +310,20 @@ window.rulesAutosurgery = (function() { commitProcedure("an age lift", slave => { slave.ageImplant = 1; slave.faceImplant += 25 - 5 * Math.trunc(V.PC.medicine / 50) - 5 * V.surgeryUpgrade; - if (slave.visualAge > 80) slave.visualAge -= 40; - else if (slave.visualAge >= 70) slave.visualAge -= 30; - else if (slave.visualAge > 50) slave.visualAge -= 20; - else if (slave.visualAge > 36) slave.visualAge -= 10; - else slave.visualAge -= 5; + if (slave.visualAge > 80) { + slave.visualAge -= 40; + } else if (slave.visualAge >= 70) { + slave.visualAge -= 30; + } else if (slave.visualAge > 50) { + slave.visualAge -= 20; + } else if (slave.visualAge > 36) { + slave.visualAge -= 10; + } else { slave.visualAge -= 5; } }); } else if (((slave.underArmHStyle !== "bald" && slave.underArmHStyle !== "hairless") || (slave.pubicHStyle !== "bald" && slave.pubicHStyle !== "hairless")) && thisSurgery.bodyhair === 2) { commitProcedure("body hair removal", slave => { - if (slave.underArmHStyle !== "hairless") slave.underArmHStyle = "bald"; - if (slave.pubicHStyle !== "hairless") slave.pubicHStyle = "bald"; + if (slave.underArmHStyle !== "hairless") { slave.underArmHStyle = "bald"; } + if (slave.pubicHStyle !== "hairless") { slave.pubicHStyle = "bald"; } }, 0); } else if ((slave.bald === 0 || slave.hStyle !== "bald" || slave.eyebrowHStyle !== "bald") && thisSurgery.hair === 2) { commitProcedure("hair removal", slave => { @@ -359,7 +363,7 @@ window.rulesAutosurgery = (function() { commitProcedure("surgery to remove a c-section scar", s => { s.cSec = 0; }); } else if (slave.faceImplant <= 45 && slave.face <= 95 && thisSurgery.cosmetic === 2) { commitProcedure("a nicer face", slave => { - if (slave.faceShape === "masculine") slave.faceShape = "androgynous"; + if (slave.faceShape === "masculine") { slave.faceShape = "androgynous"; } slave.faceImplant += 25 - 5 * Math.trunc(V.PC.medicine / 50) - 5 * V.surgeryUpgrade; slave.face = Math.clamp(slave.face + 20, -100, 100); }); diff --git a/src/js/slaveCostJS.js b/src/js/slaveCostJS.js index 9e1708765a8c9be8402d7993d48ee08ed779a748..e820129cbca9539a4741ccc7f3fc1f7ba172ae08 100644 --- a/src/js/slaveCostJS.js +++ b/src/js/slaveCostJS.js @@ -188,10 +188,14 @@ window.Beauty = (function() { * @param {App.Entity.SlaveState} slave */ function calcCosmeticsBeauty(slave) { - if (V.rep > 10000) { - beauty += Object.getOwnPropertyNames(slave.brand).length; - } else if (V.rep < 5000) { - beauty -= Object.getOwnPropertyNames(slave.brand).length; + if (V.rep > 10000 || V.rep < 5000) { + if (Object.values(slave.brand).includes(V.brandDesign.official)) { + if (V.rep > 10000) { + beauty += 1; + } else if (V.rep < 5000) { + beauty -= 1; + } + } } if (slave.minorInjury !== 0) { beauty -= 2; @@ -874,7 +878,7 @@ window.Beauty = (function() { */ function calcRestartPregBeauty(slave) { if (slave.breedingMark === 1 && V.propOutcome === 1) { - if (slave.preg > slave.pregData.normalBirth / 8 && slave.pregSource === -1) { + if ((slave.preg > slave.pregData.normalBirth / 8) && ((slave.pregSource === -1) || (slave.pregSource === -6))) { beauty += arcology.FSRestart; /* 100 */ } } else { diff --git a/src/js/slaveListing.js b/src/js/slaveListing.js index 7f9b9d32fdd7d5e2be395fb70d666404782911ea..74ca168b468877d6c8a57cef114632a0bae45574 100644 --- a/src/js/slaveListing.js +++ b/src/js/slaveListing.js @@ -361,6 +361,8 @@ App.UI.SlaveList.sortingLinks = function(passage) { */ App.UI.SlaveList.listSJFacilitySlaves = function(facility, facilityPassage, showTransfersTab = false, tabCaptions = undefined) { const V = State.variables; + const job = facility.job(); + facilityPassage = facilityPassage || passage(); tabCaptions = tabCaptions || { assign: 'Assign a slave', @@ -378,7 +380,7 @@ App.UI.SlaveList.listSJFacilitySlaves = function(facility, facilityPassage, show '</div>'; if (facility.hostedSlaves > 0) { - let facilitySlaves = facility.job().employeesIndices(); + let facilitySlaves = job.employeesIndices(); SlaveSort.indices(facilitySlaves); r += App.UI.tabbar.makeTab("remove", App.UI.SlaveList.render(facilitySlaves, [], App.UI.SlaveList.SlaveInteract.stdInteract, @@ -409,8 +411,10 @@ App.UI.SlaveList.listSJFacilitySlaves = function(facility, facilityPassage, show (slave, index) => App.UI.passageLink(`Send ${getPronouns(slave).object} to ${facility.name}`, "Assign", `$i = ${index}`)); } if (facility.hasFreeSpace) { - // slaves from the penthouse can be transferred here - r += App.UI.tabbar.makeTab("assign", assignableTabContent(App.Entity.facilities.penthouse.employeesIndices())); + const assignableSlaveIdxs = job.desc.partTime ? + Array.apply(null, {length: V.slaves.length}).map(Number.call, Number) : // all slaves can work here + App.Entity.facilities.penthouse.employeesIndices(); // only slaves from the penthouse can be transferred here + r += App.UI.tabbar.makeTab("assign", assignableTabContent(assignableSlaveIdxs)); } else { r += App.UI.tabbar.makeTab("assign", `<strong>${capFirstChar(facility.name)} is full and cannot hold any more slaves</strong>`); } diff --git a/src/js/slaveStatsChecker.js b/src/js/slaveStatsChecker.js index e2cc4af5707a469f16bb3455fb7053919dc0f4c2..eca6c07cd6e5d10fda60243aaf94898a4d8c05c8 100644 --- a/src/js/slaveStatsChecker.js +++ b/src/js/slaveStatsChecker.js @@ -23,7 +23,8 @@ window.SlaveStatsChecker = (function() { const V = State.variables; V.piercingScore = piercingScore(slave); V.tatScore = tatScore(slave); - return V.tatScore + V.piercingScore; + V.brandScore = brandScore(slave); + return V.tatScore + V.piercingScore + V.brandScore; } /** @@ -147,6 +148,17 @@ window.SlaveStatsChecker = (function() { return score; } + /** + * helper function, not callable + * @param {App.Entity.SlaveState} slave + * @returns {number} + */ + function brandScore(slave) { + let score = 0; + score += Object.getOwnPropertyNames(slave.brand).length; + return score; + } + /** * call as SlaveStatsChecker.isModded() * @param {App.Entity.SlaveState} slave @@ -155,9 +167,10 @@ window.SlaveStatsChecker = (function() { function isModded(slave) { const tattoos = tatScore(slave); const piercings = piercingScore(slave); + const brands = brandScore(slave); const mods = piercings+tattoos; - return (mods > 15 || (piercings > 8 && tattoos > 5)); + return (mods > 15 || (piercings > 8 && tattoos > 5) || brands > 1); } /** @@ -168,8 +181,9 @@ window.SlaveStatsChecker = (function() { function isUnmodded(slave) { const tattoos = tatScore(slave); const piercings = piercingScore(slave); + const brands = brandScore(slave); - return (!isModded(slave) && slave.corsetPiercing === 0 && piercings < 3 && tattoos < 2); + return (!isModded(slave) && slave.corsetPiercing === 0 && piercings < 3 && tattoos < 2 && brands === 0); } }()); @@ -235,6 +249,17 @@ window.slimLawPass = function(slave) { return slimLawPass; }; +/** + * Returns if slave is considered an acceptable height by arcology standards. + * @param {App.Entity.SlaveState} slave + * @returns {boolean} + */ +window.heightPass = function(slave) { + let measuresUp = false; + // to make the other js that calls this unfinished function not meltdown + return measuresUp; +} + /** * Returns if slave is considered stacked (big T&A) or not. * @param {App.Entity.SlaveState} slave diff --git a/src/js/storyJS.js b/src/js/storyJS.js index c885f3c30d2b9afce175e5ee35d6e3cbc59c755d..b69371553a42fde3f8bbae7bd32e682ebbb53843 100644 --- a/src/js/storyJS.js +++ b/src/js/storyJS.js @@ -693,3 +693,153 @@ window.printTrinkets = function printTrinkets() { } return `There's a display case behind your desk, with ${trinketString}.`; }; + +/** + * @param {number} nmbr1 + * @param {number} nmbr2 + */ +window.pregNumberName = function(nmbr1, nmbr2) { + let pt = ""; + let p1 = nmbr1 % 10; + let p2 = ((nmbr1 % 100) - (nmbr1 % 10)) / 10; + let p3 = ((nmbr1 % 1000) - (nmbr1 % 100)) / 100; + switch (nmbr1) { + case 1: + pt += "bab"; + break; + case 2: + pt += "twin"; + break; + default: + switch (nmbr1) { + case 3: + pt += "tri"; + break; + case 4: + pt += "quadru"; + break; + case 5: + pt += "quintu"; + break; + case 6: + pt += "sextu"; + break; + case 7: + pt += "septu"; + break; + case 8: + pt += "octu"; + break; + case 9: + pt += "nonu"; + break; + default: + switch (p1) { + case 1: + pt += "un"; + break; + case 2: + pt += "duo"; + break; + case 3: + pt += "tre"; + break; + case 4: + pt += "quattuor"; + break; + case 5: + pt += "quin"; + break; + case 6: + pt += "sex"; + break; + case 7: + pt += "septen"; + break; + case 8: + pt += "octo"; + break; + case 9: + pt += "novem"; + break; + } + switch (p2) { + case 1: + pt += "dec"; + break; + case 2: + pt += "vigint"; + break; + case 3: + pt += "trigint"; + break; + case 4: + pt += "quadragint"; + break; + case 5: + pt += "quinquagint"; + break; + case 6: + pt += "sexagint"; + break; + case 7: + pt += "septuagint"; + break; + case 8: + pt += "octogint"; + break; + case 9: + pt += "nonagint"; + break; + } + if (nmbr1 >= 100) { + if (p2 !== 0) { + pt += "i"; + } + switch (p3) { + case 1: + pt += "centu"; + break; + case 2: + pt += "bicentu"; + break; + case 3: + pt += "tricentu"; + break; + case 4: + pt += "quadricentu"; + break; + case 5: + pt += "quincentu"; + break; + case 6: + pt += "sexcentu"; + break; + case 7: + pt += "septemcentu"; + break; + case 8: + pt += "octocentu"; + break; + case 9: + pt += "novemcentu"; + break; + } + } else { + pt += "u"; + } + } + pt += "plet"; + } + if (nmbr2 === 2) { + if (nmbr1 === 1) { + pt += "ie"; + } + pt += "s"; + } else { + if (nmbr1 === 1) { + pt += "y"; + } + } + return pt; +}; diff --git a/src/js/utilJS.js b/src/js/utilJS.js index 393a44bb12444b38608d23eea1aea6354b123d24..7ec3827629dead9b0c91bacdddda00f78c707658 100644 --- a/src/js/utilJS.js +++ b/src/js/utilJS.js @@ -111,7 +111,7 @@ window.Height = (function() { "American.latina": 158.9, "American.white": 165, "American": 163.54, - "Andorran": 162.90, + "Andorran": 162.9, "Angolan": 157.31, "Antiguan": 160.65, "Argentinian": 159.18, @@ -134,9 +134,9 @@ window.Height = (function() { "Bolivian": 153.89, "Bosnian": 165.85, "Brazilian": 160.86, - "British": 164.40, + "British": 164.4, "Bruneian": 153.98, - "Bulgarian": 164.80, + "Bulgarian": 164.8, "Burkinabé": 160.19, "Burmese": 154.37, "Burundian": 154.02, @@ -173,8 +173,8 @@ window.Height = (function() { "Estonian": 168.67, "Ethiopian": 155.71, "Fijian": 161.69, - "Filipina": 149.60, - "Finnish": 165.90, + "Filipina": 149.6, + "Finnish": 165.9, "French Guianan": 157, "French Polynesian": 164.52, "French": 164.88, @@ -188,19 +188,19 @@ window.Height = (function() { "Grenadian": 164.51, "Guamanian": 153.7, "Guatemalan": 149.39, - "Guinean": 157.80, + "Guinean": 157.8, "Guyanese": 157.92, "Haitian": 158.72, "Honduran": 153.84, "Hungarian": 163.66, - "I-Kiribati": 157.00, + "I-Kiribati": 157, "Icelandic": 165.95, "Indian": 152.59, - "Indonesian": 152.80, + "Indonesian": 152.8, "Iranian": 159.67, "Iraqi": 158.67, "Irish": 165.11, - "Israeli": 161.80, + "Israeli": 161.8, "Italian": 164.61, "Ivorian": 158.07, "Jamaican": 163.12, @@ -208,14 +208,14 @@ window.Height = (function() { "Jordanian": 158.83, "Kazakh": 158.58, "Kenyan": 158.16, - "Kittitian": 159.20, + "Kittitian": 159.2, "Korean": 160.65, "Kosovan": 165.7, "Kurdish": 165, "Kuwaiti": 159.43, "Kyrgyz": 159.35, "Laotian": 151.28, - "Latvian": 169.80, + "Latvian": 169.8, "Lebanese": 162.43, "Liberian": 157.3, "Libyan": 162.08, @@ -224,8 +224,8 @@ window.Height = (function() { "Luxembourgian": 164.43, "Macedonian": 159.75, "Malagasy": 151.18, - "Malawian": 154.40, - "Malaysian": 156.30, + "Malawian": 154.4, + "Malaysian": 156.3, "Maldivian": 155.02, "Malian": 160.47, "Maltese": 160.85, @@ -245,13 +245,13 @@ window.Height = (function() { "Namibian": 158.78, "Nauruan": 153.98, "Nepalese": 150.86, - "New Caledonian": 158.0, + "New Caledonian": 158, "a New Zealander": 164.94, "Ni-Vanuatu": 158.17, "Nicaraguan": 154.39, "Nigerian": 156.32, "Nigerien": 158.25, - "Niuean": 164.80, + "Niuean": 164.8, "Norwegian": 165.56, "Omani": 157.19, "Pakistani": 153.84, @@ -263,7 +263,7 @@ window.Height = (function() { "Peruvian": 152.93, "Polish": 164.59, "Portuguese": 163.04, - "Puerto Rican": 159.20, + "Puerto Rican": 159.2, "Qatari": 159.38, "Romanian": 162.73, "Russian": 165.27, @@ -279,20 +279,20 @@ window.Height = (function() { "Senegalese": 162.52, "Serbian": 167.69, "Seychellois": 162.08, - "Sierra Leonean": 156.60, + "Sierra Leonean": 156.6, "Singaporean": 160.32, "Slovak": 167.47, "Slovene": 166.05, "a Solomon Islander": 154.42, "Somali": 156.06, "South African": 158.03, - "South Sudanese": 169.0, - "Spanish": 163.40, + "South Sudanese": 169, + "Spanish": 163.4, "Sri Lankan": 154.56, "Sudanese": 156.04, "Surinamese": 160.66, "Swazi": 158.64, - "Swedish": 165.70, + "Swedish": 165.7, "Swiss": 163.45, "Syrian": 158.65, "Taiwanese": 161.45, @@ -300,13 +300,13 @@ window.Height = (function() { "Tanzanian": 156.6, "Thai": 157.87, "Tibetan": 158.75, - "Togolese": 158.30, + "Togolese": 158.3, "Tongan": 165.52, "Trinidadian": 160.64, "Tunisian": 160.35, - "Turkish": 160.50, + "Turkish": 160.5, "Turkmen": 161.73, - "Tuvaluan": 158.10, + "Tuvaluan": 158.1, "Ugandan": 156.72, "Ukrainian": 166.34, "Uruguayan": 162.13, @@ -314,7 +314,7 @@ window.Height = (function() { "Vatican": 162.5, "Venezuelan": 157.44, "Vietnamese": 153.59, - "Vincentian": 160.70, + "Vincentian": 160.7, "Yemeni": 153.97, "Zairian": 155.25, "Zambian": 155.82, @@ -334,9 +334,9 @@ window.Height = (function() { "Angolan": 167.31, "Antiguan": 164.8, "Argentinian": 174.62, - "Armenian": 172.00, + "Armenian": 172, "Aruban": 165.1, - "Australian": 179.20, + "Australian": 179.2, "Austrian": 177.41, "Azerbaijani": 169.75, "Bahamian": 172.75, @@ -344,12 +344,12 @@ window.Height = (function() { "Bangladeshi": 163.81, "Barbadian": 175.92, "Belarusian": 178.44, - "Belgian": 181.70, + "Belgian": 181.7, "Belizean": 168.73, "Beninese": 167.06, "Bermudian": 172.69, "Bhutanese": 165.31, - "Bissau-Guinean": 167.90, + "Bissau-Guinean": 167.9, "Bolivian": 166.85, "Bosnian": 180.87, "Brazilian": 173.55, @@ -368,16 +368,16 @@ window.Height = (function() { "Chadian": 170.44, "Chilean": 171.81, "Chinese": 171.83, - "Colombian": 169.50, + "Colombian": 169.5, "Comorian": 166.19, "Congolese": 167.45, "a Cook Islander": 174.77, "Costa Rican": 168.93, "Croatian": 180.78, - "Cuban": 172.00, + "Cuban": 172, "Curaçaoan": 165.1, "Cypriot": 174.99, - "Czech": 180.10, + "Czech": 180.1, "Danish": 181.39, "Djiboutian": 166.57, "Dominican": 172.75, @@ -391,14 +391,14 @@ window.Height = (function() { "Eritrean": 168.36, "Estonian": 181.59, "Ethiopian": 166.23, - "Fijian": 173.90, + "Fijian": 173.9, "Filipina": 163.23, "Finnish": 179.59, "French Guianan": 168, "French Polynesian": 177.41, "French": 179.74, "Gabonese": 167.94, - "Gambian": 165.40, + "Gambian": 165.4, "Georgian": 174.34, "German": 179.88, "Ghanan": 168.85, @@ -412,7 +412,7 @@ window.Height = (function() { "Haitian": 172.64, "Honduran": 166.39, "Hungarian": 177.26, - "I-Kiribati": 169.20, + "I-Kiribati": 169.2, "Icelandic": 180.49, "Indian": 164.95, "Indonesian": 163.55, @@ -450,21 +450,21 @@ window.Height = (function() { "Maltese": 173.32, "Marshallese": 162.81, "Mauritanian": 163.28, - "Mauritian": 170.50, + "Mauritian": 170.5, "Mexican": 169.01, "Micronesian": 168.51, "Moldovan": 175.49, "Monégasque": 177.77, "Mongolian": 169.07, "Montenegrin": 178.28, - "Moroccan": 170.40, + "Moroccan": 170.4, "Mosotho": 165.59, "Motswana": 171.63, - "Mozambican": 164.80, + "Mozambican": 164.8, "Namibian": 166.96, "Nauruan": 167.83, "Nepalese": 162.32, - "New Caledonian": 171.0, + "New Caledonian": 171, "a New Zealander": 177.74, "Ni-Vanuatu": 168.09, "Nicaraguan": 166.71, @@ -487,7 +487,7 @@ window.Height = (function() { "Romanian": 174.74, "Russian": 176.46, "Rwandan": 162.68, - "Sahrawi": 170.40, + "Sahrawi": 170.4, "Saint Lucian": 171.95, "Salvadoran": 169.77, "Sammarinese": 177.77, @@ -500,10 +500,10 @@ window.Height = (function() { "Seychellois": 174.21, "Sierra Leonean": 164.41, "Singaporean": 172.57, - "Slovak": 179.50, - "Slovene": 179.80, + "Slovak": 179.5, + "Slovene": 179.8, "a Solomon Islander": 164.14, - "Somali": 166.60, + "Somali": 166.6, "South African": 166.68, "South Sudanese": 175.9, "Spanish": 176.59, @@ -516,7 +516,7 @@ window.Height = (function() { "Syrian": 170.43, "Taiwanese": 174.52, "Tajik": 171.26, - "Tanzanian": 164.80, + "Tanzanian": 164.8, "Thai": 169.16, "Tibetan": 168.91, "Togolese": 168.33, @@ -535,7 +535,7 @@ window.Height = (function() { "Vietnamese": 164.45, "Vincentian": 172.78, "Yemeni": 159.89, - "Zairian": 166.80, + "Zairian": 166.8, "Zambian": 166.52, "Zimbabwean": 168.59, "": 171.42, // defaults @@ -881,19 +881,6 @@ window.Intelligence = (function() { }; })(); -/** - * Helper method - generate two independent Gaussian numbers using Box-Muller transform - * @returns {number[]} - */ -window.gaussianPair = function() { - let r = Math.sqrt(-2.0 * Math.log(1 - Math.random())); - let sigma = 2.0 * Math.PI * (1 - Math.random()); - return [r * Math.cos(sigma), r * Math.sin(sigma)]; -}; - -// generate a random integer with a normal distribution -window.normalRandInt = (mean, scale) => Math.floor(mean + gaussianPair()[0] * scale); - /* A categorizer is used to "slice" a value range into distinct categories in an efficient manner. @@ -979,7 +966,7 @@ window.num = function(x) { "sixty", "seventy", "eighty", "ninety", ]; - const SCALES = ["thousand", "million", "billion", "trillion"]; + const SCALES = ["thousand", "million", "billion", "trillion", "quadrillion", "quintillion"]; /** * helper function for use with Array.filter @@ -1239,7 +1226,7 @@ window.budgetLine = function(category, title) { expenses = "$lastWeeksRepExpenses"; profits = "$lastWeeksRepProfits"; - return `<<if ${income}.${category} || ${expenses}.${category}>><tr>\ + return `<<if ${income}.${category} || ${expenses}.${category} || $showAllEntries.repBudget>><tr>\ <td>${title}</td>\ <td><<print repFormat(${income}.${category})>></td>\ <td><<print repFormat(${expenses}.${category})>></td>\ @@ -1251,7 +1238,7 @@ window.budgetLine = function(category, title) { expenses = "$lastWeeksCashExpenses"; profits = "$lastWeeksCashProfits"; - return `<<if ${income}.${category} || ${expenses}.${category}>><tr>\ + return `<<if ${income}.${category} || ${expenses}.${category} || $showAllEntries.costsBudget>><tr>\ <td>${title}</td>\ <td>\ <<if (${income}.${category}) > 0>>\ @@ -1270,9 +1257,9 @@ window.budgetLine = function(category, title) { <<set ${profits}.${category} = (${income}.${category} + ${expenses}.${category})>>\ <td>\ <<if (${profits}.${category}) > 0>>\ - <span class="yellowgreen"><<print cashFormat(${profits}.${category})>>.</span> + <span class="yellowgreen"><<print cashFormat(${profits}.${category})>></span> <<elseif (${profits}.${category}) < 0>>\ - <span class="red">-<<print cashFormat(Math.abs(${profits}.${category}))>>.</span> + <span class="red">-<<print cashFormat(Math.abs(${profits}.${category}))>></span> <<else>>\ <<print cashFormat(${profits}.${category})>>\ <</if>>\ @@ -1289,46 +1276,6 @@ window.isFloat = function(n) { return Number.isFinite(n) && Math.floor(n) !== n; }; -/** - * Returns a random number between min and max - * @param {number} min - * @param {number} max - * @returns {number} - */ -window.jsRandom = function(min, max) { - return Math.floor(Math.random() * (max - min + 1) + min); -}; - -/** - * @param {number[]} arr - * @param {number} count - * @returns {number[]} - */ -window.jsRandomMany = function(arr, count) { - let result = []; - let _tmp = arr.slice(); - for (let i = 0; i < count; i++) { - let index = Math.ceil(Math.random() * 10) % _tmp.length; - result.push(_tmp.splice(index, 1)[0]); - } - return result; -}; - -/** - * Accepts both an array and a list, returns undefined if nothing is passed. - * @param {number|string|number[]|string[]} choices - * @param {...(number|string|number[]|string[])} otherChoices - * @returns {number|string|number[]|string[]|undefined} - */ -window.jsEither = function(choices, ...otherChoices) { - if (otherChoices.length === 0 && Array.isArray(choices)) { - return choices[Math.floor(Math.random() * choices.length)]; - } - const allChoices = otherChoices; - allChoices.push(choices); - return allChoices[Math.floor(Math.random() * allChoices.length)]; -}; - /* Make everything waiting for this execute. Usage: @@ -2197,6 +2144,109 @@ window.pronounReplacer = function(slavetext) { return slavetext; }; +window.convertCareer = function(slave) { + const V = State.variables; + let job = slave.career; + if ((V.diversePronouns === 1) && (slave.pronoun === App.Data.Pronouns.Kind.male)) { + switch (job) { + case "a dominatrix": + job = "a dominator"; + break; + case "a farmer's daughter": + job = "a farmer's son"; + break; + case "a handmaiden": + job = "a handservant"; + break; + case "a lady courtier": + job = "a gentleman courtier"; + break; + case "a landlady": + job = "a landlord"; + break; + case "a madam": + job = "a brothel owner"; + break; + case "a maid": + job = "a houseservant"; + break; + case "a mail-order bride": + job = "a mail-order groom"; + break; + case "a mistress": + job = "a kept man"; + break; + case "a nun": + job = "a monk"; + break; + case "a nursemaid": + job = "a child's nurse"; + break; + case "a procuress": + job = "a procurer"; + break; + case "a shrine maiden": + job = "a shrine priest"; + break; + case "a trophy spouse": + job = "a trophy husband"; + break; + case "a weathergirl": + job = "a weatherman"; + break; + case "an air hostess": + job = "an air host"; + break; + case "being homeschooled by her parents": + job = "being homeschooled by his parents"; + break; + case "a camgirl": + case "a cowgirl": + case "a girl scout": + case "a paper girl": + case "a party girl": + job = job.replace(/girl/g, "boy"); + break; + case "a businesswoman": + case "a criminal businesswoman": + case "a delivery woman": + case "a fisherwoman": + case "a noblewoman": + case "a saleswoman": + case "a stuntwoman": + job = job.replace(/woman/g, "man"); + break; + case "a housewife": + case "a trophy wife": + job = job.replace(/wife/g, "husband"); + break; + case "a cocktail waitress": + case "a waitress": + case "a seamstress": + job = job.replace(/ress/g, "er"); + break; + case "a child actress": + case "an actress": + job = job.replace(/ress/g, "or"); + break; + } + } else if (slave.pronoun === App.Data.Pronouns.Kind.female) { + switch (job) { + case "a priest": + job = "a priestess"; + break; + case "a trophy spouse": + job = "a trophy wife"; + break; + case "a businessman": + case "a repairman": + job = job.replace(/man/g, "woman"); + break; + } + } + return job; +}; + window.HackingSkillMultiplier = function() { const V = State.variables; @@ -2232,7 +2282,8 @@ App.UI.tabbar = function() { openTab: openTab, tabButton: tabButton, makeTab: makeTab, - handlePreSelectedTab: handlePreSelectedTab + handlePreSelectedTab: handlePreSelectedTab, + tabChoiceVarName: tabChoiceVarName }; function openTab(evt, tabName) { @@ -2246,7 +2297,7 @@ App.UI.tabbar = function() { for (let i = 0; i < tablinks.length; i++) { tablinks[i].className = tablinks[i].className.replace(" active", ""); } - V.tabChoice[_tabChoiceVarName()] = tabName; /* The regex strips spaces and " ' " from passage names, making "Servants' Quarters" into "ServantsQuarters" and allowing it to be used as a label in this object. */ + V.tabChoice[tabChoiceVarName()] = tabName; /* The regex strips spaces and " ' " from passage names, making "Servants' Quarters" into "ServantsQuarters" and allowing it to be used as a label in this object. */ document.getElementById(tabName).style.display = "block"; evt.currentTarget.className += " active"; } @@ -2269,19 +2320,24 @@ App.UI.tabbar = function() { return `<div id="${name}" class="tabcontent"><div class="content">${content}</div></div>`; } - function handlePreSelectedTab() { - let selectedTab = State.variables.tabChoice[_tabChoiceVarName()]; - if (!selectedTab) { selectedTab = "assign"; } - $(document).one(':passagedisplay', function() { + function handlePreSelectedTab(defaultTab = "assign", immidiate = false) { + let selectedTab = State.variables.tabChoice[tabChoiceVarName()]; + if (!selectedTab) { selectedTab = defaultTab; } + function selectTab() { let tabBtn = document.getElementById(`tab ${selectedTab}`); if (!tabBtn) { tabBtn = document.getElementsByClassName('tablinks').item(0); } if (tabBtn) { tabBtn.click(); } - }); + } + if (immidiate) { + selectTab(); + } else { + $(document).one(':passagedisplay', selectTab); + } } - function _tabChoiceVarName() { + function tabChoiceVarName() { return passage().trim().replace(/ |'/g, ''); } }(); @@ -2703,7 +2759,7 @@ window.resyncSlaveToAge = function(slave) { slave.pubertyXY = slave.actualAge < slave.pubertyAgeXY ? 0 : 1; if (slave.actualAge < 12) { slave.vagina = 0; - slave.trueVirgin = 0; + slave.trueVirgin = 1; slave.preg = -1; slave.belly = 0; slave.bellyPreg = 0; @@ -3008,7 +3064,7 @@ App.Utils.slaveIndexForId = function(id) { }; /** - * Sets temporary variables named by the scheme, dscribed below, to pronouns for the given slave + * Sets temporary variables named by the scheme, described below, to pronouns for the given slave * @param {App.Entity.SlaveState} slave * @param {any} [suffix] pronounsSuffix. Anything that can be converted to string. * @param {string[]} [pronouns] requested pronouns. Defaults to all pronoun forms. diff --git a/src/js/vignettes.js b/src/js/vignettes.js index a4c68ccb2910f14a89c20c6cbac15919504b947f..77b666cf4f6be8ee73b6908ddd1a395cc42b2885 100644 --- a/src/js/vignettes.js +++ b/src/js/vignettes.js @@ -189,6 +189,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `${he} was unable to contain ${himself} and wasted a lot of time sucking the cum from other slaves' sloppy holes,`, + type: "cash", + effect: -1, + }); break; case "humiliation": vignettes.push({ @@ -222,6 +227,13 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } + if (slave.behavioralFlaw === "arrogant") { + vignettes.push({ + text: `${he} wanted it in the ass so much ${he} annoyed more than a few customers by demanding anal,`, + type: "rep", + effect: -1, + }); + } vignettes.push({ text: `${he} earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,`, type: "rep", @@ -283,7 +295,7 @@ window.GetVignette = function GetVignette(slave) { break; case "dom": vignettes.push({ - text: `${he} made a female customer ${his} bitch: fortunately, the customer wanted to be ${his} bitch and came back for more,`, + text: `${he} made a female customer ${his} bitch. Fortunately, the customer wanted to be ${his} bitch and came back for more,`, type: "cash", effect: 1, }); @@ -310,7 +322,7 @@ window.GetVignette = function GetVignette(slave) { switch (slave.behavioralFlaw) { case "arrogant": vignettes.push({ - text: `${he} manages to give a citizen the impression ${he} thinks ${himself} better than them,`, + text: `${he} managed to give a citizen the impression ${he} thinks ${himself} better than them,`, type: "rep", effect: -1, }); @@ -368,6 +380,11 @@ window.GetVignette = function GetVignette(slave) { type: "cash", effect: -1, }); + vignettes.push({ + text: `${he} tried to preach ${his} faith to one of ${his} customers, causing him to leave in a huff,`, + type: "cash", + effect: -1, + }); break; case "liberated": vignettes.push({ @@ -439,21 +456,21 @@ window.GetVignette = function GetVignette(slave) { break; case "neglectful": vignettes.push({ - text: `${he} brings a denial fetishist to orgasm three times without cumming ${himself}, earning their repeat business,`, + text: `${he} brought a denial fetishist to orgasm three times without cumming ${himself}, earning their repeat business,`, type: "cash", effect: 3, }); break; case "cum addict": vignettes.push({ - text: `${he}'s so focused on sucking down a customer's cum that ${he} managed to drive them to repeated orgasm, earning their repeated business once they got the feeling back in their legs,`, + text: `${he} was so focused on sucking down a customer's cum that ${he} managed to drive them to repeated orgasm, earning their repeated business once they got the feeling back in their legs,`, type: "cash", effect: 3, }); break; case "anal addict": vignettes.push({ - text: `${he} takes a trio of dicks in ${his} ass without hesitation, earning repeat business from one of them thoroughly impressed by ${his} anal addiction,`, + text: `${he} took a trio of dicks in ${his} ass without hesitation, earning repeat business from one of them thoroughly impressed by ${his} anal addiction,`, type: "cash", effect: 3, }); @@ -525,7 +542,7 @@ window.GetVignette = function GetVignette(slave) { break; case "fitness": vignettes.push({ - text: `${he} continued a marathon gangbang past the point where most would have passed out,`, + text: `${he} continued a marathon gangbang well past the point where most would have passed out,`, type: "cash", effect: 1, }); @@ -537,7 +554,7 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); vignettes.push({ - text: `${he} adoringly kisses the feet of a local socialite who leaves ${him} a generous tip,`, + text: `${he} adoringly kissed the feet of a local socialite who leaves ${him} a generous tip,`, type: "cash", effect: 1, }); @@ -563,7 +580,7 @@ window.GetVignette = function GetVignette(slave) { break; case "sinful": vignettes.push({ - text: `${he} helps a customer get past their religious hang-ups through sex with the friendly neighborhood whore,`, + text: `${he} helped a customer get past their religious hang-ups through sex with the friendly neighborhood whore,`, type: "rep", effect: 1, }); @@ -575,7 +592,7 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); vignettes.push({ - text: `${he} manages to convince a skeptical businessman about the merits of using slaves,`, + text: `${he} managed to convince a skeptical businessman about the merits of using slaves,`, type: "rep", effect: 1, }); @@ -651,6 +668,13 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); break; + case "unflinching": + vignettes.push({ + text: `${he} had no trouble following extremely abusive orders from one of ${his} customers, making him talk positively about the experience,`, + type: "rep", + effect: 1, + }); + break; } if (slave.counter.pitKills > 0) { @@ -713,6 +737,13 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } + if (slave.trust < -20) { + vignettes.push({ + text: `a customer who fancies himself a slave trainer noticed ${his} fear and decided to use ${him} to practice his 'slave whispering' skills,`, + type: "cash", + effect: 1, + }); + } if (slave.livingRules === "luxurious") { vignettes.push({ text: `${he} got a truly perfect night's sleep, which put ${him} in the right frame of mind for the whole day,`, @@ -897,39 +928,73 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - if (slave.dick > 0 && canPenetrate(slave)) { - vignettes.push({ - text: `${he} earned repeat business from a customer who likes to see his wife get fucked by a dick${boy} whore,`, - type: "cash", - effect: 1, - }); - if (slave.dick > 3) { + if (slave.dick > 0) { + if (canPenetrate(slave)) { vignettes.push({ - text: `${he} earned repeat business from a female customer who likes big stiff cocks, and cannot lie,`, + text: `${he} earned repeat business from a customer who likes to see his wife get fucked by a dick${boy} whore,`, type: "cash", effect: 1, }); - vignettes.push({ - text: `${he} irritated a male customer who brought his girlfriend with him by accidentally showing him up,`, - type: "rep", - effect: -1, - }); + if (slave.dick > 3) { + vignettes.push({ + text: `${he} earned repeat business from a female customer who likes big stiff cocks, and cannot lie,`, + type: "cash", + effect: 1, + }); + vignettes.push({ + text: `${he} irritated a male customer who brought his girlfriend with him by accidentally showing him up,`, + type: "rep", + effect: -1, + }); + } + } + if (slave.scrotum === 0) { + if (slave.genes === "XY") { + if (canTalk(slave)) { + vignettes.push({ + text: `a doctor ordered ${him} to describe the gelding process in detail and was fascinated by the small scars where ${his} balls used to be,`, + type: "cash", + effect: 1, + }); + } + vignettes.push({ + text: `a slave trainer privately studied ${him} as an example of a slave with well done gelding surgery,`, + type: "cash", + effect: 1, + }); + } + if (slave.balls > 0) { + vignettes.push({ + text: `a customer was pleasantly surprised by ${his} ability to ejaculate,`, + type: "cash", + effect: 1, + }); + } } } - if (slave.balls > 3) { + if (slave.scrotum > 3) { vignettes.push({ text: `${he} loses a customer who wants ${him} to look like a natural girl, since ${his} balls are too big to be hidden,`, type: "cash", effect: -1, }); } - if (slave.balls === 0 && slave.dick > 0) { + if (slave.scrotum > 0) { vignettes.push({ - text: `a slave trainer privately studied ${him} as an example of a slave with well done gelding surgery,`, - type: "cash", - effect: 1, + text: `a particularly sadistic customer attempted to geld ${him}, but ${he} managed to fight him off,`, + type: "health", + effect: -1, }); } + if (slave.vagina >= 0) { + if (slave.genes === "XY") { + vignettes.push({ + text: `a plastic surgeon privately complimented ${him} on ${his} expertly crafted pussy,`, + type: "cash", + effect: 1, + }); + } + } if (canDoVaginal(slave)) { if (slave.vagina === 1) { vignettes.push({ @@ -1000,10 +1065,10 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - if (slave.visualAge > 40) { + if (slave.prestigeDesc === "$He was once a B-list actress, but fell on hard times and drug addiction and was recently enslaved due to debt.") { vignettes.push({ - text: `${he} earned repeat business from a customer with serious mommy issues,`, - type: "cash", + text: `${he} humors one of ${his} fans by acting like one of the characters ${he} used to portray,`, + type: "rep", effect: 1, }); } @@ -1064,6 +1129,20 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } + if (slave.boobs >= 1800) { + if (slave.fetish === "boobs") { + vignettes.push({ + text: `${his} huge boobs and frequent orgasms from titfucks made ${him} quite popular among locals,`, + type: "cash", + effect: 1, + }); + } + vignettes.push({ + text: `${his} huge boobs attracted a lot of breast fetishists, to the point that ${he} lost count of how many titfucks ${he} had to perform,`, + type: "cash", + effect: 1, + }); + } if (!canWalk(slave)) { vignettes.push({ text: `${his} lack of mobility severely hindered ${his} attempts to find customers,`, @@ -1071,7 +1150,7 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } else { - if (slave.boobs > 1500 && slave.boobsImplant === 0) { + if (slave.boobs >= 1500 && slave.boobsImplant === 0) { vignettes.push({ text: `a young customer hired ${him} to jump rope so they could watch ${his} massive natural breasts flop around,`, type: "cash", @@ -1223,18 +1302,18 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); - } else if (slave.fetish === "buttslut") { - vignettes.push({ - text: `a customer was surprised by ${his} penis, so ${he} hid it, but could barely tolerate anal without touching it,`, - type: "rep", - effect: -1, - }); } else if (slave.skill.anal >= 100) { vignettes.push({ text: `a customer was surprised by ${his} penis, so ${he} hid it and skillfully pretended to be a real girl,`, type: "rep", effect: 1, }); + } else if (slave.fetish === "buttslut") { + vignettes.push({ + text: `a customer was surprised by ${his} penis, so ${he} hid it, but could barely tolerate anal without touching it,`, + type: "rep", + effect: -1, + }); } } if (slave.skill.anal < 100 && slave.anus > 2) { @@ -1387,7 +1466,7 @@ window.GetVignette = function GetVignette(slave) { vignettes.push({ text: `${he} got repeat business from a customer who misses the risk of getting a ${boy} pregnant,`, type: "cash", - effect: 3, + effect: 1, }); } } @@ -1399,14 +1478,79 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSDegradationist !== "unset") { - if (canTalk(slave) && slave.voice > 2) { + if (slave.trust < -20) { vignettes.push({ - text: `${he} got repeat business from a customer who prefers ${boy}s with high-pitched screams,`, - type: "cash", + text: `a customer noticed ${his} fear and went out of his way to be gentle,`, + type: "trust", effect: 1, }); } + } else if (V.arcologies[0].FSDegradationist !== "unset") { + if (V.seePee !== 0) { + vignettes.push({ + text: `a drunken customer needing to use the toilet stumbled into ${him} and unfortunately decided to use ${his} mouth to empty ${his} bladder. ${slave.slaveName} found this interaction to be utterly revolting,`, + type: "trust", + effect: -1, + }); + } + if (canTalk(slave)) { + if (slave.voice > 2) { + vignettes.push({ + text: `${he} got repeat business from a customer who prefers ${boy}s with high-pitched screams,`, + type: "cash", + effect: 1, + }); + } else if (slave.voice === 1) { + vignettes.push({ + text: `a customer who was annoyed by ${his} deep voice used his belt on ${his} ass to see if ${his} voice got higher when ${he} screamed,`, + type: "health", + effect: -1, + }); + } + if (slave.boobs >= 1200) { + vignettes.push({ + text: `"a group of laughing customers had ${him} moo like a cow while they gangbanged ${him},`, + type: "cash", + effect: 1, + }); + } + if (slave.weight >= 30) { + vignettes.push({ + text: `a customer had ${him} grunt and squeal like a pig while he used ${him},`, + type: "cash", + effect: 1, + }); + } + vignettes.push({ + text: `a customer ordered ${him} to tell bystanders that ${he} was a 'stupid and ugly bitch',`, + type: "trust", + effect: 0, + }); + } + if (slave.dick > 0) { + if (slave.scrotum === 0 && slave.genes === "XY") { + vignettes.push({ + text: `a customer asked why ${his} useless dick wasn't removed along with ${his} balls,`, + type: "cash", + effect: 0, + }); + vignettes.push({ + text: `a customer hit ${his} dick a few times to see if gelding reduces sensitivity,`, + type: "health", + effect: -1, + }); + vignettes.push({ + text: `an approving customer commented that being gelded made it plain ${he} wasn't human,`, + type: "rep", + effect: 1, + }); + } + vignettes.push({ + text: `a customer tried to see how far ${his} dick could bend and twist,`, + type: "health", + effect: -1, + }); + } if (slave.visualAge > 40) { vignettes.push({ text: `a customer wrote a note on ${his} face that said: 'Retire it to an arcade',`, @@ -1429,6 +1573,16 @@ window.GetVignette = function GetVignette(slave) { type: "health", effect: -1, }); + vignettes.push({ + text: `${he} was hired for use as a prop in a public service announcement showing citizens how to restrain an unwilling slave for rape,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `a sex machine salesman hired ${him} to demonstrate his products and fucked ${his} holes brutally,`, + type: "health", + effect: -1, + }); } if (V.arcologies[0].FSBodyPurist !== "unset") { if (slave.boobsImplant > 0) { @@ -1485,6 +1639,17 @@ window.GetVignette = function GetVignette(slave) { type: "cash", effect: -1, }); + } else { + vignettes.push({ + text: `a businessman asked to hire ${him} for an hour for a meeting so ${he} could provide 'freshly squeezed' milk for his client's coffee,`, + type: "cash", + effect: 2, + }); + vignettes.push({ + text: `${he} was hired by a trendy café in the arcology so the customers could milk ${him} into their coffees,`, + type: "cash", + effect: 2, + }); } if (slave.nipples === "fuckable") { vignettes.push({ @@ -1633,7 +1798,7 @@ window.GetVignette = function GetVignette(slave) { }); } if (V.arcologies[0].FSArabianRevivalist !== "unset") { - if (slave.skill.entertainment >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) { + if (slave.skill.entertainment >= 100 && canTalk(slave) && slave.accent < 2) { vignettes.push({ text: `${he} got repeat business from a customer who prefers prostitutes who can tell lovely stories,`, type: "cash", @@ -1642,7 +1807,7 @@ window.GetVignette = function GetVignette(slave) { } } if (V.arcologies[0].FSChineseRevivalist !== "unset") { - if (slave.dick > 0 && slave.balls === 2) { + if (slave.dick > 0 && slave.balls === 0) { vignettes.push({ text: `a citizen admired ${his} lack of balls and praised ${him} for being like the eunuchs in Chinese history,`, type: "cash", @@ -1655,7 +1820,39 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - + if (V.seeAge !== 0) { + if (slave.birthWeek >= 51) { + if (V.arcologies[0].FSDegradationist !== "unset") { + if (slave.voice !== 0) { + vignettes.push({ + text: `a group of frat boys found out it was ${his} birthday and took turns spanking ${him} until ${he} couldn't sit down and ${his} voice was hoarse,`, + type: "health", + effect: -1, + }); + } + vignettes.push({ + text: `${he} was given a paddle and ordered to request harsh birthday spankings from all of ${his} customers,`, + type: "health", + effect: -1, + }); + } + vignettes.push({ + text: `a favorite customer gave ${him} a lighthearted birthday spanking and a big tip,`, + type: "cash", + effect: 1, + }); + } + } + vignettes.push({ + text: `a visiting tourist got a crush on ${him} and gave ${him} repeat business,`, + type: "cash", + effect: 1, + }); + vignettes.push({ + text: `a prominent citizen rented ${him} for his birthday party,`, + type: "cash", + effect: 1, + }); vignettes.push({ text: `one of the companies with an office in your arcology retained ${him} for a team-building bukkake party for its employees,`, type: "rep", @@ -1836,7 +2033,7 @@ window.GetVignette = function GetVignette(slave) { break; case 4: vignettes.push({ - text: `a street slut that works near ${him} was badly beaten by an abusive citizen and had to take time off. The reduced competition got ${his} more attention,`, + text: `a street slut that works near ${him} was badly beaten by an abusive citizen and had to take time off. The reduced competition got ${him} more attention,`, type: "rep", effect: 1, }); @@ -1880,6 +2077,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `${he} was unable to contain ${himself} and wasted a lot of time sucking the cum from other slaves' sloppy holes,`, + type: "rep", + effect: -1, + }); break; case "humiliation": vignettes.push({ @@ -1913,6 +2115,13 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } + if (slave.behavioralFlaw === "arrogant") { + vignettes.push({ + text: `${he} wanted it in the ass so much ${he} annoyed more than a few citizens by demanding anal,`, + type: "rep", + effect: -1, + }); + } vignettes.push({ text: `${he} earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,`, type: "rep", @@ -1945,7 +2154,7 @@ window.GetVignette = function GetVignette(slave) { break; case "sadist": vignettes.push({ - text: `${he} deeply impressed a citizen who brought their own slave to ${his} for abuse with ${his} sadism,`, + text: `${he} deeply impressed a citizen who brought their own slave to ${him} for abuse with ${his} sadism,`, type: "rep", effect: 1, }); @@ -1974,7 +2183,7 @@ window.GetVignette = function GetVignette(slave) { break; case "dom": vignettes.push({ - text: `${he} made a female citizen ${his} bitch: fortunately, the citizen wanted to be ${his} bitch and came back for more`, + text: `${he} made a female citizen ${his} bitch. Fortunately, the citizen wanted to be ${his} bitch and came back for more`, type: "rep", effect: 1, }); @@ -2001,7 +2210,7 @@ window.GetVignette = function GetVignette(slave) { switch (slave.behavioralFlaw) { case "arrogant": vignettes.push({ - text: `${he} manages to give a citizen the impression ${he} thinks ${himself} better than them,`, + text: `${he} managed to give a citizen the impression ${he} thinks ${himself} better than them,`, type: "rep", effect: -1, }); @@ -2059,6 +2268,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `${he} tried to preach ${his} faith to a citizen, causing him to leave in a huff,`, + type: "rep", + effect: -1, + }); break; case "liberated": vignettes.push({ @@ -2144,7 +2358,7 @@ window.GetVignette = function GetVignette(slave) { break; case "anal addict": vignettes.push({ - text: `${he} takes an awe inspiring train of dicks in ${his} ass, well past the point where most would have passed out from pain,`, + text: `${he} took an awe inspiring train of dicks in ${his} ass, well past the point where most would have passed out from pain,`, type: "rep", effect: 3, }); @@ -2165,7 +2379,7 @@ window.GetVignette = function GetVignette(slave) { break; case "abusive": vignettes.push({ - text: `${he} abuses a rival public servant so viciously that a catfight lover takes ${him} right there,`, + text: `${he} abuses a rival public servant so viciously that a catfight lover took ${him} right there,`, type: "rep", effect: 3, }); @@ -2179,7 +2393,7 @@ window.GetVignette = function GetVignette(slave) { break; case "self hating": vignettes.push({ - text: `the way ${he} takes everything thrown at ${him} like nothing disturbed a group of citizens, though one of them enjoyed it more than they let on and came to ${him} for sex later,`, + text: `the way ${he} took everything thrown at ${him} like nothing disturbed a group of citizens, though one of them enjoyed it more than they let on and came to ${him} for sex later,`, type: "rep", effect: 3, }); @@ -2195,14 +2409,14 @@ window.GetVignette = function GetVignette(slave) { switch (slave.behavioralQuirk) { case "confident": vignettes.push({ - text: `${he} confidently presses forward with a wavering citizen, and gets them to fuck ${him},`, + text: `${he} confidently pressed forward with a wavering citizen, and gets them to fuck ${him},`, type: "rep", effect: 1, }); break; case "cutting": vignettes.push({ - text: `${he} made such a gloriously cutting remark to a male citizen that a female bystander takes ${him} right there,`, + text: `${he} made such a gloriously cutting remark to a male citizen that a female bystander took ${him} right there,`, type: "rep", effect: 1, }); @@ -2247,7 +2461,7 @@ window.GetVignette = function GetVignette(slave) { break; case "insecure": vignettes.push({ - text: `${he} successfully convinced a regular patron that they are reliant on ${him} emotionally,`, + text: `${he} successfully convinced a regular patron that ${he}'s reliant on them emotionally,`, type: "rep", effect: 1, }); @@ -2342,6 +2556,13 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); break; + case "unflinching": + vignettes.push({ + text: `${he} had no trouble following extremely abusive orders from one of your citizens, making him talk positively about the experience,`, + type: "rep", + effect: 1, + }); + break; } if (slave.counter.pitKills > 0) { @@ -2386,7 +2607,7 @@ window.GetVignette = function GetVignette(slave) { }); } else if (slave.devotion <= 20) { vignettes.push({ - text: `${he} treasured a love token given to ${his} by a citizen ${he} fooled into thinking ${his} affection was real,`, + text: `${he} treasured a love token given to ${him} by a citizen ${he} fooled into thinking ${his} affection was real,`, type: "devotion", effect: -1, }); @@ -2404,6 +2625,13 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } + if (slave.trust < -20) { + vignettes.push({ + text: `a customer who fancies himself a slave trainer noticed ${his} fear and decided to use ${him} to practice his 'slave whispering' skills,`, + type: "rep", + effect: 1, + }); + } if (slave.livingRules === "luxurious") { vignettes.push({ text: `${he} got a truly perfect night's sleep, which put ${him} in the right frame of mind for the whole day,`, @@ -2460,7 +2688,7 @@ window.GetVignette = function GetVignette(slave) { }); } else if (slave.weight < 95) { vignettes.push({ - text: `a potential citizen told ${his} that they are looking forward to patronizing ${his} once ${he} gains a lot more weight,`, + text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} gains a lot more weight,`, type: "rep", effect: 0, }); @@ -2563,7 +2791,7 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); vignettes.push({ - text: `${he} disgusted a citizen when his forceful fucking caused ${him} to release ${his} contained ${slave.inflationType} all over them,`, + text: `${he} disgusted a citizen when their forceful fucking caused ${him} to release ${his} contained ${slave.inflationType} all over them,`, type: "rep", effect: -2, }); @@ -2588,39 +2816,73 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - if (slave.dick > 0 && canPenetrate(slave)) { - vignettes.push({ - text: `${he} earned extra gratitude from a citizen who likes to see his wife get fucked by a dick${boy} whore,`, - type: "rep", - effect: 1, - }); - if (slave.dick > 3) { + if (slave.dick > 0) { + if (canPenetrate(slave)) { vignettes.push({ - text: `${he} earned extra gratitude from a female citizen who likes big stiff cocks, and cannot lie,`, + text: `${he} earned extra gratitude from a citizen who likes to see his wife get fucked by a dick${boy} whore,`, type: "rep", effect: 1, }); - vignettes.push({ - text: `${he} irritated a male citizen who brought his girlfriend with him by accidentally showing him up,`, - type: "rep", - effect: -1, - }); + if (slave.dick > 3) { + vignettes.push({ + text: `${he} earned extra gratitude from a female citizen who likes big stiff cocks, and cannot lie,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `${he} irritated a male citizen who brought his girlfriend with him by accidentally showing him up,`, + type: "rep", + effect: -1, + }); + } + } + if (slave.scrotum === 0) { + if (slave.genes === "XY") { + if (canTalk(slave)) { + vignettes.push({ + text: `a doctor ordered ${him} to describe the gelding process in detail and was fascinated by the small scars where ${his} balls used to be,`, + type: "rep", + effect: 1, + }); + } + vignettes.push({ + text: `a slave trainer pointed ${him} out as an example of a slave with well done gelding surgery,`, + type: "rep", + effect: 1, + }); + } + if (slave.balls > 0) { + vignettes.push({ + text: `a citizen was pleasantly surprised by ${his} ability to ejaculate,`, + type: "rep", + effect: 1, + }); + } } } - if (slave.balls === 0 && slave.dick > 0) { + if (slave.scrotum > 3) { vignettes.push({ - text: `a slave trainer pointed ${him} out as an example of a slave with well done gelding surgery,`, + text: `${he} disappoints a citizen who wants ${him} to look like a natural girl, since ${his} balls are too big to be hidden,`, type: "rep", - effect: 1, + effect: -1, }); } - if (slave.balls > 3) { + if (slave.scrotum > 0) { vignettes.push({ - text: `${he} disappoints a citizen who wants ${him} to look like a natural girl, since ${his} balls are too big to be hidden,`, - type: "rep", + text: `a particularly sadistic citizen attempted to geld ${him}, but ${he} managed to fight him off,`, + type: "health", effect: -1, }); } + if (slave.vagina >= 0) { + if (slave.genes === "XY") { + vignettes.push({ + text: `a plastic surgeon publicly complimented ${him} on ${his} expertly crafted pussy,`, + type: "rep", + effect: 1, + }); + } + } if (canDoVaginal(slave)) { if (slave.vagina === 1) { vignettes.push({ @@ -2644,7 +2906,7 @@ window.GetVignette = function GetVignette(slave) { vignettes.push({ text: `${he} irritated a male citizen with ${his} complaints that they were too small to please ${him},`, type: "rep", - effect: -3, + effect: -2, }); } } @@ -2664,6 +2926,20 @@ window.GetVignette = function GetVignette(slave) { }); } } + if (slave.visualAge > 40) { + if (slave.face > 10 && slave.race === "asian") { + vignettes.push({ + text: `${he} got extra gratitude from a citizen who loves well-preserved asian ladies,`, + type: "rep", + effect: 1, + }); + } + vignettes.push({ + text: `${he} earned extra gratitude from a citizen with serious mommy issues,`, + type: "rep", + effect: 1, + }); + } if (slave.face > 40) { vignettes.push({ text: `${he} lost a potential citizen who was so intimidated by ${his} great beauty that they decided to find a homelier whore,`, @@ -2677,16 +2953,9 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - if (slave.visualAge > 40) { - if (slave.face > 10 && slave.race === "asian") { - vignettes.push({ - text: `${he} got extra gratitude from a citizen who loves well-preserved asian ladies,`, - type: "rep", - effect: 1, - }); - } + if (slave.prestigeDesc === "$He was once a B-list actress, but fell on hard times and drug addiction and was recently enslaved due to debt.") { vignettes.push({ - text: `${he} earned extra gratitude from a citizen with serious mommy issues,`, + text: `${he} humors one of ${his} fans by acting like one of the characters ${he} used to portray,`, type: "rep", effect: 1, }); @@ -2748,6 +3017,20 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } + if (slave.boobs >= 1800) { + if (slave.fetish === "boobs") { + vignettes.push({ + text: `${his} huge boobs and frequent orgasms from titfucks made ${him} quite popular among locals,`, + type: "cash", + effect: 1, + }); + } + vignettes.push({ + text: `${his} huge boobs attracted a lot of breast fetishists, to the point that ${he} lost count of how many titfucks ${he} had to perform,`, + type: "rep", + effect: 1, + }); + } if (!canWalk(slave)) { vignettes.push({ text: `${his} lack of mobility severely hindered ${his} attempts to please citizens,`, @@ -2755,7 +3038,7 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } else { - if (slave.boobs > 1500 && slave.boobsImplant === 0) { + if (slave.boobs >= 1500 && slave.boobsImplant === 0) { vignettes.push({ text: `a young citizen convinced ${him} to jump rope so they could watch ${his} massive natural breasts flop around,`, type: "rep", @@ -2907,17 +3190,17 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); - } else if (slave.fetish === "buttslut") { + } else if (slave.skill.anal >= 100) { vignettes.push({ text: `a citizen was surprised by ${his} penis, so ${he} hid it and skillfully pretended to be a real girl,`, type: "rep", - effect: -1, + effect: 1, }); - } else if (slave.skill.anal >= 100) { + } else if (slave.fetish === "buttslut") { vignettes.push({ text: `a citizen was surprised by ${his} penis, so ${he} hid it, but could barely tolerate anal without touching it`, type: "rep", - effect: 1, + effect: -1, }); } } @@ -3083,14 +3366,79 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSDegradationist !== "unset") { - if (canTalk(slave) && slave.voice > 2) { + if (slave.trust < -20) { vignettes.push({ - text: `${he} gratified a citizen who prefers ${boy}s with high-pitched screams,`, - type: "rep", + text: `a citizen noticed ${his} fear and went out of his way to be gentle,`, + type: "trust", effect: 1, }); } + } else if (V.arcologies[0].FSDegradationist !== "unset") { + if (V.seePee !== 0) { + vignettes.push({ + text: `a drunken citizen needing to use the toilet stumbled into ${him} and unfortunately decided to use ${his} mouth to empty ${his} bladder. ${slave.slaveName} found this interaction to be utterly revolting,`, + type: "trust", + effect: -1, + }); + } + if (canTalk(slave)) { + if (slave.voice > 2) { + vignettes.push({ + text: `${he} gratified a citizen who prefers ${boy}s with high-pitched screams,`, + type: "rep", + effect: 1, + }); + } else if (slave.voice === 1) { + vignettes.push({ + text: `a citizen who was annoyed by ${his} deep voice used his belt on ${his} ass to see if ${his} voice got higher when ${he} screamed,`, + type: "health", + effect: -1, + }); + } + if (slave.boobs >= 1200) { + vignettes.push({ + text: `"a group of laughing citizens had ${him} moo like a cow while they gangbanged ${him},`, + type: "rep", + effect: 1, + }); + } + if (slave.weight >= 30) { + vignettes.push({ + text: `a citizen had ${him} grunt and squeal like a pig while he used ${him},`, + type: "rep", + effect: 1, + }); + } + vignettes.push({ + text: `a customer ordered ${him} to tell bystanders that ${he} was a 'stupid and ugly bitch',`, + type: "trust", + effect: 0, + }); + } + if (slave.dick > 0) { + if (slave.scrotum === 0 && slave.genes === "XY") { + vignettes.push({ + text: `a citizen asked why ${his} useless dick wasn't removed along with ${his} balls,`, + type: "rep", + effect: 0, + }); + vignettes.push({ + text: `a citizen hit ${his} dick a few times to see if gelding reduces sensitivity,`, + type: "health", + effect: -1, + }); + vignettes.push({ + text: `an approving citizen commented that being gelded made it plain ${he} wasn't human,`, + type: "rep", + effect: 1, + }); + } + vignettes.push({ + text: `a citizen tried to see how far ${his} dick could bend and twist,`, + type: "health", + effect: -1, + }); + } if (slave.visualAge > 40) { vignettes.push({ text: `a citizen wrote a note on ${his} face that said: 'Retire it to an arcade',`, @@ -3113,6 +3461,16 @@ window.GetVignette = function GetVignette(slave) { type: "health", effect: -1, }); + vignettes.push({ + text: `${he} was used as a prop in a public service announcement showing citizens how to restrain an unwilling slave for rape,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `a sex machine salesman used ${him} to demonstrate his products and fucked ${his} holes brutally,`, + type: "health", + effect: -1, + }); } if (V.arcologies[0].FSBodyPurist !== "unset") { if (slave.boobsImplant > 0) { @@ -3169,6 +3527,17 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + } else { + vignettes.push({ + text: `a businessman asked to hire ${him} for an hour for a meeting so ${he} could provide 'freshly squeezed' milk for his client's coffee,`, + type: "rep", + effect: 2, + }); + vignettes.push({ + text: `${he} was hired by a trendy café in the arcology so the customers could milk ${him} into their coffees,`, + type: "rep", + effect: 2, + }); } if (slave.nipples === "fuckable") { vignettes.push({ @@ -3326,7 +3695,7 @@ window.GetVignette = function GetVignette(slave) { } } if (V.arcologies[0].FSChineseRevivalist !== "unset") { - if (slave.dick > 0 && slave.balls === 2) { + if (slave.dick > 0 && slave.balls === 0) { vignettes.push({ text: `a citizen admired ${his} lack of balls and praised ${him} for being like the eunuchs in Chinese history,`, type: "rep", @@ -3339,7 +3708,39 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - + if (V.seeAge !== 0) { + if (slave.birthWeek >= 51) { + if (V.arcologies[0].FSDegradationist !== "unset") { + if (slave.voice !== 0) { + vignettes.push({ + text: `a group of frat boys found out it was ${his} birthday and took turns spanking ${him} until ${he} couldn't sit down and ${his} voice was hoarse,`, + type: "health", + effect: -1, + }); + } + vignettes.push({ + text: `${he} was given a paddle and ordered to request harsh birthday spankings from all of ${his} citizens,`, + type: "health", + effect: -1, + }); + } + vignettes.push({ + text: `a favorite citizen gave ${him} a lighthearted birthday spanking and a big tip,`, + type: "cash", + effect: 1, + }); + } + } + vignettes.push({ + text: `a visiting tourist got a crush on ${him} and gave ${him} repeat business,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `a prominent citizen invited ${him} to his birthday party,`, + type: "rep", + effect: 1, + }); vignettes.push({ text: `one of the companies with an office in your arcology brought ${him} in for a team-building bukkake party for its employees,`, type: "rep", @@ -3493,6 +3894,15 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } + if (slave.boobs >= 1400) { + if (slave.fetish !== "boobs" && slave.fetish !== "masochist") { + vignettes.push({ + text: `${he} got really frustrated by the constant bouncing of ${his} boobs when ${he} performed cleaning activities,`, + type: "trust", + effect: -1, + }); + } + } if (slave.visualAge >= 40) { vignettes.push({ text: `some of the younger slaves purposefully created messes, making fun of ${him} as ${he} scurried behind them to clean up,`, @@ -3507,6 +3917,15 @@ window.GetVignette = function GetVignette(slave) { effect: 0, }); } + if (slave.energy > 80) { + if (slave.chastityVagina !== 0) { + vignettes.push({ + text: `the back and forth motions of cleaning cause ${him} sexual frustration as ${his} chastity belt rubs against ${his} soaking wet pussy,`, + type: "trust", + effect: 0, + }); + } + } if (slave.energy < 60) { vignettes.push({ text: `${he} once thought on how easy ${his} assignment is in comparison to the sexual assignments that the others have,`, @@ -3565,6 +3984,11 @@ window.GetVignette = function GetVignette(slave) { type: "cash", effect: 1, }); + vignettes.push({ + text: `${he} was nearly constantly sneezing from all the dust ${he} cleaned up,`, + type: "health", + effect: -1, + }); } else if (slave.assignment === "get milked" || slave.assignment === "work in the dairy") { if (slave.lactation > 0) { if (slave.race === "black") { @@ -3584,6 +4008,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); + vignettes.push({ + text: `a local grocery store ordered more of ${his} milk than usual by mistake,`, + type: "cash", + effect: 1, + }); vignettes.push({ text: `a few containers of ${his} milk turned sour by accident,`, type: "cash", @@ -3740,6 +4169,18 @@ window.GetVignette = function GetVignette(slave) { effect: 0, }); break; + case "funny": + vignettes.push({ + text: `${he} gained renown as a talented improvisational comedian,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `${he} gained renown as a talented improvisational comedian, but ${his} scathing satires of other slaveholders do you no favors,`, + type: "rep", + effect: -1, + }); + break; } if (slave.fetish === "mindbroken") { vignettes.push({ @@ -3787,8 +4228,24 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } + if (slave.trust < -20) { + vignettes.push({ + text: `constantly fearing what might be done to ${him}, rest did not come easy,`, + type: "health", + effect: -1, + }); + } if (slave.relationship === -2) { if (slave.speechRules === "permissive") { + if (slave.intelligence + slave.intelligenceImplant > 50) { + if (slave.skill.entertainment >= 100) { + vignettes.push({ + text: `${he} worked on an erotic play about ${his} deep love for you,`, + type: "rep", + effect: 1, + }); + } + } vignettes.push({ text: `${he} spent most of ${his} time fan${boy}ing obsessively about you to everyone ${he} could,`, type: "rep", @@ -3846,6 +4303,31 @@ window.GetVignette = function GetVignette(slave) { } } } + if (slave.energy > 80) { + if (slave.releaseRules === "permissive" || slave.releaseRules === "masturbation") { + if (slave.fetish === "boobs") { + if (slave.boobs >= 800) { + vignettes.push({ + text: `${he} couldn't control ${his} urges and spent hours fucking ${his} own boobs with various dildoes,`, + type: "health", + effect: 0, + }); + } + vignettes.push({ + text: `${he} was too enthusiastic in tugging and twisting ${his} nipples while masturbating,`, + type: "health", + effect: -1, + }); + } + if (slave.lactation > 0) { + vignettes.push({ + text: `${he} spent an entire day happily masturbating and massaging ${his} swollen, milky tits,`, + type: "trust", + effect: 1, + }); + } + } + } if (slave.health < -20) { vignettes.push({ text: `${he} had a bad cough and spent a lot of time napping,`, diff --git a/src/js/walkPastJS.js b/src/js/walkPastJS.js index e2d2031ad5e63c5e2b4e30236129f65af0ce8623..eceae2c615bb942d261321de7cc19e612812a438 100644 --- a/src/js/walkPastJS.js +++ b/src/js/walkPastJS.js @@ -51,127 +51,127 @@ window.rivalSlave = function(activeSlave, seed) { }; window.loverSlave = function(activeSlave) { - /* will be moved up once this becomes a single, contained function. */ - let _target = ""; - let t = ""; - let V = State.variables; - let race; - if (V.seeRace === 1) { race = activeSlave.race; } else { race = ""; } - let name = activeSlave.slaveName; - const { - he, him, his, hers, himself, boy, He, His - } = getPronouns(activeSlave); + /* will be moved up once this becomes a single, contained function. */ + let _target = ""; + let t = ""; + let V = State.variables; + let race; + if (V.seeRace === 1) { race = activeSlave.race; } else { race = ""; } + let name = activeSlave.slaveName; + const { + he, him, his, hers, himself, boy, He, His + } = getPronouns(activeSlave); - let _partnerSlave = getSlave(activeSlave.relationshipTarget); - let _fuckSeed = jsRandom(1, 100); - let _seed = jsRandom(1, 100); - let _fuckSpot; + let _partnerSlave = getSlave(activeSlave.relationshipTarget); + let _fuckSeed = jsRandom(1, 100); + let _seed = jsRandom(1, 100); + let _fuckSpot; - if (_partnerSlave !== undefined) { - /* eslint-disable no-unused-vars */ - const { - he2, him2, his2, hers2, himself2, boy2, He2, His2 - } = getPronouns(_partnerSlave).appendSuffix('2'); + if (_partnerSlave !== undefined) { + /* eslint-disable no-unused-vars */ + const { + he2, him2, his2, hers2, himself2, boy2, He2, His2 + } = getPronouns(_partnerSlave).appendSuffix('2'); /* /* eslint-enable no-unused-vars */ - let race2; - if (V.seeRace === 1) { race2 = _partnerSlave.race; } else { race2 = ""; } - let partnerName = _partnerSlave.slaveName; - let activeSlaveRel; - if (activeSlave.relationship <= 3) { - activeSlaveRel = "friend with benefits"; - } else if (activeSlave.relationship <= 4) { - activeSlaveRel = "lover"; + let race2; + if (V.seeRace === 1) { race2 = _partnerSlave.race; } else { race2 = ""; } + let partnerName = _partnerSlave.slaveName; + let activeSlaveRel; + if (activeSlave.relationship <= 3) { + activeSlaveRel = "friend with benefits"; + } else if (activeSlave.relationship <= 4) { + activeSlaveRel = "lover"; + } else { + activeSlaveRel = "slave wife"; + } + + t += `${name} and ${partnerName} are `; + if (!isSlaveAvailable(_partnerSlave)) { + if (_partnerSlave.assignment === "work in the dairy" && V.dairyRestraintsSetting >= 2) { + t += `trying their best to maintain their relationship with ${partnerName} being part of ${V.dairyName}.`; + } else if (_partnerSlave.assignment === "be your agent") { + t += `catching up with each other over a video call. Running an arcology in your stead comes with its perks.`; + } else if (_partnerSlave.assignment === "be confined in the arcade") { + t += `trying their best to maintain their relationship with ${partnerName} being nothing more than a hole in ${V.arcadeName}.`; + } + } else if (_seed >= 66) { /* SEXY TIMES */ + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + _fuckSpot = `in ${partnerName}'s suite`; + } else if (activeSlave.livingRules === "luxurious") { + _fuckSpot = `in the nice little room they share`; } else { - activeSlaveRel = "slave wife"; + _fuckSpot = `out in the open in the slave dormitory`; } - t += `${name} and ${partnerName} are `; - if (!isSlaveAvailable(_partnerSlave)) { - if (_partnerSlave.assignment === "work in the dairy" && V.dairyRestraintsSetting >= 2) { - t += `trying their best to maintain their relationship with ${partnerName} being part of ${V.dairyName}.`; - } else if (_partnerSlave.assignment === "be your agent") { - t += `catching up with each other over a video call. Running an arcology in your stead comes with its perks.`; - } else if (_partnerSlave.assignment === "be confined in the arcade") { - t += `trying their best to maintain their relationship with ${partnerName} being nothing more than a hole in ${V.arcadeName}.`; - } - } else if (_seed >= 66) { /* SEXY TIMES */ - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - _fuckSpot = `in ${partnerName}'s suite`; - } else if (activeSlave.livingRules === "luxurious") { - _fuckSpot = `in the nice little room they share`; + if ((activeSlave.fetish === "dom" || activeSlave.fetish === "sadist") && canPenetrate(activeSlave) && (_partnerSlave.fetish === "dom" || _partnerSlave.fetish === "sadist") && canPenetrate(_partnerSlave)) { + t += `double penetrating another slave. They're face to face over their sub's shoulders, `; + if (canSee(activeSlave) && canSee(_partnerSlave)) { + t += `looking into each other's eyes `; } else { - _fuckSpot = `out in the open in the slave dormitory`; + t += `locking lips `; } - - if ((activeSlave.fetish === "dom" || activeSlave.fetish === "sadist") && canPenetrate(activeSlave) && (_partnerSlave.fetish === "dom" || _partnerSlave.fetish === "sadist") && canPenetrate(_partnerSlave)) { - t += `double penetrating another slave. They're face to face over their sub's shoulders, `; - if (canSee(activeSlave) && canSee(_partnerSlave)) { - t += `looking into each other's eyes `; - } else { - t += `locking lips `; - } - t += `with every appearance of enjoyment and love, since for them rubbing dicks inside another slave's pussy is what constitutes healthy sexual activity. ${partnerName} is on the bottom, and holds their victim atop ${him2} with ${partnerName}'s cock already hilted in her cunt so ${name} can force ${himself} inside as well. They enjoy the overstimulated girl's struggles.`; - } else if (activeSlave.energy > 95) { - t += `having loud sex ${_fuckSpot}. ${name} is such a sexual addict that ${he} wants it all the time, and ${partnerName} does ${his2} best to help ${his} ${activeSlaveRel} get off. `; - if (canPenetrate(activeSlave) && _fuckSeed > 50) { - if (canDoVaginal(_partnerSlave)) { - if (_partnerSlave.vagina === 0 && _partnerSlave.amp !== 1) { - t += `${name} has ${his} cock between ${partnerName}'s legs and is enjoying an enthusiastic thigh job.`; - } else if (_partnerSlave.vagina === 0) { - t += `${name} has ${his} cock between ${partnerName}'s labia and is enthusiastically teasing ${his} virgin lover.`; - } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { - t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} pussy doggy style.`; - } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { - t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} pussy from behind.`; - } else if (_fuckSeed > 70) { - t += `${partnerName} has ${name} on ${his2} back and is enthusiastically bouncing on ${his2} dick.`; - } else if (_fuckSeed > 60) { - t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} pussy in the missionary position.`; - } else { - t += `${name} is enthusiastically fucking ${partnerName}'s pussy.`; - } - } else if (canDoAnal(_partnerSlave)) { - if (_partnerSlave.anus === 0) { - t += `${name} has ${his} cock sandwiched between ${partnerName}'s buttcheeks and is enthusiastically hotdogging ${his2} rear.`; - } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { - t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} ass doggy style.`; - } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { - t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} ass from behind.`; - } else if (_fuckSeed > 70) { - t += `${partnerName} has ${name} on ${his} back and is enthusiastically bouncing on ${his} dick.`; - } else if (_fuckSeed > 60) { - t += `${name} has ${partnerName} on ${his2} stomach and is enthusiastically fucking ${his2} ass.`; - } else { - t += `${name} is enthusiastically fucking ${partnerName}'s ass.`; - } - } else if (_partnerSlave.boobs > 800) { - t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} tits.`; - } else { - t += `${name} has ${partnerName}'s face to ${his} crotch and is enthusiastically pounding ${his2} throat.`; - } - } else if (activeSlave.dick > 0 && _fuckSeed > 50) { - t += `${partnerName} has ${his2} lips wrapped around ${name}'s dick and is enthusiastically giving ${him} a blowjob.`; - } else if (canDoVaginal(activeSlave) && _fuckSeed > 30) { - if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0) { - t += `${partnerName} is enthusiastically fucking ${name}'s pussy.`; - } else if (canDoVaginal(_partnerSlave)) { - t += `They're scissoring enthusiastically and playing with each other's breasts.`; + t += `with every appearance of enjoyment and love, since for them rubbing dicks inside another slave's pussy is what constitutes healthy sexual activity. ${partnerName} is on the bottom, and holds their victim atop ${him2} with ${partnerName}'s cock already hilted in her cunt so ${name} can force ${himself} inside as well. They enjoy the overstimulated girl's struggles.`; + } else if (activeSlave.energy > 95) { + t += `having loud sex ${_fuckSpot}. ${name} is such a sexual addict that ${he} wants it all the time, and ${partnerName} does ${his2} best to help ${his} ${activeSlaveRel} get off. `; + if (canPenetrate(activeSlave) && _fuckSeed > 50) { + if (canDoVaginal(_partnerSlave)) { + if (_partnerSlave.vagina === 0 && _partnerSlave.amp !== 1) { + t += `${name} has ${his} cock between ${partnerName}'s legs and is enjoying an enthusiastic thigh job.`; + } else if (_partnerSlave.vagina === 0) { + t += `${name} has ${his} cock between ${partnerName}'s labia and is enthusiastically teasing ${his} virgin lover.`; + } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { + t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} pussy doggy style.`; + } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { + t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} pussy from behind.`; + } else if (_fuckSeed > 70) { + t += `${partnerName} has ${name} on ${his2} back and is enthusiastically bouncing on ${his2} dick.`; + } else if (_fuckSeed > 60) { + t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} pussy in the missionary position.`; } else { - t += `${partnerName} is enthusiastically eating out ${name}'s pussy.`; + t += `${name} is enthusiastically fucking ${partnerName}'s pussy.`; } - } else if (canDoAnal(activeSlave) && activeSlave.anus > 0 && _fuckSeed > 10) { - if (canPenetrate(_partnerSlave)) { - t += `${partnerName} is enthusiastically fucking ${name}'s ass.`; - } else if (_partnerSlave.amp !== 1) { - t += `${partnerName} is enthusiastically fisting ${name}'s ass.`; + } else if (canDoAnal(_partnerSlave)) { + if (_partnerSlave.anus === 0) { + t += `${name} has ${his} cock sandwiched between ${partnerName}'s buttcheeks and is enthusiastically hotdogging ${his2} rear.`; + } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { + t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} ass doggy style.`; + } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { + t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} ass from behind.`; + } else if (_fuckSeed > 70) { + t += `${partnerName} has ${name} on ${his} back and is enthusiastically bouncing on ${his} dick.`; + } else if (_fuckSeed > 60) { + t += `${name} has ${partnerName} on ${his2} stomach and is enthusiastically fucking ${his2} ass.`; } else { - t += `${partnerName} is enthusiastically pounding ${name}'s ass with a dildo.`; + t += `${name} is enthusiastically fucking ${partnerName}'s ass.`; } + } else if (_partnerSlave.boobs > 800) { + t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} tits.`; + } else { + t += `${name} has ${partnerName}'s face to ${his} crotch and is enthusiastically pounding ${his2} throat.`; + } + } else if (activeSlave.dick > 0 && _fuckSeed > 50) { + t += `${partnerName} has ${his2} lips wrapped around ${name}'s dick and is enthusiastically giving ${him} a blowjob.`; + } else if (canDoVaginal(activeSlave) && _fuckSeed > 30) { + if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0) { + t += `${partnerName} is enthusiastically fucking ${name}'s pussy.`; + } else if (canDoVaginal(_partnerSlave)) { + t += `They're scissoring enthusiastically and playing with each other's breasts.`; } else { - t += `${partnerName} is enthusiastically using ${his2} tongue to bring ${name} to orgasm.`; + t += `${partnerName} is enthusiastically eating out ${name}'s pussy.`; } - } else if (activeSlave.fetishStrength > 60 && activeSlave.fetishKnown === 1 && activeSlave.fetish !== "none") { - switch (activeSlave.fetish) { + } else if (canDoAnal(activeSlave) && activeSlave.anus > 0 && _fuckSeed > 10) { + if (canPenetrate(_partnerSlave)) { + t += `${partnerName} is enthusiastically fucking ${name}'s ass.`; + } else if (_partnerSlave.amp !== 1) { + t += `${partnerName} is enthusiastically fisting ${name}'s ass.`; + } else { + t += `${partnerName} is enthusiastically pounding ${name}'s ass with a dildo.`; + } + } else { + t += `${partnerName} is enthusiastically using ${his2} tongue to bring ${name} to orgasm.`; + } + } else if (activeSlave.fetishStrength > 60 && activeSlave.fetishKnown === 1 && activeSlave.fetish !== "none") { + switch (activeSlave.fetish) { case "boobs": if (_fuckSeed > 60 && (activeSlave.lactation > 0 || _partnerSlave.lactation > 0)) { t += `snuggling rather sexually ${_fuckSpot}. `; @@ -841,152 +841,152 @@ window.loverSlave = function(activeSlave) { default: t += `having intimate sex ${_fuckSpot}.`; break; - } - } else if (!activeSlave.need || activeSlave.energy < 20) { - t += `just spooning in bed. Since ${name} `; - if (activeSlave.energy < 20) { - t += `in sexually frigid, `; - } else { - t += `gets fucked at work, `; - } - t += `${partnerName} understands that what ${he} really wants from ${him2} is emotional intimacy. They're cuddling quietly, offering each other silent comfort and companionship.`; - } else if (canPenetrate(activeSlave) && (_partnerSlave.vagina > 0) && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; - if (canSee(_partnerSlave)) { - t += `looking deep into ${his} eyes `; - } else { - t += `gazing longingly into ${his} face `; - } - t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s cock in ${his2} womanhood.`; - } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; - if (canSee(_partnerSlave)) { - t += `looking deep into ${his} eyes `; - } else { - t += `gazing longingly into ${his} face `; - } - t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s huge clit in ${his2} womanhood.`; - } else if (activeSlave.dick > 1 && canPenetrate(activeSlave) && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying ${partnerName}'s ass, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; - if (_partnerSlave.earShape !== "none") { - t +=`ears and `; - } - t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; - } else if (activeSlave.clit > 2 && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, managing to have clitoral-anal sex. ${partnerName} is face-down with ${his2} ass up, spreading ${his2} buttocks as wide as possible, giving ${his2} ${activeSlaveRel} the opportunity to squat over ${him2} and penetrate it with ${his} huge, erect clit. ${name} can't thrust much, but the shocking lewdness of the act is enough for both of them.`; - } else if (canPenetrate(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, spooning while ${name} gently rubs ${his} cock between ${partnerName}'s thighs, pressed tightly together. Since ${partnerName} is a virgin, this is the closest they can come to penetrative intercourse, but ${name} is enjoying ${partnerName}'s body anyway, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys ${himself2}. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; - if (_partnerSlave.earShape !== "none") { - t +=`ears and `; - } - t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; - } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, with ${partnerName} down on ${his2} knees in front of ${name}. From behind ${partnerName} it looks like ${he2}'s giving ${his2} ${activeSlaveRel} a conventional, if enthusiastic, blowjob. Only on closer inspection does it become clear how unusual the oral is: ${name} has such a huge clit that ${his} ${activeSlaveRel} can suck ${him} off just like it were a penis.`; - } else if (_partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; - if (canSee(_partnerSlave)) { - t += `looking deep into ${his} eyes `; - } else { - t += `gazing longingly into ${his} face `; - } - t += `as ${he2} enjoys the feeling of ${his2} ${activeSlaveRel} fucking ${him2} with a strap-on.`; - } else if (_partnerSlave.anus > 0 && canDoAnal(_partnerSlave) && activeSlave.amp !== 1 && activeSlave.belly < 10000) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying penetrating ${partnerName}'s ass with a strap-on, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; - if (_partnerSlave.earShape !== "none") { - t +=`ears and `; - } - t += `neck, cupping a breast with one hand, and lightly stimulating ${him} with the other.`; - } else if (_partnerSlave.amp !== 1 && activeSlave.amp !== 1) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, enjoying some mutual masturbation.`; - } else if (_partnerSlave.amp === 1) { - t += `just cuddling `; - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}. ${name} is using ${partnerName}'s limbless torso as a pillow, which ${partnerName} seems to be enjoying, by ${his2} contented expression.`; + } + } else if (!activeSlave.need || activeSlave.energy < 20) { + t += `just spooning in bed. Since ${name} `; + if (activeSlave.energy < 20) { + t += `in sexually frigid, `; } else { - t += `just cuddling `; - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}. They're lying quietly, offering each other silent comfort and companionship.`; + t += `gets fucked at work, `; + } + t += `${partnerName} understands that what ${he} really wants from ${him2} is emotional intimacy. They're cuddling quietly, offering each other silent comfort and companionship.`; + } else if (canPenetrate(activeSlave) && (_partnerSlave.vagina > 0) && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; + if (canSee(_partnerSlave)) { + t += `looking deep into ${his} eyes `; + } else { + t += `gazing longingly into ${his} face `; + } + t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s cock in ${his2} womanhood.`; + } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; + if (canSee(_partnerSlave)) { + t += `looking deep into ${his} eyes `; + } else { + t += `gazing longingly into ${his} face `; + } + t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s huge clit in ${his2} womanhood.`; + } else if (activeSlave.dick > 1 && canPenetrate(activeSlave) && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying ${partnerName}'s ass, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; + if (_partnerSlave.earShape !== "none") { + t +=`ears and `; + } + t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; + } else if (activeSlave.clit > 2 && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, managing to have clitoral-anal sex. ${partnerName} is face-down with ${his2} ass up, spreading ${his2} buttocks as wide as possible, giving ${his2} ${activeSlaveRel} the opportunity to squat over ${him2} and penetrate it with ${his} huge, erect clit. ${name} can't thrust much, but the shocking lewdness of the act is enough for both of them.`; + } else if (canPenetrate(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, spooning while ${name} gently rubs ${his} cock between ${partnerName}'s thighs, pressed tightly together. Since ${partnerName} is a virgin, this is the closest they can come to penetrative intercourse, but ${name} is enjoying ${partnerName}'s body anyway, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys ${himself2}. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; + if (_partnerSlave.earShape !== "none") { + t +=`ears and `; + } + t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; + } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, with ${partnerName} down on ${his2} knees in front of ${name}. From behind ${partnerName} it looks like ${he2}'s giving ${his2} ${activeSlaveRel} a conventional, if enthusiastic, blowjob. Only on closer inspection does it become clear how unusual the oral is: ${name} has such a huge clit that ${his} ${activeSlaveRel} can suck ${him} off just like it were a penis.`; + } else if (_partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; + if (canSee(_partnerSlave)) { + t += `looking deep into ${his} eyes `; + } else { + t += `gazing longingly into ${his} face `; + } + t += `as ${he2} enjoys the feeling of ${his2} ${activeSlaveRel} fucking ${him2} with a strap-on.`; + } else if (_partnerSlave.anus > 0 && canDoAnal(_partnerSlave) && activeSlave.amp !== 1 && activeSlave.belly < 10000) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying penetrating ${partnerName}'s ass with a strap-on, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; + if (_partnerSlave.earShape !== "none") { + t +=`ears and `; + } + t += `neck, cupping a breast with one hand, and lightly stimulating ${him} with the other.`; + } else if (_partnerSlave.amp !== 1 && activeSlave.amp !== 1) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; } - } else if (_seed >= 33) { /* CUDDLE TIME */ - if (activeSlave.energy > 95 && _fuckSeed > 70) { - t += `lying in bed together. ${partnerName} has somehow managed to exhaust ${his2} ${activeSlaveRel}, and the sexually sated nympho is curled up with ${his} head on ${partnerName}'s chest, snoring lightly. ${partnerName} is smiling fondly at ${him}.`; - } else if (activeSlave.fetish !== "none" && _fuckSeed > 50) { - switch (activeSlave.fetish) { + t += `${_fuckSpot}, enjoying some mutual masturbation.`; + } else if (_partnerSlave.amp === 1) { + t += `just cuddling `; + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}. ${name} is using ${partnerName}'s limbless torso as a pillow, which ${partnerName} seems to be enjoying, by ${his2} contented expression.`; + } else { + t += `just cuddling `; + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}. They're lying quietly, offering each other silent comfort and companionship.`; + } + } else if (_seed >= 33) { /* CUDDLE TIME */ + if (activeSlave.energy > 95 && _fuckSeed > 70) { + t += `lying in bed together. ${partnerName} has somehow managed to exhaust ${his2} ${activeSlaveRel}, and the sexually sated nympho is curled up with ${his} head on ${partnerName}'s chest, snoring lightly. ${partnerName} is smiling fondly at ${him}.`; + } else if (activeSlave.fetish !== "none" && _fuckSeed > 50) { + switch (activeSlave.fetish) { case "boobs": t += `sleeping in bed together. ${name} is using ${partnerName}'s `; if (_partnerSlave.boobs > 10000) { @@ -1074,23 +1074,23 @@ window.loverSlave = function(activeSlave) { t += `${name} is being spooned by ${his} ${activeSlaveRel}, smiling peacefully at being held.`; } break; - } - } else if (_partnerSlave.dick > 6 && activeSlave.amp !== 1 && _fuckSeed > 30) { - t += `sleeping in bed together. ${name} is cuddled up close to ${partnerName}, and is cradling ${his} ${activeSlaveRel}'s enormous, soft cock with one hand.`; - } else if (activeSlave.height > _partnerSlave.height + 10) { - t += `sleeping in bed together, with the taller ${name} curled around ${his} little ${activeSlaveRel}.`; - } else if (_partnerSlave.height > activeSlave.height + 10) { - t += `sleeping in bed together, with the shorter ${name} curled under ${his} ${activeSlaveRel}.`; - } else if (activeSlave.amp === 1) { - t += `sleeping in bed together; ${partnerName} is using ${his2} limbless ${activeSlaveRel} as a pillow.`; - } else if (_partnerSlave.amp !== 1) { - t += `resting in bed together, holding hands in their sleep.`; - } else { - t += `sleeping quietly in bed together.`; } - } else { /* TOGETHER TIME */ - if (_fuckSeed > 75 && activeSlave.behavioralQuirk !== "none") { - switch (activeSlave.behavioralQuirk) { + } else if (_partnerSlave.dick > 6 && activeSlave.amp !== 1 && _fuckSeed > 30) { + t += `sleeping in bed together. ${name} is cuddled up close to ${partnerName}, and is cradling ${his} ${activeSlaveRel}'s enormous, soft cock with one hand.`; + } else if (activeSlave.height > _partnerSlave.height + 10) { + t += `sleeping in bed together, with the taller ${name} curled around ${his} little ${activeSlaveRel}.`; + } else if (_partnerSlave.height > activeSlave.height + 10) { + t += `sleeping in bed together, with the shorter ${name} curled under ${his} ${activeSlaveRel}.`; + } else if (activeSlave.amp === 1) { + t += `sleeping in bed together; ${partnerName} is using ${his2} limbless ${activeSlaveRel} as a pillow.`; + } else if (_partnerSlave.amp !== 1) { + t += `resting in bed together, holding hands in their sleep.`; + } else { + t += `sleeping quietly in bed together.`; + } + } else { /* TOGETHER TIME */ + if (_fuckSeed > 75 && activeSlave.behavioralQuirk !== "none") { + switch (activeSlave.behavioralQuirk) { case "confident": t += `finishing up a meal together. ${name} `; if (canTalk(activeSlave) && canHear(_partnerSlave)) { @@ -1177,60 +1177,60 @@ window.loverSlave = function(activeSlave) { } } break; - } - } else if (_fuckSeed > 50) { - if ((activeSlave.actualAge >= _partnerSlave.actualAge + 10) && canTalk(_partnerSlave) && canHear(activeSlave)) { - t += `tidying up their room together. ${partnerName} is chattering about ${his2} day, while ${name} listens quietly, smiling fondly at ${his} ${activeSlaveRel}'s prattle.`; - } else if ((_partnerSlave.actualAge >= activeSlave.actualAge + 10) && canTalk(activeSlave) && canHear(_partnerSlave)) { - t += `tidying up their room together. ${name} is chattering about ${his} day, while ${partnerName} listens quietly, smiling fondly at ${his2} ${activeSlaveRel}'s prattle.`; - } else if (activeSlave.amp !== 1 && !canTalk(activeSlave) && canSee(_partnerSlave)) { - t += `getting ready for bed. ${name} is using gestures to tell ${his} ${activeSlaveRel} about ${his} day; ${partnerName} is very patient and does ${his2} best to follow.`; - } else if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { - t += `tidying up their room together. ${name} and ${partnerName} are chattering away over inconsequential things.`; - } else if (canSee(activeSlave) && canSee(_partnerSlave) && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) { - t += `getting ready for bed. ${name} and ${partnerName} are rapidly gesturing to each other about their days.`; + } + } else if (_fuckSeed > 50) { + if ((activeSlave.actualAge >= _partnerSlave.actualAge + 10) && canTalk(_partnerSlave) && canHear(activeSlave)) { + t += `tidying up their room together. ${partnerName} is chattering about ${his2} day, while ${name} listens quietly, smiling fondly at ${his} ${activeSlaveRel}'s prattle.`; + } else if ((_partnerSlave.actualAge >= activeSlave.actualAge + 10) && canTalk(activeSlave) && canHear(_partnerSlave)) { + t += `tidying up their room together. ${name} is chattering about ${his} day, while ${partnerName} listens quietly, smiling fondly at ${his2} ${activeSlaveRel}'s prattle.`; + } else if (activeSlave.amp !== 1 && !canTalk(activeSlave) && canSee(_partnerSlave)) { + t += `getting ready for bed. ${name} is using gestures to tell ${his} ${activeSlaveRel} about ${his} day; ${partnerName} is very patient and does ${his2} best to follow.`; + } else if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { + t += `tidying up their room together. ${name} and ${partnerName} are chattering away over inconsequential things.`; + } else if (canSee(activeSlave) && canSee(_partnerSlave) && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) { + t += `getting ready for bed. ${name} and ${partnerName} are rapidly gesturing to each other about their days.`; + } else { + t += `getting ready for bed. ${name} and ${his} ${activeSlaveRel}, ${partnerName}, are leaning against one another, just enjoying each other's warmth.`; + } + } else if (_fuckSeed > 25) { + t += `using some of their free time to `; + if (!canWalk(activeSlave) && canWalk(_partnerSlave)) { + if (canSee(activeSlave) && canSee(_partnerSlave)) { + t += `watch the weather; ${partnerName} helped ${his2} ${activeSlaveRel} to a window so ${he} could look out with ${him2}.`; } else { - t += `getting ready for bed. ${name} and ${his} ${activeSlaveRel}, ${partnerName}, are leaning against one another, just enjoying each other's warmth.`; + t += `get some fresh air; ${partnerName} helped ${his2} ${activeSlaveRel} to a balcony so ${he} could enjoy the breeze with ${him2}.`; } - } else if (_fuckSeed > 25) { - t += `using some of their free time to `; - if (!canWalk(activeSlave) && canWalk(_partnerSlave)) { - if (canSee(activeSlave) && canSee(_partnerSlave)) { - t += `watch the weather; ${partnerName} helped ${his2} ${activeSlaveRel} to a window so ${he} could look out with ${him2}.`; - } else { - t += `get some fresh air; ${partnerName} helped ${his2} ${activeSlaveRel} to a balcony so ${he} could enjoy the breeze with ${him2}.`; - } - } else if (!canWalk(_partnerSlave) && canWalk(activeSlave)) { - if (canSee(activeSlave) && canSee(_partnerSlave)) { - t += `watch the weather; ${name} helped ${his} ${activeSlaveRel} to a window so ${he2} could look out with ${him}.`; - } else { - t += `get some fresh air; ${name} helped ${his} ${activeSlaveRel} to a balcony so ${he2} could enjoy the breeze with ${him}.`; - } + } else if (!canWalk(_partnerSlave) && canWalk(activeSlave)) { + if (canSee(activeSlave) && canSee(_partnerSlave)) { + t += `watch the weather; ${name} helped ${his} ${activeSlaveRel} to a window so ${he2} could look out with ${him}.`; } else { - t += `rest on one of the penthouse balconies and enjoy the weather.`; + t += `get some fresh air; ${name} helped ${his} ${activeSlaveRel} to a balcony so ${he2} could enjoy the breeze with ${him}.`; } } else { - if (V.cockFeeder === 1) { - t += `taking in a meal together; they've chosen dispensers next to each other and are slurping away.`; - } else if (V.suppository === 1) { - t += `taking their drugs together; they've chosen fuckmachines next to each other and are `; - if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { - t += `chatting quietly as they're sodomized.`; - } else { - t += `enjoying their mutual sodomy.`; - } + t += `rest on one of the penthouse balconies and enjoy the weather.`; + } + } else { + if (V.cockFeeder === 1) { + t += `taking in a meal together; they've chosen dispensers next to each other and are slurping away.`; + } else if (V.suppository === 1) { + t += `taking their drugs together; they've chosen fuckmachines next to each other and are `; + if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { + t += `chatting quietly as they're sodomized.`; } else { - t += `eating a quiet meal together.`; + t += `enjoying their mutual sodomy.`; } + } else { + t += `eating a quiet meal together.`; } } - /* CLOSE SEXY/CUDDLE/TOGETHER TIME */ - - V.target = "FRelation"; - } else { - t += ` Lover not found!`; } - return t; + /* CLOSE SEXY/CUDDLE/TOGETHER TIME */ + + V.target = "FRelation"; + } else { + t += ` Lover not found!`; + } + return t; }; window.relatedSlave = function(activeSlave) { @@ -1289,23 +1289,66 @@ window.walkPasts = function(slave, _seed) { let race = (V.seeRace ? slave.race : ""); switch (slave.assignment) { - case "be your agent": - t += `is shaping society in ${his} assigned arcology.`; - break; - case "live with your agent": - t += `is helping ${his} lover shape society in ${his} assigned arcology.`; - break; - case "work in the dairy": - if (V.dairyRestraintsSetting > 1) { - t += `is strapped to a milking machine in ${V.dairyName}, `; - if (slave.ovaries === 1 && V.dairyPregSetting > 0 && jsRandom(1, 2) === 2) { - if (isFertile(slave)) { - t += `and is wincing in pain as the machine forces another load of cum into ${his} womb. As you watch, ${his} ${race} stomach steadily swells with baby batter.`; - } else { - t += `giving you a good view of ${his} ${race} body and heavy belly on the feeds.`; - } - } else if (slave.lactation > 0) { - if (slave.balls > 0 && jsRandom(1, 2) === 1) { + case "be your agent": + t += `is shaping society in ${his} assigned arcology.`; + break; + case "live with your agent": + t += `is helping ${his} lover shape society in ${his} assigned arcology.`; + break; + case "work in the dairy": + if (V.dairyRestraintsSetting > 1) { + t += `is strapped to a milking machine in ${V.dairyName}, `; + if (slave.ovaries === 1 && V.dairyPregSetting > 0 && jsRandom(1, 2) === 2) { + if (isFertile(slave)) { + t += `and is wincing in pain as the machine forces another load of cum into ${his} womb. As you watch, ${his} ${race} stomach steadily swells with baby batter.`; + } else { + t += `giving you a good view of ${his} ${race} body and heavy belly on the feeds.`; + } + } else if (slave.lactation > 0) { + if (slave.balls > 0 && jsRandom(1, 2) === 1) { + if (slave.dick > 0) { + if (_seed > 50) { + t += `and is having ${his} cock sucked dry. As you watch, `; + if (slave.scrotum) { + t += `${his} balls tighten `; + } else { + t += `${he} begins to thrust harder `; + } + if (V.dairyStimulatorsSetting > 0) { + t += `as the phallus up ${his} butt `; + } else { + t += `as the suction to ${his} dick `; + } + t += `forces ${him} closer to yet another ejaculation.`; + } else { + t += `and is wincing in pain as the machine sucks ${his} sore cock, but you have a good view of ${his} ${race} body on the feeds.`; + } + } else { + if (_seed > 50) { + t += `and is having ${his} balls sucked dry. As you watch, `; + if (slave.scrotum) { + t += `${his} scrotum tightens `; + } else { + t += `${he} begins to thrust harder `; + } + if (V.dairyStimulatorsSetting) { + t += `as the phallus up ${his} butt `; + } else { + t += `as the suction against ${his} crotch `; + } + t += `forces ${him} closer to yet another leaking ejaculation.`; + } else { + t += `and is wincing in pain as the machine sucks ${his} empty balls, but you have a good view of ${his} ${race} body on the feeds.`; + } + } + } else { + if (_seed > 50) { + t += `and is having ${his} tits drained, but you have a good view of ${his} ${race} body on the feeds.`; + } else { + t += `and is recovering after having ${his} tits sucked dry, but you have a good view of ${his} ${race} body on the feeds.`; + } + } + } else if (slave.balls > 0) { if (slave.dick > 0) { if (_seed > 50) { t += `and is having ${his} cock sucked dry. As you watch, `; @@ -1342,55 +1385,55 @@ window.walkPasts = function(slave, _seed) { } } } else { - if (_seed > 50) { - t += `and is having ${his} tits drained, but you have a good view of ${his} ${race} body on the feeds.`; - } else { - t += `and is recovering after having ${his} tits sucked dry, but you have a good view of ${his} ${race} body on the feeds.`; - } + t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; } - } else if (slave.balls > 0) { - if (slave.dick > 0) { - if (_seed > 50) { - t += `and is having ${his} cock sucked dry. As you watch, `; - if (slave.scrotum) { - t += `${his} balls tighten `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting > 0) { - t += `as the phallus up ${his} butt `; + } else { + t += `is working in ${V.dairyName}, `; + if (slave.lactation > 0) { + if (slave.balls > 0 && jsRandom(1, 2) === 1) { + if (slave.dick > 0) { + if (_seed > 50) { + t += `and is having ${his} cock milked. As you watch, `; + if (slave.scrotum) { + t += `${his} balls tighten `; + } else { + t += `${he} begins to thrust harder `; + } + if (V.dairyStimulatorsSetting > 0) { + t += `as the phallus up ${his} butt `; + } else { + t += `as the suction to ${his} dick `; + } + t += `brings ${him} closer to a copious ejaculation.`; + } else { + t += `and is massaging ${his} sore swollen cock, but you have a good view of ${his} ${race} body on the feeds.`; + } } else { - t += `as the suction to ${his} dick `; + if (_seed > 50) { + t += `and is having ${his} balls drained. As you watch, `; + if (slave.scrotum) { + t += `${his} scrotum tightens `; + } else { + t += `${he} begins to thrust harder `; + } + if (V.dairyStimulatorsSetting) { + t += `as the phallus up ${his} butt `; + } else { + t += `as the suction against ${his} crotch `; + } + t += `brings ${him} closer to a copious squirting.`; + } else { + t += `and is massaging ${his} aching balls, but you have a good view of ${his} ${race} body on the feeds.`; + } } - t += `forces ${him} closer to yet another ejaculation.`; } else { - t += `and is wincing in pain as the machine sucks ${his} sore cock, but you have a good view of ${his} ${race} body on the feeds.`; - } - } else { - if (_seed > 50) { - t += `and is having ${his} balls sucked dry. As you watch, `; - if (slave.scrotum) { - t += `${his} scrotum tightens `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting) { - t += `as the phallus up ${his} butt `; + if (_seed > 50) { + t += `and is having ${his} tits milked, but you have a good view of ${his} ${race} body on the feeds.`; } else { - t += `as the suction against ${his} crotch `; + t += `and is massaging ${his} sore tits, but you have a good view of ${his} ${race} body on the feeds.`; } - t += `forces ${him} closer to yet another leaking ejaculation.`; - } else { - t += `and is wincing in pain as the machine sucks ${his} empty balls, but you have a good view of ${his} ${race} body on the feeds.`; } - } - } else { - t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; - } - } else { - t += `is working in ${V.dairyName}, `; - if (slave.lactation > 0) { - if (slave.balls > 0 && jsRandom(1, 2) === 1) { + } else if (slave.balls > 0) { if (slave.dick > 0) { if (_seed > 50) { t += `and is having ${his} cock milked. As you watch, `; @@ -1399,7 +1442,7 @@ window.walkPasts = function(slave, _seed) { } else { t += `${he} begins to thrust harder `; } - if (V.dairyStimulatorsSetting > 0) { + if (V.dairyStimulatorsSetting) { t += `as the phallus up ${his} butt `; } else { t += `as the suction to ${his} dick `; @@ -1427,436 +1470,393 @@ window.walkPasts = function(slave, _seed) { } } } else { - if (_seed > 50) { - t += `and is having ${his} tits milked, but you have a good view of ${his} ${race} body on the feeds.`; + t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; + } + } + break; + case "work in the brothel": + t += `is working in ${V.brothelName}, and is `; + if (Beauty(slave) > 100 && jsRandom(1, 2) === 1) { + if (_seed > 80) { + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `riding one customer's dick while ${he} gives another a blowjob.`; } else { - t += `and is massaging ${his} sore tits, but you have a good view of ${his} ${race} body on the feeds.`; + t += `deep throating a pair of customer's dicks.`; } - } - } else if (slave.balls > 0) { - if (slave.dick > 0) { - if (_seed > 50) { - t += `and is having ${his} cock milked. As you watch, `; - if (slave.scrotum) { - t += `${his} balls tighten `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting) { - t += `as the phallus up ${his} butt `; - } else { - t += `as the suction to ${his} dick `; - } - t += `brings ${him} closer to a copious ejaculation.`; + } else if (_seed > 60 && slave.amp !== 1) { + t += `sucking one customer's cock while giving another a handjob.`; + } else if (_seed > 40) { + t += `eating out one customer's cunt while another `; + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `uses a strap-on on ${him}.`; + } else { + t += `teases ${his} butt.`; + } + } else if (_seed > 20) { + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `getting pounded by `; } else { - t += `and is massaging ${his} sore swollen cock, but you have a good view of ${his} ${race} body on the feeds.`; + t += `amusing `; } + t += `two women wearing strap-ons.`; } else { - if (_seed > 50) { - t += `and is having ${his} balls drained. As you watch, `; - if (slave.scrotum) { - t += `${his} scrotum tightens `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting) { - t += `as the phallus up ${his} butt `; - } else { - t += `as the suction against ${his} crotch `; - } - t += `brings ${him} closer to a copious squirting.`; + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `being double penetrated by `; } else { - t += `and is massaging ${his} aching balls, but you have a good view of ${his} ${race} body on the feeds.`; + t += `using ${his} body to please `; } + t += `a pair of customers.`; } - } else { - t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; - } - } - break; - case "work in the brothel": - t += `is working in ${V.brothelName}, and is `; - if (Beauty(slave) > 100 && jsRandom(1, 2) === 1) { - if (_seed > 80) { + } else if (_seed > 80) { if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `riding one customer's dick while ${he} gives another a blowjob.`; + t += `pleasing `; } else { - t += `deep throating a pair of customer's dicks.`; + t += `riding `; } - } else if (_seed > 60 && slave.amp !== 1) { - t += `sucking one customer's cock while giving another a handjob.`; + t += `a customer's dick.`; + } else if (_seed > 60) { + t += `sucking a customer's cock.`; } else if (_seed > 40) { - t += `eating out one customer's cunt while another `; - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `uses a strap-on on ${him}.`; + t += `pleasuring a customer's cunt.`; + } else if (_seed > 20) { + t += `getting pounded by a woman wearing a strap-on.`; + } else { + t += `being held down and `; + if (canDoAnal(slave)) { + t += `buttfucked `; } else { - t += `teases ${his} butt.`; + t += `raped `; } - } else if (_seed > 20) { - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `getting pounded by `; + t += `by a customer.`; + } + t += ` You have a voyeuristic view of ${his} ${race} body on the feeds.`; + break; + case "serve in the club": + t += `is working in ${V.clubName}, `; + if (_seed > 50) { + t += `displaying ${his} ${race} body, keeping citizens company, and flirting with anyone who shows interest.`; + } else { + t += `or rather just off it, having taken a prominent citizen back to a discreet room so he can use ${his} ${race} body.`; + } + break; + case "work as a servant": + if (_seed > 50) { + t += `was scrubbing the penthouse floor, until another slave requested oral service.`; + } else { + t += `is scrubbing the penthouse floor.`; + } + break; + case "serve in the master suite": + if (slave.fuckdoll > 0) { + t += `waiting for use in ${V.masterSuiteName}, next to a display case full of other sex toys.`; + } else if (V.masterSuiteUpgradeLuxury === 1) { + if (_seed > 50) { + t += `is sitting on the big bed in ${V.masterSuiteName}, awaiting your return.`; } else { - t += `amusing `; + t += `is beautifying ${himself} in ${V.masterSuiteName} so ${he}'ll be pretty when you return.`; + } + } else if (V.masterSuiteUpgradeLuxury === 2) { + t += `is in ${V.masterSuiteName}'s fuckpit, `; + if (_seed > 80) { + t += `with a pair of ${his} fellow fucktoys industriously sucking on ${his} nipples.`; + } else if (_seed > 60) { + if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { + t += `taking double penetration from `; + } else { + t += `being spitroasted by `; + } + t += `a pair of ${his} fellow fucktoys.`; + } else if (_seed > 40) { + if (canPenetrate(slave)) { + t += `with ${his} dick inside `; + } else if (slave.dick > 0 && slave.chastityPenis !== 1) { + t += `getting ${his} soft dick sucked by `; + } else if (canDoVaginal(slave) || canDoAnal(slave)) { + t += `getting eaten out by `; + } else { + t += `making out with `; + } + t += `a fellow fucktoy.`; + } else if (_seed > 20) { + if (slave.vagina > 0 && canDoVaginal(slave)) { + t += `getting pounded `; + } else if (slave.anus > 0 && canDoAnal(slave)) { + t += `getting ${his} ass pounded `; + } else if (canDoVaginal(slave) || canDoAnal(slave)) { + t += `getting eaten out `; + } else { + t += `getting deepthroated `; + } + t += `by a fellow fucktoy.`; + } else { + t += `performing oral sex on a fellow fucktoy.`; } - t += `two women wearing strap-ons.`; } else { - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `being double penetrated by `; + if (slave.energy > 95) { + t += `is having enthusiastic sex with your other pets while waiting for you to ravish ${him}.`; } else { - t += `using ${his} body to please `; + t += `is having idle sex with several of your other toys while they await your pleasure.`; + if (slave.fetishKnown === 1) { + switch (slave.fetish) { + case "buttslut": + if (canDoAnal(slave) && slave.anus > 0) { + t += `${He}'s happily taking a strap-on up ${his} asspussy.`; + } else { + t += `${He}'s happily got another slave between ${his} buttcheeks.`; + } + break; + case "cumslut": + t += `${He}'s happily performing oral on another slave.`; + break; + case "dom": + t += `${He}'s pinning another slave down while ${he} fucks her.`; + break; + case "submissive": + t += `${He}'s letting another slave have her way with ${him}.`; + break; + case "sadist": + if (slave.amp !== 1) { + t += `${He}'s spanking another slave with one hand and fingering her with the other.`; + } else { + t += `${He}'s painfully teasing another slave's nipple with ${his} teeth.`; + } + break; + case "masochist": + t += `Another slave is spanking ${him} while molesting everything she can.`; + break; + case "boobs": + t += `${He} has a slave sucking on each of ${his} nipples`; + if (slave.amp !== 1) { + t += ` while ${he} gives each a handjob.`; + } else { + t += `.`; + } + break; + case "pregnancy": + if (slave.belly >= 5000) { + t += `${He}'s sighing contentedly as ${his} rounded belly is sensually rubbed.`; + } else if (canPenetrate(slave)) { + t += `${He}'s happily roleplaying impregnating the slave ${he}'s fucking.`; + } else if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { + t += `${He}'s happily roleplaying conceiving a child as ${he} gets fucked.`; + } else { + t += `${He}'s happily roleplaying being hugely pregnant.`; + } + } + } } - t += `a pair of customers.`; } - } else if (_seed > 80) { - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `pleasing `; + break; + /* + case "guard you": + t += `is standing discreetly behind your left shoulder, watching for threats.`; + break + */ + case "stay confined": + t += `is confined, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; + break; + case "be confined in the cellblock": + t += `is confined in ${V.cellblockName}, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; + break; + case "be confined in the arcade": + case "work a glory hole": + t += `is confined in `; + if (slave.assignment === "be confined in the arcade") { + t += `${V.arcadeName}; `; } else { - t += `riding `; + t += `a glory hole; `; } - t += `a customer's dick.`; - } else if (_seed > 60) { - t += `sucking a customer's cock.`; - } else if (_seed > 40) { - t += `pleasuring a customer's cunt.`; - } else if (_seed > 20) { - t += `getting pounded by a woman wearing a strap-on.`; - } else { - t += `being held down and `; - if (canDoAnal(slave)) { - t += `buttfucked `; + if (_seed > 80 && (canDoAnal(slave) || canDoVaginal(slave))) { + t += `${his} ass is held out at cock height, and a customer is using ${his} fuckhole.`; + } else if (_seed > 60) { + t += `${his} mouth is held open at cock height, and a customer is fucking ${his} throat.`; + } else if (_seed > 40) { + t += `a woman is abusing ${him} with a couple of dildos.`; + } else if (_seed > 20 && canDoAnal(slave)) { + t += `a customer is harshly using ${his} defenseless anus.`; } else { - t += `raped `; + t += `a customer is cruelly spanking ${his} helpless butt.`; } - t += `by a customer.`; - } - t += ` You have a voyeuristic view of ${his} ${race} body on the feeds.`; - break; - case "serve in the club": - t += `is working in ${V.clubName}, `; - if (_seed > 50) { - t += `displaying ${his} ${race} body, keeping citizens company, and flirting with anyone who shows interest.`; - } else { - t += `or rather just off it, having taken a prominent citizen back to a discreet room so he can use ${his} ${race} body.`; - } - break; - case "work as a servant": - if (_seed > 50) { - t += `was scrubbing the penthouse floor, until another slave requested oral service.`; - } else { - t += `is scrubbing the penthouse floor.`; - } - break; - case "serve in the master suite": - if (slave.fuckdoll > 0) { - t += `waiting for use in ${V.masterSuiteName}, next to a display case full of other sex toys.`; - } else if (V.masterSuiteUpgradeLuxury === 1) { + break; + case "be the Madam": + t += `is managing ${V.brothelName}: ${he} is making sure all the customers are satisfied and all the whores are working hard.`; + break; + case "be your Concubine": + if (jsRandom(1, 2) === 1) { + t += `is looking after ${himself}; ${he} spends many hours every day on ${his} beauty regimen.`; + } else { + t += `is checking over the appearance of your harem, making sure everyone looks perfect.`; + } + break; + case "be the Wardeness": + t += `is looking after the cells: ${he} is `; if (_seed > 50) { - t += `is sitting on the big bed in ${V.masterSuiteName}, awaiting your return.`; + t += `forcing a resistant slave to orally service ${him}.`; } else { - t += `is beautifying ${himself} in ${V.masterSuiteName} so ${he}'ll be pretty when you return.`; + t += `beating a rebellious slave across the buttocks.`; } - } else if (V.masterSuiteUpgradeLuxury === 2) { - t += `is in ${V.masterSuiteName}'s fuckpit, `; - if (_seed > 80) { - t += `with a pair of ${his} fellow fucktoys industriously sucking on ${his} nipples.`; - } else if (_seed > 60) { - if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { - t += `taking double penetration from `; - } else { - t += `being spitroasted by `; - } - t += `a pair of ${his} fellow fucktoys.`; - } else if (_seed > 40) { - if (canPenetrate(slave)) { - t += `with ${his} dick inside `; - } else if (slave.dick > 0 && slave.chastityPenis !== 1) { - t += `getting ${his} soft dick sucked by `; - } else if (canDoVaginal(slave) || canDoAnal(slave)) { - t += `getting eaten out by `; - } else { - t += `making out with `; - } - t += `a fellow fucktoy.`; - } else if (_seed > 20) { - if (slave.vagina > 0 && canDoVaginal(slave)) { - t += `getting pounded `; - } else if (slave.anus > 0 && canDoAnal(slave)) { - t += `getting ${his} ass pounded `; - } else if (canDoVaginal(slave) || canDoAnal(slave)) { - t += `getting eaten out `; + break; + case "live with your Head Girl": + if (V.HeadGirl !== 0) { + t += `is getting the Head Girl's suite cleaned up while ${V.HeadGirl.slaveName} is out working.`; + } else { + t += `is making sure the Head Girl's suite is in order for your next Head Girl.`; + } + break; + case "be the Stewardess": + t += `is managing the house servants in ${V.servantsQuartersName}: ${he} overseeing the laboring house slaves and punishing any that step out of line.`; + break; + case "be the Schoolteacher": + t += `is teaching classes in ${V.schoolroomName}: ${he} is leading the slave students in rote recitation.`; + break; + case "be the Attendant": + t += `is seeing to girls in ${V.spaName}: ${he} is gently soaping an exhausted slave.`; + break; + case "be the DJ": + if (_seed > 50) { + t += `is right where ${he} belongs, in the DJ booth in ${V.clubName} ${he} leads. ${He}'s bouncing in time with the beat to show off ${his} `; + if (slave.boobs > 300) { + t += `tits.`; } else { - t += `getting deepthroated `; + t += `goods.`; } - t += `by a fellow fucktoy.`; } else { - t += `performing oral sex on a fellow fucktoy.`; + t += `is taking the lead on ${V.clubName}'s floor: ${he} greets new arrivals, flirts with them prettily, and subtly guides them towards choice sluts.`; } - } else { - if (slave.energy > 95) { - t += `is having enthusiastic sex with your other pets while waiting for you to ravish ${him}.`; + break; + case "be the Milkmaid": + t += `is working in ${V.dairyName}, looking after your stock.`; + break; + default: /* WALKPASTS START HERE */ + if (slave.heels === 1 && !["flats", "none"].includes(slave.shoes)) { + t += `walks past your desk with the tiny swaying steps ${he} must take in order to walk on ${his} surgically altered legs. ${He} is on ${his} way to `; + } else if (["heels", "pumps"].includes(slave.shoes)) { + t += `walks past your desk with the swaying steps ${he} must take in ${his} high heels. ${He} is on ${his} way to `; + } else if (slave.shoes === "boots") { + t += `walks past your desk with the confident gait encouraged by ${his} high heeled boots. ${He} is on ${his} way to `; + } else if (slave.shoes === "extreme heels") { + t += `walks past your desk with the tiny swaying steps ${he} must take in ${his} ridiculous heels. ${He} is on ${his} way to `; + } else if (slave.heels === 1) { + t += `crawls past your desk on all fours, since ${he} has not been allowed the heels ${he} needs to walk upright. ${He} is on ${his} way to `; + } else if (slave.amp === 1) { + t += `is carried past your desk by one of your other slaves. ${He} is on ${his} way to `; + } else if (!canWalk(slave)) { + t += `is helped past your desk by one of your other slaves. ${He} is on ${his} way to `; } else { - t += `is having idle sex with several of your other toys while they await your pleasure.`; - if (slave.fetishKnown === 1) { - switch (slave.fetish) { - case "buttslut": - if (canDoAnal(slave) && slave.anus > 0) { - t += `${He}'s happily taking a strap-on up ${his} asspussy.`; + t += `walks past your desk on ${his} way to `; + } + if (slave.inflation > 0 && jsRandom(1, 100) > 70) { + if (slave.inflationMethod === 1) { + t += `gorge ${himself} with ${slave.inflationType}; `; + } else if (slave.inflationMethod === 2) { + t += `fill ${his} rear with `; + switch (slave.inflationType) { + case "water": + case "milk": + case "cum": + case "food": + t += `${slave.inflationType}; `; + break; + default: + t += `${slave.inflationType}s; `; + break; + } + } else if (slave.inflationMethod === 3) { + if (slave.inflationType === "milk") { + t += `suckle from ${his} assigned nipple until ${he} is sufficiently filled with milk; `; + } else { + t += `suck ${his} assigned dick until ${he} is sufficiently filled with cum; `; + } + } + } else { + switch (slave.assignment) { + case "rest": + if (_seed > 50) { + t += `bed; `; } else { - t += `${He}'s happily got another slave between ${his} buttcheeks.`; + t += `eat; `; } break; - case "cumslut": - t += `${He}'s happily performing oral on another slave.`; - break; - case "dom": - t += `${He}'s pinning another slave down while ${he} fucks her.`; - break; - case "submissive": - t += `${He}'s letting another slave have her way with ${him}.`; - break; - case "sadist": - if (slave.amp !== 1) { - t += `${He}'s spanking another slave with one hand and fingering her with the other.`; + case "get milked": + if (_seed > 50) { + if (slave.lactation) { + t += `milk ${his} overfull ${race} tits; `; + } else { + t += `empty ${his} aching balls; `; + } } else { - t += `${He}'s painfully teasing another slave's nipple with ${his} teeth.`; + if (slave.lactation) { + t += `drain ${his} milky ${race} udders; `; + } else { + t += `relieve ${his} heavy balls; `; + } } break; - case "masochist": - t += `Another slave is spanking ${him} while molesting everything she can.`; + case "whore": + if (_seed > 50) { + t += `sell ${his} ${race} body; `; + } else { + t += `ply ${his} trade as a whore; `; + } break; - case "boobs": - t += `${He} has a slave sucking on each of ${his} nipples`; - if (slave.amp !== 1) { - t += ` while ${he} gives each a handjob.`; + case "serve the public": + if (_seed > 50) { + t += `serve the public; `; } else { - t += `.`; + t += `be a public slut; `; } break; - case "pregnancy": - if (slave.belly >= 5000) { - t += `${He}'s sighing contentedly as ${his} rounded belly is sensually rubbed.`; - } else if (canPenetrate(slave)) { - t += `${He}'s happily roleplaying impregnating the slave ${he}'s fucking.`; - } else if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { - t += `${He}'s happily roleplaying conceiving a child as ${he} gets fucked.`; + case "rest in the spa": + t += `relax in ${V.spaName}; `; + break; + case "please you": + t += `wait next to you and wait for you to fuck ${him}; `; + break; + case "be a subordinate slave": + t += `service your other slaves; `; + break; + case "be a servant": + t += `clean up after your other slaves; `; + break; + case "learn in the schoolroom": + t += `attend classes `; + if (V.Schoolteacher === 0) { + t += `in ${V.schoolroomName}; `; } else { - t += `${He}'s happily roleplaying being hugely pregnant.`; + t += `under ${V.Schoolteacher.slaveName}, perhaps literally; `; } - } - } - } - } - break; - /* - case "guard you": - t += `is standing discreetly behind your left shoulder, watching for threats.`; - break - */ - case "stay confined": - t += `is confined, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; - break; - case "be confined in the cellblock": - t += `is confined in ${V.cellblockName}, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; - break; - case "be confined in the arcade": - case "work a glory hole": - t += `is confined in `; - if (slave.assignment === "be confined in the arcade") { - t += `${V.arcadeName}; `; - } else { - t += `a glory hole; `; - } - if (_seed > 80 && (canDoAnal(slave) || canDoVaginal(slave))) { - t += `${his} ass is held out at cock height, and a customer is using ${his} fuckhole.`; - } else if (_seed > 60) { - t += `${his} mouth is held open at cock height, and a customer is fucking ${his} throat.`; - } else if (_seed > 40) { - t += `a woman is abusing ${him} with a couple of dildos.`; - } else if (_seed > 20 && canDoAnal(slave)) { - t += `a customer is harshly using ${his} defenseless anus.`; - } else { - t += `a customer is cruelly spanking ${his} helpless butt.`; - } - break; - case "be the Madam": - t += `is managing ${V.brothelName}: ${he} is making sure all the customers are satisfied and all the whores are working hard.`; - break; - case "be your Concubine": - if (jsRandom(1, 2) === 1) { - t += `is looking after ${himself}; ${he} spends many hours every day on ${his} beauty regimen.`; - } else { - t += `is checking over the appearance of your harem, making sure everyone looks perfect.`; - } - break; - case "be the Wardeness": - t += `is looking after the cells: ${he} is `; - if (_seed > 50) { - t += `forcing a resistant slave to orally service ${him}.`; - } else { - t += `beating a rebellious slave across the buttocks.`; - } - break; - case "live with your Head Girl": - if (V.HeadGirl !== 0) { - t += `is getting the Head Girl's suite cleaned up while ${V.HeadGirl.slaveName} is out working.`; - } else { - t += `is making sure the Head Girl's suite is in order for your next Head Girl.`; - } - break; - case "be the Stewardess": - t += `is managing the house servants in ${V.servantsQuartersName}: ${he} overseeing the laboring house slaves and punishing any that step out of line.`; - break; - case "be the Schoolteacher": - t += `is teaching classes in ${V.schoolroomName}: ${he} is leading the slave students in rote recitation.`; - break; - case "be the Attendant": - t += `is seeing to girls in ${V.spaName}: ${he} is gently soaping an exhausted slave.`; - break; - case "be the DJ": - if (_seed > 50) { - t += `is right where ${he} belongs, in the DJ booth in ${V.clubName} ${he} leads. ${He}'s bouncing in time with the beat to show off ${his} `; - if (slave.boobs > 300) { - t += `tits.`; - } else { - t += `goods.`; - } - } else { - t += `is taking the lead on ${V.clubName}'s floor: ${he} greets new arrivals, flirts with them prettily, and subtly guides them towards choice sluts.`; - } - break; - case "be the Milkmaid": - t += `is working in ${V.dairyName}, looking after your stock.`; - break; - default: /* WALKPASTS START HERE */ - if (slave.heels === 1 && !["flats", "none"].includes(slave.shoes)) { - t += `walks past your desk with the tiny swaying steps ${he} must take in order to walk on ${his} surgically altered legs. ${He} is on ${his} way to `; - } else if (["heels", "pumps"].includes(slave.shoes)) { - t += `walks past your desk with the swaying steps ${he} must take in ${his} high heels. ${He} is on ${his} way to `; - } else if (slave.shoes === "boots") { - t += `walks past your desk with the confident gait encouraged by ${his} high heeled boots. ${He} is on ${his} way to `; - } else if (slave.shoes === "extreme heels") { - t += `walks past your desk with the tiny swaying steps ${he} must take in ${his} ridiculous heels. ${He} is on ${his} way to `; - } else if (slave.heels === 1) { - t += `crawls past your desk on all fours, since ${he} has not been allowed the heels ${he} needs to walk upright. ${He} is on ${his} way to `; - } else if (slave.amp === 1) { - t += `is carried past your desk by one of your other slaves. ${He} is on ${his} way to `; - } else if (!canWalk(slave)) { - t += `is helped past your desk by one of your other slaves. ${He} is on ${his} way to `; - } else { - t += `walks past your desk on ${his} way to `; - } - if (slave.inflation > 0 && jsRandom(1, 100) > 70) { - if (slave.inflationMethod === 1) { - t += `gorge ${himself} with ${slave.inflationType}; `; - } else if (slave.inflationMethod === 2) { - t += `fill ${his} rear with `; - switch (slave.inflationType) { - case "water": - case "milk": - case "cum": - case "food": - t += `${slave.inflationType}; `; - break; - default: - t += `${slave.inflationType}s; `; - break; - } - } else if (slave.inflationMethod === 3) { - if (slave.inflationType === "milk") { - t += `suckle from ${his} assigned nipple until ${he} is sufficiently filled with milk; `; - } else { - t += `suck ${his} assigned dick until ${he} is sufficiently filled with cum; `; + break; + case "be the Attendant": + t += `look after the slaves in ${V.spaName}; `; + break; + case "take classes": + t += `attend classes with ${V.assistantName}; `; + break; + case "be your Head Girl": + t += `oversee your other slaves; `; + break; + case "recruit girls": + t += `use ${his} connections to recruit slaves; `; + break; + default: + t += `${slave.assignment}; `; + break; } + } /* end inflation blurb */ + if (slave.fetish === "mindbroken") { + t += `${he} does not even glance at you as ${he} goes mindlessly to ${his} next task.`; + } else if (slave.devotion < -50) { + t += `${he} directs a look of pure hatred at where you sit as ${he} passes.`; + } else if (slave.devotion < -20) { + t += `${he} cannot keep the loathing from ${his} face as ${he} passes.`; + } else if (slave.devotion <= 20) { + t += `${he} passes quickly, obviously hoping to avoid you.`; + } else if (slave.devotion <= 50) { + t += `${he} rushes by, hurrying to ${his} next task.`; + } else { + t += `as ${he} passes ${he} gives you a look of adoration.`; } - } else { - switch (slave.assignment) { - case "rest": - if (_seed > 50) { - t += `bed; `; - } else { - t += `eat; `; - } - break; - case "get milked": - if (_seed > 50) { - if (slave.lactation) { - t += `milk ${his} overfull ${race} tits; `; - } else { - t += `empty ${his} aching balls; `; - } - } else { - if (slave.lactation) { - t += `drain ${his} milky ${race} udders; `; - } else { - t += `relieve ${his} heavy balls; `; - } - } - break; - case "whore": - if (_seed > 50) { - t += `sell ${his} ${race} body; `; - } else { - t += `ply ${his} trade as a whore; `; - } - break; - case "serve the public": - if (_seed > 50) { - t += `serve the public; `; - } else { - t += `be a public slut; `; - } - break; - case "rest in the spa": - t += `relax in ${V.spaName}; `; - break; - case "please you": - t += `wait next to you and wait for you to fuck ${him}; `; - break; - case "be a subordinate slave": - t += `service your other slaves; `; - break; - case "be a servant": - t += `clean up after your other slaves; `; - break; - case "learn in the schoolroom": - t += `attend classes `; - if (V.Schoolteacher === 0) { - t += `in ${V.schoolroomName}; `; - } else { - t += `under ${V.Schoolteacher.slaveName}, perhaps literally; `; - } - break; - case "be the Attendant": - t += `look after the slaves in ${V.spaName}; `; - break; - case "take classes": - t += `attend classes with ${V.assistantName}; `; - break; - case "be your Head Girl": - t += `oversee your other slaves; `; - break; - case "recruit girls": - t += `use ${his} connections to recruit slaves; `; - break; - default: - t += `${slave.assignment}; `; - break; - } - } /* end inflation blurb */ - if (slave.fetish === "mindbroken") { - t += `${he} does not even glance at you as ${he} goes mindlessly to ${his} next task.`; - } else if (slave.devotion < -50) { - t += `${he} directs a look of pure hatred at where you sit as ${he} passes.`; - } else if (slave.devotion < -20) { - t += `${he} cannot keep the loathing from ${his} face as ${he} passes.`; - } else if (slave.devotion <= 20) { - t += `${he} passes quickly, obviously hoping to avoid you.`; - } else if (slave.devotion <= 50) { - t += `${he} rushes by, hurrying to ${his} next task.`; - } else { - t += `as ${he} passes ${he} gives you a look of adoration.`; - } - break; + break; } return t; }; @@ -2253,7 +2253,7 @@ window.boobWatch = function(slave) { case "a biyelgee costume": t += `${His} costume could be removed with barely any effort.`; break; - // ends needs work block + // ends needs work block case "no clothing": if (slave.chastityAnus === 1 || slave.chastityVagina === 1 || slave.chastityPenis === 1) { @@ -2328,7 +2328,11 @@ window.buttWatch = function(slave) { } break; case "restrictive latex": - t += `As some of the only islands in the sea of black latex, ${his} holes are eye-catching.`; + if (slave.clothingBaseColor) { + t += `As some of the only islands in the sea of latex, ${his} holes are eye-catching.`; + } else { + t += `As some of the only islands in the sea of black latex, ${his} holes are eye-catching.`; + } break; case "a fallen nuns habit": t += `${His} slutty nun outfit invites sin.`; @@ -2644,7 +2648,11 @@ window.anusWatch = function(slave) { t += `The rope between ${his} buttocks presses lewdly against ${his} anus as ${he} moves.`; break; case "restrictive latex": - t += `As one of the only islands in the sea of black latex, ${his} asshole is eye catching.`; + if (slave.clothingBaseColor) { + t += `As some of the only islands in the sea of latex, ${his} holes are eye-catching.`; + } else { + t += `As some of the only islands in the sea of black latex, ${his} holes are eye-catching.`; + } break; case "a fallen nuns habit": t += `${His} slutty nun outfit leaves ${his} butthole bare and available for anal sin.`; diff --git a/src/js/wombJS.js b/src/js/wombJS.js index fd59729b215bda0e4a584db88876b45dfd7322d5..7631d07380d272a9c303286ddad6c718b238cf16 100644 --- a/src/js/wombJS.js +++ b/src/js/wombJS.js @@ -382,7 +382,7 @@ window.FetusGetPrediction = function(actor, age) { } else if (actor.pregData.sizeType === 1) { vol = getVolByWeight(actor, age); } else if (actor.pregData.sizeType === 2) { - vol = getVolByRaw(actor, age); + vol = getVolByRaw(actor, age); } if (vol === 0) { diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw index 778cb00fe4a12f61b7bac17c25faf07d6d530ea9..ff77c90cadffd1cf2a6d3860b1cf161eae72ea95 100644 --- a/src/npc/acquisition.tw +++ b/src/npc/acquisition.tw @@ -696,11 +696,11 @@ The previous owner seems to have left in something of a hurry. <<set $averageTrust += $slaves[$i].trust, $averageDevotion += $slaves[$i].devotion, _slavesContributing += 1>> <<else>> <<if $slaves[$i].assignment != "be confined in the cellblock">> - <<if $slaves[$i].assignment != "be confined in the arcade">> - <<if ($slaves[$i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2)>> - <<set $averageTrust += $slaves[$i].trust*0.5, $averageDevotion += $slaves[$i].devotion*0.5, _slavesContributing += 0.5>> - <</if>> - <</if>> + <<if $slaves[$i].assignment != "be confined in the arcade">> + <<if ($slaves[$i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2)>> + <<set $averageTrust += $slaves[$i].trust*0.5, $averageDevotion += $slaves[$i].devotion*0.5, _slavesContributing += 0.5>> + <</if>> + <</if>> <</if>> <</if>> <</for>> diff --git a/src/npc/databases/cheatmodeDatabase.tw b/src/npc/databases/cheatmodeDatabase.tw index 8c4fa3670b3bab6b593f3a411fa86a7110bf1616..db10fdb86299a76120cdd1eb127c02158f3d3c59 100644 --- a/src/npc/databases/cheatmodeDatabase.tw +++ b/src/npc/databases/cheatmodeDatabase.tw @@ -13,7 +13,7 @@ //There are quite a few left; their names are _HS.slaveName,// <<set _HS = clone($activeSlave)>> -<<set _HS.slaveName = "Cornelia", _HS.birthName = "Cora", _HS.ID = 990001, _HS.relation = "mother", _HS.relationTarget = 990002, _HS.relationship = 4, _HS.relationshipTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.ageImplant = 1, _HS.health = 10, _HS.devotion = 100, _HS.muscles = 20, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "dark", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1200, _HS.boobsImplant = 1000, _HS.areolae = 2, _HS.butt = 5, _HS.buttImplant = 3, _HS.preg = -2, _HS.face = 15, _HS.faceImplant = 65, _HS.lips = 35, _HS.lipsImplant = 10, _HS.anus = 2, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.skill.oral = 100, _HS.skill.anal = 100, _HS.skill.whoring = 100, _HS.skill.entertainment = 100, _HS.clothes = "a slave gown", _HS.energy = 65, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.custom.tattoo = "A large letter 'S' is branded into the back of $his left hand.", _HS.custom.desc = "$He speaks with the demeaning accent of slaves from the Old South.">> +<<set _HS.slaveName = "Cornelia", _HS.birthName = "Cora", _HS.ID = 990001, _HS.relation = "mother", _HS.relationTarget = 990002, _HS.relationship = 4, _HS.relationshipTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.ageImplant = 1, _HS.health = 10, _HS.devotion = 100, _HS.muscles = 20, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "dark", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1200, _HS.boobsImplant = 1000, _HS.areolae = 2, _HS.butt = 5, _HS.buttImplant = 3, _HS.preg = -2, _HS.face = 15, _HS.faceImplant = 65, _HS.lips = 35, _HS.lipsImplant = 10, _HS.anus = 2, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.skill.oral = 100, _HS.skill.anal = 100, _HS.skill.whoring = 100, _HS.skill.entertainment = 100, _HS.clothes = "a slave gown", _HS.energy = 65, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.brand["left hand"] = "A large letter 'S'", _HS.custom.desc = "$He speaks with the demeaning accent of slaves from the Old South.">> <<if $seeDicks != 0>> <<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 3, _HS.balls = 3, _HS.scrotum = 3, _HS.foreskin = 3, _HS.prostate = 1, _HS.pubertyXY = 1>> <<else>> @@ -23,7 +23,7 @@ //_HS.slaveName,// <<set _HS = clone($activeSlave)>> -<<set _HS.slaveName = "Sheba", _HS.birthName = "Shaneequa", _HS.ID = 990002, _HS.relation = "daughter", _HS.relationTarget = 990001, _HS.rivalry = 1, _HS.rivalryTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 10, _HS.devotion = 12, _HS.height = 175, _HS.race = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1600, _HS.boobsImplant = 600, _HS.nipplesPiercing = 1, _HS.areolae = 1, _HS.butt = 6, _HS.buttImplant = 2, _HS.face = 55, _HS.faceImplant = 15, _HS.lips = 55, _HS.lipsImplant = 10, _HS.anus = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.skill.oral = 35, _HS.skill.anal = 35, _HS.skill.whoring = 35, _HS.skill.entertainment = 35, _HS.clothes = "a slave gown", _HS.energy = 100, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.custom.tattoo = "A large letter 'S' is branded into the back of $his left hand.", _HS.custom.desc = "$He speaks with the demeaning accent of slaves from the Old South.", _HS.mother = 990001>> +<<set _HS.slaveName = "Sheba", _HS.birthName = "Shaneequa", _HS.ID = 990002, _HS.relation = "daughter", _HS.relationTarget = 990001, _HS.rivalry = 1, _HS.rivalryTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 10, _HS.devotion = 12, _HS.height = 175, _HS.race = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1600, _HS.boobsImplant = 600, _HS.nipplesPiercing = 1, _HS.areolae = 1, _HS.butt = 6, _HS.buttImplant = 2, _HS.face = 55, _HS.faceImplant = 15, _HS.lips = 55, _HS.lipsImplant = 10, _HS.anus = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.skill.oral = 35, _HS.skill.anal = 35, _HS.skill.whoring = 35, _HS.skill.entertainment = 35, _HS.clothes = "a slave gown", _HS.energy = 100, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.brand["left hand"] = "A large letter 'S'", _HS.custom.desc = "$He speaks with the demeaning accent of slaves from the Old South.", _HS.mother = 990001>> <<if $seeDicks != 100>> <<set _HS.genes = "XX", _HS.vagina = 1, _HS.ovaries = 1, _HS.skill.vaginal = 35, _HS.pubertyXX = 1>> <<else>> diff --git a/src/npc/databases/dSlavesDatabase.tw b/src/npc/databases/dSlavesDatabase.tw index 49df1f054b9e0426dde967887ce3507c98907474..9211d5c1c9df1a2e7cb75b6b27630fa7985060a9 100644 --- a/src/npc/databases/dSlavesDatabase.tw +++ b/src/npc/databases/dSlavesDatabase.tw @@ -289,7 +289,7 @@ /*Added origin, increased weight, pierced ears, added customdesc -BoneyM*/ <<set _HS = App.Entity.SlaveState.makeSkeleton()>> -<<set _HS.slaveName = "Klara", _HS.birthName = "Klara", _HS.origin = "$He was forced into slavery and rather brutally broken in.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 20, _HS.devotion = -75, _HS.height = 175, _HS.race = "white", _HS.eyeColor = "blue", _HS.skin = "fair", _HS.hStyle = "long and braided", _HS.boobs = 800, _HS.butt = 4, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.anus = 2, _HS.ovaries = 1, _HS.skill.vaginal = 100, _HS.skill.oral = 100, _HS.skill.anal = 100, _HS.skill.whoring = 35, _HS.skill.entertainment = 35, _HS.intelligence = -30, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.custom.desc = "'Cum slut' is branded on $his right ass cheek, and 'bitch whore' is tattooed on $his inner left thigh.">> +<<set _HS.slaveName = "Klara", _HS.birthName = "Klara", _HS.origin = "$He was forced into slavery and rather brutally broken in.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 20, _HS.devotion = -75, _HS.height = 175, _HS.race = "white", _HS.eyeColor = "blue", _HS.skin = "fair", _HS.hStyle = "long and braided", _HS.boobs = 800, _HS.butt = 4, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.anus = 2, _HS.ovaries = 1, _HS.skill.vaginal = 100, _HS.skill.oral = 100, _HS.skill.anal = 100, _HS.skill.whoring = 35, _HS.skill.entertainment = 35, _HS.intelligence = -30, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.brand["right buttock"] = "Cum slut", _HS.custom.tattoo = "'bitch whore' is tattooed on $his inner left thigh.">> <<set $heroSlaves.push(_HS)>> /*Fixed typo in customdesc, increased whore and entertainskill, changed eye color -BoneyM*/ diff --git a/src/npc/descriptions/fAnus.tw b/src/npc/descriptions/fAnus.tw index 282dc06d95ad937b9f86b8cffda0dd665b3c25bc..55b80c64e199573f49edcd463bae29d5ac13d782 100644 --- a/src/npc/descriptions/fAnus.tw +++ b/src/npc/descriptions/fAnus.tw @@ -56,7 +56,7 @@ You call $him over so you can <<if ($activeSlave.anus == 0)>> <<if ($activeSlave.devotion > 20)>> - $He accepts your orders without comment and presents $his virgin anus for defloration. You<<if ($PC.dick == 0)>> don a strap-on and<</if>> gently sodomize $him. You gently ease into $his butthole and slowly accelerate your thrusting into $his ass. Since $he is already well broken, this new connection with $his <<Master>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His tight little ass has been broken in.@@ $He looks forward to having $his asshole fucked by you again. + $He accepts your orders without comment and presents $his virgin anus for defloration. You<<if ($PC.dick == 0)>> don a strap-on and<</if>> gently sodomize $him. You gently ease into $his butthole and slowly accelerate your thrusting into $his ass. Since $he is already well broken, this new connection with $his <<= WrittenMaster()>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His tight little ass has been broken in.@@ $He looks forward to having $his asshole fucked by you again. <<set $activeSlave.devotion += 4>> <<elseif ($activeSlave.devotion >= -20)>> $He is clearly unhappy at the idea of taking a dick up $his butt. $He obeys orders anyway, and lies there wincing and moaning as you<<if ($PC.dick == 0)>> don a strap-on and<</if>> fuck $his ass. You gently ease into $his butthole and slowly accelerate your thrusting into $his ass. However $he still squeals in pain as you continue pounding. @@.lime;$His tight little ass has been broken in,@@ and $he @@.gold;fears further anal pain.@@ diff --git a/src/npc/descriptions/fButt.tw b/src/npc/descriptions/fButt.tw index 312cfaba827eca35ccf74ca5df4dffa0d4fba411..47d81b0fea8e0fa54003756fa1a0c894b92f6958 100644 --- a/src/npc/descriptions/fButt.tw +++ b/src/npc/descriptions/fButt.tw @@ -99,7 +99,7 @@ You call $him over so you can <<set $activeSlave.anus++>> <<= VCheck.Anal()>> <<elseif $activeSlave.devotion < -20>> - <<if ($PC.dick == 0)>>You don a cruelly large strap-on, and you do it so $he can see it. <</if>>$He tries to refuse you, so you throw $him across the back of the couch next to your desk with $his <<if $seeRace == 1>>$activeSlave.race <</if>>ass in the air. You finger $his anus <<if ($activeSlave.vagina != -1)>>while fucking $his pussy<<elseif ($activeSlave.amp != 1)>>while frotting $his thighs<</if>> for a bit and then switch to $his now-ready anus. $He sobs as you penetrate $his rectum. + <<if ($PC.dick == 0)>>You don a cruelly large strap-on, and you do it so $he can <<if canSee($activeSlave)>>see<<elseif canHear($activeSlave)>>hear<<else>>notice<</if>> it. <</if>>$He tries to refuse you, so you throw $him across the back of the couch next to your desk with $his <<if $seeRace == 1>>$activeSlave.race <</if>>ass in the air. You finger $his anus <<if ($activeSlave.vagina != -1)>>while fucking $his pussy<<elseif ($activeSlave.amp != 1)>>while frotting $his thighs<</if>> for a bit and then switch to $his now-ready anus. $He sobs as you penetrate $his rectum. <<if ($activeSlave.dick != 0) && canAchieveErection($activeSlave)>> <<if $activeSlave.prostate == 0>> $He lacks a prostate, denying $him any real pleasure. $His dick stays flaccid as you rape $him. diff --git a/src/npc/fAbuse.tw b/src/npc/fAbuse.tw index 8d50a912ddd73296498268600aa5d379a6016afd..bd6ab19c09700e40a6d8a549600c7c123e6f0558 100644 --- a/src/npc/fAbuse.tw +++ b/src/npc/fAbuse.tw @@ -164,8 +164,8 @@ <<case "a kimono">> Getting out of $his kimono in that amount of time is flagrantly impossible, but $he tries anyway. <<case "a klan robe">> - Because $he's nude under $his robes, $he simply lifts it over $his head. - <<case "a hijab and abaya" "a niqab and abaya" "a klan robe">> + Because $he's nude under $his robes, $he simply lifts them over $his head. + <<case "a hijab and abaya" "a niqab and abaya">> Because $he's nude under $his abaya, $he simply lifts it over $his head. <<case "a burqa">> Because $he's nude under $his burqa, $he simply lifts it over $his head. diff --git a/src/npc/fBeg.tw b/src/npc/fBeg.tw index 816044cdd96cb538b6dc5763893b564b61f0c5b8..ed67605ae78a0b8ce133031940c89663bb400989 100644 --- a/src/npc/fBeg.tw +++ b/src/npc/fBeg.tw @@ -1,6 +1,7 @@ :: FBeg [nobr] /* things I need: checks for canWalk() to see how easily she can move, blindness checks, replacement for BoobsDesc, maybe devotion catches for certain flaws */ +/* priority! femPC support! */ <<set $desc = SlaveTitle($activeSlave)>> <<run clearSummaryCache($activeSlave)>> @@ -166,7 +167,7 @@ You then tell your slave to kneel at your feet. <<case "masochist">> waits just long enough to receive a disciplinary slap, making $him blush with arousal as $he kneels before you. <<case "cumslut">> - is excited to be closer to your <<if canTaste($activeSlave)>>delicious<<else>>heavenly<</if>> crotch, and hurries to match $his eyes to your package. + is excited to be closer to your <<if canTaste($activeSlave)>>delicious<<else>>heavenly<</if>> crotch, and hurries to match $his eyes to your <<if $PC.dick > 0>>package<<else>>crotch<</if>>. <<case "humiliation">> makes a big show of it as $he lowers $himself dramatically before you. <<case "buttslut">> @@ -199,39 +200,41 @@ You then tell your slave to kneel at your feet. <</if>> <</if>> <<if ($activeSlave.devotion < -20)>> - The other slaves guide $him to adjust $his posture so $his eyes ar directly in line with your package. + The other slaves guide $him to adjust $his posture so $his eyes are directly in line with your <<if $PC.dick > 0>>package<<else>>crotch<</if>>. <<else>> - $He kneels so that $his eyes are directly level with your package. + $He kneels so that $his eyes are directly level with your <<if $PC.dick > 0>>package<<else>>crotch<</if>>. <</if>> -<<if ($activeSlave.energy > 50)>> - $He cant help but stare in lust at your - <<if $PC.balls > 2 && $PC.ballsImplant > 3>> - monstrous, massive pair of watermelon sized balls. - <<elseif $PC.balls == 2 && $PC.ballsImplant == 3>> - enormous, heavy pair of balls. - <<elseif $PC.balls == 1 && $PC.ballsImplant == 2>> - huge pair of balls, bulging like softballs from behind your suit. - <<elseif $PC.balls > 2 && $PC.ballsImplant > 2>> - enormous, heavy pair of balls. - <<elseif $PC.balls == 2 && $PC.ballsImplant == 2>> - huge pair of balls, bulging like softballs from behind your suit. - <<elseif $PC.balls == 1 && $PC.ballsImplant == 1>> - large pair of balls, swinging heavily as you move. - <<elseif $PC.ballsImplant > 2>> - enormous, heavy pair of balls. - <<elseif $PC.ballsImplant == 2>> - huge pair of balls, bulging like heavy softballs from behind your suit. - <<elseif $PC.ballsImplant == 1>> - large pair of balls, swinging heavily as you move. +<<if $PC.dick > 0>> + <<if ($activeSlave.energy > 50)>> + $He cant help but stare in lust at your + <<if $PC.balls > 2 && $PC.ballsImplant > 3>> + monstrous, massive pair of watermelon sized balls. + <<elseif $PC.balls == 2 && $PC.ballsImplant == 3>> + enormous, heavy pair of balls. + <<elseif $PC.balls == 1 && $PC.ballsImplant == 2>> + huge pair of balls, bulging like softballs from behind your suit. + <<elseif $PC.balls > 2 && $PC.ballsImplant > 2>> + enormous, heavy pair of balls. + <<elseif $PC.balls == 2 && $PC.ballsImplant == 2>> + huge pair of balls, bulging like softballs from behind your suit. + <<elseif $PC.balls == 1 && $PC.ballsImplant == 1>> + large pair of balls, swinging heavily as you move. + <<elseif $PC.ballsImplant > 2>> + enormous, heavy pair of balls. + <<elseif $PC.ballsImplant == 2>> + huge pair of balls, bulging like heavy softballs from behind your suit. + <<elseif $PC.ballsImplant == 1>> + large pair of balls, swinging heavily as you move. + <<else>> + manly package. + <</if>> <<else>> - manly package. + Your balls loom directly in front of $his face. <</if>> -<<else>> - Your balls loom directly in front of $his face. <</if>> -Now kneeling at your feet naked before you, your slave waits for $his Master's command. You take some time to survey the slut's properly displayed body. +Now kneeling at your feet naked before you, your slave waits for $his <<= WrittenMaster()>>'s command. You take some time to survey the slut's properly displayed body. <<if $activeSlave.butt > 6>> $His massive ass is so huge that $he it squishes around $his heels, almost reaching the floor. <<elseif $activeSlave.butt > 4>> @@ -341,7 +344,7 @@ You give $him permission to speak, and tell $him that $he may beg $his <<= Writt <</if>> You tell your slave to rise to $his feet. Even though $he desired the impossible, it wasn't a total waste. You feel as though you have a pretty good understanding of where your slave stands. You send $him away with $his request denied, and you resolve to break $him more in the coming weeks. <<elseif ($activeSlave.devotion <= 60)>> - Your slave looks at $his Master with obedient eyes. + Your slave looks at $his <<= WrittenMaster()>> with obedient eyes. <<elseif ($activeSlave.devotion <= 100)>> Your devoted slave takes the begging position, <<if ($activeSlave.fetish != "submissive")>> diff --git a/src/npc/fDance.tw b/src/npc/fDance.tw index 64921408944fc39f567116f082b880e02e0f3167..880eba32dc38b0ca9092ed2ee1213312ca25bfa5 100644 --- a/src/npc/fDance.tw +++ b/src/npc/fDance.tw @@ -5,14 +5,14 @@ <<setLocalPronouns $activeSlave>> <<setPlayerPronouns>> -You tell your assistant to summon your slave and set some erotic music. When your slave arrives $he finds the lights in your office flashing club colors. You gesture towards the platform in the center of your office and tell $him to dance for you. +You tell $assistantName to summon $activeSlave.slaveName and set some erotic music. When your slave arrives, $he finds the lights in your office flashing club colors. You gesture towards the platform in the center of your office and tell $him to dance for you. <<if ($activeSlave.skill.entertainment > 99)>> $He slides his ass gracefully unto the stage, then dramatically raises $his elongated legs one at a time onto the platform. Circling to $his knees, $he raises $his ass in the air and glides $his hands up $his legs as $he stands upright. <<elseif ($activeSlave.skill.entertainment > 60)>> $He takes his rightful place on your stage. <<elseif ($activeSlave.skill.entertainment > 40)>> - $He goes to take $his place on your stage and dance for $his Master. + $He goes to take $his place on your stage and dance for $his <<= WrittenMaster()>>. <<elseif ($activeSlave.skill.entertainment > 20)>> $He ascends to the platform and begins to grind at the pole. <<elseif ($activeSlave.skill.entertainment > 9)>> @@ -256,17 +256,17 @@ $His face is <</switch>> forcing $him to keep moving or face more pain. <</if>> -<<elseif ($activeSlave.devotion < 20)>> +<<elseif ($activeSlave.devotion <= 20)>> $He hates being forced to dance for you, but tries $his best in spite of this. -<<elseif ($activeSlave.devotion < 50)>> +<<elseif ($activeSlave.devotion <= 50)>> $He wants to do $his best for you, and tries not to hold back. -<<elseif ($activeSlave.devotion < 80)>> +<<elseif ($activeSlave.devotion <= 80)>> $He is so eager to please you, and works hard to push $himself beyond $his skill limit. -<<elseif ($activeSlave.devotion < 200)>> - $He is so honored that you want to use $him in this way, and tries eagerly to please you. $His eyes are filled with adoration and every move $he makes is done with the sole intention of pleasure $his beloved Master. +<<elseif ($activeSlave.devotion <= 100)>> + $He is so honored that you want to use $him in this way, and tries eagerly to please you. $His eyes are filled with adoration and every move $he makes is done with the sole intention of pleasure $his beloved <<= WrittenMaster()>>. <</if>> -<<if ($activeSlave.devotion < 20)>> +<<if ($activeSlave.devotion <= 20)>> <<if ($activeSlave.sexualFlaw == "judgemental")>> $He thinks to $himself that a real _womanP wouldn't need to compensate this way, and judges you harshly. <<elseif ($activeSlave.behavioralFlaw == "idealistic")>> @@ -277,8 +277,8 @@ $His face is <</if>> The atmosphere of your office is a testament to masculine opulence. Few _womenP in the old world would have the pleasure of completing their work while an attractive $woman flaunts $himself for _hisP pleasure. You allow the situation to continue for about an hour, before deciding it's time to escalate. -You look up once more at your slave and take some time to review $his dancing performance -<<if ($activeSlave.devotion > -20)>> +You look up once more at your slave and take some time to review $his dancing performance. +<<if ($activeSlave.devotion >= -20)>> <<if ($activeSlave.skill.entertainment == 100)>> Your slave has a level of skill previously unseen in the old world. Even $his blinks have the seductive pull of a goddess. As you watch $him preform, you think how no _womanP of the old world would ever get to see pure sexuality like this. And not only do get to watch $him, you OWN $him. $His body moves like water, and hips that ebbed and flowed as if the tides themselves panged for a rock hard cock to come and take them. You tried to get some work done, but couldn't take your eyes off $him for even a second. You promise to reward your slave for bringing so much sensuality and beauty into your office; transforming your place of work into a shrine of Masculine dominance. <<elseif ($activeSlave.skill.entertainment >= 60)>> @@ -318,7 +318,7 @@ You look up once more at your slave and take some time to review $his dancing pe But it's not over yet. You tell your slave that it's time to incorporate some stripping into $his dance. <<if ($activeSlave.sexualFlaw == "shamefast")>> - <<if ($activeSlave.devotion < 40)>> + <<if ($activeSlave.devotion <= 40)>> $He immediately begins to tear up at the thought of being naked. $His shame is obvious to you, and you remind $him that $his comfort is not your concern. <<if ($activeSlave.skill.entertainment >= 99)>> Even though $he is crippled by shame, your slave is a masterful entertainer, able to keep anyone entertained for even the most lengthy of strip teases. With tears still streaming down $his face, $he begins by writhing $his hips and rolling $his ass. $He knows how to use $his hips and ass to draw and keep your attention while slowly moving up to $his chest. $His body is nothing more than an object for your desire, and $he knows how to fulfill $his purpose, even as $he sniffles at the shame of revealing $himself for you. You keep trying to get back to work, but your slave's movements are so enthralling that you cannot seem to break free. @@ -1576,13 +1576,11 @@ But it's not over yet. You tell your slave that it's time to incorporate some st End clothing-specific stripping */ Once the last piece of clothing has hit the floor you let your little slut dance naked a little while longer while you finish your last report. Once you have gotten enough of $his dancing you snap your fingers to call your slave over. -<<if ($activeSlave.devotion < 100)>> - Your slave hurries to your side and drops to $his knees. $He gladly kneels at your feet, looking up at $his Master in adoration. -<<elseif ($activeSlave.devotion < 50)>> +<<if ($activeSlave.devotion > 80)>> + Your slave hurries to your side and drops to $his knees. $He gladly kneels at your feet, looking up at $his <<= WrittenMaster()>> in adoration. +<<elseif ($activeSlave.devotion > 20)>> Your slave hurries to your side and drops to $his knees. $He obediently kneels at your feet. -<<elseif ($activeSlave.devotion < 20)>> - Your slave walks slowly to your desk and kneels. $He looks up at you, hoping that $his life gets easier. -<<elseif ($activeSlave.devotion < -20)>> +<<elseif ($activeSlave.devotion < -50)>> <<if ($activeSlave.fear < -50)>> $He hurries frantically to your side, and drops quivering to the floor at your feet hoping $he was quick enough to avoid <<switch $activeSlave.standardPunishment>> @@ -1615,7 +1613,7 @@ Once the last piece of clothing has hit the floor you let your little slut dance Once seated, you chain $him to your desk and force $him to $his knees. You may have to start punishing $him more severely. <</if>> <<else>> -Your slave hurries to your side and drops to $his knees. $He gladly kneels at your feet, looking up at $his Master in adoration. + Your slave walks slowly to your desk and kneels. $He looks up at you, hoping that $his life gets easier. <</if>> /* more varied reactions planned. */ <<if (random(1,100) > (100 + $activeSlave.devotion))>> diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw index 5788a8742a62e53a9dcb9e2d9500cf42ec93f71a..6c9e5dc31defa5979d70a8d468eab46691ad9c08 100644 --- a/src/npc/fFeelings.tw +++ b/src/npc/fFeelings.tw @@ -148,11 +148,11 @@ My favorite part of my body i<<s>> my blood. It'<<s>> <<s>>o pretty and red, and there'<<s>> <<s>>o much of it when you and the other <<s>>lave<<s>> //really// lay into me. I'm <<s>>o fucking hot right now, thinking about the thing<<s>> you can do to my <<s>>lutty body. <<elseif ($activeSlave.sexualFlaw == "cum addict") && ($activeSlave.fetishStrength > 95)>> <<if $activeSlave.lips > 40>> - my <<if $activeSlave.lips > 70>>huge <</if>>lip<<s>>, I like how everyone e<<x>>pect<<s>> to fa<<c>>efuck me, and how my lip<<s>> wrap around their dick<<s>> to keep all that yummy cum in my belly. Oh! I like my belly, too, and that warm, <<s>>lo<<sh>>y feeling a<<s>> it'<<s>> packed full of baby jui<<c>>e. It'<<s>> <<s>>o — I'm <<s>>orry, <<Master>>. I think my mouth i<<s>> watering. Plea<<s>>e give me a moment to collect my<<s>>elf. + my <<if $activeSlave.lips > 70>>huge <</if>>lip<<s>>, I like how everyone e<<x>>pect<<s>> to fa<<c>>efuck me, and how my lip<<s>> wrap around their dick<<s>> to keep all that <<if canTaste($activeSlave)>>yummy<<else>>warm<</if>> cum in my belly. Oh! I like my belly, too, and that warm, <<s>>lo<<sh>>y feeling a<<s>> it'<<s>> packed full of baby jui<<c>>e. It'<<s>> <<s>>o — I'm <<s>>orry, <<Master>>. I think my mouth i<<s>> watering. Plea<<s>>e give me a moment to collect my<<s>>elf. <<elseif $PC.dick == 1>> my tummy — and my womb! The <<s>>lo<<sh>>y feeling when I'm all packed full of cum in both end<<s>> get<<s>> me <<s>>o incredibly horny. <<S>>ometime<<s>> I wonder what it would be like if I were ju<<s>>t a puffed up, cum-balloon of a $woman, helple<<ss>> and filled with cum, over, and over, and — I'm <<s>>orry, <<Master>>. I'm being weird again, aren't I? <<else>> - my mouth, I love how it feel<<s>> to — to eat pu<<ss>>y, <<Master>>. I love eating out your pu<<ss>>y. E<<s>>pe<<c>>ially when it'<<s>> been filled up with <<s>>ome yummy cum. Maybe you could let me eat cum out of your pu<<ss>>y <<s>>oon? + my mouth, I love how it feel<<s>> to — to eat pu<<ss>>y, <<Master>>. I love eating out your pu<<ss>>y. E<<s>>pe<<c>>ially when it'<<s>> been filled up with <<s>>ome <<if canTaste($activeSlave)>>yummy<<else>>warm<</if>> cum. Maybe you could let me eat cum out of your pu<<ss>>y <<s>>oon? <</if>> <<elseif ($activeSlave.sexualFlaw == "attention whore") && ($activeSlave.fetishStrength > 95)>> my whole $activeSlave.skin body, and whatever part of me i<<s>> be<<s>>t u<<s>>ed to make me look like a total <<s>>lut. @@ -405,17 +405,17 @@ My favorite part of my body i<<s>> <<if $activeSlave.need>> <<if $activeSlave.amp != 1>> - <<if _lisping == 0>> - <<set _Amp = "touch myself,">> - <<else>> - <<set _Amp = "touch mythelf,">> - <</if>> - <<else>> - <<if _lisping == 0>> - <<set _Amp = "rub myself against stuff,">> + <<if _lisping == 0>> + <<set _Amp = "touch myself,">> + <<else>> + <<set _Amp = "touch mythelf,">> + <</if>> <<else>> - <<set _Amp = "rub mythelf againtht thtuff,">> - <</if>> + <<if _lisping == 0>> + <<set _Amp = "rub myself against stuff,">> + <<else>> + <<set _Amp = "rub mythelf againtht thtuff,">> + <</if>> <</if>> <<if ($activeSlave.releaseRules == "permissive") || ($activeSlave.releaseRules == "masturbation")>> Thank you for letting me @@ -515,9 +515,9 @@ My favorite part of my body i<<s>> I'm <<s>>o horny, <<Master>>. I can't <<s>>top <<s>>taring at <<if $PC.dick == 1>>cock<<s>> and imagining them down my throat, cumming and cumming<<else>>pu<<ss>>ie<<s>> and imagining how their jui<<c>>e<<s>> ta<<s>>te<</if>>. <<case "buttslut">> I'm <<s>>o horny, <<Master>>. - <<if (["plug", "long plug"].includes($activeSlave.buttplug) && $activeSlave.anus > 2) >> + <<if (["long plug", "plug"].includes($activeSlave.buttplug) && $activeSlave.anus > 2) >> I wear the buttplug you gave me, but it i<<s>> <<s>>o <<s>>mall... It remind<<s>> me of being fucked in the a<<ss>>, but I can barely feel it. It drive<<s>> me crazy. - <<elseif (["plug", "long plug"].includes($activeSlave.buttplug) && $activeSlave.anus < 3) || (["large plug", "long, large plug"].includes($activeSlave.buttplug) && $activeSlave.anus == 3) || (["huge plug", "long, huge plug"].includes($activeSlave.buttplug) && $activeSlave.anus >= 4) >> + <<elseif (["long plug", "plug"].includes($activeSlave.buttplug) && $activeSlave.anus < 3) || (["large plug", "long, large plug"].includes($activeSlave.buttplug) && $activeSlave.anus == 3) || (["huge plug", "long, huge plug"].includes($activeSlave.buttplug) && $activeSlave.anus >= 4) >> Thank you for the buttplug. It i<<s>> really fun to have my a<<ss>> filled all day long. <<elseif (["large plug", "long, large plug"].includes($activeSlave.buttplug) && $activeSlave.anus < 3) || (["huge plug", "long, huge plug"].includes($activeSlave.buttplug) && $activeSlave.anus < 4) >> I like it up the a<<ss>>, but the plug you make me wear i<<s>> too big. It really hurt<<s>>. Not in the good way. diff --git a/src/npc/fRelation.tw b/src/npc/fRelation.tw index a570465c95d94515d51136d6bdcc667ae8f815c3..d6f11282e6964c72044aad269d54a72c57c27c86 100644 --- a/src/npc/fRelation.tw +++ b/src/npc/fRelation.tw @@ -18,12 +18,12 @@ <<set $partner = randomAvailableSister($activeSlave)>> <<set $partner = $slaveIndices[$partner.ID]>> <<switch areSisters($activeSlave, $slaves[$partner])>> - <<case 3>> - <<set _activeSlaveRel = "half-sister", _partnerRel = "half-sister">> - <<case 2>> - <<set _activeSlaveRel = "sister", _partnerRel = "sister">> - <<case 1>> - <<set _activeSlaveRel = "twin", _partnerRel = "twin">> + <<case 3>> + <<set _activeSlaveRel = "half-sister", _partnerRel = "half-sister">> + <<case 2>> + <<set _activeSlaveRel = "sister", _partnerRel = "sister">> + <<case 1>> + <<set _activeSlaveRel = "twin", _partnerRel = "twin">> <</switch>> <<elseif ($partner == "relation")>> <<set $partner = $slaveIndices[$activeSlave.relationTarget]>> diff --git a/src/npc/newSlaveIncestSex.tw b/src/npc/newSlaveIncestSex.tw index fa53aedbd68dfd3b9b96445bfe34359919d961ae..39fe487f1add01ddfffbd0853792fc675b57e480 100644 --- a/src/npc/newSlaveIncestSex.tw +++ b/src/npc/newSlaveIncestSex.tw @@ -10,10 +10,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $relative 2 0>> + <<= SlaveArt($relative, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $relative2 2 0>> + <<= SlaveArt($relative2, 2, 0)>> </div> </div> <</if>> diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw index 9c17fecfc916e7aa46d4d26dc071decb1b4f5f56..e966354ae77bfe0bf56f411ef07b3e700970e24e 100644 --- a/src/npc/startingGirls/startingGirls.tw +++ b/src/npc/startingGirls/startingGirls.tw @@ -273,20 +273,20 @@ __You are customizing this slave:__ <</if>> <<elseif $PC.career == "servant">> <<if $activeSlave.mother == -1 && $activeSlave.father == -1>> - <<set $activeSlave.origin = "Your late master took pleasure in using his servants in creative ways. He inseminated you with your own sperm, and nine months later, your daughter was born.">> - <<set $activeSlave.custom.tattoo = "$He has your master's brand on $his left breast.">> + <<set $activeSlave.origin = "Your late Master took pleasure in using his servants in creative ways. He inseminated you with your own sperm, and nine months later, your daughter was born.">> + <<set $activeSlave.custom.tattoo = "$He has your Master's brand on $his left breast.">> <<elseif $activeSlave.mother == -1>> - <<set $activeSlave.origin = "$He was another of your late master's servants. $He spent nine months in your womb, courtesy of your master.">> - <<set $activeSlave.custom.tattoo = "$He has your master's brand on $his left breast.">> + <<set $activeSlave.origin = "$He was another of your late Master's servants. $He spent nine months in your womb, courtesy of your Master.">> + <<set $activeSlave.custom.tattoo = "$He has your Master's brand on $his left breast.">> <<elseif $activeSlave.father == -1>> - <<set $activeSlave.origin = "$He was another of your late master's servants. Your master permitted you to knock up $his mother.">> - <<set $activeSlave.custom.tattoo = "$He has your master's brand on $his left breast.">> + <<set $activeSlave.origin = "$He was another of your late Master's servants. Your Master permitted you to knock up $his mother.">> + <<set $activeSlave.custom.tattoo = "$He has your Master's brand on $his left breast.">> <<elseif $PC.vagina == 1>> - <<set $activeSlave.origin = "$He was another of your late master's servants. $He helped you give birth to his child.">> - <<set $activeSlave.custom.tattoo = "$He has your master's brand on $his left breast.">> + <<set $activeSlave.origin = "$He was another of your late Master's servants. $He helped you give birth to his child.">> + <<set $activeSlave.custom.tattoo = "$He has your Master's brand on $his left breast.">> <<else>> - <<set $activeSlave.origin = "$He was another of your late master's servants.">> - <<set $activeSlave.custom.tattoo = "$He has your master's brand on $his left breast.">> + <<set $activeSlave.origin = "$He was another of your late Master's servants.">> + <<set $activeSlave.custom.tattoo = "$He has your Master's brand on $his left breast.">> <</if>> <<if $activeSlave.preg > 0>> <<if $activeSlave.pregSource != -1>> diff --git a/src/pregmod/MpregSelf.tw b/src/pregmod/MpregSelf.tw index 1faeb63e78f519b7d0816213f438f7ca2966af06..e00c3ee48a814a3507ab67b7cd564a8df4e3c85f 100644 --- a/src/pregmod/MpregSelf.tw +++ b/src/pregmod/MpregSelf.tw @@ -6,47 +6,47 @@ <<if $PC.birthSelf == 0>> <<if $PC.balls > 2>> - Calling over your closest slave, you order _himU to bring you one of the high-volume enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending rivulets of precum running down to pool on your massive balls. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the extra-long enema syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the high-volume enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending rivulets of precum running down to pool on your massive balls. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the extra-long enema syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." Following your instructions, _heU eagerly drops to _hisU knees and inhales your soaked member. The large volume of precum coming from your engorged prostate necessitates frequent swallowing that only adds to your pleasure. You lay back and enjoy yourself as _heU massages your massive balls before slipping _hisU hand underneath to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of what comes next, and soon your sack is clenching your massive balls as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying inhumanly large jets of alabaster cum into the enema syringe. It's good that you asked for high-capacity version, as the prodigious quantity of fertile semen would have overflowed from a smaller container. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the full syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is secure and won't leak any of the precious cargo. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the glass of the thick enema syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe between your massive balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the nubby plug-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to take both hands and ram that plunger in. Push hard, I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the pointy enema bulb into the opening of your cervix, forcibly stretching it further open with each piercing impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends thick streams of cum spraying all over the place to soak you and your slave. Seeing _hisU cue, the _girlU grabs the large plunger with both hands and starts shoving it in the direction of your womb. _HeU leans in, using _hisU body weight to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the whole enema syringe further inside you, causing a blissful stretching sensation as the squirting enema bulb penetrates your cervix to lodge in your womb. Your orgasm continues unabated, spurred on by the syringe now spraying your cum directly into your womb. You spend a couple minutes that feel like hours cumming as your slave slowly inflates your womb with a seemingly-endless volume of your virile cum. - <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your balloon-like womb from forcing its meal back into the syringe. The nearly 2 liters of cum you have stuffed inside you leaves your stomach looking noticeably distended, prompting you to rub your sloshing belly. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your inflated belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the colossal quantity of cum inflating your womb. Your well-trained slave reacts quickly, hefting your massive balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. + <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your balloon-like womb from forcing its meal back into the syringe. The nearly 2 liters of cum you have stuffed inside you leaves your stomach looking noticeably distended, prompting you to rub your sloshing belly. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your inflated belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the colossal quantity of cum inflating your womb. Your well-trained slave reacts quickly, hefting your massive balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. You hear some wet sounds as _heU slurps down the cum that already escaped, and then you feel _hisU soft lips pressed to your vulva as _heU steadfastly works to drink the unending flood of semen. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your inhuman sperm production. There's always the tap from $dairyName of course, but this way you don't have to worry about getting pregnant. That last thought gives you pause. You can't get yourself pregnant... right? <<elseif $PC.balls == 2>> - Calling over your closest slave, you order _himU to bring you one of the enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending a steady stream of precum running down to pool on your huge balls. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the glass enema syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending a steady stream of precum running down to pool on your huge balls. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the glass enema syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." <br><br>Following your instructions, _heU eagerly drops to _hisU knees and inhales your soaked member. The large volume of precum coming from your swollen prostate necessitates regular swallowing that only adds to your pleasure. You lay back and enjoy yourself as _heU massages your huge balls before slipping _hisU hand underneath to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of what comes next, and soon your sack is clenching your huge balls as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying massive jets of alabaster cum into the enema syringe. It's good that you decided on an enema syringe instead of a normal dildo suppository, as the huge quantity of fertile semen would have overflowed from a smaller container. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the full syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is secure and won't leak any of the precious cargo. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the glass of the thick enema syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe between your huge balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the nubby plug-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to take both hands and ram that plunger in. Push hard, I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the pointy enema bulb into the opening of your cervix, forcibly stretching it further open with each piercing impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends thick streams of cum spraying all over the place to coat you and your slave. Seeing _hisU cue, the _girlU grabs the large plunger with both hands and starts shoving it in the direction of your womb. _HeU leans in, using _hisU body weight to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the whole enema syringe further inside you, causing a blissful stretching sensation as the squirting enema bulb penetrates your cervix to lodge in your womb. Your orgasm continues unabated, spurred on by the syringe now spraying your cum directly into your womb. You spend a couple minutes that feel like hours cumming as your slave slowly inflates your womb with a liter of your virile cum. - <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your stuffed womb from forcing its meal back into the syringe. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your swollen belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the huge quantity of cum that's stuffed in your womb. Your well-trained slave reacts quickly, hefting your huge balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. + <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your stuffed womb from forcing its meal back into the syringe. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your swollen belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the huge quantity of cum that's stuffed in your womb. Your well-trained slave reacts quickly, hefting your huge balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. You hear some wet sounds as _heU slurps down the cum that already escaped, and then you feel _hisU soft lips pressed to your vulva as _heU steadfastly works to drink the unending flood of semen. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your prodigious sperm production. There's always the tap from $dairyName of course, but this way you don't have to worry about getting pregnant. That last thought gives you pause. You can't get yourself pregnant... right? <<elseif $PC.balls == 1>> - Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending regular drips of precum running down onto your large balls. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending regular drips of precum running down onto your large balls. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." <br><br>Following your instructions, _heU eagerly drops to _hisU knees and inhales your straining cock. The extra precum coming from your enhanced prostate necessitates occasional swallowing that only adds to your pleasure. You lay back and enjoy yourself as _heU massages your large balls before slipping _hisU hand underneath to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of what comes next, and soon your sack is clenching your large balls as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying large jets of alabaster cum into the syringe. It's close, the large quantity of fertile semen almost overflowing from the dildo suppository. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the full syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is secure and won't leak any of the precious cargo. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the silicone of the thick dildo syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe underneath your large balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the cock-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to ram that plunger in. Push hard, I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the head of the dildo into your cervix, battering it open with each impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends jets of cum all over the place to land on you and your slave. Seeing _hisU cue, the _girlU grabs the large plunger and starts shoving it in the direction of your womb. _HeU pushes hard to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the silicone cockhead against your cervix, creating a seal and leaving the syringe free to spray your semen through your battered cervix and into your hungry womb. Your orgasm continues unabated, spurred on by warm fluid flowing into your womb. You spend a minute that feel like an hour cumming as your slave slowly fills your womb with a few deciliters of virile cum. - <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, opening the floodgates for the cum that's filling your womb. Your well-trained slave reacts quickly, lifting your large balls up and out of the way so _heU can catch the stream of jizz that's just starting to pour from your cunt. + <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, opening the floodgates for the cum that's filling your womb. Your well-trained slave reacts quickly, lifting your large balls up and out of the way so _heU can catch the stream of jizz that's just starting to pour from your cunt. You hear some wet sounds as _heU slurps down the cum that already escaped, and then you feel _hisU soft lips pressed to your vulva as _heU steadfastly works to drink the escaping semen. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your considerable sperm production. There's always the tap from $dairyName of course, but this way you don't have to worry about getting pregnant. That last thought gives you pause. You can't get yourself pregnant... right? <<else>> - Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, a large droplet of precum hanging from the head. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, a large droplet of precum hanging from the head. Your pussy is similarly soaked, imagining your latest deviancy has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." <br><br>Following your instructions, _heU eagerly drops to _hisU knees and inhales your straining cock. You lay back and enjoy yourself as _heU massages your balls before slipping _hisU hand downward to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of what comes next, and soon your sack is clenching tightly as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying jets of alabaster cum into the syringe. It's a powerful orgasm, but you only manage to fill a quarter of it. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is inserted far enough that you've gotten all the air out of the syringe. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the silicone of the thick dildo syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe underneath your balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the cock-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to ram that plunger in. I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the head of the dildo into your cervix, battering it open with each impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends several jets of cum to land on your reclined body. Seeing _hisU cue, the _girlU grabs the large plunger and starts shoving it in the direction of your womb. _HeU pushes hard to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the silicone cockhead against your cervix, creating a seal and leaving the syringe free to spray your semen through your battered cervix and into your hungry womb. Your orgasm continues unabated, spurred on by the jet of fluid flowing into your womb. Your orgasm soon fades, and you wish that you could produce more than a deciliter of cum to fill yourself with. - <br><br>Now that your orgasm is over, you notice your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, allowing the cum inside you to leak out. Your well-trained slave reacts quickly, lifting your balls up and out of the way so _heU can catch the load of jizz before it starts to leak out of your cunt. + <br><br>Now that your orgasm is over, you notice your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, allowing the cum inside you to leak out. Your well-trained slave reacts quickly, lifting your balls up and out of the way so _heU can catch the load of jizz before it starts to leak out of your cunt. You feel _hisU soft lips pressed to your vulva as _heU works to retrieve _hisU treat. You hear some soft slurping noises and feel a warm tongue worming its way inside you to retrieve any lingering cum. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your own balls for a satisfying creampie. There's always a slave to do that, of course, but this way you don't have to worry about getting pregnant. That last thought gives you pause. You can't get yourself pregnant... right? <</if>> @@ -54,47 +54,47 @@ <<= knockMeUp($PC, _selfPreg, 0, -1)>> <<else>> <<if $PC.balls > 2>> - Calling over your closest slave, you order _himU to bring you one of the high-volume enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending rivulets of precum running down to pool on your massive balls. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the extra-long enema syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the high-volume enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending rivulets of precum running down to pool on your massive balls. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the extra-long enema syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." Following your instructions, _heU eagerly drops to _hisU knees and inhales your soaked member. The large volume of precum coming from your engorged prostate necessitates frequent swallowing that only adds to your pleasure. You lay back and enjoy yourself as _heU massages your massive balls before slipping _hisU hand underneath to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of the semi-incestuous stuffing that comes next, and soon your sack is clenching your massive balls as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying inhumanly large jets of alabaster cum into the enema syringe. It's good that you asked for high-capacity version, as the prodigious quantity of fertile semen would have overflowed from a smaller container. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the full syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is secure and won't leak any of the precious cargo. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the glass of the thick enema syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe between your massive balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the nubby plug-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to take both hands and ram that plunger in. Push hard, I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the pointy enema bulb into the opening of your cervix, forcibly stretching it further open with each piercing impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends thick streams of cum spraying all over the place to soak you and your slave. Seeing _hisU cue, the _girlU grabs the large plunger with both hands and starts shoving it in the direction of your womb. _HeU leans in, using _hisU body weight to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the whole enema syringe further inside you, causing a blissful stretching sensation as the squirting enema bulb penetrates your cervix to lodge in your womb. Your orgasm continues unabated, spurred on by the syringe now spraying your cum directly into your womb. You spend a couple minutes that feel like hours cumming as your slave slowly inflates your womb with a seemingly-endless volume of your virile cum. - <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your balloon-like womb from forcing its meal back into the syringe. The nearly 2 liters of cum you have stuffed inside you leaves your stomach looking noticeably distended, prompting you to rub your sloshing belly. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your inflated belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the colossal quantity of cum inflating your womb. Your well-trained slave reacts quickly, hefting your massive balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. + <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your balloon-like womb from forcing its meal back into the syringe. The nearly 2 liters of cum you have stuffed inside you leaves your stomach looking noticeably distended, prompting you to rub your sloshing belly. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your inflated belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the colossal quantity of cum inflating your womb. Your well-trained slave reacts quickly, hefting your massive balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. You hear some wet sounds as _heU slurps down the cum that already escaped, and then you feel _hisU soft lips pressed to your vulva as _heU steadfastly works to drink the unending flood of semen. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your inhuman sperm production. There's always the tap from $dairyName of course, but why use slave cum when you have such obviously superior material available? <<elseif $PC.balls == 2>> - Calling over your closest slave, you order _himU to bring you one of the enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending a steady stream of precum running down to pool on your huge balls. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the glass enema syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the enema syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending a steady stream of precum running down to pool on your huge balls. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the glass enema syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." <br><br>Following your instructions, _heU eagerly drops to _hisU knees and inhales your soaked member. The large volume of precum coming from your swollen prostate necessitates regular swallowing that only adds to your pleasure. You lay back and enjoy yourself as _heU massages your huge balls before slipping _hisU hand underneath to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of the semi-incestuous stuffing that comes next, and soon your sack is clenching your huge balls as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying massive jets of alabaster cum into the enema syringe. It's good that you decided on an enema syringe instead of a normal dildo suppository, as the huge quantity of fertile semen would have overflowed from a smaller container. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the full syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is secure and won't leak any of the precious cargo. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the glass of the thick enema syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe between your huge balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the nubby plug-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to take both hands and ram that plunger in. Push hard, I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the pointy enema bulb into the opening of your cervix, forcibly stretching it further open with each piercing impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends thick streams of cum spraying all over the place to coat you and your slave. Seeing _hisU cue, the _girlU grabs the large plunger with both hands and starts shoving it in the direction of your womb. _HeU leans in, using _hisU body weight to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the whole enema syringe further inside you, causing a blissful stretching sensation as the squirting enema bulb penetrates your cervix to lodge in your womb. Your orgasm continues unabated, spurred on by the syringe now spraying your cum directly into your womb. You spend a couple minutes that feel like hours cumming as your slave slowly inflates your womb with a full liter of your virile cum. - <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your stuffed womb from forcing its meal back into the syringe. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your swollen belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the huge quantity of cum that's stuffed in your womb. Your well-trained slave reacts quickly, hefting your huge balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. + <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your stuffed womb from forcing its meal back into the syringe. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering over your swollen belly to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes _himU to swiftly yank the rest of the syringe out of you, opening the floodgates for the huge quantity of cum that's stuffed in your womb. Your well-trained slave reacts quickly, hefting your huge balls up and out of the way so _heU can catch the torrent of jizz that's just starting to pour from your cunt. You hear some wet sounds as _heU slurps down the cum that already escaped, and then you feel _hisU soft lips pressed to your vulva as _heU steadfastly works to drink the unending flood of semen. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your prodigious sperm production. There's always the tap from $dairyName of course, but why use slave cum when you have such obviously superior material available? <<elseif $PC.balls == 1>> - Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending regular drips of precum running down onto your large balls. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, sending regular drips of precum running down onto your large balls. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." <br><br>Following your instructions, _heU eagerly drops to _hisU knees and inhales your straining cock. The extra precum coming from your enhanced prostate necessitates occasional swallowing that only adds to your pleasure. You lay back and enjoy yourself as _heU massages your large balls before slipping _hisU hand underneath to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of the semi-incestuous stuffing that comes next, and soon your sack is clenching your large balls as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying large jets of alabaster cum into the syringe. It's close, the large quantity of fertile semen almost overflows from the dildo suppository. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the full syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is secure and won't leak any of the precious cargo. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the silicone of the thick dildo syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe underneath your large balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the cock-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to ram that plunger in. Push hard, I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the head of the dildo into your cervix, battering it open with each impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends jets of cum all over the place to land on you and your slave. Seeing _hisU cue, the _girlU grabs the large plunger and starts shoving it in the direction of your womb. _HeU pushes hard to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the silicone cockhead against your cervix, creating a seal and leaving the syringe free to spray your semen through your battered cervix and into your hungry womb. Your orgasm continues unabated, spurred on by warm fluid flowing into your womb. You spend a minute that feel like an hour cumming as your slave slowly fills your womb with a few deciliters of virile cum. - <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, opening the floodgates for the cum that's filling in your womb. Your well-trained slave reacts quickly, lifting your large balls up and out of the way so _heU can catch the stream of jizz that's just starting to pour from your cunt. + <br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, opening the floodgates for the cum that's filling in your womb. Your well-trained slave reacts quickly, lifting your large balls up and out of the way so _heU can catch the stream of jizz that's just starting to pour from your cunt. You hear some wet sounds as _heU slurps down the cum that already escaped, and then you feel _hisU soft lips pressed to your vulva as _heU steadfastly works to drink the escaping semen. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your considerable sperm production. There's always the tap from $dairyName of course, but why use slave cum when you have such obviously superior material available? <<else>> - Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, a large droplet of precum hanging from the head. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." + Calling over your closest slave, you order _himU to bring you one of the dildo-shaped suppository syringes from the slave quarters. _HeU rushes off, and you set about getting naked before lying down on your luxurious bed. Your cock is already rock-hard, a large droplet of precum hanging from the head. Your pussy is similarly soaked, imagining your belly swelling after you knock yourself up has it practically puddling. Just as you start to think about punishing your slave for taking too long, you hear a knock before _heU enters carrying the remarkably-lifelike dildo syringe. Impatient, you give _himU your instructions: "Pull out the plunger and keep the syringe handy. You're going to suck me off, but I want every drop of my cum to go into that syringe. No spilling. Now get started." <br><br>Following your instructions, _heU eagerly drops to _hisU knees and inhales your straining cock. You lay back and enjoy yourself as _heU massages your balls before slipping _hisU hand downward to start fingering your soaked pussy. The expert ministrations from your slave combine with your thoughts of the semi-incestuous stuffing that comes next, and soon your sack is clenching tightly as your body prepares to cum. Recognizing the signs, your slave removes _hisU mouth and replaces it with the open end of the syringe. _HeU takes _hisU sodden hand from your cunt and starts stroking vigorously, and soon you're spraying jets of alabaster cum into the syringe. It's a powerful orgasm, but you only manage to fill a quarter of it. <br><br>You sit up and pick up the previously discarded plunger while your slave continues to hold the syringe. _HeU has thoughtfully blocked the tip with the palm of _hisU hand, keeping any of the precious fluid from escaping. You position the plunger and barely insert it into the open syringe, not wanting to accidentally force out your semen. The two of you flip the syringe over so that the business end is pointing upward, and the slave removes _hisU hand while you make sure the plunger is inserted far enough that you've gotten all the air out of the syringe. Your slave eagerly licks the drop of cum off the palm of _hisU hand, but you don't begrudge _himU a small treat. Instead, you get a firm grasp on the silicone of the thick dildo syringe and lay back once more. You spread your legs into a wide "M" shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe underneath your balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the cock-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions: "Fuck me good and hard with the syringe until I cum. When I do, I want you to ram that plunger in. I want that syringe completely empty when you're done." <br><br>The _girlU does as _heU's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, _heU shoves it back inside you. Seeing the undeniable pleasure on your face, _heU takes it as permission to continue and quickly picks up the pace. Soon _heU's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the head of the dildo into your cervix, battering it open with each impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends several jets of cum to land on your reclined body. Seeing _hisU cue, the _girlU grabs the large plunger and starts shoving it in the direction of your womb. _HeU pushes hard to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the silicone cockhead against your cervix, creating a seal and leaving the syringe free to spray your semen through your battered cervix and into your hungry womb. Your orgasm continues unabated, spurred on by the jet of fluid flowing into your womb. Your orgasm soon fades, and you wish that you could produce more than a deciliter of cum to fill yourself with. - <br><br>Now that your orgasm is over, you notice your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, allowing the cum inside you to leak out. Your well-trained slave reacts quickly, lifting your balls up and out of the way so _heU can catch the load of jizz before it starts to leak out of your cunt. + <br><br>Now that your orgasm is over, you notice your slave standing by while holding the dildo inside you to keep you plugged up. You give the waiting _girlU _hisU orders: "Pull it out, and use your mouth to keep the mess to a minimum." _HeU gets on _hisU knees and takes a firm grip on the syringe before peering up at you to make sure you're ready for _himU to continue. As soon as you give _himU a nod _heU pulls the dildo free, allowing the cum inside you to leak out. Your well-trained slave reacts quickly, lifting your balls up and out of the way so _heU can catch the load of jizz before it starts to leak out of your cunt. You feel _hisU soft lips pressed to your vulva as _heU works to retrieve _hisU treat. You hear some soft slurping noises and feel a warm tongue worming its way inside you to retrieve any lingering cum. You relax and enjoy the afterglow of your orgasms while _heU works, proud of your ingenious idea to take advantage of your own balls for a satisfying creampie. There's always a slave to do that, of course, but why use slave cum when you have such obviously superior material available? <</if>> diff --git a/src/pregmod/birthStorm.tw b/src/pregmod/birthStorm.tw index 86f33c44fc78246caa08a4dd939f12e8e192f7dc..987f7f56b7009bbeae33e0842e2e4cb754c0d963 100644 --- a/src/pregmod/birthStorm.tw +++ b/src/pregmod/birthStorm.tw @@ -90,22 +90,8 @@ <<set _fathersReduced[_cb] += String(" brood of " + _num + " babies")>> <<elseif _num >= 10>> <<set _fathersReduced[_cb] += String(" impressive group of " + _num + " babies")>> - <<elseif _num == 9>> - <<set _fathersReduced[_cb] += " nonuplets">> - <<elseif _num == 8>> - <<set _fathersReduced[_cb] += " octuplets">> - <<elseif _num == 7>> - <<set _fathersReduced[_cb] += " septuplets">> - <<elseif _num == 6>> - <<set _fathersReduced[_cb] += " sextuplets">> - <<elseif _num == 5>> - <<set _fathersReduced[_cb] += " quintuplets">> - <<elseif _num == 4>> - <<set _fathersReduced[_cb] += " quadruplets">> - <<elseif _num == 3>> - <<set _fathersReduced[_cb] += " triplets">> - <<elseif _num == 2>> - <<set _fathersReduced[_cb] += " twins">> + <<else>> + <<set _fathersReduced[_cb] += String(" " + pregNumberName(_curBabies, 2))>> <</if>> <</for>> diff --git a/src/pregmod/breederProposal.tw b/src/pregmod/breederProposal.tw index 70d4b07ca39beaabdcd3af570a9946f8743c0dbb..4e0011bb5cd975f97b4d892ed33d9409a9ca1c95 100644 --- a/src/pregmod/breederProposal.tw +++ b/src/pregmod/breederProposal.tw @@ -2,7 +2,7 @@ <<set $nextButton = " ", $nextLink = "Main", $propOutcome = -1>> -You draft a proposal to the Societal Elite proposing the use of specially tested slaves as breeding stock. If they can pass the tests required to join the Societal Elite; even as slaves, their bodies can prove valuable to furthering eugenics. They will gain no additional rights, but their wombs will be used to birth elite children; helping stave off potential threats of inbreeding and adding possible missed beneficial traits into the Elite's gene pool. +You draft a proposal to the Societal Elite proposing the use of specially tested slaves as breeding stock. If they can pass the tests required to join the Societal Elite; even as slaves, their bodies can prove valuable to furthering eugenics. They will gain no additional rights, but their wombs will be used to birth Elite children; helping stave off potential threats of inbreeding and adding possible missed beneficial traits into the Elite's gene pool. <br><br> Within the hour, you are called before <<if $eugenicsFullControl == 1>>what's left of <</if>>the Societal Elite. <br> diff --git a/src/pregmod/csec.tw b/src/pregmod/csec.tw index d2aee7532e37615435487b66c0232a74fea40dca..2ce3245f59115275e6fa94e3c38739c65e0a7f35 100644 --- a/src/pregmod/csec.tw +++ b/src/pregmod/csec.tw @@ -118,8 +118,8 @@ <<set _fathersReduced[_cb] += " quadruplets">> <<elseif _num == 3>> <<set _fathersReduced[_cb] += " triplets">> - <<elseif _num == 2>> - <<set _fathersReduced[_cb] += " twins">> + <<else>> + <<set _fathersReduced[_cb] += String(" " + pregNumberName(_num, 2))>> <</if>> <</for>> @@ -261,7 +261,7 @@ Performing a cesarean section is trivial for the remote surgery to carry out. $a <<if $activeSlave.fetish == "mindbroken" || $activeSlave.fuckdoll > 0>> has few thoughts about the matter. <<elseif $activeSlave.devotion > 95>> - loves you already, but $he'll @@.hotpink;love you even more@@ for this. $He can't wait to see $his child<<if _curBabies > 1>>ren<</if>> proudly furthering your cause. + loves you already, but $he'll @@.hotpink;love you even more@@ for this. $He can't wait to <<if canSee($activeSlave)>>see<<else>>have<</if>> $his child<<if _curBabies > 1>>ren<</if>> proudly furthering your cause. <<set $activeSlave.devotion += 4>> <<elseif $activeSlave.devotion > 50>> heard about these and will be @@.hotpink;happy that $his child<<if _curBabies > 1>>ren<</if>> will have a purpose in your society other than slavery.@@ $He will miss $his child<<if _curBabies > 1>>ren<</if>>, but $he expected that. diff --git a/src/pregmod/electiveSurgery.tw b/src/pregmod/electiveSurgery.tw index 4734cfda33e7740c34149e4b6eb8328dcf7d2a0c..7b23443f8021ad437eaaf6db7ce995e3ae890f24 100644 --- a/src/pregmod/electiveSurgery.tw +++ b/src/pregmod/electiveSurgery.tw @@ -193,43 +193,43 @@ You have @@.orange;$PC.skin skin.@@<<if $PC.skin != $PC.origSkin>> Your original <br><br>_HeU darts for your middle. <<if $PC.belly >= 120000>> "My god! What happened to you? You might now want to hit the fertility drugs so hard next time. Then again, I don't think you'll see us complaining when you come in for a tummy tuck to get everything back where it used to be," _heU says with a wink as _heU uses both hands to massage your - <<if $PC.preg > 40>>overdue octuplet-bursting belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." + <<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-bursting belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." <<else>>over-crowded belly. <</if>> <br> <<elseif $PC.belly >= 110000>> "My god! What happened to you? You might now want to hit the fertility drugs so hard next time. Then again, I don't think you'll see us complaining when you come in for a tummy tuck to get everything back where it used to be," _heU says with a wink as _heU uses both hands to massage your - <<if $PC.preg > 40>>overdue septuplet-stuffed belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." + <<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-stuffed belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." <<else>>over-crowded belly. <</if>> <br> <<elseif $PC.belly >= 95000>> Oh wow! It's like a party in there!" _heU says as _heU uses both hands to massage your - <<if $PC.preg > 40>>overdue sextuplet-stuffed belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." + <<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-stuffed belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." <<else>>crowded belly. <</if>> <br> <<elseif $PC.belly >= 80000>> You must feel so full, like all the time. What's it feel like? Do they every calm down?" _heU says as _heU uses both hands to massage your - <<if $PC.preg > 40>>overdue quadruplet-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." + <<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." <<else>>crowded belly. <</if>> <br> <<elseif $PC.belly >= 64000>> Oh wow! You're immense! I almost can't wrap my arms around it!" _heU says as _heU uses both hands to massage your - <<if $PC.preg > 40>>overdue quadruplet-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." + <<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." <<else>>crowded belly. <</if>> <br> <<elseif $PC.belly >= 48000>> "Oh wow! You're gigantic! Are you sure you want to have surgery in this state? Things start to get complicated when you're this pregnant," _heU says as _heU uses both hands to massage your - <<if $PC.preg > 40>>overdue triplet-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." + <<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." <<else>>crowded belly. <</if>> <br> <<elseif $PC.belly >= 32000>> "My word, are you sure you want to have surgery in this state? You're gigantic! Plus things start to get complicated when you're this pregnant," _heU says as _heU uses both hands to massage your - <<if $PC.preg > 40>>overdue twin-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." + <<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry." <<else>>crowded belly. <</if>> <br> diff --git a/src/pregmod/eliteTakeOver.tw b/src/pregmod/eliteTakeOver.tw index 28f960b0a7a9dfa854286d45a3f003757a60b3eb..14b19e8857ab65f89072c2c2e5b8aadf43676eda 100644 --- a/src/pregmod/eliteTakeOver.tw +++ b/src/pregmod/eliteTakeOver.tw @@ -83,7 +83,7 @@ You look up from your desk as the locked door to your office unseals, and a doze <</replace>> <</link>> <</if>> - <<if $PC.pregSource != -6 && $PC.pregSource != -1>> + <<if $PC.pregSource != -1 && $PC.pregSource != -6>> <br> <<link "Try and enrage them.">> <<set $finalChoice = "enrage">> diff --git a/src/pregmod/eliteTakeOverFight.tw b/src/pregmod/eliteTakeOverFight.tw index a7af848540f9a32ae7172963f7ef8190641ef6e6..66f9cce8cdce283a0c28fb13ca3c8b8c4b9c93ec 100644 --- a/src/pregmod/eliteTakeOverFight.tw +++ b/src/pregmod/eliteTakeOverFight.tw @@ -5,25 +5,25 @@ <<case "bodyguard">> <<set _roll = random(0,100)>> <<if $career == "mercenary">> - As a result of your prior experience as a mercenary you were able to successfully signal $Bodyguard.slaveName without the elites noticing. + As a result of your prior experience as a mercenary you were able to successfully signal $Bodyguard.slaveName without the Elites noticing. <<set $BodyguardHasSucessfullyRecivedSignal = 1>> <<elseif $PC.warfare >= 100 && _roll > 20>> - As a result of your mastery of warfare you were able to successfully signal $Bodyguard.slaveName without the elites noticing. + As a result of your mastery of warfare you were able to successfully signal $Bodyguard.slaveName without the Elites noticing. <<set $BodyguardHasSucessfullyRecivedSignal = 1>> <<elseif $PC.warfare >= 60 && _roll > 30>> - As a result of your expertness of warfare you were able to successfully signal $Bodyguard.slaveName without the elites noticing. + As a result of your expertness of warfare you were able to successfully signal $Bodyguard.slaveName without the Elites noticing. <<set $BodyguardHasSucessfullyRecivedSignal = 1>> <<elseif $PC.warfare >= 30 && _roll > 40>> As a result of having some skill in warfare you were able to successfully signal $Bodyguard.slaveName without the elites noticing. <<set $BodyguardHasSucessfullyRecivedSignal = 1>> <<elseif $PC.warfare >= 10 && _roll > 50>> - As a result of having a small amount of skill in warfare you were able to successfully signal $Bodyguard.slaveName without the elite's noticing. + As a result of having a small amount of skill in warfare you were able to successfully signal $Bodyguard.slaveName without the Elites noticing. <<set $BodyguardHasSucessfullyRecivedSignal = 1>> <<elseif $PC.warfare < 10 && _roll > 60>> - By blind luck and what little you remember of your lessons in warfare are were able to successfully signal $Bodyguard.slaveName without the elites noticing. + By blind luck and what little you remember of your lessons in warfare are were able to successfully signal $Bodyguard.slaveName without the Elites noticing. <<set $BodyguardHasSucessfullyRecivedSignal = 1>> <<else>> - One of the elites shouts "What the fuck were you trying to do?" Well, there goes that option. + One of the Elites shouts "What the fuck are you trying to do?" Well, there goes that option. <<set $BodyguardHasSucessfullyRecivedSignal = 0>> <</if>> <br>You then pick up the revolver and quickly take aim. @@ -52,7 +52,7 @@ <</switch>> <<if $finalChoice == "give in">> - <<if $PC.pregSource == -1 || $PC.pregSource == -6>> Screw their plans, you're out of here. <</if>>With a bang! you drop dead. + <<if $PC.pregSource == -1 || $PC.pregSource == -6>> Screw their plans, you're out of here. <</if>>With a "Bang!" you drop dead. <<set $ui = "start">> <br><br> ''GAME OVER'' @@ -99,9 +99,9 @@ <</for>> <<if $eliteDead >= 1>> - <br>You managed to kill several elites in rapid succession, leaving the rest in shock and fear. + <br>You managed to kill several Elites in rapid succession, leaving the rest in shock and fear. <<elseif $eliteDead == 1>> - <br>You managed to kill one elite, leaving the rest in shock and fear. + <br>You managed to kill one Elite, leaving the rest in shock and fear. <<else>> <br>Unfortunately you fail to kill a single Elite. <</if>> @@ -112,7 +112,7 @@ <<set _druggedThrow = 0>> <<if $eliteDead > 0>> - With $eliteDead elite's dead, you pick up the syringe from the desk and aim for the forehead of another. + With $eliteDead Elites dead, you pick up the syringe from the desk and aim for the forehead of another. <<else>> Having failed to kill them with the revolver, in a desperate move you pick up the syringe from the desk and aim for the forehead of one of the elite. <</if>> @@ -202,7 +202,7 @@ <<set $eliteLeft = $eliteTotal - $eliteDead - $eliteVegetable>> -/* if the player has managed to make enough damage to the elite and the rep is high enough the citizens will come to save the PC */ +/* if the player has managed to make enough damage to the Elite and the rep is high enough the citizens will come to save the PC */ /* this is to give reason to exist for the "enrage" and "last stand" option */ /* result */ /* $eliteFate: */ @@ -212,7 +212,7 @@ <<if $BodyguardHasSucessfullyRecivedSignal == 1>> <<setLocalPronouns $Bodyguard>> <<run Enunciate($Bodyguard)>> - $Bodyguard.slaveName asks, "<<Master>>, what <<sh>>ould I do with the <<if $eliteLeft < $eliteTotal>>remaining<</if>> 'elite' left?" + $Bodyguard.slaveName asks, "<<Master>>, what <<sh>>ould I do with the <<if $eliteLeft < $eliteTotal>>remaining<</if>> 'Elite' left?" <br> <<link "Open fire">> <<set $eliteFate = 0>> @@ -228,7 +228,7 @@ <<goto "eliteTakeOverResult">> <</link>> <<elseif $MercenariesMessageSent == 1>> - It is now that a squad of $mercenariesTitle makes their entrance, pointing their guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite. + It is now that a squad of $mercenariesTitle makes their entrance, pointing their guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> Elite. The officer asks, "Your orders, <<= properTitle()>>?" <br> <<link "Open fire">> @@ -245,7 +245,7 @@ <<goto "eliteTakeOverResult">> <</link>> <<elseif $SpecialForcesMessageSent>> - It is now that a squad of $SF.Lower makes their entrance, pointing their guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite. + It is now that a squad of $SF.Lower makes their entrance, pointing their guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> Elite. The officer asks, "Your orders, <<= properTitle()>>?" <br> <<link "Open fire">> @@ -264,8 +264,8 @@ <<elseif $Bodyguard != 0>> <<setLocalPronouns $Bodyguard>> <<run Enunciate($Bodyguard)>> - It is now that $Bodyguard.slaveName makes $his entrance, pointing $his guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite. - $He then asks "<<Master>>, what <<sh>>ould I do with the <<if $eliteLeft < $eliteTotal>>remaining<</if>> 'elite' left?" + It is now that $Bodyguard.slaveName makes $his entrance, pointing $his guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> Elite. + $He then asks "<<Master>>, what <<sh>>ould I do with the <<if $eliteLeft < $eliteTotal>>remaining<</if>> 'Elite' left?" <br> <<link "Open fire">> <<set $eliteFate = 0>> @@ -281,7 +281,7 @@ <<goto "eliteTakeOverResult">> <</link>> <<elseif $eliteLeft <= 9 && $rep >= 10000>> - Some of the citizens waiting outside your penthouse to see you hear the ruckus and rush inside, worried. Time freezes for a few seconds, while the remaining elite recover from their terror and the citizens digest the gory scene in front of them. + Some of the citizens waiting outside your penthouse to see you hear the ruckus and rush inside, worried. Time seems to freeze for a few seconds, while the remaining Elite recover from their terror and the citizens digest the gory scene in front of them. The newcomers are quick to take your side. In little time the elites, outgunned and outnumbered, are neutralized. <br>One of the more courageous citizens approaches you and asks "<<= properTitle()>>, what should we do with them?" <br> @@ -299,7 +299,7 @@ <<goto "eliteTakeOverResult">> <</link>> <<elseif $finalChoice != "give in">> - With nothing else left, you remain powerless to stop the <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite, who quickly capture and enslave you. Your personal story may continue, but the part of it worthy of retelling has now ended. + With nothing else left, you remain powerless to stop the <<if $eliteLeft < $eliteTotal>>remaining<</if>> Elite, who quickly capture and enslave you. Your personal story may continue, but the part of it worthy of retelling has now ended. <<set $ui = "start">> <br><br> ''GAME OVER'' diff --git a/src/pregmod/fNippleFuck.tw b/src/pregmod/fNippleFuck.tw index 7399fe35d418e62817423c44534093d14907f7b2..d237deae55bb71b47a59cfd7677acdd21f036080 100644 --- a/src/pregmod/fNippleFuck.tw +++ b/src/pregmod/fNippleFuck.tw @@ -40,14 +40,14 @@ breast flesh grips you tightly. A few experimental pumps draws gasps from $him b <<if $activeSlave.fetish == "boobs" && $activeSlave.fetishKnown == 1>> - $He has a glassy eyed expression as $he + $He has a glassy-eyed expression as $he <<if $activeSlave.amp != 1>> gropes $his breasts with both hands, fingering $his unoccupied nipple in time with your thrusts. <<else>> savors the sensations running through $his breast. <</if>> <<elseif $activeSlave.devotion > 20 || $activeSlave.trust > 20>> - $He has a glassy eyed expression as $he + $He has a glassy-eyed expression as $he <<if $activeSlave.amp != 1>> gropes $his breasts with one hand and furiously abuses $his clit with the other. <<else>> diff --git a/src/pregmod/fSelf.tw b/src/pregmod/fSelf.tw index 31dedfa2da8d74a3982ebc7764354fa744b35501..ded7360f01914971c4074e90a9436e085b525440 100644 --- a/src/pregmod/fSelf.tw +++ b/src/pregmod/fSelf.tw @@ -16,7 +16,7 @@ <<if $PC.cumTap == 0>> - Taking the hose and attaching the delectable cockhead to it, you drag it over to your bed and make yourself comfortable. Teasing your pussylips with the perfect sized cock quickly gets you moist<<if $PC.dick == 1>> and hard<</if>>, itching for the fake dick inside you. You know yourself well, and it fits perfectly; as you thrust it into your cunt you can't help but buck with pleasure. Just as you reach your climax, you accidentally kick the tap on. Needless to say, you are quite surprised when your "lover" orgasms and begins releasing inside you, forcing you to lose your grip on the nozzle allowing it to free itself from you along with a torrent of cum. Panting and rubbing your tender belly, you quickly pull your clothes back on and head to clean yourself out. You can't help but notice your waist feels rather tight, it shot so much into you; that cum wasn't virile, right? + Taking the hose and attaching the delectable cockhead to it, you drag it over to your bed and make yourself comfortable. Teasing your pussylips with the perfect sized cock quickly gets you moist<<if $PC.dick == 1>> and hard<</if>>, itching for the fake dick inside you. You know yourself well, and it fits perfectly; as you thrust it into your cunt you can't help but buck with pleasure. Just as you reach your climax, you accidentally kick the tap on. Needless to say, you are quite surprised when your "lover" orgasms and begins releasing inside you, forcing you to lose your grip on the nozzle, allowing it to free itself from you along with a torrent of cum. Panting and rubbing your tender belly, you quickly pull your clothes back on and head to clean yourself out. You can't help but notice your waist feels rather tight; it shot so much into you — that cum wasn't virile, right? <<elseif $PC.cumTap < 5>> @@ -36,11 +36,11 @@ <<elseif $PC.cumTap < 25>> - Taking the hose and attaching your favorite cockhead to it, you eagerly drag it to your bed and make yourself comfortable. You waste no time driving it into your aching cunt. With every thrust, you jet massive bursts of cum into your empty womb, swelling yourself more and more as your pleasure rises, until you reach your climax and unleash your "lover"'s pent up load into yourself. Patting your taut, overfilled belly, you struggle to even get off the bed. After minutes of effort, several attempts ruined by aftershock orgasms, you manage to get on your feet. Cradling your massive cum-belly, you gingerly waddle to your waiting bath. You look like you are ready to burst with triplets, imagine what the public would say if they saw you in this state. + Taking the hose and attaching your favorite cockhead to it, you eagerly drag it to your bed and make yourself comfortable. You waste no time driving it into your aching cunt. With every thrust, you jet massive bursts of cum into your empty womb, swelling yourself more and more as your pleasure rises, until you reach your climax and unleash your "lover"'s pent up load into yourself. Patting your taut, overfilled belly, you struggle to even get off the bed. After minutes of effort, several attempts ruined by aftershock orgasms, you manage to get on your feet. Cradling your massive cum-belly, you gingerly waddle to your waiting bath. You look like you are ready to burst with triplets; imagine what the public would say if they saw you in this state. <<else>> - Taking the hose and attaching your favorite cockhead to it, you eagerly drag it to your bed and make yourself comfortable. You waste no time driving it into your aching cunt. With every thrust, you jet massive bursts of cum into your empty womb, swelling yourself more and more as your pleasure rises, until you reach your climax and unleash your "lover"'s pent up load into yourself. Patting your taut, overfilled belly, you roll over onto your back so that you may tease your<<if $PC.boobs > 0>> breasts,<</if>><<if $PC.dick > 0>> dick,<</if>> belly and pussy. If anyone saw you, they would swear your were on the verge of delivering sextuplets. You made sure to schedule this block for absolute privacy, so no one should disturb you while you play with your bloated body. Once you are exhausted and drained of your contents, you head for the showers and to get a servant to clean up your bed — from the slave you enjoyed with the cum hose, of course. + Taking the hose and attaching your favorite cockhead to it, you eagerly drag it to your bed and make yourself comfortable. You waste no time driving it into your aching cunt. With every thrust, you jet massive bursts of cum into your empty womb, swelling yourself more and more as your pleasure rises, until you reach your climax and unleash your "lover"'s pent up load into yourself. Patting your taut, overfilled belly, you roll over onto your back so that you may tease your<<if $PC.boobs > 0>> breasts,<</if>><<if $PC.dick > 0>> dick,<</if>> belly, and pussy. If anyone saw you, they would swear your were on the verge of delivering sextuplets. You made sure to schedule this block for absolute privacy, so no one should disturb you while you play with your bloated body. Once you are exhausted and drained of your contents, you head for the showers and to get a slave to clean up your bed — the same slave whose cum you just enjoyed with the hose, of course. <</if>> diff --git a/src/pregmod/fSlaveFeed.tw b/src/pregmod/fSlaveFeed.tw index fa9d3cc10f8eeecc48056aae99b41f54552c4001..a0ee8e9477cb6d0c3953bce4cb758a149d3c719f 100644 --- a/src/pregmod/fSlaveFeed.tw +++ b/src/pregmod/fSlaveFeed.tw @@ -13,10 +13,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $milkTap 2 0>> + <<= SlaveArt($milkTap, 2, 0)>> </div> </div> <</if>> @@ -35,7 +35,7 @@ The first necessary step is to prepare the milk cow and _his2 udders. This is very easy, as $milkTap.slaveName blankly follows your every will. Combined with _his2 instinct to relieve the pressure in _his2 breasts, _he2 is simple to position. <<elseif $milkTap.rivalryTarget == $activeSlave.ID>> - This is rather easy, as $milkTap.slaveName wants to see $activeSlave.slaveName's belly swell painfully as $he is force-fed _his2 milk. <<if $milkTap.lactation > 1>>$he is practically gushing milk with excitement<<else>>It takes minimal effort to get _his2 milk flowing<</if>>. + This is rather easy, as $milkTap.slaveName wants to <<if canSee($milkTap)>>see<<else>>feel<</if>> $activeSlave.slaveName's belly swell painfully as $he is force-fed _his2 milk. <<if $milkTap.lactation > 1>>$he is practically gushing milk with excitement<<else>>It takes minimal effort to get _his2 milk flowing<</if>>. <<elseif $milkTap.relationshipTarget == $activeSlave.ID>> This is rather easy, as $milkTap.slaveName @@ -394,7 +394,7 @@ The first necessary step is to prepare the cum slave and $his cock and balls. This is very easy, as $milkTap.slaveName blankly follows your every will. Combined with _his2 instinct to relieve the building pressure in _his2 loins, _he2 is simple to position. <<elseif $milkTap.rivalryTarget == $activeSlave.ID>> - This is rather easy, as $milkTap.slaveName wants to see $activeSlave.slaveName's belly swell painfully as $he is forced to suck down _his2 huge loads. + This is rather easy, as $milkTap.slaveName wants to <<if canSee($milkTap)>>see<<else>>feel<</if>> $activeSlave.slaveName's belly swell painfully as $he is forced to suck down _his2 huge loads. <<elseif $milkTap.relationshipTarget == $activeSlave.ID>> This is rather easy, as $milkTap.slaveName diff --git a/src/pregmod/fSlaveSelfImpreg.tw b/src/pregmod/fSlaveSelfImpreg.tw index 632215f7fa863fed480b78db04c700a7fdc38549..3a63c9fc380827539aa2ca6adc1299029947acc0 100644 --- a/src/pregmod/fSlaveSelfImpreg.tw +++ b/src/pregmod/fSlaveSelfImpreg.tw @@ -78,7 +78,7 @@ <<if ($activeSlave.dick > 6)>> You can't tell if $he's relieved or disappointed when $his excessive size interferes, as usual, with $his erection, but an injection of vasodilators quickly makes the question moot. <</if>> - At your instruction, your personal assistant descends with a selection of toys to ensure quick ejaculation. Pleasure, lust, terror, and loathing play across $activeSlave.slaveName's face as $his arousal mounts and $his hips begin to buck. By the time $he begins to ejaculate, pleasure and lust have won out and $he throws $his head back in abandon as $his emission fills the cup in your hands. <<if ($activeSlave.eyes == -2)>>Although $he cannot see what you are doing, $his expression is rapt, almost dreamlike,<<else>>$He watches with rapt fascination<</if>> as you load the syringe with $his sperm, slide it into $his <<if $activeSlave.mpreg == 1>>ass<<else>>vagina<</if>>, and shoot the contents home, deep against $his waiting cervix. + At your instruction, your personal assistant descends with a selection of toys to ensure quick ejaculation. Pleasure, lust, terror, and loathing play across $activeSlave.slaveName's face as $his arousal mounts and $his hips begin to buck. By the time $he begins to ejaculate, pleasure and lust have won out and $he throws $his head back in abandon as $his emission fills the cup in your hands. <<if !canSee($activeSlave)>>Although $he cannot see what you are doing, $his expression is rapt, almost dreamlike,<<else>>$He watches with rapt fascination<</if>> as you load the syringe with $his sperm, slide it into $his <<if $activeSlave.mpreg == 1>>ass<<else>>vagina<</if>>, and shoot the contents home, deep against $his waiting cervix. <<elseif (_coop)>> $activeSlave.slaveName is calm and docile as you place $him on a bench, and produce a sample container and syringe. With no other option, $he throws back $his head and enjoys the stimulation as your personal assistant, at your instruction, begins stimulating $him to orgasm. When $he ejaculates, you carefully catch every drop in the sample cup, load the syringe, and inject the contents directly against $his cervix. <<else>> diff --git a/src/pregmod/incubator.tw b/src/pregmod/incubator.tw index 4edeaa68476a757be63724707df37fa443911e17..d6187aad71366ce1774c4e42fc5e091b11e5d0a3 100644 --- a/src/pregmod/incubator.tw +++ b/src/pregmod/incubator.tw @@ -36,148 +36,138 @@ Reserve an eligible mother-to-be's child to be placed in a tank upon birth. Of $ ** So, I borrowed the sorting list and dropped a few options here. */ <<if (0 < _SL)>> - <<set $sortIncubatorList = $sortIncubatorList || 'Unsorted'>> - <br>//Sorting:// ''<span id="qlIncubatorSort">$sortIncubatorList</span>.'' - <<link "Sort by Name">> - <<set $sortIncubatorList = 'Name'>> - <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> - <<script>> - sortIncubatorPossiblesByName(); - <</script>> - <</link>> | - <<link "Sort by Reserved Incubator Spots">> - <<set $sortIncubatorList = 'Reserved Incubator Spots'>> - <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> - <<script>> - sortIncubatorPossiblesByReservedSpots(); - <</script>> - <</link>> | - <<link "Sort by Pregnancy Week">> - <<set $sortIncubatorList = 'Pregnancy Week'>> - <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> - <<script>> - sortIncubatorPossiblesByPregnancyWeek(); - <</script>> - <</link>> | - <<link "Sort by Number of Children">> - <<set $sortIncubatorList = 'Number of Children'>> - <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> - <<script>> - sortIncubatorPossiblesByPregnancyCount(); - <</script>> - <</link>> - <br> + <<set $sortIncubatorList = $sortIncubatorList || 'Unsorted'>> + <br>//Sorting:// ''<span id="qlIncubatorSort">$sortIncubatorList</span>.'' + <<link "Sort by Name">> + <<set $sortIncubatorList = 'Name'>> + <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> + <<script>> + sortIncubatorPossiblesByName(); + <</script>> + <</link>> | + <<link "Sort by Reserved Incubator Spots">> + <<set $sortIncubatorList = 'Reserved Incubator Spots'>> + <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> + <<script>> + sortIncubatorPossiblesByReservedSpots(); + <</script>> + <</link>> | + <<link "Sort by Pregnancy Week">> + <<set $sortIncubatorList = 'Pregnancy Week'>> + <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> + <<script>> + sortIncubatorPossiblesByPregnancyWeek(); + <</script>> + <</link>> | + <<link "Sort by Number of Children">> + <<set $sortIncubatorList = 'Number of Children'>> + <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>> + <<script>> + sortIncubatorPossiblesByPregnancyCount(); + <</script>> + <</link>> + <br> <</if>> <div id="qlIncubator"> <<for _u = 0; _u < _SL; _u++>> <<setLocalPronouns $slaves[_u]>> <<if $slaves[_u].preg > 0 && $slaves[_u].broodmother == 0 && $slaves[_u].pregKnown == 1 && $slaves[_u].eggType == "human">> - <<if ($slaves[_u].assignment == "work in the dairy" && $dairyPregSetting > 0) || $activeSlave.assignment == "be your agent" || $activeSlave.assignment == "live with your agent">> - <<else>> - <<set _slaveId = "slave-" + $slaves[_u].ID>> - <<set _WL = $slaves[_u].womb.length>> - <<set _reservedIncubator = WombReserveCount($slaves[_u], "incubator")>> - <<set _reservedNursery = WombReserveCount($slaves[_u], "nursery")>> - <<set _pregWeek = $slaves[_u].pregWeek>> - <<set _slaveName = SlaveFullName($slaves[_u])>> - <div class="possible" @id="_slaveId" @data-preg-count="_pregCount" @data-reserved-spots="_reservedIncubator" @data-preg-week="_pregWeek" @data-name="_slaveName"> - <<print "[[_slaveName|Long Slave Description][$activeSlave = $slaves[" + _u + "], $nextLink = passage()]]">> is $slaves[_u].pregWeek week<<if $slaves[_u].pregWeek > 1>>s<</if>> pregnant with - <<if $slaves[_u].pregSource == 0 || $slaves[_u].preg <= 5>>someone's<<if $slaves[_u].preg <= 5>>, though it is too early to tell whose,<</if>> - <<elseif $slaves[_u].pregSource == -1>>your - <<elseif $slaves[_u].pregSource == -2>>a citizen's - <<elseif $slaves[_u].pregSource == -3>>your Master's - <<elseif $slaves[_u].pregSource == -7>>the lab's - <<elseif $slaves[_u].pregSource == -9>>the Futanari Sisters' + <<if ($slaves[_u].assignment == "work in the dairy" && $dairyPregSetting > 0) || $activeSlave.assignment == "be your agent" || $activeSlave.assignment == "live with your agent">> <<else>> - <<set _t = $slaveIndices[$slaves[_u].pregSource]>> - <<if def _t>> - <<print $slaves[_t].slaveName>>'s - <</if>> - <</if>> - <<if _WL > 1>>_WL babies<<else>>baby<</if>>. - <<if _reservedIncubator > 0>> - <<set _childrenReserved = 1>> - <<if _WL == 1>> - $His child will be placed in $incubatorName. - <<elseif _reservedIncubator < _WL>> - _reservedIncubator of $his children will be placed in $incubatorName. - <<elseif _WL == 2>> - Both of $his children will be placed in $incubatorName. + <<set _slaveId = "slave-" + $slaves[_u].ID>> + <<set _WL = $slaves[_u].womb.length>> + <<set _reservedIncubator = WombReserveCount($slaves[_u], "incubator")>> + <<set _reservedNursery = WombReserveCount($slaves[_u], "nursery")>> + <<set _pregWeek = $slaves[_u].pregWeek>> + <<set _slaveName = SlaveFullName($slaves[_u])>> + <div class="possible" @id="_slaveId" @data-preg-count="_pregCount" @data-reserved-spots="_reservedIncubator" @data-preg-week="_pregWeek" @data-name="_slaveName"> + <<print "[[_slaveName|Long Slave Description][$activeSlave = $slaves[" + _u + "], $nextLink = passage()]]">> is $slaves[_u].pregWeek week<<if $slaves[_u].pregWeek > 1>>s<</if>> pregnant with + <<if $slaves[_u].pregSource == 0 || $slaves[_u].preg <= 5>>someone's<<if $slaves[_u].preg <= 5>>, though it is too early to tell whose,<</if>> + <<elseif $slaves[_u].pregSource == -1>>your + <<elseif $slaves[_u].pregSource == -2>>a citizen's + <<elseif $slaves[_u].pregSource == -3>>your Master's + <<elseif $slaves[_u].pregSource == -4>>another arcology owner's + <<elseif $slaves[_u].pregSource == -5>>your client's + <<elseif $slaves[_u].pregSource == -6>>the Societal Elite's + <<elseif $slaves[_u].pregSource == -7>>the lab's + <<elseif $slaves[_u].pregSource == -9>>the Futanari Sisters' <<else>> - All _reservedIncubator of $his children will be placed in $incubatorName. - <</if>> - <<if (_reservedIncubator + _reservedNursery < _WL) && ($reservedChildren < $freeTanks)>> - <br> - <<print "[[Keep another child|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> - <<if _reservedIncubator > 0>> - | <<print "[[Keep one less child|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> + <<set _t = $slaveIndices[$slaves[_u].pregSource]>> + <<if def _t>> + <<print $slaves[_t].slaveName>>'s <</if>> - <<if _reservedIncubator > 1>> - | <<print "[[Keep none of " + $his + " children|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> + <</if>> + <<if _WL > 1>>_WL babies<<else>>baby<</if>>. + <<if _reservedIncubator > 0>> + <<set _childrenReserved = 1>> + <<if _WL == 1>> + $His child will be placed in $incubatorName. + <<elseif _reservedIncubator < _WL>> + _reservedIncubator of $his children will be placed in $incubatorName. + <<elseif _WL == 2>> + Both of $his children will be placed in $incubatorName. + <<else>> + All _reservedIncubator of $his children will be placed in $incubatorName. <</if>> - <<if ($reservedChildren + _WL - _reservedIncubator) <= $freeTanks>> - | <<print "[[Keep the rest of " + $his + " children|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> + <<if (_reservedIncubator + _reservedNursery < _WL) && ($reservedChildren < $freeTanks)>> + <br> + <<print "[[Keep another child|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> + <<if _reservedIncubator > 0>> + | <<print "[[Keep one less child|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> + <</if>> + <<if _reservedIncubator > 1>> + | <<print "[[Keep none of " + $his + " children|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> + <</if>> + <<if ($reservedChildren + _WL - _reservedIncubator) <= $freeTanks>> + | <<print "[[Keep the rest of " + $his + " children|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> + <</if>> + <<elseif (_reservedIncubator == _WL) || ($reservedChildren == $freeTanks) || (_reservedIncubator + _reservedNursery == _WL)>> + <br> + <<print "[[Keep one less child|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> + <<if _reservedIncubator > 1>> + | <<print "[[Keep none of " + $his + " children|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> + <</if>> <</if>> - <<elseif (_reservedIncubator == _WL) || ($reservedChildren == $freeTanks) || (_reservedIncubator + _reservedNursery == _WL)>> - <br> - <<print "[[Keep one less child|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> - <<if _reservedIncubator > 1>> - | <<print "[[Keep none of " + $his + " children|Incubator][WombCleanGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> + <<elseif ($reservedChildren < $freeTanks)>> + <<if _WL - _reservedNursery == 0>> + //$His children are already reserved for $nurseryName// + <br> + <<print "[[Keep " + $his + " " + ((_WL > 1) ? "children" : "child") + " here instead|Incubator][WombChangeReserveType($slaves[" + _u + "], 'nursery', 'incubator')]]">> + <<else>> + You have <<if $freeTanks == 1>>an<</if>> @@.lime;available aging tank<<if $freeTanks > 1>>s<</if>>.@@ + <br> + <<print "[[Keep "+ ((_WL > 1) ? "a" : "the") +" child|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> + <<if (_WL > 1) && ($reservedChildren + _WL - _reservedIncubator) <= $freeTanks>> + | <<print "[[Keep all of " + $his + " children|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> + <</if>> <</if>> - <</if>> - <<elseif ($reservedChildren < $freeTanks)>> - <<if _WL - _reservedNursery == 0>> - //$His children are already reserved for $nurseryName// - <br> - <<print "[[Keep " + $his + " " + ((_WL > 1) ? "children" : "child") + " here instead|Incubator][WombChangeReserveType($slaves[" + _u + "], 'nursery', 'incubator')]]">> - <<else>> - You have <<if $freeTanks == 1>>an<</if>> @@.lime;available aging tank<<if $freeTanks > 1>>s<</if>>.@@ + <<elseif $reservedChildren == $freeTanks>> <br> - <<print "[[Keep "+ ((_WL > 1) ? "a" : "the") +" child|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 1)]]">> - <<if (_WL > 1) && ($reservedChildren + _WL - _reservedIncubator) <= $freeTanks>> - | <<print "[[Keep all of " + $his + " children|Incubator][WombAddToGenericReserve($slaves[" + _u + "], 'incubator', 9999)]]">> - <</if>> + You have @@.red;no room for $his offspring.@@ <</if>> - <<elseif $reservedChildren == $freeTanks>> - <br> - You have @@.red;no room for $his offspring.@@ + <<set _eligibility = 1>> + </div> <</if>> - <<set _eligibility = 1>> - </div> - <</if>> <</if>> <</for>> </div> <<script>> - $('div#qlIncubator').ready(sortIncubatorPossiblesByPreviousSort); + $('div#qlIncubator').ready(sortIncubatorPossiblesByPreviousSort); <</script>> <<if _eligibility == 0>> <br> //You have no pregnant slaves bearing eligible children.// <</if>> -<<if $PC.pregKnown == 1 && $PC.pregSource != -6>> +<<if $PC.pregKnown == 1 && ($arcologies[0].FSRestart == "unset" || $eugenicsFullControl == 1 || ($PC.pregSource != -1 && $PC.pregSource != -6))>> <<set _WL = $PC.womb.length>> <<set _reservedIncubator = WombReserveCount($PC, "incubator")>> <<set _reservedNursery = WombReserveCount($PC, "nursery")>> <br>''@@.pink;You're pregnant@@'' and going to have - <<switch _WL>> - <<case 1>> + <<if _WL == 1>> a baby. - <<case 2>> - twins. - <<case 3>> - triplets. - <<case 4>> - quadruplets. - <<case 5>> - quintuplets. - <<case 6>> - sextuplets. - <<case 7>> - septuplets. - <<case 8>> - octuplets. - <</switch>> + <<else>> + <<print pregNumberName(_WL, 2)>>. + <</if>> <<if (_reservedIncubator > 0)>> <<set _childrenReserved = 1>> <<if _WL == 1>> diff --git a/src/pregmod/killSlave.tw b/src/pregmod/killSlave.tw index 05cd865d023a80e2750f97e381656cf206a26c3c..d58098bd4c5d61893d49f96ed549cc6423595ca1 100644 --- a/src/pregmod/killSlave.tw +++ b/src/pregmod/killSlave.tw @@ -79,8 +79,7 @@ <<else>> $He simply nods, not being able to see <</if>> - - you reach behind your desk and pull out your trusty _weapon<<if $activeSlave.fuckdoll <= 0>><<if $activeSlave.fetish != "mindbroken">>, at which point abject fear fills $his face. $He immediately <<if canWalk($activeSlave)>>drops to $his knees and <</if>>begins openly begging for you to have mercy.<<else>>, to which $he still doesn't respond.<</if>><<else>>.<</if>> +you <<if canHear($activeSlave)>>quietly <</if>>reach behind your desk and pull out your trusty _weapon<<if $activeSlave.fuckdoll <= 0 && canSee($activeSlave)>><<if $activeSlave.fetish != "mindbroken">>, at which point abject fear fills $his face. $He immediately <<if canWalk($activeSlave)>>drops to $his knees and <</if>>begins openly begging for you to have mercy.<<else>>, to which $he still doesn't respond.<</if>><<else>>.<</if>> <<if $killChoice == -1>> <br> diff --git a/src/pregmod/managePersonalAffairs.tw b/src/pregmod/managePersonalAffairs.tw index 87ccd5ef4323b50020dd5fff2319a80c6f0cd05a..dc151229c194632bd7a9d2d9c04e1d18af3b00ad 100644 --- a/src/pregmod/managePersonalAffairs.tw +++ b/src/pregmod/managePersonalAffairs.tw @@ -390,13 +390,13 @@ __Contraceptives and Fertility__ <br> <span id="miniscene"> -<<if $PC.preg < 6 && $PC.pregKnown == 1 && $PC.pregSource != -6>> +<<if $PC.preg < 6 && $PC.pregKnown == 1 && ($arcologies[0].FSRestart == "unset" || $eugenicsFullControl == 1 || ($PC.pregSource != -1 && $PC.pregSource != -6))>> Your period is late, so the first thing you do is test yourself for a potential pregnancy: @@.lime;you are pregnant.@@ <<link "Abort your child">><<replace "#miniscene">><<set $PC.preg = 0, $PC.pregType = 0, $PC.pregSource = 0, $PC.pregKnown = 0, $PC.pregWeek = 0>><<set WombFlush($PC)>><<print "You take a syringe filled with abortifacients and make yourself comfortable. Injecting the vial through your belly into your womb, your close your eyes and wait for what is coming. Once you feel it is over, you clean yourself up and go on your way, child free.">><br> <</replace>><</link>> <<elseif $PC.labor == 1>> You are beginning to feel contractions; you'll be giving birth soon. <<elseif $PC.preg >= 39>> Your due date is looming, but your <<if $PC.pregType > 1>>children don't<<else>>child doesn't<</if>> seem to be interested in coming out just yet. [[Induce childbirth|Manage Personal Affairs][$PC.labor = 1]] -<<elseif $PC.pregKnown == 1 && $PC.pregSource != -6>> +<<elseif $PC.pregKnown == 1 && ($arcologies[0].FSRestart == "unset" || $eugenicsFullControl == 1 || ($PC.pregSource != -1 && $PC.pregSource != -6))>> You're pregnant, something rather unbecoming for an arcology owner. <<link "Abort your child">><<replace "#miniscene">><<set $PC.preg = 0, $PC.pregWeek = -2, $PC.pregType = 0, $PC.pregSource = 0, $PC.belly = 0, $PC.pregKnown = 0>><<set WombFlush($PC)>><<print "You take a syringe filled with abortifacients and make yourself comfortable. Injecting the vial through your belly into your womb, your close your eyes and wait for what is coming. Once you feel it is over, you clean yourself up and go on your way, child free.">><br> <</replace>><</link>> <</if>> </span> @@ -411,7 +411,7 @@ In total, you have given birth to: <br><<print $PC.birthElite>> bab<<if $PC.birthElite > 1>>ies<<else>>y<</if>> for the Societal Elite. <</if>> <<if $PC.birthMaster > 0>> - <br><<print $PC.birthMaster>> bab<<if $PC.birthMaster > 1>>ies<<else>>y<</if>> for your former master. + <br><<print $PC.birthMaster>> bab<<if $PC.birthMaster > 1>>ies<<else>>y<</if>> for your former Master. <</if>> <<if $PC.birthClient > 0>> <br><<print $PC.birthClient>> bab<<if $PC.birthClient > 1>>ies<<else>>y<</if>> from clients you've slept with. @@ -461,7 +461,7 @@ In total, you have given birth to: You're having morning sickness. <<elseif $PC.preg > 1>> You've missed your period. This could be bad. -<<elseif $PC.preg > 0 && $PC.pregSource != -6>> +<<elseif $PC.preg > 0 && ($arcologies[0].FSRestart == "unset" || $eugenicsFullControl == 1 || ($PC.pregSource != -1 && $PC.pregSource != -6))>> Your fertile pussy has been thoroughly seeded; there is a chance you are pregnant. <<link "Pop some morning after pills">><<set $PC.preg = 0, $PC.pregWeek = 0, $PC.pregType = 0, $PC.pregSource = 0, $PC.pregKnown = 0>><<set WombFlush($PC)>><<goto "Manage Personal Affairs">><</link>> <<elseif $PC.pregWeek < 0>> You're still recovering from your recent pregnancy. @@ -543,7 +543,7 @@ In total, you have given birth to: <br><<print num($PC.birthElite)>> bab<<if $PC.birthElite > 1>>ies<<else>>y<</if>> for the Societal Elite. <</if>> <<if $PC.birthMaster > 0>> - <br><<print num($PC.birthMaster)>> bab<<if $PC.birthMaster > 1>>ies<<else>>y<</if>> for your former master. + <br><<print num($PC.birthMaster)>> bab<<if $PC.birthMaster > 1>>ies<<else>>y<</if>> for your former Master. <</if>> <<if $PC.birthClient > 0>> <br><<print num($PC.birthOther)>> bab<<if $PC.birthOther > 1>>ies<<else>>y<</if>> from clients you've slept with. diff --git a/src/pregmod/newChildIntro.tw b/src/pregmod/newChildIntro.tw index 0f19f69654a0124b344627f83c869cb87829a308..7553c5d0118344051273749ef69c0015d3eeafbb 100644 --- a/src/pregmod/newChildIntro.tw +++ b/src/pregmod/newChildIntro.tw @@ -704,7 +704,7 @@ You slowly strip down, gauging $his reactions to your show, until you are fully <<else>> up $his poor little butthole, making the poor $girl struggle desperately with anal pain. <</if>> - You take $him, hard, while passersby stare at $him as $he gets pounded over a rail. $He takes the fuck obediently, all the while observing the passing spectators. $He might not be a humiliation fetishist, but $he is @@.hotpink;willing to submit@@ to being used as a sex slave in public and may even grow to enjoy it. + You take $him, hard, while passersby stare at $him as $he gets pounded over a rail. $He takes the fuck obediently, all the while <<if canSee($activeSlave)>>observing<<elseif canHear($activeSlave)>>overhearing<<else>>imagining<</if>> the passing spectators. $He might not be a humiliation fetishist, but $he is @@.hotpink;willing to submit@@ to being used as a sex slave in public and may even grow to enjoy it. <<set $activeSlave.devotion += 4>> <<if random(1,100) > 60 && $activeSlave.fetish == "none">> <<set $activeSlave.fetish = "humiliation">> @@ -857,7 +857,7 @@ You slowly strip down, gauging $his reactions to your show, until you are fully <<= FutureSocieties.Change("GenderRadicalist", 2)>> <</if>> <<if $arcologies[0].FSRestart != "unset" && $activeSlave.pubertyXY == 1>> - Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that all only the elite should breed. + Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that only the Elite should breed. <<= FutureSocieties.Change("Eugenics", 2)>> <</if>> <<set $activeSlave.devotion -= 25>> @@ -923,7 +923,7 @@ You slowly strip down, gauging $his reactions to your show, until you are fully <<= FutureSocieties.Change("GenderRadicalist", 2)>> <</if>> <<if $arcologies[0].FSRestart != "unset">> - Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that all only the elite should breed. + Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that only the Elite should breed. <<= FutureSocieties.Change("Eugenics", 2)>> <</if>> <<set $activeSlave.devotion -= 25>> @@ -1014,7 +1014,7 @@ You slowly strip down, gauging $his reactions to your show, until you are fully <<= FutureSocieties.Change("GenderRadicalist", 2)>> <</if>> <<if $arcologies[0].FSRestart != "unset" && $activeSlave.pubertyXY == 1>> - Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that all only the elite should breed. + Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that only the Elite should breed. <<= FutureSocieties.Change("Eugenics", 2)>> <</if>> <</replace>> @@ -1046,7 +1046,7 @@ You slowly strip down, gauging $his reactions to your show, until you are fully <<set $activeSlave.health -= 10>> <<set $activeSlave.trust -= 100>> <<replace "#result">> - You escort $him to the remote surgery and strap $him face-up with $his stomach bare. $He doesn't understand what's coming for a while, even giggling as $his belly is carefully cleaned and disinfected. $He begins to panic at the sight of the approaching surgical manipulators, screaming out as they cut into $his abdomen. $He squeals in horror as $his womb and ovaries are extracted before $his eyes. $He will never bear children, and will @@.mediumorchid;remember $his status@@ with every fucking $he receives. Your absolute power is rightfully @@.gold;terrifying@@ to $his undeveloped mind. + You escort $him to the remote surgery and strap $him face-up with $his stomach bare. $He doesn't understand what's coming for a while, even giggling as $his belly is carefully cleaned and disinfected. $He begins to panic at the <<if canSee($activeSlave)>>sight<<elseif canHear($activeSlave)>>sound<<else>>touch<</if>> of the approaching surgical manipulators, screaming out as they cut into $his abdomen. $He squeals in horror as $his womb and ovaries are extracted before $his eyes. $He will never bear children, and will @@.mediumorchid;remember $his status@@ with every fucking $he receives. Your absolute power is rightfully @@.gold;terrifying@@ to $his undeveloped mind. <</replace>> <</link>> <</if>> @@ -1151,7 +1151,13 @@ You slowly strip down, gauging $his reactions to your show, until you are fully <br><<link "Give $him a lewd tramp stamp">> <<set $activeSlave.stampTat = either("advertisements", "degradation", "rude words")>> <<replace "#result">> - You bring $him down to the studio, lay the compliant $girl in the chair face-down, and select a sufficiently lewd pattern to decorate $his lower back. When the automated tattooing is done, a topical application of analgesics leaves $him with nothing more than a slight ache there. When allowed to stand, $he immediately turns $his back to one of the studio's full length mirrors and cranes around to gawk at the picture just over $his butt. $He wiggles $his rear and giggles at the drawing moving along with it. It seems $he @@.hotpink;enjoys it.@@ + You bring $him down to the studio, lay the compliant $girl in the chair face-down, and select a sufficiently lewd pattern to decorate $his lower back. When the automated tattooing is done, a topical application of analgesics leaves $him with nothing more than a slight ache there. When + <<if canSee($activeSlave)>> + allowed to stand, $he immediately turns $his back to one of the studio's full length mirrors and cranes around to gawk at the picture just over $his butt. $He wiggles $his rear and giggles at the drawing moving along with it. + <<else>> + you touch the are of skin around $his new tattoo, $activeSlave.slaveName, apparently finding this ticklish, starts into an uncontrollable giggling fit that you are unable to snap $him out of for a few minutes. + <</if>> + It seems $he @@.hotpink;enjoys it.@@ <<set $activeSlave.devotion += 5>> <</replace>> <</link>> diff --git a/src/pregmod/pRaped.tw b/src/pregmod/pRaped.tw index 526d4ca65c7e2f39f1aeff52a93d23db0887e90b..d3afd193be23cd3f0a723adcd07d72ad2d1b590c 100644 --- a/src/pregmod/pRaped.tw +++ b/src/pregmod/pRaped.tw @@ -129,13 +129,13 @@ While returning from a meeting with a prospective investor, an unfortunate wrong <</if>> <<case "servant">> <<if $PC.boobs > 0>> - "Nice and supple. Bet your master spent a fortune making these so nice," he smirks as he gropes your breasts. + "Nice and supple. Bet your Master spent a fortune making these so nice," he smirks as he gropes your breasts. <</if>> <<if $PC.preg >= 20 || $PC.belly >= 5000>> - "Holding on to your master's final gift are you?" he chuckles as he rubs your pregnant belly. + "Holding on to your Master's final gift are you?" he chuckles as he rubs your pregnant belly. <</if>> <<if $PC.dick > 0>> - "When your master first undressed you, what did he think of his 'girl'?" he mocks as he flicks the tip of your stiffening cock. + "When your Master first undressed you, what did he think of his 'girl'?" he mocks as he flicks the tip of your stiffening cock. <</if>> <<case "BlackHat">> <<if $PC.boobs > 0>> @@ -175,22 +175,22 @@ While returning from a meeting with a prospective investor, an unfortunate wrong <<if $PC.boobs > 0>> "Spared no expenses for these babies, did you?" $he smirks as $he gropes your breasts. <</if>> - $He slips $his hand down your pants; "Now there's the money maker!" + $He slips $his hand down your pants. "Now there's the money maker!" <<case "capitalist">> <<if $PC.boobs > 0>> "Ever wonder if they were listening to you or just ogling the man with the breasts?" $he smirks as $he gropes your breasts. <</if>> - $He slips $his hand down your pants; "Now that explains how you were so successful!" + $He slips $his hand down your pants. "Now that explains how you were so successful!" <<case "engineer">> <<if $PC.boobs > 0>> "How did you get any work done with these hanging over your designs?" $he smirks as $he gropes your breasts. <</if>> - $He slips $his hand down your pants; "I see what kind of tools you like. Big and strong!" + $He slips $his hand down your pants. "I see what kind of tools you like. Big and strong!" <<case "medicine">> <<if $PC.boobs > 0>> "I'm sure you had quite the number of clients after a pair of these," $he smirks as $he gropes your breasts. <</if>> - $He slips $his hand down your pants; "Huh, I wonder if that's real..." + $He slips $his hand down your pants. "Huh, I wonder if that's real..." <<case "celebrity">> <<if $PC.boobs > 0>> "Nice and supple. Just like I'd expect from a man sporting tits." $he smirks as $he gropes your breasts. @@ -200,22 +200,22 @@ While returning from a meeting with a prospective investor, an unfortunate wrong <<if $PC.boobs > 0>> "With these hanging out, how many men tried to pick you up?" $he smirks as $he gropes your breasts. <</if>> - $He slips $his hand down your pants; "Now there's the money maker!" + $He slips $his hand down your pants. "Now there's the money maker!" <<case "servant">> <<if $PC.boobs > 0>> "Did your Master even ask before he stuck you with these?" $he smirks as $he gropes your breasts. <</if>> - $He slips $his hand down your pants; "Now that's surprising. I expected something smaller." + $He slips $his hand down your pants. "Now that's surprising. I expected something smaller." <<case "BlackHat">> <<if $PC.boobs > 0>> "Nice and supple. What are the odds that I can find these babies on the internet?" $he smirks as $he gropes your breasts. <</if>> - $He slips $his hand down your pants; "You wouldn't mind if I download a few files now would you? Well, not that it matters." + $He slips $his hand down your pants. "You wouldn't mind if I download a few files now would you? Well, not that it matters." <</switch>> Satisfied, $he pulls your cock out of its increasingly cramped confines. "Look at him grow, he knows what comes next..." $He teases as $he pushes you to the ground and climbs on top of you. <br><br> $He lines $himself up with the tip of your dick before taking its entire length into $himself. $He lets out a lust filled moan as $he begins to bounce on your traitorous member. You can do nothing to stop $him from riding you to climax, so you just enjoy the sight of $his breasts bouncing to $his pace. As you feel your orgasm approaching, you try to time it so you can slip out of $him just before you blow your load, but you have no such luck. - "You really think I'd let you spoil my plans?" $He asks as $he grinds against you, making sure you cum deep in $his pussy. $He leans back and massages $his <<if $PC.ballsImplant > 2>>taut <</if>>stomach, savoring the sensation of your seed seeping into $him. "That's it, make me a mommy." $He leans in close and you pop free of $his snatch. "Be a good boy and make this arcology a nice place for your bastard. I want to retire in luxury." $He blows you a kiss as $he stuffs a plug up $his vagina, redresses and heads on $his way. By the time you loosen your bindings, $he is long gone. + "You really think I'd let you spoil my plans?" $he asks as $he grinds against you, making sure you cum deep in $his pussy. $He leans back and massages $his <<if $PC.ballsImplant > 2>>taut <</if>>stomach, savoring the sensation of your seed seeping into $him. "That's it, make me a mommy." $He leans in close and you pop free of $his snatch. "Be a good boy and make this arcology a nice place for your bastard. I want to retire in luxury." $He blows you a kiss as $he stuffs a plug up $his vagina, redresses and heads on $his way. By the time you loosen your bindings, $he is long gone. <br><br> It would be prudent to up security in your arcology, that or take a guard along when you leave the penthouse. You can't allow such an indignity to happen again, nor do you need the stress of a bastard trying to seize control of your estate when you want to retire, but you wouldn't mind having your way with $him if you get the chance. <</if>> diff --git a/src/pregmod/rePregInventor.tw b/src/pregmod/rePregInventor.tw index 78e4cc98f042df73cb7327856d35efc977dec3ba..800cdc26841fceccc66c28ef0db744f5bdd1031d 100644 --- a/src/pregmod/rePregInventor.tw +++ b/src/pregmod/rePregInventor.tw @@ -10,9 +10,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -376,7 +376,7 @@ <<else>> slender ass <</if>> - and then shakes $his booty, glancing over $his shoulder to see how you react. You motion for $him to continue and $he turns around and approaches you, stopping only when $his massive belly is looming in front of you, almost touching you. You look over the apex of $his stomach to consider the "invention" $he's developed to enable $his miraculous mobility. + and then shakes $his booty, glancing over $his shoulder to <<if canSee($activeSlave)>>see<<else>>judge<</if>> how you react. You motion for $him to continue and $he turns around and approaches you, stopping only when $his massive belly is looming in front of you, almost touching you. You look over the apex of $his stomach to consider the "invention" $he's developed to enable $his miraculous mobility. <br><br> A significant number of menial slaves have been repurposed and specially trained to aid your hyperbroodmother and $his incredible belly. These menials, <<if $arcologies[0].FSPaternalist > 60>> diff --git a/src/pregmod/reTheSirenStrikesBack.tw b/src/pregmod/reTheSirenStrikesBack.tw index 0ef43e7c1790daa0f85381229df10fa1cf450a45..e20c54071c97e29d9f9bea178f225a2f5fe5e996 100644 --- a/src/pregmod/reTheSirenStrikesBack.tw +++ b/src/pregmod/reTheSirenStrikesBack.tw @@ -44,9 +44,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -93,10 +93,10 @@ Several weeks have passed since you gained the musical prodigy and you couldn't <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _ssb 2 0>> + <<= SlaveArt(_ssb, 2, 0)>> </div> </div> <</if>> @@ -121,9 +121,9 @@ Several weeks have passed since you gained the musical prodigy and you couldn't /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -141,9 +141,9 @@ Several weeks have passed since you gained the musical prodigy and you couldn't /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/pregmod/saClothes.tw b/src/pregmod/saClothes.tw index 10d5e08d49a1497c82833cdac2527bc82d627ff6..02f47548c7877b03ebe02b767fea6da1c7ac3630 100644 --- a/src/pregmod/saClothes.tw +++ b/src/pregmod/saClothes.tw @@ -731,7 +731,7 @@ is a @@.hotpink;point of pride@@ for the ostentatious size queen. <<set $slaves[$i].devotion += 2>> <<else>> - @@.hotpink;breaks $him to sexual slavery@@ slightly. It also penetrates $his cervix causing $him tremendous discomfort, making $him a little @@.gold;less trusting@@ of you. + @@.hotpink;breaks $him to sexual slavery@@ slightly. It also penetrates $his cervix, causing $him tremendous discomfort, and making $him a little @@.gold;less trusting@@ of you. <<set $slaves[$i].devotion += 1>> <<set $slaves[$i].trust -= 1>> <</if>> @@ -747,7 +747,7 @@ <<if $slaves[$i].fuckdoll == 0>> <<if $slaves[$i].fetish != "mindbroken">> <<if ($slaves[$i].sexualQuirk == "size queen")>> - $He thinks of the massive dildo stretching out $his womanhood as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, truly anything, inside $his newly capacious cunt. + $He thinks of the massive dildo stretching out $his womanhood as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything — dicks, hands, truly anything — inside $his newly capacious cunt. <<set $slaves[$i].devotion += 4>> <<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>> $He gets off on the agony of having $his cunt @@.lime;permanently stretched@@ by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@ @@ -770,7 +770,7 @@ <<if $slaves[$i].fuckdoll == 0>> <<if $slaves[$i].fetish != "mindbroken">> <<if ($slaves[$i].sexualQuirk == "size queen")>> - $He thinks of the massive dildo stretching out $his womanhood and stomach as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, arms, truly anything, inside $his newly capacious cunt. + $He thinks of the massive dildo stretching out $his womanhood and stomach as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything — dicks, hands, arms, truly anything — inside $his newly capacious cunt. <<set $slaves[$i].devotion += 4>> <<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>> $He gets off on the agony of having $his cunt @@.lime;permanently stretched@@ and $his cervix penetrated by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@ @@ -836,7 +836,7 @@ <<if ($slaves[$i].buttplug != "none")>> <<if ($slaves[$i].buttplug == "plug") || ($slaves[$i].buttplug == "long plug")>> - <<if ["tail", "cat tail", "fox tail", "cow tail"].includes($slaves[$i].buttplugAttachment)>> + <<if ["cat tail", "cow tail", "fox tail", "tail"].includes($slaves[$i].buttplugAttachment)>> <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">> <<if $slaves[$i].anus < 1>> Constantly wearing a tail plug in $his virgin butthole @@.lime;stretches it out@@ and @@.gold;is a constant degrading reminder of $his submission.@@ @@ -874,7 +874,7 @@ <</if>> <</if>> <<elseif ($slaves[$i].buttplug == "large plug") || ($slaves[$i].buttplug == "long, large plug")>> - <<if ["tail", "cat tail", "fox tail", "cow tail"].includes($slaves[$i].buttplugAttachment)>> + <<if ["cat tail", "cow tail", "fox tail", "tail"].includes($slaves[$i].buttplugAttachment)>> <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">> <<if ($slaves[$i].anus < 2)>> The uncomfortable tailed plug in $his asshole @@ -940,7 +940,7 @@ <</if>> <</if>> <<elseif ($slaves[$i].buttplug == "huge plug") || ($slaves[$i].buttplug == "long, huge plug")>> - <<if ["tail", "cat tail", "fox tail", "cow tail"].includes($slaves[$i].buttplugAttachment)>> + <<if ["cat tail", "cow tail", "fox tail", "tail"].includes($slaves[$i].buttplugAttachment)>> <<if ($slaves[$i].anus < 4)>> <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">> <<if ($slaves[$i].sexualQuirk == "size queen")>> @@ -995,7 +995,7 @@ <</if>> <</if>> <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">> - <<if ["tail", "cat tail", "fox tail", "cow tail"].includes($slaves[$i].buttplugAttachment)>> + <<if ["cat tail", "cow tail", "fox tail", "tail"].includes($slaves[$i].buttplugAttachment)>> <<if ($slaves[$i].fetish == "humiliation") && ($slaves[$i].fetishKnown == 0)>> $He shows a surprising lack of resistance to the routine of having a tail inserted in $his ass each morning; $he seems to @@.lightcoral;naturally enjoy the humiliation.@@ <<set $slaves[$i].fetishKnown = 1>> diff --git a/src/pregmod/seBurst.tw b/src/pregmod/seBurst.tw index 5b0f77d8a756c3e638bda1487fd349da238f8bd0..ef6ebfb5ade0049755cf042456ff4940d12a7628 100644 --- a/src/pregmod/seBurst.tw +++ b/src/pregmod/seBurst.tw @@ -97,22 +97,8 @@ <<set _fathersReduced[_cb] += String(" brood of " + _num + " babies")>> <<elseif _num >= 10>> <<set _fathersReduced[_cb] += String(" impressive group of " + _num + " babies")>> - <<elseif _num == 9>> - <<set _fathersReduced[_cb] += " nonuplets">> - <<elseif _num == 8>> - <<set _fathersReduced[_cb] += " octuplets">> - <<elseif _num == 7>> - <<set _fathersReduced[_cb] += " septuplets">> - <<elseif _num == 6>> - <<set _fathersReduced[_cb] += " sextuplets">> - <<elseif _num == 5>> - <<set _fathersReduced[_cb] += " quintuplets">> - <<elseif _num == 4>> - <<set _fathersReduced[_cb] += " quadruplets">> - <<elseif _num == 3>> - <<set _fathersReduced[_cb] += " triplets">> - <<elseif _num == 2>> - <<set _fathersReduced[_cb] += " twins">> + <<else>> + <<set _fathersReduced[_cb] += String(" " + pregNumberName(_num, 2))>> <</if>> <</for>> diff --git a/src/pregmod/seFCTVremote.tw b/src/pregmod/seFCTVremote.tw index c30647cfb19c0b7b85e6ee7f9699f0e7e2e4c6d6..e6e093ed45acfbd34c9178df1abd4d68272d25f9 100644 --- a/src/pregmod/seFCTVremote.tw +++ b/src/pregmod/seFCTVremote.tw @@ -47,9 +47,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -145,7 +145,7 @@ You finger your new TV remote, as well as a second remote designed for... <i>oth <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _customer 2 0>> + <<= SlaveArt(_customer, 2, 0)>> </div> </div> <</if>> diff --git a/src/pregmod/seFCTVshows.tw b/src/pregmod/seFCTVshows.tw index 53971b625445df1da43f4b4c3bd1a2cca399da88..78eddb9e752b8e8508253c733790ddaa3c77fc04 100644 --- a/src/pregmod/seFCTVshows.tw +++ b/src/pregmod/seFCTVshows.tw @@ -93,10 +93,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _kirk 2 0>> + <<= SlaveArt(_kirk, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _jules 2 0>> + <<= SlaveArt(_jules, 2, 0)>> </div> </div> <</if>> @@ -128,7 +128,7 @@ <<set _model.shoes = "flats">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -143,10 +143,10 @@ <<set _jules.vaginalAccessory = "large dildo">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _kirk 2 0>> + <<= SlaveArt(_kirk, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _jules 2 0>> + <<= SlaveArt(_jules, 2, 0)>> </div> </div> <</if>> @@ -191,10 +191,10 @@ <<set _model.boobShape = "perky">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -570,7 +570,7 @@ <<set _model.clothes = "a maternity dress">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -613,7 +613,7 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _millie 2 0>> + <<= SlaveArt(_millie, 2, 0)>> </div> </div> <</if>> @@ -700,7 +700,7 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _millie 2 0>> + <<= SlaveArt(_millie, 2, 0)>> </div> </div> <</if>> @@ -735,7 +735,7 @@ <<set _model.shoes = "none">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -753,7 +753,7 @@ <<set _model.boobs = 750>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -773,7 +773,7 @@ <<set _model.dick = 2>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -804,10 +804,10 @@ <<set _model2.shoes = "heels">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _model2 2 0>> + <<= SlaveArt(_model2, 2, 0)>> </div> </div> <</if>> @@ -823,7 +823,7 @@ <<set _model.clothes = "a slave gown">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -856,10 +856,10 @@ <<set _model2.shoes = "flats">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _model2 2 0>> + <<= SlaveArt(_model2, 2, 0)>> </div> </div> <</if>> @@ -876,7 +876,7 @@ <<set _model2.hColor = "grey">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -891,7 +891,7 @@ <<set _model.shoes = "none">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _model 2 0>> + <<= SlaveArt(_model, 2, 0)>> </div> </div> <</if>> @@ -931,10 +931,10 @@ <<set _mike.clothes = "sport shorts">> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _mindy 2 0>> + <<= SlaveArt(_mindy, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _mike 2 0>> + <<= SlaveArt(_mike, 2, 0)>> </div> </div> <</if>> @@ -1509,13 +1509,13 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _hostess 2 0>> + <<= SlaveArt(_hostess, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _scientist 2 0>> + <<= SlaveArt(_scientist, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _nun 2 0>> + <<= SlaveArt(_nun, 2, 0)>> </div> </div> <</if>> diff --git a/src/pregmod/sePlayerBirth.tw b/src/pregmod/sePlayerBirth.tw index 410ad6eaa67bda7dfca8795f0bb8a3d4c1244c2e..969fe2f45281cc64f23cca6e71c9276852327c6e 100644 --- a/src/pregmod/sePlayerBirth.tw +++ b/src/pregmod/sePlayerBirth.tw @@ -9,7 +9,7 @@ PC.pregSource documentation 0 - unknown -1 - Player - self-impreg -2 - citizen --3 - former master +-3 - former Master -4 - male arc owner -5 - client -6 - Societal Elite @@ -64,12 +64,13 @@ PC.pregSource documentation <<set _babies.push("your client")>> <<elseif $PC.curBabies[_spb].fatherID == -6>> <<set _elite++>> + <<set _babies.push("the Societal Elite")>> <<elseif $PC.curBabies[_spb].fatherID == -7>> <<set _lab++>> <<set _babies.push("designer")>> <<elseif $PC.curBabies[_spb].fatherID == -9>> <<set _futaS++>> - <<set _babies.push("a Futanari Sister's")>> + <<set _babies.push("a Futanari Sister")>> <<else>> <<set _babyDaddy = $slaveIndices[$PC.curBabies[_spb].fatherID]>> <<if def _babyDaddy>> @@ -143,40 +144,27 @@ You arrange yourself to give birth, relaxing until your body urges you to begin <<if $Nurse != 0>> <<setLocalPronouns $Nurse>> You keep pushing and pushing, but your child is not coming out.<<if _concubinePresent == 1>> $Concubine.slaveName shifts to massaging your gravid middle<<if canTalk($Concubine)>>, while whispering words of encouragement into your ear<</if>>. Until $Nurse.slaveName shoos _him2 away so $he can take over and get this baby out of you.<</if>> $Nurse.slaveName was prepared for this possibility, adjusts your position and timings, and before long is holding your @@.lime;new baby <<if _gender == "XX">>girl<<else>>boy<</if>>@@ in $his arms. - <<if $PC.pregType == 8>> - But you aren't even close to done; your taut dome of a belly still houses another seven infants. You moan as the next child begins its decent; you'll be at this for awhile. If $Nurse.slaveName weren't here, you and your children would likely have perished. - <<elseif $PC.pregType > 4>> - But you aren't close to done; your taut dome of a belly still houses several infants. You moan as the next child begins its decent; you'll be at this for awhile. If $Nurse.slaveName weren't here, you and your children would likely have perished. - <<elseif $PC.pregType == 4>> - But you aren't close to done; your swollen belly still houses another three infants. You moan as the next child begins its decent; if $Nurse.slaveName weren't here, you and your children would likely have perished. + <<if $PC.pregType >= 8>> + But you're far from done; your taut dome of a belly still houses another <<print num($PC.pregType - 1)>> infants. You moan as the next child begins its descent; you'll be at this for awhile. If $Nurse.slaveName weren't here, you and your children would likely have perished. + <<elseif $PC.pregType >= 4>> + But you aren't close to done; your taut dome of a belly still houses another <<print num($PC.pregType - 1)>> infants. You moan as the next child begins its descent; you'll be at this for awhile. If $Nurse.slaveName weren't here, you and your children would likely have perished. <<elseif $PC.pregType == 3>> - But you aren't done; your swollen belly still houses another pair of infants. You moan as the next child begins its decent; if $Nurse.slaveName weren't here, you and your children would likely have perished. + But you aren't done; your swollen belly still houses another pair of infants. You moan as the next child begins its descent; if $Nurse.slaveName weren't here, you and your children would likely have perished. <<elseif $PC.pregType == 2>> But you aren't done; your rounded belly still houses another infant. You moan as they begin their decent; if $Nurse.slaveName weren't here, you and your children would likely have perished. <</if>> <<elseif $Bodyguard != 0>> <<setLocalPronouns $Bodyguard>> - You keep pushing and pushing, but your child is not coming out.<<if _concubinePresent == 1>> $Concubine.slaveName shifts to massaging your gravid middle<<if canTalk($Concubine)>>, while whispering words of encouragement into your ear<</if>>. _He2 begins to worry as _his2 lover weakens in front of _him2. $Bodyguard.slaveName quickly pulls _him2 away from you, fearing the worst.<</if>> $Bodyguard.slaveName read about this possibility and tries everything $he can to coax your child out. As time passes, $he notices your consciousness begin to fade as exhaustion kicks in. Fearing for your lives, and desperate to save you, $he draws $his sword from its sheath, hands unsteady from what $he is about to do. Carefully, $he slits your lower abdomen, allowing your baby-<<if $PC.pregType < 3>>filled<<elseif $PC.pregType < 5>>stuffed<<elseif $PC.pregType > 8>>packed<<else>>bursting<</if>> womb to pop out through the incision. Doing $his best, $he cuts open your uterus, pulls your child<<if $PC.pregType > 1>>ren<</if>> from you and severs the umbilical cord<<if $PC.pregType > 1>>s all at once<</if>>. + You keep pushing and pushing, but your child is not coming out.<<if _concubinePresent == 1>> $Concubine.slaveName shifts to massaging your gravid middle<<if canTalk($Concubine)>>, while whispering words of encouragement into your ear<</if>>. _He2 begins to worry as _his2 lover weakens in front of _him2. $Bodyguard.slaveName quickly pulls _him2 away from you, fearing the worst.<</if>> $Bodyguard.slaveName read about this possibility and tries everything $he can to coax your child out. As time passes, $he notices your consciousness begin to fade as exhaustion kicks in. Fearing for your lives, and desperate to save you, $he draws $his sword from its sheath, hands unsteady from what $he is about to do. Carefully, $he slits your lower abdomen, allowing your baby-<<if $PC.pregType < 3>>filled<<elseif $PC.pregType < 5>>stuffed<<elseif $PC.pregType < 8>>packed<<else>>bursting<</if>> womb to pop out through the incision. Doing $his best, $he cuts open your uterus, pulls your child<<if $PC.pregType > 1>>ren<</if>> from you and severs the umbilical cord<<if $PC.pregType > 1>>s all at once<</if>>. <br><br> You awake some time later in the remote surgery, your stomach extremely sore; you quickly realize you're no longer round with child. As you try to rise, $Bodyguard.slaveName stops you; $he hefts you into a bridal carry and takes you to a recovery room, before gently placing you into a warm bed, tucking you in, and hurrying out of the room. Before you can call out, $he returns carrying - <<switch _curBabies>> - <<case 1>> + <<if _curBabies == 1>> @@.lime;your baby <<if _gender == "XX">>girl<<else>>boy<</if>>@@ - <<case 2>> - @@.lime;your newborn twins@@ - <<case 3>> - @@.lime;your newborn triplets@@ - <<case 4>> - @@.lime;your newborn quadruplets@@ - <<case 5>> - @@.lime;your newborn quintuplets@@ - <<case 6>> - a big bassinet containing @@.lime;your newborn sextuplets@@ - <<case 7>> - a big bassinet containing @@.lime;your newborn septuplets@@ - <<case 8>> - a big bassinet containing @@.lime;your newborn octuplets@@ - <</switch>> + <<elseif _curBabies < 6>> + @@.lime;your newborn <<print pregNumberName(_curBabies, 2)>>@@ + <<else>> + a big bassinet containing @@.lime;your newborn <<print pregNumberName(_curBabies, 2)>>@@ + <</if>> in $his arms. <<elseif $HeadGirl != 0>> <<setLocalPronouns $HeadGirl>> @@ -184,66 +172,40 @@ You arrange yourself to give birth, relaxing until your body urges you to begin <<if _concubinePresent == 1>> $Concubine.slaveName shifts to massaging your gravid middle<<if canTalk($Concubine)>>, while whispering words of encouragement into your ear<</if>>. _He2 begins to worry as _his2 lover weakens in front of _him2. $HeadGirl.slaveName quickly pulls _him2 to _his2 feet and orders _him2 to help $him carry you to the remote surgery<<if !canWalk($Concubine)>>; in $his rush, $he completely forgot <<if tooBigBreasts($Concubine)>>$Concubine.slaveName's breasts have _him2 pinned to the bed<<elseif tooBigBelly($Concubine)>>$Concubine.slaveName's pregnancy renders _him2 immobile<<elseif tooBigDick($Concubine)>>$Concubine.slaveName can't walk with a dick that big<<elseif tooBigButt($Concubine)>>$Concubine.slaveName's butt pins _him2 to the bed<<elseif tooBigBalls($Concubine)>>$Concubine.slaveName's balls act as a giant anchor<<elseif tooFatSlave($Concubine)>>$Concubine.slaveName is so fat, the bed is _his2 home now<<else>>$Concubine.slaveName can't walk<</if>><</if>>. <<else>> - $HeadGirl.slaveName notices your distress and carries you to the remote surgery<<if $PC.pregType == 8>>, a daunting task given your extreme gravidity<</if>>. + $HeadGirl.slaveName notices your distress and carries you to the remote surgery<<if $PC.pregType >= 8>>, a daunting task given your extreme gravidity<</if>>. <</if>> <br><br> You awake some time later in a recovery room<<if _concubinePresent > 0>>, $Concubine.slaveName beside you<</if>>, your stomach extremely sore; a quick glance at the prominent scar tells you everything you need to know. Seeing you're awake, $HeadGirl.slaveName catches your attention. In $his arms - <<switch _curBabies>> - <<case 1>> + <<if _curBabies == 1>> is @@.lime;your baby <<if _gender == "XX">>girl<<else>>boy<</if>>,@@ <<if $HeadGirl.lactation > 0>>happily nursing from $his breast,<</if>> - <<case 2>> - are @@.lime;your newborn twins,@@ <<if $HeadGirl.lactation > 0>>happily nursing from $his breasts,<</if>> - <<case 3>> - are @@.lime;your newborn triplets,@@ <<if $HeadGirl.lactation > 0>>vying for $his milky nipples,<</if>> - <<case 4>> - are @@.lime;your newborn quadruplets,@@ <<if $HeadGirl.lactation > 0>>vying for $his milky nipples,<</if>> - <<case 5>> - are @@.lime;your newborn quintuplets,@@ <<if $HeadGirl.lactation > 0>>vying for $his milky nipples,<</if>> - <<case 6>> - are @@.lime;your newborn sextuplets,@@ <<if $HeadGirl.lactation > 0>>vying for $his milky nipples,<</if>> - <<case 7>> - are @@.lime;your newborn septuplets,@@ <<if $HeadGirl.lactation > 0>>vying for $his milky nipples,<</if>> - <<case 8>> - are @@.lime;your newborn octuplets,@@ <<if $HeadGirl.lactation > 0>>vying for $his milky nipples,<</if>> - <</switch>> + <<else>> + are @@.lime;your newborn <<print pregNumberName(_curBabies, 2)>>,@@ <<if $HeadGirl.lactation > 0>>happily nursing from $his breasts,<</if>> + <</if>> alive and well. <<elseif _concubinePresent == 1>> You keep pushing and pushing, but your child is not coming out. <<if canWalk($Concubine)>>In a panic, $Concubine.slaveName carries you to the remote surgery<<else>>The last thing you remember as you fade is $Concubine.slaveName's look of panic<</if>>. <br><br> You awake some time later in a recovery room, your stomach extremely sore; a quick glance at the prominent scar tells you everything you need to know. A content sigh comes from beside you; $Concubine.slaveName is snuggled next to you, snoozing with - <<switch _curBabies>> - <<case 1>> - @@.lime;your baby <<if _gender == "XX">>girl<<else>>boy<</if>>@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your child has managed to free one of $Concubine.slaveName's breasts and is eagerly suckling from _his2 milky nipple.<</if>> - <<case 2>> - @@.lime;your newborn twins@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> - <<case 3>> - @@.lime;your newborn triplets@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> - <<case 4>> - @@.lime;your newborn quadruplets@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> - <<case 5>> - @@.lime;your newborn quintuplets@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> - <<case 6>> - @@.lime;your newborn sextuplets@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> - <<case 7>> - @@.lime;your newborn septuplets@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> - <<case 8>> - @@.lime;your newborn octuplets@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> - <</switch>> + <<if _curBabies == 1>> + @@.lime;your baby <<if _gender == "XX">>girl<<else>>boy<</if>>@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your child has managed to free one of $Concubine.slaveName's breasts and is eagerly suckling from its milky nipple.<</if>> + <<else>> + @@.lime;your newborn <<print pregNumberName(_curBabies, 2)>>@@ in _his2 arms.<<if $Concubine.lactation > 0>> Your children have managed to free $Concubine.slaveName's breasts and are eagerly suckling from their milky nipples.<</if>> + <</if>> <<if !canWalk($Concubine)>> <<if tooBigBreasts($Concubine)>> - You don't know how _he2 managed to get you here when _his2 breasts prevent _him2 from walking<<if $PC.pregType == 8>>, especially with how heavy your pregnancy was<</if>>, but you give the pair a gentle caress as thanks. + You don't know how _he2 managed to get you here when _his2 breasts prevent _him2 from walking<<if $PC.pregType >= 8>>, especially with how heavy your pregnancy was<</if>>, but you give the pair a gentle caress as thanks. <<elseif tooBigBelly($Concubine)>> - You don't know how _he2 managed to get you here when _he2's so gravid _he2 can't walk<<if $PC.pregType == 8>>, especially with how heavy your pregnancy was<</if>>, but you give the taut dome a gentle caress as thanks. + You don't know how _he2 managed to get you here when _he2's so gravid _he2 can't walk<<if $PC.pregType >= 8>>, especially with how heavy your pregnancy was<</if>>, but you give the taut dome a gentle caress as thanks. <<elseif tooBigDick($Concubine)>> - You don't know how _he2 managed to get you here when _his2 dick prevents _him2 from walking<<if $PC.pregType == 8>>, especially with how heavy your pregnancy was<</if>>, but you give the serpent a gentle caress as thanks. + You don't know how _he2 managed to get you here when _his2 dick prevents _him2 from walking<<if $PC.pregType >= 8>>, especially with how heavy your pregnancy was<</if>>, but you give the serpent a gentle caress as thanks. <<elseif tooBigButt($Concubine)>> - You don't know how _he2 managed to get you here when _his2 ass prevent _him2 from walking<<if $PC.pregType == 8>>, especially with how heavy your pregnancy was<</if>>, but you give the jiggling giant a gentle caress as thanks. + You don't know how _he2 managed to get you here when _his2 ass prevent _him2 from walking<<if $PC.pregType >= 8>>, especially with how heavy your pregnancy was<</if>>, but you give the jiggling giant a gentle caress as thanks. <<elseif tooBigBalls($Concubine)>> - You don't know how _he2 managed to get you here when _his2 balls prevent _him2 from walking<<if $PC.pregType == 8>>, especially with how heavy your pregnancy was<</if>>, but you give the pair a gentle caress as thanks. _He2 returns the kindness with a shudder and a large wet spot forming over _his2 crotch. + You don't know how _he2 managed to get you here when _his2 balls prevent _him2 from walking<<if $PC.pregType >= 8>>, especially with how heavy your pregnancy was<</if>>, but you give the pair a gentle caress as thanks. _He2 returns the kindness with a shudder and a large wet spot forming over _his2 crotch. <<elseif tooFatSlave($Concubine)>> - You don't know how _he2 managed to get you here when _he2's so fat _he2 can't walk<<if $PC.pregType == 8>>, especially with how heavy your pregnancy was<</if>>, but you give _his2 soft body a gentle caress as thanks. + You don't know how _he2 managed to get you here when _he2's so fat _he2 can't walk<<if $PC.pregType >= 8>>, especially with how heavy your pregnancy was<</if>>, but you give _his2 soft body a gentle caress as thanks. <<else>> - You don't know how _he2 managed to get you here, since _he2 can't walk<<if $PC.pregType == 8>>, especially with how heavy your pregnancy was<</if>>, but you're thankful either way. + You don't know how _he2 managed to get you here, since _he2 can't walk<<if $PC.pregType >= 8>>, especially with how heavy your pregnancy was<</if>>, but you're thankful either way. <</if>> <</if>> <<else>> @@ -257,55 +219,31 @@ You arrange yourself to give birth, relaxing until your body urges you to begin Under $Nurse.slaveName's guidance, childbirth is a breeze for you. <<if $PC.pregType == 1>> <<if _concubinePresent == 1>> Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>><</if>> $Nurse.slaveName cuts the cord, swaddles your child, and hands you @@.lime;your new baby <<if _gender == "XX">>girl<<else>>boy<</if>>.@@ - <<elseif $PC.pregType == 8>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after eight children and eight intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have seven more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $Nurse.slaveName around, you aren't worried at all. - <</if>> - $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new octuplets.@@ - <<elseif $PC.pregType == 7>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after seven children and seven intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have six more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $Nurse.slaveName around, you aren't worried at all. - <</if>> - $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new septuplets.@@ - <<elseif $PC.pregType == 6>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after six children and six intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have five more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $Nurse.slaveName around, you aren't worried at all. - <</if>> - $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new sextuplets.@@ - <<elseif $PC.pregType == 5>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after five children and five intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize your taut dome of a belly still houses four more. You moan as the next child begins its decent; you'll be at this for awhile. With $Nurse.slaveName around, you aren't worried at all. - <</if>> - $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new quintuplets.@@ - <<elseif $PC.pregType == 4>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal, followed immediately by the next two, and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. - <<else>> - With one out, you realize your swollen belly still houses three more. You moan as the next child begins its decent; with $Nurse.slaveName around, you aren't worried at all. - <</if>> - $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new quadruplets.@@ - <<elseif $PC.pregType == 3>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal, followed immediately by the last, and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. - <<else>> - With one out, you realize your swollen belly still houses another pair. You moan as the next child begins its decent; with $Nurse.slaveName around, you aren't worried at all. - <</if>> - $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new triplets.@@ - <<elseif $PC.pregType == 2>> + <<else>> <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. + Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Nurse.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over: before you've even had a chance to come down from your climax, the next infant slips into your birth canal<<if $PC.pregType >= 3>>, followed closely by the <<if $PC.pregType == 3>>last<<else>>next<</if>>,<</if>> and immediately pushes you back over the edge. In minutes, after <<print num(_curBabies)>> children and <<print num(_curBabies)>> intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. <<else>> - With one out, you realize your rounded belly still houses another. You moan as they begin their decent; with $Nurse.slaveName around, you aren't worried at all. + With one out, you realize + <<if $PC.pregType >= 6>> + you still have <<print num($PC.pregType - 1)>> more to go. + <<elseif $PC.pregType == 5>> + your taut dome of a belly still houses four more. + <<elseif $PC.pregType == 4>> + your swollen belly still houses three more. + <<elseif $PC.pregType == 3>> + your swollen belly still houses another pair. + <<elseif $PC.pregType == 2>> + your rounded belly still houses another. + <</if>> + You moan as + <<if $PC.pregType >= 3>> + the next child begins its + <<else>> + they begin their + <</if>> + descent; you'll be at this for awhile. With $Nurse.slaveName around, you aren't worried at all. <</if>> - $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new twins.@@ + $Nurse.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new <<print pregNumberName(_curBabies, 2)>>.@@ <</if>> <<elseif $Bodyguard != 0>> <<setLocalPronouns $Bodyguard>> @@ -315,126 +253,86 @@ You arrange yourself to give birth, relaxing until your body urges you to begin Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> <</if>> $Bodyguard.slaveName cuts the cord with $his blade, and hands you @@.lime;your new baby <<if _gender == "XX">>girl<<else>>boy<</if>>.@@ - <<elseif $PC.pregType == 8>> - <<if _concubinePresent == 1>> - Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after eight children and eight intense orgasms, you're barely conscious, nearly panicking $Bodyguard.slaveName. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have seven more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $Bodyguard.slaveName around, you feel completely safe. - <</if>> - $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new octuplets.@@ - <<elseif $PC.pregType == 7>> - <<if _concubinePresent == 1>> - Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after seven children and seven intense orgasms, you're barely conscious, nearly panicking $Bodyguard.slaveName. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have six more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $Bodyguard.slaveName around, you feel completely safe. - <</if>> - $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new septuplets.@@ - <<elseif $PC.pregType == 6>> - <<if _concubinePresent == 1>> - Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after six children and six intense orgasms, you're barely conscious, nearly panicking $Bodyguard.slaveName. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have five more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $Bodyguard.slaveName around, you feel completely safe. - <</if>> - $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new sextuplets.@@ - <<elseif $PC.pregType == 5>> - <<if _concubinePresent == 1>> - Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after five children and five intense orgasms, you're barely conscious, nearly panicking $Bodyguard.slaveName. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize your taut dome of a belly still houses four more. You moan as the next child begins its decent; you'll be at this for awhile. With $Bodyguard.slaveName around, you feel completely safe. - <</if>> - $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new quintuplets.@@ - <<elseif $PC.pregType == 4>> - <<if _concubinePresent == 1>> - Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal, followed immediately by the next two, and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. - <<else>> - With one out, you realize your swollen belly still houses three more. You moan as the next child begins its decent; with $Bodyguard.slaveName around, you feel completely safe. - <</if>> - $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new quadruplets.@@ - <<elseif $PC.pregType == 3>> - <<if _concubinePresent == 1>> - Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal, followed immediately by the last, and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. - <<else>> - With one out, you realize your swollen belly still houses another pair. You moan as the next child begins its decent; with $Bodyguard.slaveName around, you feel completely safe. - <</if>> - $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new triplets.@@ - <<elseif $PC.pregType == 2>> + <<else>> <<if _concubinePresent == 1>> - Or it would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. + Or you would have, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $Bodyguard.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal<<if $PC.pregType >= 3>>, followed closely by the <<if $PC.pregType == 3>>last<<else>>next<</if>>,<</if>> and immediately pushes you back over the edge. In minutes, after <<print num(_curBabies)>> children and <<print num(_curBabies)>> intense orgasms, you're barely conscious, nearly panicking $Bodyguard.slaveName. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. <<else>> - With one out, you realize your rounded belly still houses another. You moan as they begin their decent; with $Bodyguard.slaveName around, you feel completely safe. + With one out, you realize + <<if $PC.pregType >= 6>> + you still have <<print num($PC.pregType - 1)>> more to go. + <<elseif $PC.pregType == 5>> + your taut dome of a belly still houses four more. + <<elseif $PC.pregType == 4>> + your swollen belly still houses three more. + <<elseif $PC.pregType == 3>> + your swollen belly still houses another pair. + <<elseif $PC.pregType == 2>> + your rounded belly still houses another. + <</if>> + You moan as + <<if $PC.pregType >= 3>> + the next child begins its + <<else>> + they begin their + <</if>> + descent; you'll be at this for awhile. With $Bodyguard.slaveName around, you feel completely safe. <</if>> - $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new twins.@@ + $Bodyguard.slaveName cuts the cords with $his blade, and hands you @@.lime;your new <<print pregNumberName(_curBabies, 2)>>.@@ <</if>> <<elseif $HeadGirl != 0>> With $HeadGirl.slaveName waiting with everything you need, childbirth goes by without a hitch. <<if $PC.pregType == 1>> <<if _concubinePresent == 1>> Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>><</if>> $HeadGirl.slaveName cuts the cord, swaddles your child, and hands you @@.lime;your new baby <<if _gender == "XX">>girl<<else>>boy<</if>>.@@ - <<elseif $PC.pregType == 8>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after eight children and eight intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have seven more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $HeadGirl.slaveName around, you know everything is under control. - <</if>> - $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new octuplets.@@ - <<elseif $PC.pregType == 7>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after seven children and seven intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have six more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $HeadGirl.slaveName around, you know everything is under control. - <</if>> - $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new septuplets.@@ - <<elseif $PC.pregType == 6>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after six children and six intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize you still have five more to go. You moan as the next child begins its decent; you'll be at this for awhile. With $HeadGirl.slaveName around, you know everything is under control. - <</if>> - $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new sextuplets.@@ - <<elseif $PC.pregType == 5>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. In minutes, after five children and five intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. - <<else>> - With one out, you realize your taut dome of a belly still houses four more. You moan as the next child begins its decent; you'll be at this for awhile. With $HeadGirl.slaveName around, you know everything is under control. - <</if>> - $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new quintuplets.@@ - <<elseif $PC.pregType == 4>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal, followed immediately by the next two, and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. - <<else>> - With one out, you realize your swollen belly still houses three more. You moan as the next child begins its decent; with $HeadGirl.slaveName around, you know everything is under control. - <</if>> - $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new quadruplets.@@ - <<elseif $PC.pregType == 3>> - <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal, followed immediately by the last, and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. - <<else>> - With one out, you realize your swollen belly still houses another pair. You moan as the next child begins its decent; with $HeadGirl.slaveName around, you know everything is under control. - <</if>> - $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new triplets.@@ - <<elseif $PC.pregType == 2>> + <<else>> <<if _concubinePresent == 1>> - Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over; before you've even had a chance to come down from your climax, the next infant slips into your birth canal and immediately pushes you back over the edge. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses after such an intense orgasm. + Or it would have been, had $Concubine.slaveName not driven you to an intense orgasm right as your first child entered the world.<<if $PC.balls > 1>> An orgasm that resulted in $Concubine.slaveName, $HeadGirl.slaveName, and your newborn getting sprayed with cum.<</if>> But it isn't over: before you've even had a chance to come down from your climax, the next infant slips into your birth canal<<if $PC.pregType >= 3>>, followed closely by the <<if $PC.pregType == 3>>last<<else>>next<</if>>,<</if>> and immediately pushes you back over the edge. In minutes, after <<print num(_curBabies)>> children and <<print num(_curBabies)>> intense orgasms, you're barely conscious. $Concubine.slaveName slides in behind you to snuggle with you as you return to your senses. <<else>> - With one out, you realize your rounded belly still houses another. You moan as they begin their decent; with $HeadGirl.slaveName around, you know everything is under control. + With one out, you realize + <<if $PC.pregType >= 6>> + you still have <<print num($PC.pregType - 1)>> more to go. + <<elseif $PC.pregType == 5>> + your taut dome of a belly still houses four more. + <<elseif $PC.pregType == 4>> + your swollen belly still houses three more. + <<elseif $PC.pregType == 3>> + your swollen belly still houses another pair. + <<elseif $PC.pregType == 2>> + your rounded belly still houses another. + <</if>> + You moan as + <<if $PC.pregType >= 3>> + the next child begins its + <<else>> + they begin their + <</if>> + descent; you'll be at this for awhile. With $HeadGirl.slaveName around, you know everything is under control. <</if>> - $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new twins.@@ + $HeadGirl.slaveName cuts the cords, swaddles your children, and hands you @@.lime;your new <<print pregNumberName(_curBabies, 2)>>.@@ <</if>> <<elseif _concubinePresent == 1>> $Concubine.slaveName alternates between calming your nerves and driving your to orgasm. It works fairly well, as your child rapidly enters the world alongside a particularly powerful climax. You reach down and draw @@.lime;your new baby <<if _gender == "XX">>girl<<else>>boy<</if>>@@ into your arms, while $Concubine.slaveName shifts to eagerly "clean" your crotch with _his2 tongue.<<if $PC.pregType > 1>> _His2 over-stimulation of you quickly has _him2 licking the crowning head of your second child. _He2 diligently works you over until all of your children are born, making sure you are thoroughly exhausted; both from the birth and from _his2 ministrations.<<if canPenetrate($Concubine) && canImpreg($PC, $Concubine)>> $Concubine.slaveName eyes your spread pussy hungrily as _his2 erection bobs with anticipation. But you're too tired right now and _he2 realizes it.<</if>> _He2 helps gather your child<<if $PC.pregType > 1>>ren<</if>> to<<if $Concubine.lactation > 0>> _his2 and <</if>> your breasts with the hope that you'll reward _him2 when you recover.<</if>> <<else>> You keep pushing and pushing, your child slowly working its way from your body. With the last of your strength, you bear down, freeing your child from your body at last. Panting, you gather @@.lime;your new baby <<if _gender == "XX">>girl<<else>>boy<</if>>@@ <<if $PC.pregType > 1>>as another contraction ushers your next child into your birth canal<<else>>and drift off into a much deserved rest<</if>>. - <<if $PC.pregType == 8>> - You struggle to pass the second baby, knowing full well a third will quickly follow suit and a fourth after that. You dread the challenge that will be the fifth one and worry for your health over the sixth. You are nearly delirious by the time it comes to the final two; your efforts to push them out are falling flat. You're just too tired. With one final push, you feel the first crown then exit your ruined pussy; the second follows closely, finally allowing you relief. You are thoroughly exhausted by the time you've pushed out your octuplets, unable to even gather them to your chest. Fortunately, $assistantName calls several devoted slaves to your aid; you're helped to your bed and left to connect with your children. - <<elseif $PC.pregType == 7>> - You struggle to pass the second baby, knowing full well a third will quickly follow suit and a fourth after that. You dread the challenge that will be the fifth one and worry for your health over the sixth. You are nearly delirious by the time they are all born; you still look pregnant. It dawns on you as your cervix stretches wide; you forgot one. You are thoroughly exhausted by the time you've pushed out your septuplets, barely able to gather them to your chest. Fortunately, $assistantName calls several devoted slaves to your aid; you're helped to your bed and left to connect with your children. - <<elseif $PC.pregType == 6>> - You struggle to pass the second baby, knowing full well a third will quickly follow suit and a fourth after that. You dread the challenge that will be the fifth one and worry for your health over the sixth. You are thoroughly exhausted by the time you've pushed out your sextuplets, barely able to gather them to your chest. Fortunately, $assistantName calls several devoted slaves to your aid; you're helped to your bed and left to connect with your children. - <<elseif $PC.pregType == 5>> - You struggle to pass the second baby, knowing full well a third will quickly follow suit and a fourth after that. You dread the challenge that will be the fifth one. You are thoroughly exhausted by the time you've pushed out your quintuplets, barely able to gather them to your chest. Fortunately, $assistantName calls several devoted slaves to your aid; you're helped to your bed and left to connect with your children. - <<elseif $PC.pregType == 4>> - You struggle to pass the second baby, knowing full well a third will quickly follow suit and a fourth after that. You are exhausted by the time you've pushed out your quadruplets, barely able to gather them to your chest. Fortunately, $assistantName calls several devoted slaves to your aid; you're helped to your bed and left to connect with your children. - <<elseif $PC.pregType == 3>> - You struggle to pass the second baby, knowing full well a third will quickly follow suit. You are exhausted by the time you've pushed out your triplets, barely able to gather them to your chest. Fortunately, $assistantName calls several devoted slaves to your aid; you're helped to your bed and left to connect with your children. + <<if $PC.pregType >= 2>> + You struggle to pass the second baby<<if $PC.pregType >= 3>>, knowing full well a third will quickly follow suit<<if $PC.pregType >= 4>> and a fourth after that<</if>><</if>>. + <<if $PC.pregType >= 5>> + You dread the challenge that will be the fifth one<<if $PC.pregType >= 6>> and worry for your health over the sixth<</if>>. + <</if>> + <<if $PC.pregType >= 7>> + You are nearly delirious by the time + <<if $PC.pregType >= 8>> + it comes to the final <<print num($PC.pregType - 6)>>; your efforts to push them out are falling flat. You're just too tired. With one final push, you feel the first crown then exit your ruined pussy; the second <<if $PC.pregType >= 9>>and the rest follow<<else>>follows<</if>> closely, finally allowing you relief. + <<else>> + they are all born; you still look pregnant. It dawns on you as your cervix stretches wide; you forgot one. + <</if>> + <</if>> + You are <<if $PC.pregType >= 6>>thoroughly <</if>>exhausted by the time you've pushed out your <<print pregNumberName(_curBabies, 2)>>, + <<if $PC.pregType >= 8>> + unable to even + <<else>> + barely able to + <</if>> + gather them to your chest. Fortunately, $assistantName calls several devoted slaves to your aid; you're helped to your bed and left to connect with your children. <</if>> <</if>> <</if>> diff --git a/src/pregmod/theCattleRanch.tw b/src/pregmod/theCattleRanch.tw index a79a23789586134ee53b5deac90ae7f9de875265..de615b0e75a14349583088a0ee2a759dd1134844 100644 --- a/src/pregmod/theCattleRanch.tw +++ b/src/pregmod/theCattleRanch.tw @@ -7,7 +7,7 @@ <<set $nextButton = "Continue", $nextLink = "Bulk Slave Intro", $slaveMarket = "TCR", $returnTo = "Main", $newSlaveIndex = 0>> <</if>> -//The Cattle Ranch is a controversial slave school operating primarily out of Pastoralistic Free Cities. Its business model is to offer the ideal free range dairy cow; one whose tits and belly reach the floor when on all fours. All cattle come optimized for milking, with big breasts and gravid middles. Slave orphans have their heels clipped shortly after birth and are conditioned to believe they are actual livestock, resulting in a mindbreak-like state. Between their wide hips and big butts and their heavy, milky breasts, they are often popular breeding slaves. They rarely display their stock over video call, instead favoring a more hands-on approach. Buyers can visit their local shops to view grazing cattle available for sale. Alternatively, they can watch the calves frolic among their mothers or enjoy the sight of a breeding bull impregnating an empty womb. Cows are also specially trained to respond to spectators banging on the fence; oral awaits if you drop trou for them! <<if $TCR.schoolUpgrade != 0>><br><br>You have endowed <<if $TCR.schoolUpgrade == 1>>a healthy sum of credits to make their breeding bulls available for sale.<<else>>a healthy sum of credits to encourage the sale of heifers.<</if>> As a major <<if $PC.title == 0>>benefactrix<<else>>benefactor<</if>> of the ranch, you also receive a discount on them.<</if>>// +//The Cattle Ranch is a controversial slave school operating primarily out of Pastoralistic Free Cities. Its business model is to offer the ideal free range dairy cow; one whose tits and belly reach the floor when on all fours. All cattle come optimized for milking, with big breasts and gravid middles. Slave orphans have their heels clipped shortly after birth and are conditioned to believe they are actual livestock, resulting in a mindbreak-like state. Between their wide hips and big butts and their heavy, milky breasts, they are often popular breeding slaves. They rarely display their stock over video call, instead favoring a more hands-on approach. Buyers can visit their local shops to view grazing cattle available for sale. Alternatively, they can watch the calves frolic among their mothers or enjoy the sight of a breeding bull impregnating an empty womb. Cows are also specially trained to respond to spectators banging on the fence; oral awaits if you drop trou for them! <<if $TCR.schoolUpgrade != 0>><br><br>You have endowed <<if $TCR.schoolUpgrade == 1>>a healthy sum of credits to make their breeding bulls available for sale.<<else>>a healthy sum of credits to encourage the sale of heifers.<</if>> As a major benefact<<if $PC.title == 0>>rix<<else>>or<</if>> of the ranch, you also receive a discount on them.<</if>>// <br><br>The Cattle Ranch parades a choice selection of cows for your viewing pleasure. You're free to do as you please to the slaves, as long as you don't cause lasting harm to them.<<if isPlayerFertile($PC)>> You can't help but notice the number of bulls lining up along the fence sniffing at you.<</if>> diff --git a/src/pregmod/widgets/deathWidgets.tw b/src/pregmod/widgets/deathWidgets.tw index f1a1672739bd898e7fdf5379f61603922251bb00..9a5fdb72c2a2f8f4a70bf36b5eec842635c92863 100644 --- a/src/pregmod/widgets/deathWidgets.tw +++ b/src/pregmod/widgets/deathWidgets.tw @@ -5,7 +5,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $args[0] 0 0>> + <<= SlaveArt($args[0], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -25,7 +25,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $args[0] 0 0>> + <<= SlaveArt($args[0], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -76,7 +76,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $args[0] 0 0>> + <<= SlaveArt($args[0], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -111,7 +111,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $args[0] 0 0>> + <<= SlaveArt($args[0], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/pregmod/widgets/playerDescriptionWidgets.tw b/src/pregmod/widgets/playerDescriptionWidgets.tw index 02683ca166c70c32485cb7a7842c79b7b106356a..ca44ac6f5dcfe89473f8365d4508cf3da235edf2 100644 --- a/src/pregmod/widgets/playerDescriptionWidgets.tw +++ b/src/pregmod/widgets/playerDescriptionWidgets.tw @@ -257,7 +257,7 @@ <<if _passage == "Manage Personal Affairs">> <<if $PC.preg > 0>> <<if $PC.belly >= 120000>> - @@.red;Your belly is coated with stretch marks and is taut as a drum; you don't know how much more your poor womb can endure.@@ You can barely even leave your bed without a helping hand. Kicks can almost constantly be seen dotting its surface. You give it a pat for good measure, only encouraging your octuplets to squirm in excitement.<<if $PC.dick == 1>> You watch as your dick hardens from the prostate stimulation; you steady yourself for the coming orgasm.<</if>> + @@.red;Your belly is coated with stretch marks and is taut as a drum; you don't know how much more your poor womb can endure.@@ You can barely even leave your bed without a helping hand. Kicks can almost constantly be seen dotting its surface. You give it a pat for good measure, only encouraging your <<print pregNumberName($PC.pregType, 2)>> to squirm in excitement.<<if $PC.dick == 1>> You watch as your dick hardens from the prostate stimulation; you steady yourself for the coming orgasm.<</if>> <<elseif $PC.belly >= 105000>> You have trouble getting up and sitting down. Even standing while supporting your @@.orange;massive belly@@ has become an exhausting endeavor. <<elseif $PC.belly >= 90000>> @@ -317,15 +317,7 @@ <<if _toSearch.indexOf("fertility") != -1>> <<set _fertRefresh = 1>> <</if>> - You may have a problem<<if _fertRefresh == 1>>, but then again, you did take all those fertility drugs, so you can't really say you didn't want it.<<else>>. You took fertility drugs, but you shouldn't be getting this big.<</if>> Judging by how far along you are, you must be carrying - <<if $PC.pregType == 8>> - octuplets - <<elseif $PC.pregType == 7>> - septuplets - <<else>> - sextuplets. - <</if>> - Your Master always wanted said he wanted a big family, too bad he isn't here to see this. Your dress is also starting to get tight, but it's far less of a concern at this point. + You may have a problem<<if _fertRefresh == 1>>, but then again, you did take all those fertility drugs, so you can't really say you didn't want it.<<else>>. You took fertility drugs, but you shouldn't be getting this big.<</if>> Judging by how far along you are, you must be carrying <<print pregNumberName($PC.pregType, 2)>>. Your Master always said he wanted a big family; too bad he isn't here to see this. Your dress is also starting to get tight, but it's far less of a concern at this point. <<elseif $PC.belly >= 75000>> Your belly is starting to become worrying. You're positively gigantic and quite tired. Though on the plus side, your dress is rather form fitting now. <<elseif $PC.belly >= 60000>> @@ -337,9 +329,9 @@ <<elseif $PC.belly >= 15000>> You've taken the time to let out your own dress so that you can look proper even with a belly as big as any full-term woman. <<elseif $PC.belly >= 14000>> - Your dress is at its capacity, any bigger and you'd risk tearing it at the seams, though your late master did make sure his girls were well dressed even when they were fully rounded with his child. + Your dress is at its capacity, any bigger and you'd risk tearing it at the seams, though your late Master did make sure his girls were well dressed even when they were fully rounded with his child. <<elseif $PC.belly >= 12000>> - You keep bumping into things with your huge belly; you're used to it though, <<if $PC.birthMaster > 0>>your first pregnancy was a twinner!<<else>>your late Master liked to keep a big fake belly around your middle.<</if>> + You keep bumping into things with your huge belly; you're used to it though, <<if $PC.birthMaster >= 2>>your first pregnancy was a twinner!<<else>>your late Master liked to keep a big fake belly around your middle.<</if>> <<elseif $PC.belly >= 10000>> Your huge pregnant belly is tiring to carry around, but you're well versed in moving about with a rounded middle. <<elseif $PC.belly >= 7000>> @@ -358,11 +350,11 @@ Your dress and apron feel tight around your middle. <</if>> <<if $PC.preg >= 41>> - Your bab<<if $PC.pregType > 1>>ies are<<else>>y is<</if>> overdue and your master isn't here anymore to comfort your exhausted body. You try your best, <<if $PC.pregSource == -3>>drawing strength from the knowledge that you carry your late master's legacy within you<<else>>but deep down you are saddened that your <<if $PC.pregType > 1>>children aren't<<else>>child isn't<</if>> his<</if>>.<<if $PC.pregMood == 1>> However, thanks to all your mothering, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your slaves<<if $seeDicks != 0>>, those with dicks especially,<</if>> are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you try to fill the hole left by your late master.<</if>> + Your bab<<if $PC.pregType > 1>>ies are<<else>>y is<</if>> overdue and your Master isn't here anymore to comfort your exhausted body. You try your best, <<if $PC.pregSource == -3>>drawing strength from the knowledge that you carry your late Master's legacy within you<<else>>but deep down you are saddened that your <<if $PC.pregType > 1>>children aren't<<else>>child isn't<</if>> his<</if>>.<<if $PC.pregMood == 1>> However, thanks to all your mothering, your slaves are more than happy to do everything they can for you.<<elseif $PC.pregMood == 2>> Your slaves<<if $seeDicks != 0>>, those with dicks especially,<</if>> are terrified of being seen by you, knowing full well that they will be bearing the full weight of your body as you try to fill the hole left by your late Master.<</if>> <<elseif $PC.preg >= 39>> Every action you take is exhausting, and even though your slaves are more than capable of serving your every desire, you refuse to slow down with your duties.<<if $PC.pregMood == 1>> Though you definitely appreciate their aid.<<elseif $PC.pregMood == 2>> Your hormones practically rule you, leading you to demand your slaves to be prepared to pleasure you at a moments notice. Your needy cunt hungers for dick and you don't care <<if $seeDicks != 0>>what it is attached to<<else>>if it's made of plastic<</if>> right now.<</if>> <<elseif $PC.preg >= 36>> - Your child<<if $PC.pregType > 1>>ren<</if>> happily kick<<if $PC.pregType == 1>>s<</if>> away inside your womb, and each time a small bump appears on the outside of your dress.<<if $PC.pregMood == 1>> While hormones may have you demanding and needy, you do everything you can to treat your slaves as if they were your own children.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but your former master loved to fuck you while you <<if $PC.birthMaster > 0>>were pregnant with his children<<else>>wore a big fake belly<</if>> and your body misses his touch.<</if>> + Your child<<if $PC.pregType > 1>>ren<</if>> happily kick<<if $PC.pregType == 1>>s<</if>> away inside your womb, and each time a small bump appears on the outside of your dress.<<if $PC.pregMood == 1>> While hormones may have you demanding and needy, you do everything you can to treat your slaves as if they were your own children.<<elseif $PC.pregMood == 2>> You know it's unbecoming for an arcology owner, but your former Master loved to fuck you while you <<if $PC.birthMaster > 0>>were pregnant with his child<<if $PC.birthMaster > 1>>ren<</if>><<else>>wore a big fake belly<</if>> and your body misses his touch.<</if>> <<elseif $PC.preg >= 32>> <<if $PC.pregMood == 1>> You can't help but enjoy having a slave suckle from you while you relax with _himU in your lap.<<elseif $PC.pregMood == 2>> You know how to have sex while pregnant, and as such, so will your slaves.<</if>> <<elseif $PC.preg >= 28>> @@ -475,15 +467,7 @@ <<if _toSearch.indexOf("fertility") != -1>> <<set _fertRefresh = 1>> <</if>> - You may have a problem<<if _fertRefresh == 1>>, but then again, you did take all those fertility drugs, so you can't really say you didn't want it.<<else>>. You took fertility drugs, but you shouldn't be getting this big.<</if>> Judging by how far along you are, you must be carrying - <<if $PC.pregType == 8>> - octuplets - <<elseif $PC.pregType == 7>> - septuplets - <<else>> - sextuplets. - <</if>> - Your suit is also starting to get tight, but it's far less of a concern at this point. + You may have a problem<<if _fertRefresh == 1>>, but then again, you did take all those fertility drugs, so you can't really say you didn't want it.<<else>>. You took fertility drugs, but you shouldn't be getting this big.<</if>> Judging by how far along you are, you must be carrying <<print pregNumberName($PC.pregType, 2)>>. Your suit is also starting to get tight, but it's far less of a concern at this point. <<elseif $PC.belly >= 75000>> Your belly is starting to become worrying. You're positively gigantic and quite tired. As an added stress, your maternity suit highlights your pregnancy. <<elseif $PC.belly >= 60000>> @@ -561,7 +545,7 @@ <<else>> <<if $PC.preg > 0>> <<if $PC.belly >= 120000>> - Your belly is coated with stretch marks and is taut as a drum; you don't know how much more your poor womb can endure. Kicks can almost constantly be seen dotting its surface. You give it a pat for good measure, only encouraging your octuplets to squirm in excitement.<<if $PC.dick == 1>> As your dick hardens under the prostate stimulation, you call for a slave to receive the incoming load.<</if>> + Your belly is coated with stretch marks and is taut as a drum; you don't know how much more your poor womb can endure. Kicks can almost constantly be seen dotting its surface. You give it a pat for good measure, only encouraging your <<print pregNumberName($PC.pregType, 2)>> to squirm in excitement.<<if $PC.dick == 1>> As your dick hardens under the prostate stimulation, you call for a slave to receive the incoming load.<</if>> <<elseif $PC.belly >= 105000>> Getting out of your chair is practically a dream at this point. It takes far too much effort to do it on your own and is a little embarrassing to ask help with. <<elseif $PC.belly >= 90000>> @@ -652,7 +636,7 @@ <<elseif $PC.births >= 10>> @@.red;rather loose vagina,@@ stretched from your many children. <<elseif $PC.career == "servant">> - @@.red;rather loose vagina.@@ Your master fucked you several times a day; he and his children have wreaked havoc upon your pussy. + @@.red;rather loose vagina.@@ Your Master fucked you several times a day; he and his children have wreaked havoc upon your pussy. <<elseif $PC.births > 2>> @@.orange;loose vagina,@@ stretched from your several children. <<elseif $PC.career == "gang" || $PC.career == "celebrity" || $PC.career == "wealth">> @@ -710,9 +694,9 @@ <<elseif _passage == "Economics">> <<if $PC.career == "servant">> <<if $PC.ballsImplant > 3>> - Your dress and apron bulges with your enormous balls, you had to have your dresses tailored so that the swinging mass of your sack would stop bursting seams inadvertently. + Your dress and apron bulge with your enormous balls; you had to have your dresses tailored so that the swinging mass of your sack would stop bursting seams inadvertently. <<elseif $PC.ballsImplant == 3>> - Your dress and apron bulges with your enormous balls. + Your dress and apron bulge with your enormous balls. <<elseif $PC.ballsImplant == 2>> Your dress hides your huge balls, but it does nothing to hide your altered gait. <<elseif $PC.ballsImplant == 1>> diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw index e60b8737ce34bd24cbfedf7e2b92c160cfa5a14c..96a610452afc88a126f04fe0153425a4b68e649d 100644 --- a/src/pregmod/widgets/pregmodWidgets.tw +++ b/src/pregmod/widgets/pregmodWidgets.tw @@ -223,8 +223,8 @@ <</widget>> <<widget "setPlayerPronouns">> - <<set _pl = ["he", "his", "hers", "him", "himself", "woman", "girl", - "He", "His", "Hers", "Him", "Himself", "Woman"]>> + <<set _pl = ["he", "his", "hers", "him", "himself", "woman", "women", "loli", "girl", + "He", "His", "Hers", "Him", "Himself", "Woman", "Women", "Loli", "Girl"]>> <<run App.Utils.setLocalPronouns($PC, 'P', _pl)>> <<unset _pl>> <</widget>> @@ -232,7 +232,7 @@ <<widget "setAssistantPronouns">> <<set _apl = ["he", "his", "him", "himself", "hers", "girl", "woman", - "Girl", "His", "Hers", "He", "Him", "Himself"]>> + "Girl", "His", "Hers", "He", "Him", "Himself", "Woman"]>> <<run App.Utils.setLocalPronouns($assistantPronouns, 'A', _apl)>> <<run App.Utils.setLocalPronouns($marketAssistantPronouns, 'M', _apl)>> @@ -667,7 +667,7 @@ $activeSlave.slaveName is up for review: <<set $activeSlave.preg = -3>> <<else>> The slave known as "<<= SlaveFullName($activeSlave)>>" has been deemed @@.green;worthy@@ of being used for breeding and has been marked as such. Please note the increased restrictions on breeding slaves. - <br>They are not permitted for public use or anything that may harm their growing child. The child within them is considered a member of the elite class and as such, any harm that comes to them will result in severe penalties to the breeder's owner. Development of the child will be closely monitored; should the fetus be identified as not of the owner's blood (or any other member of the Elite class), said owner shall face severe fines. + <br>They are not permitted for public use or anything that may harm their growing child. The child within them is considered a member of the Elite class and as such, any harm that comes to them will result in severe penalties to the breeder's owner. Development of the child will be closely monitored; should the fetus be identified as not of the owner's blood (or any other member of the Elite class), said owner shall face severe fines. <<set $activeSlave.breedingMark = 1, $activeSlave.pregControl = "none">> <</if>> <br>@@.yellowgreen;<<print cashFormat(5000)>>@@ has been deducted from your account as agreed. diff --git a/src/pregmod/widgets/seBirthWidgets.tw b/src/pregmod/widgets/seBirthWidgets.tw index b3262c2d2a8aed453f09c5cf0a747db67371e399..41fd84700f3c4e7fce5fc2eb4ef8495836047d30 100644 --- a/src/pregmod/widgets/seBirthWidgets.tw +++ b/src/pregmod/widgets/seBirthWidgets.tw @@ -200,14 +200,14 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef medImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ <<if $slaves[$i].fuckdoll == 0>> <<if $slaves[$i].broodmother == 0 || $slaves[$i].broodmotherCountDown == 1>> <<if $slaves[$i].assignment != "work in the dairy">> - <<if $universalRulesCSec == 1>> + <<if $universalRulesCSec == 1 || ($slaves[$i].mpreg == 0 && $slaves[$i].vagina < 0)>> <<Birth>> <<else>> <<if $slaves[$i].amp != 1>> /* amps are always carried in time */ @@ -257,7 +257,7 @@ <</if>> <</if>> /* close broodmother birth */ <<else>> /* Fuckdoll birth */ - <<if $universalRulesCSec == 1>> + <<if $universalRulesCSec == 1 || ($slaves[$i].mpreg == 0 && $slaves[$i].vagina < 0)>> <<set $csec = 1>> $slaves[$i].slaveName's suit's systems alert that it is ready to give birth; it is taken to the remote surgery to have its child<<if $slaves[$i].pregType > 1>>ren<</if>> extracted and for it to be cleaned up. <<elseif $universalRulesBirthing == 1>> @@ -337,7 +337,7 @@ <br> <br> /* diffSize used for check result of partial birth size changes - if it = 2 then womb lost half of it's original size after partial birth, if it = 1 - no size lost. (We get this value as result of dividing of original womb size by after birth size) -This decriptions can be expanded with more outcomes later. But it's not practical to check values above 5-10 - it become too affected by actual value of womb size. +This descriptions can be expanded with more outcomes later. But it's not practical to check values above 5-10 - it become too affected by actual value of womb size. */ <<if $slaves[$i].assignment == "work in the dairy" && $dairyPregSetting > 0>> As a human cow, $he @@.orange;gave birth@@ <<if $slaves[$i].prematureBirth == 1>>@@.red;prematurely@@<</if>> @@ -357,22 +357,8 @@ This decriptions can be expanded with more outcomes later. But it's not practica to a brood of _curBabies calves. <<elseif _curBabies >= 10>> to a squirming pile of _curBabies calves. - <<elseif _curBabies == 9>> - to calf nonuplets. - <<elseif _curBabies == 8>> - to calf octuplets. - <<elseif _curBabies == 7>> - to calf septuplets. - <<elseif _curBabies == 6>> - to calf sextuplets. - <<elseif _curBabies == 5>> - to calf quintuplets. - <<elseif _curBabies == 4>> - to calf quadruplets. - <<elseif _curBabies == 3>> - to calf triplets. <<else>> - to calf twins. + to calf <<print pregNumberName(_curBabies, 2)>>. <</if>> <<if _curStill > 0 && _curBabies > 0>> An additional _curStill <<if _curStill == 1>> was<<else>>were<</if>> unfortunately stillborn. @@ -447,22 +433,8 @@ This decriptions can be expanded with more outcomes later. But it's not practica a brood of _curBabies babies, <<elseif _curBabies >= 10>> a squirming pile of _curBabies babies, - <<elseif _curBabies == 9>> - nonuplets, - <<elseif _curBabies == 8>> - octuplets, - <<elseif _curBabies == 7>> - septuplets, - <<elseif _curBabies == 6>> - sextuplets, - <<elseif _curBabies == 5>> - quintuplets, - <<elseif _curBabies == 4>> - quadruplets, - <<elseif _curBabies == 3>> - triplets, <<else>> - twins, + <<print pregNumberName(_curBabies, 2)>>, <</if>> <<if _curBabies > 0>> created by @@ -824,12 +796,12 @@ All in all, <</if>> /* ------ Social reactions--------------- */ -<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>> +<<if $arcologies[0].FSRestart != "unset">> <<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && ($slaves[$i].pregSource == -1 || $slaves[$i].pregSource == -6)>> <br><br> The Societal Elite @@.green;are pleased@@ at the new additions to their class. <<set $failedElite -= 2 * _curBabies>> - <<else>> + <<elseif $eugenicsFullControl != 1>> <br><br> The Societal Elite @@.red;are disappointed@@ that you would allow subhuman filth to dirty the arcology under your watch. Society @@.red;frowns@@ on the unwelcome addition of more subhumans into the world. <<set $failedElite += 5 * _curBabies>> diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index 0b33341ef0303584cc90bbd3b1adb3bbec2b7fb4..b299d3f7650fe1f545716d6f873f6ae7cd7bff1a 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -50,6 +50,10 @@ <<set $brandDesign = {primary: "your initials", local: "your initials"}>> <</if>> +<<if ndef $brandDesign.official>> + <<set $brandDesign.official = "your personal symbol">> +<</if>> + <<if def $servantMilkersJobs>> <<unset $servantMilkersJobs>> <</if>> diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw index bbb98ce884c9954821045f9f8d201e55df4e33a2..6b2cb78fbf63fdd99468af70838bb9e19aa6f44c 100644 --- a/src/uncategorized/PESS.tw +++ b/src/uncategorized/PESS.tw @@ -70,10 +70,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[$j] 2 0>> + <<= SlaveArt($slaves[$j], 2, 0)>> </div> </div> <</if>> @@ -82,9 +82,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -529,9 +529,9 @@ $He sees you examining at $him, and looks back at you submissively, too tired to /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -566,10 +566,10 @@ $He sees you examining at $him, and looks back at you submissively, too tired to <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[$j] 2 0>> + <<= SlaveArt($slaves[$j], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/PETS.tw b/src/uncategorized/PETS.tw index 944bc9fa23f163bc645f6d698589b7a3eb0d5618..f8e82b6d26f57d529b5c0b4f09ffda54c4725fe8 100644 --- a/src/uncategorized/PETS.tw +++ b/src/uncategorized/PETS.tw @@ -72,10 +72,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/RECI.tw b/src/uncategorized/RECI.tw index 15a875f45eaf92fc04c9ef752c1e9ba08af5871d..e62844fbcb6db8b1bfc3299e43e65801d29d8ee2 100644 --- a/src/uncategorized/RECI.tw +++ b/src/uncategorized/RECI.tw @@ -51,9 +51,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -299,10 +299,10 @@ $He looks pensive, and goes through two false starts before $he clears $his thro <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $HeadGirl 2 0>> + <<= SlaveArt($HeadGirl, 2, 0)>> </div> </div> <</if>> @@ -347,10 +347,10 @@ $He looks pensive, and goes through two false starts before $he clears $his thro <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $Concubine 2 0>> + <<= SlaveArt($Concubine, 2, 0)>> </div> </div> <</if>> @@ -588,9 +588,9 @@ $He looks pensive, and goes through two false starts before $he clears $his thro /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw index 57fbefd70bb0ad44da1c545873bfe5c54c2f5432..73c4a2c31523d8fe022c9c848c0a9ad590d9700e 100644 --- a/src/uncategorized/REFI.tw +++ b/src/uncategorized/REFI.tw @@ -139,10 +139,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> @@ -195,10 +195,10 @@ It seems $he passed by while $subSlave.slaveName was beating the girl and found <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> @@ -483,10 +483,10 @@ It seems $he passed by while you were drinking from $subSlave.slaveName and foun <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> @@ -540,10 +540,10 @@ It seems $he passed by while $subSlave.slaveName was dominating the other slave< <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> @@ -597,10 +597,10 @@ It seems $he passed by while you were dominating $subSlave.slaveName. <<if $acti <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> @@ -647,10 +647,10 @@ It seems $he passed by while you were buttfucking $subSlave.slaveName and found <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> @@ -701,10 +701,10 @@ It seems $he passed by while $subSlave.slaveName was <<if $PC.dick == 0>>in the <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/REFS.tw b/src/uncategorized/REFS.tw index 2e8489ca342d12d3b75f42db6d02bd3a78cf976e..94af53ff265e3fdeee4b77a3e6f89f3497f2d2f5 100644 --- a/src/uncategorized/REFS.tw +++ b/src/uncategorized/REFS.tw @@ -212,9 +212,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -301,9 +301,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -338,9 +338,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -513,9 +513,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -564,9 +564,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw index b9e8ac1cee1ff546314a8ff8e506a1dd0dcf9a6d..b5d276f29d906116b3d84307e2efe86c137f00b0 100644 --- a/src/uncategorized/RESS.tw +++ b/src/uncategorized/RESS.tw @@ -98,7 +98,7 @@ <<set _meanGirl.attrXY = random(60,90)>> <<set _meanGirl.attrXX = random(10,20)>> <<set _meanGirl.behavioralFlaw = either("arrogant", "bitchy")>> - <<set _meanGirl.clothes = either("conservative clothing", "a mini dress", "sport shorts and a t-shirt", "a t-shirt and jeans")>> + <<set _meanGirl.clothes = either("a mini dress", "a t-shirt and jeans", "conservative clothing", "sport shorts and a t-shirt")>> <<set _newSlaves.push(_meanGirl)>> <</for>> <span id="artFrame"> @@ -106,16 +106,16 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _newSlaves[0] 2 0>> + <<= SlaveArt(_newSlaves[0], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _newSlaves[1] 2 0>> + <<= SlaveArt(_newSlaves[1], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _newSlaves[2] 2 0>> + <<= SlaveArt(_newSlaves[2], 2, 0)>> </div> </div> <</if>> @@ -127,11 +127,9 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> - </div> - <div class="imageRef medImg"> - <<= assistantArt(2)>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> + <<= assistantArt(2)>> </div> <</if>> /* 000-250-006 */ @@ -141,9 +139,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -289,7 +287,7 @@ The $desc is <<case "devoted lotion">> -Your slaves are required to take very good care of themselves, and your best girls spend several hours a day maintaining every <<if $showInches == 2>>inch<<else>>centimeter<</if>> of their bodies. You notice <<EventNameLink>> standing naked in front of a mirror outside the bathroom, carefully applying moisturizing lotion to every <<if $showInches == 2>>inch<<else>>centimeter<</if>> of $his $activeSlave.skin skin. $He's clearly feeling well, and $his <<if $activeSlave.face > 95>>gorgeous<<elseif $activeSlave.face <= 40>>attractive<<elseif $activeSlave.face <= 10>>pretty<<elseif $activeSlave.face < -10>>plain<<else>>homely<</if>> face bears a smile of simple enjoyment as $he basks in the warmth of the slave quarters, calibrated to make nudity comfortable. $He straightens $his <<if $activeSlave.height >= 185>>wonderfully long<<elseif $activeSlave.height >= 170>>long<<elseif $activeSlave.height >= 160>>nice<<elseif $activeSlave.height >= 150>>short<<else>>short little<</if>> legs and bends at the waist, +Your slaves are required to take very good care of themselves, and your best ones spend several hours a day maintaining every <<if $showInches == 2>>inch<<else>>centimeter<</if>> of their bodies. You notice <<EventNameLink>> standing naked in front of a mirror outside the bathroom, carefully applying moisturizing lotion to every <<if $showInches == 2>>inch<<else>>centimeter<</if>> of $his $activeSlave.skin skin. $He's clearly feeling well, and $his <<if $activeSlave.face > 95>>gorgeous<<elseif $activeSlave.face <= 40>>attractive<<elseif $activeSlave.face <= 10>>pretty<<elseif $activeSlave.face < -10>>plain<<else>>homely<</if>> face bears a smile of simple enjoyment as $he basks in the warmth of the slave quarters, calibrated to make nudity comfortable. $He straightens $his <<if $activeSlave.height >= 185>>wonderfully long<<elseif $activeSlave.height >= 170>>long<<elseif $activeSlave.height >= 160>>nice<<elseif $activeSlave.height >= 150>>short<<else>>short little<</if>> legs and bends at the waist, <<if $activeSlave.belly >= 600000>> $his _belly belly coming to rest on the floor as $he spreads $his legs around it, <<elseif $activeSlave.belly >= 400000>> @@ -301,7 +299,7 @@ Your slaves are required to take very good care of themselves, and your best gir <<elseif $activeSlave.belly >= 5000>> $his <<if $activeSlave.bellyPreg >= 3000>>gravid<<elseif $activeSlave.bellyImplant >= 3000>>protruding<<else>>sloshing<</if>> belly parting $his legs as $he goes, <</if>> -moaning at the pleasurable feeling of a good stretch. $He sets the lotion bottle on the ground next to $him, dispenses a little, and carefully rubs it into the tops of $his feet. When $he reaches $his ankles, still bent almost double, $he <<if canSee($activeSlave)>>catches sight of you watching $him from between $his legs<<else>>picks up the sound of your breathing<</if>>. $He smiles at you and keeps working. +moaning at the pleasurable feeling of a good stretch. $He sets the lotion bottle on the ground next to $him, dispenses a little, and carefully rubs it into the tops of $his feet. When $he reaches $his ankles, still bent almost double, $he <<if canSee($activeSlave)>>catches sight of you watching $him from between $his legs<<elseif canHear($activeSlave)>>picks up the sound of your breathing<<else>>realizes that you're there watching $him<</if>>. $He smiles at you and keeps working. <br><br> $He shifts $his <<if $activeSlave.hips > 2>> @@ -760,7 +758,7 @@ One night, you see <<EventNameLink>> <<if ($activeSlave.amp == 1)>>scooting $him <<case "shift doorframe">> -Your fucktoys have to eat, sleep, and look after themselves, just like anyone, so they can't spend every moment offering themselves to you. Your <<if $Concubine != 0>>concubine<<elseif $HeadGirl != 0>>Head Girl<<else>>personal assistant<</if>> manages a schedule for them, constantly changing it up to keep the girls from getting predictable. <<EventNameLink>> has just come on shift. +Your fucktoys have to eat, sleep, and look after themselves, just like anyone, so they can't spend every moment offering themselves to you. Your <<if $Concubine != 0>>concubine<<elseif $HeadGirl != 0>>Head Girl<<else>>personal assistant<</if>> manages a schedule for them, constantly changing it up to keep the sluts from getting predictable. <<EventNameLink>> has just come on shift. <br><br> You're at your desk as $he arrives; $his predecessor passes $him on the way out. $activeSlave.slaveName pauses for a moment in the doorway, and then decides to give you a show. $He spreads $his legs until $his <<if $activeSlave.shoes == "heels">> @@ -1245,9 +1243,9 @@ Your order $him to turn around and present $his anus for inspection. $He doesn't <<case "age implant">> -In the morning the penthouse is a busy bustle of female energy. Slaves get up promptly, eat, shower, dress themselves, and head out to work. They chatter if able and allowed, and draw a good deal of strength from each other. As you pass by the kitchen, you are narrowly avoided by a rush of girls heading to the showers. They're almost bouncing, feeding off each others' youthful energy. At the back of the pack is <<EventNameLink>>. $He looks as young as any of them, but after they're out, $he leans against the door frame for a moment and exhales slowly. +In the morning the penthouse is a busy bustle of female energy. Slaves get up promptly, eat, shower, dress themselves, and head out to work. They chatter if able and allowed, and draw a good deal of strength from each other. As you pass by the kitchen, you are narrowly avoided by a rush of slaves heading to the showers. They're almost bouncing, feeding off each others' youthful energy. At the back of the pack is <<EventNameLink>>. $He looks as young as any of them, but after they're out, $he leans against the door frame for a moment and exhales slowly. <br><br> -$His <<= App.Desc.eyeColor($activeSlave)>> eyed gaze catches yours for a moment, and you are reminded that $he isn't as young as they are, not at all. $His face might look youthful, but $his eyes don't. <<if canSee($activeSlave)>>$He sees your consideration, and<<else>>You make yourself known, and $he<</if>> murmurs, "<<S>>orry, <<Master>>. Ju<<s>>t a little <<s>>low thi<<s>> morning." +$His <<= App.Desc.eyeColor($activeSlave)>>-eyed gaze catches yours for a moment, and you are reminded that $he isn't as young as they are, not at all. $His face might look youthful, but $his eyes don't. <<if canSee($activeSlave)>>$He sees your consideration, and<<else>>You make yourself known, and $he<</if>> murmurs, "<<S>>orry, <<Master>>. Ju<<s>>t a little <<s>>low thi<<s>> morning." $He hurries after $his sisters, $his <<if $activeSlave.butt > 12>> massive @@ -1296,7 +1294,7 @@ but after a moment $he clearly decides this isn't enough stimulation. $He <<if $ <<case "shift sleep">> -Your fucktoys have to eat, sleep, and look after themselves, just like anyone, so they can't spend every moment offering themselves to you. Your <<if $Concubine != 0>>concubine<<elseif $HeadGirl != 0>>Head Girl<<else>>personal assistant<</if>> manages a schedule for them, constantly changing it up to keep the girls from getting predictable. <<EventNameLink>> has just come on shift. +Your fucktoys have to eat, sleep, and look after themselves, just like anyone, so they can't spend every moment offering themselves to you. Your <<if $Concubine != 0>>concubine<<elseif $HeadGirl != 0>>Head Girl<<else>>personal assistant<</if>> manages a schedule for them, constantly changing it up to keep the sluts from getting predictable. <<EventNameLink>> has just come on shift. <br><br> Though it's late, $he's surprised to find the lights in the master suite off. You had an unusually trying day, so you've retired for the night; you're on the point of sleep when $he comes in<<if $Concubine != 0>>, $Concubine.slaveName nestled under your arm<</if>>. After a moment's hesitation, $activeSlave.slaveName strips quietly and <<if $activeSlave.belly >= 100000>> @@ -1490,7 +1488,7 @@ $He <<if canSee($activeSlave)>>stares at you doe-eyed<<else>>$he faces you with <<case "fearful balls">> -<<EventNameLink>> is still having obedience problems, particularly with $his proper role as a <<if $girl == "girl">>female<</if>> receptacle for cock. Though they're an almost too-obvious explanation, it's hard to avoid $his retention of $his gonads as a possible explanation for $his behavioral issues. They certainly contribute to $his less than perfectly feminine hormonal balance. +<<EventNameLink>> is still having obedience problems, particularly with $his proper role as a <<if $girl == "girl">>female <</if>>receptacle for cock. Though they're an almost too-obvious explanation, it's hard to avoid $his retention of $his gonads as a possible explanation for $his behavioral issues. They certainly contribute to $his less than perfectly feminine hormonal balance. <br><br> It's time for $his routine inspection, and $he's standing before you, nude. $He certainly doesn't find $his sexually vulnerable position arousing; $he's totally flaccid. The physical manifestations of $his disobedience are right in front of you, and quite defenseless. @@ -1696,7 +1694,7 @@ You come face to face with <<EventNameLink>> in a hallway of your penthouse, ent <<if !canTalk($activeSlave)>> $He uses gestures to apologize for $his rudeness, and then gets to $his knees so $he can use $his hands to gesture more clearly. $His hands are shaky as $he begs, making two false starts before unmistakably gesturing to ask you to cut $his balls off. Once $he <<if canSee($activeSlave)>>sees<<else>>figures<</if>> that you understand, $he begins to cry openly. $He gestures that $he can barely get off wearing $his chastity cage, that it hurts when $he does, and that $he's constantly oppressed by the need for release. $He thinks that it would be easier to be soft all the time, so $he could climax without discomfort. $He begs hard, and promises to be a good little bitch. <<else>> - "Plea<<s>>e, <<Master>>," the prostrate slave <<say>>s shakily, sounding like $he's on the verge of tears. "P-plea<<s>>e cut my ball<<s>> off." <<if canHear($activeSlave)>>Hearing $himself <<say>> it, $he<<else>>$He<</if>> begins to cry openly. "I c-can't t-take it anymore. I can b-barely get off wearing thi<<s>> cage on my dick, and when I d-do, it h-hurt<<s>>," $he sobs. "I need to g-g-get off <<s>>-<<s>>o bad. Plea<<s>>e, plea<<s>>e, if I were <<s>>oft all the time, I wouldn't get hard, <<s>>o I could come wh-whenever." $He looks up at you in supplication, tears streaking $his face. "Plea<<s>>e, <<Master>>! I'll be <<s>>-<<s>>uch a good little bitch, I promi<<s>>e!" + "Plea<<s>>e, <<Master>>," the prostrate slave <<say>>s shakily, sounding like $he's on the verge of tears. "P-plea<<s>>e cut my ball<<s>> off." <<if canHear($activeSlave)>>Hearing $himself <<say>> it, $he<<else>>$He<</if>> begins to cry openly. "I c-can't t-take it anymore. I can b-barely get off wearing thi<<s>> cage on my dick, and when I d-do, it h-hurt<<s>>," $he sobs. "I need to g-g-get off <<s>>-<<s>>o bad. Plea<<s>>e, plea<<s>>e, if I were <<s>>oft all the time, I wouldn't get hard, <<s>>o I could come wh-whenever." $He <<if canSee($activeSlave)>>looks up at<<else>>angles $his head towards you<</if>> you in supplication, tears streaking $his face. "Plea<<s>>e, <<Master>>! I'll be <<s>>-<<s>>uch a good little bitch, I promi<<s>>e!" <</if>> <<case "used whore">> @@ -1874,7 +1872,7 @@ If you went with $him, you could certainly show off a little. <<case "millenary">> -Late one night, <<EventNameLink>> comes to see you. Strangely, several of your other slaves are stealing glances at $him as $he does. $He seems oddly proud of $himself. Asked why, $he says, "It's my millenary, <<Master>>. The arcology has logged me getting fucked 999 times." The other slaves obviously view it as significant, too. +Late one night, <<EventNameLink>> comes to see you. Strangely, several of your other slaves are stealing glances at $him as $he does. $He seems oddly proud of $himself. Asked why, $he says, "It'<<s>> my millenary, <<Master>>. The arcology has logged me getting fucked <<= num(999)>> time<<s>>." The other slaves obviously view it as significant, too. <br><br> As the Free Cities grow and evolve, slave culture does too. It seems this is a new tradition among obedient sex slaves. $He obviously expects you to do the honors, and it seems the rest of your girls are looking forward to it. @@ -2451,7 +2449,8 @@ ripped biceps, and strapping lats. <<if $activeSlave.dick > 2>>$His massive cock <<else>> slim, <</if>> -with a trim chest, narrow hips and not much of an ass to speak of. Despite the myriad ways a Free Cities slaveowner can give his property tits and asses, you've held off for now, keeping $him lithe. <<if $activeSlave.amp != 1>> +with a trim chest, narrow hips and not much of an ass to speak of. Despite the myriad ways a Free Cities slaveowner can give his property tits and asses, you've held off for now, keeping $him lithe. +<<if $activeSlave.amp != 1>> $He comes before you for a routine nude inspection, obediently standing before your desk with $his hands crossed <<if $activeSlave.belly >= 30000>> atop $his _belly @@ -2468,11 +2467,11 @@ A perfectly devoted slave might display $himself, and a rebellious one might try <<case "diet">> -<<EventNameLink>> is on a diet, and $he needs it. That doesn't make it any easier for $him. Your slaves are not permitted time to waste over meals. They enter the simple kitchen, drink their allotted portion of slave food out of a cup, and get on with their duties.<<if $activeSlave.preg > $activeSlave.pregData.normalBirth/1.33>> Despite eating for <<if $activeSlave.pregType <= 1>>two<<elseif $activeSlave.pregType >= 10>>far too many<<elseif $activeSlave.pregType == 9>>ten<<elseif $activeSlave.pregType == 8>>nine<<elseif $activeSlave.pregType == 7>>eight<<elseif $activeSlave.pregType == 6>>seven,<<elseif $activeSlave.pregType == 5>>six<<elseif $activeSlave.pregType == 4>>five<<elseif $activeSlave.pregType == 3>>four<<else>>three<</if>>, $his diet is still in full effect.<</if>> <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> catches $activeSlave.slaveName, whose cup is always filled less than halfway, skulking around in the hope that one of the others will take $his eyes off $his cup, or even leave leftovers. +<<EventNameLink>> is on a diet, and $he needs it. That doesn't make it any easier for $him. Your slaves are not permitted time to waste over meals. They enter the simple kitchen, drink their allotted portion of slave food out of a cup, and get on with their duties.<<if $activeSlave.preg > $activeSlave.pregData.normalBirth/1.33>> Despite eating for <<if $activeSlave.pregType <= 1>>two<<elseif $activeSlave.pregType >= 10>>far too many<<else>><<= num($activeSlave.pregType + 1)>><</if>>, $his diet is still in full effect.<</if>> <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> catches $activeSlave.slaveName, whose cup is always filled less than halfway, skulking around in the hope that one of the others will take $his eyes off $his cup, or even leave leftovers. <<case "huge naturals">> -<<EventNameLink>> comes before you naked for a routine inspection. You take particular care to examine $his massive breasts; since they've grown so large it's necessary to check for unsightly veins, stretch marks, and the like. You note $his big nipples with appreciation. Since $his breasts are so enormous and completely free of implants, they're quite saggy. When $he stands, +<<EventNameLink>> comes before you naked for a routine inspection. You take particular care to examine $his massive breasts, since they've grown so large it's necessary to check for unsightly veins, stretch marks, and the like. You note $his big nipples with appreciation. Since $his breasts are so enormous and completely free of implants, they're quite saggy. When $he stands, <<if $activeSlave.boobShape == "saggy" || $activeSlave.boobShape == "downward-facing">> $his nipples face out and down. <<else>> @@ -2582,9 +2581,7 @@ personal assistant coming from your office. Looking in, you are treated to the s <<case "schoolgirl">> _hisA perky tits <</switch>> -down with screen cleaner, and is talking dirty to the furiously blushing servant. "Ohh, that feels good," _heA moans. "Rub me right there, you -$desc -slut! I love it!" The poor slave is doing $his best to hurry, embarrassed and unsure of how to react to $assistantName's behavior. +down with screen cleaner, and is talking dirty to the furiously blushing servant. "Ohh, that feels good," _heA moans. "Rub me right there, you $desc slut! I love it!" The poor slave is doing $his best to hurry, embarrassed and unsure of how to react to $assistantName's behavior. <<case "like me">> @@ -2961,7 +2958,7 @@ $He comes to a stop right beside your elbow, waiting for further direction, just <<case "tittymonster inspection">> -You enter your office from other business a few minutes after the scheduled start of <<EventNameLink>>'s inspection. The <<if $boobAccessibility == 1>>accessibility aids for slaves with immobilizing breasts<<else>>slaves who helped $him in<</if>> have gone, leaving $him waiting for you in front of your desk. The sight is an arresting one. $He's kneeling, but $his boobs are so enormous that they're resting on the ground in front of $him, completely concealing $his body below the chest<<if $activeSlave.belly >= 120000>>, save for the protruding mass of $his <<if $activeSlave.pregType > 8>>hyper pregnant<<elseif $activeSlave.pregType > 7>>octuplets filled<<else>>overly distended<</if>> belly<</if>>. With $his arms tucked back, and $his torso, <<if $activeSlave.belly < 120000>><<if $activeSlave.bellyPreg > 100>>pregnancy,<<elseif $activeSlave.belly > 100>>swollen stomach,<<else>>abdomen,<</if>><</if>> and legs hidden, $he appears to consist of a <<if $activeSlave.face > 95>>gorgeous<<elseif $activeSlave.face > 50>>beautiful<<elseif $activeSlave.face >= 10>>pretty<<elseif $activeSlave.face >= 0>>nice<<else>>homely<</if>>, $activeSlave.faceShape face, a +You enter your office from other business a few minutes after the scheduled start of <<EventNameLink>>'s inspection. The <<if $boobAccessibility == 1>>accessibility aids for slaves with immobilizing breasts<<else>>slaves who helped $him in<</if>> have gone, leaving $him waiting for you in front of your desk. The sight is an arresting one. $He's kneeling, but $his boobs are so enormous that they're resting on the ground in front of $him, completely concealing $his body below the chest<<if $activeSlave.belly >= 120000>>, save for the protruding mass of $his <<if $activeSlave.pregType > 8>>hyper pregnant<<elseif $activeSlave.pregType > 4>><<print pregNumberName($activeSlave.pregType, 1)>>-filled<<else>>overly distended<</if>> belly<</if>>. With $his arms tucked back, and $his torso, <<if $activeSlave.belly < 120000>><<if $activeSlave.bellyPreg > 100>>pregnancy,<<elseif $activeSlave.belly > 100>>swollen stomach,<<else>>abdomen,<</if>><</if>> and legs hidden, $he appears to consist of a <<if $activeSlave.face > 95>>gorgeous<<elseif $activeSlave.face > 50>>beautiful<<elseif $activeSlave.face >= 10>>pretty<<elseif $activeSlave.face >= 0>>nice<<else>>homely<</if>>, $activeSlave.faceShape face, a <<switch $activeSlave.collar>> <<case "none" "dildo gag" "ball gag" "bit gag" "massive dildo gag">> bare @@ -3498,7 +3495,7 @@ $His <</if>> tummy, and <<if $arcologies[0].FSSlimnessEnthusiast != "unset">> - that can be a very appealing look given the predilection your arcology has for slim girls. + that can be a very appealing look given the predilection your arcology has for slim <<= $girl>>s. <<else>> to most clients, this makes $him a less appealing whore. <</if>> @@ -3675,11 +3672,11 @@ Passing by the kitchen in the morning, you take a moment to listen to the low hu <<elseif ($arcologies[0].FSTransformationFetishist != "unset") && ($activeSlave.boobsImplant/$activeSlave.boobs) >= .50>> "It's your fake tits," the other slave explains. "They love how fake they look, here. If you look like a bimbo, they don't care if you're a little mature." <<elseif ($arcologies[0].FSHedonisticDecadence != "unset") && ($activeSlave.weight > 95)>> - "You're so fat," the other slave explains. "Everyone here loves thick girls. They don't care that you're a little mature; that just means you understand life's pleasures more." + "You're so fat," the other slave explains. "Everyone here loves thick <<= $girl>>s. They don't care that you're a little mature; that just means you understand life's pleasures more." <<elseif ($arcologies[0].FSPhysicalIdealist != "unset") && ($activeSlave.muscles > 50)>> "It's how ripped you are," the other slave explains. "It promises you won't give out after one fuck, no matter how old you are." <<elseif ($arcologies[0].FSSlimnessEnthusiast != "unset") && ($activeSlave.boobs < 800) && ($activeSlave.butt < 3)>> - "You're so slim," the other slave explains. "Everyone here loves slender girls. They don't care that you're a little mature; they think you're hot." + "You're so slim," the other slave explains. "Everyone here loves slender <<= $girl>>s. They don't care that you're a little mature; they think you're hot." <<elseif ($arcologies[0].FSBodyPurist != "unset") && ($activeSlave.boobsImplant == 0) && ($activeSlave.health > 50)>> "It's how healthy you are, and your natural boobs," the other slave explains. "You look good and natural, and everyone likes that here, especially if you're mature." <<elseif $activeSlave.face > 95>> @@ -6624,7 +6621,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He but $he is already licking $his lips with anticipation as you roll $him over and straddle $his chest so $he can <<if $PC.dick == 1>>suck you off<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>eat you out<</if>>. The orally fixated slut concentrates on the oral to a fault, so you take $his arms and straddle them too so $he can reach $himself and get back to masturbating. $He hums happily, a very fine sensation on <<if $PC.dick == 1>>shaft<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>pussylips<</if>>. <<set $activeSlave.counter.oral++, $oralTotal++>> <<elseif ($activeSlave.fetish == "humiliation")>> - but $he complies as you pull $him up to kneel and take an assfuck. You let $him get used to it and then wordlessly turn $his head so $he can <<if canSee($activeSlave)>>see the screen in the room: it's now on, and it's showing a public live feed of your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> penetrating $his anus. $He recognizes $himself immediately<<else>>listen to the screen in the room: it's now on, and it's showing a public live feed of your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> penetrating $his anus. $He realizes the sounds of you fucking $his ass sync up with it<</if>>, and although the shot is such a closeup that the identity of the participants is not clear, the sheer humiliation of having $his rectum penetrated on camera brings $him to an indecently quick climax. + but $he complies as you pull $him up to kneel and take an assfuck. You let $him get used to it and then wordlessly turn $his head so $he can <<if canSee($activeSlave)>>see the screen in the room: it's now on, and it's showing a public live feed of your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> penetrating $his anus. $He recognizes $himself immediately<<elseif canHear($activeSlave)>>listen to the screen in the room: it's now on, and it's showing a public live feed of your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> penetrating $his anus. $He realizes the sounds of you fucking $his ass sync up with it<<else>>feel the wind blowing in from the large bay window you've opened<</if>>, and although the <<if canSee($activeSlave) || canHear($activeSlave)>>shot is such a closeup that the identity of the participants is not clear<<else>>likelihood is low that anyone on the arcology streets below would be looking up at this time<</if>>, the sheer humiliation of having $his rectum penetrated <<if canSee($activeSlave) || canHear($activeSlave)>>on camera<<else>>for all to see<</if>> brings $him to an indecently quick climax. <<set _didAnal = 1>> <<elseif ($activeSlave.fetish == "buttslut")>> but $he eagerly complies as you pull $him up to kneel and take an assfuck. You shove $his arms up over $his head to stop $his masturbation, confident that the anal whore can climax from nothing but your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> pumping in and out of $his butt. You're right, and $his sphincter tightens with orgasm even sooner than you expected it to. You roll $him over and go again, @@ -6651,9 +6648,9 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<else>> to kneel and take it doggy style. <</if>> - After getting things going, you use one hand to begin groping $his<<if $activeSlave.bellyPreg >= 1500>> pregnant<<elseif $activeSlave.belly >= 1500>> _belly<</if>> belly. Bending forward to whisper into $his ear, you begin to describe how + After getting things going, you use one hand to begin groping $his<<if $activeSlave.bellyPreg >= 1500>> pregnant<<elseif $activeSlave.belly >= 1500>> _belly<</if>> belly. <<if canHear($activeSlave)>>Bending forward to whisper into $his ear, you begin to describe<<else>>With your hands on $his body and your <<if $PC.dick > 0>>dick<<else>>strap-on<</if>> inside $him, you do your best to communicate<</if>> how <<if $activeSlave.belly >= 750000>> - $he's nothing more than a giant egg just waiting for $his children to hatch; how $he's so close to bursting with life that just a few more babies should do it. + $he's nothing more than a giant egg just waiting for $his children to hatch, how $he's so close to bursting with life that just a few more babies should do it. <<elseif $activeSlave.belly >= 600000>> if $he grows any larger with child, $he'll practically be nothing more than an overswollen womb. <<elseif $activeSlave.belly >= 450000>> @@ -7380,7 +7377,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He You squirm as $he slips into your tight pussy. While $his length may be disappointing, $he stands no chance of stretching you out. <</if>> <<else>> - You have to check to see if $he's even in your tight rear, only to find $he is already fully hilted. You sigh as $he thrusts into you; no prostate stimulation today. + You have to check to see if $he's even in your tight rear, only to find $he is already fully hilted. You sigh as $he thrusts into you: no prostate stimulation today. <</if>> <<elseif $activeSlave.dick == 2>> <<if $PC.vagina == 1>> @@ -7798,15 +7795,15 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<set $slaves.forEach(function(s) { if (s.devotion <= 20) { s.trust -= 5; } })>> <</replace>> <</link>> -<br><<link "Clip the would-be escapee's tendons">> - <<EventNameDelink $activeSlave>> - <<replace "#result">> - The simple thing to do would be to sedate $activeSlave.slaveName and haul $him to the remote surgery for $his punishment. That would deny $him the added weight of terror, however, and would stop your other slaves from learning by the sight of it. So, you restrain $him, pronounce judgment, and drag $his struggling, weeping form through the penthouse to the surgery. $activeSlave.slaveName is @@.mediumorchid;saddened@@ and @@.gold;frightened@@ by this punishment, and $his @@.red;health is damaged@@ by the surgery. Every single one of your other slaves with any resistance left in them is @@.gold;sensibly restrained@@ from trying such rash acts. - <<set $activeSlave.devotion -= 5, $activeSlave.trust -= 5, $activeSlave.health -= 10, $activeSlave.heels = 1>> - <<set $slaves.forEach(function(s) { if (s.devotion <= 20) { s.trust -= 5; } })>> - <</replace>> -<</link>> -<<if $activeSlave.indentureRestrictions < 1>> +<<if $seeExtreme == 1>> + <br><<link "Clip the would-be escapee's tendons">> + <<EventNameDelink $activeSlave>> + <<replace "#result">> + The simple thing to do would be to sedate $activeSlave.slaveName and haul $him to the remote surgery for $his punishment. That would deny $him the added weight of terror, however, and would stop your other slaves from learning by the sight of it. So, you restrain $him, pronounce judgment, and drag $his struggling, weeping form through the penthouse to the surgery. $activeSlave.slaveName is @@.mediumorchid;saddened@@ and @@.gold;frightened@@ by this punishment, and $his @@.red;health is damaged@@ by the surgery. Every single one of your other slaves with any resistance left in them is @@.gold;sensibly restrained@@ from trying such rash acts. + <<set $activeSlave.devotion -= 5, $activeSlave.trust -= 5, $activeSlave.health -= 10, $activeSlave.heels = 1>> + <<set $slaves.forEach(function(s) { if (s.devotion <= 20) { s.trust -= 5; } })>> + <</replace>> + <</link>> <br><<link "Amputate the would-be escapee's limbs">> <<EventNameDelink $activeSlave>> <<replace "#result">> @@ -8119,7 +8116,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<replace "#result">> You instruct $him to get cleaned up and get dressed in $his nicest clothing. $He obeys, mystified, and is further puzzled to find that you're taking $him out for a nice evening at a small bar. You share a tasty meal and listen to good music played on the little stage by an older slave. As the set concludes, you lean over and give $activeSlave.slaveName $his real orders for the evening. $He freezes in terror but eventually makes $his way up to the stage, strips in front of all the patrons, and says <<if !canTalk($activeSlave)>> - in embarrassed gestures, "please use me, I'm cheap." + in embarrassed gestures, "Please use me, I'm cheap." <<else>> "One credit per fuck, if you'll do my worthle<<ss>> body on <<s>>tage." <</if>> @@ -9400,7 +9397,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<else>> scoop $him up and carry <</if>> - $him to bed, laying the bemused $girl down before cuddling up behind $him. The two of you make languid love, with you murmuring reassuringly into $his ear, nibbling $his neck, cupping $his breasts,<<if $activeSlave.belly >= 1500>>rubbing $his distended midriff,<</if>> and massaging $his shoulders by turns. After a lovely climax together in $his + $him to bed, laying the bemused $girl down before cuddling up behind $him. The two of you make languid love, with you <<if canHear($activeSlave)>>murmuring reassuringly into $his ear, <</if>>nibbling $his neck, cupping $his breasts,<<if $activeSlave.belly >= 1500>>rubbing $his distended midriff,<</if>> and massaging $his shoulders by turns. After a lovely climax together in $his <<if canDoAnal($activeSlave) && canDoVaginal($activeSlave)>> pussy $he coquettishly shifts $himself to line your recovering cock up with $his ass, <<set _didVaginal = 1, _didAnal = 1>> @@ -9573,7 +9570,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<link "Beg her pardon and offer to loan the bitch to her">> <<EventNameDelink $activeSlave>> <<replace "#result">> - The businesswoman's anger turns to malicious anticipation as you call $activeSlave.slaveName over and inform $him that you and the businesswoman have decided $activeSlave.slaveName will be spending the night with her. Now that you look at your business partner, she has certain signs of a sadist. $activeSlave.slaveName notices too, and begins to cry<<if $activeSlave.bellyPreg >= 1500>> and shield $his pregnancy<</if>> as the businesswoman promises that there will be "no permanent damage." $activeSlave.slaveName is unceremoniously returned in the early hours of the morning. $His back and buttocks have been meticulously flogged right up to the very edge of damage, leaving angry marks across $his $activeSlave.skin skin. $His mouth lolls open, as though $he's been doing little but give cunnilingus. <<if $activeSlave.vagina != -1>>$His pussy,<<elseif $activeSlave.dick == 0>>$His shamefully featureless groin with its tiny little hole,<<else>>$His dick,<</if>> anus,<<if $activeSlave.belly >= 10001>> popped navel,<</if>> and even $his nipples show signs of torture. Whenever $he thinks of a sharp remark in the future, @@.hotpink;$he'll remember the pain and keep $his mouth shut.@@ + The businesswoman's anger turns to malicious anticipation as you call $activeSlave.slaveName over and inform $him that you and the businesswoman have decided $activeSlave.slaveName will be spending the night with her. Now that you look at your business partner, she has certain signs of a sadist. $activeSlave.slaveName notices too, and begins to cry<<if $activeSlave.bellyPreg >= 1500>> and shield $his pregnancy<</if>> as the businesswoman promises that there will be "no permanent damage." $activeSlave.slaveName is unceremoniously returned in the early hours of the morning. $His back and buttocks have been meticulously flogged right up to the very edge of damage, leaving angry marks across $his $activeSlave.skin skin. $His mouth lolls open, as though $he's been doing little but give cunnilingus. <<if $activeSlave.vagina != -1>>$His pussy,<<elseif $activeSlave.dick == 0>>$His shamefully featureless groin with its tiny little hole,<<else>>$His dick,<</if>> anus,<<if $activeSlave.belly >= 10000>> popped navel,<</if>> and even $his nipples show signs of torture. Whenever $he thinks of a sharp remark in the future, @@.hotpink;$he'll remember the pain and keep $his mouth shut.@@ <<set $activeSlave.behavioralFlaw = "none", $activeSlave.counter.oral += 5, $oralTotal += 5>> <</replace>> <</link>> @@ -9972,7 +9969,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <br><<link "Geld $him gradually">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You shove $his unresisting<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>swollen<</if>><</if>> body over the couch and seize $his ballsack. When $he feels your tight grip $he spasms and tries to pull away reflexively, but goes limp when $he feels the agony of a warning squeeze. You fasten a tight rubber ring around the base of $his sack, leaving $him writhing on the couch in considerable discomfort. You add leather mittens to $his hands to stop $him removing the rubber, and then observe that this is a method used to geld livestock. $His tearful begging goes on until you tire of it and put $him out. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> tracks $his agonized, weeping progress around the arcology for the many hours it takes the lack of blood flow to necessitate a trip to the remote surgery. When that time comes, you make $him beg you to remove $his balls for an hour straight before you do — and $he's so desperate for relief from the pain that $he does it. The experience has left $him @@.red;slightly injured,@@ @@.orange;gelded,@@ @@.red;thoroughly traumatized,@@ and @@.gold;willing to do anything@@ to avoid any more pain. + You shove $his unresisting<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>swollen<</if>><</if>> body over the couch and seize $his ballsack. When $he feels your tight grip $he spasms and tries to pull away reflexively, but goes limp when $he feels the agony of a warning squeeze. You fasten a tight rubber ring around the base of $his sack, leaving $him writhing on the couch in considerable discomfort. You add leather mittens to $his hands to stop $him from removing the rubber, and then observe that this is a method used to geld livestock. $His tearful begging goes on until you tire of it and put $him out. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> tracks $his agonized, weeping progress around the arcology for the many hours it takes the lack of blood flow to necessitate a trip to the remote surgery. When that time comes, you make $him beg you to remove $his balls for an hour straight before you do — and $he's so desperate for relief from the pain that $he does it. The experience has left $him @@.red;slightly injured,@@ @@.orange;gelded,@@ @@.red;thoroughly traumatized,@@ and @@.gold;willing to do anything@@ to avoid any more pain. <<set $activeSlave.behavioralFlaw = "odd", $activeSlave.trust -= 20, $activeSlave.health -= 10, $activeSlave.balls = 0, $activeSlave.scrotum = 0>> <</replace>> <</link>> @@ -10815,9 +10812,9 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -11099,10 +11096,10 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <</if>> $He explains $himself after a while: it's not what $he thought $he'd be doing with $his life, <<switch $activeSlave.career>> - <<case "a bioreactor" "a breeder" "a breeding bull" "a dairy cow" "a dairy slave" "a fuckdoll" "a Futanari Sister" "a slave" 0>> + <<case "a bioreactor" "a breeder" "a breeding bull" "a dairy cow" "a dairy slave" "a Fuckdoll" "a Futanari Sister" "a slave" "a slave since birth" 0>> once upon a time. <<default>> - back when $he was $activeSlave.career. + back when $he was <<= convertCareer($activeSlave)>>. <</switch>> <<if !canTalk($activeSlave)>> $He points to $himself and uses both hands to mimic sodomy, as though to suggest that's all $he is, before giving you a rueful smile. @@ -11729,7 +11726,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <br><<link "Take the first and last every day">> <<EventNameDelink $activeSlave>> <<replace "#result">> - When $activeSlave.slaveName feels a cock entering $his mouth right after $he's suited up, $he knows it's you and wriggles as best $he can in the suit. It doesn't help much, and $his struggles don't prevent you from moving from $his mouth to $his ass, either. At the end of the day, on the other hand, the female-shaped latex form is completely still and quiescent as you <<if $PC.dick == 0>>use a couple of fingers to brutally molest<<else>>molest<</if>> each of its holes. It takes viciously hard anal penetration to elicit any response at all, and even then, it's just the slightest hint of a moan. @@.gold;$His fear of you has increased.@@ + When $activeSlave.slaveName feels a cock entering $his mouth right after $he's suited up, $he knows it's you and wriggles as best $he can in the suit. It doesn't help much, and $his struggles don't prevent you from moving from $his mouth to $his ass, either. At the end of the day, on the other hand, the <<if $girl == "girl">>fe<</if>>male-shaped latex form is completely still and quiescent as you <<if $PC.dick == 0>>use a couple of fingers to brutally molest<<else>>molest<</if>> each of its holes. It takes viciously hard anal penetration to elicit any response at all, and even then, it's just the slightest hint of a moan. @@.gold;$His fear of you has increased.@@ <</replace>> <<set $activeSlave.trust -= 5, $activeSlave.counter.publicUse += 18>> <<if canDoVaginal($activeSlave)>> @@ -11972,7 +11969,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<EventNameDelink $activeSlave>> <<replace "#result">> <<setNonlocalPronouns $seeDicks>> - You make a ceremony of querying $assistantName, aloud for everyone to hear, into $activeSlave.slaveName's sexual history. $He soon realizes this is a sort of recitation of $his service for the benefit of the other slaves, and $he stands a little straighter. $His <<if canSee($activeSlave)>><<= App.Desc.eyeColor($activeSlave)>> eyes glitter<<else>>face beams<</if>> with @@.mediumaquamarine;pride@@ as $assistantName finishes, "...and $his anus has been penetrated $activeSlave.counter.anal times." You announce that $activeSlave.counter.anal isn't nearly enough, detail a slave to fetch you a comfortable chair, seat yourself, and draw the compliant $activeSlave.slaveName's head down towards your <<if $PC.dick == 0>>pussy<<else>>cock<</if>>. $He gets eagerly to work, surrounded by a circle of slaves staring at the show. You select a favored _girlU and tell $him to get to work driving that anal count up. $activeSlave.slaveName keeps <<if $PC.dick == 0>>eating you out<<else>>sucking your dick<</if>> as the chosen _girlU pulls $activeSlave.slaveName's hips up a little and + You make a ceremony of querying $assistantName, aloud for everyone to hear, into $activeSlave.slaveName's sexual history. $He soon realizes <<if canHear($activeSlave)>>this is a sort of recitation of $his service<<else>>what $assistantName is detailing<</if>> for the benefit of the other slaves, and $he stands a little straighter. $His <<if canSee($activeSlave)>><<= App.Desc.eyeColor($activeSlave)>> eyes glitter<<else>>face beams<</if>> with @@.mediumaquamarine;pride@@ as $assistantName finishes, "...and $his anus has been penetrated $activeSlave.counter.anal times." You announce that $activeSlave.counter.anal isn't nearly enough, detail a slave to fetch you a comfortable chair, seat yourself, and draw the compliant $activeSlave.slaveName's head down towards your <<if $PC.dick == 0>>pussy<<else>>cock<</if>>. $He gets eagerly to work, surrounded by a circle of slaves staring at the show. You select a favored _girlU and tell _himU to get to work driving that anal count up. $activeSlave.slaveName keeps <<if $PC.dick == 0>>eating you out<<else>>sucking your dick<</if>> as the chosen _girlU pulls $activeSlave.slaveName's hips up a little and <<if $activeSlave.butt > 18>> struggles into $his immense butt. <<elseif $activeSlave.butt > 10>> @@ -13598,7 +13595,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<= VCheck.Anal()>> <</if>> <<else>> - you and $activeSlave.slaveName enjoy the sights while fooling around. While you'd love to use $him, $his chastity keeps you at bay. + you and $activeSlave.slaveName enjoy the <<if canSee($activeSlave)>>sights<<else>>atmosphere<</if>> while fooling around. While you'd love to use $him, $his chastity keeps you at bay. <</if>> @@.hotpink;$He has become more devoted to you.@@ <<set $activeSlave.devotion += 4>> @@ -13713,7 +13710,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<link "Let $him get dressed and spend some quality time with $him">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You let $activeSlave.slaveName don a nice dress and take $him out. $He's a little suspicious at first but when you reach the first balcony on your lazy route around the huge building the sun on $his face and the gentle breeze around $his ears convince $him there's no trick. $He watches you shyly as you lead $him around, soaking in the sights and relaxing. Though you still speak as $his <<= WrittenMaster($activeSlave)>>, you chat about goings on around the arcology, and you buy $him a fresh fruit from a vendor. The unexpected show of care and compassion has her quite agog. By the time you take $him out onto another parklike balcony and fuck $him on a bench, + You let $activeSlave.slaveName don a nice dress and take $him out. $He's a little suspicious at first but when you reach the first balcony on your lazy route around the huge building the sun on $his face and the gentle breeze around $his ears convince $him there's no trick. $He watches you shyly as you lead $him around, soaking in the sights and relaxing. Though you still speak as $his <<= WrittenMaster($activeSlave)>>, you chat about goings on around the arcology, and you buy $him a fresh fruit from a vendor. The unexpected show of care and compassion has $him quite agog. By the time you take $him out onto another parklike balcony and fuck $him on a bench, <<if ($activeSlave.dick > 0) && ($activeSlave.chastityPenis == 1) && ($activeSlave.chastityAnus == 1)>> $his combined chastity cage and anal chastity belt makes $him move awkwardly. <<elseif ($activeSlave.dick > 0) && ($activeSlave.chastityPenis == 1)>> @@ -17022,7 +17019,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<link "Talk $him through it">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You put as much quiet authority into your voice as you can, and explain to $him that $he must eat $his breakfast this way. You do not explain any of the actual reasons why you require slaves to eat from cocks, but couch your quiet explanation in terms of $his life as a slave. You tell $him that eating breakfast out of a dick is something you've ordered $him to do. $He needs to do it. If $he does, $he'll be treated well; if $he does not, that will oblige you to punish $him. You tell $him that you would like $him to be a good slave, and that it would be disappointing if you had to punish $him. You put just a hint of steel into the last sentence, and $he stiffens a little at it. Hesitantly, $he scoots forward and bends down to take the tip of the big feeder dick in $his mouth. Sensing that it's being sucked, it gently presses into $his mouth, fucking $his <<if $activeSlave.lips > 95>>big-lipped facepussy<<else>>face<</if>>. Its strokes get longer and faster, until $he's gulping down $his breakfast as it's shot down $his throat like a huge load. + You put as much quiet authority into your <<if canHear($activeSlave)>>voice<<else>>words<</if>> as you can, and explain to $him that $he must eat $his breakfast this way. You do not explain any of the actual reasons why you require slaves to eat from cocks, but couch your quiet explanation in terms of $his life as a slave. You tell $him that eating breakfast out of a dick is something you've ordered $him to do. $He needs to do it. If $he does, $he'll be treated well; if $he does not, that will oblige you to punish $him. You tell $him that you would like $him to be a good slave, and that it would be disappointing if you had to punish $him. You put just a hint of steel into the last sentence, and $he stiffens a little at it. Hesitantly, $he scoots forward and bends down to take the tip of the big feeder dick in $his mouth. Sensing that it's being sucked, it gently presses into $his mouth, fucking $his <<if $activeSlave.lips > 95>>big-lipped facepussy<<else>>face<</if>>. Its strokes get longer and faster, until $he's gulping down $his breakfast as it's shot down $his throat like a huge load. <<if ($suppository != 0) && ($activeSlave.drugs != "none")>>By this time, the kitchen is also dosing $him with drugs by fucking $his butt with a phallus that ejaculates them for absorption. $He's being spitroasted by the kitchen.<</if>> Once $he's fully awake, $he's mostly @@.mediumaquamarine;relieved@@ that you let $him get away with hesitation about obedience and took the time to talk $him through it. <<set $activeSlave.trust += 4>> @@ -17031,7 +17028,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <br><<link "Punish $him with a bigger feeder">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You give the kitchen an order by voice command. It's technical, so $he doesn't understand it, but the meaning becomes clear soon enough. The phallus dangling in $his face is withdrawn, and $he's halfway through a shocked thank you when it's replaced by another, noticeably larger<<if !canSee($activeSlave)>>. $He doesn't notice its larger size until it bumps into $his cheek, causing $him to scoot back<</if>>. You tell $him in deceptively mild tones that you'll keep increasing the size of $his feeder until $he decides to suck it off like a good little $desc, or you run out of size options and are forced to strap $him down and push them down $his throat. At that point, $he might be able to breathe; then again, $he might not. $He begins to cry, $his <<if $activeSlave.face > 95>>heartbreakingly beautiful<<elseif $activeSlave.face > 10>>pretty<<else>>homely<</if>> face clouding with anguish, but is so @@.gold;frightened@@ by the threat that $he doesn't let $him tears distract $him from scooting forward to suck off a huge dildo for $his breakfast. + You give the kitchen an order by voice command. <<if canHear($activeSlave)>>It's technical<<else>>$He can't hear it<</if>>, so $he doesn't understand it, but the meaning becomes clear soon enough. The phallus dangling in $his face is withdrawn, and $he's halfway through a shocked "Thank you" when it's replaced by another, noticeably larger one<<if !canSee($activeSlave)>>. $He doesn't notice its larger size until it bumps into $his cheek, causing $him to scoot back<</if>>. You tell $him in deceptively mild <<if canHear($activeSlave)>>tones<<else>>words<</if>> that you'll keep increasing the size of $his feeder until $he decides to suck it off like a good little $desc, or you run out of size options and are forced to strap $him down and push them down $his throat. At that point, $he might be able to breathe; then again, $he might not. $He begins to cry, $his <<if $activeSlave.face > 95>>heartbreakingly beautiful<<elseif $activeSlave.face > 10>>pretty<<else>>homely<</if>> face clouding with anguish, but is so @@.gold;frightened@@ by the threat that $he doesn't let $him tears distract $him from scooting forward to suck off a huge dildo for $his breakfast. <<if ($suppository != 0) && ($activeSlave.drugs != "none")>>Once it senses $he's complying, the kitchen starts dosing $him with drugs by fucking $his butt with a phallus that ejaculates them for absorption. Mercifully, $he doesn't try to refuse the anal fuckmachine, and avoids having $his asshole filled by a bigger phallus too.<</if>> $He keeps the threat in mind, and has a slightly sore throat to @@.hotpink;help $him remember to obey without question.@@ <<set $activeSlave.trust -= 2, $activeSlave.devotion += 2>> @@ -17040,7 +17037,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <br><<link "Double penetrate $his mouth for insolence">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You step forward and caress the slave's throat, telling $him to suck like a good little $desc. You make no threat, but give $him the order in a voice of brass. $He knows what you can do to $him, and scrabbles forward to obey, @@.gold;terribly frightened.@@ $His fear is justified. You announce that $he's avoided serious punishment, but $he still needs correction for $him hesitation and insolence. $He can't beg or even moan, since $he's being facefucked by the feeder dildo by now, but $his <<= App.Desc.eyeColor($activeSlave)>> eyes widen in terror. $He <<if canSee($activeSlave)>>can't watch you, since $he can't turn $his head,<<else>>can't see what you are doing,<</if>> so $he has almost no time to prepare when you haul $him head most of the way off the feeder and shove <<if $PC.dick == 1>>your own phallus<<else>>a strap-on<</if>> into $his mouth, too. $He gags instantly, almost vomiting, but forces $himself to relax as you begin to thrust into $his throat, alternately with the feeder. The liquid food provides plenty of lubrication, and a lot of liquid for $him to gag on, and before long $he's a degraded, humiliating mess. $He often clamps $his eyes shut as $he desperately concentrates on breathing, squeezing the tears out to run down $his $activeSlave.skin cheeks. + You step forward and caress the slave's throat, telling $him to suck like a good little $desc. You make no threat, but give $him the order in a <<if canHear($activeSlave)>>voice of brass<<else>>commanding manner<</if>>. $He knows what you can do to $him, and scrabbles forward to obey, @@.gold;terribly frightened.@@ $His fear is justified. You announce that $he's avoided serious punishment, but $he still needs correction for $him hesitation and insolence. $He can't beg or even moan, since $he's being facefucked by the feeder dildo by now, but $his <<= App.Desc.eyeColor($activeSlave)>> eyes widen in terror. $He <<if canSee($activeSlave)>>can't watch you, since $he can't turn $his head,<<else>>can't see what you are doing,<</if>> so $he has almost no time to prepare when you haul $him head most of the way off the feeder and shove <<if $PC.dick == 1>>your own phallus<<else>>a strap-on<</if>> into $his mouth, too. $He gags instantly, almost vomiting, but forces $himself to relax as you begin to thrust into $his throat, alternately with the feeder. The liquid food provides plenty of lubrication, and a lot of liquid for $him to gag on, and before long $he's a degraded, humiliating mess. $He often clamps $his eyes shut as $he desperately concentrates on breathing, squeezing the tears out to run down $his $activeSlave.skin cheeks. <<if ($suppository != 0) && ($activeSlave.drugs != "none")>>You leave the poor slave to take $his drugs up the ass, since the kitchen administers those by phallus, too. Fortunately for $him, $he doesn't object to that.<</if>> <<set $activeSlave.trust -= 4, $activeSlave.counter.oral++, $oralTotal++>> <</replace>> @@ -17049,7 +17046,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <br><<link "Force-feed $him with your own cock">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You step forward and pull $him away from the feeder, telling $him that, since $he doesn't like the cockfeeder, $he can suck yours like a good little $desc. You make no threat, but order $him in a steely voice to suck you off until $he's earned a meal of your cum. $He knows what you can do to $him, and hurries forward to obey. $He rushes to open your clothes and get to work, but pauses when <<if canSee($activeSlave)>>$his <<= App.Desc.eyeColor($activeSlave)>> eyes take in your massive testicles.<<else>>$his groping hand feels your massive testicles.<</if>> Realizing just how big $his meal will be, $he's obviously @@.gold;frightened.@@ You grab $his head, breaking $him out of $his shocked stillness, and explain that you can't let $him starve. If $he won't eat out of the feeder, you'll just have to feed $him some other way. With that, you ram your cock forward and start fucking $his <<if $activeSlave.face > 95>>heartbreakingly beautiful<<elseif $activeSlave.face > 10>>pretty<<else>>homely<</if>> face. After a few minutes of gagging oral, you start to approach your climax. Your thorough facefucking leaves $him unable to beg or even moan, but $his eyes widen in terror when $he realizes you're about to cum. You don't give $him any time to prepare, instead hilting yourself immediately, and letting $his throat's desperate attempts to swallow bring you over the edge. You begin your long release of pent-up jizz, spraying deciliter after deciliter of cum down $his throat and into $his stomach. By the time you've finished, you can tell $he's struggling for air and in pain from the massive quantity of thick fluid in $his stomach. You give $him a helpful hint before releasing $him: "If you take it all the way in your throat, you don't even have to <<if canTaste($activeSlave)>>taste<<else>>feel<</if>> what it's feeding you." You pull out of $his mouth and let $him go. $He gasps for air and almost immediately vomits some of your cum all over $himself, turning $him into a degraded, humiliated mess. $He lays on the floor and desperately concentrates on breathing, squeezing the tears out of $his eyes to run down $his $activeSlave.skin cheeks. + You step forward and pull $him away from the feeder, telling $him that, since $he doesn't like the cockfeeder, $he can suck yours like a good little $desc. You make no threat, but order $him <<if canHear($activeSlave)>>in a steely voice<<else>>authoritatively<</if>> to suck you off until $he's earned a meal of your cum. $He knows what you can do to $him, and hurries forward to obey. $He rushes to open your clothes and get to work, but pauses when <<if canSee($activeSlave)>>$his <<= App.Desc.eyeColor($activeSlave)>> eyes take in your massive testicles.<<else>>$his groping hand feels your massive testicles.<</if>> Realizing just how big $his meal will be, $he's obviously @@.gold;frightened.@@ You grab $his head, breaking $him out of $his shocked stillness, and explain that you can't let $him starve. If $he won't eat out of the feeder, you'll just have to feed $him some other way. With that, you ram your cock forward and start fucking $his <<if $activeSlave.face > 95>>heartbreakingly beautiful<<elseif $activeSlave.face > 10>>pretty<<else>>homely<</if>> face. After a few minutes of gagging oral, you start to approach your climax. Your thorough facefucking leaves $him unable to beg or even moan, but $his eyes widen in terror when $he realizes you're about to cum. You don't give $him any time to prepare, instead hilting yourself immediately, and letting $his throat's desperate attempts to swallow bring you over the edge. You begin your long release of pent-up jizz, spraying deciliter after deciliter of cum down $his throat and into $his stomach. By the time you've finished, you can tell $he's struggling for air and in pain from the massive quantity of thick fluid in $his stomach. You give $him a helpful hint before releasing $him: "If you take it all the way in your throat, you don't even have to <<if canTaste($activeSlave)>>taste<<else>>feel<</if>> what it's feeding you." You pull out of $his mouth and let $him go. $He gasps for air and almost immediately vomits some of your cum all over $himself, turning $him into a degraded, humiliated mess. $He lays on the floor and desperately concentrates on breathing, squeezing the tears out of $his eyes to run down $his $activeSlave.skin cheeks. <<if ($suppository != 0) && ($activeSlave.drugs != "none")>>You leave the poor slave to take $his drugs up the ass, since the kitchen administers those by phallus, too. Fortunately for $him, $he doesn't object to that.<</if>> <<set $activeSlave.trust -= 2, $activeSlave.counter.oral++, $oralTotal++>> <</replace>> @@ -17364,7 +17361,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <br><<link "Dance along with $him">> <<EventNameDelink $activeSlave>> <<replace "#result">> - $He doesn't <<if canSee($activeSlave)>>see<<else>>notice<</if>> you advance on $him; $he's facing away from you, and in any case, $he's lost in $his own little world. At the same moment, however, $he begins to hear the track $he's humming, in perfect synchrony with the way $he's humming it, and senses a presence at $his side. You timed it perfectly, directing the sound system here to play the right track, match it to $him, and fade it in as you approached and began to dance beside $him. + $He doesn't <<if canSee($activeSlave)>>see<<else>>notice<</if>> you advance on $him; $he's facing away from you, and in any case, $he's lost in $his own little world. At the same moment, however, $he begins to hear the track you're humming, in perfect synchrony with the way $he's humming it, and senses a presence at $his side. You timed it perfectly, directing the sound system here to play the right track, match it to $him, and fade it in as you approached and began to dance beside $him. <<if $PC.title == 0>> You've got a woman's body, and you match $his moves, though an observer might see greater power and dominance in the way you dance. <<else>> @@ -17601,16 +17598,16 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _newSlaves[0] 2 0>> + <<= SlaveArt(_newSlaves[0], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _newSlaves[1] 2 0>> + <<= SlaveArt(_newSlaves[1], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _newSlaves[2] 2 0>> + <<= SlaveArt(_newSlaves[2], 2, 0)>> </div> </div> <</if>> @@ -17618,7 +17615,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <</replace>> You seize a tablet and hurry out of your office, working furiously and using every feature of $assistantName to the utmost. These bitches have offended you, and you quickly frame the structure of an appropriate revenge. By the time you get to where $activeSlave.slaveName is still being heckled by spoiled, drunken harpies, everyone else present in that arcology hall has mysteriously received urgent messages and gone elsewhere. $activeSlave.slaveName <<if canSee($activeSlave)>>sees you approach, and stares at you<<else>>recognizes your dominant footsteps approaching, and turns to face you<</if>>, $his sudden intense look alerting your vile little guests to your presence. One of them attempts to frame an insult for the interloper, but one of _his2 friends pokes _him2 in the side and whispers something in _his2 ear and _he2 goes silent, staring at you with wide eyes. - <<if $PC.title != 1>>_He2 then winces, visibly realizing that you're likely aware that _he2 called $activeSlave.slaveName's owner $his Master. Somehow, the mistake seems important to _him2 now that you're standing here, effortlessly dominating the space for all your femininity.<</if>> + <<if $PC.title != 1>>_He2 then winces, visibly realizing that you're likely aware that _he2 called $activeSlave.slaveName's owner $his "Master". Somehow, the mistake seems important to _him2 now that you're standing here, effortlessly dominating the space for all your femininity.<</if>> <br><br> You hold the tablet out to them wordlessly. It's displaying security footage of the three of them, boarding a public VTOL transport for another arcology nearby. The prominent timestamp is thirty minutes in the future. The scene changes, showing them partying in one of that arcology's nightclubs. You clear your throat, dragging their attention away from the counterfeited footage, and describe in detail the other evidence — tickets, identification checks, biometrics — that will prove they left your arcology and visited two others before regrettably disappearing. One of them tries, with utter predictability, to threaten you with _his2 father, but you tell _him2 bluntly that if he does make the effort, he'll be looking in the wrong place. <br><br> @@ -19223,19 +19220,19 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<else>> slide your stiff prick up between the virgin's thighs for some intercrural sex. <</if>> - As you fuck<<if $activeSlave.belly >= 5000 || $PC.belly >= 5000 || $activeSlave.weight > 160 || $activeSlave.boobs > 40000 || $activeSlave.butt > 10>> in the cramped corridor<</if>>, $his <<if canSee($activeSlave)>>gaze flicks up and down along the row<<else>>ears perks up at the subtle sounds<</if>> of suffering bodies. $He climaxes again and again, shuddering at each new subtle sign that another one of the slaves here is being degraded by yet another cock inserted into yet another of _hisU defenseless holes. By the time you're satisfied, $he's so exhausted that $his legs are shuddering uncontrollably as $he struggles to remain standing with you. You drop $him, leaving $him to find $his own way out of this place. You look back from the entrance, seeing that $he's following you on shaky legs, <<if canSee($activeSlave)>>staring at<<else>>facing<</if>> you with a profound look of mixed @@.mediumaquamarine;trust for your understanding of $his horrible sadism,@@ and deep unease that this is what truly gets $him off. + As you fuck<<if $activeSlave.belly >= 5000 || $PC.belly >= 5000 || $activeSlave.weight > 160 || $activeSlave.boobs > 40000 || $activeSlave.butt > 10>> in the cramped corridor<</if>>, $his <<if canSee($activeSlave)>>gaze flicks up and down along the row<<elseif canHear($activeSlave)>>ears perk up at the subtle sounds<<else>>expression indicates that $he's become lost in $his thoughts<</if>> of suffering bodies. $He climaxes again and again, shuddering at each new subtle sign that another one of the slaves here is being degraded by yet another cock inserted into yet another of _hisU defenseless holes. By the time you're satisfied, $he's so exhausted that $his legs are shuddering uncontrollably as $he struggles to remain standing with you. You drop $him, leaving $him to find $his own way out of this place. You look back from the entrance, seeing that $he's following you on shaky legs, <<if canSee($activeSlave)>>staring at<<else>>facing<</if>> you with a profound look of mixed @@.mediumaquamarine;trust for your understanding of $his horrible sadism,@@ and deep unease that this is what truly gets $him off. <</replace>> <<set $activeSlave.trust += 5>> <</link>> <<else>> - Fucking $him here would be interesting; unfortunately there just isn't enough room for two mothers-to-be. + Fucking $him here would be interesting; unfortunately, there just isn't enough room for two mothers-to-be. <</if>> <br><<link "Teach $him about true sadism">> <<set _ress = $slaveIndices[$ArcadeiIDs.random()]>> <<setLocalPronouns $slaves[_ress] 2>> <<replace "#result2">> $He seems to be focusing on the purely physical aspects of the degradation here. The true meaning of this place is so much more, and you decide to share it with $him. You call $his name, tearing $his attention away from the spectacle mere <<if $showInches == 2>>inches<<else>>centimeters<</if>> over your heads, and <<if canSee($activeSlave)>>point<<else>>direct $him<</if>> to a particular slave. You tell $activeSlave.slaveName that this particular Arcade inmate's name is - <<= SlaveFullName($slaves[_ress])>>. You tell $him that _he2 is $slaves[_ress].actualAge years old, that _he2 is $slaves[_ress].nationality, and that _he2 was once $slaves[_ress].career. You list more details of _his2 life before _he2 was placed here to be fucked endlessly. $activeSlave.slaveName's eyes widen as you recite the details of the prior life of this piece of human sexual equipment and the sheer weight of the intellectual sadism smashes into $him. Then the slave above you both jerks a little. <<if $activeSlave.dick == 0>>There's no visible sign _his2 pussy's being fucked, so it must be<<else>>_His2 cock hardens involuntarily, indicating that it's<</if>> going into _his2 ass. You resume, mentioning that _he2's been buttfucked $slaves[_ress].counter.anal times. + <<= SlaveFullName($slaves[_ress])>>. You tell $him that _he2 is $slaves[_ress].actualAge years old, that _he2 is $slaves[_ress].nationality, and that _he2 was once <<= convertCareer($slaves[_ress])>>. You list more details of _his2 life before _he2 was placed here to be fucked endlessly. $activeSlave.slaveName's eyes widen as you recite the details of the prior life of this piece of human sexual equipment and the sheer weight of the intellectual sadism smashes into $him. Then the slave above you both jerks a little. <<if $activeSlave.dick == 0>>There's no visible sign _his2 pussy's being fucked, so it must be<<else>>_His2 cock hardens involuntarily, indicating that it's<</if>> going into _his2 ass. You resume, mentioning that _he2's been buttfucked $slaves[_ress].counter.anal times. $activeSlave.slaveName jerks suddenly, <<if canAchieveErection($activeSlave)>>shooting $his cum onto the floor<<elseif $activeSlave.vagina < 0>>dribbling a little<<elseif $activeSlave.vaginaLube > 0>>squirting onto the floor<<else>>orgasming<</if>>. $He came without being touched. $He <<if canSee($activeSlave)>>stares at<<else>>faces<</if>> the mess $he made just by being in the presence of the arcology's @@.hotpink;undisputed preeminent sadist;@@ $he shudders at the sheer gothic glory of it. $He has a new moment to think of when $he feels like @@.lightsalmon;indulging $his own sadism.@@ <</replace>> <<set $activeSlave.devotion += 5, $activeSlave.fetishStrength = Math.clamp($activeSlave.fetishStrength+10, 0, 100)>> @@ -19273,9 +19270,9 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -19390,7 +19387,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<else>> <<if $activeSlave.belly >= 5000>>carefully <</if>>lift $him up from $his low position beneath you and carry $him to bed, laying the flushed older $woman down on the sheets before gently positioning yourself on top of $him. <</if>> - Together, the two of you make fiercely intimate love, while you whisper romantic reassurances into $his ear, nip at $his neck, + Together, the two of you make fiercely intimate love, while you <<if canHear($activeSlave)>>whisper romantic reassurances into $his ear, <</if>>nip at $his neck, <<if $activeSlave.bellyPreg >= 300000>> run your hands across $his squirming brood, <<elseif $activeSlave.preg > $activeSlave.pregData.normalBirth/2>> @@ -19466,9 +19463,9 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -19555,7 +19552,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <</if>> down on the sheets before gently positioning yourself on top of $him. <</if>> - Together, the two of you make fiercely intimate love, while you whisper romantic reassurances into $his ear, nip at $his neck, + Together, the two of you make fiercely intimate love, while you <<if canHear($activeSlave)>>whisper romantic reassurances into $his ear, <</if>>nip at $his neck, <<if $activeSlave.bellyPreg >= 300000>> run your hands across $his squirming brood, <<elseif $activeSlave.preg > $activeSlave.pregData.normalBirth/2>> @@ -19631,9 +19628,9 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -19893,7 +19890,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He Though your experience was more stimulating than $hers, $activeSlave.slaveName enjoyed @@.hotpink;being used while you enjoyed yourself.@@ <<set $activeSlave.devotion += 4>> <<else>> - Although you enjoyed her ministrations, $activeSlave.slaveName had a bad time because of $his @@.gold;hate of oral.@@ + Although you enjoyed $his ministrations, $activeSlave.slaveName had a bad time because of $his @@.gold;hate of oral.@@ <<set $activeSlave.devotion -= 2>> <</if>> <<set $activeSlave.counter.oral += 1, $oralTotal += 1>> @@ -20502,7 +20499,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<replace "#result">> You decide to exercise a little maliciousness. You take a step forward, producing a look of <<if $activeSlave.energy > 80>>lustful anticipation<<elseif $activeSlave.trust > 20>>expectation<<else>>trepidation<</if>>, - but then you stop, <<if canSee($activeSlave)>>wordlessly<<else>>loudly<</if>> gesturing at $him to continue. $He does, bending $him back forward and backward, concave and convex, rolling $himself around on $his hips a little, and making $his <<if $activeSlave.belly >= 5000>>_belly belly and <</if>>breasts move mesmerizingly. Eventually, $he stretches deeply enough that<<if $activeSlave.trust <= 50>> $he lets $his guard down and<</if>> $his eyes close again. + but then you stop, <<if canSee($activeSlave)>>wordlessly<<elseif canHear($activeSlave)>>loudly<<else>>nudging and<</if>> gesturing at $him to continue. $He does, bending $him back forward and backward, concave and convex, rolling $himself around on $his hips a little, and making $his <<if $activeSlave.belly >= 5000>>_belly belly and <</if>>breasts move mesmerizingly. Eventually, $he stretches deeply enough that<<if $activeSlave.trust <= 50>> $he lets $his guard down and<</if>> $his eyes close again. <<switch $activeSlave.nipples>> <<case "tiny">> $His tiny little nipples are too small to grab and pull effectively, so you simply flick them, aiming a vicious high-velocity fingernail at each of them, using both hands. @@ -20553,7 +20550,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<default>>pulling $his soft nipple and some of the areolae around it into your mouth. <</switch>> $His rich milk begins to flow across your tongue, creamy and with a hint of vanilla. $He breathes faster and faster as $he becomes aroused, but then the stimulation peaks. You keep drinking from $him, making no move to stop nursing and start fucking $him. $He sighs with sudden contentment, realizing that you're going to drink every drop $he has, and $his sudden relaxation sends a little extra gush of milk into your mouth. $He @@.hotpink;definitely enjoys the experience,@@ leaning back compliantly as you drain that breast and then $his left one, too. - <<if $activeSlave.boobs > 25000 || ($activeSlave.boobs > 10000 && $activeSlave.lactation > 1)>>Your clothes feel tight around your middle for the rest of the day, you may have indulged a little too much.<</if>> + <<if $activeSlave.boobs > 25000 || ($activeSlave.boobs > 10000 && $activeSlave.lactation > 1)>>Your clothes feel tight around your middle for the rest of the day; you may have indulged a little too much.<</if>> <<set $activeSlave.devotion += 5>> <<EventFetish $activeSlave "boobs">> <<set $activeSlave.lactationDuration = 2>> @@ -20577,9 +20574,9 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -20761,16 +20758,16 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ <</replace>> <<set $activeSlave.clothes = _clothesTemp>> <<replace "#result">> - You tell $him that the wardrobe's sorting system will present $him with a new outfit, just for today. $He's to go try it on and come right back, to see how it fits. "Thank<<s>>, <<Master>>!" $he <<say>>s brightly, and hurries off to see what's in store for $him. $He might be a slave and a $desc but girls everywhere love trying on new clothes. $He makes an entrance when $he comes back, spinning around to show off. $He's wearing the briefest possible string bikini. The top, rather than having patches of material to cover $his nipples, forms a string triangle around them, framing them but not covering them. The bottom is a single string in front, <<if $activeSlave.dick>>which looks rather sad and alone, pushed aside by $his dick as it is<<elseif $activeSlave.labia>>and it's embraced completely by $his generous pussylips<<else>>and it threatens to disappear inside $his pussylips<</if>>. "Thi<<s>> feel<<s>> <<s>>o hot, <<Master>>," $he <<say>>s, and + You tell $him that the wardrobe's sorting system will present $him with a new outfit, just for today. $He's to go try it on and come right back, to see how it fits. "Thank<<s>>, <<Master>>!" $he <<say>>s brightly, and hurries off to see what's in store for $him. $He might be a slave and a $desc but <<= $girl>>s everywhere love trying on new clothes. $He makes an entrance when $he comes back, spinning around to show off. $He's wearing the briefest possible string bikini. The top, rather than having patches of material to cover $his nipples, forms a string triangle around them, framing them but not covering them. The bottom is a single string in front, <<if $activeSlave.dick>>which looks rather sad and alone, pushed aside by $his dick as it is<<elseif $activeSlave.labia>>and it's embraced completely by $his generous pussylips<<else>>and it threatens to disappear inside $his pussylips<</if>>. "Thi<<s>> feel<<s>> <<s>>o hot, <<Master>>," $he <<say>>s, and <<if $activeSlave.fetishKnown && $activeSlave.fetish == "humiliation">> blushes cutely. $He looks up at you, <<if canSee($activeSlave)>>sees<<else>>feels<</if>> the way you're staring at $him, and hangs $his head, blushing even harder. <<elseif $activeSlave.fetishKnown && $activeSlave.fetish == "buttslut">> @@ -20794,7 +20791,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<elseif $activeSlave.assignment == "whore" || $activeSlave.assignment == "serve the public">> sneaks a hand under the string around $his waist, tugging $his bottom up <<if $activeSlave.vagina != -1>>until the string between $his legs is pulled up into the entrance of $his womanhood<<else>>and turning sideways to suggest $his ass<</if>>. "Guy<<s>>'ll <<if $activeSlave.assignment == "whore">>pay money for<<else>>line up to fuck<</if>> thi<<s>>," $he giggles. <<else>> - bounces a little, smiling. "I'm ba<<s>>ically naked," $he giggles. "Today i<<s>> going to be fun. The other girl<<s>>'ll be jealou<<s>> you wanted me to look <<s>>o <<s>>lutty. Love you, <<Master>>." + bounces a little, smiling. "I'm ba<<s>>ically naked," $he giggles. "Today i<<s>> going to be fun. The other $girl<<s>>'ll be jealou<<s>> you wanted me to look <<s>>o <<s>>lutty. Love you, <<Master>>." <</if>> $He's happy you indulged $him, and @@.mediumaquamarine;satisfied that you think $he's cute@@ enough to have around (practically) nude. <<set $activeSlave.trust += 5>> @@ -20807,16 +20804,16 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ <</replace>> <<set $activeSlave.clothes = _clothesTemp>> <<replace "#result">> - You tell $him that the wardrobe's sorting system will present $him with a new outfit, just for today. $He's to go try it on and come right back, to see how it fits. "Thanks, <<Master>>!" $he <<say>>s brightly, and hurries off to see what's in store for $him. $He might be a slave and a $desc but girls everywhere love trying on new clothes. $He's wrong to be so enthusiastic. $He comes obediently back, wearing a set of cruelly uncomfortable leather straps in the general shape of a bikini, but much tighter and more restrictive. It isn't at all what $he was expecting, but $he did $his best to obey. $He's @@.gold;tightened $his own straps down@@ until they're just short of cutting off circulation, in an obvious effort to please you. You ask $him how $he likes $his outfit. "It'<<s>> ni<<c>>e, <<Master>>," $he <<say>>s, but $he sounds a little sad. + You tell $him that the wardrobe's sorting system will present $him with a new outfit, just for today. $He's to go try it on and come right back, to see how it fits. "Thanks, <<Master>>!" $he <<say>>s brightly, and hurries off to see what's in store for $him. $He might be a slave and a $desc but <<= $girl>>s everywhere love trying on new clothes. $He's wrong to be so enthusiastic. $He comes obediently back, wearing a set of cruelly uncomfortable leather straps in the general shape of a bikini, but much tighter and more restrictive. It isn't at all what $he was expecting, but $he did $his best to obey. $He's @@.gold;tightened $his own straps down@@ until they're just short of cutting off circulation, in an obvious effort to please you. You ask $him how $he likes $his outfit. "It'<<s>> ni<<c>>e, <<Master>>," $he <<say>>s, but $he sounds a little sad. <<if $activeSlave.fetishKnown && $activeSlave.fetish == "humiliation">> "I'm ju<<s>>t a worthle<<ss>> humiliation <<s>>lut. I love having <<s>>teel ring<<s>> around my hole<<s>> like thi<<s>>," $he adds. <<elseif $activeSlave.fetishKnown && $activeSlave.fetish == "buttslut">> @@ -20959,7 +20956,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <br><<link "Try the 'Butter Strategy'">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You ponder $his predicament for a moment before settling on a solution. You procure an industrial sized jar of curative laced moisturizing butter — specially formulated to ease the strain of hypermassive pregnancy — and explain to your slave that, to free $him, you're going to need to completely cover $him in it so that $he can squeeze through. + You ponder $his predicament for a moment before settling on a solution. You procure an industrial-sized jar of curative-laced moisturizing butter — specially formulated to ease the strain of hypermassive pregnancy — and explain to your slave that, to free $him, you're going to need to completely cover $him in it so that $he can squeeze through. <<if $activeSlave.devotion > 95>> $He grins at you and then huffs, pretending to be put off by the idea. <<elseif $activeSlave.devotion > 50>> @@ -20969,7 +20966,7 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He <<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> $He had seemed uneasy when you first described your idea, but seems to resign $himself to it once you finish your description. <<elseif ($activeSlave.trust < -50)>> - The wide eyed slave nods as you describe your idea, clearly hoping you'll free $him as quickly as possible so that $he can get away from you. + The wide-eyed slave nods as you describe your idea, clearly hoping you'll free $him as quickly as possible so that $he can get away from you. <<else>> $He laughs derisively at you after you describe your idea, then motions for you to get on with it. <</if>> diff --git a/src/uncategorized/RESSTR.tw b/src/uncategorized/RESSTR.tw index e506e8024681131786e7666134a1289a29f3d2aa..66593fdf738d1dc740be785b84edf53041b5d79f 100644 --- a/src/uncategorized/RESSTR.tw +++ b/src/uncategorized/RESSTR.tw @@ -44,9 +44,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw index aa56f7a825005288e41df02e71a87b39ec941bb0..fbbe27505e9d8538692027bf80d2d2e724296bf4 100644 --- a/src/uncategorized/RETS.tw +++ b/src/uncategorized/RETS.tw @@ -180,10 +180,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> @@ -327,9 +327,7 @@ _He2 stiffens with the lewd feeling of the warm fluid pressing into _his2 mouth. <<case "date please">> -After you complete your weekly inspection of <<EventNameLink>>, the -$desc -asks if $he can beg a favor. Absurd though it sounds, $he does exactly that, saying in $his <<if $activeSlave.voice > 2>>high<<elseif $activeSlave.voice > 1>>feminine<<else>>bimbo<</if>> voice, "<<Master>>, may I a<<s>>k a favor?" You take a moment to look at $him, standing there in front of your desk. $He's devoted to you, willing to please you for the sake of pleasing you, rather than to avoid punishment or make $his own life easier. And $he's very trusting, confident that $he can say such an odd thing without fear. So, you hear $him out. +After you complete your weekly inspection of <<EventNameLink>>, the $desc asks if $he can beg a favor. Absurd though it sounds, $he does exactly that, saying in $his <<if $activeSlave.voice > 2>>high<<elseif $activeSlave.voice > 1>>feminine<<else>>bimbo<</if>> voice, "<<Master>>, may I a<<s>>k a favor?" You take a moment to look at $him, standing there in front of your desk. $He's devoted to you, willing to please you for the sake of pleasing you, rather than to avoid punishment or make $his own life easier. And $he's very trusting, confident that $he can say such an odd thing without fear. So, you hear $him out. <br><br> "Thank you, <<Master>>," $he <<say>>s. "I would like to do <<s>>omething for $subSlave.slaveName." You ask if $he's worried about $his <<if $activeSlave.relationship >= 5>>wife<<else>>girlfriend<</if>> for some reason. "Oh no, <<Master>>," $he answers hurriedly. "No, no, that came out wrong. It'<<s>> ju<<s>>t that I love _him2 and I want to, you know, get _him2 <<s>>omething or do <<s>>omething <<s>>pe<<c>>ial for _him2. We don't really have <<s>>tuff of our own, <<s>>o I can't give _him2 a pre<<s>>ent, and we already do everything either one of u<<s>> want<<s>> in bed, <<s>>o I can't really think of anything." $He <<if canSee($activeSlave)>>looks<<else>>gazes<</if>> at you hopefully. @@ -914,7 +912,7 @@ The slaves are about to go to bed; they're naked, and the horny $activeSlave.sla <<elseif !_vaginal && $subSlave.butt > 3>> "You've got <<s>>uch a ni<<c>>e a<<ss>>," $he wheedles. "It'<<s>> ju<<s>>t <<s>>o big, and round, and, um, out there." $He swallows, getting distracted. <<elseif $subSlave.boobShape == "perky">> - "Your tit<<s>> are incredible," $he wheedles. "<<if $subSlave.boobs > 800>>They're magical. There'<<s>> no other explanation for them being <<s>>o huge and <<s>>till perky.<<elseif $subSlave.boobs > 400>>They're <<s>>o perky and perfect.<<else>>They're <<s>>o tiny and cute!<</if>> I want you<<if !_vaginal>>r a<<ss>><</if>> <<s>>o much!" + "Your tit<<s>> are incredible," $he wheedles. "<<if $subSlave.boobs > 800>>They're magical. There'<<s>> no other e<<x>>planation for them being <<s>>o huge and <<s>>till perky.<<elseif $subSlave.boobs > 400>>They're <<s>>o perky and perfect.<<else>>They're <<s>>o tiny and cute!<</if>> I want you<<if !_vaginal>>r a<<ss>><</if>> <<s>>o much!" <<elseif $subSlave.boobShape == "torpedo-shaped">> "Your torpedoe<<s>> are incredible," $he wheedles. "<<if $subSlave.boobs > 400>>The way they <<s>>way when you move <<sh>>ould be again<<s>>t the rule<<s>>.<<else>>They're <<s>>o tiny and cute!<</if>> I want you<<if !_vaginal>>r a<<ss>><</if>> <<s>>o much!" <<elseif $subSlave.muscles > 30>> @@ -1123,10 +1121,10 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> @@ -1152,10 +1150,10 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> @@ -1186,10 +1184,10 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> @@ -1564,10 +1562,10 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/REresistantmotherdaughter.tw b/src/uncategorized/REresistantmotherdaughter.tw index d884abad69eb0bf5c571870d009b6284ae97af05..0789c5642bd97a0ad4ac9f63923c6c77bac633b3 100644 --- a/src/uncategorized/REresistantmotherdaughter.tw +++ b/src/uncategorized/REresistantmotherdaughter.tw @@ -14,10 +14,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $slaves[$i] 2 0>> + <<= SlaveArt($slaves[$i], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[$j] 2 0>> + <<= SlaveArt($slaves[$j], 2, 0)>> </div> </div> <</if>> @@ -26,7 +26,7 @@ <<set $slaves[$i].clothes = _clothesTemp>> <<set $slaves[$j].clothes = _clothesTemp2>> -$slaves[$i].slaveName and $his daughter are both having trouble getting acclimated to your ownership, with their obedience suffering as a result. Though neither of them have done anything particular egregious lately, their combined list of minor transgressions is reaching a point where rendering punishment on the two would not be seen as unfair. By happenstance they come before you for inspection one after the other. Though they certainly see each other naked frequently around the penthouse, neither seems particularly comfortable around the other when nudity is involved. While you finish $slaves[$i].slaveName's inspection, $his daughter fidgets uneasily even while trying to mimic the posture and appearance of an obedient slave. It occurs to you that the current situation presents an opportunity to do //something// about this resistant mother daughter pair. +$slaves[$i].slaveName and $his daughter are both having trouble getting acclimated to your ownership, with their obedience suffering as a result. Though neither of them have done anything particular egregious lately, their combined list of minor transgressions is reaching a point where rendering punishment on the two would not be seen as unfair. By happenstance they come before you for inspection one after the other. Though they certainly <<if canSee($slaves[$i]) && canSee($slaves[$j])>>see each other naked frequently around<<else>>are frequently naked around each other in<</if>> the penthouse, neither seems particularly comfortable around the other when nudity is involved. While you finish $slaves[$i].slaveName's inspection, $his daughter fidgets uneasily even while trying to mimic the posture and appearance of an obedient slave. It occurs to you that the current situation presents an opportunity to do //something// about this resistant mother daughter pair. <br><br> <span id="result"> @@ -57,9 +57,9 @@ $slaves[$i].slaveName and $his daughter are both having trouble getting acclimat <</link>> <br><<link "Make an example of the mother">> <<replace "#result">> - You give them orders of devastating simplicity: You are going to assrape $slaves[$i].slaveName and if $his daughter offers even the most token of resistance, you'll punish $slaves[$i].slaveName. They're stunned, but you shake them out of their shock by grabbing $slaves[$i].slaveName by the arm<<if $PC.dick == 0>>,donning a strap-on<</if>> and shoving $him over your desk. $slaves[$j].slaveName flinches visibly as you enter _his2 mother's ass in one brutal stroke, for which you stain _his2 mother's asscheeks a rosy red with a torrent of harsh spanks. $slaves[$i].slaveName takes the rough anal pounding with only quiet sobbing and the occasional whimper of pain, but $his daughter can't bear to see $slaves[$i].slaveName in such duress and breaks _his2 short-lived silence to beg for mercy. When you step away from $slaves[$i].slaveName, $slaves[$j].slaveName lets out a sigh of relief, but _his2 expression soon turns to horror and revulsion when you return to mount _his2 mother with a lash in hand. + You give them orders of devastating simplicity: You are going to assrape $slaves[$i].slaveName and if $his daughter offers even the most token of resistance, you'll punish $slaves[$i].slaveName. They're stunned, but you shake them out of their shock by grabbing $slaves[$i].slaveName by the arm<<if $PC.dick == 0>>,donning a strap-on<</if>> and shoving $him over your desk. $slaves[$j].slaveName flinches visibly as you enter _his2 mother's ass in one brutal stroke, for which you stain _his2 mother's asscheeks a rosy red with a torrent of harsh spanks. $slaves[$i].slaveName takes the rough anal pounding with only quiet sobbing and the occasional whimper of pain, but $his daughter can't bear to <<if canSee($slaves[$j])>>see<<elseif canHear($slaves[$j])>>hear<<else>>have<</if>> $slaves[$i].slaveName in such duress and breaks _his2 short-lived silence to beg for mercy. When you step away from $slaves[$i].slaveName, $slaves[$j].slaveName lets out a sigh of relief, but _his2 expression soon turns to horror and revulsion when you return to mount _his2 mother with a lash in hand. <br><br> - When you eventually finish your merciless assrape of $slaves[$i].slaveName, $his body is covered in bruises, marks, and handprints. A testament to $slaves[$j].slaveName's inability to keep _his2 silence as you brutalized _his2 mother. You leave your office wordlessly to attend to other matters, while behind you $slaves[$j].slaveName gazes forlornly at the gibbering mess you have reduced _his2 mother to. + When you eventually finish your merciless assrape of $slaves[$i].slaveName, $his body is covered in bruises, marks, and handprints. A testament to $slaves[$j].slaveName's inability to keep _his2 silence as you brutalized _his2 mother. You leave your office wordlessly to attend to other matters, while behind you $slaves[$j].slaveName gazes <<if canSee($slaves[$j])>>forlornly<<else>>blindly<</if>> at the gibbering mess you have reduced _his2 mother to. Your severe punishment of _his2 mother has encouraged $slaves[$j].slaveName to @@.gold;fear you.@@ $slaves[$i].slaveName has been fucked into @@.hotpink;submission@@ but your savage treatment has caused $him to @@.red;hate buttsex.@@ <<set $slaves[$j].trust -= 10>> diff --git a/src/uncategorized/arcade.tw b/src/uncategorized/arcade.tw index d4d4a0f74608c6bd041f8ba9f1748dd41de3c746..bbf3c3e039a9be6f3fecbf6faedbf32e4f78790e 100644 --- a/src/uncategorized/arcade.tw +++ b/src/uncategorized/arcade.tw @@ -28,7 +28,7 @@ $arcadeNameCaps <<case "Repopulation Focus">> is constructed so that the slaves lie within the arcade facing up. A hole is situated above them, so that their belly has room to protrude upwards as they are fucked pregnant. <<case "Eugenics">> - is designed with built in dispensers for various prophylactics. Numerous reminders to not impregnate subhumans line the walls along with offers for patrons to join the ranks of the elite. + is designed with built in dispensers for various prophylactics. Numerous reminders to not impregnate subhumans line the walls along with offers for patrons to join the ranks of the Elite. <<case "Transformation Fetishist">> reveals more of its inmates' bodies than the typical Free Cities sex arcade. There's no attempt to hide the feeding arrangements or injection lines, since transformation into a human sex toy is considered arousing here. <<case "Gender Radicalist">> @@ -55,6 +55,14 @@ $arcadeNameCaps is barely distinguishable from a standard Free Cities sex arcade. The difference is a fun one, though: since the butts sticking out of the wall are much skinnier than usual, there's no padding to get in the way of hilting oneself in the holes. <<case "Hedonistic">> is built in such a way so that most of a slave's ass, thighs, breasts and belly are exposed for patrons to grope and fondle. Plenty of cup holders and surfaces are available to hold one's food and drink as they enjoy their hole of choice. +<<case "Intellectual Dependency">> + is barely distinguishable from a standard Free Cities sex arcade. The difference is a fun one, though: $arcadeName keeps track of the total number of orgasms each stall experiences each day and displays the current leader to encourage competition. +<<case "Slave Professionalism">> + is constructed so that nothing but the slaves' holes can be seen. No details are given about the slave within, nor are their minds allowed to perceive what is happening around them. +<<case "Petite Admiration">> + is barely distinguishable from a standard Free Cities sex arcade. The difference is remarkable, though: since it expects clientele of all sizes, the stalls are easily ratcheted to the perfect height. +<<case "Statuesque Glorification">> + is constructed so that the slaves' holes are lined up perfectly for the taller clientele. This makes it possible to maintain the appearance of offering nothing but tall slaves while using $arcadeName to get value out of short bitches' holes. <<default>> is a standard Free Cities sex arcade: a pair of hallways extend away from the entrance, lined with doorless stalls like those in a public restroom. One hallway offers mouths, the other <<if $seeDicks != 100>>vaginas and <</if>>anuses. <</switch>> diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw index b5ff0cb465bd3b1b011ed379f90d4b05063ff4f2..240283537fa3219241566a9a99fa204396674443 100644 --- a/src/uncategorized/arcadeReport.tw +++ b/src/uncategorized/arcadeReport.tw @@ -66,7 +66,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/arcmgmt.tw b/src/uncategorized/arcmgmt.tw index b094e65fb459b34078520eb53c3f930d944d1924..aa8cf82b1110846c0acc330ad830c0c3b57ced8f 100644 --- a/src/uncategorized/arcmgmt.tw +++ b/src/uncategorized/arcmgmt.tw @@ -1008,7 +1008,7 @@ _SCD = Math.trunc(($upperClass * (2 + _slaveDemandU)) + ($topClass * (12 + _slav /*Setting GDP depending on population*/ <<set $GDP = Math.trunc((($NPCSlaves + $menials) * 0.35 * _slaveProductivity) + ($lowerClass * 0.35) + ($middleClass * 0.75) + ($upperClass * 2) + ($topClass * 10)) / 10>> /*Top Class Interest in living in your arcology*/ -<<if $eliteFailTimer > 0>> /*when you fail the eugenics elite and they leave this triggers*/ +<<if $eliteFailTimer > 0>> /*when you fail the eugenics Elite and they leave this triggers*/ <<set _TCD = Math.trunc(($GDP / 15 + _topClass) * $rentEffectT * _topClassP + $TCBase - ($eliteFail / 15 * $eliteFailTimer)), $eliteFailTimer -= 1>> <<else>> @@ -1124,7 +1124,7 @@ _percTopClass = Math.trunc(($topClass / ($ACitizens + $ASlaves)) * 1000) / 10>> Pregnant citizens are offered subsidized rent to encourage free women to become pregnant and pregnant women to join the free population of your arcology. <<elseif $arcologies[0].FSRestartLaw == 1>> <<set _rentMultiplier *= 1.05>> - Non-elite citizens who refuse to be sterilized face a moderate tax and the looming possibility of expulsion or enslavement. + Non-Elite citizens who refuse to be sterilized face a moderate tax and the looming possibility of expulsion or enslavement. <</if>> <<if $arcologies[0].FSHedonisticDecadenceLaw == 1>> <<set _rentMultiplier *= 0.95>> diff --git a/src/uncategorized/arcologyDescription.tw b/src/uncategorized/arcologyDescription.tw index cc7f9a0d9cba7769fb3258657cce8827d243207c..6ba09c516427ab9e43b82b707a39884c978de633 100644 --- a/src/uncategorized/arcologyDescription.tw +++ b/src/uncategorized/arcologyDescription.tw @@ -155,7 +155,7 @@ Its<<if $weatherCladding == 2>> glorious<<elseif $weatherCladding > 0>> dull<<el Some are showing medical programs about pregnancy, interspersed with pornography starring slaves with big pregnant bellies. <</if>> <<if $arcologies[0].FSRestartDecoration >= 40>> - Some are showing propaganda discouraging slave pregnancy, while encouraging the elite to interbreed. Others urge free citizens to join the Societal Elite today. + Some are showing propaganda discouraging slave pregnancy, while encouraging the Elite to interbreed. Others urge free citizens to join the Societal Elite today. <</if>> <<if $arcologies[0].FSGenderFundamentalistDecoration >= 40>> Some are showing pornography starring women with perfect tits, tight asses and nice pussies. @@ -638,7 +638,7 @@ Its<<if $weatherCladding == 2>> glorious<<elseif $weatherCladding > 0>> dull<<el <<if $arcologies[0].FSSlimnessEnthusiastSMR == 1>>Most of the slave population is quite slim and physically fit. <<elseif $arcologies[0].FSAssetExpansionistSMR == 1>>$arcologies[0].name's consumption of pharmaceuticals is impressive, since slave growth hormones are nearly ubiquitous.<</if>> <<if $arcologies[0].FSRepopulationFocusSMR == 1>>Most of the slaves in the arcology are sporting pregnant bellies.<<elseif $arcologies[0].FSRestartSMR == 1>>Most of the slaves in the arcology are infertile.<</if>> -<<if $arcologies[0].FSRestartLaw == 1>><<if $ACitizens < 600>>Nearly every free woman is a member of the elite and some degree pregnant.<<else>>It isn't uncommon to see a free woman pregnant and proudly bearing the insignia of the elite.<</if>><</if>> +<<if $arcologies[0].FSRestartLaw == 1>><<if $ACitizens < 600>>Nearly every free woman is a member of the Elite and some degree pregnant.<<else>>It isn't uncommon to see a free woman pregnant and proudly bearing the insignia of the Elite.<</if>><</if>> <<if $arcologies[0].FSPastoralistLaw == 1>>Much of the menial slave labor force works to service $arcologies[0].name's hundreds of human cattle.<</if>> <<if $arcologies[0].FSPhysicalIdealistSMR == 1>>$arcologies[0].name must import a very large quantity of nutritive protein to nourish its slaves.<</if>> <<if $arcologies[0].FSHedonisticDecadenceSMR == 1>>$arcologies[0].name must import a very large quantity of fattening food to plump up its slaves.<</if>> diff --git a/src/uncategorized/bodyModification.tw b/src/uncategorized/bodyModification.tw index 5d38d1389899dc1290a55e29825301f53790f274..6b351f94d9a7fa1a16ef5fda310763838853aff2 100644 --- a/src/uncategorized/bodyModification.tw +++ b/src/uncategorized/bodyModification.tw @@ -323,9 +323,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -886,7 +886,8 @@ Custom Tats: Branding: <<for _brandName, _brand range $activeSlave.brand>> - <br> $His _brandName is marked with _brand: + <br> + $His _brandName is marked with _brand<<if _brand == $brandDesign.official>>, your [[official brand|Universal Rules]]<</if>>: <<capture _brandName>> <<link "Remove Brand">> <<set $brandApplied = 0>> @@ -898,7 +899,13 @@ Branding: <</capture>> <</for>> <<if (jQuery.isEmptyObject($activeSlave.brand))>> - <br>$His skin is unmarked. + <br> + $His skin is unmarked. +<</if>> + +<<if !(Object.values(State.variables.activeSlave.brand).includes(State.variables.brandDesign.official))>> + <br> + $He lacks your [[official brand|Universal Rules]], "$brandDesign.official." <</if>> <br> @@ -1052,7 +1059,7 @@ Choose a site for branding: Or a custom site: <<textbox "$brandTarget.local" $brandTarget.local "Body Modification">> <br> -<<if ["ear", "cheek", "breast", "shoulder", "upper arm", "lower arm", "wrist", "hand", "buttock", "thigh", "calf", "ankle", "foot", "testicle"].includes($brandTarget.local)>> +<<if ["ankle", "breast", "buttock", "calf", "cheek", "ear", "foot", "hand", "lower arm", "shoulder", "testicle", "thigh", "upper arm", "wrist"].includes($brandTarget.local)>> <<set _leftTarget = ("left " + $brandTarget.local)>> <<set _rightTarget = ("right " + $brandTarget.local)>> <<if $activeSlave.brand[_leftTarget]>> diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw index c4b6871199f4114c2448fa7c9a8e48afe60082c8..f0e61b69cefcfb1b40340adcef3c370aaaace1d9 100644 --- a/src/uncategorized/brothelReport.tw +++ b/src/uncategorized/brothelReport.tw @@ -165,7 +165,7 @@ $He shows off $slaves[$i].slaveName's copious loads by putting a condom over _his2 dick and teasing _him2 till _he2 bursts it. The show draws multiple clients that want to play with _his2 oversized junk and messy orgasms. <<set $madamCashBonus += 0.15>> <<else>> - $He would love to show off $slaves[$i].slaveName's copious loads, but $slaves[$i].slaveName<<if $slaves[$i].dick == 0>> doesn't have a dick.<<elseif $slaves[$i].balls == 0>>'s not producing cum. <<else>>'s orgasms just aren't messy enough. <</if>> + $He would love to show off $slaves[$i].slaveName's copious loads, but $slaves[$i].slaveName<<if $slaves[$i].dick == 0>> doesn't have a dick<<elseif $slaves[$i].balls == 0>>'s not producing cum<<else>>'s orgasms just aren't messy enough<</if>>. <</if>> <</if>> <<elseif $slaves[$i].prestigeDesc == "$He is remembered for winning best in show as a breeder.">> @@ -218,7 +218,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -332,7 +332,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/cellblock.tw b/src/uncategorized/cellblock.tw index 11897c9de6c846c26126fa65507dc7dac0e693eb..10567ce2e567af2452dca521b43fc572f2f68816 100644 --- a/src/uncategorized/cellblock.tw +++ b/src/uncategorized/cellblock.tw @@ -55,6 +55,14 @@ $cellblockNameCaps is torture for chubby slaves. Fat bitches that pass through here soon learn that they're going to be slim and pretty one day, but that it isn't going to be much fun getting there. <<case "Hedonistic">> is torture for thin slaves. The first thing they notice is the heavily reinforced cot they will reside upon. The second is the feeding tube that will be anchored in their stomach for the duration of their stay. Slaves imprisoned here will have their body stuffed to capacity with concentrated slave food, ensuring a plump, docile slave by the end of their sentence. +<<case "Intellectual Dependency">> + is a straightforward prison, with one exception. Each cell comes equipped with sound dampening shutters so slaves may be cut off from all outside stimulation. They are forced to be alone with their thoughts for most of their stay. +<<case "Slave Professionalism">> + is torture for dumb slaves. Everything in the cell is a puzzle, from the food dispenser to the cot cover. Slaves are frequently rotated so that they may never become accustomed to any solutions. +<<case "Petite Admiration">> + is designed to make tall slaves know they are unwelcome. What amounts a basic prison for a short slave is positively torturous when one is far too large to even move in it. +<<case "Statuesque Glorification">> + is designed to make short slaves know they are unwelcome. Where a tall slave will find nothing more than a standard cell, the vertically challenged while will find an insurmountable trial designed to teach them their place. <<default>> could be mistaken for a modern prison. A close inspection, however, reveals restraints in each cell that will hold inmates in sexually compromising positions, and compliance systems to force them to place their wrists and ankles in them. <</switch>> diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw index 314e720f293c14c699db74618757005f0ed55df3..738c9baf75e6c4a0da0bc26d316d4b56fe9fd569 100644 --- a/src/uncategorized/cellblockReport.tw +++ b/src/uncategorized/cellblockReport.tw @@ -131,7 +131,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -249,7 +249,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/clinic.tw b/src/uncategorized/clinic.tw index 3730fead96c09277bb1f046f1083aae0937a4222..43c4a66d0a8de50d69d55e513bf1c7da1f2db3f6 100644 --- a/src/uncategorized/clinic.tw +++ b/src/uncategorized/clinic.tw @@ -55,6 +55,14 @@ $clinicNameCaps is warm and inviting, with curved walls and warm colors designed to put patients at their ease. Each bed is well provided with entertainment options. <<case "Hedonistic">> is warm and comfortable, with extra wide, soft, heated beds and ample morphine. Pleasant smells are pumped into the recovery wards, plenty of entertainment is available and chubby nurse in a too small dress with a big bowl of slave food is only a button press away. It can be quite difficult to convince patients to leave. +<<case "Intellectual Dependency">> + is bright and cheerful, with plenty of simple amusements to keep bimbos destracted and in bed. A complex locking mechanism promises no chance of a slave wandering off to slake their lust. +<<case "Slave Professionalism">> + is clean and cold, all scrubbed tile and cool steel. Any delays in recovery are nothing more than time spent not honing one's talents. +<<case "Petite Admiration">> + is open and airy due to all the extra space freed up by shortening the beds. A footrest is the only accommodation made for tall slaves. +<<case "Statuesque Glorification">> + is warm and comfortable, if a little cramped; tall slaves require long beds, after all. A meager footstool is the only accommodation made for short slaves. <<default>> is a well-equipped modern medical facility. Each patient has her own area, with heavy automation to provide her treatment without any human intervention at all. <</switch>> diff --git a/src/uncategorized/clinicReport.tw b/src/uncategorized/clinicReport.tw index 3e5ac099fe8cd2a18551c85b044cb1744b158adb..43590ad2ad20bcd565e5bf1c0324e05ae1f8142b 100644 --- a/src/uncategorized/clinicReport.tw +++ b/src/uncategorized/clinicReport.tw @@ -200,7 +200,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -245,7 +245,7 @@ <</if>> <<switch $clinicDecoration>> - <<case "Eugenics" "Gender Fundamentalist" "Gender Radicalist" "Hedonistic" "Maturity Preferentialist" "Paternalist" "Repopulation Focus" "Slimness Enthusiast" "Youth Preferentialist">> + <<case "Eugenics" "Gender Fundamentalist" "Gender Radicalist" "Hedonistic" "Intellectual Dependency" "Maturity Preferentialist" "Paternalist" "Petite Admiration" "Repopulation Focus" "Slimness Enthusiast" "Statuesque Glorification" "Youth Preferentialist">> <<set $slaves[$i].livingRules = "luxurious">> <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Edo Revivalist" "Egyptian Revivalist" "Roman Revivalist">> <<set $slaves[$i].livingRules = "normal">> @@ -259,7 +259,7 @@ <</if>> <<if ($slaves[$i].chem > 10) && ($clinicUpgradeFilters >= 1)>> <<set $slaves[$i].chem -= (5 + (50 * $clinicUpgradePurge))>> - <<if $slaves[$i].health > -50>> + <<if $slaves[$i].health > -50 && ($clinicUpgradePurge > 0)>> <<set $slaves[$i].health = -50>> <</if>> <<set $slaves[$i].chem = Math.max($slaves[$i].chem, 0)>> @@ -284,7 +284,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw index 43bf2fb2bbcb8513fafdcb169af3e47024fa816b..c5553148ee2b63324da232f7f9849f7f55633e39 100644 --- a/src/uncategorized/clubReport.tw +++ b/src/uncategorized/clubReport.tw @@ -71,7 +71,7 @@ $DJ.slaveName's mastery immensely @@.green;improves@@ the atmosphere in $clubName. <</if>> <<if ($DJ.muscles > 5) && ($DJ.muscles <= 95)>> - $His toned body helps $him lead $his fellow club girls by letting $him dance all night. + $His toned body helps $him lead $his fellow club sluts by letting $him dance all night. <</if>> <<if ($DJ.intelligence+$DJ.intelligenceImplant > 15)>> $He's smart enough to make an actual contribution to the music, greatly enhancing the entire experience. @@ -122,7 +122,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -223,7 +223,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/costsBudget.tw b/src/uncategorized/costsBudget.tw index b7f36759e89bd269eb936e3bac712f91799a11eb..d4156f40502640bcfcfefe2190a1589af7963bc6 100644 --- a/src/uncategorized/costsBudget.tw +++ b/src/uncategorized/costsBudget.tw @@ -8,6 +8,9 @@ <<set $lastWeeksCashProfits.Total = 0>> <</if>> +<<if ndef $showAllEntries>> + <<set $showAllEntries = {costsBudget: 0, repBudget: 0}>> +<</if>> //Here you can view many of the financial details of your arcology, <<= properTitle()>>. The detailed list of slaves and their costs (food, hormones) that you may remember can now be found in the "Slave maintenance" link. Other links will allow you to directly control areas of your arcology to adjust spending to suit your tastes.// @@ -63,6 +66,10 @@ <</if>> //Your weekly costs are as follows:// +<<options $showAllEntries.costsBudget>> + <<option 0 "Normal">> + <<option 1 "Show Empty Entries">> +<</options>> /* Table of Totals */ <<if ndef $lastWeeksCashIncome>> @@ -116,25 +123,25 @@ for (var i = 0; i < State.variables.lastWeeksCashIncome.length; i++){ <h2>Structures</h2> </tr> - <<print budgetLine("brothel", "[[$brothelNameCaps|Brothel][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($brothelSlaves slaves)")>> + <<print budgetLine("brothel", "<<if $brothel>>[[$brothelNameCaps|Brothel][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$brothelNameCaps<</if>> ($brothelSlaves slaves)")>> <<print budgetLine("whoreBrothel", "Brothel whores")>> - <<print budgetLine("brothelAds", "[[Brothel ads|Brothel Advertisement][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] also increase the income of whoring slaves in \"jobs.\"")>> + <<print budgetLine("brothelAds", "<<if $brothel>>[[Brothel ads|Brothel Advertisement][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>Brothel ads<</if>> also increase the income of whoring slaves in \"jobs.\"")>> <<if $brothel > 0>> <br> <</if>> - <<print budgetLine("club", "[[$clubNameCaps|Club][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($clubSlaves slaves)")>> + <<print budgetLine("club", "<<if $club>>[[$clubNameCaps|Club][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$clubNameCaps<</if>> ($clubSlaves slaves)")>> - <<print budgetLine("clubAds", "[[Club ads|Club Advertisement][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]")>> + <<print budgetLine("clubAds", "<<if $club>>[[Club ads|Club Advertisement][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>Club ads<</if>>")>> <<if $club > 0>> <br> <</if>> - <<print budgetLine("arcade", "[[$arcadeNameCaps|Arcade][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($arcadeSlaves slaves)")>> + <<print budgetLine("arcade", "<<if $arcade>>[[$arcadeNameCaps|Arcade][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$arcadeNameCaps<</if>> ($arcadeSlaves slaves)")>> <<print budgetLine("gloryholeArcade", "Arcade slaves")>> @@ -142,7 +149,7 @@ for (var i = 0; i < State.variables.lastWeeksCashIncome.length; i++){ <br> <</if>> - <<print budgetLine("dairy", "[[$dairyNameCaps|Dairy][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($dairySlaves slaves)")>> + <<print budgetLine("dairy", "<<if $dairy>>[[$dairyNameCaps|Dairy][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$dairyNameCaps<</if>> ($dairySlaves slaves)")>> <<print budgetLine("milkedDairy", "Dairy cows")>> @@ -150,27 +157,27 @@ for (var i = 0; i < State.variables.lastWeeksCashIncome.length; i++){ <br> <</if>> - <<print budgetLine("servantsQuarters", "[[Servants' Quarters][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($servantsQuartersSlaves slaves)")>> + <<print budgetLine("servantsQuarters", "<<if $servantsQuarters>>[[Servants' Quarters][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>Servants' Quarters<</if>> ($servantsQuartersSlaves slaves)")>> - <<print budgetLine("masterSuite", "[[Master Suite][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($masterSuiteSlaves slaves)")>> + <<print budgetLine("masterSuite", "<<if $masterSuite>>[[Master Suite][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>Master Suite<</if>> ($masterSuiteSlaves slaves)")>> - <<print budgetLine("school", "[[$schoolroomNameCaps|Schoolroom][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($schoolroomSlaves slaves)")>> + <<print budgetLine("school", "<<if $school>>[[$schoolroomNameCaps|Schoolroom][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$schoolroomNameCaps<</if>> ($schoolroomSlaves slaves)")>> - <<print budgetLine("spa", "[[$spaNameCaps|Spa][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($spaSlaves slaves)")>> + <<print budgetLine("spa", "<<if $spa>>[[$spaNameCaps|Spa][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$spaNameCaps<</if>> ($spaSlaves slaves)")>> - <<print budgetLine("clinic", "[[$clinicNameCaps|Clinic][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($clinicSlaves slaves)")>> + <<print budgetLine("clinic", "<<if $clinic>>[[$clinicNameCaps|Clinic][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$clinicNameCaps<</if>> ($clinicSlaves slaves)")>> - <<print budgetLine("cellblock", "[[$cellblockNameCaps|Cellblock][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($cellblockSlaves slaves)")>> + <<print budgetLine("cellblock", "<<if $cellblock>>[[$cellblockNameCaps|Cellblock][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$cellblockNameCaps<</if>> ($cellblockSlaves slaves)")>> - <<print budgetLine("lab", "[[Prosthetic Lab][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] maintenance")>> + <<print budgetLine("lab", "<<if $lab>>[[Prosthetic Lab][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>Prosthetic Lab<</if>> maintenance")>> - <<print budgetLine("incubator", "[[$incubatorNameCaps|Incubator][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($incubatorSlaves slaves)")>> + <<print budgetLine("incubator", "<<if $incubator>>[[$incubatorNameCaps|Incubator][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$incubatorNameCaps<</if>> ($incubatorSlaves slaves)")>> - <<print budgetLine("nursery", "[[$nurseryNameCaps|Nursery][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($nurserySlaves slaves)")>> + <<print budgetLine("nursery", "<<if $nursery>>[[$nurseryNameCaps|Nursery][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$nurseryNameCaps<</if>> ($nurserySlaves slaves)")>> - <<print budgetLine("farmyard", "[[$farmyardNameCaps|Farmyard][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($farmyardSlaves slaves)")>> + <<print budgetLine("farmyard", "<<if $farmyard>>[[$farmyardNameCaps|Farmyard][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$farmyardNameCaps<</if>> ($farmyardSlaves slaves)")>> - <<print budgetLine("pit", "[[$pitNameCaps|Pit][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] ($fighterIDs.length slaves)")>> + <<print budgetLine("pit", "<<if $pit>>[[$pitNameCaps|Pit][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]<<else>>$pitNameCaps<</if>> ($fighterIDs.length slaves)")>> <<print budgetLine("environment", "Environment")>> @@ -243,6 +250,8 @@ for (var i = 0; i < State.variables.lastWeeksCashIncome.length; i++){ [[Engineering trainer|Personal Attention Select][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] fees <<elseif ($personalAttention == \"medicine\")>> [[Medicine trainer|Personal Attention Select][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] fees + <<elseif ($personalAttention == \"hacking\")>> + [[Hacking trainer|Personal Attention Select][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] fees <</if>> ")>> @@ -275,7 +284,8 @@ for (var i = 0; i < State.variables.lastWeeksCashIncome.length; i++){ <h2>Policies</h2> </tr> - <<print budgetLine("policies", "[[Policies|Policies][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]] and [[Edicts|edicts][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]")>> + <<print budgetLine("policies", "[[Policies]]")>> + <<print budgetLine("edicts", "<<if $secExp>>[[Edicts|edicts]]<<else>>Edicts<</if>>")>> <<print budgetLine("futureSocieties", "[[Society shaping|Future Society][$nextButton = \"Back to Budget\", $nextLink = \"Costs Budget\"]]")>> @@ -315,9 +325,12 @@ for (var i = 0; i < State.variables.lastWeeksCashIncome.length; i++){ <<print budgetLine("specialForces", "Special forces")>> - <<print budgetLine("undermining", "Undermine political support for the nearby old world peacekeeping mission.")>> - + <<print budgetLine("peacekeepers", "Peacekeepers<<if State.variables.peacekeepers.undermining !== 0>>, including undermining<</if>>")>> + <tr> + <h2>Budget Report</h2> + </tr> + <tr><td></td></tr> <tr> <td>Tracked totals</td> diff --git a/src/uncategorized/costsWidgets.tw b/src/uncategorized/costsWidgets.tw index 22ec2b669732ffad0e17d9d0b7ab4b680473584e..b4ea2860b934d77ac1efa621f025f292495c96a4 100644 --- a/src/uncategorized/costsWidgets.tw +++ b/src/uncategorized/costsWidgets.tw @@ -581,6 +581,7 @@ capEx: 0, futureSocieties: 0, schoolBacking: 0, policies: 0, +edicts: 0, /*Personal Finance*/ personalBusiness: 0, @@ -648,6 +649,7 @@ architecture: 0, capEx: 0, futureSocieties: 0, policies: 0, +edicts: 0, war: 0, food: 0, diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw index 913ebef4125afb98c149cb5d7ca3f245f3ee4d20..dca55f0d7ce2afce0eebe7e4a4e9092cef37ecf4 100644 --- a/src/uncategorized/dairyReport.tw +++ b/src/uncategorized/dairyReport.tw @@ -255,7 +255,7 @@ $He spends extra time with $slaves[$i].slaveName, the massive ejaculating cow. $He can't help but massage the cow's dick and testes to stimulate them further and coax more from them. <<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>> <<else>> - $He is disappointed that the (formerly) massive ejaculating cow $slaves[$i].slaveName<<if $slaves[$i].balls == 0 || $slaves[$i].dick == 0>> is incapable of giving cum. <<elseif $slaves[$i].prostate < 2>> no longer possesses a hyperactive prostate. <<else>>'s balls are considerably smaller than at their heyday.<</if>> + $He is disappointed that the (formerly) massive ejaculating cow $slaves[$i].slaveName<<if $slaves[$i].balls == 0 || $slaves[$i].dick == 0>> is incapable of giving cum<<elseif $slaves[$i].prostate < 2>> no longer possesses a hyperactive prostate<<else>>'s balls are considerably smaller than at their heyday<</if>>. <</if>> <</if>> <<if $slaves[$i].prestigeDesc == "$He is remembered for winning best in show as a breeder." && $slaves[$i].bellyPreg >= 1500>> @@ -285,7 +285,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -386,7 +386,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/fullReport.tw b/src/uncategorized/fullReport.tw index 82cd23ccd10f8a9a87a4ee0a4261193872b0d79d..36ca1e09dd460eb841628555ee68b1fcad820512 100644 --- a/src/uncategorized/fullReport.tw +++ b/src/uncategorized/fullReport.tw @@ -3,7 +3,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef medImg"> - <<SlaveArt $slaves[$i] 2 0>> + <<= SlaveArt($slaves[$i], 2, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/genericPlotEvents.tw b/src/uncategorized/genericPlotEvents.tw index d7c6bd92fb5e22b24b1705644edea5a4e4d71e3b..a668c4f8fe7c33ee22f6d78d47c84f4199b4768f 100644 --- a/src/uncategorized/genericPlotEvents.tw +++ b/src/uncategorized/genericPlotEvents.tw @@ -34,7 +34,7 @@ The firm promptly pays @@.yellowgreen;fair compensation@@ for the minor damage t <<setLocalPronouns $slaves[_genPlot]>> <<if _genPlot != -1>> <<run $slaves.forEach(function(s) { - if (["breast injections", "intensive breast injections", "hyper breast injections"].includes(s.drugs)) { + if (["breast injections", "hyper breast injections", "intensive breast injections"].includes(s.drugs)) { s.health -= Math.floor(Math.random() * 2 + 1); } })>> @@ -1166,9 +1166,9 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -1224,9 +1224,9 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -1275,9 +1275,9 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -1332,9 +1332,9 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/growthResearchInstitute.tw b/src/uncategorized/growthResearchInstitute.tw index cc341c04c9e147645405130df2ece06b7551ff7a..ba1445991f77e01c46570967853ca689650fad8c 100644 --- a/src/uncategorized/growthResearchInstitute.tw +++ b/src/uncategorized/growthResearchInstitute.tw @@ -7,7 +7,7 @@ <<set $nextButton = "Continue", $nextLink = "Bulk Slave Intro", $slaveMarket = "GRI", $returnTo = "Main", $newSlaveIndex = 0>> <</if>> -//The Growth Research Institute (GRI) is not primarily a slave school at all, but rather the world leader in female growth hormone development. It operates research centers in the Free Cities to avoid traditional medical research laws. GRI runs several slave schools to raise healthy, unmodified subjects for use in trials. After a year of experimental hormone treatment they are sold. <<if $GRI.schoolUpgrade != 0>><br><br>You have endowed <<if $GRI.schoolUpgrade == 1>>a research focus on advanced curatives; most subjects now leave the GRI at unnatural levels of vitality.<<else>>a research focus on milk production; subjects' breasts are bigger and milkier than ever.<</if>> As a major <<if $PC.title == 0>>benefactrix<<else>>benefactor<</if>> of the institution, you also receive a discount on them.<</if>>// +//The Growth Research Institute (GRI) is not primarily a slave school at all, but rather the world leader in female growth hormone development. It operates research centers in the Free Cities to avoid traditional medical research laws. GRI runs several slave schools to raise healthy, unmodified subjects for use in trials. After a year of experimental hormone treatment they are sold. <<if $GRI.schoolUpgrade != 0>><br><br>You have endowed <<if $GRI.schoolUpgrade == 1>>a research focus on advanced curatives; most subjects now leave the GRI at unnatural levels of vitality.<<else>>a research focus on milk production; subjects' breasts are bigger and milkier than ever.<</if>> As a major benefact<<if $PC.title == 0>>rix<<else>>or<</if>> of the institution, you also receive a discount on them.<</if>>// <br><br>GRI offers a fresh graduate for inspection via video call. The interview takes place in the graduate's bare-metal holding cell. Disturbingly, it is strongly reminiscent of an enclosure for a lab animal, only scaled up to contain a lab animal of human dimensions. diff --git a/src/uncategorized/industrialDairyAssignmentScene.tw b/src/uncategorized/industrialDairyAssignmentScene.tw index 94b2632331848ee8ffacf89f24ad4ac51ac6d9ab..3ca3955659edb9caebdcdf6bc7200edc16862625 100644 --- a/src/uncategorized/industrialDairyAssignmentScene.tw +++ b/src/uncategorized/industrialDairyAssignmentScene.tw @@ -9,9 +9,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/jeSlaveDispute.tw b/src/uncategorized/jeSlaveDispute.tw index 8bbb5dd240b98372b68d57ccdcb86f767c3cd55f..768d733da0b1eba98a90acfe20852f9c95b4967a 100644 --- a/src/uncategorized/jeSlaveDispute.tw +++ b/src/uncategorized/jeSlaveDispute.tw @@ -162,9 +162,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/lecoleDesEnculees.tw b/src/uncategorized/lecoleDesEnculees.tw index b7ebf9ce09d484753df0fb59e6a35e40aa6664a9..f8e5d448eab9c09119a51ecb9904418bb48e048c 100644 --- a/src/uncategorized/lecoleDesEnculees.tw +++ b/src/uncategorized/lecoleDesEnculees.tw @@ -7,7 +7,7 @@ <<set $nextButton = "Continue", $nextLink = "Bulk Slave Intro", $slaveMarket = "LDE", $returnTo = "Main", $newSlaveIndex = 0>> <</if>> -//L'École des Enculées is one of the oldest networks of slave schools, but because its training must be started early, it is only now beginning to produce and show a return on its investors' stakes. It aims to produce graduates more feminine than the average naturally born female, in spite of their having been born male. The school is a global leader in hormonal feminization, which allows it to produce curvier slaves than many schools that focus on natural females. It also retains its graduates for a year after their majority and their enslavement, so as to be able to legally subject them to intensive sexual conditioning that focuses on their prostates as their main remaining locus of arousal. <<if $LDE.schoolUpgrade != 0>><br><br>Since you have endowed <<if $LDE.schoolUpgrade == 1>>the regular application of drugs to induce extreme infatuation in its graduates towards the first dominant person they encounter, any graduate purchased here will now promptly fall in love with you.<<else>>research into narrowly targeted hormonal treatments, its graduates are now available with generous members despite their femininity.<</if>> As a major <<if $PC.title == 0>>benefactrix<<else>>benefactor<</if>> of the institution, you also receive a discount on them.<</if>>// +//L'École des Enculées is one of the oldest networks of slave schools, but because its training must be started early, it is only now beginning to produce and show a return on its investors' stakes. It aims to produce graduates more feminine than the average naturally born female, in spite of their having been born male. The school is a global leader in hormonal feminization, which allows it to produce curvier slaves than many schools that focus on natural females. It also retains its graduates for a year after their majority and their enslavement, so as to be able to legally subject them to intensive sexual conditioning that focuses on their prostates as their main remaining locus of arousal. <<if $LDE.schoolUpgrade != 0>><br><br>Since you have endowed <<if $LDE.schoolUpgrade == 1>>the regular application of drugs to induce extreme infatuation in its graduates towards the first dominant person they encounter, any graduate purchased here will now promptly fall in love with you.<<else>>research into narrowly targeted hormonal treatments, its graduates are now available with generous members despite their femininity.<</if>> As a major benefact<<if $PC.title == 0>>rix<<else>>or<</if>> of the institution, you also receive a discount on them.<</if>>// <br><br>L'École des Enculées offers a fresh graduate for inspection via video call. The interview takes place in the dormitory for the oldest class of girls. Absurdly sexual squeals repeatedly interrupt the call, making it very clear that someone close by the interviewee is experiencing a strong combination of anal pain and anal pleasure. diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw index 26817391f76258931ab91eda1202ce1298dbc56f..663d8a3cde4b70aec1b2cbfb6933020f83c2ff2e 100644 --- a/src/uncategorized/longSlaveDescription.tw +++ b/src/uncategorized/longSlaveDescription.tw @@ -7,9 +7,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -1310,43 +1310,43 @@ is <<else>> Before $he was a slave, $he was <<if setup.bodyguardCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Bodyguard. + <<= convertCareer($activeSlave)>>, giving $him potential as a Bodyguard. <<elseif setup.wardenessCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Wardeness for <<if $cellblock == 0>>a Cellblock<<else>>$cellblockName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Wardeness for <<if $cellblock == 0>>a Cellblock<<else>>$cellblockName<</if>>. <<elseif setup.attendantCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as an Attendant for <<if $spa == 0>>a Spa<<else>>$spaName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as an Attendant for <<if $spa == 0>>a Spa<<else>>$spaName<</if>>. <<elseif setup.matronCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Matron for <<if $nursery == 0 && $nurseryNannies == 0>>a Nursery<<else>>$nurseryName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Matron for <<if $nursery == 0 && $nurseryNannies == 0>>a Nursery<<else>>$nurseryName<</if>>. <<elseif setup.nurseCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Nurse for <<if $clinic == 0>>a Clinic<<else>>$clinicName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Nurse for <<if $clinic == 0>>a Clinic<<else>>$clinicName<</if>>. <<elseif setup.schoolteacherCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Schoolteacher for <<if $schoolroom == 0>>a Schoolroom<<else>>$schoolroomName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Schoolteacher for <<if $schoolroom == 0>>a Schoolroom<<else>>$schoolroomName<</if>>. <<elseif setup.stewardessCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Stewardess for <<if $servantsQuarters == 0>>a Servant's Quarters<<else>>$servantsQuartersName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Stewardess for <<if $servantsQuarters == 0>>a Servant's Quarters<<else>>$servantsQuartersName<</if>>. <<elseif setup.milkmaidCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Milkmaid for <<if $dairy == 0>>a Dairy<<else>>$dairyName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Milkmaid for <<if $dairy == 0>>a Dairy<<else>>$dairyName<</if>>. <<elseif setup.farmerCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Farmer for <<if $farmyard == 0>>a Farmyard<<else>>$farmyardName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Farmer for <<if $farmyard == 0>>a Farmyard<<else>>$farmyardName<</if>>. <<elseif setup.madamCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Madam for <<if $brothel == 0>>a Brothel<<else>>$brothelName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a Madam for <<if $brothel == 0>>a Brothel<<else>>$brothelName<</if>>. <<elseif setup.DJCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a DJ for <<if $club == 0>>a Club<<else>>$clubName<</if>>. + <<= convertCareer($activeSlave)>>, giving $him potential as a DJ for <<if $club == 0>>a Club<<else>>$clubName<</if>>. <<elseif setup.HGCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a Head Girl. + <<= convertCareer($activeSlave)>>, giving $him potential as a Head Girl. <<elseif setup.recruiterCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him potential as a recruiter. + <<= convertCareer($activeSlave)>>, giving $him potential as a recruiter. <<elseif setup.entertainmentCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him a slight edge at entertainment. + <<= convertCareer($activeSlave)>>, giving $him a slight edge at entertainment. <<elseif setup.whoreCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him a slight edge at sexual commerce. + <<= convertCareer($activeSlave)>>, giving $him a slight edge at sexual commerce. <<elseif setup.gratefulCareers.includes($activeSlave.career)>> - $activeSlave.career, so $he can remember what it's like to have the freedom to starve. + <<= convertCareer($activeSlave)>>, so $he can remember what it's like to have the freedom to starve. <<elseif setup.menialCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him experience following orders. + <<= convertCareer($activeSlave)>>, giving $him experience following orders. <<elseif setup.servantCareers.includes($activeSlave.career)>> - $activeSlave.career, giving $him a slight edge in housekeeping. + <<= convertCareer($activeSlave)>>, giving $him a slight edge in housekeeping. <<else>> - <<print $activeSlave.career>>. + <<= convertCareer($activeSlave)>>. <</if>> <</if>> <</if>> diff --git a/src/uncategorized/masterSuite.tw b/src/uncategorized/masterSuite.tw index e7bcd0084e797b5c853ef1b5b8b3fe14d4bf4dd1..1b97075e35c00ff25b0082f700cf179a57cc6897 100644 --- a/src/uncategorized/masterSuite.tw +++ b/src/uncategorized/masterSuite.tw @@ -107,6 +107,14 @@ $masterSuiteNameCaps is furnished comfortably, with lots of easy-to-clean leather and plentiful tools, toys, and lubricants to make sex with slaves mutually enjoyable. The space is dominated by a huge bed with soft sheets. <<case "Hedonistic">> comfortably, with lots of lounges for a hefty slaves to relax on. <<if $arcologies[0].FSHedonisticDecadenceResearch == 1>>Platters of food and treats are readily available throughout the room and are<<else>>Slave food is readily available for your harem and platters of food for yourself are<</if>> never out of arm's reach. There's a huge, reinforced, low to the ground bed in the middle of the suite. +<<case "Intellectual Dependency">> + comfortably, with lots of easy-to-clean leather and plentiful easy-to-use tools, toys, and lubricants to make sex with bimbo slaves as fun and simple as possible. There's a huge bed in the middle of the suite, heavily reinforced. +<<case "Slave Professionalism">> + comfortably, with complex sex toys and tools designed to maximize pleasure when used by skilled hands. The space is dominated by a broad, soft bed, well supplied with pillows. The rest is dedicated to perfecting oneself and boosting <<= properMaster()>>'s status ever higher. +<<case "Petite Admiration">> + comfortably, with plentiful tools, toys, lubricants and a bevy of stepping stools to accommodate even the shortest slave. There's a huge, reinforced, low to the ground bed in the middle of the suite. +<<case "Statuesque Glorification">> + comfortably, though designed for slaves of the taller variety. Short slaves will find the furniture, and the room's centerpiece, a massive four-poster bed, woefully out of their reach. <<default>> in a refined, yet practical style. It's dominated by a huge bed in which many slaves could serve their <<= properTitle()>> and then cuddle afterward. <</switch>> @@ -179,6 +187,14 @@ $masterSuiteNameCaps is furnished comfortably, with lots of easy-to-clean leather and plentiful tools, toys, and lubricants to make sex with slaves mutually enjoyable. <<case "Hedonistic">> comfortably, with lots of lounges for a hefty slaves to relax on. <<if $arcologies[0].FSHedonisticDecadenceResearch == 1>>Platters of food and treats are readily available throughout the room and are<<else>>Slave food is readily available for your harem and platters of food for yourself are<</if>> never out of arm's reach. +<<case "Intellectual Dependency">> + comfortably, with lots of easy-to-clean leather and plentiful easy-to-use tools, toys, and lubricants to make sex with bimbo slaves as fun and simple as possible. +<<case "Slave Professionalism">> + comfortably, with complex sex toys and tools designed to maximize pleasure when used by skilled hands. The space is largely dedicated to perfecting oneself and boosting <<= properMaster()>>'s status ever higher. +<<case "Petite Admiration">> + comfortably, with plentiful tools, toys, lubricants and a bevy of stepping stools to accommodate even the shortest slave. +<<case "Statuesque Glorification">> + comfortably, though designed for slaves of the taller variety. Short slaves will find the furniture woefully out of their reach. <<default>> in a refined, yet practical style. <</switch>> @@ -269,7 +285,15 @@ $masterSuiteNameCaps is furnished <<case "Body Purist" "Slimness Enthusiast">> comfortably, with lots of easy-to-clean leather and plentiful tools, toys, and lubricants to make sex with slaves mutually enjoyable. <<case "Hedonistic">> - comfortably, with lots of lounges for a hefty slaves to relax on. <<if $arcologies[0].FSHedonisticDecadenceResearch == 1>>Platters of food and treats are readily available throughout the room and are<<else>>Slave food is readily available for your harem and platters of food for yourself are<</if>> never out of arm's reach. There's a huge, reinforced, low to the ground bed in the middle of the suite. + comfortably, with lots of lounges for a hefty slaves to relax on. <<if $arcologies[0].FSHedonisticDecadenceResearch == 1>>Platters of food and treats are readily available throughout the room and are<<else>>Slave food is readily available for your harem and platters of food for yourself are<</if>> never out of arm's reach. +<<case "Intellectual Dependency">> + comfortably, with lots of easy-to-clean leather and plentiful easy-to-use tools, toys, and lubricants to make sex with bimbo slaves as fun and simple as possible. +<<case "Slave Professionalism">> + comfortably, with complex sex toys and tools designed to maximize pleasure when used by skilled hands. The space is largely dedicated to perfecting oneself and boosting <<= properMaster()>>'s status ever higher. +<<case "Petite Admiration">> + comfortably, with plentiful tools, toys, lubricants and a bevy of stepping stools to accommodate even the shortest slave. +<<case "Statuesque Glorification">> + comfortably, though designed for slaves of the taller variety. Short slaves will find the furniture woefully out of their reach. <<default>> comfortably, as a fairly normal luxury suite. It is unusually large, to accommodate as large a stable of sex slaves as strikes your fancy. <</switch>> diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw index 79a977d9d0441792e9e8a0b6580dd4a5e5ea9e1b..acc11fe79fcede8f8131e1bc56cc22bac93a346c 100644 --- a/src/uncategorized/masterSuiteReport.tw +++ b/src/uncategorized/masterSuiteReport.tw @@ -31,7 +31,7 @@ <<set _masterSuiteAverageSadism -= $slaves[$i].fetishStrength>> <</switch>> <</if>> - <<if ($legendaryAbolitionistID == 0) && ($slaves[$i].devotion > 95) && ($slaves[$i].prestige == 0) && (($slaves[$i].origin == "You sentenced $him to enslavement as a punishment for attempted theft of a slave.") || ($slaves[$i].origin == "$He is an enslaved Daughter of Liberty.") || ($slaves[$i].origin === "You got $him at the Slave Shelter. $He is an enslaved Daughter of Liberty, caught some weeks after the failed coup. $His previous owner used $him as a punching bag and dart board, then when he was bored of $him tattooed obscenities all over $his body and threw $him away.") || ($slaves[$i].origin === "$He is an enslaved member of an anti-slavery extremist group."))>> + <<if ($legendaryAbolitionistID == 0) && ($slaves[$i].devotion > 95) && ($slaves[$i].prestige == 0) && (($slaves[$i].origin == "You sentenced $him to enslavement as a punishment for attempted theft of a slave.") || ($slaves[$i].origin == "$He is an enslaved Daughter of Liberty.") || ($slaves[$i].origin === "You got $him at the Slave Shelter. $He is an enslaved Daughter of Liberty, caught some weeks after the failed coup. $His previous owner used $him as a punching bag and dart board, then when he was bored of $him tattooed obscenities all over $his body and threw $him away.") || ($slaves[$i].origin === "$He is an enslaved member of an anti-slavery extremist group.") || ($slaves[$i].career == "an antislavery activist"))>> <<set $legendaryAbolitionistID = $slaves[$i].ID>> <</if>> <</for>> @@ -102,7 +102,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/matchmaking.tw b/src/uncategorized/matchmaking.tw index 11d7ff4ebabdeb9fa286cceccca1b43f372d4913..4d74afbc1aece7e9d68a35b81b633f5f8deb7534 100644 --- a/src/uncategorized/matchmaking.tw +++ b/src/uncategorized/matchmaking.tw @@ -13,7 +13,7 @@ /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageRef medImg"> - <<SlaveArt $eventSlave 2 0>> + <<= SlaveArt($eventSlave, 2, 0)>> </div> <</if>> /* 000-250-006 */ @@ -395,10 +395,10 @@ Despite $his devotion and trust, $he is still a slave, and probably knows that $ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $eventSlave 2 0>> + <<= SlaveArt($eventSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/multiImplant.tw b/src/uncategorized/multiImplant.tw index a558b3ae0d504e0c8b1ddb9a3d98444f55e60170..50d9d845830d8bb02eb98d10a1dedab031a13cbb 100644 --- a/src/uncategorized/multiImplant.tw +++ b/src/uncategorized/multiImplant.tw @@ -5,6 +5,27 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized /* builds a list for each slave and adds the appropriate organs to it */ <<for _i = 0; _i < $slaves.length; _i++>> <<set $activeSlave = $slaves[_i]>> + + /* count for estimating health impact */ + <<set _organCount = $completedOrgans.filter(o => o.ID == $activeSlave.ID).length>> + <<set _prostheticCount = $adjustProsthetics.filter(p => p.slaveID == $activeSlave.ID && p.workLeft <= 0).length>> + + /* since we already have count, skip slaves that don't need work */ + <<if _organCount + _prostheticCount < 1>> + <<continue>> + <</if>> + /* + Ensures that a slave can never die during the execution of this passage. + Calculation based on worst case, so when changing worst case change it here too. + */ + <<if $activeSlave.health - (_organCount * 40 + _prostheticCount * 20) < -75>> + <br><hr> + @@.red;Estimated health impact too great; $activeSlave.slaveName skipped.@@ + <<continue>> + <</if>> + + /* start actual work */ + <<if _organCount > 0>> /* check _organCount */ <<setLocalPronouns $activeSlave>> <<set _slaveOrgans = { penis: 0, @@ -980,19 +1001,16 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized <</if>> <</if>> /* finished checking _slaveOrgans */ + <</if>> /* check _organCount closed */ /* start prosthetics */ - <<if $adjustProstheticsCompleted > 0>> + <<if _prostheticCount > 0>> <<for _k = 0; _k < $adjustProsthetics.length; _k++>> <<set _p = $adjustProsthetics[_k]>> <<if _p.slaveID == $activeSlave.ID && _p.workLeft <= 0>> <<set $adjustProsthetics.splice(_k, 1), _k-->> <<set $activeSlave.readyProsthetics.push({id: _p.id})>> <br><hr> - <<if $activeSlave.health < -40>> - @@.red;Slave unhealthy: Skipping Slave@@ - <<continue>>/* no break so that all prosthetics will be checked */ - <</if>> <<switch _p.id>> <<case "ocular">> <<if $activeSlave.eyes < -1>> diff --git a/src/uncategorized/neighborsFSAdoption.tw b/src/uncategorized/neighborsFSAdoption.tw index f87fe19dd9e907b2d65782fbefb002558d1bd10c..b19e2f6f8e2c516b6285bfe88422c9cfcc8d4938 100644 --- a/src/uncategorized/neighborsFSAdoption.tw +++ b/src/uncategorized/neighborsFSAdoption.tw @@ -43,7 +43,7 @@ societal development. <<set $arcologies[$i].FSSubjugationistRace = $arcologies[0].FSSupremacistRace>> <<case "Repopulation Focus">> <<if $arcologies[$i].FSRepopulationFocus != "unset">><<set $arcologies[$i].FSRepopulationFocus = "unset">><</if>> - $desc obsessed with building a new society based on its societal elite, leading the arcology to @@.yellow;adopt Eugenics.@@ + $desc obsessed with building a new society based on its Societal Elite, leading the arcology to @@.yellow;adopt Eugenics.@@ <<set $arcologies[$i].FSRestart = 5>><<set _adopted = 1>> <<case "Eugenics">> <<if $arcologies[$i].FSRestart != "unset">><<set $arcologies[$i].FSRestart = "unset">><</if>> diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw index 7429d4304c2d5a95292844a789948649222ca031..7873e67bcf3a52e44f57a2a9ea7a1f99083304a3 100644 --- a/src/uncategorized/newSlaveIntro.tw +++ b/src/uncategorized/newSlaveIntro.tw @@ -1101,14 +1101,36 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <<link "Give $him a lewd tramp stamp">> <<set $activeSlave.stampTat = either("advertisements", "degradation", "rude words")>> <<replace "#introResult">> - You <<if $activeSlave.devotion > 20>>bring $him down to the studio, lay the compliant<<else>>drag $him down to the studio, strap the reluctant<</if>> slave in the chair face-down, and select a sufficiently lewd pattern to decorate $his lower back. When the automated tattooing is done, a topical application of analgesics leaves $him with nothing more than a slight ache there. When allowed to stand, $he immediately turns $his back to one of the studio's full length mirrors and cranes around to read the writing just over $his butt. It's difficult, since of course it's reversed, and $he mouths the words letter by letter. - <<if $activeSlave.stampTat == "advertisements">> - $He mouths, 'Fuck my ass!' - <<elseif $activeSlave.stampTat == "rude words">> - 'Rear Entrance,' $he mouths, and then understands the arrow pointing down between $his buttocks. - <<elseif $activeSlave.stampTat == "degradation">> - Struggling to read the ornate gothic lettering, $he slowly mouths, 'Anal Whore.' + You <<if $activeSlave.devotion > 20>>bring $him down to the studio, lay the compliant<<else>>drag $him down to the studio, strap the reluctant<</if>> slave in the chair face-down, and select a sufficiently lewd pattern to decorate $his lower back. When the automated tattooing is done, a topical application of analgesics leaves $him with nothing more than a slight ache there. + <<if canSee($activeSlave)>> + When allowed to stand, $he immediately turns $his back to one of the studio's full length mirrors and cranes around to read the writing just over $his butt. It's difficult, since, of course, it's reversed, and $he mouths the words letter by letter. + <<if $activeSlave.stampTat == "advertisements">> + $He mouths, 'Fuck my ass!' + <<elseif $activeSlave.stampTat == "rude words">> + 'Rear Entrance,' $he mouths, and then understands the arrow pointing down between $his buttocks. + <<elseif $activeSlave.stampTat == "degradation">> + Struggling to read the ornate gothic lettering, $he slowly mouths, 'Anal Whore.' + <</if>> + <<elseif canHear($activeSlave)>> + When $he sits back up, you tell $him calmly and bluntly what $his new tattoo says: + <<if $activeSlave.stampTat == "advertisements">> + "Fuck My Ass." + <<elseif $activeSlave.stampTat == "rude words">> + "Rear Entrance." + <<elseif $activeSlave.stampTat == "degradation">> + "Anal Whore." + <</if>> + <<else>> + Judging by the expression on $his face, $he's either accurately judged the movement of the needle on $his skin or simply guessed correctly that $his new tattoo consists of + <<if $activeSlave.stampTat == "advertisements">> + blunt advertisements for anal sex. + <<elseif $activeSlave.stampTat == "rude words">> + mocking references to anal sex. + <<elseif $activeSlave.stampTat == "degradation">> + insulting invitations for anal sex. + <</if>> <</if>> + <<if $activeSlave.devotion > 20>> $He gasps at the realization that taking it up the ass is about to become a dominant part of $his life. $He isn't surprised by that, but it's a little stark, having $his status as an anal slave permanently written on $his lower back for anyone to see. Nevertheless, $he @@.hotpink;resolves to do $his best.@@ <<set $activeSlave.devotion += 5>> @@ -1176,7 +1198,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <br> <<link "Threaten $his pregnancy">> <<replace "#introResult">> - You place an innocuous-looking drug injector on your desk, and let $him <<if !canSee($activeSlave)>>blindly <</if>>stare at it for a long moment. Then, you roll the cylinder slowly across the smooth surface, rotating it until its label comes into $his view. It depicts the silhouette of a pregnant woman, with a red X over it. Abortifacients. After an instant of horrified comprehension, $he flings $himself at your feet, crying, begging, promising. $He pledges to @@.hotpink;submit to you,@@ <<if $PC.dick == 1>><<if $PC.vagina == 1>>eat you out, <</if>>suck your cock, take it in $his pussy, take it up $his ass<<else>>eat you out, worship you with $his pussy, serve you with $his ass<</if>>, anything, as long as @@.gold;you don't hurt $his baby.@@ You observe that $he'll do all of those things, regardless of what you decide to do about $his pregnancy, but for now, you'll keep $him as a pregnant slut. $He thanks you through $his tears. + You place an innocuous-looking drug injector on your desk, and let $him <<if !canSee($activeSlave)>>blindly <</if>>stare at it for a long moment. Then, you roll the cylinder slowly across the smooth surface, rotating it until its label comes into $his view. It depicts the silhouette of a pregnant woman, with a red "X" over it. Abortifacients. After an <<if !canSee($activeSlave)>>short period<<else>>instant<</if>> of horrified comprehension, $he flings $himself at your feet, crying, begging, promising. $He pledges to @@.hotpink;submit to you,@@ <<if $PC.dick == 1>><<if $PC.vagina == 1>>eat you out, <</if>>suck your cock, take it in $his pussy, take it up $his ass<<else>>eat you out, worship you with $his pussy, serve you with $his ass<</if>>, anything, as long as @@.gold;you don't hurt $his baby.@@ You observe that $he'll do all of those things, regardless of what you decide to do about $his pregnancy, but for now, you'll keep $him as a pregnant slut. $He thanks you through $his tears. <</replace>> <<set $activeSlave.devotion += 10>> <<set $activeSlave.trust -= 10>> @@ -1260,7 +1282,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <<= FutureSocieties.Change("Eugenics", 3)>> <</if>> <</replace>> - <<set $activeSlave.chastityVagina = 0,$activeSlave.dick = 0,$activeSlave.foreskin = 0,$activeSlave.ovaries = 0,$activeSlave.preg = -2,$activeSlave.pregKnown = 0,$activeSlave.pregSource = 0,$activeSlave.pregType = 0,$activeSlave.pregWeek = -4,$activeSlave.vagina = -1,$activeSlave.skill.vaginal = 0>> + <<set $activeSlave.chastityPenis = 0, $activeSlave.chastityVagina = 0, $activeSlave.dick = 0, $activeSlave.foreskin = 0, $activeSlave.ovaries = 0, $activeSlave.preg = -2, $activeSlave.pregKnown = 0, $activeSlave.pregSource = 0, $activeSlave.pregType = 0, $activeSlave.pregWeek = -4, $activeSlave.vagina = -1, $activeSlave.skill.vaginal = 0>> <<run SetBellySize($activeSlave)>> <<set $activeSlave.health -= 10, $activeSlave.trust = Math.clamp($activeSlave.trust-100, -100, 100)>> <</link>> @@ -1762,10 +1784,10 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <br> <<link "Let your ample bust dominate $his pathetic one">> <<replace "#introResult">> - You quickly strip off your shirt and draw close to $activeSlave.slaveName. You grab $him as $he attempts to back away and pull $his tits directly into your own. Both of sets of eyes lock onto their pair of breasts, or they would have, had yours not utterly eclipsed their rival. Scoffing, you release the confused $girl and walk away; leaving $him cupping $his own breasts and feeling uncertain about $himself. $He gets caught up in how small they really are, and how much @@.hotpink;lesser@@ than $him <<= WrittenMaster($activeSlave)>> $he is. + You quickly strip off your shirt and draw close to $activeSlave.slaveName. You grab $him as $he attempts to back away and pull $his tits directly into your own. Both of sets of <<if canSee($activeSlave)>>eyes lock onto their pair of breasts<<else>>tits push out against each other<</if>>, or they would have, had yours not utterly eclipsed their rival. Scoffing, you release the confused $girl and walk away; leaving $him cupping $his own breasts and feeling uncertain about $himself. $He gets caught up in how small they really are, and how much @@.hotpink;lesser@@ than $his <<= WrittenMaster($activeSlave)>> $he is. <<if $activeSlave.fetish == "boobs">> <<if $activeSlave.fetishKnown == 0>> - You did note one thing when your breasts touched; $his nipples <<if $activeSlave.nipples == "fuckable">>tightened around yours<<else>>got very hard<</if>>. @@.green;Looks like $he's a breast fetishist!@@ + You did note one thing when your breasts touched: $his nipples <<if $activeSlave.nipples == "fuckable">>tightened around yours<<else>>got very hard<</if>>. @@.green;Looks like $he's a breast fetishist!@@ <<set $activeSlave.fetishKnown = 1>> <</if>> <</if>> @@ -1782,7 +1804,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <<if $activeSlave.vagina > -1>> $He indicates $his vagina tentatively, almost hopefully, but you shake your head, and emphasize the circular, anus-like shape of your left hand. $He cries harder. <<else>> - $He wilts, pressing $his thighs together in an unconscious attempt to shield $his anus from its future as a target for $his <<= properMaster()>> attentions. + $He wilts, pressing $his thighs together in an unconscious attempt to shield $his anus from its future as a target for $his <<= WrittenMaster($activeSlave)>>'s attentions. <</if>> <<set $activeSlave.trust -= 10>> <</replace>> @@ -2043,7 +2065,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <<set $activeSlave.counter.anal += 10, $analTotal += 10>> <<= assignJob($activeSlave, "dairy")>> <<replace "#introResult">> - Making use of <<if ($activeSlave.trust < -20) || ($activeSlave.devotion > 20)>>$his obedience<<else>>the compliance systems<</if>>, you restrain $him on one of the chairs in your office in an approximation of the position $he'll occupy in $dairyName. Then you put a mask on $him, like the ones the machines there feature, and turn it on, watching the slave squirm against $his restraints under the sudden bombardment of garish hardcore porn. Finally, you add a dildo gag, both to mimic the dildo that will feed $him, and to keep your office reasonably quiet. Then, for the rest of the day, you use $his vulnerable <<if $activeSlave.vagina > -1>>holes<<else>>asshole<</if>> as an outlet for your sexual energy. You are not gentle; in fact, the point of the whole exercise is to gape $him. By the evening $he's been fucked so hard that $he's stopped jerking against the chair when you pound <<if $PC.dick == 1>>your huge cock<<else>>a huge strap-on<</if>> in and out of $him, so you're obliged to get creative, sliding fingers in alongside <<if $PC.dick == 1>>yourself<<else>>it<</if>> to really blow $him out. Once that gets too easy, you start adding dildos for double penetration. By the night $he's properly prepared to take $dairyName's giant phalli, and you're bored, so you consign $him to $his fate. $He might have some opinion on how $he's spent $his day, but it's unlikely $he'll remember it by tomorrow, what with the forearm-sized dildos sliding in and out of $his throat<<if $activeSlave.vagina > -1>>, cunt,<</if>> and asshole. + Making use of <<if ($activeSlave.trust < -20) || ($activeSlave.devotion > 20)>>$his obedience<<else>>the compliance systems<</if>>, you restrain $him on one of the chairs in your office in an approximation of the position $he'll occupy in $dairyName. Then you put a mask on $him, like the ones the machines there feature, and turn it on, watching the slave squirm against $his restraints under the sudden bombardment of garish hardcore porn. Finally, you add a dildo gag, both to mimic the dildo that will feed $him, and to keep your office reasonably quiet. Then, for the rest of the day, you use $his vulnerable <<if $activeSlave.vagina > -1>>holes<<else>>asshole<</if>> as an outlet for your sexual energy. You are not gentle; in fact, the point of the whole exercise is to gape $him. By the evening $he's been fucked so hard that $he's stopped jerking against the chair when you pound <<if $PC.dick == 1>>your huge cock<<else>>a huge strap-on<</if>> in and out of $him, so you're obliged to get creative, sliding fingers in alongside <<if $PC.dick == 1>>yourself<<else>>it<</if>> to really blow $him out. Once that gets too easy, you start adding dildos for double <<if $activeSlave.vagina > -1>>and triple <</if>>penetration. By nighttime $he's properly prepared to take $dairyName's giant phalli, and you're bored, so you consign $him to $his fate. $He might have some opinion on how $he's spent $his day, but it's unlikely $he'll remember it by tomorrow, what with the forearm-sized dildos sliding in and out of $his throat<<if $activeSlave.vagina > -1>>, cunt,<</if>> and asshole. <</replace>> <</link>> <</if>> @@ -2052,64 +2074,64 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <<if $dairyPiping == 1>> <<if (($cumPipeline > 88 && $cumPipeline != 0) || $arcologies[0].FSPastoralistLaw == 1) && $activeSlave.preg < 1 && $activeSlave.inflation == 0 && $activeSlave.bellyImplant <= 0>> - <br> - <<link "Give $him all the cum $he can drink">> - <<replace "#introResult">> - You securely restrain your new slave; for both $his own safety and so $he can't object to $his meal. You reassure $him and order $him to close $his eyes and open wide for a treat.<<if $activeSlave.eyes == -2>> Blind as $he is,<<else>> Since $his eyes are contentedly closed,<</if>> $he doesn't see you reach for one of the phallus-tipped feeding tubes located throughout your penthouse. Before $he knows what's happening, you've forced the cocktube firmly into $his gaping maw and anchored it to $his head, causing $his entire body to tense up <<if $activeSlave.devotion <= 20>>in panic <</if>>once more. - <br><br> - You pause to examine the tap, making sure it is set to cum, before releasing the valve and unleashing a steady flow. The feeder bucks against $his face as thick, white liquid rushes downward towards the helpless slave. - <<if $activeSlave.devotion > 20>> - <<if $activeSlave.fetish == "cumslut">> - <<if $activeSlave.fetishKnown == 0>> - Stunningly, once $he gets over the impact of the wave of fresh semen, $he seems genuinely eager to hold as much of the fluid as $he can, stretching contentedly to $his reasonable limit. @@.green;$He's a cum fetishist!@@ - <<set $activeSlave.fetishKnown = 1>> + <br> + <<link "Give $him all the cum $he can drink">> + <<replace "#introResult">> + You securely restrain your new slave; for both $his own safety and so $he can't object to $his meal. You reassure $him and order $him to close $his eyes and open wide for a treat.<<if $activeSlave.eyes == -2>> Blind as $he is,<<else>> Since $his eyes are contentedly closed,<</if>> $he doesn't see you reach for one of the phallus-tipped feeding tubes located throughout your penthouse. Before $he knows what's happening, you've forced the cocktube firmly into $his gaping maw and anchored it to $his head, causing $his entire body to tense up <<if $activeSlave.devotion <= 20>>in panic <</if>>once more. + <br><br> + You pause to examine the tap, making sure it is set to cum, before releasing the valve and unleashing a steady flow. The feeder bucks against $his face as thick, white liquid rushes downward towards the helpless slave. + <<if $activeSlave.devotion > 20>> + <<if $activeSlave.fetish == "cumslut">> + <<if $activeSlave.fetishKnown == 0>> + Stunningly, once $he gets over the impact of the wave of fresh semen, $he seems genuinely eager to hold as much of the fluid as $he can, stretching contentedly to $his reasonable limit. @@.green;$He's a cum fetishist!@@ + <<set $activeSlave.fetishKnown = 1>> + <<else>> + $His belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", until it finally stops wobbling, grows taut and forces $his belly button into an outie. Your cow groans not only with the weight and mounting pressure, but with guilt as well. Before long, $he reaches a quivering orgasm. + <</if>> + You stroke $his gurgling stomach slowly, before turning off the valve, unfastening $his binds and leaving your @@.hotpink;very pleased@@ cum balloon to savor $his meal. You'll make sure to set aside enough cum from your cumslaves for $him to drink $himself stupid with, and, glancing over your shoulder, find $him eagerly masturbating to $his cum filled gut. $He'll probably intend to keep $himself filled to the brim, which is fine by you. + <<set $activeSlave.devotion += 5>> <<else>> - $His belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", until it finally stops wobbling, grows taut and forces $his belly button into an outie. Your cow groans not only with the weight and mounting pressure, but with guilt as well. Before long, $he reaches a quivering orgasm. + <<if $activeSlave.eyes == -2>>$His face swells<<else>>$His eyes swell<</if>> with horror, but $he does not flinch or make a sound. $His belly also swells, from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Satisfied, you shut off the valve, deciding to leave $him to consider $his cum filled middle. Time passes. $His<<if $activeSlave.eyes == -2>> blind face is distant<<else>> eyes are glazed over<</if>>, but $he tolerates you slowly stroking $his stomach @@.hotpink;without apparent resentment.@@ You'll make sure to keep $him like this for the time being. + <<set $activeSlave.devotion += 4>> <</if>> - You stroke $his gurgling stomach slowly, before turning off the valve, unfastening $his binds and leaving your @@.hotpink;very pleased@@ cum balloon to savor $his meal. You'll make sure to set aside enough cum from your cumslaves for $him to drink $himself stupid with, and, glancing over your shoulder, find $him eagerly masturbating to $his cum filled gut. $He'll probably intend to keep $himself filled to the brim, which is fine by you. - <<set $activeSlave.devotion += 5>> <<else>> - <<if $activeSlave.eyes == -2>>$His face swells<<else>>$His eyes swell<</if>> with horror, but $he does not flinch or make a sound. $His belly also swells, from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Satisfied, you shut off the valve, deciding to leave $him to consider $his cum filled middle. Time passes. $His<<if $activeSlave.eyes == -2>> blind face is distant<<else>> eyes are glazed over<</if>>, but $he tolerates you slowly stroking $his stomach @@.hotpink;without apparent resentment.@@ You'll make sure to keep $him like this for the time being. - <<set $activeSlave.devotion += 4>> - <</if>> - <<else>> - <<if $activeSlave.fetish == "cumslut">> - <<if $activeSlave.fetishKnown == 0>> - <<if $activeSlave.eyes == -2>>$His face tenses<<else>>$His eyes swell<</if>> with profound horror at the realization of what is filling $him with a constant irresistible pressure, and $he begins to leak tears as $he realizes that $his rapidly swelling body is getting $him horny. @@.green;$He's a cum fetishist!@@ - <<set $activeSlave.fetishKnown = 1>> + <<if $activeSlave.fetish == "cumslut">> + <<if $activeSlave.fetishKnown == 0>> + <<if $activeSlave.eyes == -2>>$His face tenses<<else>>$His eyes swell<</if>> with profound horror at the realization of what is filling $him with a constant irresistible pressure, and $he begins to leak tears as $he realizes that $his rapidly swelling body is getting $him horny. @@.green;$He's a cum fetishist!@@ + <<set $activeSlave.fetishKnown = 1>> + <<else>> + $His belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Your cow groans not only with the weight and quickly mounting pressure, but with guilt as well. $He does not orgasm from $his gluttonous "meal," but feels much more pleasure than $he's willing to admit. + <</if>> + Time passes, marked only by the slowing growth of $his waistline and the gurgling deep within $him. However, $he @@.hotpink;submits@@ to an uncomfortable groping of $his fluid distended stomach, which is pleasingly taut from $his massive cum meal. You decide to make it abundantly clear that if a single drop of cum leaves $his gullet, $he's getting the hose again, impressing on $him still more that $his fate is out of $his control. + <<set $activeSlave.devotion += 4>> <<else>> - $His belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Your cow groans not only with the weight and quickly mounting pressure, but with guilt as well. $He does not orgasm from $his gluttonous "meal," but feels much more pleasure than $he's willing to admit. + $He gasps in horror, and starts to struggle frantically against $his bonds, <<if $activeSlave.voice != 0>>struggling to scream in panic.<<else>>$his whole body begging to scream.<</if>> However, as the fluid reaches $him, $he seems to despair and resigns $himself to $his fate. As $his belly swells, you find yourself comparing $him first to a binge eater, then some of the chubbier citizens you've seen, a large pregnancy, and finally a water balloon ready to burst. You stop the flow, and rest a hand on $his heaving stomach. $His @@.gold;terrified@@ breathing and distant expression are clearly due to the pain, not lust, but it's also now quite clear to $him who is in charge here. You have little intent on letting $his stomach empty and will be setting aside enough cum to keep $him bloated into submission. + <<set $activeSlave.trust -= 4>> <</if>> - Time passes, marked only by the slowing growth of $his waistline and the gurgling deep within $him. However, $he @@.hotpink;submits@@ to an uncomfortable groping of $his fluid distended stomach, which is pleasingly taut from $his massive cum meal. You decide to make it abundantly clear that if a single drop of cum leaves $his gullet, $he's getting the hose again, impressing on $him still more that $his fate is out of $his control. - <<set $activeSlave.devotion += 4>> - <<else>> - $He gasps in horror, and starts to struggle frantically against $his bonds, <<if $activeSlave.voice != 0>>struggling to scream in panic.<<else>>$his whole body begging to scream.<</if>> However, as the fluid reaches $him, $he seems to despair and resigns $himself to $his fate. As $his belly swells, you find yourself comparing $him first to a binge eater, then some of the chubbier citizens you've seen, a large pregnancy, and finally a water balloon ready to burst. You stop the flow, and rest a hand on $his heaving stomach. $His @@.gold;terrified@@ breathing and distant expression are clearly due to the pain, not lust, but it's also now quite clear to $him who is in charge here. You have little intent on letting $his stomach empty and will be setting aside enough cum to keep $him bloated into submission. - <<set $activeSlave.trust -= 4>> <</if>> - <</if>> - <<set $activeSlave.inflation = 3, $activeSlave.inflationType = "cum", $activeSlave.inflationMethod = 1>> - <<run SetBellySize($activeSlave)>> - <</replace>> - <</link>> + <<set $activeSlave.inflation = 3, $activeSlave.inflationType = "cum", $activeSlave.inflationMethod = 1>> + <<run SetBellySize($activeSlave)>> + <</replace>> + <</link>> <</if>> <<if (($milkPipeline > 88 && $milkPipeline != 0) || $arcologies[0].FSPastoralistLaw == 1) && $activeSlave.preg < 1 && $activeSlave.inflation == 0 && $activeSlave.bellyImplant <= 0>> - <br> - <<link "Give $him all the milk $he can drink">> - <<replace "#introResult">> - You securely restrain your new slave; for both $his own safety and so $he can't object to $his meal. You reassure $him and order $him to close $his eyes and open wide for a treat.<<if $activeSlave.eyes == -2>> Blind as $he is,<<else>> Since $his eyes are contentedly closed,<</if>> $he doesn't see you reach for one of the phallus-tipped feeding tubes located throughout your penthouse. Before $he knows what's happening, you've forced the cocktube firmly into $his gaping maw and anchored it to $his head, causing $his entire body to tense up <<if $activeSlave.devotion <= 20>>in panic <</if>>once more. - <br><br> - You pause to examine the tap, making sure it is set to milk, before releasing the valve and unleashing a steady flow. The feeder bucks against $his face as creamy, white liquid rushes downward towards the helpless slave. - <<if $activeSlave.behavioralFlaw == "gluttonous">> - <<if $activeSlave.eyes == -2>>$His face swells<<else>>$His eyes swell<</if>> with horror, but $he does not flinch or make a sound. $His belly also swells, from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Satisfied, you shut off the valve, deciding to leave $him to consider $his milk filled middle. Time passes. $His<<if $activeSlave.eyes == -2>> blind face is distant<<else>> eyes are glazed over<</if>>, but $he tolerates you slowly stroking $his stomach @@.hotpink;without apparent resentment.@@ You'll make sure to keep $him like this for the time being. - <<set $activeSlave.devotion += 5>> - <<else>> - $He gasps in horror, and starts to struggle frantically against $his bonds, <<if $activeSlave.voice != 0>>struggling to scream in panic.<<else>>$his whole body begging to scream.<</if>> However, as the fluid reaches $him, $he seems to despair and resigns $himself to $his fate. As $his belly swells, you find yourself comparing $him first to a binge eater, then some of the chubbier citizens you've seen, a large pregnancy, and finally a water balloon ready to burst. You stop the flow, and rest a hand on $his heaving stomach. $His @@.gold;terrified@@ breathing and distant expression are clearly due to the pain, not lust, but it's also now quite clear to $him who is in charge here. You have little intent on letting $his stomach empty and will be setting aside enough milk to keep $him bloated into submission. - <<set $activeSlave.trust -= 3>> - <</if>> - <<set $activeSlave.inflation = 3, $activeSlave.inflationType = "milk", $activeSlave.inflationMethod = 1>> - <<run SetBellySize($activeSlave)>> - <</replace>> - <</link>> + <br> + <<link "Give $him all the milk $he can drink">> + <<replace "#introResult">> + You securely restrain your new slave; for both $his own safety and so $he can't object to $his meal. You reassure $him and order $him to close $his eyes and open wide for a treat.<<if $activeSlave.eyes == -2>> Blind as $he is,<<else>> Since $his eyes are contentedly closed,<</if>> $he doesn't see you reach for one of the phallus-tipped feeding tubes located throughout your penthouse. Before $he knows what's happening, you've forced the cocktube firmly into $his gaping maw and anchored it to $his head, causing $his entire body to tense up <<if $activeSlave.devotion <= 20>>in panic <</if>>once more. + <br><br> + You pause to examine the tap, making sure it is set to milk, before releasing the valve and unleashing a steady flow. The feeder bucks against $his face as creamy, white liquid rushes downward towards the helpless slave. + <<if $activeSlave.behavioralFlaw == "gluttonous">> + <<if $activeSlave.eyes == -2>>$His face swells<<else>>$His eyes swell<</if>> with horror, but $he does not flinch or make a sound. $His belly also swells, from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Satisfied, you shut off the valve, deciding to leave $him to consider $his milk filled middle. Time passes. $His<<if $activeSlave.eyes == -2>> blind face is distant<<else>> eyes are glazed over<</if>>, but $he tolerates you slowly stroking $his stomach @@.hotpink;without apparent resentment.@@ You'll make sure to keep $him like this for the time being. + <<set $activeSlave.devotion += 5>> + <<else>> + $He gasps in horror, and starts to struggle frantically against $his bonds, <<if $activeSlave.voice != 0>>struggling to scream in panic.<<else>>$his whole body begging to scream.<</if>> However, as the fluid reaches $him, $he seems to despair and resigns $himself to $his fate. As $his belly swells, you find yourself comparing $him first to a binge eater, then some of the chubbier citizens you've seen, a large pregnancy, and finally a water balloon ready to burst. You stop the flow, and rest a hand on $his heaving stomach. $His @@.gold;terrified@@ breathing and distant expression are clearly due to the pain, not lust, but it's also now quite clear to $him who is in charge here. You have little intent on letting $his stomach empty and will be setting aside enough milk to keep $him bloated into submission. + <<set $activeSlave.trust -= 3>> + <</if>> + <<set $activeSlave.inflation = 3, $activeSlave.inflationType = "milk", $activeSlave.inflationMethod = 1>> + <<run SetBellySize($activeSlave)>> + <</replace>> + <</link>> <</if>> <</if>> diff --git a/src/uncategorized/nonRandomEvent.tw b/src/uncategorized/nonRandomEvent.tw index ea3d6db20190bc976be87d652fa1361bf43934ad..1d31ee89f98a3a18a7c0bde1e576d0f73a509914 100644 --- a/src/uncategorized/nonRandomEvent.tw +++ b/src/uncategorized/nonRandomEvent.tw @@ -118,7 +118,7 @@ <<goto "P coup aftermath">> <<elseif $SF.Toggle && $SF.Active === -1 && _effectiveWeek >= 72>> <<goto "Security Force Proposal">> -<<elseif $failedElite > 300 && $eugenicsFullControl != 1>> +<<elseif $arcologies[0].FSRestart != "unset" && $failedElite > 300 && $eugenicsFullControl != 1>> <<goto "eliteTakeOver">> <<elseif (_effectiveWeek > 5) && ($rep > 3000) && ($FSAnnounced == 0)>> <<goto "P FS Announcement">> diff --git a/src/uncategorized/options.tw b/src/uncategorized/options.tw index 07490a74dd11667b5a54a401aa5a641803a05f41..1327ac46d4f46262682a8b2b7a2d454a8e7efd15 100644 --- a/src/uncategorized/options.tw +++ b/src/uncategorized/options.tw @@ -598,7 +598,7 @@ Assignment performance vignettes on the end week report are <<if $debugModeCustomFunction > 0>> @@.cyan;ENABLED.@@ [[Disable|Options][$debugModeCustomFunction = 0]] <<else>> - @@.red;DISABLED.@@ [[Disable|Options][$debugModeCustomFunction = 1]] + @@.red;DISABLED.@@ [[Enable|Options][$debugModeCustomFunction = 1]] <</if>> <br> <<else>> diff --git a/src/uncategorized/pBombing.tw b/src/uncategorized/pBombing.tw index 34d421f2873936292394c3232eaa78c46720caf4..ac6ab8a82b8502cf60a398b789eb667b14f04bd5 100644 --- a/src/uncategorized/pBombing.tw +++ b/src/uncategorized/pBombing.tw @@ -9,9 +9,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $Bodyguard 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($Bodyguard, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $Bodyguard 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($Bodyguard, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/pCoupAttempt.tw b/src/uncategorized/pCoupAttempt.tw index d9f5faac09969b0c7eae2d3502b3d10403fa9413..ad122a29d31673675d5ba8e75d664c066bb96b65 100644 --- a/src/uncategorized/pCoupAttempt.tw +++ b/src/uncategorized/pCoupAttempt.tw @@ -37,8 +37,8 @@ <<set _weeks-->> <</for>> <</if>> - <<set _doubleAgent = ["agent", "trapper"].includes($traitorType) ? 1 : 0>> <</if>> +<<set _doubleAgent = ["agent", "trapper"].includes($traitorType) ? 1 : 0>> You are awakened in the middle of the night by a jolt that shakes the entire arcology, accompanied by a distant boom. It is followed by the wail of the arcology's alarm systems, and then finally by a faint crackle that grows to a constant chatter of gunfire. Main power goes out, and you claw your way in the darkness to the video feeds, running on emergency backup. The Daughters of Liberty have more sympathizers in the arcology than even you suspected, and they're well armed and have the element of surprise. <<if $arcologies[0].FSRomanRevivalistLaw == 1>> diff --git a/src/uncategorized/pCoupLoss.tw b/src/uncategorized/pCoupLoss.tw index 768077dcd58348066d2d0d6192f6eae60dad4cf2..829a2412ef6527a9f2677ee31a83322376694d89 100644 --- a/src/uncategorized/pCoupLoss.tw +++ b/src/uncategorized/pCoupLoss.tw @@ -32,7 +32,7 @@ You are awakened in the middle of the night by a jolt that shakes the entire arc <<elseif $traitor.bellyPreg >= 5000>> the pregnant <</if>> - $traitor.slaveName on one of the feeds, + $traitor.slaveName on one of the feeds, <<if $traitorType == "agent" || $traitorType == "trapper">> trying to sabotage a stockpile of explosives. <<elseif $traitorType == "horror">> diff --git a/src/uncategorized/pHostageAcquisition.tw b/src/uncategorized/pHostageAcquisition.tw index ad8f678554d9b49a4babd9f31c8532a2b9796d53..02bceec4236386964aed72229cc3195f83e01544 100644 --- a/src/uncategorized/pHostageAcquisition.tw +++ b/src/uncategorized/pHostageAcquisition.tw @@ -13,9 +13,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -53,6 +53,9 @@ Your hired mercenaries are en route now with your precious cargo. <<switch $rivalryFS>> <<case "Racial Subjugationism">> + <<if $activeSlave.preg > 0>> + <<run WombFatherRace($activeSlave, $arcologies[0].FSSubjugationistRace)>> + <</if>> <<set $activeSlave.health = 50>> <<if $rivalryDuration <= 5>> Upon seeing you, $activeSlave.slaveName dives into your <<if $PC.boobs == 1>>ample bust<<else>>chest<</if>> sobbing "They kept trying to rape me with $arcologies[0].FSSubjugationistRace <<s>>lave<<s>>!" You gently wrap your arms around $him in a comforting embrace. $He's nearly the same as you remember $him, albeit a bit more hateful towards $arcologies[0].FSSubjugationistRace people. @@ -69,15 +72,17 @@ Your hired mercenaries are en route now with your precious cargo. The mercenary captain quickly gags $him. "My apologies, I did warn you $he was a handful. Please be careful when you unbind $him, I'd hate for anything to happen to my best employer," he says as he and his group exit your penthouse, leaving you with the enraged $activeSlave.slaveName. $He looks the same as you remember, but $he acts nothing like the $girl you used to know. Odds are high that $he'll cause problems for you in the future. <</if>> <<case "Racial Supremacism">> - <<set $activeSlave.pregType = setPregType($activeSlave)>> - <<set WombInit($activeSlave)>> - <<if $arcologies[0].FSSubjugationistRace != 0>> - <<set _notSupreme = $arcologies[0].FSSubjugationistRace>> - <<else>> - <<set _races = setup.filterRacesLowercase.filter(race => race !== $arcologies[0].FSSupremacistRace)>> - <<set _notSupreme = _races.random()>> + <<if $seePreg != 0>> + <<set $activeSlave.pregType = setPregType($activeSlave)>> + <<set WombInit($activeSlave)>> + <<if $arcologies[0].FSSubjugationistRace != 0>> + <<set _notSupreme = $arcologies[0].FSSubjugationistRace>> + <<else>> + <<set _races = setup.filterRacesLowercase.filter(race => race !== $arcologies[0].FSSupremacistRace)>> + <<set _notSupreme = _races.random()>> + <</if>> + <<run WombFatherRace($activeSlave, _notSupreme)>> <</if>> - <<run WombFatherRace($activeSlave, _notSupreme)>> <<if $rivalryDuration <= 5>> Upon seeing you, $activeSlave.slaveName dives into your <<if $PC.boobs == 1>>ample bust<<else>>chest<</if>> sobbing "Thank you... Thank you..." You gently wrap your arms around $him in a comforting embrace. $He's nearly the same as you remember $him, albeit acting slightly odd and covered in scars. <<set $activeSlave.weight = 0>> @@ -132,9 +137,9 @@ Your hired mercenaries are en route now with your precious cargo. <<set $activeSlave.health = 50>> <<if $seeHyperPreg != 1>> <<if $rivalryDuration <= 5>> - Upon seeing you, $activeSlave.slaveName dives into your <<if $PC.boobs == 1>>ample bust<<else>>chest<</if>> sobbing "They filled me with cum! I think I'm pregnant!" You gently wrap your arms around $him in a comforting embrace. $He's exactly as you remember, though a medical scan reveals that $he is carrying octuplets. + Upon seeing you, $activeSlave.slaveName dives into your <<if $PC.boobs == 1>>ample bust<<else>>chest<</if>> sobbing "They filled me with cum! I think I'm pregnant!" You gently wrap your arms around $him in a comforting embrace. $He's exactly as you remember, though a medical scan reveals that $he is carrying <<print pregNumberName($activeSlave.pregType, 2)>>. <<elseif $rivalryDuration <= 10>> - Upon seeing you, $activeSlave.slaveName gingerly approaches, uncertain if $he should. You pull $him into your <<if $PC.boobs == 1>>ample bust<<else>>chest<</if>> as $he breaks down in tears, $his rounded middle pressing into your own. "They knocked me up!" $He's exactly as you remember, though a medical scan reveals that $he is carrying octuplets. + Upon seeing you, $activeSlave.slaveName gingerly approaches, uncertain if $he should. You pull $him into your <<if $PC.boobs == 1>>ample bust<<else>>chest<</if>> as $he breaks down in tears, $his rounded middle pressing into your own. "They knocked me up!" $He's exactly as you remember, though a medical scan reveals that $he is carrying <<print pregNumberName($activeSlave.pregType, 2)>>. <<elseif $rivalryDuration <= 15>> Upon seeing you, $activeSlave.slaveName shifts $his gravid bulk back and forth, unsure of what to make of you. As you step forward, $he hesitatingly approaches. Once $he is close enough $he says "Plea<<s>>e don't take them from me, I love them..." While $he looks the same as you remember, albeit rather pregnant, $he certainly doesn't think the same anymore. <<elseif $rivalryDuration <= 20>> diff --git a/src/uncategorized/pRivalryActions.tw b/src/uncategorized/pRivalryActions.tw index 5fbc3eadc953f02609919f622bcc2c68c5f78e7f..fff8672ddeb931902ba4f964678ddcb72f14d911 100644 --- a/src/uncategorized/pRivalryActions.tw +++ b/src/uncategorized/pRivalryActions.tw @@ -6,9 +6,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $hostage 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($hostage, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $hostage 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($hostage, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/pRivalryCapture.tw b/src/uncategorized/pRivalryCapture.tw index f9d6e82a0c08e8aaebf531881d73da9381c771e2..d155a98778d882597b79bb9a63df2e6661a067a2 100644 --- a/src/uncategorized/pRivalryCapture.tw +++ b/src/uncategorized/pRivalryCapture.tw @@ -24,12 +24,12 @@ <</if>> <<set _rivalType = _rivalType.random()>> +<<set $oneTimeDisableDisability = 1>> +<<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<switch _rivalType>> <<case "expansionist shemale">> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XY")>> <<set $activeSlave.face = 100>> <<set $activeSlave.faceImplant = 15>> @@ -64,8 +64,6 @@ <<case "cum addict">> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XY")>> <<set $activeSlave.chem = 3000>> <<set $activeSlave.face = 100>> @@ -99,8 +97,6 @@ <<case "hung shota">> <<set $activeSlaveOneTimeMinAge = $minimumSlaveAge>> <<set $activeSlaveOneTimeMaxAge = 18>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XY")>> <<set $activeSlave.face = 100>> <<set $activeSlave.faceShape = "androgynous">> @@ -132,8 +128,6 @@ <<case "masculine">> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XY")>> <<set $activeSlave.face = 55>> <<set $activeSlave.faceImplant = 0>> @@ -163,8 +157,6 @@ <<case "micropenis">> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XY")>> <<set $activeSlave.face = 55>> <<set $activeSlave.faceImplant = 0>> @@ -194,8 +186,6 @@ <<case "bull dyke">> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XX")>> <<set $activeSlave.face = 55>> <<set $activeSlave.faceImplant = 0>> @@ -235,8 +225,6 @@ <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> <</if>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XX")>> <<set $activeSlave.pubertyXX = 1>> <<set $activeSlave.face = 100>> @@ -284,8 +272,6 @@ <<case "oppai loli">> <<set $activeSlaveOneTimeMinAge = $minimumSlaveAge>> <<set $activeSlaveOneTimeMaxAge = 12>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XX")>> <<set $activeSlave.face = 100>> <<set $activeSlave.faceImplant = 0>> @@ -316,8 +302,6 @@ <<case "cow">> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XX")>> <<set $activeSlave.face = 55>> <<set $activeSlave.faceImplant = 0>> @@ -349,8 +333,6 @@ <<case "bimbo">> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XX")>> <<set $activeSlave.face = 100>> <<set $activeSlave.faceImplant = 65>> @@ -383,8 +365,6 @@ <<default>> <<set $activeSlaveOneTimeMinAge = 18>> <<set $activeSlaveOneTimeMaxAge = 42>> - <<set $oneTimeDisableDisability = 1>> - <<if setup.filterRacesLowercase.includes($rivalRace)>><<set $fixedRace = $rivalRace>><</if>> <<set $activeSlave = GenerateNewSlave("XX")>> <<set $activeSlave.face = 100>> <<set $activeSlave.faceImplant = 15>> @@ -434,9 +414,9 @@ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef medImg"><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> diff --git a/src/uncategorized/pRivalryHostage.tw b/src/uncategorized/pRivalryHostage.tw index 831455e9c9694a17422b9248e504950b15eefdca..1a6533765b6baddf660803514d0043cfc2f372d4 100644 --- a/src/uncategorized/pRivalryHostage.tw +++ b/src/uncategorized/pRivalryHostage.tw @@ -231,9 +231,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -254,7 +254,7 @@ Only a few days into your inter-arcology war, you receive a video message from y <<case "escort">> time as a _womanP of sexual promiscuity. $He was a pretty little slut who ran in the same sex circles. You were never particularly close, <<case "servant">> - time as a _womanP of servitude. $He was a <<if $PC.title == 1>>maid<<else>>fellow maid<</if>> under your late master. <<if $PC.title == 0>>You may have delivered several of $his children, but you<<else>>You<</if>> were never particularly close, + time as a _womanP of servitude. $He was a <<if $PC.title == 1>>maid<<else>>fellow maid<</if>> under your late Master. <<if $PC.title == 0>>You may have delivered several of $his children, but you<<else>>You<</if>> were never particularly close, <<case "gang">> time as a gang leader. $He was one of your best, yet you never got close enough, <<case "BlackHat">> diff --git a/src/uncategorized/pSlaveMedic.tw b/src/uncategorized/pSlaveMedic.tw index f5cf21a7206b4ef706e1243d8685f6481ba24adb..feb6d5971be84e05a423ae9604c7b81a50d459cb 100644 --- a/src/uncategorized/pSlaveMedic.tw +++ b/src/uncategorized/pSlaveMedic.tw @@ -64,9 +64,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/peCombatTraining.tw b/src/uncategorized/peCombatTraining.tw index c10641ee1c182b992ee4c00cdb077f063cc9de68..9bb6e7fc46c834377a87f8ed62e540008b60b0fc 100644 --- a/src/uncategorized/peCombatTraining.tw +++ b/src/uncategorized/peCombatTraining.tw @@ -9,9 +9,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/peConcubineInterview.tw b/src/uncategorized/peConcubineInterview.tw index 33579c9c83e1bbd3410958119b932b1ebe03434b..7c5ccfb33bc12aa6c01087b10a608dce95b476f7 100644 --- a/src/uncategorized/peConcubineInterview.tw +++ b/src/uncategorized/peConcubineInterview.tw @@ -16,9 +16,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/peHeadgirlConcubine.tw b/src/uncategorized/peHeadgirlConcubine.tw index a947402f4ff1af2161858b09011dfb104ceb4aad..fb14fed7f4455915ca7ec7751cc78754cfd5005e 100644 --- a/src/uncategorized/peHeadgirlConcubine.tw +++ b/src/uncategorized/peHeadgirlConcubine.tw @@ -15,10 +15,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $HeadGirl 2 0>> + <<= SlaveArt($HeadGirl, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $Concubine 2 0>> + <<= SlaveArt($Concubine, 2, 0)>> </div> </div> <</if>> @@ -224,7 +224,7 @@ and it's also obvious that they've been filling the few minutes they've been wai <</if>> $he clears $his throat and asks your permission to make a couple of last-minute changes to slaves' assignments for the day. <br><br> - As $he did so, you were encircling your girls in your <<if $arcologies[0].FSPhysicalIdealist != "unset">>powerful arms<<elseif $PC.title == 1>>dominant grip<<else>>loving grip<</if>>. Cupping your Head Girl's butt in your left hand and your Concubine's in your right, you give them a good squeeze as $HeadGirl.slaveName finishes $his question. $His voice rises cutely as your marauding hand moves over the + As $he did so, you were encircling your <<if $girl == _girl2>>$girl<<else>>lover<</if>>s in your <<if $arcologies[0].FSPhysicalIdealist != "unset">>powerful arms<<elseif $PC.title == 1>>dominant grip<<else>>loving grip<</if>>. Cupping your Head Girl's butt in your left hand and your Concubine's in your right, you give them a good squeeze as $HeadGirl.slaveName finishes $his question. $His voice rises cutely as your marauding hand moves over the <<if $HeadGirl.butt > 10>> endless expanse of $his backside. $He manages to finish, but trails off into a groan, the <<if Math.floor($HeadGirl.buttImplant/$HeadGirl.butt) > .60>>firm<<else>>soft<</if>> flesh quivering against your palm. <<else>> diff --git a/src/uncategorized/peLonelyBodyguard.tw b/src/uncategorized/peLonelyBodyguard.tw index 817390f78a50fee29957e689a26c8980940f732f..6f3feea03c622f7674a5fc75064030ecc9c4ae98 100644 --- a/src/uncategorized/peLonelyBodyguard.tw +++ b/src/uncategorized/peLonelyBodyguard.tw @@ -18,10 +18,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[$j] 2 0>> + <<= SlaveArt($slaves[$j], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/pePitFight.tw b/src/uncategorized/pePitFight.tw index b12a3d94a69687ac4426a20c4d3fd3e97cb6530f..007a173b650129b3060b36618074853e69128f55 100644 --- a/src/uncategorized/pePitFight.tw +++ b/src/uncategorized/pePitFight.tw @@ -13,9 +13,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/pePitFightInvite.tw b/src/uncategorized/pePitFightInvite.tw index 0f6b1dfbd8aa1ae15e1fb9493192be41db6e1b3d..d6568c78a62a65fa089c0d637d371a7fd34bec2d 100644 --- a/src/uncategorized/pePitFightInvite.tw +++ b/src/uncategorized/pePitFightInvite.tw @@ -19,9 +19,9 @@ Gladiatorial combat between slaves has not yet reached the level of social accep /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $Bodyguard 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($Bodyguard, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $Bodyguard 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($Bodyguard, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/personalAssistantAppearance.tw b/src/uncategorized/personalAssistantAppearance.tw index 4caa34fc4a598888858322734062596f7f2b17af..99d4667cf074403d40835e2292b2ad0cfa8780b0 100644 --- a/src/uncategorized/personalAssistantAppearance.tw +++ b/src/uncategorized/personalAssistantAppearance.tw @@ -285,7 +285,7 @@ _HeA's a cute little <<if $arcologies[0].FSSupremacist != "unset" && $assistantF <<case "repopulation focus">> wearing a nice suit, it's tailored to contain _hisA pregnant belly. <<case "eugenics">> - wearing a nice suit and wearing the insignia of the elite upon _hisA arm. _HisA suit strains to contain _hisA belly, swollen with the child of another elite. + wearing a nice suit and wearing the insignia of the Elite upon _hisA arm. _HisA suit strains to contain _hisA belly, swollen with the child of another Elite. <<case "gender radicalist">> wearing a nice suit. _HeA's changed _hisA appearance recently to make _himselfA quite androgynous. <<case "gender fundamentalist">> diff --git a/src/uncategorized/policies.tw b/src/uncategorized/policies.tw index 70c06fdf651c4fc4394a026ccc91312cf5e16f76..10e46e49942ee354b4eaa1a43ec457e857cd5a96 100644 --- a/src/uncategorized/policies.tw +++ b/src/uncategorized/policies.tw @@ -1366,7 +1366,7 @@ <<if $arcologies[0].FSRestartDecoration >= 90>> <<if $arcologies[0].FSRestartLaw == 0>> - <br>''@@.lime;Taxation of Fertile Non-Elite:@@'' fertile civilians, who are not part of society's elite, will face increased taxation. + <br>''@@.lime;Taxation of Fertile Non-Elite:@@'' fertile civilians, who are not part of society's Elite, will face increased taxation. [[Implement|Policies][$arcologies[0].FSRestartLaw = 1, cashX(-5000, "policies"), repX(-1000, "policies")]] <br> //Will increase your rental income, but the lower class will dislike you.// <</if>> diff --git a/src/uncategorized/randomIndividualEvent.tw b/src/uncategorized/randomIndividualEvent.tw index 824d679150a9249245f7d34e1280724c499833d9..1d99f93b37102020ec282b0d2c1bd4fe97057114 100644 --- a/src/uncategorized/randomIndividualEvent.tw +++ b/src/uncategorized/randomIndividualEvent.tw @@ -112,7 +112,7 @@ <</if>> <</for>> - <<if $eventSlave.assignment == "be a servant">> + <<if $eventSlave.assignment == "work as a servant">> <<run generateRandomEventPoolServant($eventSlave)>> <<else>> <<run generateRandomEventPoolStandard($eventSlave)>> diff --git a/src/uncategorized/reAWOL.tw b/src/uncategorized/reAWOL.tw index e0ec54f7eabf8236aea07dd2d617bada071c74cd..8be35ca1d2174440fa9a170b59fb78c14a97c54b 100644 --- a/src/uncategorized/reAWOL.tw +++ b/src/uncategorized/reAWOL.tw @@ -47,9 +47,9 @@ <<if $seeImages == 1>> <div class="imageColumn"> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <<= assistantArt(3)>> </div> @@ -145,9 +145,9 @@ Your window of opportunity to act is closing. If you have plans for punishing th <<set $activeSlave.clothes = "chains">> <div class="imageColumn"> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <<= assistantArt(3)>> </div> @@ -225,9 +225,9 @@ Your window of opportunity to act is closing. If you have plans for punishing th <<set $activeSlave.clothes = "chains">> <div class="imageColumn"> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <<= assistantArt(3)>> </div> diff --git a/src/uncategorized/reAnalPunishment.tw b/src/uncategorized/reAnalPunishment.tw index c3b1132101e76299ab47b0772359f20994353262..cddbcc8d87fd436dcb40a8a7e07c2308296495df 100644 --- a/src/uncategorized/reAnalPunishment.tw +++ b/src/uncategorized/reAnalPunishment.tw @@ -15,10 +15,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $HeadGirl 2 0>> + <<= SlaveArt($HeadGirl, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reBoomerang.tw b/src/uncategorized/reBoomerang.tw index 22d269eb2d408ef137aa9bdc0e8be75b1b8d3298..edd2dd097a30dd0a2c499f12d83cc37e9288557f 100644 --- a/src/uncategorized/reBoomerang.tw +++ b/src/uncategorized/reBoomerang.tw @@ -165,6 +165,7 @@ brings up the relevant feeds. There's a naked body crumpled pathetically against "They were breeding me with idiot<<s>>." You sold $him to a Subjugationist arcology; it's nothing short of incredible that $he managed to get back here. $He must have sold and traded $himself without hesitation. "I d-don't want thi<<s>> pregnan<<c>>y." <<set $activeSlave.preg = _pregWeeks-1, $activeSlave.pregType = random(2,4), $activeSlave.pregWeek = $activeSlave.preg, $activeSlave.pregKnown = 1>> <<run SetBellySize($activeSlave)>> + <<run WombFatherRace($activeSlave, $activeSlave.race)>> <<case "gender radicalist arcology">> "They <<if $activeSlave.balls>> cut my ball<<s>> off and then<</if>> j-ju<<s>>t kind of t-turned me loo<<s>>e in the corridor<<s>>," $he moans. You sold $him to a Gender Radicalist arcology. "Naked, <<s>>o everyone could u<<s>>e my a<<ss>>. Plea<<s>>e, I don't want to be an entire arcology'<<s>> bitch." <<set $activeSlave.balls = 0>> diff --git a/src/uncategorized/reBusyArcade.tw b/src/uncategorized/reBusyArcade.tw index b07db15ed0f6c1a74e914dd9c337ac6b2106c43e..6f25e7e08ad0917dbcfcdcfad3a33c2afc009627 100644 --- a/src/uncategorized/reBusyArcade.tw +++ b/src/uncategorized/reBusyArcade.tw @@ -21,7 +21,7 @@ Slaves in your arcade are not immured in the facility permanently, since holding <br><br> -Facing the ground, <<if !canTalk($activeSlave)>>$he gestures with shaking hands that $he cannot take any more. $He begs you abjectly to let $him out of the arcade and promises to be a perfect sex slave if you do.<<elseif SlaveStatsChecker.checkForLisp($activeSlave)>>$he lisps through tears, <<else>>$he sobs, <</if>>"<<Master>>, plea<<s>>e. I can't take any more of thi<<s>>. Plea<<s>>e let me out. I'll do anything, <<Master>>. I'll love you forever, <<Master>> — ju<<s>>t don't make me go back in<<s>>ide that wall." +Facing the ground, <<if !canTalk($activeSlave)>>$he gestures with shaking hands that $he cannot take any more. $He begs you abjectly to let $him out of the arcade and promises to be a perfect sex slave if you do. <<elseif SlaveStatsChecker.checkForLisp($activeSlave)>>$he lisps through tears, <<else>>$he sobs, <</if>>"<<Master>>, plea<<s>>e. I can't take any more of thi<<s>>. Plea<<s>>e let me out. I'll do anything, <<Master>>. I'll love you forever, <<Master>> — ju<<s>>t don't make me go back in<<s>>ide that wall." <br><br> diff --git a/src/uncategorized/reCitizenHookup.tw b/src/uncategorized/reCitizenHookup.tw index 141373aec7e774bdd3aaf4dbcacf4ad937d65406..f779b76b5ce0fed78c93ab3a5058d75d44baee2c 100644 --- a/src/uncategorized/reCitizenHookup.tw +++ b/src/uncategorized/reCitizenHookup.tw @@ -279,92 +279,92 @@ She's clearly attracted to you; even the most consummate actress would have diff <</replace>> <</link>> <<if _FS != "none">> -<br><<link "Emphasize her societal style with exhibitionism">> - <<replace "#result">> - You turn to face her straight on, and something about the look in your eye fills her with mixed apprehension and anticipation. You agree with her banter and praise her for being so forward-thinking, before transitioning to more direct praise of her style and then her body. You're speaking in a tone that cuts through the room, and by the time you kiss your willing conquest, there's not a person in the room who isn't paying attention. They all understand the message: this gathering is turning into something else, now. Those few who aren't willing to fuck in public withdraw, and everyone who didn't come with a sexual partner sends urgent messages to have appropriate slaves brought from their apartments. You make out with her for a while, letting everyone make arrangements, and then pull her clothes off, making sure her - <<switch _FS>> - <<case "Subjugationist" "Supremacist">> - superior body - <<if _FS == "Supremacist">> - <<set $arcologies[0].FSSupremacist += 5>> - <<else>> - <<set $arcologies[0].FSSubjugationist += 5>> - <</if>> - <<case "Gender Radicalist">> - tits and stiff dick - <<set $arcologies[0].FSGenderRadicalist += 5>> - <<case "Gender Fundamentalist">> - femininity - <<set $arcologies[0].FSGenderFundamentalist += 5>> - <<case "Repopulationist">> - <<if $arcologies[0].FSRepopulationFocusLaw == 1>> - fecund body - <<else>> - ready-to-be-bred body - <</if>> - <<set $arcologies[0].FSRepopulationFocus += 5>> - <<case "Eugenics">> - perfect body - <<set $arcologies[0].FSRestart += 5>> - <<case "Paternalist">> - appealing body - <<set $arcologies[0].FSPaternalist += 5>> - <<case "Degradationist">> - dominant form - <<set $arcologies[0].FSDegradationist += 5>> - <<case "Body Purist">> - natural body - <<set $arcologies[0].FSBodyPurist += 5>> - <<case "Transformation Fetishist">> - fake butt - <<set $arcologies[0].FSTransformationFetishist += 5>> - <<case "Youth Preferentialist">> - young body - <<set $arcologies[0].FSYouthPreferentialist += 5>> - <<case "Maturity Preferentialist">> - mature body - <<set $arcologies[0].FSMaturityPreferentialist += 5>> - <<case "Slimness Enthusiast">> - slender body - <<set $arcologies[0].FSSlimnessEnthusiast += 5>> - <<case "Asset Expansionist">> - curvaceous form - <<set $arcologies[0].FSAssetExpansionist += 5>> - <<case "Pastoralist">> - milk-fed assets - <<set $arcologies[0].FSPastoralist += 5>> - <<case "Physical Idealist">> - muscular body - <<set $arcologies[0].FSPhysicalIdealist += 5>> - <<case "Hedonistic">> - plump body - <<set $arcologies[0].FSHedonisticDecadence += 5>> - <<case "Chattel Religionist">> - divine sexuality - <<set $arcologies[0].FSChattelReligionist += 5>> - <<case "Roman Revivalist">> - elegant form - <<set $arcologies[0].FSRomanRevivalist += 5>> - <<case "Aztec Revivalist">> - well-built form - <<set $arcologies[0].FSAztecRevivalist += 5>> - <<case "Egyptian Revivalist">> - beautiful tanned body - <<set $arcologies[0].FSEgyptianRevivalist += 5>> - <<case "Arabian Revivalist" "Chinese Revivalist" "Edo Revivalist">> - graceful form - <<if _FS == "Edo Revivalist">> - <<set $arcologies[0].FSEdoRevivalist += 5>> - <<elseif _FS == "Arabian Revivalist">> - <<set $arcologies[0].FSArabianRevivalist += 5>> - <<else>> - <<set $arcologies[0].FSChineseRevivalist += 5>> - <</if>> - <<default>> - hot young body - <</switch>> - is obvious to everyone. The message is clear, and your guest of honor is the center of attention as you take her there in view of the arcology's leading citizens. Naturally, the story percolates, making it clear that there's nothing you won't do to @@.green;further acceptance of _FS principles.@@ - <</replace>> -<</link>> + <br><<link "Emphasize her societal style with exhibitionism">> + <<replace "#result">> + You turn to face her straight on, and something about the look in your eye fills her with mixed apprehension and anticipation. You agree with her banter and praise her for being so forward-thinking, before transitioning to more direct praise of her style and then her body. You're speaking in a tone that cuts through the room, and by the time you kiss your willing conquest, there's not a person in the room who isn't paying attention. They all understand the message: this gathering is turning into something else, now. Those few who aren't willing to fuck in public withdraw, and everyone who didn't come with a sexual partner sends urgent messages to have appropriate slaves brought from their apartments. You make out with her for a while, letting everyone make arrangements, and then pull her clothes off, making sure her + <<switch _FS>> + <<case "Subjugationist" "Supremacist">> + superior body + <<if _FS == "Supremacist">> + <<set $arcologies[0].FSSupremacist += 5>> + <<else>> + <<set $arcologies[0].FSSubjugationist += 5>> + <</if>> + <<case "Gender Radicalist">> + tits and stiff dick + <<set $arcologies[0].FSGenderRadicalist += 5>> + <<case "Gender Fundamentalist">> + femininity + <<set $arcologies[0].FSGenderFundamentalist += 5>> + <<case "Repopulationist">> + <<if $arcologies[0].FSRepopulationFocusLaw == 1>> + fecund body + <<else>> + ready-to-be-bred body + <</if>> + <<set $arcologies[0].FSRepopulationFocus += 5>> + <<case "Eugenics">> + perfect body + <<set $arcologies[0].FSRestart += 5>> + <<case "Paternalist">> + appealing body + <<set $arcologies[0].FSPaternalist += 5>> + <<case "Degradationist">> + dominant form + <<set $arcologies[0].FSDegradationist += 5>> + <<case "Body Purist">> + natural body + <<set $arcologies[0].FSBodyPurist += 5>> + <<case "Transformation Fetishist">> + fake butt + <<set $arcologies[0].FSTransformationFetishist += 5>> + <<case "Youth Preferentialist">> + young body + <<set $arcologies[0].FSYouthPreferentialist += 5>> + <<case "Maturity Preferentialist">> + mature body + <<set $arcologies[0].FSMaturityPreferentialist += 5>> + <<case "Slimness Enthusiast">> + slender body + <<set $arcologies[0].FSSlimnessEnthusiast += 5>> + <<case "Asset Expansionist">> + curvaceous form + <<set $arcologies[0].FSAssetExpansionist += 5>> + <<case "Pastoralist">> + milk-fed assets + <<set $arcologies[0].FSPastoralist += 5>> + <<case "Physical Idealist">> + muscular body + <<set $arcologies[0].FSPhysicalIdealist += 5>> + <<case "Hedonistic">> + plump body + <<set $arcologies[0].FSHedonisticDecadence += 5>> + <<case "Chattel Religionist">> + divine sexuality + <<set $arcologies[0].FSChattelReligionist += 5>> + <<case "Roman Revivalist">> + elegant form + <<set $arcologies[0].FSRomanRevivalist += 5>> + <<case "Aztec Revivalist">> + well-built form + <<set $arcologies[0].FSAztecRevivalist += 5>> + <<case "Egyptian Revivalist">> + beautiful tanned body + <<set $arcologies[0].FSEgyptianRevivalist += 5>> + <<case "Arabian Revivalist" "Chinese Revivalist" "Edo Revivalist">> + graceful form + <<if _FS == "Edo Revivalist">> + <<set $arcologies[0].FSEdoRevivalist += 5>> + <<elseif _FS == "Arabian Revivalist">> + <<set $arcologies[0].FSArabianRevivalist += 5>> + <<else>> + <<set $arcologies[0].FSChineseRevivalist += 5>> + <</if>> + <<default>> + hot young body + <</switch>> + is obvious to everyone. The message is clear, and your guest of honor is the center of attention as you take her there in view of the arcology's leading citizens. Naturally, the story percolates, making it clear that there's nothing you won't do to @@.green;further acceptance of _FS principles.@@ + <</replace>> + <</link>> <</if>> </span> diff --git a/src/uncategorized/reDevotedMotherDaughter.tw b/src/uncategorized/reDevotedMotherDaughter.tw index bd1f883915b9cfd64ed114f04b4a996e82cafbfc..70d82b2469f2af37085508f6fb1920567ed11421 100644 --- a/src/uncategorized/reDevotedMotherDaughter.tw +++ b/src/uncategorized/reDevotedMotherDaughter.tw @@ -12,10 +12,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $slaves[$i] 2 0>> + <<= SlaveArt($slaves[$i], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[$j] 2 0>> + <<= SlaveArt($slaves[$j], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reDevotedTwins.tw b/src/uncategorized/reDevotedTwins.tw index 9aa6edc8aeefa6d1fc5879085743eb8e3ab17482..ca52ba11fec69f8767c871622e1be2d87586196e 100644 --- a/src/uncategorized/reDevotedTwins.tw +++ b/src/uncategorized/reDevotedTwins.tw @@ -10,10 +10,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $slaves[$j] 2 0>> + <<= SlaveArt($slaves[$j], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[$i] 2 0>> + <<= SlaveArt($slaves[$i], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reDevotees.tw b/src/uncategorized/reDevotees.tw index c9c85f4d105c4ab11835948e3eb71bb3fccddf92..b38013428b2ffa8e42e5e619555618b32ca31b15 100644 --- a/src/uncategorized/reDevotees.tw +++ b/src/uncategorized/reDevotees.tw @@ -11,16 +11,16 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $slaves[_red1] 2 0>> + <<= SlaveArt($slaves[_red1], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[_red2] 2 0>> + <<= SlaveArt($slaves[_red2], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[_red3] 2 0>> + <<= SlaveArt($slaves[_red3], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[_red4] 2 0>> + <<= SlaveArt($slaves[_red4], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reFSAcquisition.tw b/src/uncategorized/reFSAcquisition.tw index de1fb465a0d2c63a23d0216752367a5e79e82dab..145b4c236bd21f4b52ebeb6b635519cac6ac24ca 100644 --- a/src/uncategorized/reFSAcquisition.tw +++ b/src/uncategorized/reFSAcquisition.tw @@ -1339,7 +1339,7 @@ The call comes in from an office, and you suppress the urge to check whether $as <<case "Roman Revivalist">> $He arrives wide-eyed and enthusiastic about the historical style $he saw on the way in. $He swallows nervously throughout the enslavement process and even cries a little at the end. $He's slow to undress, and when $he's finished, $he covers $his modest breasts with one arm and $his mons with the other. It seems that $he's about to have a rude awakening about the realities of being a house slave. <<case "Aztec Revivalist">> - $He arrives awestruck by all the sights $he passed through to get to your abode. $He probably didn't see anything too extreme, but $he will soon. Feeling your gaze on $his body, $he quickly abandons all fears from $his past life, strips off $his clothes, and submits to you fully. Only time will tell if $he made a mistake. + $He arrives awestruck by <<if canSee($activeSlave)>>all the sights<<else>>everything<</if>> $he passed through to get to your abode. $He probably didn't see anything too extreme, but $he will soon. Feeling your gaze on $his body, $he quickly abandons all fears from $his past life, strips off $his clothes, and submits to you fully. Only time will tell if $he made a mistake. <<case "Edo Revivalist">> $He arrives with doubt already clouding $his eyes. It seems $he passed one of the arcology's seedier bars on $his way up to your penthouse; the sight of roaring patrons swilling cheap sake and manhandling whores in loose kimonos does not seem to have been part of $his expectations. As the enslavement process winds on, $he reflexively begins to look around for a means of escape, and slowly collapses into $himself as $he realizes there is none. <<case "Arabian Revivalist">> diff --git a/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw b/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw index 57c2aaf511fb437d0d361f47b9e28e4e0a3d4958..0796bf023277958262d604b043f6e3814b0124c7 100644 --- a/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw +++ b/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw @@ -29,7 +29,7 @@ They arrive hand-in-hand and don't let go of each other until the end of the ens <<set _secondSlave.relationshipTarget = $activeSlave.ID>> -<<set _secondSlave.hStyle = either("ass-length", "long", "shoulder-length", "short", "very short", "shaved bald")>> +<<set _secondSlave.hStyle = either("ass-length", "long", "shaved bald", "short", "shoulder-length", "very short")>> <<if (_secondSlave.actualAge <= 22)>> <<set _secondSlave.career = setup.youngCareers.random()>> <<elseif (_secondSlave.intelligenceImplant >= 15)>> diff --git a/src/uncategorized/reFSNonconformist.tw b/src/uncategorized/reFSNonconformist.tw index 12edfc102ae63de73c9521dfba6dacf671f9f3bf..9a5018596642e94b55343bbccc9ba112db9e041b 100644 --- a/src/uncategorized/reFSNonconformist.tw +++ b/src/uncategorized/reFSNonconformist.tw @@ -216,7 +216,7 @@ The nonconformist is far too prominent and prosperous to make this an easy dilem <<run cashX(-10000, "event")>> <<replace "#result">><<nobr>> <<if $arcologies[0].FSRestart != "unset">> - You promise to deal with the situation. The Societal Elite trust you to not fail, and they are not disappointed. The fallen elite + You promise to deal with the situation. The Societal Elite trust you to not fail, and they are not disappointed. The fallen Elite <<else>> You promise to deal with the situation. The prominent citizens trust you enough to leave the problem in your hands, and they are not disappointed. The nonconformist <</if>> diff --git a/src/uncategorized/reFullBed.tw b/src/uncategorized/reFullBed.tw index 93016b4edab79e61658b86f01b58a27df362e763..6b040561bb64f7ce538849d3c69914a72e76de71 100644 --- a/src/uncategorized/reFullBed.tw +++ b/src/uncategorized/reFullBed.tw @@ -9,10 +9,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $slaves[_bedSlaveOne] 2 0>> + <<= SlaveArt($slaves[_bedSlaveOne], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[_bedSlaveTwo] 2 0>> + <<= SlaveArt($slaves[_bedSlaveTwo], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reHGReplacement.tw b/src/uncategorized/reHGReplacement.tw index 463423c7f687fd718734045fecc1e355dd7338ae..9da872340020757056844b46f61ddd1252f14c81 100644 --- a/src/uncategorized/reHGReplacement.tw +++ b/src/uncategorized/reHGReplacement.tw @@ -13,10 +13,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $HeadGirl 2 0>> + <<= SlaveArt($HeadGirl, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reLegendaryBalls.tw b/src/uncategorized/reLegendaryBalls.tw index cf7fe42749b699f129c7c412a88c880e6a9e16ac..48ef0cd35a1866feb5f947226456771bda96555d 100644 --- a/src/uncategorized/reLegendaryBalls.tw +++ b/src/uncategorized/reLegendaryBalls.tw @@ -14,9 +14,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/reLegendaryCow.tw b/src/uncategorized/reLegendaryCow.tw index 0c32bfa891cc629b3cd0e452781dc3d5dd998706..e0a63351b07ea98f7aa25f96274eee355f777087 100644 --- a/src/uncategorized/reLegendaryCow.tw +++ b/src/uncategorized/reLegendaryCow.tw @@ -14,9 +14,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/reLegendaryEntertainer.tw b/src/uncategorized/reLegendaryEntertainer.tw index 71e6816774640202fdb7904b9cf49a28afc61c46..27c4c7448ddb27fa03db13f66bb389257da5cf88 100644 --- a/src/uncategorized/reLegendaryEntertainer.tw +++ b/src/uncategorized/reLegendaryEntertainer.tw @@ -14,9 +14,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/reLegendaryWhore.tw b/src/uncategorized/reLegendaryWhore.tw index 12d6e806325b69b56ec2dc1551998b44334f0582..419dbb46d93e27c5b9f05b7582ce9f53f55cb631 100644 --- a/src/uncategorized/reLegendaryWhore.tw +++ b/src/uncategorized/reLegendaryWhore.tw @@ -14,9 +14,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/reMilfTourist.tw b/src/uncategorized/reMilfTourist.tw index 2f07fc5bb51338173fe0a02824b5704b1866572d..6ab2d6bd83f305908f99cf576ebb87a152dbd2f2 100644 --- a/src/uncategorized/reMilfTourist.tw +++ b/src/uncategorized/reMilfTourist.tw @@ -6,7 +6,6 @@ <<set _milfSlave = $slaves[_milfed]>> <<run Enunciate(_milfSlave)>> - <<set $activeSlaveOneTimeMinAge = 36>> <<set $activeSlaveOneTimeMaxAge = 42>> <<set $one_time_age_overrides_pedo_mode = 1>> /* middle-aged */ @@ -37,10 +36,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _milfSlave 2 0>> + <<= SlaveArt(_milfSlave, 2, 0)>> </div> </div> <</if>> @@ -111,7 +110,9 @@ <</link>> <br><<link "Share some Free Cities life with _him2">> <<replace "#result">> - You have _milfSlave.slaveName bring the tourist up to meet you. _He2's full of questions about what it's like to be an arcology owner, and you finally tell _him2 that you can give _him2 a pretty good idea. Eagerly, _he2 asks you how, and you point at _milfSlave.slaveName, telling the tourist _he2 ought to bend the slave over the couch if _he2 wants to know what it's really like to be an oversexed oligarch. "I'm, um, not really a lesbian," the tourist responds hesitantly. + <<run Enunciate($activeSlave)>> + You have _milfSlave.slaveName bring the tourist up to meet you. _He2's full of questions about what it's like to be an arcology owner, and you finally tell _him2 that you can give _him2 a pretty good idea. Eagerly, _he2 asks you how, and you point at _milfSlave.slaveName, telling the tourist _he2 ought to bend the slave over the couch if _he2 wants to know what it's really like to be an oversexed oligarch. "I'm, um, not really a le<<s>>bian," the tourist responds hesitantly. + <<run Enunciate(_milfSlave)>> <<if _milfSlave.dick > 0>> "You don't have to be," $he purrs. "I have a cock." $He slides in, just close enough to prove it. "Plea<<s>>e, <<else>> @@ -129,8 +130,9 @@ <</link>> <br><<link "Encourage _him2 to enjoy the slave with your compliments">> <<replace "#result">> - <<setSpokenLocalPronouns _milfSlave $activeSlave>> - You have _milfSlave.slaveName bring the tourist up to meet you, and exchange some minor pleasantries. You tell _him2 that if _he2 really wants to experience Free Cities life, though, _he2 really should enjoy _milfSlave.slaveName, pointing at the slave hovering behind _him2. _He2 blushes furiously, but before _he2 can stammer a refusal, the slave whispers something into _his2 ear. "I'm, um, not really a lesbian," the tourist responds hesitantly. + <<run Enunciate($activeSlave)>> + You have _milfSlave.slaveName bring the tourist up to meet you, and exchange some minor pleasantries. You tell _him2 that if _he2 really wants to experience Free Cities life, though, _he2 really should enjoy _milfSlave.slaveName, pointing at the slave hovering behind _him2. _He2 blushes furiously, but before _he2 can stammer a refusal, the slave whispers something into _his2 ear. "I'm, um, not really a le<<s>>bian," the tourist responds hesitantly. + <<run Enunciate(_milfSlave)>> <<if _milfSlave.dick > 0>> "You don't have to be," $he purrs. "I have a cock." $He slides in, just close enough to prove it. "Plea<<s>>e, <<else>> @@ -138,6 +140,7 @@ <</if>> give me a try." The tourist turns to stare at $him, and _he2 offers just the right kind of plaintive expression. "O-okay," the tourist says in a tiny voice, and _milfSlave.slaveName giggles, hugging _him2 from behind. $He takes the tourist's hand, and they leave your office together. <br><br> + <<setSpokenLocalPronouns _milfSlave $activeSlave>> "<<Master>>," $he reports the next time you see $him, "that touri<<s>>t was really nice. Al<<s>>o, I got _him2 to have <<s>>e<<x>> with me, after all. <<He 2>> wa<<s>> going to take me back to <<his 2>> hotel but I got _him2 to do me on the way. <<He 2>> wa<<s>> all he<<s>>itant and blu<<sh>>y about doing it in public, but <<he 2>> got better after the fir<<s>>t time I ate _him2 out." $He looks pleased with $himself. "I bet <<he 2>> @@.green;tell<<s>> all <<his 2>> friend<<s>>@@ back home how much fun it i<<s>> here." <<set $slaves[_milfed].trust += 4, $slaves[_milfed].counter.oral++>> <<set $oralTotal++>> @@ -147,30 +150,32 @@ <</replace>> <</link>> <<if $cash > 20000>> -<br><<link "Enslave _him2">> - <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> - /* 000-250-006 */ - <<if $seeImages == 1>> - <div class="imageColumn"> - <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <br><<link "Enslave _him2">> + <<set $activeSlave.clothes = "no clothing">> + <<replace "#artFrame">> + /* 000-250-006 */ + <<if $seeImages == 1>> + <div class="imageColumn"> + <div class="imageRef medImg"> + <<= SlaveArt($activeSlave, 2, 0)>> + </div> + <div class="imageRef medImg"> + <<= SlaveArt(_milfSlave, 2, 0)>> + </div> </div> - <div class="imageRef medImg"> - <<SlaveArt _milfSlave 2 0>> - </div> - </div> - <</if>> - /* 000-250-006 */ - <</replace>> - <<replace "#result">> - When your new slave comes to, _his2 weight is hanging from _his2 wrists, bound over _his2 head. _He2's not exactly thin, making the position uncomfortable for _his2 arms, so _he2 groggily stands, finding _himself2 in a pool of light in the middle of a cell. _He2's nursing a tremendous hangover, and though _he2 does not realize it, _he2's drugged. You're present, though not visible, witnessing _his2 first conscious moment of slavery from your desk. Realization is slow. _He2's no innocent, so _he2 recognizes the sensations of waking up the morning after a night of drinking interspersed with vigorous vaginal, oral, and anal intercourse, but _he2 does not remember the specifics. After a few minutes, _he2 understands that no one is coming, and speaks up hesitantly: "Is anyone there?" Getting no immediate answer, _he2 slumps against _his2 wrist restraints again, and begins to cry to _himself2. "W-why would a-anyone do this." - <br> - <<run cashX(-20000, "event", $activeSlave)>> - <<include "New Slave Intro">> - <<set $activeSlave.recruiter = 0>> - <</replace>> -<</link>> //This will require an unprofitable <<print cashFormat(20000)>>, since _he2 is wealthy and obfuscating _his2 fate will require considerable spending// -<<else>>//You cannot afford the <<print cashFormat(20000)>> enslaving _him2 would require, since _he2 is wealthy and obfuscating _his2 fate would necessitate considerable spending// + <</if>> + /* 000-250-006 */ + <</replace>> + <<replace "#result">> + <<run Enunciate($activeSlave)>> + When your new slave comes to, _his2 weight is hanging from _his2 wrists, bound over _his2 head. _He2's not exactly thin, making the position uncomfortable for _his2 arms, so _he2 groggily stands, finding _himself2 in a pool of light in the middle of a cell. _He2's nursing a tremendous hangover, and though _he2 does not realize it, _he2's drugged. You're present, though not visible, witnessing _his2 first conscious moment of slavery from your desk. Realization is slow. _He2's no innocent, so _he2 recognizes the sensations of waking up the morning after a night of drinking interspersed with vigorous vaginal, oral, and anal intercourse, but _he2 does not remember the specifics. After a few minutes, _he2 understands that no one is coming, and speaks up hesitantly: "I<<s>> anyone there?" Getting no immediate answer, _he2 slumps against _his2 wrist restraints again, and begins to cry to _himself2. "W-why would a-anyone do thi<<s>>." + <br> + <<run cashX(-20000, "event", $activeSlave)>> + <<include "New Slave Intro">> + <<set $activeSlave.recruiter = 0>> + <</replace>> + <</link>> //This will require an unprofitable <<print cashFormat(20000)>>, since _he2 is wealthy and obfuscating _his2 fate will require considerable spending// +<<else>> + //You cannot afford the <<print cashFormat(20000)>> enslaving _him2 would require, since _he2 is wealthy and obfuscating _his2 fate would necessitate considerable spending// <</if>> </span> diff --git a/src/uncategorized/reNickname.tw b/src/uncategorized/reNickname.tw index c86b9fa383406e286324f6fa6f1086c8f51d8243..3292471ac3d1ca68e00b73434b4667ea374a57d4 100644 --- a/src/uncategorized/reNickname.tw +++ b/src/uncategorized/reNickname.tw @@ -942,8 +942,8 @@ <<case "DJ">> <<set $nickname = either("'Arcology Idol'", "'Bass Drop'", "'Bass Slut'", "'Bass'", "'Bassgirl'", "'Beatmatcher'", "'Booth'", "'Celebutante'", "'Club Idol'", "'Club Princess'", "'Club Queen'", "'Deejay'", "'Disc Jockey'", "'Discaire'", "'DJ Whore'", "'DJ'", "'EP'", "'LP'", "'Mixer'", "'Music Master'", "'Radio'", "'Record Player'", "'Subwoofers'", "'SuperBass'", "'Turntables'")>> <<set $situationDesc = "has a leadership role that requires decisiveness and discretion, but has to maintain a role of flirtatiousness and fun, at the same time. Other slaves marvel at how $he must give another slut orders one moment, and girlishly giggle at a prominent citizen the next.">> - <<set $applyDesc = "enjoys being one of the most idolized girls in the arcology, and is happy to learn that the role is part of $his name now.">> - <<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being one of the most idolized girls in the arcology and now wonders whether $he'll be allowed to keep doing so.">> + <<set $applyDesc = "enjoys being one of the most idolized <<= $girl>>s in the arcology, and is happy to learn that the role is part of $his name now.">> + <<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being one of the most idolized <<= $girl>>s in the arcology and now wonders whether $he'll be allowed to keep doing so.">> <<case "Recruiter">> <<set $nickname = either("'Abductor'", "'Agent'", "'Cam Queen'", "'Cam'", "'Camgirl'", "'Collector'", "'Employer'", "'Fraudster'", "'Headhunter'", "'Honeypot'", "'Honeytrap'", "'Interviewer'", "'Job Fair'", "'Kidnapper'", "'Recruiter'", "'Recruitment Tool'", "'Scout'", "'Slavecatcher'", "'Slaver'", "'Snake'", "'Spider'", "'Trapper'", "'Trickster'")>> @@ -959,7 +959,7 @@ <<case "Milkmaid">> <<set $nickname = either("'Cattle Driver'", "'Cowgirl'", "'Cowhand'", "'Cowpoke'", "'Cream Queen'", "'Dairy Queen'", "'Dairy'", "'Farm'", "'Milker'", "'Milking Machine'", "'Milkmaid'", "'Milktugger'", "'Milkwoman'", "'Rancher'", "'Squeezer'", "'Strong Hands'", "'Teat Puller'", "'Udder Lover'")>> - <<set $situationDesc = "has a physically demanding and emotionally rewarding role. It's hard work, hauling milk and shifting cows all day, but $his girls love $him. It's hard not to love someone when you depend on them so totally.">> + <<set $situationDesc = "has a physically demanding and emotionally rewarding role. It's hard work, hauling milk and shifting cows all day, but $his stock love $him. It's hard not to love someone when you depend on them so totally.">> <<set $applyDesc = "enjoys being a milkmaid, despite the tough work, and is happy to learn that the role is part of $his name now.">> <<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being a milkmaid, despite the tough work, and now wonders whether $he'll be allowed to keep doing so.">> @@ -1243,9 +1243,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/reNoEvent.tw b/src/uncategorized/reNoEvent.tw index 11c5d36ffa0dc1981e3c01bca27d80fa26258a60..08f3254c33a5502bbf58239fba0d852cef88fcc6 100644 --- a/src/uncategorized/reNoEvent.tw +++ b/src/uncategorized/reNoEvent.tw @@ -11,9 +11,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/rePokerNight.tw b/src/uncategorized/rePokerNight.tw index f572eb4f426189388e511e5cd10efb8b7abef6b9..a9eeda33d63eddf2ddc5543d4f1266aae3715b8e 100644 --- a/src/uncategorized/rePokerNight.tw +++ b/src/uncategorized/rePokerNight.tw @@ -96,9 +96,9 @@ On a particularly lackadaisical evening, you find yourself alerted to a message /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -119,9 +119,9 @@ On a particularly lackadaisical evening, you find yourself alerted to a message /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/reRebels.tw b/src/uncategorized/reRebels.tw index 915143a86e4cfcb905d2f8828be3d454f4370275..893de4b63eedc52d07b4d47e611240548d896587 100644 --- a/src/uncategorized/reRebels.tw +++ b/src/uncategorized/reRebels.tw @@ -15,10 +15,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $slaves[_i] 2 0>> + <<= SlaveArt($slaves[_i], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[_j] 2 0>> + <<= SlaveArt($slaves[_j], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reRelationshipAdvice.tw b/src/uncategorized/reRelationshipAdvice.tw index a3505eb4995057532dc17893b3572173ad38b8b6..cdf6aaddc7798438e76596ffec94646fa6710588 100644 --- a/src/uncategorized/reRelationshipAdvice.tw +++ b/src/uncategorized/reRelationshipAdvice.tw @@ -14,10 +14,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $subSlave 2 0>> + <<= SlaveArt($subSlave, 2, 0)>> </div> </div> <</if>> @@ -34,7 +34,7 @@ $He hesitates, so you prompt $him, asking if $he's having trouble with $his <<elseif $activeSlave.relationship == 4>> lover. <</if>> -$He quickly shakes $his head no. "N-no, <<Master>>, it's ju<<s>>t —" $He subsides into silence again, blushing and staring at $his feet. Comprehension dawning, you ask $him if +$He quickly shakes $his head no. "N-no, <<Master>>, it's ju<<s>>t —" $He subsides into silence again, blushing and <<if canSee($activeSlave)>>staring at $his feet<<else>>looking downwards<</if>>. Comprehension dawning, you ask $him if <<if $activeSlave.relationship == 2>> $he wants to be more than friends with $subSlave.slaveName. <<elseif $activeSlave.relationship == 3>> @@ -42,7 +42,7 @@ $He quickly shakes $his head no. "N-no, <<Master>>, it's ju<<s>>t —" $He subsi <<elseif $activeSlave.relationship == 4>> $he wants to make an honest _woman2 out of $subSlave.slaveName. <</if>> -$He nods $his head quickly, still staring at $his feet. $He shuts $his eyes tight and waits for you to weigh in on the situation. +$He nods $his head quickly, still <<if canSee($activeSlave)>>staring at $his feet<<else>>looking downwards<</if>>. $He shuts $his eyes tight and waits for you to weigh in on the situation. <span id="result"> <br><<link "Break them up">> diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw index 9d37f1c215d2adea9db7b55e63a457f6f047322a..ed084cb20601318e59412c25db51b36c0ff32bbc 100644 --- a/src/uncategorized/reRelativeRecruiter.tw +++ b/src/uncategorized/reRelativeRecruiter.tw @@ -13,9 +13,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $eventSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($eventSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $eventSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($eventSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -837,10 +837,10 @@ You look up the _relationType. _He2 costs <<print cashFormat($slaveCost)>>, a ba <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $eventSlave 2 0>> + <<= SlaveArt($eventSlave, 2, 0)>> </div> </div> <</if>> @@ -869,9 +869,9 @@ You look up the _relationType. _He2 costs <<print cashFormat($slaveCost)>>, a ba /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $eventSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($eventSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $eventSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($eventSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/reShelterInspection.tw b/src/uncategorized/reShelterInspection.tw index fd7c3c9a16e7d3e8d84ed9f22f06651a2de5c980..56255242dfcf324aa39a0479ec1443bb86001542 100644 --- a/src/uncategorized/reShelterInspection.tw +++ b/src/uncategorized/reShelterInspection.tw @@ -52,21 +52,22 @@ <</if>> */ -<<run Enunciate(_Inspectee)>> <<setLocalPronouns _Inspectee>> <<setLocalPronouns $activeSlave 2>> <<setAssistantPronouns>> <<setPlayerPronouns>> +<<run Enunciate($activeSlave)>> +<<setSpokenLocalPronouns _Inspectee $activeSlave>> <span id="artFrame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _Inspectee 2 0>> + <<= SlaveArt(_Inspectee, 2, 0)>> </div> </div> <</if>> @@ -112,7 +113,7 @@ Your assistant announces a visitor in the entryway of your penthouse, and adds<< _HisA avatar turns a reproving blue and shrinks a little. <</switch>> <</if>> -Not waiting to be greeted, the inspector looks up at the nearest camera and demands to be let in. _He2's an older _woman2 with graying hair up in a bun, holding a tablet against _his2 chest like a shield. "I'm here to inspect _originSlave.slaveName,<<if _originSlave.slaveName != _Inspectee.slaveName>> or as you call $him, _Inspectee.slaveName,<</if>>" _he2 bellows up at the camera. +Not waiting to be greeted, the inspector looks up at the nearest camera and demands to be let in. _He2's an older _woman2 with graying hair up in a bun, holding a tablet against _his2 chest like a shield. "I'm here to in<<s>>pect _originSlave.slaveName,<<if _originSlave.slaveName != _Inspectee.slaveName>> or a<<s>> you call $him, _Inspectee.slaveName,<</if>>" _he2 bellows up at the camera. <br><br> @@ -120,7 +121,7 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema <<link "Amusing. Enslave _him2">> <<run cashX(forceNeg($contractCost), "slaveTransfer", $activeSlave)>> <<replace "#result">> - $assistantName ushers _him2 into your penthouse and keeps _him2 busy for the few minutes you need to circumvent the Shelter's various legal and contractual defenses to prevent slaveowners from doing exactly what you're doing. Fortunately, you're cleverer and richer than most, and you succeed. You have _him2 brought into your office, and you are pleased to see _him2. _He2's not young and _he2's not pretty, but _his2 suit cannot disguise _his2 big bottom, and _he2's using the tablet _he2 has clasped protectively against _his2 chest to conceal a huge pair of mature breasts. _He2 knows exactly what's happened, and fixes you with a gimlet stare. "In a couple of months," _he2 says with venom, "when you've filled me full of hormones and drugs and training, and I'm begging you to <<if $PC.dick == 1>>stick your tiny little dick up<<else>>fist<</if>> my asshole, remember this. It'll be conditioning and self-preservation and Stockholm Syndrome talking, not me. I think you're a <<if $PC.title == 1>>sad bastard<<else>>vile cunt<</if>>, and I always will." + $assistantName ushers _him2 into your penthouse and keeps _him2 busy for the few minutes you need to circumvent the Shelter's various legal and contractual defenses to prevent slaveowners from doing exactly what you're doing. Fortunately, you're cleverer and richer than most, and you succeed. You have _him2 brought into your office, and you are pleased to see _him2. _He2's not young and _he2's not pretty, but _his2 suit cannot disguise _his2 big bottom, and _he2's using the tablet _he2 has clasped protectively against _his2 chest to conceal a huge pair of mature breasts. _He2 knows exactly what's happened, and fixes you with a gimlet stare. "In a couple of month<<s>>," _he2 says with venom, "when you've filled me full of hormone<<s>> and drug<<s>> and training, and I'm begging you to <<if $PC.dick == 1>><<s>>tick your tiny little dick up<<else>>fi<<s>>t<</if>> my a<<ss>>hole, remember thi<<s>>. It'll be conditioning and <<s>>elf-pre<<s>>ervation and <<S>>tockholm <<S>>yndrome talking, not me. I think you're a <<if $PC.title == 1>><<s>>ad ba<<s>>tard<<else>>vile cunt<</if>>, and I alway<<s>> will." <<set $shelterAbuse += 10>> <<set $nextButton = "Continue">><<UpdateNextButton>> /* unlock Continue button */ <<include "New Slave Intro">> @@ -201,17 +202,17 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema <<set $shelterAbuse += 10>> <<elseif _Inspectee.fetish == "mindbroken">> <<if _Inspectee.origin == "You got $him at the Slave Shelter. $He has never communicated anything about $his background, since $he arrived at the shelter with a broken mind.">> - Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know $he was like this when you got $him. Just — just keep trying, would you?" _He2 leaves, looking bitter. + Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know <<he>> wa<<s>> like thi<<s>> when you got $him. Ju<<s>>t — ju<<s>>t keep trying, would you?" _He2 leaves, looking bitter. <<elseif _Inspectee.origin == "You got $him at the Slave Shelter. $He was found unresponsive in the lower arcology with a gaping pussy and deflated belly. It is unclear what happened to $him.">> - Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know $he was like this when you got $him. Just — just keep trying, would you?" + Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know <<he>> wa<<s>> like thi<<s>> when you got $him. Ju<<s>>t — ju<<s>>t keep trying, would you?" <<if _Inspectee.pussy > 3 && _Inspectee.bellySag > 1>> - _He2 gropes the slave's sagging middle before inspecting $his ruined pussy. "Still ruined I see." + _He2 gropes the slave's sagging middle before inspecting $his ruined pussy. "<<S>>till ruined, I <<s>>ee." <<elseif _Inspectee.pussy <= 3 && _Inspectee.bellySag > 1>> - _He2 gropes the slave's sagging middle before inspecting $his pussy. "Apart from the belly, $his pussy has recovered nicely." + _He2 gropes the slave's sagging middle before inspecting $his pussy. "Apart from the belly, <<his>> pu<<ss>>y ha<<s>> recovered ni<<c>>ely." <<elseif _Inspectee.pussy > 3 && _Inspectee.bellySag <= 1>> - _He2 gropes the slave's middle before inspecting $his ruined pussy. "$His stomach seems to have recovered, shame you did nothing for $his poor vagina." + _He2 gropes the slave's middle before inspecting $his ruined pussy. "<<His>> <<s>>tomach <<s>>eem<<s>> to have recovered; <<sh>>ame you did nothing for <<his>> poor vagina." <<else>> - _He2 runs _his2 hand across the slave's restored midriff, before inspecting $his pussy. "$He is looking much better, physically, though. That's worth noting." + _He2 runs _his2 hand across the slave's restored midriff, before inspecting $his pussy. "<<He>> i<<s>> looking much better, phy<<s>>ically, though. That'<<s>> worth noting." <<set $shelterAbuse-->> <</if>> _He2 leaves, looking bitter. @@ -225,50 +226,52 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema <<if _inspectionContinues == 1>> <<switch _Inspectee.origin>> <<case "You got $him at the Slave Shelter. $He has never communicated anything about $his background, since $he arrived at the shelter with a broken mind.">> - The inspector asks some cursory questions and is shocked when $he responds. "$He came back?" _he2 mutters, "You restored $his mind, I can't believe it. This is incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt slaves from our shelter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse. + The inspector asks some cursory questions and is shocked when $he responds. "<<He>> came back?" _he2 mutters, "You re<<s>>tored <<his>> mind; I can't believe it. Thi<<s>> i<<s>> incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt <<s>>lave<<s>> from our <<sh>>elter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse. <<set _inspectionContinues = 0>> <<set $shelterAbuse -= 5>> <<case "You got $him at the Slave Shelter. It's not clear why $his previous owner cut $his arms and legs off.">> <<if _Inspectee.amp == _originSlave.amp>> Unsurprisingly, the poor $girl still lacks arms and legs, so the inspector just carries on. <<else>> - The inspector stares, dumbfounded, at pair of limbs now supporting _Inspectee.slaveName. "Most owners wouldn't go through the trouble... I think I've seen enough to know you're welcome to come back and take in another girl any time." _He2 leaves your penthouse in much better spirits than _he2 arrived in. + The inspector stares, dumbfounded, at pair of limbs now supporting _Inspectee.slaveName. "Mo<<s>>t owner<<s>> wouldn't go through the trouble... I think I've <<s>>een enough to know you're welcome to come back and take in another <<s>>lave any time." _He2 leaves your penthouse in much better spirits than _he2 arrived in. <<set _inspectionContinues = 0>> <<set $shelterAbuse -= 3>> <</if>> <<case "You got $him at the Slave Shelter. $His owner purposely blinded $him by dumping boiling water into $his eyes.">> - "I wish the scarring wasn't so bad, that way people wouldn't stare so much." + "I wi<<sh>> the <<s>>carring wa<<s>>n't so bad, that way people wouldn't <<s>>tare so much." <<if _Inspectee.eyes > _originSlave.eyes>> <<if canTalk(_Inspectee)>> + <<run Enunciate(_Inspectee)>> _Inspectee.slaveName quickly retorts with "But I like <<s>>eeing their eye<<s>>..." <<else>> _Inspectee.slaveName shakes $his head in response. <</if>> - The inspector gasps at the realization that $he can see again. "They look just like $his old photos too..." A tear comes to _his2 weary eye as _he2 writes out notes on _his2 tablet. "You're more than welcome to adopt slaves from our shelter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse. + <<run Enunciate($activeSlave)>> + The inspector gasps at the realization that $he can see again. "They look ju<<s>>t like <<his>> old photo<<s>> too..." A tear comes to _his2 weary eye as _he2 writes out notes on _his2 tablet. "You're more than welcome to adopt <<s>>lave<<s>> from our <<sh>>elter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse. <<set _inspectionContinues = 0>> <<set $shelterAbuse-->> <</if>> <<case "You got $him at the Slave Shelter. $He was found unresponsive in the lower arcology with a gaping pussy and deflated belly. It is unclear what happened to $him.">> - The inspector asks some cursory questions and is shocked when $he responds. "$He came back?" _he2 mutters, "You restored $his mind, I can't believe it. This is incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt slaves from our shelter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse, even though _he2 forgot to check $his pussy. + The inspector asks some cursory questions and is shocked when $he responds. "<<He>> came back?" _he2 mutters, "You re<<s>>tored <<his>> mind; I can't believe it. Thi<<s>> i<<s>> incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt <<s>>lave<<s>> from our <<sh>>elter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse, even though _he2 forgot to check $his pussy. <<set _inspectionContinues = 0>> <<set $shelterAbuse -= 5>> <<case "You got $him at the Slave Shelter. $His previous owner forced $him to cut off $his dick and balls and cook them.">> <<if _Inspectee.dick > _originSlave.dick>> - "I see that you've given $him a replacement tool," _he2 says as _he2 reaches down and gives it an exploratory fondle, + "I <<s>>ee that you've given $him a repla<<c>>ement tool," _he2 says as _he2 reaches down and gives it an exploratory fondle, <<if canAchieveErection(_Inspectee)>> - "It even works, that's lovely." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. + "It even work<<s>>, that'<<s>> lovely." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. <<else>> - "It seems to be non-functional, but it's a nice gesture at least." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. + "It <<s>>eem<<s>> to be non-functional, but it'<<s>> a ni<<c>>e gesture at lea<<s>>t." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. <</if>> <<set _inspectionResult-->> <</if>> <<if _Inspectee.balls > _originSlave.balls && _Inspectee.scrotum>> <<if _Inspectee.dick > _originSlave.dick>> - "And these work too, right?" _he2 asks as _he2 points to $his dangling balls. "So $he has been fully restored; that's something." The inspector adds another positive note to the inspection. + "And the<<s>>e work too, right?" _he2 asks as _he2 points to $his dangling balls. "<<S>>o <<he>> ha<<s>> been fully re<<s>>tored; that'<<s>> <<s>>omething." The inspector adds another positive note to the inspection. <<set _inspectionResult-->> <<else>> - "I take it these testicles are more than just an implant? I'm sure $he appreciates the gesture, though what good are they without a penis?" The inspector shakes _his2 head and notes your attempt to undo the damages to _Inspectee.slaveName. + "I take it the<<s>>e testicle<<s>> are more than ju<<s>>t an implant? I'm <<s>>ure <<he>> appre<<c>>iate<<s>> the ge<<s>>ture, though what good are they without a peni<<s>>?" The inspector shakes _his2 head and notes your attempt to undo the damages to _Inspectee.slaveName. <</if>> <</if>> @@ -362,27 +365,27 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema <<if _Inspectee.origin == "You got $him at the Slave Shelter. $He has never communicated anything about $his background, since $he arrived at the shelter with a broken mind.">> <<if _Inspectee.fetish == "mindbroken">> - Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know $he was like this when you got $him. Just — just keep trying, would you?" _He2 leaves, looking bitter. + Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know <<he>> wa<<s>> like thi<<s>> when you got $him. Ju<<s>>t — ju<<s>>t keep trying, would you?" _He2 leaves, looking bitter. <<else>> - The inspector asks some cursory questions and is shocked when $he responds. "$He came back?" _he2 mutters, "You restored $his mind, I can't believe it. This is incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt slaves from our shelter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse. + The inspector asks some cursory questions and is shocked when $he responds. "<<He>> came back?" _he2 mutters, "You re<<s>>tored <<his>> mind; I can't believe it. Thi<<s>> i<<s>> incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt <<s>>lave<<s>> from our <<sh>>elter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse. <<set $shelterAbuse -= 5>> <</if>> <<elseif _Inspectee.origin == "You got $him at the Slave Shelter. $He was found unresponsive in the lower arcology with a gaping pussy and deflated belly. It is unclear what happened to $him.">> <<if _Inspectee.fetish == "mindbroken">> - Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know $he was like this when you got $him. Just — just keep trying, would you?" + Of course, the poor $girl is just as mindbroken as ever. The inspector asks some cursory questions and gives up. "Don't worry," _he2 says. "I know <<he>> wa<<s>> like thi<<s>> when you got $him. Ju<<s>>t — ju<<s>>t keep trying, would you?" <<if _Inspectee.pussy > 3 && _Inspectee.bellySag > 1>> - _He2 gropes the slave's sagging middle before inspecting $his ruined pussy. "Still ruined I see." + _He2 gropes the slave's sagging middle before inspecting $his ruined pussy. "<<S>>till ruined, I <<s>>ee." <<elseif _Inspectee.pussy <= 3 && _Inspectee.bellySag > 1>> - _He2 gropes the slave's sagging middle before inspecting $his pussy. "Apart from the belly, $his pussy has recovered nicely." + _He2 gropes the slave's sagging middle before inspecting $his pussy. "Apart from the belly, <<his>> pu<<ss>>y ha<<s>> recovered ni<<c>>ely." <<elseif _Inspectee.pussy > 3 && _Inspectee.bellySag <= 1>> - _He2 gropes the slave's middle before inspecting $his ruined pussy. "$His stomach seems to have recovered, shame you did nothing for $his poor vagina." + _He2 gropes the slave's middle before inspecting $his ruined pussy. "<<His>> <<s>>tomach <<s>>eem<<s>> to have recovered; <<sh>>ame you did nothing for <<his>> poor vagina." <<else>> - _He2 runs _his2 hand across the slave's restored midriff, before inspecting $his pussy. "$He is looking much better, physically, though. That's worth noting." + _He2 runs _his2 hand across the slave's restored midriff, before inspecting $his pussy. "<<He>> i<<s>> looking much better, phy<<s>>ically, though. That'<<s>> worth noting." <<set $shelterAbuse-->> <</if>> _He2 leaves, looking bitter. <<else>> - The inspector asks some cursory questions and is shocked when $he responds. "$He came back?" _he2 mutters, "You restored $his mind, I can't believe it. This is incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt slaves from our shelter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse, even though _he2 forgot to check $his pussy. + The inspector asks some cursory questions and is shocked when $he responds. "<<He>> came back?" _he2 mutters, "You re<<s>>tored <<his>> mind; I can't believe it. Thi<<s>> i<<s>> incredible." _He2 carries on while writing notes on _his2 tablet, "You're more than welcome to adopt <<s>>lave<<s>> from our <<sh>>elter." You swear _he2 seems in much better spirits as _he2 leaves your penthouse, even though _he2 forgot to check $his pussy. <<set $shelterAbuse -= 5>> <</if>> <<elseif _Inspectee.fetish == "mindbroken">> @@ -393,11 +396,16 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema <<elseif _Inspectee.devotion <= 20>> $He does not like you and isn't particularly terrified of you, so $he is not flattering. $He's not stupid enough to really criticize you, but $he is honest and makes no effort to conceal troubling particulars. The inspector takes copious notes. _He2 offers you a few choice words, makes notes on _his2 tablet, and storms out. <<elseif _Inspectee.anus > 2>> - $He cooperates with the inspector, who pulls on a pair of latex gloves and performs a complete examination. When _he2 pulls the $girl's buttocks apart and probes the slave's asshole, _he2 pulls _his2 hand away as if scalded. "Oh my God," _he2 says. "_Inspectee.birthName, what happened to your anus?" + $He cooperates with the inspector, who pulls on a pair of latex gloves and performs a complete examination. When _he2 pulls the $girl's buttocks apart and probes the slave's asshole, _he2 pulls _his2 hand away as if scalded. "Oh my God," _he2 says. "_Inspectee.birthName, what happened to your anu<<s>>?" <br><br> + <<run Enunciate(_Inspectee)>> <<if (_Inspectee.devotion < 10)>> <<if (_Inspectee.buttplug == "large plug") || (_Inspectee.buttplug == "huge plug") || (_Inspectee.buttplug == "long, large plug") || (_Inspectee.buttplug == "long, huge plug")>> - "W-well," $he says, "I wear a buttplug." The inspector frowns. "A buttplug shouldn't do that!" The slave looks worried and replies, "It'<<s>> kinda big? And I wear it all the time. B-but I like it! It d-doe<<s>>n't hurt. Well, anymore." The inspector is not amused. _He2 offers you a few choice words, makes notes on _his2 tablet, and storms out. + "W-well," $he says, "I wear a buttplug." The inspector frowns. + <<run Enunciate($activeSlave)>> + "A buttplug <<sh>>ouldn't do that!" + <<run Enunciate(_Inspectee)>> + The slave looks worried and replies, "It'<<s>> kinda big? And I wear it all the time. B-but I like it! It d-doe<<s>>n't hurt. Well, anymore." The inspector is not amused. _He2 offers you a few choice words, makes notes on _his2 tablet, and storms out. <<elseif (_Inspectee.assignment == "whore") || (_Inspectee.assignment == "work in the brothel") || (_Inspectee.assignment == "serve the public") || (_Inspectee.assignment == "serve in the club")>> "W-well," $he says, "I get fucked there at work." The inspector frowns. "How often!?" The slave looks worried and replies, "L-let me think. Four time<<s>> today? After the third time, it u<<s>>ually <<s>>top<<s>> clo<<s>>ing up again between cock<<s>>." The inspector is not amused. _He2 offers you a few choice words, makes notes on _his2 tablet, and storms out. <<elseif (_Inspectee.fetish == "buttslut") && (_Inspectee.fetishKnown == 1)>> @@ -407,11 +415,19 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema "Hey," $he protests, "that'<<s>> normal." The inspector looks incredulous. "What!?" The slave looks insulted and replies, "I love <<s>>e<<x>>! Don't judge me. I take cock in all my hole<<s>>, and I like it. I'm going to beg for butt<<s>>e<<x>> the moment you leave, you bitch." $He defiantly sticks $his rump out at you. The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. <<set $shelterAbuse -= 1>> <<else>> - "W-well," $he says, "I'm a <<s>>lave." The inspector frowns. "What does that have to do with it?" The slave looks worried and replies, "I-it'<<s>> a hole, right? I get fucked in all my hole<<s>>." The inspector is not amused. _He2 offers you a few choice words, makes notes on _his2 tablet, and storms out. + "W-well," $he says, "I'm a <<s>>lave." The inspector frowns. + <<run Enunciate($activeSlave)>> + "What doe<<s>> that have to do with it?" + <<run Enunciate(_Inspectee)>> + The slave looks worried and replies, "I-it'<<s>> a hole, right? I get fucked in all my hole<<s>>." The inspector is not amused. _He2 offers you a few choice words, makes notes on _his2 tablet, and storms out. <</if>> <<else>> <<if (_Inspectee.buttplug == "large plug") || (_Inspectee.buttplug == "huge plug") || (_Inspectee.buttplug == "long, large plug") || (_Inspectee.buttplug == "long, huge plug")>> - "I wear a buttplug!" $he says confidently. The inspector frowns. "A buttplug shouldn't do that!" The slave looks worried and replies, "It'<<s>> really big, and I wear it all the time. I like it! It keep<<s>> my hole ready for anything." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. + "I wear a buttplug!" $he says confidently. The inspector frowns. + <<run Enunciate($activeSlave)>> + "A buttplug <<sh>>ouldn't do that!" + <<run Enunciate(_Inspectee)>> + The slave looks worried and replies, "It'<<s>> really big, and I wear it all the time. I like it! It keep<<s>> my hole ready for anything." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. <<set $shelterAbuse -= 1>> <<elseif (_Inspectee.assignment == "whore") || (_Inspectee.assignment == "work in the brothel") || (_Inspectee.assignment == "serve the public") || (_Inspectee.assignment == "serve in the club")>> "I get fucked there at work!" $he says confidently. The inspector frowns. "How often!?" The slave thinks for a moment and replies, "Four time<<s>> today. After the third time, it u<<s>>ually <<s>>top<<s>> clo<<s>>ing up again between cock<<s>>. I'm good at my job!" The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. @@ -423,7 +439,11 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema "Hey," $he protests, "that'<<s>> normal." The inspector looks incredulous. "What!?" The slave looks insulted and replies, "I love <<s>>e<<x>>! Don't judge me. I take cock in all my hole<<s>>, and I like it. I'm going to beg for butt<<s>>e<<x>> the moment you leave, you bitch." $He defiantly sticks $his rump out at you. The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. <<set $shelterAbuse -= 1>> <<else>> - "I'm a <<s>>lave," $he says confidently. The inspector frowns. "What does that have to do with it?" The slave beams and replies, "It'<<s>> a hole. I'm a good $girl, <<s>>o I get fucked in all my hole<<s>>." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. + "I'm a <<s>>lave," $he says confidently. The inspector frowns. + <<run Enunciate($activeSlave)>> + "What doe<<s>> that have to do with it?" + <<run Enunciate(_Inspectee)>> + The slave beams and replies, "It'<<s>> a hole. I'm a good $girl, <<s>>o I get fucked in all my hole<<s>>." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet. <<set $shelterAbuse -= 1>> <</if>> <</if>> diff --git a/src/uncategorized/reShowerPunishment.tw b/src/uncategorized/reShowerPunishment.tw index 925909016882acecef14f2d03b08c745286f2a94..3387ddb1067f2b543f34ff2c872a14914a4f8aba 100644 --- a/src/uncategorized/reShowerPunishment.tw +++ b/src/uncategorized/reShowerPunishment.tw @@ -15,10 +15,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $HeadGirl 2 0>> + <<= SlaveArt($HeadGirl, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reSiblingRevenge.tw b/src/uncategorized/reSiblingRevenge.tw index 61c5d4ea6b1377104ed18e23f6fb16a5f1315530..bb1c2eab6a65833d1f28ebd3c192059391a662fd 100644 --- a/src/uncategorized/reSiblingRevenge.tw +++ b/src/uncategorized/reSiblingRevenge.tw @@ -14,10 +14,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $slaves[$i] 2 0>> + <<= SlaveArt($slaves[$i], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[$j] 2 0>> + <<= SlaveArt($slaves[$j], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/reSlaveMarriage.tw b/src/uncategorized/reSlaveMarriage.tw index a2c1b694784418799c66b096407a84641286fc17..7e3da7b5fdd43487457ef9124a64ea7bdf8d3355 100644 --- a/src/uncategorized/reSlaveMarriage.tw +++ b/src/uncategorized/reSlaveMarriage.tw @@ -19,10 +19,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $groomSlave 2 0>> + <<= SlaveArt($groomSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $brideSlave 2 0>> + <<= SlaveArt($brideSlave, 2, 0)>> </div> </div> <</if>> @@ -91,7 +91,7 @@ <<elseif ($brideSlave.vagina < 0)>> $brideSlave.slaveName is a sissy slave, so _he2's wearing light blue <<else>> - $brideSlave.slaveName is an experienced sex slave, so _he2's wearing light pink + $brideSlave.slaveName is an experienced sex slave, so _he2's wearing light pink <</if>> against _his2 $brideSlave.skin skin. <<if ($brideSlave.chastityPenis)>> @@ -127,9 +127,13 @@ prominently bulges from the gap between _his2 lingerie. <</if>> - <br><br>The procedure is simple. The two of them prostrate themselves on the ground and beg your indulgence. You state that you grant it, and hand each of them a simple gold band to be worn on the little finger in advertisement of the inferiority of their union. In turn, each of them gives the other their ring, and they kiss. You pronounce them slave spouses, and offer them the couch for their honeymoon; they @@.mediumaquamarine;thank you profusely@@ through their building tears. It's always touching to see <<if $groomSlave.bellyPreg >= 5000 && $brideSlave.bellyPreg >= 5000>>two pregnant slaves fingering each other<<else>>a 69<</if>> in which both participants are @@.hotpink;softly crying with happiness.@@ <<if $groomSlave.pregSource == $brideSlave.ID && $brideSlave.pregSource == $groomSlave.ID>>When $groomSlave.slaveName and $brideSlave.slaveName tire, they rest, shoulder to shoulder, with a hand upon each other's bulging belly. Gently, they caress their growing pregnancies, knowing that they carry the other's love child. + <br><br>The procedure is simple. The two of them prostrate themselves on the ground and beg your indulgence. You state that you grant it, and hand each of them a simple gold band to be worn on the little finger in advertisement of the inferiority of their union. In turn, each of them gives the other their ring, and they kiss. You pronounce them slave spouses, and offer them the couch for their honeymoon; they @@.mediumaquamarine;thank you profusely@@ through their building tears. It's always touching to see <<if $groomSlave.bellyPreg >= 5000 && $brideSlave.bellyPreg >= 5000>>two pregnant slaves fingering each other<<else>>a 69<</if>> in which both participants are @@.hotpink;softly crying with happiness.@@ + <<if $groomSlave.pregSource == $brideSlave.ID && $brideSlave.pregSource == $groomSlave.ID>> + When $groomSlave.slaveName and $brideSlave.slaveName tire, they rest, shoulder to shoulder, with a hand upon each other's bulging belly. Gently, they caress their growing pregnancies, knowing that they carry the other's love child. <<elseif $brideSlave.pregSource == $groomSlave.ID>> - When they tire, $groomSlave.slaveName rests $his head upon $brideSlave.slaveName's lap and gently kisses $his lover's belly, knowing the child of their love is growing within.<<elseif $groomSlave.pregSource == $brideSlave.ID>>When they tire, $brideSlave.slaveName rests _his2 head upon $groomSlave.slaveName's lap and gently kisses _his2 lover's belly, knowing the child of their love is growing within. + When they tire, $groomSlave.slaveName rests $his head upon $brideSlave.slaveName's lap and gently kisses $his lover's belly, knowing the child of their love is growing within. + <<elseif $groomSlave.pregSource == $brideSlave.ID>> + When they tire, $brideSlave.slaveName rests _his2 head upon $groomSlave.slaveName's lap and gently kisses _his2 lover's belly, knowing the child of their love is growing within. <</if>> <<set $groomSlave.devotion += 4>> <<set $brideSlave.devotion += 4>> diff --git a/src/uncategorized/reStaffedMorning.tw b/src/uncategorized/reStaffedMorning.tw index 547aa23d2bf0b5fa74bdc1a405160eef5b59c170..70cb7e384cd5731991a33ec80bfd3e5776ff8f75 100644 --- a/src/uncategorized/reStaffedMorning.tw +++ b/src/uncategorized/reStaffedMorning.tw @@ -19,10 +19,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _bedSlaves[0] 2 0>> + <<= SlaveArt(_bedSlaves[0], 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _bedSlaves[1] 2 0>> + <<= SlaveArt(_bedSlaves[1], 2, 0)>> </div> </div> <</if>> @@ -48,7 +48,7 @@ The bathroom door is open and the shower is running. Though the steam is beginni <<link "Leave them satisfied">> <<replace "#result">> <<if $PC.dick == 1>> - You begin to thrust gently into _bedSlaves[0].slaveName's mouth. The girls moan and giggle into you at the signal that you're not going to get up right this instant, and <<if (_bedSlaves[0].dick > 0) && (_bedSlaves[1].dick > 0)>>start jerking each other off harder, making lewd noises and humping each other's hands<<else>>really start giving each other proper handjobs, jerking around lewdly as their arousal builds<</if>>.<<if $PC.vagina == 1>> They always spare at least one hand for your cunt, despite your thrusting.<</if>> When you climax, they do, too, one after the other. They quickly switch mouth positions and suck you back to full mast so you can enjoy your shower. + You begin to thrust gently into _bedSlaves[0].slaveName's mouth. <<if $girl == _girl2>>The $girl<<else>>Your bedmate<</if>>s moan and giggle into you at the signal that you're not going to get up right this instant, and <<if (_bedSlaves[0].dick > 0) && (_bedSlaves[1].dick > 0)>>start jerking each other off harder, making lewd noises and humping each other's hands<<else>>really start giving each other proper handjobs, jerking around lewdly as their arousal builds<</if>>.<<if $PC.vagina == 1>> They always spare at least one hand for your cunt, despite your thrusting.<</if>> When you climax, they do, too, one after the other. They quickly switch mouth positions and suck you back to full mast so you can enjoy your shower. <<else>> You reach down and run a possessive hand across each slave's scalp, neck, and back, eliciting shivers. Then, you gently hook them under the armpits and pull them up a bit, without breaking their lip locks with your nipples, or forcing them to stop playing with your cunt. Each slave ends curled up, mostly face-down, with their mouths still sucking on your <<if $PC.boobs == 1>>boobs<<else>>chest<</if>> and their free hands trapped between their legs. They get the message and begin to look after themselves, too; their resultant moaning against your nipples grows when you reach down and start teasing their butts. The three of you climax more or less together, and you bounce up with undiminished arousal to enjoy your shower. <</if>> diff --git a/src/uncategorized/reStandardPunishment.tw b/src/uncategorized/reStandardPunishment.tw index 5bfdedd66ea58fdbc39edb9c5416e5244e49ab5d..2fa44071562ac4b43d63ffa7c1cac5b0ef17b4e5 100644 --- a/src/uncategorized/reStandardPunishment.tw +++ b/src/uncategorized/reStandardPunishment.tw @@ -7,9 +7,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw index 1dd06ee05cd078cd0faeca8ae5bf9e82112cdf90..93adc33bb2e13d1b52244432a01f25137dbb143f 100644 --- a/src/uncategorized/remoteSurgery.tw +++ b/src/uncategorized/remoteSurgery.tw @@ -25,9 +25,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -1490,40 +1490,40 @@ Alter $his race: <<if $activeSlave.indentureRestrictions < 1>> $He is $activeSlave.race<<if $activeSlave.race != $activeSlave.origRace>>, but was originally $activeSlave.origRace<</if>>. Surgically alter $him to look more: <<if $activeSlave.race != "white">> - [[White|Surgery Degradation][$activeSlave.race = "white",$activeSlave.skin = either("fair", "light", "pale"),$activeSlave.eyeColor = either("blue", "brown", "green"),$activeSlave.hColor = either("black", "blonde", "brown", "red"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[White|Surgery Degradation][$activeSlave.race = "white", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "latina">> - [[Latina|Surgery Degradation][$activeSlave.race = "latina",$activeSlave.skin = either("brown", "dark brown", "dark olive", "light olive", "tan"),$activeSlave.hColor = either("black", "black", "brown", "brown"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Latina|Surgery Degradation][$activeSlave.race = "latina", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "black">> - [[Black|Surgery Degradation][$activeSlave.race = "black",$activeSlave.skin = either("black", "brown", "dark brown"),$activeSlave.hColor = either("black", "black", "black", "brown"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Black|Surgery Degradation][$activeSlave.race = "black", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "asian">> - [[Asian|Surgery Degradation][$activeSlave.race = "asian",$activeSlave.skin = either("dark olive", "light olive", "light"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Asian|Surgery Degradation][$activeSlave.race = "asian", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "middle eastern">> - [[Middle Eastern|Surgery Degradation][$activeSlave.race = "middle eastern",$activeSlave.skin = either("fair", "light olive", "light", "tan"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Middle Eastern|Surgery Degradation][$activeSlave.race = "middle eastern", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "indo-aryan">> - [[Indo-Aryan|Surgery Degradation][$activeSlave.race = "indo-aryan",$activeSlave.skin = either("dark", "light"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Indo-Aryan|Surgery Degradation][$activeSlave.race = "indo-aryan", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "pacific islander">> - [[Pacific Islander|Surgery Degradation][$activeSlave.race = "pacific islander",$activeSlave.skin = either("dark", "light"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Pacific Islander|Surgery Degradation][$activeSlave.race = "pacific islander", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "malay">> - [[Malay|Surgery Degradation][$activeSlave.race = "malay",$activeSlave.skin = either("dark", "light"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Malay|Surgery Degradation][$activeSlave.race = "malay", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "amerindian">> - [[Amerindian|Surgery Degradation][$activeSlave.race = "amerindian",$activeSlave.skin = either("dark", "light"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Amerindian|Surgery Degradation][$activeSlave.race = "amerindian", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "southern european">> - [[Southern European|Surgery Degradation][$activeSlave.race = "southern european",$activeSlave.skin = either("fair", "light olive", "light", "tan"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Southern European|Surgery Degradation][$activeSlave.race = "southern european", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "semitic">> - [[Semitic|Surgery Degradation][$activeSlave.race = "semitic",$activeSlave.skin = either("fair", "light olive", "light", "tan"),$activeSlave.hColor = either("black"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | + [[Semitic|Surgery Degradation][$activeSlave.race = "semitic", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] | <</if>> <<if $activeSlave.race != "mixed race">> - [[Mixed Race|Surgery Degradation][$activeSlave.race = "mixed race",$activeSlave.skin = either("dark", "light", "pale"),$activeSlave.hColor = either("black", "black", "black", "black", "blonde", "brown", "brown", "red"),cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] + [[Mixed Race|Surgery Degradation][$activeSlave.race = "mixed race", $activeSlave.skin = randomRaceSkin($activeSlave.race), $activeSlave.hColor = randomRaceHair($activeSlave.race), $activeSlave.eyeColor = randomRaceEye($activeSlave.race), cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "race"]] <</if>> <<else>> //$His indenture forbids elective surgery// diff --git a/src/uncategorized/repBudget.tw b/src/uncategorized/repBudget.tw index cfb41e6cdd3d3275b078c971780ab51008f8c24e..3de256cd7e63781a8abc9c41a418e7e56e915614 100644 --- a/src/uncategorized/repBudget.tw +++ b/src/uncategorized/repBudget.tw @@ -11,12 +11,20 @@ <<set $lastWeeksRepProfits.Total = 0>> <</if>> +<<if ndef $showAllEntries>> + <<set $showAllEntries = {costsBudget: 0, repBudget: 0}>> +<</if>> + <br> //Reputation is a difficult thing to quantify, <<= properTitle()>>. Here you see an overview of topics that interest people in the arcology, and in turn, reflect on your own reputation. The more symbols you see in a category, the more impact that category is having on your reputation lately.// <br style="clear:both"><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>> <br> //Your weekly reputation changes are as follows:// +<<options $showAllEntries.repBudget>> + <<option 0 "Normal">> + <<option 1 "Show Empty Entries">> +<</options>> /* Table of Totals */ <<if ndef $lastWeeksRepIncome>> @@ -67,27 +75,27 @@ for (var i = 0; i < State.variables.lastWeeksRepIncome.length; i++){ <h2>Structures</h2> /* TODO: using h2s doesn't fit in with the rest of the game */ </tr> - <<print budgetLine("arcade", "[[$arcadeNameCaps|Arcade][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]] ($arcadeSlaves slaves)")>> + <<print budgetLine("arcade", "<<if $arcade>>[[$arcadeNameCaps|Arcade][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]<<else>>$arcadeNameCaps<</if>> ($arcadeSlaves slaves)")>> <<print budgetLine("gloryholeArcade", "Free arcade")>> - <<print budgetLine("brothel", "[[$brothelNameCaps|Brothel][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]] ($brothelSlaves slaves)")>> + <<print budgetLine("brothel", "<<if $brothel>>[[$brothelNameCaps|Brothel][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]<<else>>$brothelNameCaps<</if>> ($brothelSlaves slaves)")>> - <<print budgetLine("club", "[[$clubNameCaps|Club][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]] ($clubSlaves slaves)")>> + <<print budgetLine("club", "<<if $club>>[[$clubNameCaps|Club][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]<<else>>$clubNameCaps<</if>> ($clubSlaves slaves)")>> <<print budgetLine("publicServantClub", "Club servants")>> - <<print budgetLine("clubAds", "[[Club ads|Club Advertisement][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]")>> + <<print budgetLine("clubAds", "<<if $club>>[[Club ads|Club Advertisement][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]<<else>>$clubNameCaps<</if>>")>> <<if $club > 0>> <br> <</if>> - <<print budgetLine("pit", "[[$pitNameCaps|Pit][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]] ($fighterIDs.length slaves)")>> + <<print budgetLine("pit", "<<if $pit>>[[$pitNameCaps|Pit][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]<<else>>$pitNameCaps<</if>> ($fighterIDs.length slaves)")>> - <<print budgetLine("servantsQuarters", "[[Servants' Quarters][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]] ($servantsQuartersSlaves slaves)")>> + <<print budgetLine("servantsQuarters", "<<if $servantsQuarters>>[[Servants' Quarters][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]<<else>>Servants' Quarters<</if>> ($servantsQuartersSlaves slaves)")>> - <<print budgetLine("spa", "[[$spaNameCaps|Spa][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]] ($spaSlaves slaves)")>> + <<print budgetLine("spa", "<<if $spa>>[[$spaNameCaps|Spa][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]<<else>>$spaNameCaps<</if>> ($spaSlaves slaves)")>> <<print budgetLine("architecture", "[[Architecture|Manage Arcology][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]")>> @@ -119,6 +127,7 @@ for (var i = 0; i < State.variables.lastWeeksRepIncome.length; i++){ </tr> <<print budgetLine("policies", "Capital expenses")>> + <<print budgetLine("edicts", "<<if $secExp>>[[Edicts|edicts]]<<else>>Edicts<</if>>")>> <<print budgetLine("capEx", "[[Policies|Policies][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]] and [[Edicts|edicts][$nextButton = \"Back to Budget\", $nextLink = \"Rep Budget\"]]")>> diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw index d207c15a33f3effd992fda9d2d999096acfdcaca..e4ecaef80f1cd881b843e4e01187c52c35b14e24 100644 --- a/src/uncategorized/reputation.tw +++ b/src/uncategorized/reputation.tw @@ -250,7 +250,7 @@ On formal occasions, you are announced as $PCTitle. <<if $weaponsLaw == 3>> The absence of any kind of restriction on weaponry within your arcology is @@.green;welcomed by your citizens@@ as sign of your respect for the ideals the Free Cities stand for. - <<run repX(20, "architecture")>> + <<run repX(20, "edicts")>> <</if>> <</if>> diff --git a/src/uncategorized/resFailure.tw b/src/uncategorized/resFailure.tw index 14cad039cc3424944adda05dc10559c256322986..aab36001fe5060ce81f4f5dc69f331da830be833 100644 --- a/src/uncategorized/resFailure.tw +++ b/src/uncategorized/resFailure.tw @@ -144,7 +144,7 @@ <<set $activeSlave.behavioralQuirk = either("none")>> <<set $activeSlave.hStyle = "neat">> <<set $activeSlave.collar = "leather with cowbell">> - <<set $activeSlave.custom.tattoo = "$He has the logo of the Cattle Ranch branded on $his thigh.">> + <<set $activeSlave.brand["right thigh"] = "the logo of the Cattle Ranch">> <<set $activeSlave.boobsTat = "bovine patterns">> <<set $activeSlave.buttTat = "bovine patterns">> <<set $activeSlave.vaginaTat = "bovine patterns">> @@ -461,7 +461,7 @@ <<set $activeSlave.behavioralFlaw = either("arrogant", "none", "odd")>> <<set $activeSlave.hStyle = "short">> <<set $activeSlave.hLength = 2>> - <<set $activeSlave.custom.tattoo = "$He has the baroque crest of the Gymnasium-Academy that trained $his branded into $his left cheek.">> + <<set $activeSlave.brand["left cheek"] = "the baroque crest of the Gymnasium-Academy that trained $him">> <<run newSlave($activeSlave)>> /* skip New Slave Intro */ <</for>> <<elseif $RESFailure == "HA">> @@ -687,6 +687,7 @@ <<else>> <<set $activeSlave.pregType = 1>> <</if>> + <<set $activeSlave.pregSource = -9>> <<set $activeSlave.pregKnown = 1>> <<set $activeSlave.pregWeek = $activeSlave.preg>> <<run SetBellySize($activeSlave)>> diff --git a/src/uncategorized/resSale.tw b/src/uncategorized/resSale.tw index 848a7c564a16465e4de631c19e0d00fb3d13d481..d23f2c9860f0bb46113b7c1e2f0ce59014abfd2f 100644 --- a/src/uncategorized/resSale.tw +++ b/src/uncategorized/resSale.tw @@ -46,9 +46,9 @@ <<set $activeSlave.devotion = 100>> <div class="imageColumn"> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <<= assistantArt(3)>> </div> diff --git a/src/uncategorized/rieEligibilityCheck.tw b/src/uncategorized/rieEligibilityCheck.tw index c4a1ea04810ecc16f6173310487155ebb8df0328..3289e54276e48042a9de761817c3ec1d013ee535 100644 --- a/src/uncategorized/rieEligibilityCheck.tw +++ b/src/uncategorized/rieEligibilityCheck.tw @@ -5,7 +5,7 @@ <<set $eventSlave = 0, $eligibleSlaves = []>> <<for $i = 0; $i < $slaves.length; $i++>> - <<if $slaves[$i].assignmentVisible == 1 || $slaves[$i].assignment == "serve in the master suite" || $slaves[$i].assignment == "be your Concubine" || $slaves[$i].assignment == "be a servant">> + <<if $slaves[$i].assignmentVisible == 1 || $slaves[$i].assignment == "serve in the master suite" || $slaves[$i].assignment == "be your Concubine" || $slaves[$i].assignment == "work as a servant">> <<if $slaves[$i].fuckdoll == 0>> <<set $eligibleSlaves.push($slaves[$i].ID)>> <</if>> diff --git a/src/uncategorized/saDiet.tw b/src/uncategorized/saDiet.tw index 461813469195258fa88ef3b65b6a456d4e0a152f..485c31af616580420f3a5aed3ea13634dceee514 100644 --- a/src/uncategorized/saDiet.tw +++ b/src/uncategorized/saDiet.tw @@ -854,7 +854,7 @@ $His diet tastes and smells awful, but $he is incapable of recognizing it, allowing $him to feel nothing but its @@.green;significant restorative effect.@@ <<set $slaves[$i].trust++>> <<elseif !canSmell($slaves[$i]) || !canTaste($slaves[$i])>> - $His diet @@.mediumorchid;tastes and smells awful@@, but $he is thankfully only partially aware of this, allowing $him to appreciate its @@.green;significant restorative effect@@ a bit more. + $His diet @@.mediumorchid;tastes and smells awful,@@ but $he is thankfully only partially aware of this, allowing $him to appreciate its @@.green;significant restorative effect@@ a bit more. <<set $slaves[$i].devotion -= 1, $slaves[$i].trust++>> <<elseif $slaves[$i].sexualFlaw == "self hating">> $His diet @@.hotpink;tastes and smells awful,@@ the perfect meal for such a wretched creature as $himself. $He knows you are @@.green;preserving $his health@@ but doesn't understand why you'd waste time and credits on $him. diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw index fbf91f292393bd8bad060efcab7d15830b0bd4f4..ad2712dee4ec1d6a7d270a7f40807c6787c0122b 100644 --- a/src/uncategorized/saLiveWithHG.tw +++ b/src/uncategorized/saLiveWithHG.tw @@ -920,7 +920,7 @@ <<set $slaves[$i].devotion -= 20, $slaves[$i].trust -= 20, $slaves[$i].health -= 40, $slaves[$i].amp = 1>> <</if>> <<if ($slaves[$i].balls > 0) && ($slaves[$i].devotion <= 50)>> - $HeadGirl.slaveName decides to have some once-only sadistic pleasure, and carefully straps $slaves[$i].slaveName into the surgery until $he's completely immobile. $HeadGirl.slaveName situates a mirror so the terrified girl can see $his own crotch, gets behind $him, and carefully sodomizes $him during the entire process of @@.red;castration.@@ $slaves[$i].slaveName is anesthetized down there and can't feel the brutal anal rape, but $his abuser orgasms repeatedly to $him @@.gold;weeping at the sight of being gelded and raped at once.@@ + $HeadGirl.slaveName decides to have some once-only sadistic pleasure, and carefully straps $slaves[$i].slaveName into the surgery until $he's completely immobile. $HeadGirl.slaveName situates <<if canSee($slaves[$i])>>a mirror so the terrified $girl can see $his own crotch<<else>>$him so that the terrified $girl can sense what part of $his body is being manipulated even through the anesthetics<</if>>, gets behind $him, and carefully sodomizes $him during the entire process of @@.red;castration.@@ $slaves[$i].slaveName is anesthetized down there and can't feel the brutal anal rape, but $his abuser orgasms repeatedly to $him @@.gold;weeping at the <<if canSee($slaves[$i])>>sight<<else>>muted sensation<</if>> of being gelded and raped at once.@@ <<set $slaves[$i].devotion -= 20, $slaves[$i].trust -= 20, $slaves[$i].health -= 20, $slaves[$i].balls = 0>> <</if>> <</if>> diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw index d5e3103012da8947ba850bb1e583d667837d4679..edb7444b1dbcfbf6f2c754c30d5b36b603afc944 100644 --- a/src/uncategorized/saLongTermEffects.tw +++ b/src/uncategorized/saLongTermEffects.tw @@ -200,7 +200,7 @@ <</if>> <<case 4>> <<if $slaves[$i].navelPiercing>> - $He sometimes stares at $his <<if $slaves[$i].navelPiercing > 1>>navel chain, turning this way and that to make it move, unconsciously @@.green;getting used to $his fuckable body.@@<<else>>little feminine navel piercing, and seems to think @@.green;$his lower half is kind of pretty.@@<</if>> + $He sometimes <<if canSee($slaves[$i])>>stares at<<else>>considers<</if>> $his <<if $slaves[$i].navelPiercing > 1>>navel chain, turning this way and that to make it move, unconsciously @@.green;getting used to $his fuckable body.@@<<else>>little feminine navel piercing, and seems to think @@.green;$his lower half is kind of pretty.@@<</if>> <<set $slaves[$i].attrXY += 1>> <</if>> <<case 5>> @@ -1055,10 +1055,10 @@ <<set $slaves[$i].devotion -= 3>> <</if>> <</if>> - <<if ["whore", "serve the public", "work in the brothel", "serve in the club", "work a glory hole", "be confined in the arcade"].includes($slaves[$i].assignment)>> + <<if ["be confined in the arcade", "serve in the club", "serve the public", "whore", "work a glory hole", "work in the brothel"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by how many dicks $he gets to suck at work. <<set _para = 1>> - <<elseif ($PC.dick == 1) && ($slaves[$i].toyHole == "mouth") && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>> + <<elseif ($PC.dick == 1) && ($slaves[$i].toyHole == "mouth") && ["be your Concubine", "please you", "serve in the master suite"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by constant oral sex with you. <<set _para = 1>> <<elseif $slaves[$i].inflation != 0 && $slaves[$i].inflationType == "cum">> @@ -1096,10 +1096,10 @@ <<set $slaves[$i].devotion -= 3>> <</if>> <</if>> - <<if ["whore", "serve the public", "work in the brothel", "serve in the club", "work a glory hole", "be confined in the arcade"].includes($slaves[$i].assignment)>> + <<if ["be confined in the arcade", "serve in the club", "serve the public", "whore", "work a glory hole", "work in the brothel"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by how many dicks get shoved up $his butt at work. <<set _para = 1>> - <<elseif ($slaves[$i].toyHole == "ass") && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>> + <<elseif ($slaves[$i].toyHole == "ass") && ["be your Concubine", "please you", "serve in the master suite"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by constant anal sex with you. <<set _para = 1>> <<elseif $suppository != 0>> @@ -1329,10 +1329,10 @@ <<set $slaves[$i].devotion -= 3>> <</if>> <</if>> - <<if ["whore", "serve the public", "work in the brothel", "serve in the club", "work a glory hole", "be confined in the arcade", "work as a servant", "be the Attendant", "be the Milkmaid"].includes($slaves[$i].assignment)>> + <<if ["be confined in the arcade", "serve in the club", "serve the public", "whore", "work a glory hole", "work in the brothel", "work as a servant", "be the Attendant", "be the Milkmaid"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by how $he's expected to serve others' sexual needs at work. <<set _para = 1>> - <<elseif ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>> + <<elseif ["be your Concubine", "please you", "serve in the master suite"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by how $he's expected to serve your sexual needs at work. <<set _para = 1>> <<elseif $slaves[$i].assignment == "be a subordinate slave">> @@ -1388,10 +1388,10 @@ <<elseif $slaves[$i].pregKnown == 1>> $His paraphilia is satisfied by $his pregnancy. <<set _para = 1>> - <<elseif canGetPregnant($slaves[$i]) && ($PC.dick == 1) && ($slaves[$i].toyHole == "pussy" && $slaves[$i].mpreg != 1) && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>> + <<elseif canGetPregnant($slaves[$i]) && ($PC.dick == 1) && ($slaves[$i].toyHole == "pussy" && $slaves[$i].mpreg != 1) && ["be your Concubine", "please you", "serve in the master suite"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by constant unprotected vaginal sex with you. <<set _para = 1>> - <<elseif canGetPregnant($slaves[$i]) && ($PC.dick == 1) && ($slaves[$i].toyHole == "ass" && $slaves[$i].mpreg == 1) && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>> + <<elseif canGetPregnant($slaves[$i]) && ($PC.dick == 1) && ($slaves[$i].toyHole == "ass" && $slaves[$i].mpreg == 1) && ["be your Concubine", "please you", "serve in the master suite"].includes($slaves[$i].assignment)>> $His paraphilia is satisfied by constant unprotected anal sex with you. <<set _para = 1>> <<elseif $slaves[$i].bellyImplant >= 60000>> @@ -1540,8 +1540,10 @@ <<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>> <</if>> <<case "a bioreactor">> - $He remembers what it was like to be a living, breathing, milk-jetting,<<if isFertile($slaves[$i]) && ($dairyPregUpgrade > 0)>> baby-filled,<</if>><<if ($slaves[$i].balls != 0)>> cum-squirting,<</if>> drug-filled piece of industrial equipment, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that $he isn't any more. - <<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>> + <<if ($dairyRestraintsSetting < 2) || ($slaves[$i].assignment != "work in the dairy" && $slaves[$i].assignment != "get milked")>> + $He remembers what it was like to be a living, breathing, milk-jetting,<<if isFertile($slaves[$i]) && ($dairyPregUpgrade > 0)>> baby-filled,<</if>><<if ($slaves[$i].balls != 0)>> cum-squirting,<</if>> drug-filled piece of industrial equipment, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that $he isn't any more. + <<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>> + <</if>> <<case "a Futanari Sister">> <<if $masterSuiteUpgradeLuxury == 2>> <<if $slaves[$i].assignment == "serve in the master suite">> @@ -1588,10 +1590,10 @@ <<if ($slaves[$i].assignment != "serve in the master suite") || ($masterSuiteUpgradeLuxury < 2)>> <<if ($slaves[$i].assignment != "work in the dairy") || ($dairyStimulatorsSetting == 0)>> <<if $slaves[$i].geneMods.rapidCellGrowth != 1>> - <<if ($slaves[$i].vagina == 3) && !["large dildo", "huge dildo", "long, large dildo", "long, huge dildo"].includes($slaves[$i].vaginalAccessory)>> + <<if ($slaves[$i].vagina == 3) && !["huge dildo", "large dildo", "long, huge dildo", "long, large dildo"].includes($slaves[$i].vaginalAccessory)>> With a rest from strenuous use, @@.lime;$his loose vagina recovers a little.@@ <<set $slaves[$i].vagina -= 1>> - <<elseif ($slaves[$i].anus == 3) && !["large plug", "huge plug", "long, large plug", "long, huge plug"].includes($slaves[$i].buttplug)>> + <<elseif ($slaves[$i].anus == 3) && !["huge plug", "large plug", "long, huge plug", "long, large plug"].includes($slaves[$i].buttplug)>> With a rest from continual sodomy, @@.lime;$his gaping anus recovers a little.@@ <<set $slaves[$i].anus -= 1>> <</if>> @@ -2967,7 +2969,7 @@ <<= FutureSocieties.Change("Hedonistic", 2)>> <</if>> <<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].devotion > 75>> - $He's been marked to be the bearer of your offspring and is growing larger by the day with your child. $He is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@ + $He's been marked to be the bearer of your offspring and is growing larger by the day with your child<<if $slaves[$i].pregType > 1>>ren<</if>>. $He is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@ <<set $slaves[$i].sexualFlaw = "breeder">> <<set $slaves[$i].fetishStrength = 100>> <<if $arcologies[0].FSHedonisticDecadence != "unset">> @@ -4488,7 +4490,7 @@ <<set _tempSub = getSlave($slaves[$i].subTarget)>> <<if ndef _tempSub>>@@.red;Error, subTarget not found.@@<</if>> <</if>> - <<if (($slaves[$i].relationship == -3) || ($slaves[$i].relationship == -2)) && canImpreg($slaves[$i], $PC) && !["masturbation", "chastity"].includes($slaves[$i].releaseRules)>> + <<if (($slaves[$i].relationship == -3) || ($slaves[$i].relationship == -2)) && canImpreg($slaves[$i], $PC) && !["chastity", "masturbation"].includes($slaves[$i].releaseRules)>> <<set $slaves[$i].pregSource = -1>> <<elseif ($slaves[$i].relationship > 2) && canImpreg($slaves[$i], _tempLover)>> /* erection not needed for impregnation via consensual sex play (FWB or better) */ <<set $slaves[$i].pregSource = _tempLover.ID>> @@ -4497,7 +4499,7 @@ <<elseif (random(1,100) > 95) && ($slaves[$i].rivalry > 2) && canAchieveErection(_tempRival) && canImpreg($slaves[$i], _tempRival)>> /* 5% chance to be raped and knocked up by bitter rival - erection needed */ Driven by the bitter rivalry between them, _tempRival.slaveName successfully manages to overpower $slaves[$i].slaveName and rape $him, cumming deep in $his fertile <<if $slaves[$i].mpreg == 1>>asshole<<else>>pussy<</if>>. By the end of the week, $slaves[$i].slaveName is vowing revenge as $he regains confidence. <<set $slaves[$i].pregSource = _tempRival.ID>> - <<elseif (random(1,100) > 60) && canImpreg($slaves[$i], $PC) && !["masturbation", "chastity"].includes($slaves[$i].releaseRules)>> /* still 40% chance of impregnation by PC */ + <<elseif (random(1,100) > 60) && canImpreg($slaves[$i], $PC) && !["chastity", "masturbation"].includes($slaves[$i].releaseRules)>> /* still 40% chance of impregnation by PC */ <<set $slaves[$i].pregSource = -1>> <<elseif (random(1,100) > 95) && ($slaves[$i].eggType == "human") && $slaves[$i].devotion <= 20>> /* 5% chance of impregnation by random citizen - TODO: make this optional for players who want random fathers from among their own slaves only */ <<set $slaves[$i].pregSource = -2>> @@ -5009,7 +5011,9 @@ <<if $arcologies[0].FSHedonisticDecadenceResearch == 1>> <<if $arcologies[0].FSDegradationist == "unset">> <<if $slaves[$i].onDiet != 1>> - <<if $slaves[$i].behavioralQuirk == "insecure">> + <<if !canTaste($slaves[$i])>> + $His lack of a sense of taste makes $him essentially immune to the addictive slave treats, as $he can't be enticed by their delicious taste. + <<elseif $slaves[$i].behavioralQuirk == "insecure">> $He can't stop $himself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about $his weight, appearance and how others view $him. <<set $slaves[$i].trust -= 3>> <<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>> @@ -5055,7 +5059,9 @@ <<set $slaves[$i].trust++, $slaves[$i].devotion++>> <</if>> <<else>> /* no treats for you */ - <<if $slaves[$i].behavioralQuirk == "insecure">> + <<if !canTaste($slaves[$i])>> + $He lacks permission to eat the slave treats, which $he has no real opinion over, as $he lacks the sense to taste them anyway. + <<elseif $slaves[$i].behavioralQuirk == "insecure">> $He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as $his <<= WrittenMaster($slaves[$i])>> is carefully directing $him. <<set $slaves[$i].trust++>> <<elseif $slaves[$i].behavioralQuirk == "fitness">> @@ -5077,7 +5083,7 @@ The treats are designed to cause stomach cramps alongside being extremely addictive. $He cannot stop $himself from eating them, but $he can @@.gold;fear@@ your cruelty as $his @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in $his food. <<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 3>> <<else>> - The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries $his best to be obedient@@ hoping to not undergo the agony, but $his efforts pale in comparison to the effects of the food based aphrodisiacs. + The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries $his best to be obedient@@ hoping to not undergo the agony, but $his efforts pale in comparison to the effects of the food-based aphrodisiacs. <<set $slaves[$i].devotion++, $slaves[$i].trust++>> <</if>> <</if>> @@ -5099,7 +5105,9 @@ <<elseif $arcologies[0].FSHedonisticDecadenceResearch == 1>> <<if $arcologies[0].FSDegradationist == "unset">> <<if $slaves[$i].onDiet != 1>> - <<if $slaves[$i].behavioralQuirk == "insecure">> + <<if !canTaste($slaves[$i])>> + $His lack of a sense of taste makes $him essentially immune to the addictive slave treats, as $he can't be enticed by their delicious taste. + <<elseif $slaves[$i].behavioralQuirk == "insecure">> $He can't stop $himself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about $his weight, appearance and how others view $him. <<set $slaves[$i].trust -= 3>> <<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>> @@ -5145,7 +5153,9 @@ <<set $slaves[$i].trust++, $slaves[$i].devotion++>> <</if>> <<else>> /* no treats for you */ - <<if $slaves[$i].behavioralQuirk == "insecure">> + <<if !canTaste($slaves[$i])>> + $He lacks permission to eat the slave treats, which $he has no real opinion over, as $he lacks the sense to taste them anyway. + <<elseif $slaves[$i].behavioralQuirk == "insecure">> $He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as $his <<= WrittenMaster($slaves[$i])>> is carefully directing $him. <<set $slaves[$i].trust++>> <<elseif $slaves[$i].behavioralQuirk == "fitness">> @@ -5846,7 +5856,7 @@ Society @@.green;approves@@ of $slaves[$i].slaveName's collar as an expression of the old ideal of mortification of the flesh, advancing the combination of religious originalism and modern slavery. <<= FutureSocieties.ChangePorn("ChattelReligionist", 1)>> <</if>> - <<if ["a burqa", "a chattel habit", "a fallen nuns habit", "a hijab and abaya", "a klan robe", "a niqab and abaya", "a penitent nuns habit", "a succubus outfit"].includes($slaves[$i].clothes)>> + <<if ["a burqa", "a chattel habit", "a fallen nuns habit", "a hijab and abaya", "a niqab and abaya", "a penitent nuns habit", "a succubus outfit"].includes($slaves[$i].clothes)>> Society @@.green;approves@@ of $his religiously themed clothing, strengthening the connection between sexual servitude and faith. <<= FutureSocieties.ChangePorn("ChattelReligionist", 1)>> <<elseif ["a bunny outfit", "a hijab and blouse", "a huipil", "a kimono", "a military uniform", "a nice maid outfit", "a nice nurse outfit", "a slutty qipao", "a toga", "body oil", "chains", "conservative clothing", "nice business attire", "no clothing", "shibari ropes", "uncomfortable straps"].includes($slaves[$i].clothes)>> @@ -8301,23 +8311,25 @@ <</if>> <</if>> -<<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $eugenicsFullControl != 1>> - <<if $slaves[$i].preg > $slaves[$i].pregData.normalBirth/13.33 || $slaves[$i].pregKnown == 1>> - <<if $slaves[$i].pregSource != -1>> - $slaves[$i].slaveName's weekly health checkup revealed $he is pregnant with an unacceptable child. @@.red;Its life has been terminated, you have been fined <<print cashFormat(100000)>>, and your rep among the Elite has been severely damaged.@@ - <<set $slaves[$i].preg = 0>> - <<set $slaves[$i].pregType = 0>> - <<set $slaves[$i].pregSource = 0>> - <<set $slaves[$i].pregWeek = 0>> - <<set $slaves[$i].pregKnown = 0>> - <<set WombFlush($slaves[$i])>> - <<run SetBellySize($slaves[$i])>> - <<run cashX(-100000, "fines", $slaves[$i])>> - <<set $failedElite += 150>> - <<if $slaves[$i].abortionTat > -1>> - But hey, $he gets a tattoo signifying $his abortion. Was it worth it? - <<set $slaves[$i].abortionTat++>> - <<run cashX(forceNeg($modCost), "slaveMod", $slaves[$i])>> +<<if $arcologies[0].FSRestart != "unset">> + <<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $eugenicsFullControl != 1>> + <<if $slaves[$i].preg > $slaves[$i].pregData.normalBirth/13.33 || $slaves[$i].pregKnown == 1>> + <<if $slaves[$i].pregSource != -1 && $slaves[$i].pregSource != -6>> + $slaves[$i].slaveName's weekly health checkup revealed $he is pregnant with an unacceptable child. @@.red;Its life has been terminated, you have been fined <<print cashFormat(100000)>>, and your rep among the Elite has been severely damaged.@@ + <<set $slaves[$i].preg = 0>> + <<set $slaves[$i].pregType = 0>> + <<set $slaves[$i].pregSource = 0>> + <<set $slaves[$i].pregWeek = 0>> + <<set $slaves[$i].pregKnown = 0>> + <<set WombFlush($slaves[$i])>> + <<run SetBellySize($slaves[$i])>> + <<run cashX(-100000, "fines", $slaves[$i])>> + <<set $failedElite += 150>> + <<if $slaves[$i].abortionTat > -1>> + But hey, $he gets a tattoo signifying $his abortion. Was it worth it? + <<set $slaves[$i].abortionTat++>> + <<run cashX(forceNeg($modCost), "slaveMod", $slaves[$i])>> + <</if>> <</if>> <</if>> <</if>> diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw index 3776c2b9a131959a8357b998e339d9bd75aa60df..de52360c6687887641e07674895fb21e1c3fb399 100644 --- a/src/uncategorized/saPleaseYou.tw +++ b/src/uncategorized/saPleaseYou.tw @@ -428,7 +428,7 @@ serves you this week. <<elseif ($slaves[$i].devotion <= 50)>> obediently offering $his tits for your use. <<elseif ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetish == "boobs")>> - moaning and shivering as you give it to $his where $he likes it best: $his tits. + moaning and shivering as you give it to $him where $he likes it best: $his tits. <<else>> keeping $his tits in constant contact with you, giving you titjobs<<if $slaves[$i].nipples == "fuckable">>, savoring your enjoyment of $his nipplecunts<</if>>, resting them against you as you work, and serving as a comfortable pillow at bedtime. <</if>> @@ -530,7 +530,7 @@ serves you this week. on occasion; <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> <</if>> - giving you pleasure @@.hotpink;closer to you@@ and encourages $him to @@.mediumaquamarine;trust you.@@ + giving you pleasure brings $him @@.hotpink;closer to you@@ and encourages $him to @@.mediumaquamarine;trust you.@@ <</if>> <<if ($slaves[$i].fetish != "mindbroken")>> <<if ($slaves[$i].sexualFlaw == "hates oral") && ($slaves[$i].devotion > 50)>> diff --git a/src/uncategorized/salon.tw b/src/uncategorized/salon.tw index 12a20cebe4d9b443bed028233f483fb473741f39..1bfcb1ad06906fb48d362ebabc64c219f7f21f68 100644 --- a/src/uncategorized/salon.tw +++ b/src/uncategorized/salon.tw @@ -16,9 +16,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/schoolroom.tw b/src/uncategorized/schoolroom.tw index 4fe30644ec7f84aa92e82efccc67d3258c016bdd..196bae8b0d36d0d096bda9e644ff4c588719155b 100644 --- a/src/uncategorized/schoolroom.tw +++ b/src/uncategorized/schoolroom.tw @@ -55,6 +55,14 @@ $schoolroomNameCaps is well-equipped, with wallscreens to display lessons. These offering a brief primer on the arcology's nutritional system which will allow slaves to double check their own caloric intake. <<case "Hedonistic">> exposing slaves to new, fascinating forms of pleasure; both for others and for themselves. +<<case "Intellectual Dependency">> + +<<case "Slave Professionalism">> + +<<case "Petite Admiration">> + +<<case "Statuesque Glorification">> + <<default>> reviewing the often complex subject of how to address citizens other that one's owner. <</switch>> diff --git a/src/uncategorized/schoolroomReport.tw b/src/uncategorized/schoolroomReport.tw index 1dfc4daafb2763f844d7d4c41b45457515bf38d6..d64142e59d0e4a6368c695526134679e15108cf1 100644 --- a/src/uncategorized/schoolroomReport.tw +++ b/src/uncategorized/schoolroomReport.tw @@ -114,7 +114,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -190,7 +190,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/seCoursing.tw b/src/uncategorized/seCoursing.tw index 8e38b0d0b59c2ca6c09c4519119133ef4be24dd7..487c4d140fd5abc0a1cf3b560981eca2ba73d607 100644 --- a/src/uncategorized/seCoursing.tw +++ b/src/uncategorized/seCoursing.tw @@ -12,9 +12,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeLurcher 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeLurcher, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeLurcher 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeLurcher, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -230,7 +230,7 @@ You lead your lurcher $activeLurcher.slaveName out on a leash, naked just like t /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $activeSlave 0 0>> + <<= SlaveArt($activeSlave, 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -249,11 +249,11 @@ You lead your lurcher $activeLurcher.slaveName out on a leash, naked just like t <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeLurcher 2 0>> + <<= SlaveArt($activeLurcher, 2, 0)>> </div> <<if $activeSlave != 0>> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <</if>> </div> @@ -282,11 +282,11 @@ You lead your lurcher $activeLurcher.slaveName out on a leash, naked just like t <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeLurcher 2 0>> + <<= SlaveArt($activeLurcher, 2, 0)>> </div> <<if $activeSlave != 0>> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <</if>> </div> @@ -315,11 +315,11 @@ You lead your lurcher $activeLurcher.slaveName out on a leash, naked just like t <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt $activeLurcher 2 0>> + <<= SlaveArt($activeLurcher, 2, 0)>> </div> <<if $activeSlave != 0>> <div class="imageRef medImg"> - <<SlaveArt $activeSlave 2 0>> + <<= SlaveArt($activeSlave, 2, 0)>> </div> <</if>> </div> diff --git a/src/uncategorized/seExpiration.tw b/src/uncategorized/seExpiration.tw index d0e80f1c6633ee1643d412e8e54d4cab8f79f976..66501ed441d352949d6f7aa28e93fb8e35a00c05 100644 --- a/src/uncategorized/seExpiration.tw +++ b/src/uncategorized/seExpiration.tw @@ -13,9 +13,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/seIndependenceDay.tw b/src/uncategorized/seIndependenceDay.tw index b314e00284199f90d50240a7b11713f11cc92148..e3f3f12ad3027a424ccacfb48de32d2e7a467d18 100644 --- a/src/uncategorized/seIndependenceDay.tw +++ b/src/uncategorized/seIndependenceDay.tw @@ -133,7 +133,7 @@ In the Free Cities, Independence Day falls on the day when the Free City achieve <<elseif $PC.career == "escort">> You share a rather sordid anecdote from your background as an escort; the moral of the story is that you can go very far when you know the right people, or things about said people. <<elseif $PC.career == "servant">> - You share a rather some of the highlights of your late master's life; the moral of the story is that you've seen how to lead from someone who was a leader... It didn't help your standing much. + You share a rather some of the highlights of your late Master's life; the moral of the story is that you've seen how to lead from someone who was a leader... It didn't help your standing much. <<elseif $PC.career == "celebrity">> You share a hilarious anecdote from your background as a celebrity, one which the old world tabloids never did learn about, until now. <<elseif $PC.career == "BlackHat">> diff --git a/src/uncategorized/seLethalPit.tw b/src/uncategorized/seLethalPit.tw index 4a24d2265f78304bf6ebfbfd85cd3d65a78e7374..7f05e80b97333a3793f6d9de30e1a8bb8fd0a982 100644 --- a/src/uncategorized/seLethalPit.tw +++ b/src/uncategorized/seLethalPit.tw @@ -28,10 +28,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _fighterOne 2 0>> + <<= SlaveArt(_fighterOne, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _fighterTwo 2 0>> + <<= SlaveArt(_fighterTwo, 2, 0)>> </div> </div> <</if>> @@ -50,9 +50,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt _fighterOne 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt(_fighterOne, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt _fighterOne 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt(_fighterOne, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -171,7 +171,7 @@ You review the rules — the <<if $pitAnimal == 0>>combatants<<else>>slave<</if> <<elseif _fighterOne.bellyPreg >= 10000>> $His huge belly gets in $his way and weighs $him down. $He is terrified for the <<if _fighterOne.pregType > 1>>lives of $his children<<else>>life of $his child<</if>>. <<elseif _fighterOne.bellyPreg >= 5000>> - $His advanced pregnancy makes $him much less effective, not to mention terrified for $his child. + $His advanced pregnancy makes $him much less effective, not to mention terrified for $his child<<if _fighterOne.pregType > 1>>ren<</if>>. <<elseif _fighterOne.bellyPreg >= 1500>> $His growing pregnancy distracts $him with concern over the life growing within $him. <<else>> @@ -323,7 +323,7 @@ You review the rules — the <<if $pitAnimal == 0>>combatants<<else>>slave<</if> <<elseif _fighterTwo.bellyPreg >= 10000>> _His2 huge belly gets in _his2 way and weighs _him2 down. _He2 is terrified for the <<if _fighterTwo.pregType > 1>>lives of _his2 children<<else>>life of _his2 child<</if>>. <<elseif _fighterTwo.bellyPreg >= 5000>> - _His2 advanced pregnancy makes _him2 much less effective, not to mention terrified for _his2 child. + _His2 advanced pregnancy makes _him2 much less effective, not to mention terrified for _his2 child<<if _fighterTwo.pregType > 1>>ren<</if>>. <<elseif _fighterTwo.bellyPreg >= 1500>> _His2 growing pregnancy distracts _him2 with concern over the life growing within _him2. <<else>> diff --git a/src/uncategorized/seNonlethalPit.tw b/src/uncategorized/seNonlethalPit.tw index 0c4b6464854e5ab7e5419d6da3dbe9aee8953282..31d0cd6010b924f39f8227658b7f55222ea845d2 100644 --- a/src/uncategorized/seNonlethalPit.tw +++ b/src/uncategorized/seNonlethalPit.tw @@ -21,10 +21,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _fighterOne 2 0>> + <<= SlaveArt(_fighterOne, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _fighterTwo 2 0>> + <<= SlaveArt(_fighterTwo, 2, 0)>> </div> </div> <</if>> @@ -43,9 +43,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt _fighterOne 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt(_fighterOne, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt _fighterOne 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt(_fighterOne, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -587,7 +587,7 @@ <<elseif (_loser.vagina == 0) && canDoVaginal(_loser) && canDoAnal(_loser)>> $He pushes _loser.slaveName's back down onto the mat, forces _his2 legs apart, <<if _winner.fetish == "pregnancy">> - and, after eyeing _his2 virgin vagina with desire, penetrates the loser's anus. + and, after <<if canSee(_winner)>>eyeing<<else>>feeling up<</if>> _his2 virgin vagina with desire, penetrates the loser's anus. <<else>> and respects the rules by penetrating the loser's anus. <</if>> @@ -599,7 +599,7 @@ <<elseif (_loser.anus == 0) && canDoVaginal(_loser) && canDoAnal(_loser)>> $He pushes _loser.slaveName's back down onto the mat, forces _his2 legs apart, <<if _winner.fetish == "buttslut" || (canImpreg(_loser, _winner) && canPenetrate(_winner) && _loser.mpreg == 1 && _winner.fetish == "pregnancy")>> - and, after eyeing _his2 virgin anus with desire, penetrates the loser's cunt. + and, after <<if canSee(_winner)>>eyeing<<else>>feeling up<</if>> _his2 virgin anus with desire, penetrates the loser's cunt. <<else>> and respects the rules by penetrating the loser's cunt. <</if>> diff --git a/src/uncategorized/seRetirement.tw b/src/uncategorized/seRetirement.tw index 3839c55cd4093a5e06fd9862303bf419f9cf7fbf..f7d609cb622e1e2d68776f8a3b798390e75719d4 100644 --- a/src/uncategorized/seRetirement.tw +++ b/src/uncategorized/seRetirement.tw @@ -26,9 +26,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ @@ -219,10 +219,10 @@ Your arcology has gained a well-off citizen. <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _clonedSlave 2 0>> + <<= SlaveArt(_clonedSlave, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt $slaves[_sr] 2 0>> + <<= SlaveArt($slaves[_sr], 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/seWeddingDouble.tw b/src/uncategorized/seWeddingDouble.tw index f8386ee015e2270b53e209d4e66a1acffa25911d..cefd8f8a176bf6cdec064dfc4f629b026d4b4fe5 100644 --- a/src/uncategorized/seWeddingDouble.tw +++ b/src/uncategorized/seWeddingDouble.tw @@ -12,10 +12,10 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _slave1 2 0>> + <<= SlaveArt(_slave1, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _slave2 2 0>> + <<= SlaveArt(_slave2, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/seWeddingSingle.tw b/src/uncategorized/seWeddingSingle.tw index 3978b2c03b8b7160d62fa3f71fe94fb51cc60e97..91840b5fc22f69779d6382395f347b9be96fb515 100644 --- a/src/uncategorized/seWeddingSingle.tw +++ b/src/uncategorized/seWeddingSingle.tw @@ -8,9 +8,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $slaves[_wedS] 2 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($slaves[_wedS], 2, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $slaves[_wedS] 2 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($slaves[_wedS], 2, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/seWeddingTriple.tw b/src/uncategorized/seWeddingTriple.tw index 2c686931cfe0270ffecd598e3b1ac55df6ecb161..65f0e59ec6904f01ab451c68fb84ccc8116288f0 100644 --- a/src/uncategorized/seWeddingTriple.tw +++ b/src/uncategorized/seWeddingTriple.tw @@ -16,13 +16,13 @@ <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> - <<SlaveArt _slave1 2 0>> + <<= SlaveArt(_slave1, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _slave2 2 0>> + <<= SlaveArt(_slave2, 2, 0)>> </div> <div class="imageRef medImg"> - <<SlaveArt _slave3 2 0>> + <<= SlaveArt(_slave3, 2, 0)>> </div> </div> <</if>> diff --git a/src/uncategorized/servantsQuarters.tw b/src/uncategorized/servantsQuarters.tw index 83caf01fe73bee2070b1df96c693c6a6a985a2c1..fd1f813dde9b08e36676f2c5f4ae264a62e47517 100644 --- a/src/uncategorized/servantsQuarters.tw +++ b/src/uncategorized/servantsQuarters.tw @@ -55,6 +55,14 @@ $servantsQuartersNameCaps are comfortable and well-kept. There are pornographic pictures on the walls, depicting slender slaves earnestly enjoying sex. <<case "Hedonistic">> are comfortable and well-kept. There are plenty of soft couches to recline on between shifts and a number of feeders to keep servants full and happy. There are pornographic pictures on the walls, depicting fat slaves earnestly enjoying sex while stuffing their and their partners faces. +<<case "Intellectual Dependency">> + are comfortable, but well equipped to corral wayward slaves. There are instructional screens in the common areas reviewing basic slave tasks like scrubbing a floor and not wandering off. Plenty of toys are available in an effort to keep minds focused on work and not solely on sex. +<<case "Slave Professionalism">> + are comfortable and well-kept, assuming a slave is able to understand how to make use of the amenities. There are abundant menial tasks available to keep a mind busy and sharp. +<<case "Petite Admiration">> + are comfortable and well-kept, assuming a slave is short enough, of course. Those that stand too tall find the accommodations cramped and the tools annoyingly short. +<<case "Statuesque Glorification">> + are comfortable and well-kept, assuming a slave is tall enough, of course. Those that are too short find the accommodations out of reach and the tools painfully long. <<default>> are comfortable. Servants sleep together in a dormitory, eat together in a little kitchen, bathe together in a communal shower, and then head out into the penthouse to serve. <</switch>> diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw index 138e19f61606ae543563a91bfdcb3fdbfe0e1678..498421c9dc1debe918c2a31684575ba940180404 100644 --- a/src/uncategorized/servantsQuartersReport.tw +++ b/src/uncategorized/servantsQuartersReport.tw @@ -187,7 +187,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -247,6 +247,24 @@ <<switch $servantsQuartersDecoration>> <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Degradationist" "Edo Revivalist" "Egyptian Revivalist" "Roman Revivalist" "Subjugationist" "Supremacist">> <<set $slaves[$i].livingRules = "spare">> + <<case "Slave Professionalism">> + <<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>> + <<set $slaves[$i].livingRules = "normal">> + <<else>> + <<set $slaves[$i].livingRules = "spare">> + <</if>> + <<case "Petite Admiration">> + <<if heightPass($slaves[$i])>> + <<set $slaves[$i].livingRules = "normal">> + <<else>> + <<set $slaves[$i].livingRules = "spare">> + <</if>> + <<case "Statuesque Glorification">> + <<if heightPass($slaves[$i])>> + <<set $slaves[$i].livingRules = "normal">> + <<else>> + <<set $slaves[$i].livingRules = "spare">> + <</if>> <<default>> <<set $slaves[$i].livingRules = "normal">> <</switch>> @@ -255,7 +273,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef tinyImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/shops.tw b/src/uncategorized/shops.tw index 24e386519b23994ee52df11ab6b02b5d14634f06..92f70883d010254d6dae2852fff9d77eb888c74a 100644 --- a/src/uncategorized/shops.tw +++ b/src/uncategorized/shops.tw @@ -87,9 +87,29 @@ This is a section of the promenade dedicated to Hedonism. The establishments here are nearly all eateries, with a few sex shops and plus size clothing stores thrown in for good measure. Lovely smells fill the air, drawing your attention to the food vendors. Plump, cheerful slave<<= _girlU>>s are present outside most of them offering free samples of the food sold within. You can't help but sample as you browse the menus. <span id="result"><<link "Conduct a more thorough culinary inspection">><<replace "#result">>The eateries are very eager to have you seen enjoying their food, and go all out in their presentations. Plate after plate, vendor after vendor, you are treated to the best they can make and as much as you want, free of charge. You make sure to not go too crazy, but by the final restaurant, your clothing is definitely getting a little tight around your bloated belly. After a number of glowing reviews, you're left with making your way back home. Fortunately, your arcology features plenty of moving walkways and escalators, so you can relax as your infrastructure delivers you right back to your penthouse.<</replace>><</link>></span> <<case "Intellectual Dependency">> + dedicated to Intellectual Dependency. The shops all have one thing in common, they are incredibly eye-catching in the hopes that a wanting bimbo will whine _hisU master into buy something to shut _himU up. From skimpy outfits to simple to use sex toys, everything an airheaded slave may want on a whim is on display; unsurprisingly, the shop selling complex gags is also doing quite well. Most of the shops have slave sales<<= _girlU>>s out front attempting to demonstrate the merchandise. + <span id="result"><<link "Take in a sales pitch">><<replace "#result">>You decide to stop and watch one try _hisU best to sell vibrating dildos. The toys are designed to automatically start vibrating when gripped so even the densest of slave<<print _girlU>> can figure out how to work it. You know you picked a winner when _heU grabs one and immediately flings it into the crowd in surprise when it activates. Completely undeterred by the laughter, _heU makes for another, this time focusing entirely on not being shocked by it this time. _HeU stands there, completely fixated on the wiggling phallus in _hisU hands, until another onlooker prods _himU to continue with _hisU advertising. Needless to say, yet another sex toy goes flying; this time, however, _heU goes after it, giving the crowd a clear view up _hisU skirt at _hisU clear arousal. Enjoying the now masturbating slave's show, you pick out a few to humor your own slaves with.<</replace>><</link>></span> <<case "Slave Professionalism">> + dedicated to Intellectual Dependency. There are surprisingly wide selection of shops here, each designed to stimulate the minds of curious looky-loos. Well-trained slaves can often be spotted seeking out new ways to improve their Masters' reputations and lives. <<case "Petite Admiration">> + dedicated to Petite Admiration. The shops here are mostly focused on providing the tools and equipment a short slave will need to properly care for their Master and his abode. Several fashion lines have cropped up to provide matching clothing tailored to the shorter clientele and their often taller owners. There's even a sex shop that specializes in extreme differences in height. + <<if $PC.height >= 170>> + <span id="result"><<link "Take a harness out for a spin">><<replace "#result">> + The shop has a selection of harnesses available for testing and a number of miniscule slave<<print _girlU>>s to try out. You fasten one on and carry on browsing the rest of the stores. + <<if $PC.dick > 0>> + The squirming _girlU currently housing your cock makes it very difficult to focus on anything else, so you mostly just walk the hall, busting load after load into the overstimulated slave and effectively giving the store free advertisement. + <<else>> + The squirming _girlU currently wrapped around a strap-on makes it very difficult to focus on anything else, so you mostly just walk the hall, further over stimulating the panting slave and effectively giving the store free advertisement. + <</if>> + By the time you return, you aren't the only one interested in purchasing a harness for home use. + <</replace>><</link>></span> + <<else>> + <span id="result"><<link "Pay it a visit">><<replace "#result">> + As you browse their goods, it becomes more and more apparent that you yourself are too short to really make use of any of them. + <</replace>><</link>></span> + <</if>> <<case "Statuesque Glorification">> + dedicated to Statuesque Glorification. The shops here are overwhelmingly dedicated to the tall; not a single shop caters the slightest to anyone below the height threshold. Most of the shops sell clothing specially tailored to their towering patrons, though a handful also sell furniture and appliances made to comfortably accommodate a more lengthy population. <<default>>ERROR: bad sector type <</switch>> <<if $sectors[$AS].type == "Shops">><<SectorSell>><</if>> diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw index 63b71a5b282c16268b80e2514ca92b5376419d43..a695c4a2a1316e7412bb6634ed6c622cf0429c8c 100644 --- a/src/uncategorized/slaveInteract.tw +++ b/src/uncategorized/slaveInteract.tw @@ -100,10 +100,8 @@ </span> | <<link "Use $his mouth">><<replace "#miniscene">><<include "FLips">><br> <</replace>><</link>> | <<link "Kiss $him">><<replace "#miniscene">><<include "FKiss">><br> <</replace>><</link>> - <<if $cheatMode == 1>> - <<if ($activeSlave.amp == 0 || $activeSlave.amp == -3 || $activeSlave.amp == -5)>> - | <<link "Have $him dance for you">><<replace "#miniscene">><<include "FDance">><br> <</replace>><</link>> - <</if>> + <<if ($activeSlave.amp == 0 || $activeSlave.amp == -3 || $activeSlave.amp == -5)>> + | <<link "Have $him dance for you">><<replace "#miniscene">><<include "FDance">><br> <</replace>><</link>> <</if>> | <<link "Play with $his tits">><<replace "#miniscene">><<include "FBoobs">><br> <</replace>><</link>> | <<link "Caress $him">><<replace "#miniscene">><<include "FCaress">><br> <</replace>><</link>> @@ -349,7 +347,9 @@ <</if>> <<if ($activeSlave.fetish != "mindbroken") && (($activeSlave.amp != 1) || ($activeSlave.voice != 0)) && $activeSlave.accent != 4>> | <<link "Ask $him about $his feelings">><<replace "#miniscene">><<include "FFeelings">><br> <</replace>><</link>> - | <<link "Make $him beg">><<replace "#miniscene">><<include "FBeg">><br> <</replace>><</link>> + <<if $PC.dick > 0>> + | <<link "Make $him beg">><<replace "#miniscene">><<include "FBeg">><br> <</replace>><</link>> + <</if>> <</if>> <<if $activeSlave.devotion >= 100 && $activeSlave.relationship < 0 && $activeSlave.relationship > -3>> | <<link "Talk to $him about relationships" "Matchmaking">><<set $subSlave = 0, $eventSlave = $activeSlave>><</link>> @@ -491,7 +491,7 @@ <<case "be your Head Girl">> //$He is your Head Girl and is not available for other work// <<case "recruit girls">> - //$He is recruiting girls and is not available for other work// + //$He is recruiting slaves and is not available for other work// <<case "be the Nurse">> //$He is the Nurse and is not available for other work// <<case "be the Attendant">> @@ -846,7 +846,7 @@ | <<link "Bit gag">><<set $activeSlave.collar = "bit gag">><<replace "#collar">>$activeSlave.collar<</replace>><</link>> | <<link "Neck corset">><<set $activeSlave.collar = "neck corset">><<replace "#collar">>$activeSlave.collar<</replace>><</link>> | <<link "Porcelain mask">><<set $activeSlave.collar = "porcelain mask">><<replace "#collar">>$activeSlave.collar<</replace>><</link>> - + <<if $activeSlave.missingArms != 3>> <br>Arm accessory: ''<span id="armAccessory">$activeSlave.armAccessory</span>.'' <<link "None">><<set $activeSlave.armAccessory = "none">><<replace "#armAccessory">>$activeSlave.armAccessory<</replace>><</link>> @@ -1241,7 +1241,7 @@ Aphrodisiacs: <span id="aphrodisiacs"><strong><<if $activeSlave.aphrodisiacs > 1 <</if>> <<elseif ($activeSlave.preg > $activeSlave.pregData.minLiveBirth)>> <<link "Give $him a cesarean section" "csec">><</link>> - <<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $propOutcome == 1 && ($activeSlave.pregSource == -1 || $activeSlave.pregSource == -6)>> + <<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $propOutcome == 1 && $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1 && ($activeSlave.pregSource == -1 || $activeSlave.pregSource == -6)>> //You are forbidden from aborting an Elite child// <<elseif ($activeSlave.preg > 0)>> <<link "Abort $his pregnancy" "Abort">><</link>> diff --git a/src/uncategorized/spa.tw b/src/uncategorized/spa.tw index 2a1ab9bce4b2e2e9f522bc7ae701795d97824759..cfb66549938bd258833351cfe41c5e2cb0e3ad1e 100644 --- a/src/uncategorized/spa.tw +++ b/src/uncategorized/spa.tw @@ -30,7 +30,7 @@ $spaNameCaps <<case "Repopulation Focus">> is comfortable, with waterproof cushions lining the pools. It is equipped with all sorts of devices to aid pregnant slaves, including lifts to help them in and out of the water, baths just for their feet, and all around showers to help clean and moisturize difficult to reach spots. <<case "Eugenics">> - is comfortable, albeit split in half. One side for the lower classes' slaves, and the other for the elite and their pets. + is comfortable, albeit split in half. One side for the lower classes' slaves, and the other for the Elite and their pets. <<case "Gender Radicalist">> is comfortable, with waterproof cushions lining the pools. There are screens on the walls showing slave girls with all different varieties of genitalia orgasming from penetration, to keep the idea at the forefront of the slaves' minds. <<case "Gender Fundamentalist">> diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw index 267169bf5f06da93ecbf86bac57f655d5d572366..afee47b5987607f9d1f54089ed6117ba943d21ef 100644 --- a/src/uncategorized/spaReport.tw +++ b/src/uncategorized/spaReport.tw @@ -227,7 +227,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef smlImg"> - <<SlaveArt $slaves[_FLs] 0 0>> + <<= SlaveArt($slaves[_FLs], 0, 0)>> </div> <</if>> /* 000-250-006 */ @@ -289,7 +289,7 @@ /* 000-250-006 */ <<if $seeImages && $seeReportImages>> <div class="imageRef smlImg"> - <<SlaveArt $slaves[$i] 0 0>> + <<= SlaveArt($slaves[$i], 0, 0)>> </div> <</if>> /* 000-250-006 */ diff --git a/src/uncategorized/storyCaption.tw b/src/uncategorized/storyCaption.tw index a607196718363904f690bcf5e885cf17dbcf6b1a..c18436642d6c0fe33e3cc92e8edfa5d04dd13615 100644 --- a/src/uncategorized/storyCaption.tw +++ b/src/uncategorized/storyCaption.tw @@ -519,7 +519,7 @@ <<if ($corpSpecToken > 0) && ($corpSpecTimer == 0)>>@@.yellow;[!]@@<</if>> <</if>> - <<if (_Pass === "Main") && $newModelUI === 1>> <br> + <<if _Pass === "Main" || _Pass === "Manage Arcology">> <br> <<if $FSAnnounced>> <span id="FSButton"> <br> <<link [[Future Societies|Future Society][$nextButton = "Back", $nextLink = "Main"]]>><</link>> @@ -532,146 +532,147 @@ </span> @@.cyan;[T]@@ - <<elseif (_Pass === "Main") && $newModelUI === 0>> <br> - <<if ($HGSuite)>> - <br> <<link "$HGSuiteNameCaps""Head Girl Suite">><</link>> - <<if $abbreviateSidebar == 2>> - <<if $HeadGirl != 0>>(HG<<if $HGSuiteSlaves > 0>>, 1)<<else>>)<</if>><</if>> - <<else>> - <<if $HeadGirl != 0>>(HG<<if $HGSuiteSlaves > 0>> and slave<<else>>)<</if>><</if>> + <<if $newModelUI === 0 && _Pass === "Main">> <br> + <<if ($HGSuite)>> + <br> <<link "$HGSuiteNameCaps""Head Girl Suite">><</link>> + <<if $abbreviateSidebar == 2>> + <<if $HeadGirl != 0>>(HG<<if $HGSuiteSlaves > 0>>, 1)<<else>>)<</if>><</if>> + <<else>> + <<if $HeadGirl != 0>>(HG<<if $HGSuiteSlaves > 0>> and slave<<else>>)<</if>><</if>> + <</if>> <</if>> - <</if>> - <<if ($dojo > 1)>> - <br>[[Armory|BG Select]] - <<if $Bodyguard != 0>> - (BG) + <<if ($dojo > 1)>> + <br>[[Armory|BG Select]] + <<if $Bodyguard != 0>> + (BG) + <</if>> <</if>> - <</if>> - <<if ($brothel)>> - <br> <<link "$brothelNameCaps""Brothel">><</link>> - <<if $abbreviateSidebar == 2>> - ($brothelSlaves/<<print $brothel>> whores<<if $Madam>>, madam<</if>>) - <<else>> - ($brothelSlaves/<<print $brothel>><<if $Madam>>, L<</if>>) + <<if ($brothel)>> + <br> <<link "$brothelNameCaps""Brothel">><</link>> + <<if $abbreviateSidebar == 2>> + ($brothelSlaves/<<print $brothel>> whores<<if $Madam>>, madam<</if>>) + <<else>> + ($brothelSlaves/<<print $brothel>><<if $Madam>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($club)>> - <br> <<link "$clubNameCaps""Club">><</link>> - <<if $abbreviateSidebar == 2>> - ($clubSlaves/<<print $club>> sluts<<if $DJ>>, DJ<</if>>) - <<else>> - ($clubSlaves/<<print $club>><<if $DJ>>, L<</if>>) + <<if ($club)>> + <br> <<link "$clubNameCaps""Club">><</link>> + <<if $abbreviateSidebar == 2>> + ($clubSlaves/<<print $club>> sluts<<if $DJ>>, DJ<</if>>) + <<else>> + ($clubSlaves/<<print $club>><<if $DJ>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($arcade)>> - <br> <<link "$arcadeNameCaps""Arcade">><</link>> - <<if $abbreviateSidebar == 2>> - ($arcadeSlaves/<<print $arcade>> inmates) - <<else>> - ($arcadeSlaves/<<print $arcade>>) + <<if ($arcade)>> + <br> <<link "$arcadeNameCaps""Arcade">><</link>> + <<if $abbreviateSidebar == 2>> + ($arcadeSlaves/<<print $arcade>> inmates) + <<else>> + ($arcadeSlaves/<<print $arcade>>) + <</if>> <</if>> - <</if>> - <<if ($dairy)>> - <br> <<link "$dairyNameCaps""Dairy">><</link>> - <<set _SCapT9 = $bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren>> - <<if $abbreviateSidebar == 2>> - ($dairySlaves<<if _SCapT9>>+_SCapT9<</if>>/<<print $dairy>> cows<<if $Milkmaid>>, milkmaid<</if>>) - <<else>> - ($dairySlaves<<if _SCapT9>>+_SCapT9<</if>>/<<print $dairy>><<if $Milkmaid>>, L<</if>>) + <<if ($dairy)>> + <br> <<link "$dairyNameCaps""Dairy">><</link>> + <<set _SCapT9 = $bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren>> + <<if $abbreviateSidebar == 2>> + ($dairySlaves<<if _SCapT9>>+_SCapT9<</if>>/<<print $dairy>> cows<<if $Milkmaid>>, milkmaid<</if>>) + <<else>> + ($dairySlaves<<if _SCapT9>>+_SCapT9<</if>>/<<print $dairy>><<if $Milkmaid>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($farmyard)>> - <br> <<link "$farmyardNameCaps""Farmyard">><</link>> - <<if $abbreviateSidebar == 2>> - ($farmyardSlaves/$farmyard farmhands<<if $Farmer>>, farmer<</if>>) - <<else>> - ($farmyardSlaves/$farmyard<<if $Farmer>>, L<</if>>) + <<if ($farmyard)>> + <br> <<link "$farmyardNameCaps""Farmyard">><</link>> + <<if $abbreviateSidebar == 2>> + ($farmyardSlaves/$farmyard farmhands<<if $Farmer>>, farmer<</if>>) + <<else>> + ($farmyardSlaves/$farmyard<<if $Farmer>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($servantsQuarters)>> - <br> <<link "$servantsQuartersNameCaps""Servants' Quarters">><</link>> - <<if $abbreviateSidebar == 2>> - ($servantsQuartersSlaves/$servantsQuarters servants<<if $Stewardess>>, stewardess<</if>>) - <<else>> - ($servantsQuartersSlaves/$servantsQuarters<<if $Stewardess>>, L<</if>>) + <<if ($servantsQuarters)>> + <br> <<link "$servantsQuartersNameCaps""Servants' Quarters">><</link>> + <<if $abbreviateSidebar == 2>> + ($servantsQuartersSlaves/$servantsQuarters servants<<if $Stewardess>>, stewardess<</if>>) + <<else>> + ($servantsQuartersSlaves/$servantsQuarters<<if $Stewardess>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($masterSuite)>> - <br> <<link "$masterSuiteNameCaps""Master Suite">><</link>> - <<if $abbreviateSidebar == 2>> - ($masterSuiteSlaves/$masterSuite <<if $masterSuiteSlaves != 1>>fucktoys<<else>>fucktoy<</if>><<if $Concubine>>, Concubine<</if>>) - <<else>> - ($masterSuiteSlaves/$masterSuite<<if $Concubine>>, C<</if>>) + <<if ($masterSuite)>> + <br> <<link "$masterSuiteNameCaps""Master Suite">><</link>> + <<if $abbreviateSidebar == 2>> + ($masterSuiteSlaves/$masterSuite <<if $masterSuiteSlaves != 1>>fucktoys<<else>>fucktoy<</if>><<if $Concubine>>, Concubine<</if>>) + <<else>> + ($masterSuiteSlaves/$masterSuite<<if $Concubine>>, C<</if>>) + <</if>> <</if>> - <</if>> - <<if ($schoolroom)>> - <br> <<link "$schoolroomNameCaps""Schoolroom">><</link>> - <<if $abbreviateSidebar == 2>> - ($schoolroomSlaves/$schoolroom <<if $schoolroomSlaves != 1>>students<<else>>student<</if>><<if $Schoolteacher>>, schoolteacher<</if>>) - <<else>> - ($schoolroomSlaves/$schoolroom<<if $Schoolteacher>>, L<</if>>) + <<if ($schoolroom)>> + <br> <<link "$schoolroomNameCaps""Schoolroom">><</link>> + <<if $abbreviateSidebar == 2>> + ($schoolroomSlaves/$schoolroom <<if $schoolroomSlaves != 1>>students<<else>>student<</if>><<if $Schoolteacher>>, schoolteacher<</if>>) + <<else>> + ($schoolroomSlaves/$schoolroom<<if $Schoolteacher>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($spa)>> - <br> <<link "$spaNameCaps""Spa">><</link>> - <<if $abbreviateSidebar == 2>> - ($spaSlaves/$spa <<if $spaSlaves != 1>>bathers<<else>>bathing<</if>><<if $Attendant>>, attendant<</if>>) - <<else>> - ($spaSlaves/$spa<<if $Attendant>>, L<</if>>) + <<if ($spa)>> + <br> <<link "$spaNameCaps""Spa">><</link>> + <<if $abbreviateSidebar == 2>> + ($spaSlaves/$spa <<if $spaSlaves != 1>>bathers<<else>>bathing<</if>><<if $Attendant>>, attendant<</if>>) + <<else>> + ($spaSlaves/$spa<<if $Attendant>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($nursery)>> - <br> <<link "$nurseryNameCaps""Nursery">><</link>> - <<if $abbreviateSidebar == 2>> - (<<if $nursery-$nurseryBabies == 0>>No empty rooms<<elseif $nursery-$nurseryBabies == 1>>1 empty room<<else>><<print $nursery-$nurseryBabies>> empty rooms<</if>>, $nurserySlaves/$nurseryNannies <<if $nurserySlaves != 1>>nannies<<else>>nanny<</if>><<if $Matron>>, attendant<</if>>) - <<else>> - ($nurseryBabies/$nursery, $nurserySlaves/$nurseryNannies<<if $Matron>>, L<</if>>) + <<if ($nursery)>> + <br> <<link "$nurseryNameCaps""Nursery">><</link>> + <<if $abbreviateSidebar == 2>> + (<<if $nursery-$nurseryBabies == 0>>No empty rooms<<elseif $nursery-$nurseryBabies == 1>>1 empty room<<else>><<print $nursery-$nurseryBabies>> empty rooms<</if>>, $nurserySlaves/$nurseryNannies <<if $nurserySlaves != 1>>nannies<<else>>nanny<</if>><<if $Matron>>, attendant<</if>>) + <<else>> + ($nurseryBabies/$nursery, $nurserySlaves/$nurseryNannies<<if $Matron>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($clinic)>> - <br> <<link "$clinicNameCaps""Clinic">><</link>> - <<if $abbreviateSidebar == 2>> - ($clinicSlaves/$clinic <<if $clinicSlaves != 1>>patients<<else>>patient<</if>><<if $Nurse>>, nurse<</if>>) - <<else>> - ($clinicSlaves/$clinic<<if $Nurse>>, L<</if>>) + <<if ($clinic)>> + <br> <<link "$clinicNameCaps""Clinic">><</link>> + <<if $abbreviateSidebar == 2>> + ($clinicSlaves/$clinic <<if $clinicSlaves != 1>>patients<<else>>patient<</if>><<if $Nurse>>, nurse<</if>>) + <<else>> + ($clinicSlaves/$clinic<<if $Nurse>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($cellblock)>> - <br> <<link "$cellblockNameCaps""Cellblock">><</link>> - <<if $abbreviateSidebar == 2>> - ($cellblockSlaves/$cellblock <<if $cellblockSlaves != 1>>prisoners<<else>>prisoner<</if>><<if $Wardeness>>, wardeness<</if>>) - <<else>> - ($cellblockSlaves/$cellblock<<if $Wardeness>>, L<</if>>) + <<if ($cellblock)>> + <br> <<link "$cellblockNameCaps""Cellblock">><</link>> + <<if $abbreviateSidebar == 2>> + ($cellblockSlaves/$cellblock <<if $cellblockSlaves != 1>>prisoners<<else>>prisoner<</if>><<if $Wardeness>>, wardeness<</if>>) + <<else>> + ($cellblockSlaves/$cellblock<<if $Wardeness>>, L<</if>>) + <</if>> <</if>> - <</if>> - <<if ($incubator)>> - <br> <<link "$incubatorNameCaps""Incubator">><</link>> - <<if $abbreviateSidebar == 2>> - (<<if $incubator-$incubatorSlaves == 0>>No empty tanks<<elseif $incubator-$incubatorSlaves == 1>>1 empty tank<<else>><<print $incubator-$incubatorSlaves>> empty tanks<</if>>) - <<else>> - ($incubatorSlaves/$incubator) + <<if ($incubator)>> + <br> <<link "$incubatorNameCaps""Incubator">><</link>> + <<if $abbreviateSidebar == 2>> + (<<if $incubator-$incubatorSlaves == 0>>No empty tanks<<elseif $incubator-$incubatorSlaves == 1>>1 empty tank<<else>><<print $incubator-$incubatorSlaves>> empty tanks<</if>>) + <<else>> + ($incubatorSlaves/$incubator) + <</if>> + <<if $readySlaves > 0>> @@.yellow;[!]@@ <</if>> <</if>> - <<if $readySlaves > 0>> @@.yellow;[!]@@ <</if>> - <</if>> - <<if ($pit)>> - <br> <<link "$pitNameCaps""Pit">><</link>> - <<set _SCapT = $fighterIDs.length>> - <<if $abbreviateSidebar == 2>> - (_SCapT <<if _SCapT != 1>>combatants<<else>>combatant<</if>>) - <<else>> - (_SCapT) + <<if ($pit)>> + <br> <<link "$pitNameCaps""Pit">><</link>> + <<set _SCapT = $fighterIDs.length>> + <<if $abbreviateSidebar == 2>> + (_SCapT <<if _SCapT != 1>>combatants<<else>>combatant<</if>>) + <<else>> + (_SCapT) + <</if>> + <br> <</if>> - <br> - <</if>> - <</if>> /* Closes UI state check */ + <</if>> /* Closes UI state check */ + <</if>> /* _Pass === "Main" || _Pass === "Manage Arcology"*/ <<if _Pass === "Manage Arcology">> <span id="Security"> @@ -799,7 +800,7 @@ <</if>> /* Closes Pass state check */ <br><br> - <<if !["Options", "Summary Options", "Description Options"].includes(_Pass)>> + <<if !["Description Options", "Options", "Summary Options"].includes(_Pass)>> <span id="optionsButton"> <<link [[Game Options|Options][$nextButton = "Back", $nextLink = _Pass]]>><</link>> </span> diff --git a/src/uncategorized/universalRules.tw b/src/uncategorized/universalRules.tw index 66d61d13a645fb5acb0752f2576de4b782c2b1ba..6b792b21a354bae49818a6b18b5e26e53475d2f9 100644 --- a/src/uncategorized/universalRules.tw +++ b/src/uncategorized/universalRules.tw @@ -70,6 +70,81 @@ Slave requests for growth hormones are ''Branding for slaves'' <br> +Choose an official brand. Any slave marked with this brand will be connected to your reputation, and will receive a beauty boost or penalty depending on how high or low that reputation is. +<br> +Use ''$brandDesign.official'' or choose another brand: +[[Your slaving emblem|Universal Rules][$brandDesign.official = "your personal symbol"]] +| [[Your initials|Universal Rules][$brandDesign.official = "your initials"]] +<br> +[[SLUT|Universal Rules][$brandDesign.official = "SLUT"]] +| [[WHORE|Universal Rules][$brandDesign.official = "WHORE"]] +| [[SLAVE|Universal Rules][$brandDesign.official = "SLAVE"]] +| [[COW|Universal Rules][$brandDesign.official = "COW"]] +| [[MEAT|Universal Rules][$brandDesign.official = "MEAT"]] +| [[CUMDUMP|Universal Rules][$brandDesign.official = "CUMDUMP"]] +| [[LOVER|Universal Rules][$brandDesign.official = "LOVER"]] +<br> +[[Pussy symbol|Universal Rules][$brandDesign.official = "a pussy symbol"]] +| [[Anus symbol|Universal Rules][$brandDesign.official = "an anus symbol"]] +| [[Penis symbol|Universal Rules][$brandDesign.official = "a penis symbol"]] +<br> +[[Lady|Universal Rules][$brandDesign.official = "a lady silhouette"]] +| [[Princess|Universal Rules][$brandDesign.official = "a princess silhouette"]] +| [[Queen|Universal Rules][$brandDesign.official = "a queen silhouette"]] +| [[Angel|Universal Rules][$brandDesign.official = "an angel silhouette"]] +| [[Devil|Universal Rules][$brandDesign.official = "a devil silhouette"]] +<<if ($arcologies[0].FSSupremacist != "unset") && ($activeSlave.race != $arcologies[0].FSSupremacistRace)>> +| //FS// [[Racial Slur|Universal Rules][$brandDesign.official = "a racial slur"]] <</if>> +<<if ($arcologies[0].FSSubjugationist != "unset") && ($activeSlave.race == $arcologies[0].FSSubjugationistRace)>> +| //FS// [[Racial Slur|Universal Rules][$brandDesign.official = "a racial slur"]] <</if>> +<<if ($arcologies[0].FSRepopulationFocus != "unset")>> +| //FS// [[Birth Count|Universal Rules][$brandDesign.official = "the number of children $he has birthed"]] <</if>> +<<if ($arcologies[0].FSGenderRadicalist != "unset") || ($arcologies[0].FSGenderFundamentalist != "unset")>> +| //FS// [[Gender Symbol|Universal Rules][$brandDesign.official = "a gender symbol"]] <</if>> +<<if ($arcologies[0].FSPaternalist != "unset")>> +| //FS// [[Personal Symbol|Universal Rules][$brandDesign.official = "$his own personal symbol"]] <</if>> +<<if ($arcologies[0].FSDegradationist != "unset")>> +| //FS// [[Chain Symbol|Universal Rules][$brandDesign.official = "a chain symbol"]] <</if>> +<<if ($arcologies[0].FSBodyPurist != "unset")>> +| //FS// [[Vitruvian Man|Universal Rules][$brandDesign.official = "a Vitruvian man"]] <</if>> +<<if ($arcologies[0].FSTransformationFetishist != "unset")>> +| //FS// [[Scalpel|Universal Rules][$brandDesign.official = "a scalpel"]] <</if>> +<<if ($arcologies[0].FSYouthPreferentialist != "unset")>> +| //FS// [[Virginity Status|Universal Rules][$brandDesign.official = "$his virginity status"]] <</if>> +<<if ($arcologies[0].FSMaturityPreferentialist != "unset")>> +| //FS// [[Sexual Skill Info|Universal Rules][$brandDesign.official = "$his sexual skills"]] <</if>> +<<if ($arcologies[0].FSSlimnessEnthusiast != "unset")>> +| //FS// [[Breast Floor|Universal Rules][$brandDesign.official = "$his absolute minimum breast size"]] <</if>> +<<if ($arcologies[0].FSAssetExpansionist != "unset")>> +| //FS// [[Breast Ceiling|Universal Rules][$brandDesign.official = "$his absolute maximum breast size"]] <</if>> +<<if ($arcologies[0].FSHedonisticDecadence != "unset")>> +| //FS// [[Weight Record|Universal Rules][$brandDesign.official = "$his highest weigh-in"]] <</if>> +<<if ($arcologies[0].FSHedonisticDecadence != "unset") && $PC.refreshmentType == 2>> +| //FS// [[Favorite Food|Universal Rules][$brandDesign.official = "a big helping of "+$PC.refreshment]] <</if>> +<<if ($arcologies[0].FSPastoralist != "unset")>> +| //FS// [[Product Quality|Universal Rules][$brandDesign.official = "$his body product quality"]] <</if>> +<<if ($arcologies[0].FSPhysicalIdealist != "unset")>> +| //FS// [[Deadlift Info|Universal Rules][$brandDesign.official = "$his deadlift record"]] <</if>> +<<if ($arcologies[0].FSChattelReligionist != "unset")>> +| //FS// [[Religious Symbol|Universal Rules][$brandDesign.official = "a religious symbol"]] <</if>> +<<if ($arcologies[0].FSRomanRevivalist != "unset")>> +| //FS// [[Republican Crest|Universal Rules][$brandDesign.official = "the crest of your Republic"]] <</if>> +<<if ($arcologies[0].FSAztecRevivalist != "unset")>> +| //FS// [[Seven Serpents|Universal Rules][$brandDesign.official = "the symbol of the Aztec gods"]] <</if>> +<<if ($arcologies[0].FSEgyptianRevivalist != "unset")>> +| //FS// [[Dynastic Sigil|Universal Rules][$brandDesign.official = "the sigil of your Dynasty"]] <</if>> +<<if ($arcologies[0].FSEdoRevivalist != "unset")>> +| //FS// [[Mon|Universal Rules][$brandDesign.official = "the Shogunate's mon"]] <</if>> +<<if ($arcologies[0].FSArabianRevivalist != "unset")>> +| //FS// [[Caliphate Symbol|Universal Rules][$brandDesign.official = "a symbol of the Caliphate"]] <</if>> +<<if ($arcologies[0].FSChineseRevivalist != "unset")>> +| //FS// [[Imperial Seal|Universal Rules][$brandDesign.official = "your Imperial Seal"]] <</if>> + +<br> +Or design your own: <<textbox "$brandDesign.official" $brandDesign.official "Universal Rules">> //For best results, use a single word// + +<br><br> + Choose a default site for slaves to be branded. Current site is ''$brandTarget.primary'': [[Ears|Universal Rules][$brandTarget.primary = "ear"]] @@ -95,7 +170,7 @@ Choose a default site for slaves to be branded. Current site is ''$brandTarget.p | [[Lower Back|Universal Rules][$brandTarget.primary = "lower back"]] <br> -<<if ["ear", "upper arm", "lower arm", "wrist", "hand", "thigh", "calve", "ankle", "foot", "penis", "testicle"].includes($brandTarget.primary)>> +<<if ["ankle", "calve", "ear", "foot", "hand", "lower arm", "penis", "testicle", "thigh", "upper arm", "wrist"].includes($brandTarget.primary)>> It's possible that ''$brandTarget.primary'' may be missing from a slave. Choose a fallback in case it is not available: Current backup is ''$brandTarget.secondary'': /* Material copied from bodyModification, but please leave commented out any sections that may not be on ALL slaves. */ diff --git a/src/uncategorized/walkPast.tw b/src/uncategorized/walkPast.tw index d144949698d9c85b05b72b34c41a076f8611d5e0..785b53bb5d886dfd1a2ea372cec6e9413371c9a0 100644 --- a/src/uncategorized/walkPast.tw +++ b/src/uncategorized/walkPast.tw @@ -966,7 +966,7 @@ <<elseif ($activeSlave.dick != 0)>> $His cock sticks out through a hole in the latex. <<else>> - As one of the only islands in the sea of black latex, $his pussy is eye-catching. + As one of the only islands in the sea of <<if !$activeSlave.clothingBaseColor>>black <</if>>latex, $his pussy is eye-catching. <</if>> <<case "attractive lingerie for a pregnant woman">> <<if ($activeSlave.dick > 4) && ($activeSlave.balls > 3)>> diff --git a/src/uncategorized/wardrobe.tw b/src/uncategorized/wardrobe.tw index 102c4f96836e8694a1230225cf4ab92a2f9c03c8..4f56c7e101e7a58ad0880a55f4ac7ce26724e4d3 100644 --- a/src/uncategorized/wardrobe.tw +++ b/src/uncategorized/wardrobe.tw @@ -54,7 +54,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a bunny outfit">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a bunny outfit")>> @@ -69,7 +69,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "conservative clothing">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("conservative clothing")>> @@ -86,7 +86,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "chains">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("chains")>> @@ -101,7 +101,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "Western clothing">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("Western clothing")>> @@ -118,7 +118,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "body oil">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("body oil")>> @@ -133,7 +133,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "stretch pants and a crop-top">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("stretch pants and a crop-top")>> @@ -150,7 +150,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a chattel habit">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a chattel habit")>> @@ -164,7 +164,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a maternity dress">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a maternity dress")>> @@ -181,7 +181,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "attractive lingerie for a pregnant woman">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("attractive lingerie for a pregnant woman")>> @@ -201,7 +201,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.collar = "ancient Egyptian">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<set _model.collar = "none">> @@ -217,7 +217,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a toga">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a toga")>> @@ -234,7 +234,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a huipil">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a huipil")>> @@ -249,7 +249,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a kimono">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a kimono")>> @@ -266,7 +266,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "harem gauze">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("harem gauze")>> @@ -281,7 +281,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a slutty qipao">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a slutty qipao")>> @@ -297,10 +297,10 @@ The room containing all the clothes and accessories you have available to dress <tr> <td> -<<set _model.clothes = either("battlearmor", "a military uniform", "a red army uniform", "battledress")>> +<<set _model.clothes = either("a military uniform", "a red army uniform", "battlearmor", "battledress")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("battlearmor")>> @@ -312,10 +312,10 @@ The room containing all the clothes and accessories you have available to dress </td> <td> -<<set _model.clothes = either("a biyelgee costume", "a dirndl", "lederhosen", "a mounty outfit", "a hanbok")>> +<<set _model.clothes = either("a biyelgee costume", "a dirndl", "a hanbok", "a mounty outfit", "lederhosen")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a dirndl")>> @@ -332,7 +332,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = either("a burqa", "a niqab and abaya")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a burqa")>> @@ -344,10 +344,10 @@ The room containing all the clothes and accessories you have available to dress </td> <td> -<<set _model.clothes = either("a button-up shirt and panties", "a button-up shirt", "cutoffs", "jeans", "leather pants and a tube top", "leather pants", "an oversized t-shirt", "a sweater and cutoffs", "a sweater and panties", "a sweater", "a t-shirt and jeans", "a t-shirt and panties", "a t-shirt", "a tank-top and panties", "a tank-top", "a tube top")>> +<<set _model.clothes = either("a button-up shirt and panties", "a button-up shirt", "a sweater and cutoffs", "a sweater and panties", "a sweater", "a t-shirt and jeans", "a t-shirt and panties", "a t-shirt", "a tank-top and panties", "a tank-top", "a tube top", "an oversized t-shirt", "cutoffs", "jeans", "leather pants and a tube top", "leather pants")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("jeans")>> @@ -361,10 +361,10 @@ The room containing all the clothes and accessories you have available to dress <tr> <td> -<<set _model.clothes = either("a police uniform", "nice business attire", "a nice nurse outfit")>> +<<set _model.clothes = either("a nice nurse outfit", "a police uniform", "nice business attire")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a police uniform")>> @@ -376,10 +376,10 @@ The room containing all the clothes and accessories you have available to dress </td> <td> -<<set _model.clothes = either("a gothic lolita dress", "a ball gown")>> +<<set _model.clothes = either("a ball gown", "a gothic lolita dress")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a gothic lolita dress")>> @@ -396,7 +396,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = either("a cybersuit", "a latex catsuit")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a cybersuit")>> @@ -408,10 +408,10 @@ The room containing all the clothes and accessories you have available to dress </td> <td> -<<set _model.clothes = either("boyshorts", "a bra", "kitty lingerie", "panties and pasties", "a skimpy loincloth", "a thong", "pasties")>> +<<set _model.clothes = either("a bra", "a skimpy loincloth", "a thong", "boyshorts", "kitty lingerie", "panties and pasties", "pasties")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("boyshorts")>> @@ -425,10 +425,10 @@ The room containing all the clothes and accessories you have available to dress <tr> <td> -<<set _model.clothes = either("sport shorts and a sports bra", "sport shorts", "a sports bra")>> +<<set _model.clothes = either("a sports bra", "sport shorts and a sports bra", "sport shorts")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("sport shorts and a sports bra")>> @@ -440,10 +440,10 @@ The room containing all the clothes and accessories you have available to dress </td> <td> -<<set _model.clothes = either("a one-piece swimsuit", "a monokini")>> +<<set _model.clothes = either("a monokini", "a one-piece swimsuit")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a one-piece swimsuit")>> @@ -460,7 +460,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = either("a nice pony outfit", "a slutty pony outfit")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a nice pony outfit")>> @@ -472,10 +472,10 @@ The room containing all the clothes and accessories you have available to dress </td> <td> -<<set _model.clothes = either("a klan robe", "a slutty klan robe", "a schutzstaffel uniform", "a slutty schutzstaffel uniform")>> +<<set _model.clothes = either("a klan robe", "a schutzstaffel uniform", "a slutty klan robe", "a slutty schutzstaffel uniform")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a schutzstaffel uniform")>> @@ -492,7 +492,7 @@ The room containing all the clothes and accessories you have available to dress <<set _model.clothes = "a Santa dress">> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("a Santa dress")>> @@ -504,10 +504,10 @@ The room containing all the clothes and accessories you have available to dress </td> <td> -<<set _model.clothes = either("striped panties","a striped bra", "striped underwear")>> +<<set _model.clothes = either("a striped bra", "striped panties", "striped underwear")>> <<if $seeImages == 1>> <div class= "imageRef smlImg"> - <<SlaveArt _model 1 0>> + <<= SlaveArt(_model, 1, 0)>> </div> <</if>> <<if !isItemAccessible("striped panties")>> diff --git a/src/uncategorized/wardrobeUse.tw b/src/uncategorized/wardrobeUse.tw index e72cf8cd6339400158c57aea7d8b457548cb589f..6f8310b32a2b8a39b3be975525cefbe8f6eb140c 100644 --- a/src/uncategorized/wardrobeUse.tw +++ b/src/uncategorized/wardrobeUse.tw @@ -17,9 +17,9 @@ /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> - <div class="imageRef lrgVector"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <<else>> - <div class="imageRef lrgRender"><div class="mask"> </div><<SlaveArt $activeSlave 3 0>></div> + <div class="imageRef lrgRender"><div class="mask"> </div><<= SlaveArt($activeSlave, 3, 0)>></div> <</if>> <</if>> /* 000-250-006 */ diff --git a/src/utility/birthWidgets.tw b/src/utility/birthWidgets.tw index ce8a6393dfd972a35b34720344bf3e8156357bdb..6f2b22a9e8eaacaaed2fb929215c45085a36c2ef 100644 --- a/src/utility/birthWidgets.tw +++ b/src/utility/birthWidgets.tw @@ -3,12 +3,24 @@ <<widget "Birth">> <br> <<if $birthDamage > 5 || $universalRulesCSec == 1>> - <<if $universalRulesCSec == 1>> + <<if $universalRulesCSec == 1 || ($slaves[$i].mpreg == 0 && $slaves[$i].vagina < 0)>> <<set $csec = 1, $slaves[$i].cSec = 1>> <<if $clinic != 0>> - $slaves[$i].slaveName is taken to $clinicName since $he is scheduled for a cesarean section. $He is helped from $his clothes and into a comfortable hospital bed to relax until the surgery suite is prepped. After several minutes, $he is transferred to the surgery wing. Following $his c-section, $he is returned to the recovery wing to rest. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he is left under observation to make sure $he recovers. + $slaves[$i].slaveName is taken to $clinicName since $he + <<if ($slaves[$i].mpreg == 0 && $slaves[$i].vagina < 0)>> + will require a cesarean section to give birth. + <<else>> + is scheduled for a cesarean section. + <</if>> + $He is helped from $his clothes and into a comfortable hospital bed to relax until the surgery suite is prepped. After several minutes, $he is transferred to the surgery wing. Following $his c-section, $he is returned to the recovery wing to rest. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he is left under observation to make sure $he recovers. <<else>> - $slaves[$i].slaveName is taken to the autosurgery, since $he is scheduled for a cesarean section. $He is stripped from $his clothes and set up on the operating table. $He is quickly sedated, and subjected to a c-section in order to avoid potential problems and preserve $his <<if $slaves[$i].mpreg == 1>>asshole<<else>>vagina<</if>>. The surgery is quick, and $he is moved to a bed to recover. When $he awakes, $his child<<if $slaves[$i].pregType > 1>>ren have<<else>> has<</if>> already been taken away. + $slaves[$i].slaveName is taken to the autosurgery, since $he + <<if ($slaves[$i].mpreg == 0 && $slaves[$i].vagina < 0)>> + will require a cesarean section to give birth. $He is stripped from $his clothes and set up on the operating table. $He is quickly sedated, and subjected to a c-section as $he has no hole to give birth through. + <<else>> + is scheduled for a cesarean section. $He is stripped from $his clothes and set up on the operating table. $He is quickly sedated, and subjected to a c-section in order to avoid potential problems and preserve $his <<if $slaves[$i].mpreg == 1>>asshole<<else>>vagina<</if>>. + <</if>> + The surgery is quick, and $he is moved to a bed to recover. When $he awakes, $his child<<if $slaves[$i].pregType > 1>>ren have<<else>> has<</if>> already been taken away. <</if>> <<else>> <<if $clinic != 0>> @@ -988,7 +1000,7 @@ <<if $slaves[$i].fetish == "mindbroken">> While soaking in the spa's pool, $slaves[$i].slaveName's water breaks. As $he begins to ready $himself for birth, <<if $Attendant != 0>>$Attendant.slaveName pulls $him out of the pool and glares at $him<<else>>the other bathers watch curiously<</if>>. <<ClothingBirth>> - $He and $his child<<if $slaves[$i].pregType > 1>>ren<</if>> are quickly dried off as $he begins nursing them. A servant soon arrives to take $his children away. + $He and $his child<<if $slaves[$i].pregType > 1>>ren<</if>> are quickly dried off as $he begins nursing them. A servant soon arrives to take $his child<<if $slaves[$i].pregType > 1>>ren<</if>> away. <<else>> While changing in the changing room before a nice soak,$slaves[$i].slaveName's water breaks. $He hurries to find someone to help $him but only finds curious onlookers. Without any choice left, $he assumes a birthing position. <<set $humiliation = 1>> @@ -999,7 +1011,7 @@ <<if $slaves[$i].fetish == "mindbroken">> While soaking in the spa's pool, $slaves[$i].slaveName's water breaks. As $he begins to ready $himself for birth, <<if $Attendant != 0>>$Attendant.slaveName pulls $him out of the pool and glares at $him<<else>>the other bathers watch curiously<</if>>. <<ClothingBirth>> - $He and $his child<<if $slaves[$i].pregType > 1>>ren<</if>> are quickly dried off as $he begins nursing them. A servant soon arrives to take $his children away. + $He and $his child<<if $slaves[$i].pregType > 1>>ren<</if>> are quickly dried off as $he begins nursing them. A servant soon arrives to take $his child<<if $slaves[$i].pregType > 1>>ren<</if>> away. <<else>> While heading for the changing room before a nice soak,$slaves[$i].slaveName's water breaks. $He hurries into the changing room only to find it unusually crowded. Without any choice left, $he assumes a birthing position. <<set $humiliation = 1>> @@ -1270,8 +1282,8 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared <</switch>> -<<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && ($slaves[$i].pregSource == -1 || $slaves[$i].pregSource == -6) && $eugenicsFullControl != 1>> - <br>The Societal Elite @@.red;are furious@@ you would allow an elite child to perish under your watch<<if _curBabies > 1>>, let alone multiple<</if>>. +<<if $arcologies[0].FSRestart != "unset" && $slaves[$i].breedingMark == 1 && $propOutcome == 1 && ($slaves[$i].pregSource == -1 || $slaves[$i].pregSource == -6) && $eugenicsFullControl != 1>> + <br>The Societal Elite @@.red;are furious@@ you would allow an Elite child to perish under your watch<<if _curBabies > 1>>, let alone multiple<</if>>. <<set $failedElite += 100>> <</if>> diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw index 04488ce8388bb3c27ca9250fc17f404ec20c0dc1..84283a3a3164b5feea855d2e7ad13eb8a8a49e51 100644 --- a/src/utility/descriptionWidgetsFlesh.tw +++ b/src/utility/descriptionWidgetsFlesh.tw @@ -1214,7 +1214,7 @@ $He's got a <<if $arcologies[0].FSSlimnessEnthusiast > 20 && $arcologies[0].FSHedonisticDecadence == "unset">> <<print either("fashionable", "sleek and attractive", "small and enticing")>> <<else>> - <<print either("small, sleek", "small but rounded", "rounded, small")>> + <<print either("rounded, small", "small but rounded", "small, sleek")>> <</if>> rear end. <<elseif $activeSlave.butt <= 3>><<print either("big and healthy", "curved and plump", "healthy and plump")>> derrière. @@ -15577,22 +15577,28 @@ $He has <<if $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.375>> <<if $activeSlave.pregType == 1>> a single full grown child. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> <<if $activeSlave.pregType == 1>> a single full grown child. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> <<if $activeSlave.pregType == 1>> a single full grown child. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<else>> @@ -15621,22 +15627,28 @@ $He has <<if $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.375>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<else>> @@ -15650,22 +15662,28 @@ $He has <<if $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.375>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<else>> @@ -15679,22 +15697,28 @@ $He has <<if $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.375>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<else>> @@ -15709,24 +15733,30 @@ $He has @@.pink;obscenely pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;obscenely pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;obscenely pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 9>> @@ -15735,8 +15765,10 @@ $He has an absurd number of children. <<elseif $activeSlave.pregType >= 30>> far too many children. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. + <<else>> + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;obscenely pregnant:@@ $he's @@ -15756,24 +15788,30 @@ $He has @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 8>> @@ -15784,8 +15822,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. + <<else>> + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;massively pregnant:@@ $he's @@ -15800,24 +15838,30 @@ $He has @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 7>> @@ -15828,10 +15872,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. <<else>> - octuplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;massively pregnant:@@ $he's @@ -15846,24 +15888,30 @@ $He has @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 6>> @@ -15874,12 +15922,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. <<else>> - septuplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;massively pregnant:@@ $he's @@ -15894,24 +15938,30 @@ $He has @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 5>> @@ -15922,14 +15972,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. - <<elseif $activeSlave.pregType == 7>> - septuplets. <<else>> - sextuplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;massively pregnant:@@ $he's @@ -15944,24 +15988,30 @@ $He has @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 4>> @@ -15972,16 +16022,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. - <<elseif $activeSlave.pregType == 7>> - septuplets. - <<elseif $activeSlave.pregType == 6>> - sextuplets. <<else>> - quintuplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;massively pregnant:@@ $he's @@ -15996,24 +16038,30 @@ $He has @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 3>> @@ -16024,18 +16072,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. - <<elseif $activeSlave.pregType == 7>> - septuplets. - <<elseif $activeSlave.pregType == 6>> - sextuplets. - <<elseif $activeSlave.pregType == 5>> - quintuplets. <<else>> - quadruplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;massively pregnant:@@ $he's @@ -16050,24 +16088,30 @@ $He has @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is horrifically overdue; $he should have given birth a staggering <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.25>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is extremely overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.preg >= $activeSlave.pregData.normalBirth*1.075>> @@.pink;massively pregnant@@ with <<if $activeSlave.pregType == 1>> a single overgrown baby. - <<else>> + <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType overgrown babies. + <<else>> + overgrown <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> $He is very overdue; $he should have given birth <<print ($activeSlave.preg-$activeSlave.pregData.normalBirth)>> weeks ago. <<elseif $activeSlave.pregType > 2>> @@ -16078,20 +16122,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. - <<elseif $activeSlave.pregType == 7>> - septuplets. - <<elseif $activeSlave.pregType == 6>> - sextuplets. - <<elseif $activeSlave.pregType == 5>> - quintuplets. - <<elseif $activeSlave.pregType == 4>> - quadruplets. <<else>> - triplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;massively pregnant:@@ $he's @@ -16127,20 +16159,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. - <<elseif $activeSlave.pregType == 7>> - septuplets. - <<elseif $activeSlave.pregType == 6>> - sextuplets. - <<elseif $activeSlave.pregType == 5>> - quintuplets. - <<elseif $activeSlave.pregType == 4>> - quadruplets. <<else>> - triplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;hugely pregnant:@@ $he's @@ -16163,20 +16183,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. - <<elseif $activeSlave.pregType == 7>> - septuplets. - <<elseif $activeSlave.pregType == 6>> - sextuplets. - <<elseif $activeSlave.pregType == 5>> - quintuplets. - <<elseif $activeSlave.pregType == 4>> - quadruplets. <<else>> - triplets. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;very pregnant:@@ @@ -16199,22 +16207,8 @@ $He has far too many children. <<elseif $activeSlave.pregType >= 10>> $activeSlave.pregType children. - <<elseif $activeSlave.pregType == 9>> - nonuplets. - <<elseif $activeSlave.pregType == 8>> - octuplets. - <<elseif $activeSlave.pregType == 7>> - septuplets. - <<elseif $activeSlave.pregType == 6>> - sextuplets. - <<elseif $activeSlave.pregType == 5>> - quintuplets. - <<elseif $activeSlave.pregType == 4>> - quadruplets. - <<elseif $activeSlave.pregType == 3>> - triplets. <<else>> - twins. + <<print pregNumberName($activeSlave.pregType, 2)>>. <</if>> <<else>> @@.pink;visibly pregnant.@@ diff --git a/src/utility/descriptionWidgetsStyle.tw b/src/utility/descriptionWidgetsStyle.tw index 1b79e95acccf11dd923f934f677b69b4482f4f64..95bac5eff512b37100473a24bc2ccc835dee4527 100644 --- a/src/utility/descriptionWidgetsStyle.tw +++ b/src/utility/descriptionWidgetsStyle.tw @@ -587,7 +587,7 @@ $activeSlave.slaveName is <<footwearDescription>> <</if>> -<<case "a hijab and abaya" "a niqab and abaya" "a klan robe">> +<<case "a hijab and abaya" "a niqab and abaya">> which modestly covers $his entire <<if ($activeSlave.amp == 1)>> body. @@ -1082,8 +1082,10 @@ $His cascades gorgeously down $his bare back. <<case "a kimono" "a long qipao">> cascades elegantly down $his back, kept sensibly in place by a set of ivory hairpins. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1144,8 +1146,10 @@ $His flows fashionably down $his bare back. <<case "a kimono" "a long qipao">> flows elegantly down $his back, kept sensibly in place by a set of ivory hairpins. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1206,8 +1210,10 @@ $His follows the latest fashion. <<case "a kimono" "a long qipao">> is kept sensibly in place by a set of ivory hairpins. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1266,8 +1272,10 @@ $His is gelled into a fashionable wave. <<case "a ball gown">> is gelled into a fashionable wave. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1328,8 +1336,10 @@ $His is piled up on $his head in a huge beehive, itself veiled. <<case "a slave gown" "a halter top dress" "a ball gown">> is piled up on $his head in a perfect 60's beehive. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering, though it's obvious $he has a huge mass of hair restrained under there. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood, though it's evident $he has a huge mass of hair restrained under there. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1389,8 +1399,10 @@ $His is piled up on $his head in a beehive, pulling $his veil up a little. <<case "a slave gown" "a ball gown" "a halter top dress">> is piled up on $his head in a perfect 60's beehive. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1450,8 +1462,10 @@ $His is piled on $his head, pulling $his veil up a little. <<case "a slave gown" "a ball gown" "a halter top dress">> is piled up on $his head in a perfect 60's 'do. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1495,8 +1509,10 @@ $His <<switch $activeSlave.clothes>> <<case "restrictive latex">> fits back under $his latex hood. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is not visible under $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1579,8 +1595,10 @@ $His is gathered into secure tails and doubled up so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into floor-length tails by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in long tails, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in long tails, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in long tails and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1657,8 +1675,10 @@ $His is gathered into secure tails so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into long tails by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in tails, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in tails, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in long tails and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1735,8 +1755,10 @@ $His is gathered into short tails so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into short tails by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in tails, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in tails, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in short braids and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1762,8 +1784,10 @@ $His <</switch>> <<else>> <<switch $activeSlave.clothes>> - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is hidden by $his hood. <<case "a police uniform" "overalls">> is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1844,8 +1868,10 @@ $His is gathered into a ponytail and doubled up so $he can do business without it getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into a floor-length ponytail by a white cloth tie emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in a long ponytail, but it's hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in a long ponytail, but it's hidden by $his hood. <<case "a police uniform" "overalls">> is in a long ponytail and is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -1922,8 +1948,10 @@ $His is gathered into a secure ponytail so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into a long ponytail by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in a long ponytail, but it's hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in a long ponytail, but it's hidden by $his hood. <<case "a police uniform" "overalls">> is in a long ponytail and is kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2000,8 +2028,10 @@ $His is gathered into a short ponytail so $he can do business without it getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into a short ponytail by a white cloth tie emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in a ponytail, but it's hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in a ponytail, but it's hidden by $his hood. <<case "a police uniform" "overalls">> is in a ponytail and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2027,8 +2057,10 @@ $His <</switch>> <<else>> <<switch $activeSlave.clothes>> - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is hidden by $his hood. <<case "a scalemail bikini" "striped panties">> is combed back and topped by a gold headband. <<case "kitty lingerie">> @@ -2087,8 +2119,10 @@ $His is gathered into secure braids and doubled up so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into floor-length braids by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in long braids, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in long braids, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in long braids and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2161,8 +2195,10 @@ $His is tied into long braids and secured so $he can do business without them getting in the way. <<case "a slutty nurse outfit">> is tied into long braids and secured by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in braids, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in braids, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in braids and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2235,8 +2271,10 @@ $His is gathered into short braids so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is gathered into short braids by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in short braids, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in short braids, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in short braids and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2262,8 +2300,10 @@ $His <</switch>> <<else>> <<switch $activeSlave.clothes>> - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is hidden by $his hood. <<case "a scalemail bikini" "striped panties">> is combed back and topped by a gold headband. <<case "kitty lingerie">> @@ -2322,8 +2362,10 @@ $His is in dreadlocks and tied up so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is in floor-length dreadlocks, some in white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in long dreadlocks, barely hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in long dreadlocks, well hidden by $his hood. <<case "a police uniform" "overalls">> is in long dreadlocks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2400,8 +2442,10 @@ $His is in dreadlocks and tied so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is in dreadlocks, some with white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in dreadlocks, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in dreadlocks, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in dreadlocks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2474,8 +2518,10 @@ $His is in short dreadlocks and tied so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is in short dreadlocks, some in white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is in short dreadlocks, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is in short dreadlocks, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is in short dreadlocks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2501,8 +2547,10 @@ $His <</switch>> <<else>> <<switch $activeSlave.clothes>> - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is hidden by $his hood. <<case "a scalemail bikini" "striped panties">> is combed back and topped by a gold headband. <<case "kitty lingerie">> @@ -2561,8 +2609,10 @@ $His is curled into long flowing locks and tied up so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is curled into long flowing locks, secured by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is curled into long flowing locks, barely hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is curled into long flowing locks, well hidden by $his hood. <<case "a police uniform" "overalls">> is curled into long flowing locks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2635,8 +2685,10 @@ $His is curled into long locks and tied so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is curled into long locks, secured by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is curled into long locks, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is curled into long locks, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is curled into long locks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2709,8 +2761,10 @@ $His is curled into short locks and tied so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is curled into short locks secured by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is curled into short locks, but they're hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is curled into short locks, but they're hidden by $his hood. <<case "a police uniform" "overalls">> is curled into short locks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2736,8 +2790,10 @@ $His <</switch>> <<else>> <<switch $activeSlave.clothes>> - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is hidden by $his hood. <<case "a scalemail bikini" "striped panties">> is in short curls and topped by a gold headband. <<case "kitty lingerie">> @@ -2796,8 +2852,10 @@ $His is permed into long flowing curls and tied up so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is permed into long flowing curls, secured by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> - is permed, barely hidden by $his modest garb. + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> + is permed into long flowing curls, barely hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is permed into long flowing curls, well hidden by $his hood. <<case "a police uniform" "overalls">> is permed and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -2870,8 +2928,10 @@ $His is permed and tied so $he can do business without them getting in the way. <<case "a slutty nurse outfit" "a nice nurse outfit">> is permed, secured by white cloth ties emblazoned with little red crosses. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> - is permed; $his long curls hidden by $his modest garb. + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> + is permed, $his long curls hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is permed, $his long curls hidden by $his hood. <<case "a police uniform" "overalls">> is permed and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3002,8 +3062,10 @@ $His is in luxurious layered locks flowing gorgeously down $his bare back. <<case "a kimono" "a long qipao">> is in luxurious layered locks flowing elegantly down $his back, kept sensibly in place by a set of ivory hairpins. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is in luxurious layered locks but not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is in luxurious layered locks but not visible under $his hood. <<case "a police uniform" "overalls">> is in luxurious layered locks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3062,8 +3124,10 @@ $His is in luxurious layered locks flowing gorgeously down $his bare back. <<case "a kimono" "a long qipao">> is in luxurious layered locks flowing elegantly down $his back, kept sensibly in place by a set of ivory hairpins. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is in luxurious layered locks flowing gorgeously but not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is in luxurious layered locks flowing gorgeously but not visible under $his hood. <<case "a police uniform" "overalls">> is in luxurious layered locks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3122,8 +3186,10 @@ $His is in luxuriously styled short locks. <<case "a kimono" "a long qipao">> is in luxuriously styled short locks kept sensibly in place by a set of ivory hairpins. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is in luxuriously styled short locks but not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is in luxuriously styled short locks but not visible under $his hood. <<case "a police uniform" "overalls">> is in luxurious short layered locks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3170,7 +3236,7 @@ $His <</switch>> <<else>> <<switch $activeSlave.clothes>> - <<case "body oil" "a huipil" "a military uniform" "a slave gown" "a halter top dress" "a ball gown" "conservative clothing" "nice business attire" "slutty business attire" "battledress" "battlearmor" "a klan robe" "a slutty klan robe" "a long qipao" "lederhosen" "a dirndl" "a mounty outfit" "a biyelgee costume" "a schutzstaffel uniform" "a slutty schutzstaffel uniform" "a red army uniform">> + <<case "body oil" "a huipil" "a military uniform" "a slave gown" "a halter top dress" "a ball gown" "conservative clothing" "nice business attire" "slutty business attire" "battledress" "battlearmor" "a long qipao" "lederhosen" "a dirndl" "a mounty outfit" "a biyelgee costume" "a schutzstaffel uniform" "a slutty schutzstaffel uniform" "a red army uniform">> is in luxuriously styled short locks. <<case "restrictive latex">> fits under $his latex hood. @@ -3178,6 +3244,8 @@ $His is in luxuriously styled short locks covered by a flimsy hairnet. <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">> is in luxuriously styled short locks but not visible under $his modest head covering. + <<case "a klan robe" "a slutty klan robe">> + is in luxuriously styled short locks but not visible under $his hood. <<case "a police uniform" "overalls">> is in luxurious short layered locks and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3242,8 +3310,10 @@ $His is shaved into a strip that cascades magnificently down $his back, with scores of tiny pastel bows woven into it. <<case "a slutty maid outfit" "a nice maid outfit">> is shaved into a strip that cascades magnificently down $his back, with scores of tiny black bows woven into it. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is shaved into a strip that's hidden by $his head covering. + <<case "a klan robe" "a slutty klan robe">> + is shaved into a strip that's hidden by $his hood. <<case "a police uniform" "overalls">> is shaved into a strip and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3295,8 +3365,10 @@ $His is shaved into a long braided strip with tiny pastel bows woven into it. <<case "a slutty maid outfit" "a nice maid outfit">> is shaved into a long braided strip with tiny black bows woven into it. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is shaved into a long braided strip, hidden by $his head covering. + <<case "a klan robe" "a slutty klan robe">> + is shaved into a long braided strip, hidden by $his hood. <<case "a police uniform" "overalls">> is shaved into a long braided strip and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3348,8 +3420,10 @@ $His is shaved into a strip down the middle of $his head with tiny pastel bows woven into it. <<case "a slutty maid outfit" "a nice maid outfit">> is shaved into a strip down the middle of $his head with tiny black bows woven into it. - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is shaved into a strip down the middle of $his head, hidden by $his head covering. + <<case "a klan robe" "a slutty klan robe">> + is shaved into a strip down the middle of $his head, hidden by $his hood. <<case "a police uniform" "overalls">> is shaved into a strip and kept out of $his face by a couple of sturdy hairpins. <<case "a hanbok">> @@ -3375,8 +3449,10 @@ $His <</switch>> <<else>> <<switch $activeSlave.clothes>> - <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a klan robe" "a slutty klan robe">> + <<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">> is hidden by $his modest garb. + <<case "a klan robe" "a slutty klan robe">> + is hidden by $his hood. <<case "a scalemail bikini">> is shaved into a mohawk and topped by a gold headband. <<case "kitty lingerie">> @@ -5257,7 +5333,16 @@ $His The handsome silk completely conceals $his support band. <</if>> -<<case "a burqa" "a hijab and abaya" "a niqab and abaya" "a klan robe">> +<<case "a klan robe">> + <<if $activeSlave.bellyAccessory == "a corset">> + $His corset is hidden by $his long robes. + <<elseif $activeSlave.bellyAccessory == "an extreme corset">> + $His absurd corsetage is hidden by $his long robes. + <<elseif $activeSlave.bellyAccessory == "a support band">> + $His support band is hidden by $his long robes. + <</if>> + +<<case "a burqa" "a hijab and abaya" "a niqab and abaya">> <<if $activeSlave.bellyAccessory == "a corset">> $His corset is properly hidden along with everything else. <<elseif $activeSlave.bellyAccessory == "an extreme corset">> diff --git a/src/utility/extendedFamilyWidgets.tw b/src/utility/extendedFamilyWidgets.tw index a7a36caa329bcd2eaf9006ba4d8b35c1f8367547..018583f19fa6509bab8f16d20dfd365e464f7535 100644 --- a/src/utility/extendedFamilyWidgets.tw +++ b/src/utility/extendedFamilyWidgets.tw @@ -1146,7 +1146,7 @@ <<elseif $activeSlave.father != 0>> <<set $PC.father = $activeSlave.father>> <<else>> - <<set $activeSlave.father = -5 - 2*$activeSlave.ID -1>> + <<set $activeSlave.father = (-5 - 2*$activeSlave.ID -1)>> <<set $PC.father = $activeSlave.father>> <</if>> <<redisplayFamily>> @@ -1167,7 +1167,7 @@ <<elseif $activeSlave.father != 0>> <<set _slave.father = $activeSlave.father>> <<else>> - <<set $activeSlave.father = -5 - 2*$activeSlave.ID -1>> + <<set $activeSlave.father = (-5 - 2*$activeSlave.ID -1)>> <<set _slave.father = $activeSlave.father>> <</if>> <<redisplayFamily>> diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw index 32a57878dc9f91a06257eb4168b50055ef37dd8f..a93168de81216ffb99586e759e54162a015bf9b2 100644 --- a/src/utility/miscWidgets.tw +++ b/src/utility/miscWidgets.tw @@ -337,7 +337,7 @@ Call as <<SlaveInteractFertility>> <</if>> <<elseif ($activeSlave.preg > $activeSlave.pregData.minLiveBirth)>> [["Give " + $him + " a cesarean section"|csec]] - <<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $propOutcome == 1 && ($activeSlave.pregSource == -1 || $activeSlave.pregSource == -6)>> + <<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $propOutcome == 1 && $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1 && ($activeSlave.pregSource == -1 || $activeSlave.pregSource == -6)>> //You are forbidden from aborting an Elite child// <<elseif ($activeSlave.preg > 0)>> [["Abort " + $his + " pregnancy"|Abort]] @@ -345,7 +345,7 @@ Call as <<SlaveInteractFertility>> <</if>> <</if>> <<if ($activeSlave.pregKnown == 1) && ($pregSpeedControl == 1) && ($activeSlave.breedingMark != 1 || $propOutcome == 0) && ($activeSlave.indentureRestrictions < 1) && ($activeSlave.broodmother == 0) && $seePreg != 0>> -<br> + <br> __Pregnancy control__: <<if $activeSlave.pregControl == "labor suppressors">>Labor is suppressed<<elseif $activeSlave.pregControl == "slow gestation">>Slowed gestation speed<<elseif $activeSlave.pregControl == "speed up">>Faster gestation speed, staffed clinic recommended<<else>>Normal gestation and birth<</if>>. <<if ($activeSlave.preg >= $activeSlave.pregData.minLiveBirth)>> <br> diff --git a/src/utility/optionsWidgets.tw b/src/utility/optionsWidgets.tw index 9dbaa27d0488b63c872458ed5f351e7c623056ba..f52e92599a4af30184ca6f40d787d9f4d9a664cb 100644 --- a/src/utility/optionsWidgets.tw +++ b/src/utility/optionsWidgets.tw @@ -8,7 +8,7 @@ Line separations are <<if $lineSeparations == 0>> @@.red;HIDDEN.@@ - //<<link 'Show'>> + //<<link "Show">> <<set $lineSeparations = 1>> <<replace '#OptionLineSeparations'>> <<OptionLineSeparations>> @@ -16,7 +16,7 @@ Line separations are <</link>>// <<else>> @@.cyan;SHOWN.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $lineSeparations = 0>> <<replace '#OptionLineSeparations'>> <<OptionLineSeparations>> @@ -47,49 +47,49 @@ Line separations are Slaves are sorted on the main menu by @@.yellow;DEVOTION.@@ <</if>> // -<<link 'Devotion'>> +<<link "Devotion">> <<set $sortSlavesBy = "devotion">> <<replace '#OptionSortBy'>> <<OptionSortBy>> <</replace>> <</link>> | -<<link 'Name'>> +<<link "Name">> <<set $sortSlavesBy = "name">> <<replace '#OptionSortBy'>> <<OptionSortBy>> <</replace>> <</link>> | -<<link 'Assignment'>> +<<link "Assignment">> <<set $sortSlavesBy = "assignment">> <<replace '#OptionSortBy'>> <<OptionSortBy>> <</replace>> <</link>> | -<<link 'Date purchased'>> +<<link "Date purchased">> <<set $sortSlavesBy = "seniority">> <<replace '#OptionSortBy'>> <<OptionSortBy>> <</replace>> <</link>> | -<<link 'Age'>> +<<link "Age">> <<set $sortSlavesBy = "actualAge">> <<replace '#OptionSortBy'>> <<OptionSortBy>> <</replace>> <</link>> | -<<link 'How old they look'>> +<<link "How old they look">> <<set $sortSlavesBy = "visualAge">> <<replace '#OptionSortBy'>> <<OptionSortBy>> <</replace>> <</link>> | -<<link 'Age of their body'>> +<<link "Age of their body">> <<set $sortSlavesBy = "physicalAge">> <<replace '#OptionSortBy'>> <<OptionSortBy>> @@ -105,7 +105,7 @@ Line separations are <<widget "OptionSortOrder">> <<if $sortSlavesOrder == "ascending">> Slaves are sorted in @@.cyan;ASCENDING@@ order. - //<<link 'Sort descending'>> + //<<link "Sort descending">> <<set $sortSlavesOrder = "descending">> <<replace '#OptionSortOrder'>> <<OptionSortOrder>> @@ -113,7 +113,7 @@ Line separations are <</link>>// <<else>> Slaves are sorted in @@.red;DESCENDING@@ order. - //<<link 'Sort ascending'>> + //<<link "Sort ascending">> <<set $sortSlavesOrder = "ascending">> <<replace '#OptionSortOrder'>> <<OptionSortOrder>> @@ -129,7 +129,7 @@ Line separations are <<widget "OptionSortMain">> <<if $sortSlavesMain == 0>> Sort options are @@.red;HIDDEN@@ on the main menu. - //<<link 'Show'>> + //<<link "Show">> <<set $sortSlavesMain = 1>> <<replace '#OptionSortMain'>> <<OptionSortMain>> @@ -137,7 +137,7 @@ Line separations are <</link>>// <<else>> Sort options are @@.cyan;SHOWN@@ on the main menu. - //<<link 'Hide'>> + //<<link "Hide">> <<set $sortSlavesMain = 0>> <<replace '#OptionSortMain'>> <<OptionSortMain>> @@ -170,7 +170,7 @@ Line separations are <<widget "OptionRulesAssistantMain">> <<if $rulesAssistantMain == 0>> The rules assistant is @@.red;HIDDEN.@@ - //<<link 'Show'>> + //<<link "Show">> <<set $rulesAssistantMain = 1>> <<replace '#OptionRulesAssistantMain'>> <<OptionRulesAssistantMain>> @@ -178,7 +178,7 @@ Line separations are <</link>>// <<else>> The rules assistant is @@.cyan;SHOWN.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $rulesAssistantMain = 0>> <<replace '#OptionRulesAssistantMain'>> <<OptionRulesAssistantMain>> @@ -196,7 +196,7 @@ Line separations are Main menu assignment shortcuts are <<if $displayAssignments == 1>> @@.cyan;SHOWN.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $displayAssignments = 0>> <<replace '#OptionDisplayAssignments'>> <<OptionDisplayAssignments>> @@ -204,7 +204,7 @@ Main menu assignment shortcuts are <</link>>// <<else>> @@.red;HIDDEN.@@ - //<<link 'Show'>> + //<<link "Show">> <<set $displayAssignments = 1>> <<replace '#OptionDisplayAssignments'>> <<OptionDisplayAssignments>> @@ -222,7 +222,7 @@ Main menu assignment shortcuts are Granular slave stat numbers are <<if $summaryStats == 1>> @@.cyan;DISPLAYED.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $summaryStats = 0>> <<replace '#OptionSummaryStats'>> <<OptionSummaryStats>> @@ -230,7 +230,7 @@ Granular slave stat numbers are <</link>>// <<else>> @@.red;HIDDEN.@@ - //<<link 'Display'>> + //<<link "Display">> <<set $summaryStats = 1>> <<replace '#OptionSummaryStats'>> <<OptionSummaryStats>> @@ -254,7 +254,7 @@ Mental stats are <</if>> <<if $abbreviateDevotion != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateDevotion = 0>> <<replace '#OptionAbbreviateDevotion'>> <<OptionAbbreviateDevotion>> @@ -262,7 +262,7 @@ Mental stats are <</link>>// | <</if>> <<if $abbreviateDevotion != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateDevotion = 1>> <<replace '#OptionAbbreviateDevotion'>> <<OptionAbbreviateDevotion>> @@ -271,7 +271,7 @@ Mental stats are <<if $abbreviateDevotion != 2>>|<</if>> <</if>> <<if $abbreviateDevotion != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateDevotion = 2>> <<replace '#OptionAbbreviateDevotion'>> <<OptionAbbreviateDevotion>> @@ -295,7 +295,7 @@ Rules are <</if>> <<if $abbreviateRules != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateRules = 0>> <<replace '#OptionAbbreviateRules'>> <<OptionAbbreviateRules>> @@ -303,7 +303,7 @@ Rules are <</link>>// | <</if>> <<if $abbreviateRules != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateRules = 1>> <<replace '#OptionAbbreviateRules'>> <<OptionAbbreviateRules>> @@ -312,7 +312,7 @@ Rules are <<if $abbreviateRules != 2>>|<</if>> <</if>> <<if $abbreviateRules != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateRules = 2>> <<replace '#OptionAbbreviateRules'>> <<OptionAbbreviateRules>> @@ -336,7 +336,7 @@ Health is <</if>> <<if $abbreviateHealth != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateHealth = 0>> <<replace '#OptionAbbreviateHealth'>> <<OptionAbbreviateHealth>> @@ -344,7 +344,7 @@ Health is <</link>>// | <</if>> <<if $abbreviateHealth != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateHealth = 1>> <<replace '#OptionAbbreviateHealth'>> <<OptionAbbreviateHealth>> @@ -353,7 +353,7 @@ Health is <<if $abbreviateHealth != 2>>|<</if>> <</if>> <<if $abbreviateHealth != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateHealth = 2>> <<replace '#OptionAbbreviateHealth'>> <<OptionAbbreviateHealth>> @@ -377,7 +377,7 @@ Diet and weight are <</if>> <<if $abbreviateDiet != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateDiet = 0>> <<replace '#OptionAbbreviateDiet'>> <<OptionAbbreviateDiet>> @@ -385,7 +385,7 @@ Diet and weight are <</link>>// | <</if>> <<if $abbreviateDiet != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateDiet = 1>> <<replace '#OptionAbbreviateDiet'>> <<OptionAbbreviateDiet>> @@ -394,7 +394,7 @@ Diet and weight are <<if $abbreviateDiet != 2>>|<</if>> <</if>> <<if $abbreviateDiet != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateDiet = 2>> <<replace '#OptionAbbreviateDiet'>> <<OptionAbbreviateDiet>> @@ -418,7 +418,7 @@ Drugs and addiction are <</if>> <<if $abbreviateDrugs != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateDrugs = 0>> <<replace '#OptionAbbreviateDrugs'>> <<OptionAbbreviateDrugs>> @@ -426,7 +426,7 @@ Drugs and addiction are <</link>>// | <</if>> <<if $abbreviateDrugs != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateDrugs = 1>> <<replace '#OptionAbbreviateDrugs'>> <<OptionAbbreviateDrugs>> @@ -435,7 +435,7 @@ Drugs and addiction are <<if $abbreviateDrugs != 2>>|<</if>> <</if>> <<if $abbreviateDrugs != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateDrugs = 2>> <<replace '#OptionAbbreviateDrugs'>> <<OptionAbbreviateDrugs>> @@ -450,48 +450,37 @@ Drugs and addiction are %/ <<widget "OptionAbbreviateHormoneBalance">> Hormone balance is -<<if $abbreviateHormoneBalance == 1>> - @@.yellow;ABBREVIATED.@@ - <<link 'Hide'>> - <<set $abbreviateHormoneBalance = 0>> - <<replace '#OptionAbbreviateHormoneBalance'>> - <<OptionAbbreviateHormoneBalance>> - <</replace>> - <</link>> - | <<link 'Summarize'>> - <<set $abbreviateHormoneBalance = 2>> - <<replace '#OptionAbbreviateHormoneBalance'>> - <<OptionAbbreviateHormoneBalance>> - <</replace>> - <</link>> -<<elseif $abbreviateHormoneBalance == 2>> +<<if $abbreviateHormoneBalance == 2>> @@.cyan;SUMMARIZED.@@ - <<link 'Hide'>> +<<elseif $abbreviateHormoneBalance == 1>> + @@.yellow;ABBREVIATED.@@ +<<else>> + @@.red;HIDDEN.@@ +<</if>> +<<if $abbreviateHormoneBalance != 0>> + //<<link "Hide">> <<set $abbreviateHormoneBalance = 0>> <<replace '#OptionAbbreviateHormoneBalance'>> <<OptionAbbreviateHormoneBalance>> <</replace>> - <</link>> - | <<link 'Abbreviate'>> - <<set $abbreviateHormoneBalance = 1>> - <<replace '#OptionAbbreviateHormoneBalance'>> - <<OptionAbbreviateHormoneBalance>> - <</replace>> - <</link>> -<<else>> - @@.red;HIDDEN.@@ - <<link 'Abbreviate'>> + <</link>>// | +<</if>> +<<if $abbreviateHormoneBalance != 1>> + //<<link "Abbreviate">> <<set $abbreviateHormoneBalance = 1>> <<replace '#OptionAbbreviateHormoneBalance'>> <<OptionAbbreviateHormoneBalance>> <</replace>> - <</link>> - | <<link 'Summarize'>> + <</link>>// + <<if $abbreviateHormoneBalance != 2>>|<</if>> +<</if>> +<<if $abbreviateHormoneBalance != 2>> + //<<link "Summarize">> <<set $abbreviateHormoneBalance = 2>> <<replace '#OptionAbbreviateHormoneBalance'>> <<OptionAbbreviateHormoneBalance>> <</replace>> - <</link>> + <</link>>// <</if>> <</widget>> @@ -510,7 +499,7 @@ Genitalia are <</if>> <<if $abbreviateGenitalia != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateGenitalia = 0>> <<replace '#OptionAbbreviateGenitalia'>> <<OptionAbbreviateGenitalia>> @@ -518,7 +507,7 @@ Genitalia are <</link>>// | <</if>> <<if $abbreviateGenitalia != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateGenitalia = 1>> <<replace '#OptionAbbreviateGenitalia'>> <<OptionAbbreviateGenitalia>> @@ -527,7 +516,7 @@ Genitalia are <<if $abbreviateGenitalia != 2>>|<</if>> <</if>> <<if $abbreviateGenitalia != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateGenitalia = 2>> <<replace '#OptionAbbreviateGenitalia'>> <<OptionAbbreviateGenitalia>> @@ -551,7 +540,7 @@ Physical traits are <</if>> <<if $abbreviatePhysicals != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviatePhysicals = 0>> <<replace '#OptionAbbreviatePhysicals'>> <<OptionAbbreviatePhysicals>> @@ -559,7 +548,7 @@ Physical traits are <</link>>// | <</if>> <<if $abbreviatePhysicals != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviatePhysicals = 1>> <<replace '#OptionAbbreviatePhysicals'>> <<OptionAbbreviatePhysicals>> @@ -568,7 +557,7 @@ Physical traits are <<if $abbreviatePhysicals != 2>>|<</if>> <</if>> <<if $abbreviatePhysicals != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviatePhysicals = 2>> <<replace '#OptionAbbreviatePhysicals'>> <<OptionAbbreviatePhysicals>> @@ -592,7 +581,7 @@ Skills are <</if>> <<if $abbreviateSkills != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateSkills = 0>> <<replace '#OptionAbbreviateSkills'>> <<OptionAbbreviateSkills>> @@ -600,7 +589,7 @@ Skills are <</link>>// | <</if>> <<if $abbreviateSkills != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateSkills = 1>> <<replace '#OptionAbbreviateSkills'>> <<OptionAbbreviateSkills>> @@ -609,7 +598,7 @@ Skills are <<if $abbreviateSkills != 2>>|<</if>> <</if>> <<if $abbreviateSkills != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateSkills = 2>> <<replace '#OptionAbbreviateSkills'>> <<OptionAbbreviateSkills>> @@ -633,7 +622,7 @@ Mental attributes are <</if>> <<if $abbreviateMental != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateMental = 0>> <<replace '#OptionAbbreviateMental'>> <<OptionAbbreviateMental>> @@ -641,7 +630,7 @@ Mental attributes are <</link>>// | <</if>> <<if $abbreviateMental != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateMental = 1>> <<replace '#OptionAbbreviateMental'>> <<OptionAbbreviateMental>> @@ -650,7 +639,7 @@ Mental attributes are <<if $abbreviateMental != 2>>|<</if>> <</if>> <<if $abbreviateMental != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateMental = 2>> <<replace '#OptionAbbreviateMental'>> <<OptionAbbreviateMental>> @@ -674,7 +663,7 @@ Nationality is <</if>> <<if $abbreviateNationality != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateNationality = 0>> <<replace '#OptionAbbreviateNationality'>> <<OptionAbbreviateNationality>> @@ -682,7 +671,7 @@ Nationality is <</link>>// | <</if>> <<if $abbreviateNationality != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateNationality = 1>> <<replace '#OptionAbbreviateNationality'>> <<OptionAbbreviateNationality>> @@ -691,7 +680,7 @@ Nationality is <<if $abbreviateNationality != 2>>|<</if>> <</if>> <<if $abbreviateNationality != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateNationality = 2>> <<replace '#OptionAbbreviateNationality'>> <<OptionAbbreviateNationality>> @@ -715,7 +704,7 @@ Race is <</if>> <<if $abbreviateRace != 0>> - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateRace = 0>> <<replace '#OptionAbbreviateRace'>> <<OptionAbbreviateRace>> @@ -723,7 +712,7 @@ Race is <</link>>// | <</if>> <<if $abbreviateRace != 1>> - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateRace = 1>> <<replace '#OptionAbbreviateRace'>> <<OptionAbbreviateRace>> @@ -732,7 +721,7 @@ Race is <<if $abbreviateRace != 2>>|<</if>> <</if>> <<if $abbreviateRace != 2>> - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateRace = 2>> <<replace '#OptionAbbreviateRace'>> <<OptionAbbreviateRace>> @@ -749,7 +738,7 @@ Race is Clothes are <<if $abbreviateClothes == 2>> @@.cyan;SUMMARIZED.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateClothes = 0>> <<replace '#OptionAbbreviateClothes'>> <<OptionAbbreviateClothes>> @@ -757,7 +746,7 @@ Clothes are <</link>>// <<else>> @@.red;HIDDEN.@@ - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateClothes = 2>> <<replace '#OptionAbbreviateClothes'>> <<OptionAbbreviateClothes>> @@ -774,7 +763,7 @@ Clothes are Origins are <<if $abbreviateOrigins == 2>> @@.cyan;SUMMARIZED.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateOrigins = 0>> <<replace '#OptionAbbreviateOrigins'>> <<OptionAbbreviateOrigins>> @@ -782,7 +771,7 @@ Origins are <</link>>// <<else>> @@.red;HIDDEN.@@ - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateOrigins = 2>> <<replace '#OptionAbbreviateOrigins'>> <<OptionAbbreviateOrigins>> @@ -799,7 +788,7 @@ Origins are Rules Assistant rulesets are <<if $abbreviateRulesets == 2>> @@.cyan;SUMMARIZED.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $abbreviateRulesets = 0>> <<replace '#OptionAbbreviateRulesets'>> <<OptionAbbreviateRulesets>> @@ -807,7 +796,7 @@ Rules Assistant rulesets are <</link>>// <<else>> @@.red;HIDDEN.@@ - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateRulesets = 2>> <<replace '#OptionAbbreviateRulesets'>> <<OptionAbbreviateRulesets>> @@ -824,7 +813,7 @@ Rules Assistant rulesets are Facilities in the sidebar are <<if $abbreviateSidebar == 2>> @@.cyan;SUMMARIZED.@@ - //<<link 'Abbreviate'>> + //<<link "Abbreviate">> <<set $abbreviateSidebar = 1>> <<replace '#OptionAbbreviateSidebar'>> <<OptionAbbreviateSidebar>> @@ -832,7 +821,7 @@ Facilities in the sidebar are <</link>>// <<else>> @@.yellow;ABBREVIATED.@@ - //<<link 'Summarize'>> + //<<link "Summarize">> <<set $abbreviateSidebar = 2>> <<replace '#OptionAbbreviateSidebar'>> <<OptionAbbreviateSidebar>> @@ -849,7 +838,7 @@ Facilities in the sidebar are Missing slave parents are <<if $showMissingSlavesSD>> @@.cyan;SHOWN.@@ - //<<link 'Hide'>> + //<<link "Hide">> <<set $showMissingSlavesSD = false>> <<replace '#OptionAbbreviateMissing'>> <<OptionAbbreviateMissing>> @@ -857,7 +846,7 @@ Missing slave parents are <</link>>// <<else>> @@.red;HIDDEN.@@ - //<<link 'Show'>> + //<<link "Show">> <<set $showMissingSlavesSD = true>> <<replace '#OptionAbbreviateMissing'>> <<OptionAbbreviateMissing>>