diff --git a/src/js/walkPastJS.js b/src/js/walkPastJS.js index b45ceed56fd7336a7e74e3153d7e44d32c05935d..595a01280116bf813791fc425e5c800e78053f6f 100644 --- a/src/js/walkPastJS.js +++ b/src/js/walkPastJS.js @@ -1,4 +1,5 @@ /* eslint-disable no-unused-vars */ +/* eslint-disable no-undef */ /* temporary container until the entire thing is complete. No point in not deploying the working functions, you know? */ window.primeSlave = function(activeSlave, seed) { @@ -6,14 +7,8 @@ window.primeSlave = function(activeSlave, seed) { /* will be moved up once this becomes a single, contained function. */ const V = State.variables; const pronouns = getPronouns(activeSlave); - const he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - const He = capFirstChar(he), - His = capFirstChar(his); + const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + const He = capFirstChar(he), His = capFirstChar(his); let _target = ""; let t = ""; let race = (V.seeRace ? activeSlave.race : ""); @@ -31,20 +26,13 @@ window.primeSlave = function(activeSlave, seed) { window.rivalSlave = function(activeSlave, seed) { const V = State.variables; const pronouns = getPronouns(activeSlave); - const he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - const He = capFirstChar(he), - His = capFirstChar(his); + const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + const He = capFirstChar(he), His = capFirstChar(his); let _partnerSlave = getSlave(activeSlave.rivalryTarget); let t = ""; let _target = ""; - if (_partnerSlave !== undefined) { - /* potential problem point */ + if (_partnerSlave !== undefined) { /* potential problem point */ // let race2 = (V.seeRace ? _partnerSlave.race : ""); t += " Meanwhile, "; @@ -55,10 +43,10 @@ window.rivalSlave = function(activeSlave, seed) { } else { t += `${_partnerSlave.slaveName}, whom ${he} dislikes, `; } - t += walkPasts(_partnerSlave, 100 - seed); + t += walkPasts(_partnerSlave, 100-seed); _partnerSlave = null; - V.target = "FRival"; /* potentially removed later */ + V.target = "FRival"; /*potentially removed later*/ } return t; @@ -66,148 +54,127 @@ window.rivalSlave = function(activeSlave, seed) { window.loverSlave = function(activeSlave) { - /* will be moved up once this becomes a single, contained function. */ - let _target = ""; - let t = ""; - let V = State.variables; - let race; - if (V.seeRace === 1) { - race = activeSlave.race; - } else { - race = ""; - } - let name = activeSlave.slaveName; - const pronouns = getPronouns(activeSlave); - const he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - const He = capFirstChar(he), - His = capFirstChar(his); + /* will be moved up once this becomes a single, contained function. */ + var _target = ""; + var t = ""; + var V = State.variables; + var race; + if (V.seeRace === 1) { race = activeSlave.race; } else { race = ""; } + var name = activeSlave.slaveName; + const pronouns = getPronouns(activeSlave); + const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + const He = capFirstChar(he), His = capFirstChar(his); - let _partnerSlave = getSlave(activeSlave.relationshipTarget); - let _fuckSeed = jsRandom(1, 100); - let _seed = jsRandom(1, 100); - let _fuckSpot; + var _partnerSlave = getSlave(activeSlave.relationshipTarget); + var _fuckSeed = jsRandom(1,100); + var _seed = jsRandom(1,100); + var _fuckSpot; - if (_partnerSlave !== undefined) { + if (_partnerSlave !== undefined) { - let pronouns2 = getPronouns(_partnerSlave); - let he2 = pronouns2.pronoun, - him2 = pronouns2.object, - his2 = pronouns2.possessive, - hers2 = pronouns2.possessivePronoun, - himself2 = pronouns2.objectReflexive, - boy2 = pronouns2.noun; - let He2 = capFirstChar(he2), - His2 = capFirstChar(his2); - let race2; - if (V.seeRace === 1) { - race2 = _partnerSlave.race; - } else { - race2 = ""; - } - let partnerName = _partnerSlave.slaveName; - let activeSlaveRel; - if (activeSlave.relationship <= 3) { - activeSlaveRel = "friend with benefits"; - } else if (activeSlave.relationship <= 4) { - activeSlaveRel = "lover"; - } else { - activeSlaveRel = "slave wife"; - } - - t += `${name} and ${partnerName} are `; - if (!isSlaveAvailable(_partnerSlave)) { - if (_partnerSlave.assignment === "work in the dairy" && V.DairyRestraintsSetting >= 2) { - t += `trying their best to maintain their relationship with ${partnerName} being part of ${V.dairyName}.`; - } else if (_partnerSlave.assignment === "be your agent") { - t += `catching up with each other over a video call. Running an arcology in your stead comes with its perks.`; - } else if (_partnerSlave.assignment === "be confined in the arcade") { - t += `trying their best to maintain their relationship with ${partnerName} being nothing more than a hole in ${V.arcadeName}.`; + var pronouns2 = getPronouns(_partnerSlave); + var he2 = pronouns2.pronoun, him2 = pronouns2.object, his2 = pronouns2.possessive, hers2 = pronouns2.possessivePronoun, himself2 = pronouns2.objectReflexive, boy2 = pronouns2.noun; + var He2 = capFirstChar(he2), His2 = capFirstChar(his2); + var race2; + if (V.seeRace === 1) { race2 = _partnerSlave.race; } else { race2 = ""; } + var partnerName = _partnerSlave.slaveName; + var activeSlaveRel; + if (activeSlave.relationship <= 3) { + activeSlaveRel = "friend with benefits"; + } else if (activeSlave.relationship <= 4) { + activeSlaveRel = "lover"; + } else { + activeSlaveRel = "slave wife"; } - } else if (_seed >= 66) { - /* SEXY TIMES */ - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - _fuckSpot = `in ${partnerName}'s suite`; - } else if (activeSlave.livingRules === "luxurious") { - _fuckSpot = `in the nice little room they share`; - } else { - _fuckSpot = `out in the open in the slave dormitory`; - } + t += `${name} and ${partnerName} are `; + if (!isSlaveAvailable(_partnerSlave)) { + if (_partnerSlave.assignment === "work in the dairy" && V.DairyRestraintsSetting >= 2) { + t += `trying their best to maintain their relationship with ${partnerName} being part of ${V.dairyName}.`; + } else if (_partnerSlave.assignment === "be your agent") { + t += `catching up with each other over a video call. Running an arcology in your stead comes with its perks.`; + } else if (_partnerSlave.assignment === "be confined in the arcade") { + t += `trying their best to maintain their relationship with ${partnerName} being nothing more than a hole in ${V.arcadeName}.`; + } + } else if (_seed >= 66) { /* SEXY TIMES */ - if ((activeSlave.fetish === "dom" || activeSlave.fetish === "sadist") && canPenetrate(activeSlave) && (_partnerSlave.fetish === "dom" || _partnerSlave.fetish === "sadist") && canPenetrate(_partnerSlave)) { - t += `double penetrating another slave. They're face to face over their sub's shoulders, `; - if (canSee(activeSlave) && canSee(_partnerSlave)) { - t += `looking into each other's eyes `; + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + _fuckSpot = `in ${partnerName}'s suite`; + } else if (activeSlave.livingRules === "luxurious") { + _fuckSpot = `in the nice little room they share`; } else { - t += `locking lips `; + _fuckSpot = `out in the open in the slave dormitory`; } - t += `with every appearance of enjoyment and love, since for them rubbing dicks inside another slave's pussy is what constitutes healthy sexual activity. ${partnerName} is on the bottom, and holds their victim atop ${him2} with ${partnerName}'s cock already hilted in her cunt so ${name} can force ${himself} inside as well. They enjoy the overstimulated girl's struggles.`; - } else if (activeSlave.energy > 95) { - t += `having loud sex ${_fuckSpot}. ${name} is such a sexual addict that ${he} wants it all the time, and ${partnerName} does ${his2} best to help ${his} ${activeSlaveRel} get off. `; - if (canPenetrate(activeSlave) && _fuckSeed > 50) { - if (canDoVaginal(_partnerSlave)) { - if (_partnerSlave.vagina === 0 && _partnerSlave.amp !== 1) { - t += `${name} has ${his} cock between ${partnerName}'s legs and is enjoying an enthusiastic thigh job.`; - } else if (_partnerSlave.vagina === 0) { - t += `${name} has ${his} cock between ${partnerName}'s labia and is enthusiastically teasing ${his} virgin lover.`; - } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { - t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} pussy doggy style.`; - } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { - t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} pussy from behind.`; - } else if (_fuckSeed > 70) { - t += `${partnerName} has ${name} on ${his2} back and is enthusiastically bouncing on ${his2} dick.`; - } else if (_fuckSeed > 60) { - t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} pussy in the missionary position.`; + + if ((activeSlave.fetish === "dom" || activeSlave.fetish === "sadist") && canPenetrate(activeSlave) && (_partnerSlave.fetish === "dom" || _partnerSlave.fetish === "sadist") && canPenetrate(_partnerSlave)) { + t += `double penetrating another slave. They're face to face over their sub's shoulders, `; + if (canSee(activeSlave) && canSee(_partnerSlave)) { + t += `looking into each other's eyes `; + } else { + t += `locking lips `; + } + t += `with every appearance of enjoyment and love, since for them rubbing dicks inside another slave's pussy is what constitutes healthy sexual activity. ${partnerName} is on the bottom, and holds their victim atop ${him2} with ${partnerName}'s cock already hilted in her cunt so ${name} can force ${himself} inside as well. They enjoy the overstimulated girl's struggles.`; + } else if (activeSlave.energy > 95) { + t += `having loud sex ${_fuckSpot}. ${name} is such a sexual addict that ${he} wants it all the time, and ${partnerName} does ${his2} best to help ${his} ${activeSlaveRel} get off. `; + if (canPenetrate(activeSlave) && _fuckSeed > 50) { + if (canDoVaginal(_partnerSlave)) { + if (_partnerSlave.vagina === 0 && _partnerSlave.amp !== 1) { + t += `${name} has ${his} cock between ${partnerName}'s legs and is enjoying an enthusiastic thigh job.`; + } else if (_partnerSlave.vagina === 0) { + t += `${name} has ${his} cock between ${partnerName}'s labia and is enthusiastically teasing ${his} virgin lover.`; + } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { + t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} pussy doggy style.`; + } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { + t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} pussy from behind.`; + } else if (_fuckSeed > 70) { + t += `${partnerName} has ${name} on ${his2} back and is enthusiastically bouncing on ${his2} dick.`; + } else if (_fuckSeed > 60) { + t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} pussy in the missionary position.`; + } else { + t += `${name} is enthusiastically fucking ${partnerName}'s pussy.`; + } + } else if (canDoAnal(_partnerSlave)) { + if (_partnerSlave.anus === 0) { + t += `${name} has ${his} cock sandwiched between ${partnerName}'s buttcheeks and is enthusiastically hotdogging ${his2} rear.`; + } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { + t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} ass doggy style.`; + } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { + t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} ass from behind.`; + } else if (_fuckSeed > 70) { + t += `${partnerName} has ${name} on ${his} back and is enthusiastically bouncing on ${his} dick.`; + } else if (_fuckSeed > 60) { + t += `${name} has ${partnerName} on ${his2} stomach and is enthusiastically fucking ${his2} ass.`; + } else { + t += `${name} is enthusiastically fucking ${partnerName}'s ass.`; + } + } else if (_partnerSlave.boobs > 800) { + t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} tits.`; } else { - t += `${name} is enthusiastically fucking ${partnerName}'s pussy.`; + t += `${name} has ${partnerName}'s face to ${his} crotch and is enthusiastically pounding ${his2} throat.`; } - } else if (canDoAnal(_partnerSlave)) { - if (_partnerSlave.anus === 0) { - t += `${name} has ${his} cock sandwiched between ${partnerName}'s buttcheeks and is enthusiastically hotdogging ${his2} rear.`; - } else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) { - t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} ass doggy style.`; - } else if (_fuckSeed > 80 && activeSlave.amp !== 1) { - t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} ass from behind.`; - } else if (_fuckSeed > 70) { - t += `${partnerName} has ${name} on ${his} back and is enthusiastically bouncing on ${his} dick.`; - } else if (_fuckSeed > 60) { - t += `${name} has ${partnerName} on ${his2} stomach and is enthusiastically fucking ${his2} ass.`; + } else if (activeSlave.dick > 0 && _fuckSeed > 50) { + t += `${partnerName} has ${his2} lips wrapped around ${name}'s dick and is enthusiastically giving ${him} a blowjob.`; + } else if (canDoVaginal(activeSlave) && _fuckSeed > 30) { + if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0) { + t += `${partnerName} is enthusiastically fucking ${name}'s pussy.`; + } else if (canDoVaginal(_partnerSlave)) { + t += `They're scissoring enthusiastically and playing with each other's breasts.`; } else { - t += `${name} is enthusiastically fucking ${partnerName}'s ass.`; + t += `${partnerName} is enthusiastically eating out ${name}'s pussy.`; + } + } else if (canDoAnal(activeSlave) && activeSlave.anus > 0 && _fuckSeed > 10) { + if (canPenetrate(_partnerSlave)) { + t += `${partnerName} is enthusiastically fucking ${name}'s ass.`; + } else if (_partnerSlave.amp !== 1) { + t += `${partnerName} is enthusiastically fisting ${name}'s ass.`; + } else { + t += `${partnerName} is enthusiastically pounding ${name}'s ass with a dildo.`; } - } else if (_partnerSlave.boobs > 800) { - t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} tits.`; - } else { - t += `${name} has ${partnerName}'s face to ${his} crotch and is enthusiastically pounding ${his2} throat.`; - } - } else if (activeSlave.dick > 0 && _fuckSeed > 50) { - t += `${partnerName} has ${his2} lips wrapped around ${name}'s dick and is enthusiastically giving ${him} a blowjob.`; - } else if (canDoVaginal(activeSlave) && _fuckSeed > 30) { - if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0) { - t += `${partnerName} is enthusiastically fucking ${name}'s pussy.`; - } else if (canDoVaginal(_partnerSlave)) { - t += `They're scissoring enthusiastically and playing with each other's breasts.`; - } else { - t += `${partnerName} is enthusiastically eating out ${name}'s pussy.`; - } - } else if (canDoAnal(activeSlave) && activeSlave.anus > 0 && _fuckSeed > 10) { - if (canPenetrate(_partnerSlave)) { - t += `${partnerName} is enthusiastically fucking ${name}'s ass.`; - } else if (_partnerSlave.amp !== 1) { - t += `${partnerName} is enthusiastically fisting ${name}'s ass.`; } else { - t += `${partnerName} is enthusiastically pounding ${name}'s ass with a dildo.`; + t += `${partnerName} is enthusiastically using ${his2} tongue to bring ${name} to orgasm.`; } - } else { - t += `${partnerName} is enthusiastically using ${his2} tongue to bring ${name} to orgasm.`; - } - } else if (activeSlave.fetishStrength > 60 && activeSlave.fetishKnown === 1 && activeSlave.fetish !== "none") { - switch (activeSlave.fetish) { + } else if (activeSlave.fetishStrength > 60 && activeSlave.fetishKnown === 1 && activeSlave.fetish !== "none") { + switch (activeSlave.fetish) { case "boobs": if (_fuckSeed > 60 && (activeSlave.lactation > 0 || _partnerSlave.lactation > 0)) { t += `snuggling rather sexually ${_fuckSpot}. `; @@ -369,9 +336,9 @@ window.loverSlave = function(activeSlave) { } else { t += `is sating ${his} oral fixation for the moment by eagerly polishing ${his} ${activeSlaveRel}'s pearl.`; } - } else if (_partnerSlave.balls > 0) { + } else if ( _partnerSlave.balls > 0) { t += `${name} is eagerly lapping up ${his} ${activeSlaveRel}'s most recent load of cum.`; - } else if (activeSlave.balls > 0) { + } else if ( activeSlave.balls > 0) { t += `${name} is locking lips with ${his} ${activeSlaveRel} after ${he2} just finished licking up all ${his} cum to share it with ${him}.`; } else { t += `They have locked lips and are enthusiastically making out.`; @@ -671,7 +638,7 @@ window.loverSlave = function(activeSlave) { } } } else if (canDoVaginal(activeSlave) && _fuckSeed > 30) { - if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0 && activeSlave.preg === 0 && activeSlave.ovaries === 1) { // impreg + if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0 && activeSlave.preg === 0 && activeSlave.ovaries === 1) { //impreg if (_partnerSlave.belly >= 5000) { t += `${partnerName} is `; if (_partnerSlave.bellyPreg >= 1500) { @@ -684,7 +651,7 @@ window.loverSlave = function(activeSlave) { t += `${partnerName} has ${name} pinned on ${his} back in a mating press as ${he2} fervently tries to sate ${his} lust by putting a baby in ${him}.`; } } else { - if (_fuckSeed > 50) { // vanilla + if (_fuckSeed > 50) { //vanilla if (canPenetrate(_partnerSlave) && activeSlave.vagina !== 0) { if (_partnerSlave.belly >= 5000) { t += `${partnerName} is `; @@ -726,7 +693,7 @@ window.loverSlave = function(activeSlave) { t += `${name} and ${partnerName} are both pretending to be hugely pregnant and cuddling each other.`; } } - } else if (canDoVaginal(_partnerSlave) && _fuckSeed > 40) { // scissor + } else if (canDoVaginal(_partnerSlave) && _fuckSeed > 40) { //scissor if (_partnerSlave.belly >= 5000) { t += `${partnerName} is `; if (_partnerSlave.bellyPreg >= 1500) { @@ -748,7 +715,7 @@ window.loverSlave = function(activeSlave) { t += `are enthusiastically tribbing.`; } } - } else { // oral + } else { //oral if (_partnerSlave.belly >= 5000) { t += `${partnerName} is `; if (_partnerSlave.bellyPreg >= 1500) { @@ -786,7 +753,7 @@ window.loverSlave = function(activeSlave) { } } } else if (canDoAnal(activeSlave) && canPenetrate(_partnerSlave) && _fuckSeed > 10) { - if (activeSlave.anus > 0 && activeSlave.preg === 0 && activeSlave.mpreg === 1) { // impreg + if (activeSlave.anus > 0 && activeSlave.preg === 0 && activeSlave.mpreg === 1) { //impreg if (_partnerSlave.belly >= 5000) { t += `${partnerName} is `; if (_partnerSlave.bellyPreg >= 1500) { @@ -837,7 +804,7 @@ window.loverSlave = function(activeSlave) { t += `${partnerName} has ${name} pinned on ${his} front as ${he2} dutifully plows ${his} needy anus in an attempt to sate ${his} bottomless lust.`; } } - } else { // oral + } else { //oral if (_partnerSlave.belly >= 5000) { t += `${partnerName} is `; if (_partnerSlave.bellyPreg >= 1500) { @@ -877,153 +844,152 @@ window.loverSlave = function(activeSlave) { default: t += `having intimate sex ${_fuckSpot}.`; break; - } - } else if (!activeSlave.need || activeSlave.energy < 20) { - t += `just spooning in bed. Since ${name} `; - if (activeSlave.energy < 20) { - t += `in sexually frigid, `; - } else { - t += `gets fucked at work, `; - } - t += `${partnerName} understands that what ${he} really wants from ${him2} is emotional intimacy. They're cuddling quietly, offering each other silent comfort and companionship.`; - } else if (canPenetrate(activeSlave) && (_partnerSlave.vagina > 0) && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; - if (canSee(_partnerSlave)) { - t += `looking deep into ${his} eyes `; - } else { - t += `gazing longingly into ${his} face `; - } - t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s cock in ${his2} womanhood.`; - } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; - if (canSee(_partnerSlave)) { - t += `looking deep into ${his} eyes `; - } else { - t += `gazing longingly into ${his} face `; - } - t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s huge clit in ${his2} womanhood.`; - } else if (activeSlave.dick > 1 && canPenetrate(activeSlave) && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying ${partnerName}'s ass, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; - if (_partnerSlave.earShape !== "none") { - t += `ears and `; - } - t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; - } else if (activeSlave.clit > 2 && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, managing to have clitoral-anal sex. ${partnerName} is face-down with ${his2} ass up, spreading ${his2} buttocks as wide as possible, giving ${his2} ${activeSlaveRel} the opportunity to squat over ${him2} and penetrate it with ${his} huge, erect clit. ${name} can't thrust much, but the shocking lewdness of the act is enough for both of them.`; - } else if (canPenetrate(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, spooning while ${name} gently rubs ${his} cock between ${partnerName}'s thighs, pressed tightly together. Since ${partnerName} is a virgin, this is the closest they can come to penetrative intercourse, but ${name} is enjoying ${partnerName}'s body anyway, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys ${himself2}. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; - if (_partnerSlave.earShape !== "none") { - t += `ears and `; - } - t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; - } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, with ${partnerName} down on ${his2} knees in front of ${name}. From behind ${partnerName} it looks like ${he2}'s giving ${his2} ${activeSlaveRel} a conventional, if enthusiastic, blowjob. Only on closer inspection does it become clear how unusual the oral is: ${name} has such a huge clit that ${his} ${activeSlaveRel} can suck ${him} off just like it were a penis.`; - } else if (_partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; - if (canSee(_partnerSlave)) { - t += `looking deep into ${his} eyes `; - } else { - t += `gazing longingly into ${his} face `; - } - t += `as ${he2} enjoys the feeling of ${his2} ${activeSlaveRel} fucking ${him2} with a strap-on.`; - } else if (_partnerSlave.anus > 0 && canDoAnal(_partnerSlave) && activeSlave.amp !== 1 && activeSlave.belly < 10000) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying penetrating ${partnerName}'s ass with a strap-on, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; - if (_partnerSlave.earShape !== "none") { - t += `ears and `; - } - t += `neck, cupping a breast with one hand, and lightly stimulating ${him} with the other.`; - } else if (_partnerSlave.amp !== 1 && activeSlave.amp !== 1) { - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}, enjoying some mutual masturbation.`; - } else if (_partnerSlave.amp === 1) { - t += `just cuddling `; - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; - } else { - t += `on ${name}'s bedroll `; - } - t += `${_fuckSpot}. ${name} is using ${partnerName}'s limbless torso as a pillow, which ${partnerName} seems to be enjoying, by ${his2} contented expression.`; - } else { - t += `just cuddling `; - if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { - t += `in bed `; - } else if (activeSlave.livingRules === "luxurious") { - t += `in bed `; + } + } else if (!activeSlave.need || activeSlave.energy < 20) { + t += `just spooning in bed. Since ${name} `; + if (activeSlave.energy < 20) { + t += `in sexually frigid, `; + } else { + t += `gets fucked at work, `; + } + t += `${partnerName} understands that what ${he} really wants from ${him2} is emotional intimacy. They're cuddling quietly, offering each other silent comfort and companionship.`; + } else if (canPenetrate(activeSlave) && (_partnerSlave.vagina > 0) && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; + if (canSee(_partnerSlave)) { + t += `looking deep into ${his} eyes `; + } else { + t += `gazing longingly into ${his} face `; + } + t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s cock in ${his2} womanhood.`; + } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; + if (canSee(_partnerSlave)) { + t += `looking deep into ${his} eyes `; + } else { + t += `gazing longingly into ${his} face `; + } + t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s huge clit in ${his2} womanhood.`; + } else if (activeSlave.dick > 1 && canPenetrate(activeSlave) && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying ${partnerName}'s ass, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; + if (_partnerSlave.earShape !== "none") { + t +=`ears and `; + } + t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; + } else if (activeSlave.clit > 2 && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, managing to have clitoral-anal sex. ${partnerName} is face-down with ${his2} ass up, spreading ${his2} buttocks as wide as possible, giving ${his2} ${activeSlaveRel} the opportunity to squat over ${him2} and penetrate it with ${his} huge, erect clit. ${name} can't thrust much, but the shocking lewdness of the act is enough for both of them.`; + } else if (canPenetrate(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1 && activeSlave.belly < 10000) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, spooning while ${name} gently rubs ${his} cock between ${partnerName}'s thighs, pressed tightly together. Since ${partnerName} is a virgin, this is the closest they can come to penetrative intercourse, but ${name} is enjoying ${partnerName}'s body anyway, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys ${himself2}. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; + if (_partnerSlave.earShape !== "none") { + t +=`ears and `; + } + t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`; + } else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, with ${partnerName} down on ${his2} knees in front of ${name}. From behind ${partnerName} it looks like ${he2}'s giving ${his2} ${activeSlaveRel} a conventional, if enthusiastic, blowjob. Only on closer inspection does it become clear how unusual the oral is: ${name} has such a huge clit that ${his} ${activeSlaveRel} can suck ${him} off just like it were a penis.`; + } else if (_partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `; + if (canSee(_partnerSlave)) { + t += `looking deep into ${his} eyes `; + } else { + t += `gazing longingly into ${his} face `; + } + t += `as ${he2} enjoys the feeling of ${his2} ${activeSlaveRel} fucking ${him2} with a strap-on.`; + } else if (_partnerSlave.anus > 0 && canDoAnal(_partnerSlave) && activeSlave.amp !== 1 && activeSlave.belly < 10000) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying penetrating ${partnerName}'s ass with a strap-on, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `; + if (_partnerSlave.earShape !== "none") { + t +=`ears and `; + } + t += `neck, cupping a breast with one hand, and lightly stimulating ${him} with the other.`; + } else if (_partnerSlave.amp !== 1 && activeSlave.amp !== 1) { + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}, enjoying some mutual masturbation.`; + } else if (_partnerSlave.amp === 1) { + t += `just cuddling `; + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}. ${name} is using ${partnerName}'s limbless torso as a pillow, which ${partnerName} seems to be enjoying, by ${his2} contented expression.`; } else { - t += `on ${name}'s bedroll `; + t += `just cuddling `; + if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) { + t += `in bed `; + } else if (activeSlave.livingRules === "luxurious") { + t += `in bed `; + } else { + t += `on ${name}'s bedroll `; + } + t += `${_fuckSpot}. They're lying quietly, offering each other silent comfort and companionship.`; } - t += `${_fuckSpot}. They're lying quietly, offering each other silent comfort and companionship.`; - } - } else if (_seed >= 33) { - /* CUDDLE TIME */ - if (activeSlave.energy > 95 && _fuckSeed > 70) { - t += `lying in bed together. ${partnerName} has somehow managed to exhaust ${his2} ${activeSlaveRel}, and the sexually sated nympho is curled up with ${his} head on ${partnerName}'s chest, snoring lightly. ${partnerName} is smiling fondly at ${him}.`; - } else if (activeSlave.fetish !== "none" && _fuckSeed > 50) { - switch (activeSlave.fetish) { + } else if (_seed >= 33) { /* CUDDLE TIME */ + if (activeSlave.energy > 95 && _fuckSeed > 70) { + t += `lying in bed together. ${partnerName} has somehow managed to exhaust ${his2} ${activeSlaveRel}, and the sexually sated nympho is curled up with ${his} head on ${partnerName}'s chest, snoring lightly. ${partnerName} is smiling fondly at ${him}.`; + } else if (activeSlave.fetish !== "none" && _fuckSeed > 50) { + switch (activeSlave.fetish) { case "boobs": t += `sleeping in bed together. ${name} is using ${partnerName}'s `; if (_partnerSlave.boobs > 10000) { @@ -1111,25 +1077,23 @@ window.loverSlave = function(activeSlave) { t += `${name} is being spooned by ${his} ${activeSlaveRel}, smiling peacefully at being held.`; } break; - + } + } else if (_partnerSlave.dick > 6 && activeSlave.amp !== 1 && _fuckSeed > 30) { + t += `sleeping in bed together. ${name} is cuddled up close to ${partnerName}, and is cradling ${his} ${activeSlaveRel}'s enormous, soft cock with one hand.`; + } else if (activeSlave.height > _partnerSlave.height + 10) { + t += `sleeping in bed together, with the taller ${name} curled around ${his} little ${activeSlaveRel}.`; + } else if (_partnerSlave.height > activeSlave.height + 10) { + t += `sleeping in bed together, with the shorter ${name} curled under ${his} ${activeSlaveRel}.`; + } else if (activeSlave.amp === 1) { + t += `sleeping in bed together; ${partnerName} is using ${his2} limbless ${activeSlaveRel} as a pillow.`; + } else if (_partnerSlave.amp !== 1) { + t += `resting in bed together, holding hands in their sleep.`; + } else { + t += `sleeping quietly in bed together.`; } - } else if (_partnerSlave.dick > 6 && activeSlave.amp !== 1 && _fuckSeed > 30) { - t += `sleeping in bed together. ${name} is cuddled up close to ${partnerName}, and is cradling ${his} ${activeSlaveRel}'s enormous, soft cock with one hand.`; - } else if (activeSlave.height > _partnerSlave.height + 10) { - t += `sleeping in bed together, with the taller ${name} curled around ${his} little ${activeSlaveRel}.`; - } else if (_partnerSlave.height > activeSlave.height + 10) { - t += `sleeping in bed together, with the shorter ${name} curled under ${his} ${activeSlaveRel}.`; - } else if (activeSlave.amp === 1) { - t += `sleeping in bed together; ${partnerName} is using ${his2} limbless ${activeSlaveRel} as a pillow.`; - } else if (_partnerSlave.amp !== 1) { - t += `resting in bed together, holding hands in their sleep.`; - } else { - t += `sleeping quietly in bed together.`; - } - } else { - /* TOGETHER TIME */ - if (_fuckSeed > 75 && activeSlave.behavioralQuirk !== "none") { - switch (activeSlave.behavioralQuirk) { + } else { /* TOGETHER TIME */ + if (_fuckSeed > 75 && activeSlave.behavioralQuirk !== "none") { + switch (activeSlave.behavioralQuirk) { case "confident": t += `finishing up a meal together. ${name} `; if (canTalk(activeSlave) && canHear(_partnerSlave)) { @@ -1216,79 +1180,71 @@ window.loverSlave = function(activeSlave) { } } break; - - } - } else if (_fuckSeed > 50) { - if ((activeSlave.actualAge >= _partnerSlave.actualAge + 10) && canTalk(_partnerSlave) && canHear(activeSlave)) { - t += `tidying up their room together. ${partnerName} is chattering about ${his2} day, while ${name} listens quietly, smiling fondly at ${his} ${activeSlaveRel}'s prattle.`; - } else if ((_partnerSlave.actualAge >= activeSlave.actualAge + 10) && canTalk(activeSlave) && canHear(_partnerSlave)) { - t += `tidying up their room together. ${name} is chattering about ${his} day, while ${partnerName} listens quietly, smiling fondly at ${his2} ${activeSlaveRel}'s prattle.`; - } else if (activeSlave.amp !== 1 && !canTalk(activeSlave) && canSee(_partnerSlave)) { - t += `getting ready for bed. ${name} is using gestures to tell ${his} ${activeSlaveRel} about ${his} day; ${partnerName} is very patient and does ${his2} best to follow.`; - } else if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { - t += `tidying up their room together. ${name} and ${partnerName} are chattering away over inconsequential things.`; - } else if (canSee(activeSlave) && canSee(_partnerSlave) && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) { - t += `getting ready for bed. ${name} and ${partnerName} are rapidly gesturing to each other about their days.`; - } else { - t += `getting ready for bed. ${name} and ${his} ${activeSlaveRel}, ${partnerName}, are leaning against one another, just enjoying each other's warmth.`; - } - } else if (_fuckSeed > 25) { - t += `using some of their free time to `; - if (!canWalk(activeSlave) && canWalk(_partnerSlave)) { - if (canSee(activeSlave) && canSee(_partnerSlave)) { - t += `watch the weather; ${partnerName} helped ${his2} ${activeSlaveRel} to a window so ${he} could look out with ${him2}.`; + } + } else if (_fuckSeed > 50) { + if ((activeSlave.actualAge >= _partnerSlave.actualAge + 10) && canTalk(_partnerSlave) && canHear(activeSlave)) { + t += `tidying up their room together. ${partnerName} is chattering about ${his2} day, while ${name} listens quietly, smiling fondly at ${his} ${activeSlaveRel}'s prattle.`; + } else if ((_partnerSlave.actualAge >= activeSlave.actualAge + 10) && canTalk(activeSlave) && canHear(_partnerSlave)) { + t += `tidying up their room together. ${name} is chattering about ${his} day, while ${partnerName} listens quietly, smiling fondly at ${his2} ${activeSlaveRel}'s prattle.`; + } else if (activeSlave.amp !== 1 && !canTalk(activeSlave) && canSee(_partnerSlave)) { + t += `getting ready for bed. ${name} is using gestures to tell ${his} ${activeSlaveRel} about ${his} day; ${partnerName} is very patient and does ${his2} best to follow.`; + } else if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { + t += `tidying up their room together. ${name} and ${partnerName} are chattering away over inconsequential things.`; + } else if (canSee(activeSlave) && canSee(_partnerSlave) && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) { + t += `getting ready for bed. ${name} and ${partnerName} are rapidly gesturing to each other about their days.`; } else { - t += `get some fresh air; ${partnerName} helped ${his2} ${activeSlaveRel} to a balcony so ${he} could enjoy the breeze with ${him2}.`; + t += `getting ready for bed. ${name} and ${his} ${activeSlaveRel}, ${partnerName}, are leaning against one another, just enjoying each other's warmth.`; } - } else if (!canWalk(_partnerSlave) && canWalk(activeSlave)) { - if (canSee(activeSlave) && canSee(_partnerSlave)) { - t += `watch the weather; ${name} helped ${his} ${activeSlaveRel} to a window so ${he2} could look out with ${him}.`; + } else if (_fuckSeed > 25) { + t += `using some of their free time to `; + if (!canWalk(activeSlave) && canWalk(_partnerSlave)) { + if (canSee(activeSlave) && canSee(_partnerSlave)) { + t += `watch the weather; ${partnerName} helped ${his2} ${activeSlaveRel} to a window so ${he} could look out with ${him2}.`; + } else { + t += `get some fresh air; ${partnerName} helped ${his2} ${activeSlaveRel} to a balcony so ${he} could enjoy the breeze with ${him2}.`; + } + } else if (!canWalk(_partnerSlave) && canWalk(activeSlave)) { + if (canSee(activeSlave) && canSee(_partnerSlave)) { + t += `watch the weather; ${name} helped ${his} ${activeSlaveRel} to a window so ${he2} could look out with ${him}.`; + } else { + t += `get some fresh air; ${name} helped ${his} ${activeSlaveRel} to a balcony so ${he2} could enjoy the breeze with ${him}.`; + } } else { - t += `get some fresh air; ${name} helped ${his} ${activeSlaveRel} to a balcony so ${he2} could enjoy the breeze with ${him}.`; + t += `rest on one of the penthouse balconies and enjoy the weather.`; } } else { - t += `rest on one of the penthouse balconies and enjoy the weather.`; - } - } else { - if (V.cockFeeder === 1) { - t += `taking in a meal together; they've chosen dispensers next to each other and are slurping away.`; - } else if (V.suppository === 1) { - t += `taking their drugs together; they've chosen fuckmachines next to each other and are `; - if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { - t += `chatting quietly as they're sodomized.`; + if (V.cockFeeder === 1) { + t += `taking in a meal together; they've chosen dispensers next to each other and are slurping away.`; + } else if (V.suppository === 1) { + t += `taking their drugs together; they've chosen fuckmachines next to each other and are `; + if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) { + t += `chatting quietly as they're sodomized.`; + } else { + t += `enjoying their mutual sodomy.`; + } } else { - t += `enjoying their mutual sodomy.`; + t += `eating a quiet meal together.`; } - } else { - t += `eating a quiet meal together.`; } } - } - /* CLOSE SEXY/CUDDLE/TOGETHER TIME */ + /* CLOSE SEXY/CUDDLE/TOGETHER TIME */ - V.target = "FRelation"; - } else { - t += ` Lover not found!`; - } - return t; + V.target = "FRelation"; + } else { + t += ` Lover not found!`; + } + return t; }; window.relatedSlave = function(activeSlave) { const V = State.variables; const pronouns = getPronouns(activeSlave); - const he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - const He = capFirstChar(he), - His = capFirstChar(his); + const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + const He = capFirstChar(he), His = capFirstChar(his); let t = ""; - let activeSlaveRel; let partnerSlave; - let fuckseed = jsRandom(1, 100); + let fuckseed = jsRandom(1,100); if (V.partner === "relation") { if (V.familyTesting === 1) { @@ -1297,12 +1253,11 @@ window.relatedSlave = function(activeSlave) { partnerSlave = getSlave(activeSlave.relationTarget); } } else { - activeSlaveRel = relationshipTerm(activeSlave); + var activeSlaveRel = relationshipTerm(activeSlave); partnerSlave = getSlave(activeSlave.relationshipTarget); } - if (partnerSlave !== undefined) { - /* potential problem point */ + if (partnerSlave !== undefined) { /* potential problem point */ t += ` ${His} `; if (V.partner === "relation") { @@ -1317,7 +1272,7 @@ window.relatedSlave = function(activeSlave) { t += `${partnerSlave.slaveName} `; t += walkPasts(partnerSlave, fuckseed); - V.target = "FRelation"; /* potentially removed later */ + V.target = "FRelation"; /*potentially removed later*/ } else { t += ` Expected partner not found!`; } @@ -1330,79 +1285,30 @@ window.walkPasts = function(slave, _seed) { /* will be moved up once this becomes a single, contained function. */ const V = State.variables; const pronouns = getPronouns(slave); - const he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - const He = capFirstChar(he), - His = capFirstChar(his); + const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + const He = capFirstChar(he), His = capFirstChar(his); let _target = ""; let t = ""; let race = (V.seeRace ? slave.race : ""); switch (slave.assignment) { - case "be your agent": - t += `is shaping society in ${his} assigned arcology.`; - break; - case "live with your agent": - t += `is helping ${his} lover shape society in ${his} assigned arcology.`; - break; - case "work in the dairy": - if (V.dairyRestraintsSetting > 1) { - t += `is strapped to a milking machine in ${V.dairyName}, `; - if (slave.ovaries === 1 && V.dairyPregSetting > 0 && jsRandom(1, 2) === 2) { - if (isFertile(slave)) { - t += `and is wincing in pain as the machine forces another load of cum into ${his} womb. As you watch, ${his} ${race} stomach steadily swells with baby batter.`; - } else { - t += `giving you a good view of ${his} ${race} body and heavy belly on the feeds.`; - } - } else if (slave.lactation > 0) { - if (slave.balls > 0 && jsRandom(1, 2) === 1) { - if (slave.dick > 0) { - if (_seed > 50) { - t += `and is having ${his} cock sucked dry. As you watch, `; - if (slave.scrotum) { - t += `${his} balls tighten `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting > 0) { - t += `as the phallus up ${his} butt `; - } else { - t += `as the suction to ${his} dick `; - } - t += `forces ${him} closer to yet another ejaculation.`; - } else { - t += `and is wincing in pain as the machine sucks ${his} sore cock, but you have a good view of ${his} ${race} body on the feeds.`; - } - } else { - if (_seed > 50) { - t += `and is having ${his} balls sucked dry. As you watch, `; - if (slave.scrotum) { - t += `${his} scrotum tightens `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting) { - t += `as the phallus up ${his} butt `; - } else { - t += `as the suction against ${his} crotch `; - } - t += `forces ${him} closer to yet another leaking ejaculation.`; - } else { - t += `and is wincing in pain as the machine sucks ${his} empty balls, but you have a good view of ${his} ${race} body on the feeds.`; - } - } - } else { - if (_seed > 50) { - t += `and is having ${his} tits drained, but you have a good view of ${his} ${race} body on the feeds.`; - } else { - t += `and is recovering after having ${his} tits sucked dry, but you have a good view of ${his} ${race} body on the feeds.`; - } - } - } else if (slave.balls > 0) { + case "be your agent": + t += `is shaping society in ${his} assigned arcology.`; + break; + case "live with your agent": + t += `is helping ${his} lover shape society in ${his} assigned arcology.`; + break; + case "work in the dairy": + if (V.dairyRestraintsSetting > 1) { + t += `is strapped to a milking machine in ${V.dairyName}, `; + if (slave.ovaries === 1 && V.dairyPregSetting > 0 && jsRandom(1,2) === 2) { + if (isFertile(slave)) { + t += `and is wincing in pain as the machine forces another load of cum into ${his} womb. As you watch, ${his} ${race} stomach steadily swells with baby batter.`; + } else { + t += `giving you a good view of ${his} ${race} body and heavy belly on the feeds.`; + } + } else if (slave.lactation > 0) { + if (slave.balls > 0 && jsRandom(1,2) === 1) { if (slave.dick > 0) { if (_seed > 50) { t += `and is having ${his} cock sucked dry. As you watch, `; @@ -1439,55 +1345,55 @@ window.walkPasts = function(slave, _seed) { } } } else { - t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; + if (_seed > 50) { + t += `and is having ${his} tits drained, but you have a good view of ${his} ${race} body on the feeds.`; + } else { + t += `and is recovering after having ${his} tits sucked dry, but you have a good view of ${his} ${race} body on the feeds.`; + } } - } else { - t += `is working in ${V.dairyName}, `; - if (slave.lactation > 0) { - if (slave.balls > 0 && jsRandom(1, 2) === 1) { - if (slave.dick > 0) { - if (_seed > 50) { - t += `and is having ${his} cock milked. As you watch, `; - if (slave.scrotum) { - t += `${his} balls tighten `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting > 0) { - t += `as the phallus up ${his} butt `; - } else { - t += `as the suction to ${his} dick `; - } - t += `brings ${him} closer to a copious ejaculation.`; - } else { - t += `and is massaging ${his} sore swollen cock, but you have a good view of ${his} ${race} body on the feeds.`; - } + } else if (slave.balls > 0) { + if (slave.dick > 0) { + if (_seed > 50) { + t += `and is having ${his} cock sucked dry. As you watch, `; + if (slave.scrotum) { + t += `${his} balls tighten `; } else { - if (_seed > 50) { - t += `and is having ${his} balls drained. As you watch, `; - if (slave.scrotum) { - t += `${his} scrotum tightens `; - } else { - t += `${he} begins to thrust harder `; - } - if (V.dairyStimulatorsSetting) { - t += `as the phallus up ${his} butt `; - } else { - t += `as the suction against ${his} crotch `; - } - t += `brings ${him} closer to a copious squirting.`; - } else { - t += `and is massaging ${his} aching balls, but you have a good view of ${his} ${race} body on the feeds.`; - } + t += `${he} begins to thrust harder `; } + if (V.dairyStimulatorsSetting > 0) { + t += `as the phallus up ${his} butt `; + } else { + t += `as the suction to ${his} dick `; + } + t += `forces ${him} closer to yet another ejaculation.`; } else { - if (_seed > 50) { - t += `and is having ${his} tits milked, but you have a good view of ${his} ${race} body on the feeds.`; + t += `and is wincing in pain as the machine sucks ${his} sore cock, but you have a good view of ${his} ${race} body on the feeds.`; + } + } else { + if (_seed > 50) { + t += `and is having ${his} balls sucked dry. As you watch, `; + if (slave.scrotum) { + t += `${his} scrotum tightens `; + } else { + t += `${he} begins to thrust harder `; + } + if (V.dairyStimulatorsSetting) { + t += `as the phallus up ${his} butt `; } else { - t += `and is massaging ${his} sore tits, but you have a good view of ${his} ${race} body on the feeds.`; + t += `as the suction against ${his} crotch `; } + t += `forces ${him} closer to yet another leaking ejaculation.`; + } else { + t += `and is wincing in pain as the machine sucks ${his} empty balls, but you have a good view of ${his} ${race} body on the feeds.`; } - } else if (slave.balls > 0) { + } + } else { + t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; + } + } else { + t += `is working in ${V.dairyName}, `; + if (slave.lactation > 0) { + if (slave.balls > 0 && jsRandom(1,2) === 1) { if (slave.dick > 0) { if (_seed > 50) { t += `and is having ${his} cock milked. As you watch, `; @@ -1496,7 +1402,7 @@ window.walkPasts = function(slave, _seed) { } else { t += `${he} begins to thrust harder `; } - if (V.dairyStimulatorsSetting) { + if (V.dairyStimulatorsSetting > 0) { t += `as the phallus up ${his} butt `; } else { t += `as the suction to ${his} dick `; @@ -1524,396 +1430,436 @@ window.walkPasts = function(slave, _seed) { } } } else { - t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; - } - } - break; - case "work in the brothel": - t += `is working in ${V.brothelName}, and is `; - if (Beauty(slave) > 100 && jsRandom(1, 2) === 1) { - if (_seed > 80) { - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `riding one customer's dick while ${he} gives another a blowjob.`; - } else { - t += `deep throating a pair of customer's dicks.`; - } - } else if (_seed > 60 && slave.amp !== 1) { - t += `sucking one customer's cock while giving another a handjob.`; - } else if (_seed > 40) { - t += `eating out one customer's cunt while another `; - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `uses a strap-on on ${him}.`; + if (_seed > 50) { + t += `and is having ${his} tits milked, but you have a good view of ${his} ${race} body on the feeds.`; } else { - t += `teases ${his} butt.`; + t += `and is massaging ${his} sore tits, but you have a good view of ${his} ${race} body on the feeds.`; } - } else if (_seed > 20) { - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `getting pounded by `; + } + } else if (slave.balls > 0) { + if (slave.dick > 0) { + if (_seed > 50) { + t += `and is having ${his} cock milked. As you watch, `; + if (slave.scrotum) { + t += `${his} balls tighten `; + } else { + t += `${he} begins to thrust harder `; + } + if (V.dairyStimulatorsSetting) { + t += `as the phallus up ${his} butt `; + } else { + t += `as the suction to ${his} dick `; + } + t += `brings ${him} closer to a copious ejaculation.`; } else { - t += `amusing `; + t += `and is massaging ${his} sore swollen cock, but you have a good view of ${his} ${race} body on the feeds.`; } - t += `two women wearing strap-ons.`; } else { - if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `being double penetrated by `; + if (_seed > 50) { + t += `and is having ${his} balls drained. As you watch, `; + if (slave.scrotum) { + t += `${his} scrotum tightens `; + } else { + t += `${he} begins to thrust harder `; + } + if (V.dairyStimulatorsSetting) { + t += `as the phallus up ${his} butt `; + } else { + t += `as the suction against ${his} crotch `; + } + t += `brings ${him} closer to a copious squirting.`; } else { - t += `using ${his} body to please `; + t += `and is massaging ${his} aching balls, but you have a good view of ${his} ${race} body on the feeds.`; } - t += `a pair of customers.`; } - } else if (_seed > 80) { + } else { + t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`; + } + } + break; + case "work in the brothel": + t += `is working in ${V.brothelName}, and is `; + if (Beauty(slave) > 100 && jsRandom(1,2) === 1) { + if (_seed > 80) { if (canDoAnal(slave) || canDoVaginal(slave)) { - t += `pleasing `; + t += `riding one customer's dick while ${he} gives another a blowjob.`; } else { - t += `riding `; + t += `deep throating a pair of customer's dicks.`; } - t += `a customer's dick.`; - } else if (_seed > 60) { - t += `sucking a customer's cock.`; + } else if (_seed > 60 && slave.amp !== 1) { + t += `sucking one customer's cock while giving another a handjob.`; } else if (_seed > 40) { - t += `pleasuring a customer's cunt.`; - } else if (_seed > 20) { - t += `getting pounded by a woman wearing a strap-on.`; - } else { - t += `being held down and `; - if (canDoAnal(slave)) { - t += `buttfucked `; - } else { - t += `raped `; - } - t += `by a customer.`; - } - t += ` You have a voyeuristic view of ${his} ${race} body on the feeds.`; - break; - case "serve in the club": - t += `is working in ${V.clubName}, `; - if (_seed > 50) { - t += `displaying ${his} ${race} body, keeping citizens company, and flirting with anyone who shows interest.`; - } else { - t += `or rather just off it, having taken a prominent citizen back to a discreet room so he can use ${his} ${race} body.`; - } - break; - case "work as a servant": - if (_seed > 50) { - t += `was scrubbing the penthouse floor, until another slave requested oral service.`; - } else { - t += `is scrubbing the penthouse floor.`; - } - break; - case "serve in the master suite": - if (slave.fuckdoll > 0) { - t += `waiting for use in ${V.masterSuiteName}, next to a display case full of other sex toys.`; - } else if (V.masterSuiteUpgradeLuxury === 1) { - if (_seed > 50) { - t += `is sitting on the big bed in ${V.masterSuiteName}, awaiting your return.`; + t += `eating out one customer's cunt while another `; + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `uses a strap-on on ${him}.`; } else { - t += `is beautifying ${himself} in ${V.masterSuiteName} so ${he}'ll be pretty when you return.`; + t += `teases ${his} butt.`; } - } else if (V.masterSuiteUpgradeLuxury === 2) { - t += `is in ${V.masterSuiteName}'s fuckpit, `; - if (_seed > 80) { - t += `with a pair of ${his} fellow fucktoys industriously sucking on ${his} nipples.`; - } else if (_seed > 60) { - if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { - t += `taking double penetration from `; - } else { - t += `being spitroasted by `; - } - t += `a pair of ${his} fellow fucktoys.`; - } else if (_seed > 40) { - if (canPenetrate(slave)) { - t += `with ${his} dick inside `; - } else if (slave.dick > 0 && slave.chastityPenis !== 1) { - t += `getting ${his} soft dick sucked by `; - } else if (canDoVaginal(slave) || canDoAnal(slave)) { - t += `getting eaten out by `; - } else { - t += `making out with `; - } - t += `a fellow fucktoy.`; - } else if (_seed > 20) { - if (slave.vagina > 0 && canDoVaginal(slave)) { - t += `getting pounded `; - } else if (slave.anus > 0 && canDoAnal(slave)) { - t += `getting ${his} ass pounded `; - } else if (canDoVaginal(slave) || canDoAnal(slave)) { - t += `getting eaten out `; - } else { - t += `getting deepthroated `; - } - t += `by a fellow fucktoy.`; + } else if (_seed > 20) { + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `getting pounded by `; } else { - t += `performing oral sex on a fellow fucktoy.`; + t += `amusing `; } + t += `two women wearing strap-ons.`; } else { - if (slave.energy > 95) { - t += `is having enthusiastic sex with your other pets while waiting for you to ravish ${him}.`; + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `being double penetrated by `; } else { - t += `is having idle sex with several of your other toys while they await your pleasure.`; - if (slave.fetishKnown === 1) { - switch (slave.fetish) { - case "buttslut": - if (canDoAnal(slave) && slave.anus > 0) { - t += `${He}'s happily taking a strap-on up ${his} asspussy.`; - } else { - t += `${He}'s happily got another slave between ${his} buttcheeks.`; - } - break; - case "cumslut": - t += `${He}'s happily performing oral on another slave.`; - break; - case "dom": - t += `${He}'s pinning another slave down while ${he} fucks her.`; - break; - case "submissive": - t += `${He}'s letting another slave have her way with ${him}.`; - break; - case "sadist": - if (slave.amp !== 1) { - t += `${He}'s spanking another slave with one hand and fingering her with the other.`; - } else { - t += `${He}'s painfully teasing another slave's nipple with ${his} teeth.`; - } - break; - case "masochist": - t += `Another slave is spanking ${him} while molesting everything she can.`; - break; - case "boobs": - t += `${He} has a slave sucking on each of ${his} nipples`; - if (slave.amp !== 1) { - t += ` while ${he} gives each a handjob.`; - } else { - t += `.`; - } - break; - case "pregnancy": - if (slave.belly >= 5000) { - t += `${He}'s sighing contentedly as ${his} rounded belly is sensually rubbed.`; - } else if (canPenetrate(slave)) { - t += `${He}'s happily roleplaying impregnating the slave ${he}'s fucking.`; - } else if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { - t += `${He}'s happily roleplaying conceiving a child as ${he} gets fucked.`; - } else { - t += `${He}'s happily roleplaying being hugely pregnant.`; - } - break; - - } - } + t += `using ${his} body to please `; } + t += `a pair of customers.`; } - break; - /* - case "guard you": - t += `is standing discreetly behind your left shoulder, watching for threats.`; - break - */ - case "stay confined": - t += `is confined, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; - break; - case "be confined in the cellblock": - t += `is confined in ${V.cellblockName}, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; - break; - case "be confined in the arcade": - case "work a glory hole": - t += `is confined in `; - if (slave.assignment === "be confined in the arcade") { - t += `${V.arcadeName}; `; - } else { - t += `a glory hole; `; - } - if (_seed > 80 && (canDoAnal(slave) || canDoVaginal(slave))) { - t += `${his} ass is held out at cock height, and a customer is using ${his} fuckhole.`; - } else if (_seed > 60) { - t += `${his} mouth is held open at cock height, and a customer is fucking ${his} throat.`; - } else if (_seed > 40) { - t += `a woman is abusing ${him} with a couple of dildos.`; - } else if (_seed > 20 && canDoAnal(slave)) { - t += `a customer is harshly using ${his} defenseless anus.`; + } else if (_seed > 80) { + if (canDoAnal(slave) || canDoVaginal(slave)) { + t += `pleasing `; } else { - t += `a customer is cruelly spanking ${his} helpless butt.`; + t += `riding `; } - break; - case "be the Madam": - t += `is managing ${V.brothelName}: ${he} is making sure all the customers are satisfied and all the whores are working hard.`; - break; - case "be your Concubine": - if (jsRandom(1, 2) === 1) { - t += `is looking after ${himself}; ${he} spends many hours every day on ${his} beauty regimen.`; + t += `a customer's dick.`; + } else if (_seed > 60) { + t += `sucking a customer's cock.`; + } else if (_seed > 40) { + t += `pleasuring a customer's cunt.`; + } else if (_seed > 20) { + t += `getting pounded by a woman wearing a strap-on.`; + } else { + t += `being held down and `; + if (canDoAnal(slave)) { + t += `buttfucked `; } else { - t += `is checking over the appearance of your harem, making sure everyone looks perfect.`; + t += `raped `; } - break; - case "be the Wardeness": - t += `is looking after the cells: ${he} is `; + t += `by a customer.`; + } + t += ` You have a voyeuristic view of ${his} ${race} body on the feeds.`; + break; + case "serve in the club": + t += `is working in ${V.clubName}, `; + if (_seed > 50) { + t += `displaying ${his} ${race} body, keeping citizens company, and flirting with anyone who shows interest.`; + } else { + t += `or rather just off it, having taken a prominent citizen back to a discreet room so he can use ${his} ${race} body.`; + } + break; + case "work as a servant": + if (_seed > 50) { + t += `was scrubbing the penthouse floor, until another slave requested oral service.`; + } else { + t += `is scrubbing the penthouse floor.`; + } + break; + case "serve in the master suite": + if (slave.fuckdoll > 0) { + t += `waiting for use in ${V.masterSuiteName}, next to a display case full of other sex toys.`; + } else if (V.masterSuiteUpgradeLuxury === 1) { if (_seed > 50) { - t += `forcing a resistant slave to orally service ${him}.`; - } else { - t += `beating a rebellious slave across the buttocks.`; - } - break; - case "live with your Head Girl": - if (V.HeadGirl !== 0) { - t += `is getting the Head Girl's suite cleaned up while ${V.HeadGirl.slaveName} is out working.`; + t += `is sitting on the big bed in ${V.masterSuiteName}, awaiting your return.`; } else { - t += `is making sure the Head Girl's suite is in order for your next Head Girl.`; + t += `is beautifying ${himself} in ${V.masterSuiteName} so ${he}'ll be pretty when you return.`; } - break; - case "be the Stewardess": - t += `is managing the house servants in ${V.servantsQuartersName}: ${he} overseeing the laboring house slaves and punishing any that step out of line.`; - break; - case "be the Schoolteacher": - t += `is teaching classes in ${V.schoolroomName}: ${he} is leading the slave students in rote recitation.`; - break; - case "be the Attendant": - t += `is seeing to girls in ${V.spaName}: ${he} is gently soaping an exhausted slave.`; - break; - case "be the DJ": - if (_seed > 50) { - t += `is right where ${he} belongs, in the DJ booth in ${V.clubName} ${he} leads. ${He}'s bouncing in time with the beat to show off ${his} `; - if (slave.boobs > 300) { - t += `tits.`; + } else if (V.masterSuiteUpgradeLuxury === 2) { + t += `is in ${V.masterSuiteName}'s fuckpit, `; + if (_seed > 80) { + t += `with a pair of ${his} fellow fucktoys industriously sucking on ${his} nipples.`; + } else if (_seed > 60) { + if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { + t += `taking double penetration from `; } else { - t += `goods.`; + t += `being spitroasted by `; } + t += `a pair of ${his} fellow fucktoys.`; + } else if (_seed > 40) { + if (canPenetrate(slave)) { + t += `with ${his} dick inside `; + } else if (slave.dick > 0 && slave.chastityPenis !== 1) { + t += `getting ${his} soft dick sucked by `; + } else if (canDoVaginal(slave) || canDoAnal(slave)) { + t += `getting eaten out by `; + } else { + t += `making out with `; + } + t += `a fellow fucktoy.`; + } else if (_seed > 20) { + if (slave.vagina > 0 && canDoVaginal(slave)) { + t += `getting pounded `; + } else if (slave.anus > 0 && canDoAnal(slave)) { + t += `getting ${his} ass pounded `; + } else if (canDoVaginal(slave) || canDoAnal(slave)) { + t += `getting eaten out `; + } else { + t += `getting deepthroated `; + } + t += `by a fellow fucktoy.`; } else { - t += `is taking the lead on ${V.clubName}'s floor: ${he} greets new arrivals, flirts with them prettily, and subtly guides them towards choice sluts.`; - } - break; - case "be the Milkmaid": - t += `is working in ${V.dairyName}, looking after your stock.`; - break; - default: - /* WALKPASTS START HERE */ - if (slave.heels === 1 && !["flats", "none"].includes(slave.shoes)) { - t += `walks past your desk with the tiny swaying steps ${he} must take in order to walk on ${his} surgically altered legs. ${He} is on ${his} way to `; - } else if (["heels", "pumps"].includes(slave.shoes)) { - t += `walks past your desk with the swaying steps ${he} must take in ${his} high heels. ${He} is on ${his} way to `; - } else if (slave.shoes === "boots") { - t += `walks past your desk with the confident gait encouraged by ${his} high heeled boots. ${He} is on ${his} way to `; - } else if (slave.shoes === "extreme heels") { - t += `walks past your desk with the tiny swaying steps ${he} must take in ${his} ridiculous heels. ${He} is on ${his} way to `; - } else if (slave.heels === 1) { - t += `crawls past your desk on all fours, since ${he} has not been allowed the heels ${he} needs to walk upright. ${He} is on ${his} way to `; - } else if (slave.amp === 1) { - t += `is carried past your desk by one of your other slaves. ${He} is on ${his} way to `; - } else if (!canWalk(slave)) { - t += `is helped past your desk by one of your other slaves. ${He} is on ${his} way to `; - } else { - t += `walks past your desk on ${his} way to `; + t += `performing oral sex on a fellow fucktoy.`; } - if (slave.inflation > 0 && jsRandom(1, 100) > 70) { - if (slave.inflationMethod === 1) { - t += `gorge ${himself} with ${slave.inflationType}; `; - } else if (slave.inflationMethod === 2) { - t += `fill ${his} rear with `; - switch (slave.inflationType) { - case "water": - case "milk": - case "cum": - case "food": - t += `${slave.inflationType}; `; - break; - default: - t += `${slave.inflationType}s; `; - break; - } - } else if (slave.inflationMethod === 3) { - if (slave.inflationType === "milk") { - t += `suckle from ${his} assigned nipple until ${he} is sufficiently filled with milk; `; - } else { - t += `suck ${his} assigned dick until ${he} is sufficiently filled with cum; `; - } - } + } else { + if (slave.energy > 95) { + t += `is having enthusiastic sex with your other pets while waiting for you to ravish ${him}.`; } else { - switch (slave.assignment) { - case "rest": - if (_seed > 50) { - t += `bed; `; + t += `is having idle sex with several of your other toys while they await your pleasure.`; + if (slave.fetishKnown === 1) { + switch (slave.fetish) { + case "buttslut": + if (canDoAnal(slave) && slave.anus > 0) { + t += `${He}'s happily taking a strap-on up ${his} asspussy.`; } else { - t += `eat; `; + t += `${He}'s happily got another slave between ${his} buttcheeks.`; } break; - case "get milked": - if (_seed > 50) { - if (slave.lactation) { - t += `milk ${his} overfull ${race} tits; `; - } else { - t += `empty ${his} aching balls; `; - } - } else { - if (slave.lactation) { - t += `drain ${his} milky ${race} udders; `; - } else { - t += `relieve ${his} heavy balls; `; - } - } + case "cumslut": + t += `${He}'s happily performing oral on another slave.`; break; - case "whore": - if (_seed > 50) { - t += `sell ${his} ${race} body; `; - } else { - t += `ply ${his} trade as a whore; `; - } + case "dom": + t += `${He}'s pinning another slave down while ${he} fucks her.`; break; - case "serve the public": - if (_seed > 50) { - t += `serve the public; `; + case "submissive": + t += `${He}'s letting another slave have her way with ${him}.`; + break; + case "sadist": + if (slave.amp !== 1) { + t += `${He}'s spanking another slave with one hand and fingering her with the other.`; } else { - t += `be a public slut; `; + t += `${He}'s painfully teasing another slave's nipple with ${his} teeth.`; } break; - case "rest in the spa": - t += `relax in ${V.spaName}; `; - break; - case "please you": - t += `wait next to you and wait for you to fuck ${him}; `; - break; - case "be a subordinate slave": - t += `service your other slaves; `; - break; - case "be a servant": - t += `clean up after your other slaves; `; + case "masochist": + t += `Another slave is spanking ${him} while molesting everything she can.`; break; - case "learn in the schoolroom": - t += `attend classes `; - if (V.Schoolteacher === 0) { - t += `in ${V.schoolroomName}; `; + case "boobs": + t += `${He} has a slave sucking on each of ${his} nipples`; + if (slave.amp !== 1) { + t += ` while ${he} gives each a handjob.`; } else { - t += `under ${V.Schoolteacher.slaveName}, perhaps literally; `; + t += `.`; } break; - case "be the Attendant": - t += `look after the slaves in ${V.spaName}; `; - break; - case "take classes": - t += `attend classes with ${V.assistantName}; `; - break; - case "be your Head Girl": - t += `oversee your other slaves; `; - break; - case "recruit girls": - t += `use ${his} connections to recruit slaves; `; - break; - default: - t += `${slave.assignment}; `; - break; + case "pregnancy": + if (slave.belly >= 5000) { + t += `${He}'s sighing contentedly as ${his} rounded belly is sensually rubbed.`; + } else if (canPenetrate(slave)) { + t += `${He}'s happily roleplaying impregnating the slave ${he}'s fucking.`; + } else if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) { + t += `${He}'s happily roleplaying conceiving a child as ${he} gets fucked.`; + } else { + t += `${He}'s happily roleplaying being hugely pregnant.`; + } + } } - } /* end inflation blurb */ - if (slave.fetish === "mindbroken") { - t += `${he} does not even glance at you as ${he} goes mindlessly to ${his} next task.`; - } else if (slave.devotion < -50) { - t += `${he} directs a look of pure hatred at where you sit as ${he} passes.`; - } else if (slave.devotion < -20) { - t += `${he} cannot keep the loathing from ${his} face as ${he} passes.`; - } else if (slave.devotion <= 20) { - t += `${he} passes quickly, obviously hoping to avoid you.`; - } else if (slave.devotion <= 50) { - t += `${he} rushes by, hurrying to ${his} next task.`; - } else { - t += `as ${he} passes ${he} gives you a look of adoration.`; } - break; + } + break; + /* + case "guard you": + t += `is standing discreetly behind your left shoulder, watching for threats.`; + break + */ + case "stay confined": + t += `is confined, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; + break; + case "be confined in the cellblock": + t += `is confined in ${V.cellblockName}, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`; + break; + case "be confined in the arcade": + case "work a glory hole": + t += `is confined in `; + if (slave.assignment === "be confined in the arcade") { + t += `${V.arcadeName}; `; + } else { + t += `a glory hole; `; + } + if (_seed > 80 && (canDoAnal(slave) || canDoVaginal(slave))) { + t += `${his} ass is held out at cock height, and a customer is using ${his} fuckhole.`; + } else if (_seed > 60) { + t += `${his} mouth is held open at cock height, and a customer is fucking ${his} throat.`; + } else if (_seed > 40) { + t += `a woman is abusing ${him} with a couple of dildos.`; + } else if (_seed > 20 && canDoAnal(slave)) { + t += `a customer is harshly using ${his} defenseless anus.`; + } else { + t += `a customer is cruelly spanking ${his} helpless butt.`; + } + break; + case "be the Madam": + t += `is managing ${V.brothelName}: ${he} is making sure all the customers are satisfied and all the whores are working hard.`; + break; + case "be your Concubine": + if (jsRandom(1,2) === 1) { + t += `is looking after ${himself}; ${he} spends many hours every day on ${his} beauty regimen.`; + } else { + t += `is checking over the appearance of your harem, making sure everyone looks perfect.`; + } + break; + case "be the Wardeness": + t += `is looking after the cells: ${he} is `; + if (_seed > 50) { + t += `forcing a resistant slave to orally service ${him}.`; + } else { + t += `beating a rebellious slave across the buttocks.`; + } + break; + case "live with your Head Girl": + if (V.HeadGirl !== 0) { + t += `is getting the Head Girl's suite cleaned up while ${V.HeadGirl.slaveName} is out working.`; + } else { + t += `is making sure the Head Girl's suite is in order for your next Head Girl.`; + } + break; + case "be the Stewardess": + t += `is managing the house servants in ${V.servantsQuartersName}: ${he} overseeing the laboring house slaves and punishing any that step out of line.`; + break; + case "be the Schoolteacher": + t += `is teaching classes in ${V.schoolroomName}: ${he} is leading the slave students in rote recitation.`; + break; + case "be the Attendant": + t += `is seeing to girls in ${V.spaName}: ${he} is gently soaping an exhausted slave.`; + break; + case "be the DJ": + if (_seed > 50) { + t += `is right where ${he} belongs, in the DJ booth in ${V.clubName} ${he} leads. ${He}'s bouncing in time with the beat to show off ${his} `; + if (slave.boobs > 300) { + t += `tits.`; + } else { + t += `goods.`; + } + } else { + t += `is taking the lead on ${V.clubName}'s floor: ${he} greets new arrivals, flirts with them prettily, and subtly guides them towards choice sluts.`; + } + break; + case "be the Milkmaid": + t += `is working in ${V.dairyName}, looking after your stock.`; + break; + default: /* WALKPASTS START HERE */ + if (slave.heels === 1 && !["flats", "none"].includes(slave.shoes)) { + t += `walks past your desk with the tiny swaying steps ${he} must take in order to walk on ${his} surgically altered legs. ${He} is on ${his} way to `; + } else if (["heels", "pumps"].includes(slave.shoes)) { + t += `walks past your desk with the swaying steps ${he} must take in ${his} high heels. ${He} is on ${his} way to `; + } else if (slave.shoes === "boots") { + t += `walks past your desk with the confident gait encouraged by ${his} high heeled boots. ${He} is on ${his} way to `; + } else if (slave.shoes === "extreme heels") { + t += `walks past your desk with the tiny swaying steps ${he} must take in ${his} ridiculous heels. ${He} is on ${his} way to `; + } else if (slave.heels === 1) { + t += `crawls past your desk on all fours, since ${he} has not been allowed the heels ${he} needs to walk upright. ${He} is on ${his} way to `; + } else if (slave.amp === 1) { + t += `is carried past your desk by one of your other slaves. ${He} is on ${his} way to `; + } else if (!canWalk(slave)) { + t += `is helped past your desk by one of your other slaves. ${He} is on ${his} way to `; + } else { + t += `walks past your desk on ${his} way to `; + } + if (slave.inflation > 0 && jsRandom(1,100) > 70) { + if (slave.inflationMethod === 1) { + t += `gorge ${himself} with ${slave.inflationType}; `; + } else if (slave.inflationMethod === 2) { + t += `fill ${his} rear with `; + switch (slave.inflationType) { + case "water": + case "milk": + case "cum": + case "food": + t += `${slave.inflationType}; `; + break; + default: + t += `${slave.inflationType}s; `; + break; + } + } else if (slave.inflationMethod === 3) { + if (slave.inflationType === "milk") { + t += `suckle from ${his} assigned nipple until ${he} is sufficiently filled with milk; `; + } else { + t += `suck ${his} assigned dick until ${he} is sufficiently filled with cum; `; + } + } + } else { + switch (slave.assignment) { + case "rest": + if (_seed > 50) { + t += `bed; `; + } else { + t += `eat; `; + } + break; + case "get milked": + if (_seed > 50) { + if (slave.lactation) { + t += `milk ${his} overfull ${race} tits; `; + } else { + t += `empty ${his} aching balls; `; + } + } else { + if (slave.lactation) { + t += `drain ${his} milky ${race} udders; `; + } else { + t += `relieve ${his} heavy balls; `; + } + } + break; + case "whore": + if (_seed > 50) { + t += `sell ${his} ${race} body; `; + } else { + t += `ply ${his} trade as a whore; `; + } + break; + case "serve the public": + if (_seed > 50) { + t += `serve the public; `; + } else { + t += `be a public slut; `; + } + break; + case "rest in the spa": + t += `relax in ${V.spaName}; `; + break; + case "please you": + t += `wait next to you and wait for you to fuck ${him}; `; + break; + case "be a subordinate slave": + t += `service your other slaves; `; + break; + case "be a servant": + t += `clean up after your other slaves; `; + break; + case "learn in the schoolroom": + t += `attend classes `; + if (V.Schoolteacher === 0) { + t += `in ${V.schoolroomName}; `; + } else { + t += `under ${V.Schoolteacher.slaveName}, perhaps literally; `; + } + break; + case "be the Attendant": + t += `look after the slaves in ${V.spaName}; `; + break; + case "take classes": + t += `attend classes with ${V.assistantName}; `; + break; + case "be your Head Girl": + t += `oversee your other slaves; `; + break; + case "recruit girls": + t += `use ${his} connections to recruit slaves; `; + break; + default: + t += `${slave.assignment}; `; + break; + } + } /* end inflation blurb */ + if (slave.fetish === "mindbroken") { + t += `${he} does not even glance at you as ${he} goes mindlessly to ${his} next task.`; + } else if (slave.devotion < -50) { + t += `${he} directs a look of pure hatred at where you sit as ${he} passes.`; + } else if (slave.devotion < -20) { + t += `${he} cannot keep the loathing from ${his} face as ${he} passes.`; + } else if (slave.devotion <= 20) { + t += `${he} passes quickly, obviously hoping to avoid you.`; + } else if (slave.devotion <= 50) { + t += `${he} rushes by, hurrying to ${his} next task.`; + } else { + t += `as ${he} passes ${he} gives you a look of adoration.`; + } + break; } return t; }; @@ -1925,14 +1871,8 @@ window.boobWatch = function(slave) { let V = State.variables; let pronouns = getPronouns(slave); - let he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - let He = capFirstChar(he), - His = capFirstChar(his); + let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + let He = capFirstChar(he), His = capFirstChar(his); let breasts = (slave.boobs < 300) ? `flat chest` : `breasts`; @@ -2079,7 +2019,7 @@ window.boobWatch = function(slave) { break; case "a slutty outfit": t += `For today's slutty outfit ${he}'s chosen a `; - if (jsRandom(1, 100) > 50) { + if (jsRandom(1,100) > 50) { t += `handkerchief top that occasionally comes untied and `; if (slave.boobs < 300) { t += `reveals ${his} flat chest.`; @@ -2232,7 +2172,7 @@ window.boobWatch = function(slave) { } break; - // needs improvement + //needs improvement case "a klan robe": t += `${His} robe covers ${his} ${breasts} totally.`; break; @@ -2314,7 +2254,7 @@ window.boobWatch = function(slave) { case "a biyelgee costume": t += `${His} costume could be removed with barely any effort.`; break; - // ends needs work block + // ends needs work block case "no clothing": if (slave.chastityAnus === 1 || slave.chastityVagina === 1 || slave.chastityPenis === 1) { @@ -2349,14 +2289,8 @@ window.buttWatch = function(slave) { let V = State.variables; let pronouns = getPronouns(slave); - let he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - let He = capFirstChar(he), - His = capFirstChar(his); + let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + let He = capFirstChar(he), His = capFirstChar(his); V.target = "FButt"; @@ -2367,14 +2301,14 @@ window.buttWatch = function(slave) { break; case "uncomfortable straps": t += `A strap passes between ${his} `; - if (slave.amp !== 1) { + if (slave.amp !== 1 ) { t += `legs, giving ${his} gait an awkward sway.`; } else { t += `leg stumps, pressing against ${his} genitals.`; } break; case "shibari ropes": - if (slave.amp !== 1) { + if (slave.amp !== 1 ) { t += `Ropes bind ${his} legs, giving ${his} gait an awkward sway.`; } else { t += `A rope passes between ${his} leg stumps, pressing against ${his} genitals.`; @@ -2472,7 +2406,7 @@ window.buttWatch = function(slave) { break; case "a slutty outfit": t += `For today's slutty outfit ${he}'s chosen `; - if (jsRandom(1, 100) > 50 && slave.amp !== 1) { + if (jsRandom(1,100) > 50 && slave.amp !== 1) { t += `yoga pants so sheer that everything ${he}'s got is clearly visible.`; } else { t += `a miniskirt so brief that ${his} ass is hanging out the back, and a glimpse of ${his} goods is occasionally visible from the front.`; @@ -2671,7 +2605,7 @@ window.buttWatch = function(slave) { t += `${His} oversized t-shirt is covering ${his} rear, but it can be lifted easily enough.`; break; default: - // "a bra" "a button-up shirt" "a sweater" "a tank-top" "a tube top" "a striped bra" "a sports bra" "a t-shirt" + //"a bra" "a button-up shirt" "a sweater" "a tank-top" "a tube top" "a striped bra" "a sports bra" "a t-shirt" if (slave.chastityAnus && slave.chastityVagina) { t += `${His} chastity protects ${his} holes from penetration.`; V.target = "FondleButt"; @@ -2692,19 +2626,13 @@ window.anusWatch = function(slave) { let V = State.variables; let pronouns = getPronouns(slave); - let he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - let He = capFirstChar(he), - His = capFirstChar(his); + let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + let He = capFirstChar(he), His = capFirstChar(his); V.target = "FAnus"; t += `<<AnusDescription>>`; - if (slave.chastityAnus === 0) { + if (slave.chastityAnus == 0) { t += ` `; switch (slave.clothes) { case "a Fuckdoll suit": @@ -3007,14 +2935,8 @@ window.lipWatch = function(slave) { let V = State.variables; let pronouns = getPronouns(slave); - let he = pronouns.pronoun, - him = pronouns.object, - his = pronouns.possessive, - hers = pronouns.possessivePronoun, - himself = pronouns.objectReflexive, - boy = pronouns.noun; - let He = capFirstChar(he), - His = capFirstChar(his); + let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun; + let He = capFirstChar(he), His = capFirstChar(his); t += `<<faceDescription>>`; t += `<<mouthDescription>>`; @@ -3083,17 +3005,17 @@ window.lipWatch = function(slave) { break; default: t += `${His} unadorned `; - if (V.PC.dick === 1) { + if (V.PC.dick == 1) { t += `throat is just waiting to be wrapped around a thick shaft.`; } else { t += `lips are just begging for a cunt to lavish attention on.`; } } - if (jsRandom(1, 3) === 1) { + if (jsRandom(1,3) === 1) { V.target = "FKiss"; } else { V.target = "FLips"; } return t; -}; +}; \ No newline at end of file