From ab3597aaedf91006901ea0a8ab843df1eb4e1c9a Mon Sep 17 00:00:00 2001 From: klorpa <30924131+klorpa@users.noreply.github.com> Date: Mon, 3 Sep 2018 19:46:59 -0500 Subject: [PATCH] Vignette4 --- devNotes/twine JS.txt | 603 ++++++++++++++++++++++++++++----------- src/endWeek/saServant.tw | 2 +- src/js/utilJS.tw | 24 +- 3 files changed, 455 insertions(+), 174 deletions(-) diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt index b1869c4e2b6..d6ac2583448 100644 --- a/devNotes/twine JS.txt +++ b/devNotes/twine JS.txt @@ -1437,7 +1437,7 @@ window.setPregType = function(actor) { if(actor.broodmother < 1) { /* Broodmothers should be not processed here. Necessary now.*/ if(typeof actor.readyOva == "number" && actor.readyOva != 0) { - ovum = actor.readyOva; /*just single override; for delayed impregnation cases */ + ovum = actor.readyOva; /*just single override; for delayed impregnation cases */ } else if(actor.ID == -1) { if(actor.birthMaster > 0) { // Predisposed to twins if(actor.fertDrugs == 1) { @@ -3665,18 +3665,18 @@ window.ValidateFacilityDecoration = function ValidateFacilityDecoration(decorati }; window.ordinalSuffix = function ordinalSuffix(i) { - var j = i % 10, - k = i % 100; - if (j == 1 && k != 11) { - return i + "st"; - } - if (j == 2 && k != 12) { - return i + "nd"; - } - if (j == 3 && k != 13) { - return i + "rd"; - } - return i + "th"; + var j = i % 10, + k = i % 100; + if (j == 1 && k != 11) { + return i + "st"; + } + if (j == 2 && k != 12) { + return i + "nd"; + } + if (j == 3 && k != 13) { + return i + "rd"; + } + return i + "th"; } /*:: Span Macro JS [script]*/ @@ -10800,7 +10800,7 @@ window.saServant = function saServant(slave) { t += ` However, ${his} inability to hear often leaves ${him} oblivious to ${V.Stewardess.slaveName}'s orders, limiting their meaningful interactions.`; V.cash += (V.stewardessBonus/4); } else if ((slave.hears == -1 && slave.earwear != "hearing aids") || (slave.hears == 0 && slave.earwear == "muffling ear plugs")) { - t += ` However, ${he} often doesn't catch what ${V.Stewardess.slaveName} says, leading to frustration, confusion and less work done.`; + t += ` However, ${he} often doesn't catch what ${V.Stewardess.slaveName} says, leading to frustration, confusion and less work done.`; V.cash += (V.stewardessBonus/2); } else { V.cash += V.stewardessBonus; @@ -25361,6 +25361,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `an overeager sadistic costumer roughed ${him} up more than a normal submissive like ${him} is used to,`, + type: "health", + effect: -1, + }); break; case "cumslut": vignettes.push({ @@ -25459,6 +25464,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `"a group of overzealous customers gangbanging ${him} got a little too excited hearing ${him} get off on abuse, leaving ${him} sore and injured,`, + type: "health", + effect: -1, + }); break; case "dom": vignettes.push({ @@ -25499,6 +25509,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `${he} was slapped by a customer who was angry at ${his} rude remarks,`, + type: "health", + effect: -1, + }); break; case "odd": vignettes.push({ @@ -25582,6 +25597,11 @@ window.GetVignette = function GetVignette(slave) { type: "cash", effect: -1, }); + vignettes.push({ + text: `a customer impatient with how slowly ${he} was disrobing ripped off ${his} clothes and roughed ${him} up,`, + type: "health", + effect: -1, + }); break; case "idealistic": vignettes.push({ @@ -25702,6 +25722,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); + vignettes.push({ + text: `${he} adoringly kisses the feet of a local socialite who leaves ${him} a generous tip,`, + type: "cash", + effect: 1, + }); break; case "adores men": vignettes.push({ @@ -25709,6 +25734,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); + vignettes.push({ + text: `${he} practically worships a minor celebrity, eagerly slobbering over his cock and covering ${himself} with his cum,`, + type: "rep", + effect: 1, + }); break; case "insecure": vignettes.push({ @@ -25730,6 +25760,16 @@ window.GetVignette = function GetVignette(slave) { type: "cash", effect: 1, }); + vignettes.push({ + text: `${he} manages to convince a skeptical businessman about the merits of using slaves,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `${his} enthusiastic discussion of the merits of slavery convinced a young woman to sell herself into slavery, so the new owner gave you a finder's fee,`, + type: "cash", + effect: 1, + }); } switch (slave.sexualQuirk) { case "gagfuck queen": @@ -25764,6 +25804,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); + vignettes.push({ + text: `a few partygoers were so impressed with ${his} provocative teasing that they left ${him} a sizeable tip,`, + type: "cash", + effect: 1, + }); break; case "romantic": vignettes.push({ @@ -26047,11 +26092,11 @@ window.GetVignette = function GetVignette(slave) { }); } } - if (slave.balls > 3) { + if (slave.balls == 0 && slave.dick > 0) { 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,`, + text: `a slave trainer privately studied ${him} as an example of a slave with well done gelding surgery,`, type: "cash", - effect: -1, + effect: 1, }); } if (canDoVaginal(slave)) { @@ -26162,7 +26207,7 @@ window.GetVignette = function GetVignette(slave) { } if (slave.amp === 1) { vignettes.push({ - text: `${he} disappointed a customer who thought they would enjoy fucking an amputee, but found it revolting,`, + text: `${he} disappointed a customer who thought they would enjoy fucking a quadruple amputee, but found it revolting,`, type: "rep", effect: -1, }); @@ -26269,6 +26314,13 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } + if (slave.collar === "shock punishment") { + vignettes.push({ + text: `a customer discovered that the remote control for his video screen also worked on ${his} shock collar,`, + type: "trust", + effect: -1, + }); + } if (slave.fetish === "mindbroken") { vignettes.push({ text: `a customer really enjoyed being able to treat ${him} however they liked without eliciting a reaction,`, @@ -26283,6 +26335,13 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } + if (slave.accent > 2) { + vignettes.push({ + text: `a wealthy foreign tourist was so glad to hear somebody speaking his native language that he hired ${him} for the whole week,`, + type: "cash", + effect: 1, + }); + } if (slave.face > 10 && canDoAnal(slave)) { if (slave.dick > 0) { if (slave.fetish === "buttslut" && jsRandom(0, 100) < 50) { @@ -26364,19 +26423,42 @@ window.GetVignette = function GetVignette(slave) { }); } - if (V.arcologies[0].FSSupremacist !== "unset" && slave.race === V.arcologies[0].FSSupremacistRace) { - vignettes.push({ - text: `${he} lost a customer who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a whore,`, - type: "cash", - effect: -1, - }); + if (V.arcologies[0].FSSupremacist !== "unset") { + if (slave.race === V.arcologies[0].FSSupremacistRace) { + vignettes.push({ + text: `${he} lost a customer who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a whore,`, + type: "cash", + effect: -1, + }); + } + if (V.arcologies[0].FSSupremacistRace === "asian") { + vignettes.push({ + text: `${he} was hired to be the special guest at a rather unconvential seijin-shiki celebration party,`, + type: "cash", + effect: 1, + }); + } else if (V.arcologies[0].FSSupremacistRace === "semitic") { + vignettes.push({ + text: `${he} was hired to be the special guest at a rather unconvential bar mitzvah celebration party,`, + type: "cash", + effect: 1, + }); + } else if (V.arcologies[0].FSSupremacistRace === "white") { + vignettes.push({ + text: `${he} was hired to be the special guest at a rather unconvential Jugendweihe celebration party,`, + type: "cash", + effect: 1, + }); + } } - if (V.arcologies[0].FSSubjugationist !== "unset" && slave.race === V.arcologies[0].FSSubjugationistRace) { - vignettes.push({ - text: `${he} had a bad time in general, since most of ${his} customers didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`, - type: "health", - effect: -1, - }); + if (V.arcologies[0].FSSubjugationist !== "unset") { + if (slave.race === V.arcologies[0].FSSubjugationistRace) { + vignettes.push({ + text: `${he} had a bad time in general, since most of ${his} customers didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`, + type: "health", + effect: -1, + }); + } } if (V.arcologies[0].FSYouthPreferentialist !== "unset") { if (slave.visualAge > 35) { @@ -26403,12 +26485,14 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSGenderFundamentalist !== "unset" && slave.visualAge > 25) { - vignettes.push({ - text: `${he} got repeat business from a customer who thinks ${he} resembles their ex-wife, who would never let them fuck her butt,`, - type: "cash", - effect: 1, - }); + } else if (V.arcologies[0].FSGenderFundamentalist !== "unset") { + if (slave.visualAge > 25) { + vignettes.push({ + text: `${he} got repeat business from a customer who thinks ${he} resembles their ex-wife, who would never let them fuck her butt,`, + type: "cash", + effect: 1, + }); + } } if (V.arcologies[0].FSRepopulationFocus !== "unset") { if (slave.pregType > 1 && slave.pregKnown > 1 && slave.belly >= 10000) { @@ -26418,12 +26502,21 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSRestart !== "unset" && canGetPregnant(slave)) { - vignettes.push({ - text: `${he} got repeat business from a customer who misses the risk of getting a ${boy} pregnant,`, - type: "cash", - effect: 3, - }); + if (slave.preg > 10 && slave.pregKnown > 1 && slave.bellyPreg >= 5000) { + vignettes.push({ + text: `a customer loved ${his} pregnant belly so much that he came back for repeat business,`, + type: "cash", + effect: 1, + }); + } + } else if (V.arcologies[0].FSRestart !== "unset") { + if (canGetPregnant(slave)) { + vignettes.push({ + text: `${he} got repeat business from a customer who misses the risk of getting a ${boy} pregnant,`, + type: "cash", + effect: 3, + }); + } } if (V.arcologies[0].FSPaternalist !== "unset") { if (slave.intelligence > 1) { @@ -26433,12 +26526,14 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSDegradationist !== "unset" && canTalk(slave) && 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 (V.arcologies[0].FSDegradationist !== "unset") { + if (canTalk(slave) && 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, + }); + } } if (V.arcologies[0].FSBodyPurist !== "unset") { if (slave.boobsImplant > 0) { @@ -26448,12 +26543,21 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSTransformationFetishist !== "unset" && slave.boobsImplant === 0) { - vignettes.push({ - text: `${he} got repeat business from a customer who wants to keep their fetish for natural breasts in the closet,`, - type: "cash", - effect: 1, - }); + } else if (V.arcologies[0].FSTransformationFetishist !== "unset") { + if (slave.boobsImplant === 0) { + vignettes.push({ + text: `${he} got repeat business from a customer who wants to keep their fetish for natural breasts in the closet,`, + type: "cash", + effect: 1, + }); + } + if (slave.boobsImplant >= 500) { + vignettes.push({ + text: `a photographer won an award for an artistic close up of one of ${his} implant-heavy tits,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") { if (canTalk(slave) && slave.voice > 2) { @@ -26470,12 +26574,14 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } - } else if (V.arcologies[0].FSAssetExpansionist !== "unset" && slave.boobs < 300) { - vignettes.push({ - text: `${he} got repeat business from a customer who wants to keep their fetish for flat chested ${boy}s in the closet,`, - type: "cash", - effect: 1, - }); + } else if (V.arcologies[0].FSAssetExpansionist !== "unset") { + if (slave.boobs < 300) { + vignettes.push({ + text: `${he} got repeat business from a customer who wants to keep their fetish for flat chested ${boy}s in the closet,`, + type: "cash", + effect: 1, + }); + } } if (V.arcologies[0].FSPastoralist !== "unset") { if (slave.lactation === 0) { @@ -26493,33 +26599,41 @@ window.GetVignette = function GetVignette(slave) { }); } } - if (V.arcologies[0].FSPhysicalIdealist !== "unset" && slave.muscles <= 95) { - vignettes.push({ - text: `${he} lost a customer who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`, - type: "cash", - effect: -1, - }); + if (V.arcologies[0].FSPhysicalIdealist !== "unset") { + if (slave.muscles <= 95) { + vignettes.push({ + text: `${he} lost a customer who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`, + type: "cash", + effect: -1, + }); + } } - if (V.arcologies[0].FSChattelReligionist !== "unset" && slave.behavioralFlaw === "devout") { - vignettes.push({ - text: `${he} got repeat business from a customer who desperately wants their cock to be the one that converts ${him},`, - type: "cash", - effect: 1, - }); + if (V.arcologies[0].FSChattelReligionist !== "unset") { + if (slave.behavioralFlaw === "devout") { + vignettes.push({ + text: `${he} got repeat business from a customer who desperately wants their cock to be the one that converts ${him},`, + type: "cash", + effect: 1, + }); + } } - if (V.arcologies[0].FSRomanRevivalist !== "unset" && slave.race === "white" && slave.height >= 185) { - vignettes.push({ - text: `${he} attracted a customer who thought ${his} appearance worthy of a lusty northern barbarian,`, - type: "cash", - effect: 1, - }); + if (V.arcologies[0].FSRomanRevivalist !== "unset") { + if (slave.race === "white" && slave.height >= 185) { + vignettes.push({ + text: `${he} attracted a customer who thought ${his} appearance worthy of a lusty northern barbarian,`, + type: "cash", + effect: 1, + }); + } } - if (V.arcologies[0].FSAztecRevivalist !== "unset" && slave.devotion > 75 && slave.intelligence >= 2) { - vignettes.push({ - text: `${he} indulged a citizen by following a fertility ritual completely,`, - type: "rep", - effect: 1, - }); + if (V.arcologies[0].FSAztecRevivalist !== "unset") { + if (slave.devotion > 75 && slave.intelligence >= 2) { + vignettes.push({ + text: `${he} indulged a citizen by following a fertility ritual completely,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSEgyptianRevivalist !== "unset") { vignettes.push({ @@ -26528,16 +26642,39 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - if (V.arcologies[0].FSEdoRevivalist !== "unset" && slave.face > 40 && slave.intelligence > 1) { + if (V.arcologies[0].FSEdoRevivalist !== "unset") { + if (slave.face > 40 && slave.intelligence > 1) { + vignettes.push({ + text: `${he} got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent ${boy},`, + type: "cash", + effect: 1, + }); + } vignettes.push({ - text: `${he} got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent ${boy},`, + text: `${he} was hired to be the special guest at a rather unconvential genpuku celebration party,`, type: "cash", effect: 1, }); } - if (V.arcologies[0].FSArabianRevivalist !== "unset" && slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) { + if (V.arcologies[0].FSArabianRevivalist !== "unset") { + if (slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) { + vignettes.push({ + text: `${he} got repeat business from a customer who prefers prostitutes who can tell lovely stories,`, + type: "cash", + effect: 1, + }); + } + } + if (V.arcologies[0].FSChineseRevivalist !== "unset") { + if (slave.dick > 0 && slave.balls == 2) { + vignettes.push({ + text: `a citizen admired ${his} lack of balls and praised ${him} for being like the eunuchs in Chinese history,`, + type: "cash", + effect: 1, + }); + } vignettes.push({ - text: `${he} got repeat business from a customer who prefers prostitutes who can tell lovely stories,`, + text: `${he} was hired to be the special guest at a rather unconvential Guan Li celebration party,`, type: "cash", effect: 1, }); @@ -26742,6 +26879,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `an overeager sadistic costumer roughed ${him} up more than a normal submissive like ${him} is used to,`, + type: "health", + effect: -1, + }); break; case "cumslut": vignettes.push({ @@ -26840,6 +26982,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `a group of overzealous citizens gangbanging ${him} got a little too excited hearing ${him} get off on abuse, leaving ${him} sore and injured,`, + type: "health", + effect: -1, + }); break; case "dom": vignettes.push({ @@ -26880,6 +27027,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `${he} was slapped by a citizen who was angry at ${his} rude remarks,`, + type: "health", + effect: -1, + }); break; case "odd": vignettes.push({ @@ -26963,6 +27115,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: -1, }); + vignettes.push({ + text: `a citizen impatient with how slowly ${he} was disrobing ripped off ${his} clothes and roughed ${him} up,`, + type: "health", + effect: -1, + }); break; case "idealistic": vignettes.push({ @@ -27083,6 +27240,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); + vignettes.push({ + text: `${he} adoringly kisses the feet of a local socialite who leaves ${him} a generous tip,`, + type: "cash", + effect: 1, + }); break; case "adores men": vignettes.push({ @@ -27090,6 +27252,11 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); + vignettes.push({ + text: `${he} practically worships a minor celebrity, eagerly slobbering over his cock and covering ${himself} with his cum,`, + type: "rep", + effect: 1, + }); break; case "insecure": vignettes.push({ @@ -27111,6 +27278,16 @@ window.GetVignette = function GetVignette(slave) { type: "rep", effect: 1, }); + vignettes.push({ + text: `${he} manages to convince a skeptical businessman about the merits of using slaves,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `${his} enthusiastic discussion of the merits of slavery convinced a young woman to sell herself into slavery, so the new owner gave you a finder's fee,`, + type: "cash", + effect: 1, + }); } switch (slave.sexualQuirk) { case "gagfuck queen": @@ -27136,12 +27313,17 @@ window.GetVignette = function GetVignette(slave) { break; case "tease": vignettes.push({ - text: `${he} convinces a citizen who's never had sex with a street slut to patronize ${his} with some truly inspired flirting,`, + text: `${he} convinces a citizen who's never had sex with a street slut to patronize ${him} with some truly inspired flirting,`, type: "rep", effect: 1, }); vignettes.push({ - text: `a few partygoers were so impressed with ${his} provocative teasing that they left ${his} sizeable tip,`, + text: `a few partiers were so impressed with ${his} provocative teasing that they repeated ${his} wit to friends,`, + type: "rep", + effect: 1, + }); + vignettes.push({ + text: `a few partygoers were so impressed with ${his} provocative teasing that they left ${him} a sizeable tip,`, type: "cash", effect: 1, }); @@ -27428,6 +27610,13 @@ window.GetVignette = function GetVignette(slave) { }); } } + if (slave.balls == 0 && slave.dick > 0) { + 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 > 3) { 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,`, @@ -27543,7 +27732,7 @@ window.GetVignette = function GetVignette(slave) { } if (slave.amp === 1) { vignettes.push({ - text: `${he} disappointed a citizen who thought they would enjoy fucking an amputee, but found it revolting,`, + text: `${he} disappointed a citizen who thought they would enjoy fucking a quadruple amputee, but found it revolting,`, type: "rep", effect: -1, }); @@ -27570,6 +27759,13 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } + if (slave.collar === "shock punishment") { + vignettes.push({ + text: `a citizen discovered that the remote control for his video screen also worked on ${his} shock collar,`, + type: "trust", + effect: -1, + }); + } if (slave.fetish === "mindbroken") { vignettes.push({ text: `a citizen really enjoyed being able to treat ${him} however they liked without eliciting a reaction,`, @@ -27584,6 +27780,13 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } + if (slave.accent > 2) { + vignettes.push({ + text: `a wealthy immigrant was so glad to hear somebody speaking his native language that he hired ${him} for the whole week,`, + type: "rep", + effect: 1, + }); + } if (slave.face > 10 && canDoAnal(slave)) { if (slave.dick > 0) { if (slave.fetish === "buttslut" && jsRandom(0, 100) < 50) { @@ -27665,19 +27868,42 @@ window.GetVignette = function GetVignette(slave) { }); } - if (V.arcologies[0].FSSupremacist !== "unset" && slave.race === V.arcologies[0].FSSupremacistRace) { - vignettes.push({ - text: `${he} disappointed a citizen who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a public slut,`, - type: "rep", - effect: -1, - }); + if (V.arcologies[0].FSSupremacist !== "unset") { + if (slave.race === V.arcologies[0].FSSupremacistRace) { + vignettes.push({ + text: `${he} disappointed a citizen who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a public slut,`, + type: "rep", + effect: -1, + }); + } + if (V.arcologies[0].FSSupremacistRace === "asian") { + vignettes.push({ + text: `${he} was invited to and livened up a rather unconvential seijin-shiki celebration party,`, + type: "rep", + effect: 1, + }); + } else if (V.arcologies[0].FSSupremacistRace === "semitic") { + vignettes.push({ + text: `${he} was invited to and livened up a rather unconvential bar mitzvah celebration party,`, + type: "rep", + effect: 1, + }); + } else if (V.arcologies[0].FSSupremacistRace === "white") { + vignettes.push({ + text: `${he} was invited to and livened up a rather unconvential Jugendweihe celebration party,`, + type: "rep", + effect: 1, + }); + } } - if (V.arcologies[0].FSSubjugationist !== "unset" && slave.race === V.arcologies[0].FSSubjugationistRace) { - vignettes.push({ - text: `${he} had a bad time in general, since most of the citizens who used ${him} didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`, - type: "health", - effect: -1, - }); + if (V.arcologies[0].FSSubjugationist !== "unset") { + if (slave.race === V.arcologies[0].FSSubjugationistRace) { + vignettes.push({ + text: `${he} had a bad time in general, since most of the citizens who used ${him} didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`, + type: "health", + effect: -1, + }); + } } if (V.arcologies[0].FSYouthPreferentialist !== "unset") { if (slave.visualAge > 35) { @@ -27704,12 +27930,14 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSGenderFundamentalist !== "unset" && slave.visualAge > 25) { - vignettes.push({ - text: `${he} gratified a citizen who thinks ${he} resembles his ex-wife, who would never let him fuck her butt,`, - type: "rep", - effect: 1, - }); + } else if (V.arcologies[0].FSGenderFundamentalist !== "unset") { + if (slave.visualAge > 25) { + vignettes.push({ + text: `${he} gratified a citizen who thinks ${he} resembles his ex-wife, who would never let him fuck her butt,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSRepopulationFocus !== "unset") { if (slave.pregType > 1 && slave.pregKnown > 1 && slave.belly >= 10000) { @@ -27719,12 +27947,21 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSRestart !== "unset" && canGetPregnant(slave)) { - vignettes.push({ - text: `${he} gratified a citizen who misses the risk of getting a ${boy} pregnant,`, - type: "rep", - effect: 1, - }); + if (slave.preg > 10 && slave.pregKnown > 1 && slave.bellyPreg >= 5000) { + vignettes.push({ + text: `a citizen loved ${his} pregnant belly so much that he came back for repeat service,`, + type: "rep", + effect: 1, + }); + } + } else if (V.arcologies[0].FSRestart !== "unset") { + if (canGetPregnant(slave)) { + vignettes.push({ + text: `${he} gratified a citizen who misses the risk of getting a ${boy} pregnant,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSPaternalist !== "unset") { if (slave.intelligence > 1) { @@ -27734,12 +27971,14 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSDegradationist !== "unset" && canTalk(slave) && slave.voice > 2) { - vignettes.push({ - text: `${he} gratified a citizen who prefers ${boy} with high-pitched screams,`, - type: "rep", - effect: 1, - }); + } else if (V.arcologies[0].FSDegradationist !== "unset") { + if (canTalk(slave) && slave.voice > 2) { + vignettes.push({ + text: `${he} gratified a citizen who prefers ${boy} with high-pitched screams,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSBodyPurist !== "unset") { if (slave.boobsImplant > 0) { @@ -27749,12 +27988,21 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - } else if (V.arcologies[0].FSTransformationFetishist !== "unset" && slave.boobsImplant === 0) { - vignettes.push({ - text: `${he} gratified a citizen who wants to keep his fetish for natural breasts in the closet,`, - type: "rep", - effect: 1, - }); + } else if (V.arcologies[0].FSTransformationFetishist !== "unset") { + if (slave.boobsImplant === 0) { + vignettes.push({ + text: `${he} gratified a citizen who wants to keep his fetish for natural breasts in the closet,`, + type: "rep", + effect: 1, + }); + } + if (slave.boobsImplant >= 500) { + vignettes.push({ + text: `a photographer won an award for an artistic close up of one of ${his} implant-heavy tits,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") { if (canTalk(slave) && slave.voice > 2) { @@ -27771,12 +28019,14 @@ window.GetVignette = function GetVignette(slave) { effect: -1, }); } - } else if (V.arcologies[0].FSAssetExpansionist !== "unset" && slave.boobs < 300) { - vignettes.push({ - text: `${he} gratified a citizen who wants to keep his fetish for flat chested ${boy}s in the closet,`, - type: "rep", - effect: 1, - }); + } else if (V.arcologies[0].FSAssetExpansionist !== "unset") { + if (slave.boobs < 300) { + vignettes.push({ + text: `${he} gratified a citizen who wants to keep his fetish for flat chested ${boy}s in the closet,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSPastoralist !== "unset") { if (slave.lactation === 0) { @@ -27794,33 +28044,41 @@ window.GetVignette = function GetVignette(slave) { }); } } - if (V.arcologies[0].FSPhysicalIdealist !== "unset" && slave.muscles <= 95) { - vignettes.push({ - text: `${he} disappointed a citizen who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`, - type: "rep", - effect: -1, - }); + if (V.arcologies[0].FSPhysicalIdealist !== "unset") { + if (slave.muscles <= 95) { + vignettes.push({ + text: `${he} disappointed a citizen who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`, + type: "rep", + effect: -1, + }); + } } - if (V.arcologies[0].FSChattelReligionist !== "unset" && slave.behavioralFlaw === "devout") { - vignettes.push({ - text: `${he} gratified a citizen who desperately wants his cock to be the one that converts ${him},`, - type: "rep", - effect: 1, - }); + if (V.arcologies[0].FSChattelReligionist !== "unset") { + if (slave.behavioralFlaw === "devout") { + vignettes.push({ + text: `${he} gratified a citizen who desperately wants his cock to be the one that converts ${him},`, + type: "rep", + effect: 1, + }); + } } - if (V.arcologies[0].FSRomanRevivalist !== "unset" && slave.race === "white" && slave.height >= 185) { - vignettes.push({ - text: `${he} gratified a citizen who thought ${his} appearance worthy of a lusty northern barbarian,`, - type: "rep", - effect: 1, - }); + if (V.arcologies[0].FSRomanRevivalist !== "unset") { + if (slave.race === "white" && slave.height >= 185) { + vignettes.push({ + text: `${he} gratified a citizen who thought ${his} appearance worthy of a lusty northern barbarian,`, + type: "rep", + effect: 1, + }); + } } - if (V.arcologies[0].FSAztecRevivalist !== "unset" && slave.devotion > 75 && slave.intelligence >= 2) { - vignettes.push({ - text: `${he} indulged a citizen by following a fertility ritual completely,`, - type: "rep", - effect: 1, - }); + if (V.arcologies[0].FSAztecRevivalist !== "unset") { + if (slave.devotion > 75 && slave.intelligence >= 2) { + vignettes.push({ + text: `${he} indulged a citizen by following a fertility ritual completely,`, + type: "rep", + effect: 1, + }); + } } if (V.arcologies[0].FSEgyptianRevivalist !== "unset") { vignettes.push({ @@ -27829,16 +28087,39 @@ window.GetVignette = function GetVignette(slave) { effect: 1, }); } - if (V.arcologies[0].FSEdoRevivalist !== "unset" && slave.face > 40 && slave.intelligence > 1) { + if (V.arcologies[0].FSEdoRevivalist !== "unset") { + if (slave.face > 40 && slave.intelligence > 1) { + vignettes.push({ + text: `${he} gratified a citizen who wished to do nothing more than converse with a beautiful and intelligent ${boy},`, + type: "rep", + effect: 1, + }); + } vignettes.push({ - text: `${he} gratified a citizen who wished to do nothing more than converse with a beautiful and intelligent ${boy},`, + text: `${he} was invited to and livened up a rather unconvential genpuku celebration party,`, type: "rep", effect: 1, }); } - if (V.arcologies[0].FSArabianRevivalist !== "unset" && slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) { + if (V.arcologies[0].FSArabianRevivalist !== "unset") { + if (slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) { + vignettes.push({ + text: `${he} gratified a citizen who prefers prostitutes who can tell lovely stories,`, + type: "rep", + effect: 1, + }); + } + } + if (V.arcologies[0].FSChineseRevivalist !== "unset") { + if (slave.dick > 0 && slave.balls == 2) { + vignettes.push({ + text: `a citizen admired ${his} lack of balls and praised ${him} for being like the eunuchs in Chinese history,`, + type: "rep", + effect: 1, + }); + } vignettes.push({ - text: `${he} gratified a citizen who prefers prostitutes who can tell lovely stories,`, + text: `${he} was invited to and livened up a rather unconvential Guan Li celebration party,`, type: "rep", effect: 1, }); diff --git a/src/endWeek/saServant.tw b/src/endWeek/saServant.tw index 0662f9407d8..9a873a7fbf8 100644 --- a/src/endWeek/saServant.tw +++ b/src/endWeek/saServant.tw @@ -28,7 +28,7 @@ window.saServant = function saServant(slave) { t += ` However, ${his} inability to hear often leaves ${him} oblivious to ${V.Stewardess.slaveName}'s orders, limiting their meaningful interactions.`; V.cash += (V.stewardessBonus/4); } else if ((slave.hears == -1 && slave.earwear != "hearing aids") || (slave.hears == 0 && slave.earwear == "muffling ear plugs")) { - t += ` However, ${he} often doesn't catch what ${V.Stewardess.slaveName} says, leading to frustration, confusion and less work done.`; + t += ` However, ${he} often doesn't catch what ${V.Stewardess.slaveName} says, leading to frustration, confusion and less work done.`; V.cash += (V.stewardessBonus/2); } else { V.cash += V.stewardessBonus; diff --git a/src/js/utilJS.tw b/src/js/utilJS.tw index 2e11e7356cf..b52094281fa 100644 --- a/src/js/utilJS.tw +++ b/src/js/utilJS.tw @@ -781,16 +781,16 @@ window.ValidateFacilityDecoration = function ValidateFacilityDecoration(decorati }; window.ordinalSuffix = function ordinalSuffix(i) { - var j = i % 10, - k = i % 100; - if (j == 1 && k != 11) { - return i + "st"; - } - if (j == 2 && k != 12) { - return i + "nd"; - } - if (j == 3 && k != 13) { - return i + "rd"; - } - return i + "th"; + var j = i % 10, + k = i % 100; + if (j == 1 && k != 11) { + return i + "st"; + } + if (j == 2 && k != 12) { + return i + "nd"; + } + if (j == 3 && k != 13) { + return i + "rd"; + } + return i + "th"; } \ No newline at end of file -- GitLab