diff --git a/src/Mods/SecExp/js/securityReport.js b/src/Mods/SecExp/js/securityReport.js index cd09fdd56205eb3b3e0f7e35a5b759b6f2ed86c3..c290cf430c996c7d636a789423ca71e114ea5414 100644 --- a/src/Mods/SecExp/js/securityReport.js +++ b/src/Mods/SecExp/js/securityReport.js @@ -341,7 +341,7 @@ App.SecExp.securityReport = function() { r.push(SF.text); recruitsMultiplier += SF.bonus; const propagandaEffects = App.SecExp.propagandaEffects("recruitment"); - r.push(`${propagandaEffects.text}`); + r.push(propagandaEffects.text); recruitsMultiplier *= (1 + propagandaEffects.effect); if (V.SecExp.edicts.defense.militia === 2) { r.push(`Your militia accepts only volunteering citizens, ready to defend their arcology.`); diff --git a/src/endWeek/reports/brothelReport.js b/src/endWeek/reports/brothelReport.js index 2f291375cb652c40c8a1e737c433e145b36d7d2c..744c3f9d75c477fb66ee6a54d88545e304ac2bc8 100644 --- a/src/endWeek/reports/brothelReport.js +++ b/src/endWeek/reports/brothelReport.js @@ -103,7 +103,7 @@ App.EndWeek.brothelReport = function() { r.push(`${He} has basic knowledge of how to run a whorehouse.`); } else { const skillIncrease = jsRandom(1, Math.ceil((S.Madam.intelligence + S.Madam.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('madam', S.Madam, skillIncrease)}`); + r.push(slaveSkillIncrease('madam', S.Madam, skillIncrease)); } if (S.Madam.intelligence + S.Madam.intelligenceImplant > 15) { r.push(`${He} is a clever manager.`); diff --git a/src/endWeek/reports/cellblockReport.js b/src/endWeek/reports/cellblockReport.js index fdf57482f5909c55addd90dd44c82d8c6264ba4a..ec560052dc75b0f58187201f0da095e6681f3693 100644 --- a/src/endWeek/reports/cellblockReport.js +++ b/src/endWeek/reports/cellblockReport.js @@ -87,7 +87,7 @@ App.EndWeek.cellblockReport = function() { r.push(`${He} has experience with detecting security issues and grinding down potential miscreants from working for you, making ${him} more effective.`); } else { const skillIncrease = random(1, Math.ceil((S.Wardeness.intelligence + S.Wardeness.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('wardeness', S.Wardeness, skillIncrease)}`); + r.push(slaveSkillIncrease('wardeness', S.Wardeness, skillIncrease)); } if (S.Wardeness.fetish === "sadist") { r.push(`${He} uses the prisoners to gratify ${his} sadism, terrifying them and quickly breaking their resistance.`); @@ -299,7 +299,7 @@ App.EndWeek.cellblockReport = function() { r = []; r.push(App.UI.DOM.makeElement("span", SlaveFullName(slave), "slave-name")); if (slave.choosesOwnAssignment === 2) { - r.push(`${App.SlaveAssignment.choosesOwnJob(slave)}`); + r.push(App.SlaveAssignment.choosesOwnJob(slave)); } else { r.push(`is confined in ${V.cellblockName}.`); } diff --git a/src/endWeek/reports/clinicReport.js b/src/endWeek/reports/clinicReport.js index a0850696ea910912955f2d9839cb138bb086cd68..33c4d37289a6c1ce072e75e0ecc0367cdd7e21b5 100644 --- a/src/endWeek/reports/clinicReport.js +++ b/src/endWeek/reports/clinicReport.js @@ -67,7 +67,7 @@ App.EndWeek.clinicReport = function() { healthBonus++; } else { const skillIncrease = jsRandom(1, Math.ceil((S.Nurse.intelligence + S.Nurse.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('nurse', S.Nurse, skillIncrease)}`); + r.push(slaveSkillIncrease('nurse', S.Nurse, skillIncrease)); } if (S.Nurse.fetish === "dom") { r.push(`${He} raps out commands with the confidence of long and partly sexual experience, so patients are inclined to follow even unpleasant medical instructions.`); diff --git a/src/endWeek/reports/clubReport.js b/src/endWeek/reports/clubReport.js index 4c98196a905b1b3760637155e6636c08f6679529..ff2a50d5808180bd34db961688fdbe06ecb22731 100644 --- a/src/endWeek/reports/clubReport.js +++ b/src/endWeek/reports/clubReport.js @@ -104,7 +104,7 @@ App.EndWeek.clubReport = function() { r.push(`${He} has basic musical knowledge and can keep the party going.`); } else { const skillIncrease = random(1, Math.ceil((S.DJ.intelligence + S.DJ.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('DJ', S.DJ, skillIncrease)}`); + r.push(slaveSkillIncrease('DJ', S.DJ, skillIncrease)); } App.Events.addNode(el, r, "p", "indent"); if (slaves.length + V.clubSlavesGettingHelp < 10 && V.DJnoSex !== 1 && !slaveResting(S.DJ)) { diff --git a/src/endWeek/reports/dairyReport.js b/src/endWeek/reports/dairyReport.js index 99d82428b24c3487126816eb8527171f6698cc9f..699c0dca80e4b6bffd2d03c5a6c4ee1fd30e9548 100644 --- a/src/endWeek/reports/dairyReport.js +++ b/src/endWeek/reports/dairyReport.js @@ -257,7 +257,7 @@ App.EndWeek.dairyReport = function() { r.push(`${He} has experience harvesting slave products from working for you.`); } else { const skillIncrease = random(1, Math.ceil((S.Milkmaid.intelligence + S.Milkmaid.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('milkmaid', S.Milkmaid, skillIncrease)}`); + r.push(slaveSkillIncrease('milkmaid', S.Milkmaid, skillIncrease)); } if (prostateStim === 1) { r.push(`${He} uses ${his} turgid cock to give prostate stimulation to slaves that need help ejaculating.`); diff --git a/src/endWeek/reports/farmyardReport.js b/src/endWeek/reports/farmyardReport.js index 13be9c58a75a3649d0eed8489ade95fc02a8ccf5..559e43a2f231d186de820e983c84d7861bf32a4a 100644 --- a/src/endWeek/reports/farmyardReport.js +++ b/src/endWeek/reports/farmyardReport.js @@ -164,7 +164,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { return `${He} has experience from working for you that helps ${him} in the difficult life of managing animals and property.`; } else { const skillIncrease = jsRandom(1, Math.ceil((slave.intelligence + slave.intelligenceImplant) / 32)); - r.push(`${slaveSkillIncrease('farmer', slave, skillIncrease)}`); + return slaveSkillIncrease('farmer', slave, skillIncrease); } } diff --git a/src/endWeek/reports/masterSuiteReport.js b/src/endWeek/reports/masterSuiteReport.js index af4e6a5407e7c767e172b1ccfc0bcb6b0eb4ab8b..34db6bddc4d9b74bcad3885b116e17d0855fbfb8 100644 --- a/src/endWeek/reports/masterSuiteReport.js +++ b/src/endWeek/reports/masterSuiteReport.js @@ -108,7 +108,7 @@ App.EndWeek.masterSuiteReport = function() { let r = []; r.push(`<span class='slave-name'>${SlaveFullName(slave)}</span>`); if (slave.choosesOwnAssignment === 2) { - r.push(`${App.SlaveAssignment.choosesOwnJob(slave)}`); + r.push(App.SlaveAssignment.choosesOwnJob(slave)); } else { r.push(`sees to your pleasure in ${V.masterSuiteName}.`); } diff --git a/src/endWeek/reports/nurseryReport.js b/src/endWeek/reports/nurseryReport.js index 5cda04c7848d0998b44eba4eb33d438796e6fb4d..dcc6676edb9d6d54084dde43db0826beb11c9be2 100644 --- a/src/endWeek/reports/nurseryReport.js +++ b/src/endWeek/reports/nurseryReport.js @@ -82,7 +82,7 @@ App.Facilities.Nursery.nurseryReport = function nurseryReport() { const skillIncrease = jsRandom(1, Math.ceil(( S.Matron.intelligence + S.Matron.intelligenceImplant ) / 15) + 8); - r.push(`${slaveSkillIncrease('matron', S.Matron, skillIncrease)}`); + r.push(slaveSkillIncrease('matron', S.Matron, skillIncrease)); } if (S.Matron.actualAge > 35) { diff --git a/src/endWeek/reports/personalAttention.js b/src/endWeek/reports/personalAttention.js index a4782a775c293074cd6d9cbccfe7b2e7450e4dea..a0c316819f8363888de7f8d28c4e6e5b4309c81d 100644 --- a/src/endWeek/reports/personalAttention.js +++ b/src/endWeek/reports/personalAttention.js @@ -183,7 +183,7 @@ globalThis.personalAttention = (function() { r.push(App.UI.DOM.makeElement("span", `build ${his} devotion to you`, "hotpink")); r.push(`by indulging ${his} perversions. Since ${he}'s an absolute slut for humiliation, you let ${him} whore around inside the special camera room whenever possible. When you're going out and feel like putting on a show, you bring ${him} on a leash and fuck ${him} in public. ${He} comes harder than ever when you push ${his} naked body up against the wall of a crowded public arcology elevator and molest ${him}.`); seX(slave, "oral", V.PC, "penetrative", 4); - r.push(`${VCheck.Both(slave, 4, 2)}`); + r.push(VCheck.Both(slave, 4, 2)); } else if ((slave.fetishKnown === 1) && (slave.fetishStrength > 60) && (slave.fetish === "humiliation")) { r.push(`Since ${slave.slaveName} has an unusual sexuality, you`); r.push(App.UI.DOM.makeElement("span", `build ${his} devotion to you`, "hotpink")); @@ -239,7 +239,7 @@ globalThis.personalAttention = (function() { r.push(App.UI.DOM.makeElement("span", `touched by the affection.`, "hotpink")); r.push(`${He} isn't used to being kissed, teased and massaged before ${he} takes cock. Slaves are usually used without regard to their orgasm, so ${he}'s also surprised and gratified when you make meticulous efforts to delay your own orgasm so it can coincide with ${his} own. ${He}'s a puddle on the sheets under your hands.`); seX(slave, "oral", V.PC, "penetrative", 4); - r.push(`${VCheck.Vaginal(slave, 4)}`); + r.push(VCheck.Vaginal(slave, 4)); } else if (slave.anus === 0) { r.push(`${slave.slaveName}'s accustomed to the slave life, so the experience is almost novel for ${him} and ${he} is`); r.push(App.UI.DOM.makeElement("span", `touched by the affection.`, "hotpink")); @@ -259,9 +259,9 @@ globalThis.personalAttention = (function() { r.push(`${He} isn't used to being kissed, teased and massaged before ${he} takes cock. Slaves are usually used without regard to their orgasm, so ${he}'s also surprised and gratified when you make meticulous efforts to delay your own orgasm so it can coincide with ${his} own. ${He}'s a puddle on the sheets under your hands.`); seX(slave, "oral", V.PC, "penetrative", 4); if (slave.vagina === 0) { - r.push(`${VCheck.Vaginal(slave, 4)}`); + r.push(VCheck.Vaginal(slave, 4)); } else { - r.push(`${VCheck.Both(slave, 4, 2)}`); + r.push(VCheck.Both(slave, 4, 2)); } } if (V.PC.skill.slaving >= 100) { @@ -447,7 +447,7 @@ globalThis.personalAttention = (function() { case "hates anal": r.push(`does not like it up the butt. Though it would be simpler to train ${him} out of it, you do your best to train ${him} to safely take a rough buttfuck without losing the fun aspects of anal rape, like the struggles, the whining, and the tears.`); if (canDoAnal(slave)) { - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); } else { r.push(`The inability to actually penetrate ${his} ass hinders your efforts, however.`); slave.training -= 20; @@ -457,10 +457,10 @@ globalThis.personalAttention = (function() { case "hates penetration": if ((slave.vagina > -1) && canDoVaginal(slave)) { r.push(`does not like sex. Though it would be simpler to train ${him} out of it, you do your best to train ${him} to safely take a hard pounding without losing the fun aspects of forced sex, like the struggles, the whining, and the tears.`); - r.push(`${VCheck.Vaginal(slave, 10)}`); + r.push(VCheck.Vaginal(slave, 10)); } else if (canDoAnal(slave)) { r.push(`does not like it up the butt. Though it would be simpler to train ${him} out of it, you do your best to train ${him} to safely take a rough buttfuck without losing the fun aspects of anal rape, like the struggles, the whining, and the tears.`); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); } else { r.push(`does not dicks in ${his} mouth. Though it would be simpler to train ${him} out of it, you do your best to train ${him} to safely take a rough facefuck without losing the fun aspects of forcing a slave to swallow a phallus, like the struggles, the gagging, and the tears.`); seX(slave, "oral", V.PC, "penetrative", 10); @@ -483,10 +483,10 @@ globalThis.personalAttention = (function() { } if (slave.vagina > 0 && canDoVaginal(slave)) { r.push(`lodged up ${his} cunt.`); - r.push(`${VCheck.Vaginal(slave, 10)}`); + r.push(VCheck.Vaginal(slave, 10)); } else if (slave.anus > 0 && canDoAnal(slave)) { r.push(`lodged up ${his} butt.`); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); } else { r.push(`down ${his} throat.`); seX(slave, "oral", V.PC, "penetrative", 10); @@ -542,19 +542,19 @@ globalThis.personalAttention = (function() { if (slave.fetish === "submissive") { r.push(`${He} really takes to your close attention;`); r.push(App.UI.DOM.makeElement("span", `${he}'s a natural submissive!`, "pink")); - (slave.fetishKnown = 1); + slave.fetishKnown = 1; } else if ((slave.fetish === "cumslut")) { r.push(`While you're giving ${him} personal attention, you discover by chance that`); r.push(App.UI.DOM.makeElement("span", `${he} has an oral fixation!`, "pink")); - (slave.fetishKnown = 1); + slave.fetishKnown = 1; } else if ((slave.fetish === "masochist")) { r.push(`While you're giving ${him} personal correction, you discover by chance that`); r.push(App.UI.DOM.makeElement("span", `${he} likes pain!`, "pink")); - (slave.fetishKnown = 1); + slave.fetishKnown = 1; } else if ((slave.fetish === "humiliation")) { r.push(`While you're giving ${him} personal attention in public, you discover by chance that`); r.push(App.UI.DOM.makeElement("span", `${he} likes humiliation!`, "pink")); - (slave.fetishKnown = 1); + slave.fetishKnown = 1; } } if (slave.sexualFlaw === "none") { @@ -839,7 +839,7 @@ globalThis.personalAttention = (function() { r.push(App.UI.DOM.makeElement("span", `become used to the abuse`, "gold")); r.push(`despite ${his}`); r.push(App.UI.DOM.makeElement("span", `resentment.`, "mediumorchid")); - r.push(`${VCheck.Both(slave, 10, 5)}`); + r.push(VCheck.Both(slave, 10, 5)); } else if ((slave.devotion < -60) && (slave.anus !== 0)) { r.push(`${slave.slaveName} is really wild and stern measures must be taken. So, ${he} is`); if (!canDoAnal(slave) || (slave.vagina > -1 && !canDoVaginal(slave))) { @@ -858,7 +858,7 @@ globalThis.personalAttention = (function() { r.push(`for something, anything, to break the monotony that ${he} begins to look forward to the next time a phallus will`); r.push(App.UI.DOM.makeElement("span", `force`, "gold")); r.push(`its way into ${him}.`); - r.push(`${VCheck.Both(slave, 6, 3)}`); + r.push(VCheck.Both(slave, 6, 3)); } else if ((slave.devotion < -50) && (slave.hStyle !== "shaved") && (random(1, 100) > 90)) { r.push(`${slave.slaveName} needs to be taken down a peg. Fortunately, you know just the thing. You bring ${him} into a bathroom, place a chair in the tub, and tie ${him} securely to the chair. ${He} isn't too perturbed — ${he} probably expects a facefuck under running water or something like that — but ${he} begins to cry when ${he}`); if (canHear(slave)) { @@ -886,7 +886,7 @@ globalThis.personalAttention = (function() { r.push(App.UI.DOM.makeElement("span", `become used to the abuse`, "gold")); r.push(`despite ${his}`); r.push(App.UI.DOM.makeElement("span", `resentment.`, "mediumorchid")); - r.push(`${VCheck.Anal(slave, 6)}`); + r.push(VCheck.Anal(slave, 6)); } else if (canDoVaginal(slave) && (random(1, 100) < 10)) { r.push(`Sometimes, there's no need to be clever. The first indication ${he} gets that you've decided to train ${him} this week is when ${he} wakes suddenly in the middle of the night to the filling sensation of a`); if (V.PC.dick !== 0) { @@ -898,7 +898,7 @@ globalThis.personalAttention = (function() { r.push(App.UI.DOM.makeElement("span", `become used to the abuse`, "gold")); r.push(`despite ${his}`); r.push(App.UI.DOM.makeElement("span", `resentment.`, "mediumorchid")); - r.push(`${VCheck.Vaginal(slave, 6)}`); + r.push(VCheck.Vaginal(slave, 6)); } else { r.push(`${slave.slaveName} violently resists you whenever ${he} can. This cannot be permitted, so after a particularly severe bout of physical resistance, you decide to employ an old method of breaking a mind without damaging a body. You secure ${him} to a board and gently wash ${his} face with a wet cloth. ${He} spits in defiance, only to be surprised when you lower the board so that ${his} feet are higher than ${his} head. You tie the cloth around ${his} face. A thin stream of water onto the cloth produces all the feeling and none of the reality of a slow death by drowning. Waterboarding isn't much use for extracting information, but it works well for`); r.push(App.UI.DOM.makeElement("span", `slavebreaking.`, "gold")); @@ -963,7 +963,7 @@ globalThis.personalAttention = (function() { r.push(App.UI.DOM.makeElement("span", `in favor of obedience,`, "gold")); r.push(`but the extreme stress`); r.push(App.UI.DOM.makeElement("span", `affects ${his} health, leaving ${him} with a ${slave.minorInjury}.`, ["health", "dec"])); - r.push(`${VCheck.Anal(slave, 6)}`); + r.push(VCheck.Anal(slave, 6)); } else if ((slave.scrotum > 0)) { slave.minorInjury = either("black eye", "bruise", "split lip"); r.push(`${slave.slaveName} has indefensible, obvious targets for harsh breaking. Whenever ${he} falls short in the smallest way, you bind ${him} in such a way that ${his}`); @@ -1170,7 +1170,7 @@ globalThis.personalAttention = (function() { case "hates anal": if (canDoAnal(slave)) { r.push(`${slave.slaveName} does not like it up the butt. ${He} views ${his} rectum as a dirty place that should not be involved in sex. Naturally, this is an unacceptable view for a Free Cities sex slave to hold. The best way to address this foolishness is by long practice, so you take every opportunity to stick things up ${his} behind, and when you bore of that, you require ${him} to assfuck ${himself} with a dildo instead.`); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); } else { r.push(`${slave.slaveName} does not like it up the butt. ${He} views ${his} rectum as a dirty place that should not be involved in sex. Naturally, this is an unacceptable view for a Free Cities sex slave to hold. The best way to address this foolishness is by long practice, so you take every opportunity to toy with ${his} rear. The inability to actually penetrate ${his} ass hinders your efforts, however.`); slave.training -= 20; @@ -1182,7 +1182,7 @@ globalThis.personalAttention = (function() { r.push(`${slave.slaveName} does not like sex. In earlier times, it was accepted and understood that some, particularly some women, had a low sex drive. No Free Cities sex slave is allowed to engage in such foolishness. It's a hard flaw to fix, and for now you substitute obedience for honest enjoyment, and just get ${him} used to strong stimulation without putting anything in ${him}.`); } else if (canDoAnal(slave)) { r.push(`${slave.slaveName} does not like it up the butt. ${He} views ${his} rectum as a dirty place that should not be involved in sex. Naturally, this is an unacceptable view for a Free Cities slut to hold. The best way to address this foolishness is by long practice, so you take every opportunity to stick things up ${his} behind, and when you bore of that, you require ${him} to assfuck ${himself} instead.`); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); } else { r.push(`${slave.slaveName} does not like it up the butt. ${He} views ${his} rectum as a dirty place that should not be involved in sex. Naturally, this is an unacceptable view for a Free Cities slut to hold. It's a hard flaw to fix when you can't introduce ${his} anus to things, but for now you substitute obedience for honest enjoyment, and just get ${him} used to strong stimulation without putting anything in ${him}.`); } @@ -1204,7 +1204,7 @@ globalThis.personalAttention = (function() { } if ((slave.anus > 0) && canDoAnal(slave)) { r.push(`to ${his} anus without mercy.`); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); } else { r.push(`to ${his} gagging throat.`); seX(slave, "oral", V.PC, "penetrative", 10); @@ -1352,7 +1352,7 @@ globalThis.personalAttention = (function() { } else { r.push(`Fortunately, all slaves have a convenient hole in which they can be fucked without even the slightest danger of pregnancy.`); r.push(`So, you address the situation by fucking ${him} up the ass, and making sure ${he} gets off to it, too.`); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); } } slave.training += 40; @@ -1769,7 +1769,7 @@ globalThis.personalAttention = (function() { r.push(`Every time you catch ${him} with ${his} chastity off, you're there to penetrate ${his} rectum.`); } r.push(induceFlawAbuseEffects(slave)); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); if (slave.training < 100) { r.push(`${He} does ${his} best to comply with your abuse of ${his} butthole, unknowingly condemning ${himself} to more assrape.`); } else { @@ -1922,7 +1922,7 @@ globalThis.personalAttention = (function() { r.push(`and remove ${his} chastity`); } r.push(`whenever ${he} can for use as one of your personal anal toys. You make ${his} anal orgasms predictably regular, doing your best to inculcate reliance on them.`); - r.push(`${VCheck.Anal(slave, 10)}`); + r.push(VCheck.Anal(slave, 10)); if (slave.training < 100) { r.push(`${He} enjoys all the anal attention, but will need more training to develop psychological addiction to buttsex.`); } else { diff --git a/src/endWeek/reports/schoolroomReport.js b/src/endWeek/reports/schoolroomReport.js index 9445769c43e98089b43c1f197dd2a4f6c91e3eee..d2cee049162c72ebe191d10b2972b13921659a59 100644 --- a/src/endWeek/reports/schoolroomReport.js +++ b/src/endWeek/reports/schoolroomReport.js @@ -68,7 +68,7 @@ App.EndWeek.schoolroomReport = function() { idleBonus++; } else { const skillIncrease = jsRandom(1, Math.ceil((S.Schoolteacher.intelligence + S.Schoolteacher.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('teacher', S.Schoolteacher, skillIncrease)}`); + r.push(slaveSkillIncrease('teacher', S.Schoolteacher, skillIncrease)); } if (S.Schoolteacher.visualAge > 35) { r.push(`${His} age earns ${him} the respect of ${his} students.`); diff --git a/src/endWeek/reports/servantsQuartersReport.js b/src/endWeek/reports/servantsQuartersReport.js index 9d3e5f8245ca718f2c9ba2bba278770cd6e4cf73..bc2557ea2a66cf618baa2128d0cb8c80d47616b3 100644 --- a/src/endWeek/reports/servantsQuartersReport.js +++ b/src/endWeek/reports/servantsQuartersReport.js @@ -112,7 +112,7 @@ App.EndWeek.servantsQuartersReport = function() { r.push(`${He} understands the basics of what it takes to keep your penthouse operational.`); } else { const skillIncrease = jsRandom(1, Math.ceil((S.Stewardess.intelligence + S.Stewardess.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('stewardess', S.Stewardess, skillIncrease)}`); + r.push(slaveSkillIncrease('stewardess', S.Stewardess, skillIncrease)); } if (S.Stewardess.actualAge > 35) { stewardessBonus += 25; diff --git a/src/endWeek/reports/spaReport.js b/src/endWeek/reports/spaReport.js index e4da9e19cfdbab15d17f2f355972942aac1baab5..8cc8d9337a1490f67ac877fae7a7968bf6960a15 100644 --- a/src/endWeek/reports/spaReport.js +++ b/src/endWeek/reports/spaReport.js @@ -72,7 +72,7 @@ App.EndWeek.spaReport = function() { idleBonus++; } else { const skillIncrease = random(1, Math.ceil((S.Attendant.intelligence + S.Attendant.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('attendant', S.Attendant, skillIncrease)}`); + r.push(slaveSkillIncrease('attendant', S.Attendant, skillIncrease)); } if (!canSee(S.Attendant)) { r.push(`${His} blindness allows ${him} to deeply connect with ${his} charges.`); diff --git a/src/endWeek/saBeYourHeadGirl.js b/src/endWeek/saBeYourHeadGirl.js index a2d96eef56f3a41fc72824baf2c12b2ca29a8cdc..1900aed06ecaaf22a22be30aa625808764980957 100644 --- a/src/endWeek/saBeYourHeadGirl.js +++ b/src/endWeek/saBeYourHeadGirl.js @@ -279,7 +279,7 @@ App.SlaveAssignment.beYourHeadGirl = (function() { function cleanupVars(slave) { if (!App.Data.Careers.Leader.HG.includes(slave.career) && slave.skill.headGirl < V.masteredXP) { const skillIncrease = jsRandom(1, Math.ceil((slave.intelligence + slave.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('headGirl', slave, skillIncrease)}`); + r.push(slaveSkillIncrease('headGirl', slave, skillIncrease)); } slave.health.tired = Math.clamp(slave.health.tired, 0, 1000); } diff --git a/src/endWeek/saClothes.js b/src/endWeek/saClothes.js index 9f4f4c782a46a7e0ca4018925c1ec2a9e9021737..7f89c2ed433228de85fbf7cc362d0f23b526d34a 100644 --- a/src/endWeek/saClothes.js +++ b/src/endWeek/saClothes.js @@ -559,13 +559,13 @@ App.SlaveAssignment.clothes = (function() { if (slave.mouthAccessory === "dildo gag") { if (slave.skill.oral <= 10) { r.push(`Living gagged by a dildo, ${he} can't help but get better at having things down ${his} throat.`); - r.push(`${slaveSkillIncrease('oral', slave, 5)}`); + r.push(slaveSkillIncrease('oral', slave, 5)); } } if (slave.mouthAccessory === "massive dildo gag") { if (slave.skill.oral < 75) { r.push(`Living gagged by such an immense dildo, ${he} can't help but get even better at having giant things rammed down ${his} throat.`); - r.push(`${slaveSkillIncrease('oral', slave, 5)}`); + r.push(slaveSkillIncrease('oral', slave, 5)); } } } diff --git a/src/endWeek/saGuardYou.js b/src/endWeek/saGuardYou.js index 7ff2e7c34ce5e0a0636eccf18d273e67421b6fb1..78f68197345c9693c894461c01122c23ce762c5b 100644 --- a/src/endWeek/saGuardYou.js +++ b/src/endWeek/saGuardYou.js @@ -74,7 +74,7 @@ App.SlaveAssignment.guardYou = (function() { r.push(`${He} has experience in personal defense from working for you.`); } else { const skillIncrease = jsRandom(1, Math.ceil((slave.intelligence + slave.intelligenceImplant) / 15) + 8); - r.push(`${slaveSkillIncrease('bodyguard', slave, skillIncrease)}`); + r.push(slaveSkillIncrease('bodyguard', slave, skillIncrease)); } if (V.AgePenalty !== 0) { diff --git a/src/endWeek/saLiveWithHG.js b/src/endWeek/saLiveWithHG.js index 34c9a78e2bf5640d9a10a82ad42e79e184c0e89a..a2ab0827c545dc32a5331712bc6e2e821614c9fe 100644 --- a/src/endWeek/saLiveWithHG.js +++ b/src/endWeek/saLiveWithHG.js @@ -449,16 +449,16 @@ App.SlaveAssignment.liveWithHG = (function() { function HGTrainsSlave(slave, HG) { if (slave.skill.oral <= 30) { r.push(`${HG.slaveName} wants to come home to a talented tongue, so ${he2} trains slave.slaveName's oral skills.`); - r.push(`${slaveSkillIncrease('oral', slave, 10)}`); + r.push(slaveSkillIncrease('oral', slave, 10)); } else if (slave.vagina > 0 && canDoVaginal(slave) && slave.skill.vaginal <= 30) { r.push(`${HG.slaveName} wants ${his2} personal sex slave to be as skilled with ${his} pussy as possible, so ${he2} trains ${slave.slaveName}'s vaginal skills.`); - r.push(`${slaveSkillIncrease('vaginal', slave, 10)}`); + r.push(slaveSkillIncrease('vaginal', slave, 10)); } else if (slave.anus > 0 && canDoAnal(slave) && slave.skill.anal <= 30) { r.push(`${HG.slaveName} wants ${his2} personal sex slave to be a skillful backdoor whore, so ${he2} trains ${slave.slaveName}'s anal skills.`); - r.push(`${slaveSkillIncrease('anal', slave, 10)}`); + r.push(slaveSkillIncrease('anal', slave, 10)); } else if (slave.skill.entertainment <= 30) { r.push(`${HG.slaveName} wants to be kept amused in ${his2} occasional free time, so ${he2} trains ${slave.slaveName}'s entertainment skills.`); - r.push(`${slaveSkillIncrease('entertainment', slave, 10)}`); + r.push(slaveSkillIncrease('entertainment', slave, 10)); } else if (slave.sexualFlaw !== "none") { r.push(`${HG.slaveName} is annoyed by ${slave.slaveName}'s sexual flaws, so ${he2} <span class="flaw break">trains</span> ${him} out of them.`); slave.sexualFlaw = "none"; @@ -738,7 +738,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse += 5; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 5, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 5, 1, V.HeadGirlID)); } } else if (slave.boobs >= 500) { mammaryUse += 5; @@ -748,12 +748,12 @@ App.SlaveAssignment.liveWithHG = (function() { if (slave.vagina > 0 && canDoVaginal(slave)) { vaginalUse += 5; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 5, 0, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 5, 0, V.HeadGirlID)); } } else if (canDoAnal(slave)) { analUse += 5; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 5, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 5, 1, V.HeadGirlID)); } } else { oralUse += 5; @@ -766,7 +766,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else if (slave.boobs >= 500) { mammaryUse += 3; @@ -776,12 +776,12 @@ App.SlaveAssignment.liveWithHG = (function() { if (slave.vagina > 0 && canDoVaginal(slave)) { vaginalUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 0, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 0, V.HeadGirlID)); } } else if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else { oralUse += 3; @@ -800,7 +800,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else if (slave.boobs >= 500) { mammaryUse += 3; @@ -810,12 +810,12 @@ App.SlaveAssignment.liveWithHG = (function() { if (slave.vagina > 0 && canDoVaginal(slave)) { vaginalUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 0, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 0, V.HeadGirlID)); } } else if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else { oralUse += 3; @@ -834,7 +834,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else if (slave.boobs >= 500) { mammaryUse += 3; @@ -844,12 +844,12 @@ App.SlaveAssignment.liveWithHG = (function() { if (slave.vagina > 0 && canDoVaginal(slave)) { vaginalUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 0, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 0, V.HeadGirlID)); } } else if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else { oralUse += 3; @@ -875,7 +875,7 @@ App.SlaveAssignment.liveWithHG = (function() { HG.counter.penetrative += 10; V.penetrativeTotal += 10; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 10, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 10, 1, V.HeadGirlID)); } } } else if (HG.fetish === "cumslut" && HG.fetishKnown === 1) { @@ -902,7 +902,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse += 10; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 10, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 10, 1, V.HeadGirlID)); } } else { oralUse += 10; @@ -921,7 +921,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else if (slave.boobs >= 500) { mammaryUse += 3; @@ -931,12 +931,12 @@ App.SlaveAssignment.liveWithHG = (function() { if (slave.vagina > 0 && canDoVaginal(slave)) { vaginalUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 0, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 0, V.HeadGirlID)); } } else if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else { oralUse += 3; @@ -954,7 +954,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse++; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 1, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 1, 1, V.HeadGirlID)); } } else if (slave.boobs >= 500) { mammaryUse++; @@ -964,12 +964,12 @@ App.SlaveAssignment.liveWithHG = (function() { if (slave.vagina > 0 && canDoVaginal(slave)) { vaginalUse++; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 1, 0, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 1, 0, V.HeadGirlID)); } } else if (canDoAnal(slave)) { analUse++; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 1, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 1, 1, V.HeadGirlID)); } } else { oralUse++; @@ -989,7 +989,7 @@ App.SlaveAssignment.liveWithHG = (function() { if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else if (slave.boobs >= 300) { mammaryUse += 3; @@ -999,12 +999,12 @@ App.SlaveAssignment.liveWithHG = (function() { if (slave.vagina > 0 && canDoVaginal(slave)) { vaginalUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 0, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 0, V.HeadGirlID)); } } else if (canDoAnal(slave)) { analUse += 3; if (canImpreg(slave, HG)) { - r.push(`${knockMeUp(slave, 3, 1, V.HeadGirlID)}`); + r.push(knockMeUp(slave, 3, 1, V.HeadGirlID)); } } else if (slave.boobs >= 300) { mammaryUse += 3; diff --git a/src/endWeek/saPleaseYou.js b/src/endWeek/saPleaseYou.js index 8c390277e44e98af1e86df7455873aea7eea55e1..428772a9ed5a949577732487ffb88c68c984704c 100644 --- a/src/endWeek/saPleaseYou.js +++ b/src/endWeek/saPleaseYou.js @@ -23,7 +23,7 @@ App.SlaveAssignment.pleaseYou = (function() { return saPleaseYou; /** - * @param {App.Entity.SlaveState} slave + * @param {FC.ReportSlave} slave * @returns {string} */ function saPleaseYou(slave) { @@ -206,7 +206,7 @@ App.SlaveAssignment.pleaseYou = (function() { } if (slave.skill.vaginal < 100) { r.push(`After a lot of time spent having vanilla sex, ${his} <span class="green">vaginal skill improves.</span>`); - r.push(`${slaveSkillIncrease('vaginal', slave, trainingEfficiency)}`); + r.push(slaveSkillIncrease('vaginal', slave, trainingEfficiency)); } } if (V.PC.dick !== 0) { @@ -258,7 +258,7 @@ App.SlaveAssignment.pleaseYou = (function() { } if (V.PC.dick !== 0) { if (canImpreg(slave, V.PC)) { - r.push(`${knockMeUp(slave, vaginalUse, 0, -1, true)}`); + r.push(knockMeUp(slave, vaginalUse, 0, -1, true)); } } slave.counter.vaginal += vaginalUse; @@ -371,7 +371,7 @@ App.SlaveAssignment.pleaseYou = (function() { } if (slave.skill.anal < 100) { r.push(`After a lot of time spent getting buttfucked, ${his} <span class="green">anal skill improves.</span>`); - r.push(`${slaveSkillIncrease('anal', slave, trainingEfficiency)}`); + r.push(slaveSkillIncrease('anal', slave, trainingEfficiency)); } if (slave.fetish === "buttslut") { if (slave.fetishKnown === 1) { @@ -411,7 +411,7 @@ App.SlaveAssignment.pleaseYou = (function() { } if (V.PC.dick !== 0) { if (canImpreg(slave, V.PC)) { - r.push(`${knockMeUp(slave, analUse, 1, -1, true)}`); + r.push(knockMeUp(slave, analUse, 1, -1, true)); } } slave.counter.anal += analUse; @@ -614,7 +614,7 @@ App.SlaveAssignment.pleaseYou = (function() { r.push(`eating you out,`); } r.push(`${his} <span class="green">oral skill improves.</span>`); - r.push(`${slaveSkillIncrease('oral', slave, trainingEfficiency)}`); + r.push(slaveSkillIncrease('oral', slave, trainingEfficiency)); } if (slave.fetish === "cumslut") { if (slave.fetishKnown === 1) { @@ -1149,7 +1149,7 @@ App.SlaveAssignment.pleaseYou = (function() { slave.counter.penetrative += penetrativeUse; V.penetrativeTotal += penetrativeUse; if (canImpreg(V.PC, slave)) { - r.push(`${knockMeUp(V.PC, penetrativeUse, 0, slave.ID)}`); + r.push(knockMeUp(V.PC, penetrativeUse, 0, slave.ID)); } if (V.policies.sexualOpenness === 0) { r.push(`Rumors spread that you <span class="red">enjoy taking it from slaves.</span>`); @@ -1426,13 +1426,13 @@ App.SlaveAssignment.pleaseYou = (function() { r.push(`${his} mouth on your cunt,`); } r.push(`${his} <span class="green">oral skill improves.</span>`); - r.push(`${slaveSkillIncrease('oral', slave, trainingEfficiency)}`); + r.push(slaveSkillIncrease('oral', slave, trainingEfficiency)); } else if (slave.skill.vaginal < 100 && slave.vagina > 0 && canDoVaginal(slave)) { r.push(`After a lot of time spent getting fucked, ${his} <span class="green">vaginal skill improves.</span>`); - r.push(`${slaveSkillIncrease('vaginal', slave, trainingEfficiency)}`); + r.push(slaveSkillIncrease('vaginal', slave, trainingEfficiency)); } else if (slave.skill.anal < 100 && slave.anus !== 0 && canDoAnal(slave)) { r.push(`After a lot of time spent taking it up the ass, ${his} <span class="green">anal skill improves.</span>`); - r.push(`${slaveSkillIncrease('anal', slave, trainingEfficiency)}`); + r.push(slaveSkillIncrease('anal', slave, trainingEfficiency)); } } } @@ -1447,7 +1447,7 @@ App.SlaveAssignment.pleaseYou = (function() { } /** - * @param {App.Entity.SlaveState} slave + * @param {FC.ReportSlave} slave * */ function physicalEffects(slave) { diff --git a/src/endWeek/saRecruitGirls.js b/src/endWeek/saRecruitGirls.js index 6ec5d06812a8808ddd50a877e792a09861b41709..74a91e991f7b0198ce21db44ed3b28490c846000 100644 --- a/src/endWeek/saRecruitGirls.js +++ b/src/endWeek/saRecruitGirls.js @@ -810,7 +810,7 @@ App.SlaveAssignment.recruitGirls = (function() { V.recruiterProgress += 1; } else { const skillIncrease = random(1, Math.ceil((slaveInt) / 15) + 8); - r.push(`${slaveSkillIncrease('recruiter', slave, skillIncrease)}`); + r.push(slaveSkillIncrease('recruiter', slave, skillIncrease)); } if (slaveInt > 50) { diff --git a/src/endWeek/saRelationships.js b/src/endWeek/saRelationships.js index f95e9d16086b087b7380ee9868cfe9abd4e86fe1..ec6dcb0bd3fd5a47af549a662644d2fb446b490c 100644 --- a/src/endWeek/saRelationships.js +++ b/src/endWeek/saRelationships.js @@ -1125,7 +1125,7 @@ App.SlaveAssignment.relationships = (function() { r.push(`is older, more experienced, and`); if (lover.skill.oral > slave.skill.oral) { r.push(`better at blowjobs than ${he} is. They are such good slaves that the senior ${girl2} serves as a mentor to the junior, improving ${his} oral skills.`); - r.push(`${slaveSkillIncrease('oral', slave, 5)}`); + r.push(slaveSkillIncrease('oral', slave, 5)); } else if (lover.skill.anal > slave.skill.anal) { r.push(`better at`); if (lover.anus > 0) { @@ -1134,7 +1134,7 @@ App.SlaveAssignment.relationships = (function() { r.push(`using ${his2} rear`); } r.push(`than ${he} is, and they are such good slaves that the senior ${girl2} serves as a mentor to the junior, improving ${his} anal skills.`); - r.push(`${slaveSkillIncrease('anal', slave, 5)}`); + r.push(slaveSkillIncrease('anal', slave, 5)); } else if (lover.skill.vaginal > slave.skill.vaginal && slave.vagina > 0 && lover.vagina > 0) { if (lover.vagina > 0) { r.push(`a better lover`); @@ -1148,7 +1148,7 @@ App.SlaveAssignment.relationships = (function() { r.push(`is,`); } r.push(`and they are such good slaves that the senior ${girl2} serves as a mentor to the junior, improving ${his} vaginal skills.`); - r.push(`${slaveSkillIncrease('vaginal', slave, 5)}`); + r.push(slaveSkillIncrease('vaginal', slave, 5)); } else if (lover.trust > slave.trust) { r.push(`a better slave than ${he} is, and they are such obedient slaves that the senior ${girl2} serves as a mentor to the junior, <span class="trust inc">improving ${his} trust.</span>`); slave.trust += 5; diff --git a/src/endWeek/saRivalries.js b/src/endWeek/saRivalries.js index 187f5c176605d406bb1dc7d6d2ffbe287c9681bc..a3aaf8c05152cac8da42ebba621a92be5758ca20 100644 --- a/src/endWeek/saRivalries.js +++ b/src/endWeek/saRivalries.js @@ -161,7 +161,7 @@ App.SlaveAssignment.rivalries = (function() { r.push(`wait for you to use them`); break; default: - r.push(`${potentialRival.assignment}`); + r.push(potentialRival.assignment); } r.push(`and <span class="rivalry inc">start to dislike each other.</span>`); foundRival = 1; diff --git a/src/endWeek/saServeYourOtherSlaves.js b/src/endWeek/saServeYourOtherSlaves.js index f76a5c12ac6b5e82f3f3915c3ca317d9678217f2..a1c0b9f79dfb472c9924c2868cee4f50380f3598 100644 --- a/src/endWeek/saServeYourOtherSlaves.js +++ b/src/endWeek/saServeYourOtherSlaves.js @@ -394,7 +394,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { domSlave.counter.anal += penetrativeUse; V.analTotal += penetrativeUse; if (canImpreg(domSlave, slave)) { - r.push(`${knockMeUp(domSlave, 30, 1, slave.ID, true)}`); + r.push(knockMeUp(domSlave, 30, 1, slave.ID, true)); if (domSlave.pregKnown === 1) { r.push(`With so many potent deposits into ${his2} fertile rear, it comes as little surprise when <span class="lime">${he2} ends up pregnant with ${subName}'s child.</span>`); } @@ -510,7 +510,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { domSlave.counter.vaginal += penetrativeUse; V.vaginalTotal += penetrativeUse; if (canImpreg(domSlave, slave)) { - r.push(`${knockMeUp(domSlave, 30, 0, slave.ID, true)}`); + r.push(knockMeUp(domSlave, 30, 0, slave.ID, true)); if (domSlave.pregKnown === 1) { r.push(`With so many potent loads kissing ${his2} cervix, it comes as little surprise when <span class="lime">${he2} ends up pregnant with ${subName}'s child.</span>`); } @@ -520,7 +520,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { domSlave.counter.anal += penetrativeUse; V.analTotal += penetrativeUse; if (canImpreg(domSlave, slave)) { - r.push(`${knockMeUp(domSlave, 30, 1, slave.ID, true)}`); + r.push(knockMeUp(domSlave, 30, 1, slave.ID, true)); if (domSlave.pregKnown === 1) { r.push(`With so many potent deposits into ${his2} fertile rear, it comes as little surprise when <span class="lime">${he2} ends up pregnant with ${subName}'s child.</span>`); } @@ -536,7 +536,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { domSlave.counter.vaginal += penetrativeUse; V.vaginalTotal += penetrativeUse; if (canImpreg(domSlave, slave)) { - r.push(`${knockMeUp(domSlave, 30, 0, slave.ID)}`); + r.push(knockMeUp(domSlave, 30, 0, slave.ID)); if (domSlave.pregKnown === 1) { r.push(`With so many potent loads kissing ${his2} cervix, it comes as little surprise when <span class="lime">${he2} ends up pregnant with ${subName}'s child.</span>`); } @@ -546,7 +546,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { domSlave.counter.anal += penetrativeUse; V.analTotal += penetrativeUse; if (canImpreg(domSlave, slave)) { - r.push(`${knockMeUp(domSlave, 30, 1, slave.ID)}`); + r.push(knockMeUp(domSlave, 30, 1, slave.ID)); if (domSlave.pregKnown === 1) { r.push(`With so many potent deposits into ${his2} fertile rear, it comes as little surprise when <span class="lime">${he2} ends up pregnant with ${subName}'s child.</span>`); } @@ -1046,7 +1046,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { r.push(`bends ${him} over,`); } r.push(`mounts ${his} fertile ${slave.mpreg > 0 ? "ass" : ""}pussy and lets loose the first of many loads. ${subName} spends the week being thoroughly bred until ${domName}'s potent sperm <span class="hotpink">achieves ${his2} goal,</span> and then a bit more for good measure.`); - r.push(`${knockMeUp(slave, 100, 2, domSlave.ID)}`); + r.push(knockMeUp(slave, 100, 2, domSlave.ID)); fuckCount = jsRandom(10, 16); if (slave.mpreg > 0) { analUse = fuckCount; @@ -1135,11 +1135,11 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } if (canPenetrate(domSlave)) { fuckCount = jsRandom(15, 25); - r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(slave, domSlave, fuckCount)); } else if (canPenetrate(slave) && ((canDoVaginal(domSlave) && domSlave.vagina > 0) || (canDoAnal(domSlave) && domSlave.anus > 0))) { /* yes, that means she rides her */ penetrativeUse = jsRandom(15, 25); - r.push(`${SimpleSexAct.Slaves(domSlave, slave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(domSlave, slave, fuckCount)); } else { fuckCount = jsRandom(15, 25); } @@ -1163,7 +1163,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { r.push(`and begins to work ${him} to orgasm.`); } r.push(`${domName} spends the week extracting loads from ${subName} until ${his} potent sperm <span class="hotpink">slakes the burning need in ${his2} loins.</span>`); - r.push(`${knockMeUp(domSlave, 100, 2, slave.ID)}`); + r.push(knockMeUp(domSlave, 100, 2, slave.ID)); fuckCount = jsRandom(10, 16); penetrativeUse = fuckCount; slave.counter.penetrative += fuckCount; @@ -1228,11 +1228,11 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } if (canPenetrate(domSlave)) { fuckCount = jsRandom(15, 25); - r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(slave, domSlave, fuckCount)); } else if (canPenetrate(slave) && ((canDoVaginal(domSlave) && domSlave.vagina > 0) || (canDoAnal(domSlave) && domSlave.anus > 0))) { /* yes, that means she rides her */ penetrativeUse = jsRandom(15, 25); - r.push(`${SimpleSexAct.Slaves(domSlave, slave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(domSlave, slave, fuckCount)); } else { fuckCount = jsRandom(15, 25); } @@ -1253,11 +1253,11 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } if (canPenetrate(domSlave)) { fuckCount = jsRandom(15, 25); - r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(slave, domSlave, fuckCount)); } else if (canPenetrate(slave) && ((canDoVaginal(domSlave) && domSlave.vagina > 0) || (canDoAnal(domSlave) && domSlave.anus > 0))) { /* yes, that means she rides her */ penetrativeUse = jsRandom(15, 25); - r.push(`${SimpleSexAct.Slaves(domSlave, slave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(domSlave, slave, fuckCount)); } else { fuckCount = jsRandom(15, 25); } @@ -1270,7 +1270,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { r.push(`${domName} doesn't get to use ${his2} still-functional cock as much as ${he2} would like; it often stands stiff and untended while ${he2}'s being used. Not this week: ${subName} spends the week with ${domName}'s ${domRace} dick thrusting in and out of ${his} ${subRace} body, whenever ${he2} feels like having an enthusiastic fuck. <span class="hotpink">${domName} loves having someone to tend to ${his2} prick at last.</span>`); } fuckCount = jsRandom(9, 12); - r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(slave, domSlave, fuckCount)); } else if (hasAnyArms(domSlave) && domSlave.attrXX > 85 && slave.dick === 0 && slave.vagina > -1) { // feminine check if (slave.devotion < -20) { r.push(`Since ${domName} loves girls, ${subName} finds ${himself} groped, fingered, and toyed with. ${He} spends the week trying to avoid ${domName}'s playful ${domRace}`); @@ -1299,7 +1299,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } if (canPenetrate(domSlave)) { fuckCount = jsRandom(9, 12); - r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(slave, domSlave, fuckCount)); } else { fuckCount = jsRandom(9, 12); } @@ -1330,15 +1330,15 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } } fuckCount = jsRandom(9, 12); - r.push(`${SimpleSexAct.Slaves(domSlave, slave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(domSlave, slave, fuckCount)); } else if (isAmputee(slave)) { r.push(`${domName} doesn't have any special desires, so ${he2} simply uses the helpless ${subName} for comfort and convenience. ${subName} finds ${his} helpless ${subRace} torso being used as a bath toy, a bedwarmer, and for sexual convenience. <span class="hotpink">${domName} enjoys the ease and companionship.</span>`); fuckCount = jsRandom(9, 12); - r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(slave, domSlave, fuckCount)); } else { r.push(`${domName} doesn't have any special desires ${subName} can satisfy, so ${he2} simply uses ${subName} for comfort and convenience. ${subName} washes ${his} superior's ${domRace} body thoroughly and uses ${his} own ${subRace} body to warm ${domName}'s bed at night. <span class="hotpink">${domName} enjoys the ease and companionship.</span>`); fuckCount = jsRandom(9, 12); - r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); + r.push(SimpleSexAct.Slaves(slave, domSlave, fuckCount)); } domSlave.devotion += 4; } @@ -1903,23 +1903,23 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } else if (jobType === "cumdump") { if (oralUse > 0) { if (slave.skill.oral < 30) { - r.push(`${slaveSkillIncrease('oral', slave, (Math.floor((oralUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('oral', slave, (Math.floor((oralUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } else if (slave.skill.oral < 100) { - r.push(`${slaveSkillIncrease('oral', slave, (Math.floor((oralUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('oral', slave, (Math.floor((oralUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } } if (vaginalUse > 0) { if (slave.skill.vaginal < 30) { - r.push(`${slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } else if (slave.skill.vaginal < 100) { - r.push(`${slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } } if (analUse > 0) { if (slave.skill.anal < 30) { - r.push(`${slaveSkillIncrease('anal', slave, (Math.floor((analUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('anal', slave, (Math.floor((analUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } else if (slave.skill.anal < 100) { - r.push(`${slaveSkillIncrease('anal', slave, (Math.floor((analUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('anal', slave, (Math.floor((analUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } } } else if (jobType === "sub") { @@ -1927,25 +1927,25 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { if (oralUse > 0) { if (slave.skill.oral < domSlave.skill.oral) { r.push(`${domName} is better at oral than ${subName} and lets ${him} in on some of ${his2} techniques.`); - r.push(`${slaveSkillIncrease('oral', slave, (Math.floor(oralUse + Math.floor(slave.intelligence + slave.intelligenceImplant) / 32)))}`); + r.push(slaveSkillIncrease('oral', slave, (Math.floor(oralUse + Math.floor(slave.intelligence + slave.intelligenceImplant) / 32)))); } else if (slave.skill.oral < 30) { - r.push(`${slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 4) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } } if (vaginalUse > 0) { if (slave.skill.vaginal < domSlave.skill.vaginal && domSlave.vagina >= 0) { r.push(`${domName} knows how to use ${his2} pussy better than ${subName} does and passes on some of ${his2} knowledge.`); - r.push(`${slaveSkillIncrease('vaginal', slave, (Math.floor(vaginalUse + Math.floor(slave.intelligence + slave.intelligenceImplant) / 32)))}`); + r.push(slaveSkillIncrease('vaginal', slave, (Math.floor(vaginalUse + Math.floor(slave.intelligence + slave.intelligenceImplant) / 32)))); } else if (slave.skill.vaginal < 30) { - r.push(`${slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } } if (analUse > 0) { if (slave.skill.anal < domSlave.skill.anal) { r.push(`${domName} is more familiar with anal sex than ${subName} is and lets some of ${his2} skill rub off on ${him}.`); - r.push(`${slaveSkillIncrease('anal', slave, (Math.floor(analUse + Math.floor(slave.intelligence + slave.intelligenceImplant) / 32)))}`); + r.push(slaveSkillIncrease('anal', slave, (Math.floor(analUse + Math.floor(slave.intelligence + slave.intelligenceImplant) / 32)))); } else if (slave.skill.anal < 30) { - r.push(`${slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))}`); + r.push(slaveSkillIncrease('vaginal', slave, (Math.floor((vaginalUse / 2) + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32))))); } } } diff --git a/src/js/birth/birth.js b/src/js/birth/birth.js index 579396e3412c25b10746f38dca6bab235799a8bc..ce395b3bede0c4085402ac53f5081588375b2f1a 100644 --- a/src/js/birth/birth.js +++ b/src/js/birth/birth.js @@ -8770,7 +8770,7 @@ globalThis.birth = function(slave, {birthStorm = false, cSection = false} = {}) r.push(`courtesan dress`); break; default: - r.push(`${slave.clothes}`); + r.push(slave.clothes); } r.push(`as instinct takes hold compelling ${him} to begin pushing. ${He} pays no mind to who may be watching ${his} naked`); if (slave.mpreg === 1) { @@ -9069,7 +9069,7 @@ globalThis.birth = function(slave, {birthStorm = false, cSection = false} = {}) r.push(`thong`); break; default: - r.push(`${slave.clothes}`); + r.push(slave.clothes); } r.push(`and tosses it aside. Quickly ${he} spreads ${his} legs and begins pushing out`); if (slave.broodmother > 0) { diff --git a/src/npc/descriptions/womb/pregnancy.js b/src/npc/descriptions/womb/pregnancy.js index c0f7c7b7d9f3d2eb63b36d48a3f82e1eeea90454..348d5a213c1f840e8a79ea50a5314dc79ff0a2d8 100644 --- a/src/npc/descriptions/womb/pregnancy.js +++ b/src/npc/descriptions/womb/pregnancy.js @@ -658,7 +658,7 @@ App.Desc.pregnancy = function(slave, {market, eventDescription} = {}) { r.push(`almost ready to give birth.`); } } - r.push(`${App.Desc.superfetation(slave, {market: market})}`); + r.push(App.Desc.superfetation(slave, {market: market})); } else if (slave.bellyImplant >= 10000) { r.push(`${He} looks <span class="pink">hugely pregnant.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`); } else if (slave.bellyPreg >= 5000) { diff --git a/src/npc/generate/newSlaveIntro.js b/src/npc/generate/newSlaveIntro.js index 4eb889122632bbee93782c03d6257686d3d5009e..acf5cb05f55832110436c13ce774098ee34ccd90 100644 --- a/src/npc/generate/newSlaveIntro.js +++ b/src/npc/generate/newSlaveIntro.js @@ -3343,7 +3343,7 @@ App.UI.newSlaveIntro = function(slave, slave2, {tankBorn = false, momInterest = slave.fetishStrength = 20; } if (canImpreg(V.PC, slave)) { - r.push(`${knockMeUp(V.PC, 100, 0, slave.ID)}`); + r.push(knockMeUp(V.PC, 100, 0, slave.ID)); r.push(`You groan as you rub your belly. You were fertile and are now likely <span class="lime">quite pregnant.</span>`); } App.Events.addNode(el, r); diff --git a/src/personalAssistant/assistantAppearance.js b/src/personalAssistant/assistantAppearance.js index 84629d1a8c5ccaf5af86c69d62c95f69040f0ea5..eeceb830c4a2e17625d2a1811bd419fb7a3cb2da 100644 --- a/src/personalAssistant/assistantAppearance.js +++ b/src/personalAssistant/assistantAppearance.js @@ -12,6 +12,23 @@ globalThis.PersonalAssistantAppearance = function() { heM, hisM, himM, girlM, himselfM, womanM, sisterM, wifeM, daughterM, loliM } = (V.assistant.market) ? getPronouns(assistant.pronouns().market).appendSuffix('M') : getPronouns(assistant.pronouns().main).appendSuffix('M'); // TODO not sure how to set this is market is not defined, using main as fallback for now for testing. + function assistantRace() { + if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { + return V.arcologies[0].FSSupremacistRace; + } else if (V.assistant.fsAppearance === "subjugationist") { + return V.arcologies[0].FSSubjugationistRace; + } + return ''; + } + + function assistantRaceSkin(def) { + const race = assistantRace(); + if (race) { + return randomRaceSkin(race); + } + return def; + } + const { hisU, himU, himselfU, girlU } = getNonlocalPronouns(V.seeDicks).appendSuffix('U'); @@ -20,21 +37,7 @@ globalThis.PersonalAssistantAppearance = function() { const r = []; switch (V.assistant.appearance) { case "monstergirl": - r.push(`${HeA}'s a cute little`); - if (V.assistant.fsAppearance === "supremacist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`monster ${girlA} with`); - if (V.arcologies[0].FSSupremacist !== "unset" && typeof V.arcologies[0].FSSupremacistRace === "string" && V.assistant.fsAppearance !== "subjugationist") { - r.push(randomRaceSkin(V.arcologies[0].FSSupremacistRace)); - } else if (V.assistant.fsAppearance === "subjugationist" && typeof V.arcologies[0].FSSubjugationistRace === "string") { - r.push(randomRaceSkin(V.arcologies[0].FSSubjugationistRace)); - } else { - r.push(`pale`); - } - r.push(`skin, perky breasts, green tentacles instead of hair, and two dicks. ${HisA} eyes are large, expressive, and surprisingly innocent.`); + r.push(`${HeA}'s a cute little ${assistantRace()} monster ${girlA} with ${assistantRaceSkin("pale")} skin, perky breasts, green tentacles instead of hair, and two dicks. ${HisA} eyes are large, expressive, and surprisingly innocent.`); if (V.assistant.fsOptions) { r.push(FSfunc()); } @@ -66,21 +69,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "shemale": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`bimbo shemale with bleached blonde hair,`); - if (V.arcologies[0].FSSupremacist !== "unset" && typeof V.arcologies[0].FSSupremacistRace === "string" && V.assistant.fsAppearance !== "subjugationist") { - r.push(randomRaceSkin(V.arcologies[0].FSSupremacistRace)); - } else if (V.assistant.fsAppearance === "subjugationist" && typeof V.arcologies[0].FSSubjugationistRace === "string") { - r.push(randomRaceSkin(V.arcologies[0].FSSubjugationistRace)); - } else { - r.push(`tanned`); - } - r.push(`skin, huge lips, and ridiculous tits. ${HisA} cock hangs past ${hisA} knees when limp.`); + r.push(`${HeA}'s a cute little ${assistantRace()} bimbo shemale with bleached blonde hair, ${assistantRaceSkin("tanned")} skin, huge lips, and ridiculous tits. ${HisA} cock hangs past ${hisA} knees when limp.`); if (V.assistant.fsOptions) { r.push(FSfunc()); } @@ -118,13 +107,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "amazon": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`amazon`); + r.push(`${HeA}'s a cute little ${assistantRace()} amazon`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -158,13 +141,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "businesswoman": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`business ${womanA}`); + r.push(`${HeA}'s a cute little ${assistantRace()} business ${womanA}`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -198,13 +175,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "goddess": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`fertility goddess,`); + r.push(`${HeA}'s a cute little ${assistantRace()} fertility goddess,`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -244,13 +215,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "schoolgirl": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`school ${girlA}`); + r.push(`${HeA}'s a cute little ${assistantRace()} school ${girlA}`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -284,13 +249,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "hypergoddess": - r.push(`${HeA}'s a cute "little"`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`fertility goddess, with monstrously wide hips, enormous milky breasts and a room filling belly. ${HisA} overfull stomach bulges and squirms from ${hisA} hundreds of occupants, as well as parts ${hisA} milk swollen breasts to either side.`); + r.push(`${HeA}'s a cute "little" ${assistantRace()} fertility goddess, with monstrously wide hips, enormous milky breasts and a room filling belly. ${HisA} overfull stomach bulges and squirms from ${hisA} hundreds of occupants, as well as parts ${hisA} milk swollen breasts to either side.`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -330,12 +289,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "loli": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } + r.push(`${HeA}'s a cute little ${assistantRace()}`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -369,13 +323,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "preggololi": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`${girlA} with a large pregnant`); + r.push(`${HeA}'s a cute little ${assistantRace()} ${girlA} with a large pregnant`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -512,13 +460,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "angel": - r.push(`${HeA}'s a gorgeous little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`angel with long radiant hair and large`); + r.push(`${HeA}'s a gorgeous little ${assistantRace()} angel with long radiant hair and large`); if (V.arcologies[0].FSDegradationist !== "unset") { r.push(`black`); } else { @@ -558,13 +500,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "cherub": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`minor angel with radiant hair and arm length`); + r.push(`${HeA}'s a cute little ${assistantRace()} minor angel with radiant hair and arm length`); if (V.arcologies[0].FSDegradationist !== "unset") { r.push(`black`); } else { @@ -604,13 +540,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "imp": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`imp with black hair and comically tiny bat-like wings.`); + r.push(`${HeA}'s a cute little ${assistantRace()} imp with black hair and comically tiny bat-like wings.`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else { @@ -644,13 +574,7 @@ globalThis.PersonalAssistantAppearance = function() { } break; case "witch": - r.push(`${HeA}'s a cute little`); - if (V.arcologies[0].FSSupremacist !== "unset" && V.assistant.fsAppearance !== "subjugationist") { - r.push(`${V.arcologies[0].FSSupremacistRace}`); - } else if (V.assistant.fsAppearance === "subjugationist") { - r.push(`${V.arcologies[0].FSSubjugationistRace}`); - } - r.push(`witch with thin, flowing robes and a wide brimmed, if rather stereotypical, witch's hat.`); + r.push(`${HeA}'s a cute little ${assistantRace()} witch with thin, flowing robes and a wide brimmed, if rather stereotypical, witch's hat.`); if (V.assistant.fsOptions) { r.push(FSfunc()); } else {