diff --git a/src/endWeek/saServeYourOtherSlaves.js b/src/endWeek/saServeYourOtherSlaves.js index 8460fe37812dedd7fe3093ac0548ef5504e6ff2c..7b7991c4adb4b632d0283651d37211e9b77fe5d1 100644 --- a/src/endWeek/saServeYourOtherSlaves.js +++ b/src/endWeek/saServeYourOtherSlaves.js @@ -351,6 +351,8 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { r.push(`so ${he2} can ride that ${subRace} dick with ${his2} ${domRace} butt. <span class="hotpink">${domName} enjoys a week of constant butt loving.</span>`); } penetrativeUse = jsRandom(9, 12); + slave.counter.penetrative += penetrativeUse; + V.penetrativeTotal += penetrativeUse; domSlave.counter.anal += penetrativeUse; V.analTotal += penetrativeUse; if (canImpreg(domSlave, slave)) { @@ -370,6 +372,8 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { oralUse = jsRandom(9, 12); domSlave.counter.anal += oralUse; V.analTotal += oralUse; + slave.counter.oral += oralUse; + V.oralTotal += oralUse; } else { if (slave.devotion < -20) { r.push(`Since ${domName} loves ${his2} rear, ${subName} finds ${himself} forced to`); @@ -466,6 +470,8 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { V.oralTotal += penetrativeUse; } } + slave.counter.penetrative += oralUse; + V.penetrativeTotal += oralUse; } else if (slave.clit > 2) { if (isAmputee(slave)) { r.push(`${domName} finds ${himself2} pinned by the weight of ${subName}'s limbless body and ${his} quickly hardening ${subRace} clit being pushed eagerly into ${his2} ${domRace} mouth. Afterward, ${domName} lavishes kisses on ${his2} satisfactory top for ${his} efforts.`); @@ -476,6 +482,8 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { penetrativeUse = jsRandom(9, 12); domSlave.counter.oral += penetrativeUse; V.oralTotal += penetrativeUse; + slave.counter.penetrative += penetrativeUse; + V.penetrativeTotal += penetrativeUse; } else { if (isAmputee(slave)) { if (canDoVaginal(domSlave)) { @@ -483,11 +491,15 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { oralUse = jsRandom(9, 12); domSlave.counter.vaginal += oralUse; V.vaginalTotal += oralUse; + slave.counter.vaginal += penetrativeUse; + V.vaginalTotal += penetrativeUse; } else if (!(domSlave.chastityPenis) && domSlave.dick > 0) { r.push(`${domName} finds ${himself2} under the weight of ${subName}'s limbless body with the tight embrace of ${subRace} lips around ${his2} ${domRace} cock. Afterward, ${domName} lavishes kisses on ${his2} satisfactory top for ${his} efforts. ${domName} <span class="hotpink">enjoys a week of constant submission,</span> and even though ${he}'s technically being used, ${subName} <span class="hotpink">doesn't mind</span> being expected to torment a willing dick.`); oralUse = jsRandom(9, 12); domSlave.counter.penetrative += oralUse; V.penetrativeTotal += oralUse; + slave.counter.oral += penetrativeUse; + V.oralTotal += penetrativeUse; } else { r.push(`${domName} finds ${himself2} under the weight of ${subName}'s limbless body and`); if (domSlave.boobs >= 300) { @@ -499,6 +511,8 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { oralUse = jsRandom(9, 12); domSlave.counter.mammary += oralUse; V.mammaryTotal += oralUse; + slave.counter.oral += penetrativeUse; + V.oralTotal += penetrativeUse; } } else { if (canDoVaginal(domSlave) && domSlave.vagina !== 0) { @@ -579,7 +593,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { penetrativeUse = jsRandom(9, 12); domSlave.counter.mammary += penetrativeUse; V.mammaryTotal += penetrativeUse; - domSlave.counter.penetrative += penetrativeUse; + slave.counter.penetrative += penetrativeUse; V.penetrativeTotal += penetrativeUse; } else if (domSlave.lactation > 0) { if (slave.devotion < -20) { @@ -591,7 +605,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } } else { if (slave.devotion < -20) { - r.push(`Since ${domName} loves having ${his2} breasts attended to, ${subName} finds ${himself} forced to `); + r.push(`Since ${domName} loves having ${his2} breasts attended to, ${subName} finds ${himself} forced to`); if (!hasAnyArms(slave)) { r.push(`nuzzle and suck.`); } else { @@ -756,6 +770,11 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { r.push(`But alas, ${subName}'s dispenser has nothing to give ${domName}, so ${his2} efforts are in vain — and in a way, ${he2} prefers it that way.`); } } + penetrativeUse = 7; + domSlave.counter.oral += penetrativeUse; + V.oralTotal += penetrativeUse; + slave.counter.penetrative += penetrativeUse; + V.penetrativeTotal += penetrativeUse; } else if (slave.scrotum > 0) { r.push(`while ${his}`); if (slave.balls === 0) { @@ -792,13 +811,24 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { r.push(`adding a mix of semen into ${domName}'s meal — which ${he2} wastes no time in lapping up.`); } } + fuckCount = 7; + domSlave.counter.oral += fuckCount; + V.oralTotal += fuckCount; } else if (canDoVaginal(slave)) { r.push(`while ${his} pussy is being invaded by drops of slave food and the tongue pursuing them.`); if (slave.clit > 2) { r.push(`${subName} practically throws ${his} cup when ${domName} sucks the entire length of ${his} clit into ${his2} mouth.`); } + fuckCount = 7; + domSlave.counter.oral += fuckCount; + V.oralTotal += fuckCount; + slave.counter.penetrative += fuckCount; + V.vaginalTotal += fuckCount; } else { r.push(`with an eager tongue roaming ${his} thighs, pubic mound, and taint trying to lap up the slave food before it slips away.`); + fuckCount = 7; + domSlave.counter.oral += fuckCount; + V.oralTotal += fuckCount; } r.push(`The lewdness eminating from beneath the table is not lost on the other diners, <span class="hotpink">much to ${domName}'s enjoyment.</span>`); } else if (domSlave.fetishKnown === 1 && domSlave.fetishStrength > 60 && domSlave.fetish === "masochist" && hasAnyLimbs(slave)) { @@ -821,13 +851,179 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { } } else if (domSlave.fetishKnown === 1 && domSlave.fetishStrength > 60 && domSlave.fetish === "pregnancy") { if (canImpreg(slave, domSlave)) { - // wip + r.push(`${domName} loves pregnancy, and the first indication ${subName} gets of what ${he}'s in for this week is when ${domName}`); + if (hasAnyArms(domSlave)) { + r.push(`pushes ${him} down,`); + } else if (hasBothLegs(slave)) { + 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)}`); + fuckCount = jsRandom(10, 16); + if (slave.mpreg > 0) { + analUse = fuckCount; + domSlave.counter.penetrative += fuckCount; + V.penetrativeTotal += fuckCount; + slave.counter.anal += fuckCount; + V.analTotal += fuckCount; + } else { + vaginalUse = fuckCount; + domSlave.counter.penetrative += fuckCount; + V.penetrativeTotal += fuckCount; + slave.counter.vaginal += fuckCount; + V.vaginalTotal += fuckCount; + } } else if (domslave.pregKnown === 1 || slave.belly > 10000 || slave.bellyPreg >= 1500) { - // wip + if (domSlave.pregKnown === 1) { + if (slave.devotion < -20) { + r.push(`Since ${domName} is pregnant, ${subName} finds ${himself} forced to`); + if (!hasAnyArms(slave)) { + r.push(`nuzzle and lick`); + } else { + r.push(`massage, rub, and even tongue`); + } + r.push(`${his2} ${bellyAdjective(domSlave)} middle. ${He} spends the week trying to avoid contact with ${domName}'s ${domRace} belly with ${his} ${subRace}`); + if (!hasAnyArms(slave)) { + r.push(`face,`); + } else { + r.push(`${hands},`); + } + r.push(`but ${domName} insists. <span class="hotpink">${domName} enjoys being able to force ${subName} to attend to ${his2} gravidity.</span>`); + } else if (slave.devotion <= 50) { + r.push(`Since ${domName} is pregnant, ${subName} finds ${himself}`); + if (!hasAnyArms(slave)) { + r.push(`nuzzling and licking`); + } else { + r.push(`massaging, rubbing, and even licking`); + } + r.push(`${his2} ${bellyAdjective(domSlave)} middle. ${He} spends the week obediently servicing ${domName}'s ${domRace} belly with ${his} ${subRace}`); + if (!hasAnyArms(slave)) { + r.push(`face,`); + } else { + r.push(`${hands},`); + } + r.push(`to ${domName}'s languorous pleasure. <span class="hotpink">${domName} enjoys having ${subName} to attend to ${his2} gravidity.</span>`); + } else { + r.push(`Since ${domName} is pregnant, ${subName} pampers ${his2} ${bellyAdjective(domSlave)} middle shamelessly. ${He} spends the week devotedly massaging ${domName}'s ${domRace} middle with ${his} ${subRace}`); + if (!hasAnyArms(slave)) { + r.push(`face,`); + } else { + r.push(`${hands},`); + } + r.push(`lovingly teasing ${his2} ${domName.belly > 10000 ? "popped" : ""} navel, and staving off stretch marks with lotions and`); + if (!hasAnyArms(slave)) { + r.push(`oils (as best ${he} can without hands).`); + } else { + r.push(`oils.`); + } + r.push(`They sleep together so that ${subName} can`); + if (!hasAnyArms(slave)) { + r.push(`snuggle against ${his2} stomach`); + } else { + r.push(`clutch ${his2} stomach`); + } + r.push(`as ${he} goes to sleep, which sometimes results in less sleep for both as the fondling continues long into the night. <span class="hotpink">${domName} enjoys having ${subName} to attend to ${his2} gravidity.</span>`); + } + } else { + r.push(`Since ${domName} loves pregnant ${girl}s, and ${subName} just so happens to be a pregnant ${girl}, ${domName} spends the week fucking ${him}.`); + if (slave.devotion < -20) { + r.push(`${domName}'s ${domRace} body atop ${subName}'s swollen ${subRace} form is a frequent sight as ${domName} takes ${his2} pleasure. <span class="hotpink">${domName} enjoys being able to use ${subName} and ${his} ${bellyAdjective(slave)} belly.</span>`); + } else if (slave.devotion <= 50) { + r.push(`${domName}'s ${domRace} body atop ${subName}'s compliant swollen ${subRace} form is a frequent sight as ${domName} takes ${his2} pleasure. <span class="hotpink">${domName} enjoys being able to use ${subName} and ${his} ${bellyAdjective(slave)} belly.</span>`); + } else { + r.push(`${domName}'s ${domRace} body against ${subName}'s enthusiastic ${subRace} ${bellyAdjective(slave)} belly is a frequent sight as the two of them share pleasure. <span class="hotpink">${domName} enjoys having a pregnant plaything.</span>`); + } + if (canPenetrate(domSlave)) { + fuckCount = jsRandom(15, 25); + 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)}`); + } else { + fuckCount = jsRandom(15, 25); + } + } } else if (canImpreg(domSlave, slave)) { - // wip + r.push(`${domName} loves pregnancy, and the first indication ${subName} gets of what ${he}'s in for this week is when ${domName}`); + if (hasAnyLimbs(domSlave)) { + r.push(`pushes ${him} down`); + } else { + r.push(`has ${him} get in position`); + } + if (canPenetrate(slave)) { + r.push(`and mounts ${his} rigid dick`); + } else { + 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)}`); + fuckCount = jsRandom(10, 16); + penetrativeUse = fuckCount; + slave.counter.penetrative += fuckCount; + V.penetrativeTotal += fuckCount; + if (domSlave.mpreg > 0) { + domSlave.counter.anal += fuckCount; + V.analTotal += fuckCount; + } else { + domSlave.counter.vaginal += fuckCount; + V.vaginalTotal += fuckCount; + } } else { - // wip + r.push(`${domName} adores pregnancy, and the first indication ${subName} gets of what ${he}'s in for this week is when ${domName}`); + if (canWalk(domSlave)) { + if (domName.mpreg > 0 || domName.ovaries > 0) { + r.push(`pushes a full-term belly into ${subName}'s back and`); + } + } else { + r.push(`shows up pretending to be pregnant and`); + } + if (hasAnyArms(domSlave)) { + r.push(`hands ${him}`); + if (isItemAccessible.entry("a small empathy belly", "bellyAccessory")) { + r.push(`an enormous empathy belly`); + } else { + r.push(`a support band and big pillow`); + } + if (domName.mpreg > 0 || domName.ovaries > 0) { + r.push(`of ${his} own.`); + } else { + r.push(`to wear.`); + } + } else { + r.push(`instructs ${him} to pretend to be pregnant using`); + if (isItemAccessible.entry("a small empathy belly", "bellyAccessory")) { + r.push(`an enormous empathy belly`); + } else { + r.push(`a support band and big pillow`); + } + if (domName.mpreg > 0 || domName.ovaries > 0) { + r.push(`like ${he2} is.`); + } else { + r.push(`over ${his} middle.`); + } + } + if (slave.weight >= 130) { + r.push(`${subName} is too fat for ${domName}'s plan, so it's settled that ${he}'ll just pretend instead.`); + } + r.push(`Once ${he} is suitably 'knocked up', the fun begins; ${subName} spends the week getting awkwardly fucked.`); + if (slave.devotion < -20) { + r.push(`${domName}'s ${domRace} body struggling with ${subName}'s resisting ${subRace} form is a frequent sight as ${domName} takes ${his2} pleasure. <span class="hotpink">${domName} enjoys being able to use ${subName},</span> even if ${he2} has to pretend a little.`); + } else if (slave.devotion <= 50) { + r.push(`${domName}'s ${domRace} body balancing on ${subName}'s compliant ${subRace} form is a frequent sight as ${domName} takes ${his2} pleasure. <span class="hotpink">${domName} enjoys being able to use ${subName},</span> even if ${he2} has to pretend a little.`); + } else { + r.push(`${domName}'s ${domRace} body intertwined with ${subName}'s enthusiastic ${subRace} form is a frequent sight as the two of them share pleasure. <span class="hotpink">${domName} enjoys spending time with a partner willing to indulge ${his2} fantasies.</span>`); + } + if (canPenetrate(domSlave)) { + fuckCount = jsRandom(15, 25); + 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)}`); + } else { + fuckCount = jsRandom(15, 25); + } } } else if (domSlave.energy > 95) { if (slave.devotion < -20) { @@ -842,10 +1038,10 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { 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 */ - fuckCount = jsRandom(15, 25); + penetrativeUse = jsRandom(15, 25); r.push(`${SimpleSexAct.Slaves(domSlave, slave, fuckCount)}`); } else { - oralUse = jsRandom(15, 25); + fuckCount = jsRandom(15, 25); } } else if (domSlave.dick > 0 && canPenetrate(domSlave)) { if (slave.devotion < -20) { @@ -887,7 +1083,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { fuckCount = jsRandom(9, 12); r.push(`${SimpleSexAct.Slaves(slave, domSlave, fuckCount)}`); } else { - oralUse = jsRandom(9, 12); + fuckCount = jsRandom(9, 12); } } else if (slave.dick > 0 && hasAnyArms(domSlave) && domSlave.attrXY > 85) { if (canPenetrate(slave)) {