diff --git a/src/endWeek/saBeYourHeadGirl.js b/src/endWeek/saBeYourHeadGirl.js index 46c674721f230d797a8e412737c42615ff17686f..752a166b71265bfa8a570c4ddde56656beaf0b5d 100644 --- a/src/endWeek/saBeYourHeadGirl.js +++ b/src/endWeek/saBeYourHeadGirl.js @@ -240,8 +240,7 @@ App.SlaveAssignment.beYourHeadGirl = (function() { if (slave.rules.lactation === "induce") { r.push(`${He} works mammary stimulation into ${his} slave training regimen in an effort to bring in ${his} milk for you.`); - slave.induceLactation += 3; - r.push(`${induceLactation(slave)}`); + r.push(induceLactation(slave, 3)); if (slave.lactation === 1) { slave.rules.lactation = "maintain"; } diff --git a/src/endWeek/saPleaseYou.js b/src/endWeek/saPleaseYou.js index bc907c81e61a4f3ed537c1175a7c59c76c83d02d..9d6d59b55af92d00b7d9628ae387db9ebb7d23ba 100644 --- a/src/endWeek/saPleaseYou.js +++ b/src/endWeek/saPleaseYou.js @@ -882,8 +882,7 @@ App.SlaveAssignment.pleaseYou = (function() { slave.boobsMilk = 0; } } else { - slave.induceLactation += 2; - r.push(`${induceLactation(slave)}`); + r.push(induceLactation(slave, 2)); } slave.counter.mammary += mammaryUse; V.mammaryTotal += mammaryUse; diff --git a/src/endWeek/saRules.js b/src/endWeek/saRules.js new file mode 100644 index 0000000000000000000000000000000000000000..78350f0c963db3c60087acb74e9032c5298f0e3e --- /dev/null +++ b/src/endWeek/saRules.js @@ -0,0 +1,2773 @@ +/** + * + * @param {App.Entity.SlaveState} slave + * @returns {Node} + */ +App.SlaveAssignment.rules = function(slave) { + const el = new DocumentFragment(); + const L = App.Utils.countFacilityWorkers(); + const release = slave.rules.release; + let r = []; + + if (slave.fuckdoll === 0) { + const { + He, His, + he, his, him, himself, girl, wife + } = getPronouns(slave); + let wife2; + let milkResult; + let wardenFunTimes; + r.push(`${He}`); + if (slave.fetish === "mindbroken") { + r.push(`is mentally broken so none of the rules have any impact.`); + } else { + switch (slave.assignment) { + case "be confined in the arcade": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off, not that ${he} gets a choice.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off, not that ${he} gets a choice.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off at work despite ${his} reluctance, <span class="hotpink">habituating ${him} to being a fuckhole.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + } else if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(`wasn't a popular enough hole to sate ${his} arousal, leaving ${him} <span class="gold">uncomfortably horny</span> despite ${his} conditions.`); + slave.trust -= 3; + } + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${his} body gets used. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + break; + case "be the Madam": + slave.need -= (App.Entity.facilities.brothel.employeesIDs().size * 10); + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in ${V.brothelName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing ${him} in charge of it. It also helps to offset the tiring nature of ${his} position.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict ${his} non-essential activities.`); + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} manages clients, analyzing ${his} tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} spends that time massaging ${his} breasts and working ${his} nipples.`); + r.push(induceLactation(slave, 2)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen">${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} takes the time to thoroughly milk ${his} breasts to keep ${his} lactation strong for you.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "work in the brothel": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off, not that ${his} clients care.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off, not that ${his} clients care.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off at work despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + } else if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + switch (V.brothelDecoration) { + case "Degradationist": + case "standard": + r.push(`The spare living conditions of ${V.brothelName} <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + slave.devotion += 1; + break; + case "Chattel Religionist": + r.push(`The open, yet comfortable, conditions of ${V.brothelName} <span class="hotpink">get ${him} used</span> to the routine of slavery.`); + slave.devotion += 1; + break; + default: + r.push(`${He} gets a little room all to ${himself}, allowing ${him} to feel self-reliant; or it would, if it didn't reek of sex and shame after all the customers ${he} serviced in it.`); + } + } else { + switch (V.brothelDecoration) { + case "Degradationist": + case "standard": + if (slave.trust > 40) { + r.push(`The spare living conditions of ${V.brothelName} <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The spare living conditions of ${V.brothelName} <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } else { + r.push(`${He}'s used to spare living conditions, so ${he}'s not bothered by ${V.brothelName}'s.`); + } + break; + case "Chattel Religionist": + r.push(`The open, yet comfortable, conditions of ${V.brothelName}'s slave quarters are quite refreshing after a day of public sex, even if ${he} has to share it with all the other whores.`); + break; + default: + r.push(`${He} likes ${his} little room in ${V.brothelName}, even if`); + if (canSmell(slave)) { + r.push(`it smells of sex`); + } else { + r.push(`it's filled with the heat of sex`); + } + r.push(`after fucking in it all day.`); + } + } + if (slave.rules.living === "luxurious") { + r.push(`They provide <span class="green">satisfying rest</span> every time ${he} drifts off to sleep.`); + } else if (slave.rules.living === "spare") { + if (slave.devotion > 20 && slave.trust <= 10) { + r.push(`They don't provide much rest, however.`); + } else { + r.push(`They provide meager rest, if anything.`); + } + } else { + r.push(`They provide`); + if (slave.devotion > 20) { + r.push(`<span class="green">adequate rest</span> for a ${girl} that knows how to manage ${his} time.`); + } else { + r.push(`<span class="green">adequate rest,</span> but not enough for a slave lacking time management.`); + } + } + + if (slave.rules.rest === "mandatory") { + if (slave.devotion <= 20) { + r.push(`Getting a day off each week <span class="mediumaquamarine">builds feelings of liberty</span> a slave shouldn't have.`); + slave.trust += 3; + } else { + r.push(`${He} appreciates having a weekly day off and takes it as a sign that ${he} has a <span class="mediumaquamarine">caring ${getWrittenTitle(slave)}.</span>`); + slave.trust += 1; + } + } else if (V.slaveUsedRest) { + if (slave.rules.rest === "permissive") { + if (slave.devotion <= 20) { + r.push(`${He}'s permitted to rest whenever ${he} feels even the slightest bit tired; <span class="mediumaquamarine">a privilege not lost on ${him}.</span>`); + slave.trust += 2; + } else { + r.push(`${He} <span class="hotpink">likes</span> that you <span class="mediumaquamarine">care enough</span> to let him rest when he gets tired.`); + slave.devotion += 1; + slave.trust += 1; + } + } else if (slave.rules.rest === "restrictive") { + if (slave.devotion <= -20) { + r.push(`${He}'s permitted to rest when fatigue sets in, but not enough to shake ${his} tiredness; ${he} feels this <span class="gold">deprivation</span> is intentional.`); + slave.trust -= 1; + } else if ((slave.devotion <= 20)) { + r.push(`${He}'s permitted to rest when fatigue sets in, and <span class="hotpink">understands</span> this is less for ${his} wellbeing and more to prevent ${him} from become unproductive.`); + slave.devotion += 1; + } else { + r.push(`${He}'s permitted to rest when fatigue sets in and is <span class="mediumaquamarine">thankful</span> you would allow ${him} the privilege so that ${he} may serve you better.`); + slave.trust += 1; + } + } else if (slave.rules.rest === "cruel") { + if (slave.devotion <= -20) { + r.push(`${He}'s <span class="gold">terrified</span> that the only reason ${he} is given any time to rest at all is just to prolong your torment of ${him}.`); + slave.trust -= 3; + } else if ((slave.devotion <= 20)) { + r.push(`You work ${him} to the bone and only allow ${him} rest when on the verge of collapsing. ${He} <span class="gold">fears</span> this <span class="mediumorchid">cruelty</span> is just the beginning.`); + slave.trust -= 3; + slave.devotion -= 3; + } else { + r.push(`Only being allowed rest when on the verge of collapsing <span class="mediumorchid">shakes ${his} faith</span> in you a little.`); + slave.devotion -= 2; + } + } + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} services customers, analyzing ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Customers are encouraged to work ${his} breasts and nipples in an effort to induce lactation; whoever gets ${him} to start dribbling milk wins a week of drinks on the house.`); + r.push(induceLactation(slave, 4)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (slave.devotion > 20) { + if (slave.fetish === "boobs") { + r.push(`It's unclear if ${he} is using ${his} milky breasts during sex for you or ${himself}; either way, ${his} lactation won't be going anywhere.`); + } else { + r.push(`${He} happily puts ${his} milky breasts to use during sex in order to keep lactating for you.`); + } + } else if (slave.devotion >= -20) { + if (slave.fetish === "boobs") { + r.push(`${He} doesn't need to be ordered to use ${his} milky breasts during sex since ${he} favors them heavily.`); + } else { + r.push(`${He} is required to utilize ${his} milky breasts during sex to keep ${his} lactation strong.`); + } + } else { + r.push(`Customers are encouraged to molest ${his} breasts to keep ${him} lactating.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the DJ": + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in the back of ${V.clubName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing your faith in ${his} abilities. It helps offset the tiring nature of ${his} position and gives ${him} a place to center ${himself} at the end of the day.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict ${his} non-essential activities.`); + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} works the crowd, analyzing ${his} sexual tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment between ${his} sets, ${he} spends that time massaging ${his} breasts and working ${his} nipples.`); + r.push(induceLactation(slave, 2)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen">${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`${He} has worked milking ${himself} into ${his} dance routines, both entertaining the crowd and keeping ${his} lactation strong for you.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "serve in the club": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off, not that ${his} spectators care.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off, not that ${his} spectators care.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off at work despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + } else if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + r.push(`${He} shares a room with`); + if (App.Entity.facilities.club.employeesIDs().size > 4) { + r.push(`some of`); + } + r.push(`the other sluts, preventing ${him} from becoming too complacent. It doesn't help that during business hours ${he} has to take citizens in ${his} own bed.`); + } else { + r.push(`${He} likes ${his} personal space in ${V.clubName}, even if`); + if (canSmell(slave)) { + r.push(`it smells of`); + } else { + r.push(`it's filled with the heat from`); + } + r.push(`sex and citizens.`); + } + r.push(`It provides`); + if (slave.devotion > 20) { + r.push(`<span class="green">adequate rest</span> for a slut that knows how to manage ${his} time.`); + } else { + r.push(`<span class="green">adequate rest,</span> but not enough for a slut lacking time management.`); + } + + if (slave.rules.rest === "mandatory") { + if (slave.devotion <= 20) { + r.push(`Getting a day off each week <span class="mediumaquamarine">builds feelings of liberty</span> a slave shouldn't have.`); + slave.trust += 3; + } else { + r.push(`${He} appreciates having a weekly day off and takes it as a sign that ${he} has a <span class="mediumaquamarine">caring ${getWrittenTitle(slave)}.</span>`); + slave.trust += 1; + } + } else if (V.slaveUsedRest) { + if (slave.rules.rest === "permissive") { + if (slave.devotion <= 20) { + r.push(`${He}'s permitted to rest whenever ${he} feels even the slightest bit tired; <span class="mediumaquamarine">a privilege not lost on ${him}.</span>`); + slave.trust += 2; + } else { + r.push(`${He} <span class="hotpink">likes</span> that you <span class="mediumaquamarine">care enough</span> to let him rest when he gets tired.`); + slave.devotion += 1; + slave.trust += 1; + } + } else if (slave.rules.rest === "restrictive") { + if (slave.devotion <= -20) { + r.push(`${He}'s permitted to rest when fatigue sets in, but not enough to shake ${his} tiredness; ${he} feels this <span class="gold">deprivation</span> is intentional.`); + slave.trust -= 1; + } else if ((slave.devotion <= 20)) { + r.push(`${He}'s permitted to rest when fatigue sets in, and <span class="hotpink">understands</span> this is less for ${his} wellbeing and more to prevent ${him} from become unproductive.`); + slave.devotion += 1; + } else { + r.push(`${He}'s permitted to rest when fatigue sets in and is <span class="mediumaquamarine">thankful</span> you would allow ${him} the privilege so that ${he} may serve you better.`); + slave.trust += 1; + } + } else if (slave.rules.rest === "cruel") { + if (slave.devotion <= -20) { + r.push(`${He}'s <span class="gold">terrified</span> that the only reason ${he} is given any time to rest at all is just to prolong your torment of ${him}.`); + slave.trust -= 3; + } else if ((slave.devotion <= 20)) { + r.push(`You work ${him} to the bone and only allow ${him} rest when on the verge of collapsing. ${He} <span class="gold">fears</span> this <span class="mediumorchid">cruelty</span> is just the beginning.`); + slave.trust -= 3; + slave.devotion -= 3; + } else { + r.push(`Only being allowed rest when on the verge of collapsing <span class="mediumorchid">shakes ${his} faith</span> in you a little.`); + slave.devotion -= 2; + } + } + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} services citizens, analyzing ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Citizens are encouraged to work ${his} breasts and nipples in an effort to induce lactation; whoever gets ${him} to start dribbling milk wins a week of drinks on the house.`); + r.push(induceLactation(slave, 4)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (slave.devotion > 20) { + if (slave.fetish === "boobs") { + r.push(`It's unclear if ${his} lactation based routines are for your benefit or ${his} own; either way, ${his} milk production won't be slowing down.`); + } else { + r.push(`${He} happily works ${his} lactation into ${his} routines in order to keep ${his} milk flowing.`); + } + } else if (slave.devotion >= -20) { + if (slave.fetish === "boobs") { + r.push(`${He} doesn't need to be ordered to work ${his} lactation into ${his} routines since ${he} does so already.`); + } else { + r.push(`${He} is required to utilize ${his} lactation while entertaining to keep ${his} lactation strong.`); + } + } else { + r.push(`Citizens are encouraged to molest ${his} breasts to keep ${him} lactating.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the Nurse": + slave.need -= (V.flSex.size * 3); + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in ${V.clinicName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing ${him} in charge of it. Having a place to call ${his} own each night helps keep the stress of ${his} duties from catching up with ${him}.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict ${his} non-essential activities.`); + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} cares for ${his} patients to determine ${his} tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`${He} spends much of ${his} time with a pair of automatic breast pumps attached to ${his} chest. The constant stimulation will have ${him} milky soon enough.`); + r.push(induceLactation(slave, 8)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen"> ${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`It's not unusual to see ${him} tending to ${his} patients with a pair of breast pumps sucking away at ${his} breasts.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "get treatment in the clinic": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else { + let partner = App.EndWeek.getClinicPartner(slave); + switch (partner.type) { + case "player": + r.push(`is well taken care of during ${his} stay in ${V.clinicName}; you make sure your ${wife}'s every sexual need is handled personally.`); + slave.need = 0; + if (canImpreg(slave, V.PC) && ((slave.vagina > 0 && slave.ovaries === 1) || (slave.anus !== 0 && slave.mpreg === 1))) { + r.push(knockMeUp(slave, 10, 0, -1, true)); + if (slave.vagina > 0 && slave.ovaries === 1) { + seX(slave, "vaginal", V.PC, "penetrative", 7); + } else { + seX(slave, "anal", V.PC, "penetrative", 7); + } + if (slave.preg > 0) { + r.push(`It comes as little surprise when routine health checks start to show <span class="lime">${he}'s pregnant!</span>`); + } + } + break; + case "lover": + ({ + wife2 + } = getPronouns(partner.slave).appendSuffix("2")); + slave.need = 0; + r.push(`is well taken care of during ${his} stay in ${V.clinicName}; ${his}`); + if (slave.relationship === 3) { + r.push(`friend with benefits`); + } else if (slave.relationship === 4) { + r.push(`sweetheart`); + } else { + r.push(wife2); + } + r.push(`frequently stops by when ${he} gets the chance to make sure ${his} sexual needs are properly handled.`); + seX(partner.slave, "oral", slave, "penetrative", 14); + break; + case "family": + r.push(`is well-loved by ${his} family; this week, ${his} ${relativeTerm(slave, partner.slave)} <span class="lightgreen">${partner.slave.slaveName}</span> pays special attention to ${him}, making sure ${his} sexual needs are met.`); + slave.need = 0; + seX(partner.slave, "oral", slave, "penetrative", 7); + break; + case "friend": + r.push(`is friends with <span class="lightgreen">${partner.slave.slaveName},</span> who comes to visit ${him} regularly. ${His} sexual frustration from being confined to the clinic shows, and ${partner.slave.slaveName} often winds up helping ${him} get relief.`); + if (partner.slave.rules.relationship === "permissive" && slave.rules.relationship === "permissive") { + r.push(`They have <span class="lightgreen">become lovers.</span>`); + slave.relationship = 3; + partner.slave.relationship = 3; + } else { + r.push(`They know it your rules prevent them from becoming anything more, but they enjoy themselves anyway.`); + } + slave.need = 0; + seX(partner.slave, "oral", slave, "penetrative", 7); + break; + case "nurse": + r.push(`is routinely brought to orgasm by ${S.Nurse.slaveName} as part of ${his} duties.`); + if (canPenetrate(slave) && S.Nurse.boobs >= 500) { + seX(S.Nurse, "mammary", slave, "penetrative", 14); + } else { + actX(S.Nurse, "oral", 14); + /* possible cumflation code here */ + } + slave.need -= 60; + break; + default: + if (release.masturbation === 1) { + if ((slave.devotion <= 20) && (slave.trust >= -20)) { + r.push(`takes solace in ${his} permission to masturbate rather than being forced to seek other means of release, <span class="mediumaquamarine">reducing ${his} fear</span> of you.`); + slave.trust += 2; + slave.need = 0; + } else if ((slave.devotion <= 20)) { + r.push(`enjoys being allowed to masturbate rather than having to seek other means of release, <span class="mediumaquamarine">slightly reducing ${his} fear</span> of you but <span class="mediumorchid">allowing ${him} to remain in control of ${him} sexuality.</span>`); + slave.trust += 1; + slave.devotion -= 1; + slave.need = 0; + } else if ((slave.devotion <= 50)) { + r.push(`accepts having to relieve ${himself} solely through masturbation.`); + slave.need = 0; + } else { + r.push(`is a little disappointed that ${he}'s limited to ${his}`); + if (!hasAnyArms(slave)) { + r.push(`imagination`); + } else { + r.push(`${(hasBothArms(slave)) ? `hands` : `hand`}.`); + } + r.push(`and toys, but <span class="mediumaquamarine">understands you care about ${his} current health.</span>`); + slave.trust += 1; + slave.need = 0; + } + if (slave.devotion > 20) { + r.push(`When ${he} does play with ${himself}, ${he}`); + r.push(App.EndWeek.Rules.masturbationFetishPlay(slave)); + r.push(App.EndWeek.Rules.masturbationDiscoversFetish(slave)); + } + r.push(App.EndWeek.Rules.masturbationDrugEffects(slave)); + } else { + r.push(`eventually gives in to ${his} urges and is <span class="gold">punished</span> for illicit masturbation.`); + slave.trust -= 2; + slave.need -= 10; + } + } + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + switch (V.clinicDecoration) { + case "Eugenics": + case "Gender Fundamentalist": + case "Gender Radicalist": + case "Hedonistic": + case "Maturity Preferentialist": + case "Paternalist": + case "Repopulation Focus": + case "Slimness Enthusiast": + case "Youth Preferentialist": + case "Neo-Imperialist": + r.push(`The luxurious living conditions encourage ${him} to <span class="mediumaquamarine">feel respectable.</span> ${He} can't help but <span class="hotpink">feel you care</span> about ${him} as something more than just an object under such lovely treatment.`); + slave.trust += 3; + slave.devotion += 1; + break; + case "Arabian Revivalist": + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Egyptian Revivalist": + case "Roman Revivalist": + r.push(`The living conditions, despite their open nature, are <span class="mediumaquamarine">quite relaxing.</span> ${His} opinion of you <span class="hotpink">can only rise</span> with such lovely treatment.`); + slave.trust += 2; + slave.devotion += 1; + break; + case "Edo Revivalist": + r.push(`The living conditions, despite their spartan nature, are <span class="mediumaquamarine">calming.</span> ${His} opinion of you <span class="hotpink">improves</span> with such a contrast to ${his} usual life.`); + slave.trust += 1; + slave.devotion += 1; + break; + case "standard": + r.push(`The spare living conditions of ${V.clinicName} serve as a constant reminder that <span class="hotpink">you only care about ${his} body</span> and not about ${him}.`); + if (slave.trust > 20) { + r.push(`<span class="gold">${He} fully understands what this means for ${him}.</span>`); + slave.trust -= 1; + } + slave.devotion += 1; + break; + default: + r.push(`The spare living conditions of ${V.clinicName} serve as a constant reminder that <span class="hotpink">${he} is nothing more than an object</span> for your amusement.`); + if (slave.trust > 20) { + r.push(`${He} can only <span class="gold">envision the horrors</span> that await ${him} under your care.`); + slave.trust -= 2; + } + slave.devotion += 1; + } + } else { + switch (V.clinicDecoration) { + case "Eugenics": + case "Gender Fundamentalist": + case "Gender Radicalist": + case "Hedonistic": + case "Maturity Preferentialist": + case "Paternalist": + case "Repopulation Focus": + case "Slimness Enthusiast": + case "Youth Preferentialist": + case "Neo-Imperialist": + r.push(`${He} loves ${his} stay in ${V.clinicName} and almost wishes it didn't have to end.`); + break; + case "Arabian Revivalist": + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Egyptian Revivalist": + case "Roman Revivalist": + r.push(`The living conditions, despite their open nature, are <span class="mediumaquamarine">quite relaxing.</span> ${He} savors ${his} stay at ${V.clinicName}.`); + slave.trust += 1; + break; + case "Edo Revivalist": + r.push(`The living conditions, despite their spartan nature, are <span class="mediumaquamarine">calming.</span> ${He} enjoys ${his} stay at ${V.clinicName}.`); + slave.trust += 1; + break; + case "standard": + if (slave.trust > 40) { + r.push(`The spare living conditions of ${V.clinicName} <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The spare living conditions of ${V.clinicName} <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } + break; + default: + if (slave.devotion >= 80) { + r.push(`The spare living conditions of ${V.clinicName} remind ${him} that ${he} is just an object for your amusement, and that is fine with ${him}.`); + } else if ((slave.trust > 40)) { + r.push(`The spare living conditions of ${V.clinicName} <span class="gold">remind ${him} that ${he} is just an object to you.</span>`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The spare living conditions of ${V.clinicName} <span class="gold">keep ${him} aware of ${his} place as your plaything.</span>`); + slave.trust -= 1; + } + } + } + + /* diverges from App.EndWeek.Rules.consentRules(slave) */ + if (V.universalRulesConsent === 0) { + if (slave.devotion <= 20) { + if (slave.trust > -10) { + r.push(`Under the rules, ${he} is free game for other slaves to molest, and lives ${his} life constantly <span class="gold">afraid</span> of the day ${he} is released from ${V.clinicName}.`); + slave.trust -= 2; + } else { + r.push(`Under the rules, ${he} will find ${himself} constantly molested by other slaves once ${he} leaves ${V.clinicName}, but ${he}'s already in such constant terror it that it doesn't cross ${his} mind.`); + } + } else if ((release.slaves === 1)) { + if (slave.energy > 95) { + r.push(`Under the rules, ${he}'s allowed to demand that other slaves get ${him} off, and ${he} <span class="hotpink">eagerly takes the opportunity</span> whenever visiting slaves are present.`); + slave.devotion += 1; + } else if ((slave.fetishKnown === 1) && (slave.fetishStrength > 60)) { + if (slave.fetish === "sadist") { + r.push(`Under the rules, ${he}'s allowed to demand that other slaves get ${him} off, and ${he} <span class="hotpink">eagerly orders</span> visiting slaves to get in bed with ${him}.`); + slave.devotion += 1; + } else if ((slave.fetish === "dom")) { + r.push(`Under the rules, ${he}'s allowed to demand other slaves to have sex with ${him}, and ${he} <span class="hotpink">eagerly orders</span> visiting slaves to serve ${his} every desire.`); + slave.devotion += 1; + } + } + } + } else { + if ((slave.devotion <= 20) && (slave.devotion >= -20)) { + r.push(`Since ${he}'s low in the slave hierarchy, <span class="mediumaquamarine">${he} knows that ${he}'s safe</span> from other slave's abuse while ${he} is recovering.`); + slave.trust += 1; + } + } + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${his} choice of entertainment, analyzing ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`${He} spends ${his} stay with a pair of automatic breast pumps attached to ${his} chest. The constant stimulation will have ${him} milky soon enough.`); + r.push(induceLactation(slave, 10)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (slave.devotion > 20) { + if (slave.fetish === "boobs") { + if (canHold(slave)) { + r.push(`Whenever ${he} is feeling up to it, ${he} enjoys milking ${himself} by hand in lieu of using a breast pump; it's around for those times ${he} can't muster the energy.`); + } else { + r.push(`${He} spends ${his} stay mostly with a pair of automatic breast pumps attached to ${his} chest. They get ${him} so worked up, ${he} has to be asked to take breaks from using them.`); + } + } else { + r.push(`${He} spends ${his} stay with a pair of automatic breast pumps attached to ${his} chest. The periodic suction is both relieving and invigorating.`); + } + } else if (slave.devotion >= -20) { + if (slave.fetish === "boobs") { + r.push(`${He} spends most of ${his} stay with a pair of automatic breast pumps attached to ${his} chest. They get ${him} so worked up, ${his} time with them has to be limited.`); + } else { + r.push(`${He} spends ${his} stay with a pair of automatic breast pumps attached to ${his} chest. It's a little uncomfortable, but ${he} won't dare complain.`); + } + } else { + r.push(`${He} spends ${his} stay with a pair of automatic breast pumps locked to ${his} chest. ${His} lactation will not be allowed to wane so easily.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the Wardeness": + slave.need -= (V.flSex.size * 5); + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + r.push(`gets off at work, so ${he} doesn't feel the need for release that often.`); + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in ${V.cellblockName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing ${him} in charge of it. It also helps to offset the tiring nature of ${his} position.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict ${his} non-essential activities.`); + delete V.slaveUsedRest; + } + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} oversees the prisoners, analyzing ${his} preferences. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} spends that time massaging ${his} breasts and working ${his} nipples.`); + r.push(induceLactation(slave, 3)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen">${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`${He} works maintaining ${his} lactation into ${his} duties; when ${he} feels ${his} chest has grown too heavy, the nearest prisoner had better have an appetite or there will be punishment.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be confined in the cellblock": + wardenFunTimes = 0; + if (V.flSex.has(slave.ID)) { + wardenFunTimes = random(0, 5); + slave.need -= (10 * wardenFunTimes); + } + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off, making the rule restricting ${his} sexual outlets superfluous.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off, making the rule restricting ${his} sexual outlets superfluous.`); + slave.need = 0; + } else if (slave.relationship === -3) { + r.push(`You make sure your troublesome ${wife}'s sexual needs are handled, openly, in the middle of V.cellblockName, where everyone can see, hear, and smell your dominance.`); + slave.need = 0; + if (canDoVaginal(slave) && slave.vagina > 0) { + seX(V.PC, "penetrative", slave, "vaginal", 7); + } else if (canDoAnal(slave) && slave.anus > 0) { + seX(V.PC, "penetrative", slave, "anal", 7); + } else { + seX(V.PC, "penetrative", slave, "oral", 7); + } + if (canImpreg(slave, V.PC) && ((slave.vagina > 0 && slave.ovaries === 1) || (slave.anus !== 0 && slave.mpreg === 1))) { + r.push(knockMeUp(slave, 10, 0, -1, true)); + if (slave.preg > 0) { + r.push(`As an added show, you <span class="lime">proudly display ${his} positive pregnancy</span> test for all to see.`); + } + } + } else { + if (wardenFunTimes > 0) { + SimpleSexAct.Slaves(slave, S.Wardeness, wardenFunTimes); + if (wardenFunTimes > 0 && canImpreg(slave, S.Wardeness) && (V.cellblockWardenCumsInside === 1 || S.Wardeness.fetish === "mindbroken")) { + if (canDoVaginal(slave) && slave.vagina > 0 && slave.ovaries === 1) { + r.push(knockMeUp(slave, 10, 0, V.WardenessID, true)); + } else if ((canDoAnal(slave) && slave.anus > 0 && slave.mpreg === 1)) { + r.push(knockMeUp(slave, 10, 1, V.WardenessID, true)); + } + } + } + if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + slave.need -= 20; + } + } else { + if (random(-100, 0) > slave.devotion) { + r.push(`refuses to not touch ${himself} and is <span class="gold">severely punished</span> for illicit masturbation.`); + slave.trust -= 2; + slave.need -= 10; + } else { + r.push(`<span class="gold">fears</span> trying to`); + if (slave.chastityPenis) { + r.push(`touch ${himself}`); + } else if (canAchieveErection(slave)) { + r.push(`jack off`); + } else { + r.push(`touch ${himself}`); + } + r.push(`to get relief when ${he} knows what the consequences are.`); + slave.trust -= 1; + } + } + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + switch (V.cellblockDecoration) { + case "Degradationist": + r.push(`${He} expected spare living conditions. In reality, they are far worse. <span class="gold">Not one moment goes by that ${he} isn't filled with terror.</span>`); + slave.trust -= 3; + break; + case "Paternalist": + r.push(`${He} expected far worse living conditions, and while still resistant, <span class="hotpink">finds ${himself} more willing to obey.</span>`); + slave.devotion += 1; + break; + case "Pastoralist": + r.push(`${He} expected the spare living conditions, but not the dietary supplements. ${He} never anticipated <span class="gold">you'd go this far</span> to force ${him} into shape and is constantly reminded of ${his} changes by just how small ${his} cell feels with a belly full of milk.`); + slave.trust -= 2; + break; + case "Body Purist": + r.push(`${He} expected the spare living conditions, but not the excessive hydration. ${He} never anticipated <span class="gold">you'd go this far</span> to force ${him} into shape and is constantly reminded of ${his} changes by the fullness of ${his} bladder.`); + slave.trust -= 2; + break; + case "Hedonistic": + r.push(`${He} expected the spare living conditions, but not the dietary supplements. ${He} never anticipated <span class="gold">you'd go this far</span> to force ${him} into shape and is constantly reminded of ${his} changes by just how small ${his} cell feels with a belly full of food.`); + slave.trust -= 2; + break; + default: + r.push(`${He} expected the spare living conditions, but no matter how hard ${he} tries to shut out ${his} surroundings, <span class="gold">they still wear down ${his} will.</span>`); + slave.trust -= 1; + } + + if (slave.rules.lactation === "induce") { + r.push(`${He} spends ${his} sentence with a pair of automatic breast pumps locked to ${his} chest. If all goes well, ${he}'ll be both reformed and lactating by ${his} release.`); + r.push(induceLactation(slave, 10)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + r.push(`${He} spends ${his} stay with a pair of automatic breast pumps locked to ${his} chest.`); + if (slave.devotion > 20) { + if (slave.fetish === "boobs") { + r.push(`It's both enjoyable and what you want, so the inconvenience is easily tolerated.`); + } else { + r.push(`It beats swollen breasts, so ${he} can't complain.`); + } + } else if (slave.devotion >= -20) { + if (slave.fetish === "boobs") { + r.push(`It's enjoyable, but showing it will only be met with punishment.`); + } else { + r.push(`It's uncomfortable, but complaints will only be met with punishment.`); + } + } else { + r.push(`${His} lactation will not be allowed to wane so easily.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the Attendant": + slave.need -= (V.flSex.size * 3); + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in the back of ${V.spaName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing the well-being of your slaves in ${his}`); + if (!hasAnyArms(slave)) { + r.push(`figurative`); + } + r.push(`${(hasBothArms(slave)) ? `hands` : `hand`}.`); + slave.devotion += 1; + slave.trust += 1; + r.push(`${He} finds plenty of time to relax between ${his} duties, or during them, should ${his} company be requested.`); + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} massages and relieves slaves, analyzing ${his} tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} spends that time massaging ${his} breasts and working ${his} nipples.`); + r.push(induceLactation(slave, 4)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen">${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} takes the time to thoroughly milk ${his} breasts to keep ${his} lactation strong for you.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "rest in the spa": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off.`); + slave.need = 0; + } else if (V.flSex.has(slave.ID)) { + r.push(`is routinely relieved of any built up tension by ${S.Attendant.slaveName} and ${his}`); + if (canPenetrate(slave) && S.Attendant.boobs >= 500) { + r.push(`luscious breasts.`); + actX(S.Attendant, "mammary", 14); + } else { + if (S.Attendant.lips > 40) { + r.push(`luscious lips.`); + } else if (S.Attendant.skill.oral > 30) { + r.push(`skilled tongue.`); + } else { + r.push(`willing mouth.`); + } + actX(S.Attendant, "oral", 14); + /* possible cumflation code here */ + } + slave.need -= 60; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + switch (V.spaDecoration) { + case "Chinese Revivalist": + r.push(`The steam of the bathhouse lingers even in ${his} personal room and <span class="hotpink">dulls ${his} will.</span>`); + slave.devotion += 1; + break; + case "Chattel Religionist": + r.push(`${He} gets a space of ${his} own in the communal slave quarters, but the constant sexual presence of the other slaves <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + slave.devotion += 1; + break; + case "Degradationist": + r.push(`${He} gets a little room all to ${himself}, allowing ${him} to feel self-reliant; or it would, if it didn't have numerous cameras watching ${his} every move. The conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + break; + case "Asset Expansionist": + case "Transformation Fetishist": + case "Pastoralist": + r.push(`${He} gets a little room all to ${himself}, allowing ${him} to feel self-reliant; or it would, if it weren't filled with constant reminders of ${his} changing body. The conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + break; + default: + r.push(`${He} gets a comfortable little room all to ${himself}, allowing ${him} to let down ${his} guard and <span class="mediumaquamarine">feel self-reliant.</span>`); + slave.trust += 1; + } + } else { + switch (V.spaDecoration) { + case "Chinese Revivalist": + r.push(`The steam of the bathhouse lingers even in ${his} personal room and <span class="hotpink">renders ${him} even more submissive.</span>`); + slave.devotion += 1; + break; + case "Chattel Religionist": + r.push(`${He} likes ${his} personal space in ${V.spaName}, even if`); + if (canSmell(slave)) { + r.push(`it smells of`); + } else { + r.push(`it's filled with the heat from`); + } + r.push(`sex and steam.`); + break; + case "Degradationist": + if (slave.trust > 40) { + r.push(`The invasive living conditions of ${V.spaName} <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The invasive living conditions of ${V.spaName} <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } + break; + case "Asset Expansionist": + case "Transformation Fetishist": + case "Pastoralist": + r.push(`${He} likes ${his} little room in ${V.spaName},`); + if (slave.boobs < 10000) { + r.push(`even if ${his} boobs are too small to make the most of it.`); + } else { + r.push(`even more so, since it accommodates ${his} expansive bust.`); + } + break; + default: + r.push(`${He} loves ${his} little room in ${V.spaName}. It's the perfect end to a day of relaxation.`); + slave.trust += 1; + } + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} mingles with other soaking slaves, analyzing ${his} sexual tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (V.AttendantID !== 0) { + /* Attendant milks natural lactation in order to relieve physical stress — spaReport */ + if (slave.rules.lactation === "induce") { + if (canHold(slave) && slave.devotion >= -20) { + r.push(`${He} massages ${his} breasts while relaxing in an effort to bring in ${his} lactation.`); + } else { + r.push(`${He} tries to relax as best ${he} can with a pair of automatic breast pumps attached to ${his} chest in an attempt to induce lactation.`); + } + r.push(induceLactation(slave, 4)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (canHold(slave) && (slave.devotion >= -20 || slave.fetish === "boobs")) { + r.push(`${He} massages ${his} breasts while relaxing to take the edge off and keep the milk flowing.`); + } else { + r.push(`${He} tries to relax as best ${he} can with a pair of automatic breast pumps stuck to ${his} chest, keeping ${his} milk flowing.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the Matron": + slave.need -= (V.flSex.size * 3); + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (release.masturbation === 0) { + r.push(`gets off while relieving ${his} charges, so being forbidden from masturbation doesn't really bother ${him}.`); + } else { + r.push(`gets off while relieving ${his} charges, so ${he} doesn't feel the need for release that often.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in the back of ${V.nurseryName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing the responsibility of raising V.arcologies[0].name's children in ${his}`); + if (!hasAnyArms(slave)) { + r.push(`figurative`); + } + r.push(`${(hasBothArms(slave)) ? `hands` : `hand`}.`); + slave.devotion += 1; + slave.trust += 1; + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} massages and relieves slaves, analyzing ${his} tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} spends that time massaging ${his} breasts and working ${his} nipples.`); + r.push(induceLactation(slave, 4)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen">${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} takes the time to thoroughly milk ${his} breasts to keep ${his} lactation strong for you.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "work as a nanny": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off.`); + slave.need = 0; + } else if (V.flSex.has(slave.ID)) { + r.push(`is routinely relieved of any built up tension by ${S.Matron.slaveName} and ${his}`); + if (canPenetrate(slave) && S.Matron.boobs >= 500) { + r.push(`luscious breasts.`); + actX(S.Matron, "mammary", 14); + } else { + if (S.Matron.lips > 40) { + r.push(`luscious lips.`); + } else if (S.Matron.skill.oral > 30) { + r.push(`skilled tongue.`); + } else { + r.push(`willing mouth.`); + } + actX(S.Matron, "oral", 14); + /* possible cumflation code here */ + } + slave.need -= 60; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + switch (V.nurseryDecoration) { + case "Chinese Revivalist": + r.push(`The Oriental artwork in ${his} personal room reminds ${him} of where ${he} is and <span class="hotpink">dulls ${his} will.</span>`); + slave.devotion += 1; + break; + case "Chattel Religionist": + r.push(`${He} gets a space of ${his} own in the communal slave quarters, but the constant sexual presence of the other slaves <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + slave.devotion += 1; + break; + case "Degradationist": + r.push(`${He} gets a little room all to ${himself}, allowing ${him} to feel self-reliant; or it would, if it didn't have numerous cameras watching ${his} every move. The conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + break; + case "Asset Expansionist": + case "Transformation Fetishist": + case "Pastoralist": + r.push(`${He} gets a little room all to ${himself}, allowing ${him} to feel self-reliant; or it would, if it weren't filled with constant reminders of ${his} changing body. The conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + break; + default: + r.push(`${He} gets a comfortable little room all to ${himself}, allowing ${him} to let down ${his} guard and <span class="mediumaquamarine">feel self-reliant.</span>`); + slave.trust += 1; + } + } else { + switch (V.nurseryDecoration) { + case "Chinese Revivalist": + r.push(`The Oriental artwork in ${his} personal room reminds ${him} of ${his} position and <span class="hotpink">renders ${him} even more submissive.</span>`); + slave.devotion += 1; + break; + case "Chattel Religionist": + r.push(`${He} likes ${his} personal space in ${V.nurseryName}, even if it constantly reminds ${him} that ${he} is naught but a servant to the Prophet.`); + break; + case "Degradationist": + if (slave.trust > 40) { + r.push(`The invasive living conditions of ${V.nurseryName} <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The invasive living conditions of ${V.nurseryName} <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } + break; + case "Asset Expansionist": + case "Transformation Fetishist": + case "Pastoralist": + r.push(`${He} likes ${his} little room in ${V.nurseryName},`); + if (slave.boobs < 10000) { + r.push(`even if ${his} boobs are too small to make the most of it.`); + } else { + r.push(`even more so, since it accommodates ${his} expansive bust.`); + } + break; + default: + r.push(`${He} loves ${his} little room in ${V.nurseryName}. It's the perfect end to a busy day of taking care of children.`); + slave.trust += 1; + } + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} mingles with other busily working slaves, analyzing ${his} sexual tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + /* update me, things like wet nursing and the like are important here */ + if (slave.rules.lactation === "induce") { + r.push(`${He} spends ${his} stay with a pair of automatic breast pumps attached to ${his} chest. The constant stimulation will have ${him} milky soon enough.`); + r.push(induceLactation(slave, 10)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (slave.devotion > 20) { + r.push(`Milk is always needed in a nursery and ${his} is no exception. ${He} is thoroughly drained each and every day, be it by breast pump or nursing infant.`); + } else if (slave.devotion >= -20) { + r.push(`Milk is always needed in a nursery and ${his} is no exception. ${He} is thoroughly drained each and every day.`); + } else { + r.push(`${He} spends ${his} stay with a pair of automatic breast pumps locked to ${his} chest. ${His} is a valuable commodity and needs to be maintained.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the Schoolteacher": + slave.need -= (V.flSex.size * 10); + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (release.masturbation === 0) { + r.push(`gets off with ${his} students, so being forbidden from masturbation doesn't really bother ${him}.`); + } else { + r.push(`gets off with ${his} students, so ${he} doesn't feel the need for release that often.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in the back of ${V.schoolroomName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing the future education of your slaves in ${his}`); + if (!hasAnyArms(slave)) { + r.push(`figurative`); + } + r.push(`${(hasBothArms(slave)) ? `hands` : `hand`}. It also helps to offset the tiring nature of ${his} position.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict ${his} non-essential activities.`); + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} teaches students, analyzing ${his} preferences. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`${His} lectures frequently include demonstrations on the proper way to induce lactation.`); + r.push(induceLactation(slave, 5)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen">${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`${He} makes sure to give a special lecture whenever ${his} breasts start to feel full on the proper methods to milk a ${girl}.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "learn in the schoolroom": + if (V.flSex.has(slave.ID)) { + slave.need -= 30; + seX(slave, "oral", S.Schoolteacher, "oral", 7); + if (canPenetrate(S.Schoolteacher) && slave.boobs > 500) { + seX(slave, "mammary", S.Schoolteacher, "penetrative", 7); + } + if (canDoVaginal(slave)) { + if (slave.vagina !== 0) { + seX(S.Schoolteacher, "penetrative", slave, "vaginal", 7); + if (canImpreg(slave, S.Schoolteacher) && (slave.breedingMark === 0 || V.propOutcome === 0 || V.eugenicsFullControl === 1 || V.arcologies[0].FSRestart === "unset")) { + r.push(knockMeUp(slave, 5, 0, S.Schoolteacher.ID, true)); + } + } + slave.need -= 10; + } + if (canDoAnal(slave)) { + if (slave.anus !== 0) { + seX(S.Schoolteacher, "penetrative", slave, "anal", 7); + if (canImpreg(slave, S.Schoolteacher) && (slave.breedingMark === 0 || V.propOutcome === 0 || V.eugenicsFullControl === 1 || V.arcologies[0].FSRestart === "unset")) { + r.push(knockMeUp(slave, 5, 1, S.Schoolteacher.ID, true)); + } + } + slave.need -= 10; + } + if (canPenetrate(slave)) { + if (S.Schoolteacher.vagina !== 0) { + seX(S.Schoolteacher, "vaginal", slave, "penetrative", 7); + } else if (S.Schoolteacher.anus !== 0) { + seX(S.Schoolteacher, "anal", slave, "penetrative", 7); + } + if (canImpreg(S.Schoolteacher, slave) && (S.Schoolteacher.breedingMark === 0 || V.propOutcome === 0 || V.eugenicsFullControl === 1 || V.arcologies[0].FSRestart === "unset")) { + if (S.Schoolteacher.vagina !== 0 && S.Schoolteacher.ovaries === 1) { + r.push(knockMeUp(S.Schoolteacher, 5, 0, slave.ID, 1)); + } else if (S.Schoolteacher.anus !== 0 && S.Schoolteacher.mpreg === 1) { + r.push(knockMeUp(S.Schoolteacher, 5, 1, slave.ID, 1)); + } + } + slave.need -= 10; + } + } + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off, making the rule restricting ${his} sexual outlets superfluous.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off, making the rule restricting ${his} sexual outlets superfluous.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off during class despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + } else if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off during class as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off during class, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off during class, so ${he} doesn't feel the need to masturbate frequently.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + r.push(`The reasonable living conditions allow ${him} to <span class="mediumaquamarine">feel self-reliant.</span>`); + slave.trust += 1; + } else { + r.push(`${He} likes ${his} personal space in the dormitory even if the other students sometimes bother ${him}.`); + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} studies, analyzing what topics ${he} tends to keep returning to. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`${He} is taught and tested on how to properly induce lactation.`); + r.push(induceLactation(slave, 2)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + r.push(`${He} is taught and tested on how to properly manage lactation.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the Stewardess": + slave.need -= L.servantsQuarters * 10; + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (release.masturbation === 0) { + r.push(`gets off while performing ${his} duties, so being forbidden from masturbation doesn't really bother ${him}.`); + slave.need -= 20; + } else { + r.push(`gets off while performing ${his} duties, so ${he} doesn't feel the need for release that often.`); + slave.need -= 20; + } + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room off of ${V.servantsQuartersName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing ${him} in charge of it. It also helps to offset the tiring nature of ${his} position.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict ${his} non-essential activities.`); + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} manages the servants, analyzing ${his} preferences. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} spends that time massaging ${his} breasts and working ${his} nipples.`); + r.push(induceLactation(slave, 2)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen"> ${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} takes the time to thoroughly milk ${his} breasts to keep ${his} lactation strong for you.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "work as a servant": + slave.need -= V.slaves.length * 5; + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off at work despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + } else if (App.Utils.hasNonassignmentSex(slave)) { + r.push(`gets off at work as well as during ${his} rest time.`); + } else if (release.masturbation === 0) { + r.push(`gets off at work, so being unable to touch ${himself} doesn't bother ${him}.`); + } else { + r.push(`gets off at work, so being unable to sate ${his} urges doesn't affect ${him} seriously.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + switch (V.servantsQuartersDecoration) { + case "Degradationist": + r.push(`The abysmal living conditions <span class="hotpink">force ${him} to get used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of how meaningless ${he} is.</span>`); + slave.trust -= 3; + } else { + r.push(`slavery and <span class="gold">reminds ${him} that ${his} life is meaningless.</span>`); + slave.trust -= 1; + } + break; + case "Subjugationist": + case "Supremacist": + r.push(`The spare living conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + r.push(`Every time ${he} has to watch another slave get beaten <span class="gold">solidifies ${his} fears.</span>`); + slave.trust -= 1; + break; + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Edo Revivalist": + case "Roman Revivalist": + r.push(`The spare living conditions <span class="hotpink">get ${him} used</span> to the routine of slavery.`); + break; + case "Arabian Revivalist": + case "Egyptian Revivalist": + case "Neo-Imperialist": + r.push(`The spare living conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery, but the small luxuries <span class="mediumaquamarine">afford ${him} some dignity.</span>`); + slave.trust += 1; + } else { + r.push(`slavery.`); + } + break; + default: + r.push(`The reasonable living conditions allow ${him} to <span class="mediumaquamarine">feel some dignity</span> after <span class="hotpink">cleaning up sexual fluids and servicing slaves all day.</span>`); + slave.trust += 1; + } + slave.devotion += 1; + } else { + switch (V.servantsQuartersDecoration) { + case "Degradationist": + if (slave.trust > 40) { + r.push(`The abysmal living conditions of ${V.servantsQuartersName} <span class="gold">remind ${him} that ${his} life is absolutely meaningless to you.</span>`); + slave.trust -= 3; + } else if ((slave.trust > 10)) { + r.push(`The abysmal living conditions of ${V.servantsQuartersName} <span class="gold">remind ${him} that ${he} is worthless as a person to you.</span>`); + slave.trust -= 2; + } + break; + case "Subjugationist": + case "Supremacist": + if (slave.trust > 40) { + r.push(`The spare living conditions of ${V.servantsQuartersName} <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The spare living conditions of ${V.servantsQuartersName} <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } + break; + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Edo Revivalist": + case "Roman Revivalist": + r.push(`The living conditions of ${V.servantsQuartersName} might be spare, but they are no means uncomfortable.`); + break; + case "Arabian Revivalist": + case "Egyptian Revivalist": + case "Neo-Imperialist": + r.push(`The living conditions of ${V.servantsQuartersName} might be spare, but ${he} loves the little luxuries that come with them.`); + break; + default: + r.push(`${He} likes ${his} personal space in ${V.servantsQuartersName}'s dormitory.`); + } + } + if (slave.rules.living === "luxurious") { + r.push(`They provide <span class="green">satisfying rest</span> every time ${he} drifts off to sleep.`); + } else if (slave.rules.living === "spare") { + if (slave.devotion > 20 && slave.trust <= 10) { + r.push(`They don't provide much rest, however.`); + } else { + r.push(`They provide meager rest, if anything.`); + } + } else { + r.push(`They provide`); + if (slave.devotion > 20) { + r.push(`<span class="green">adequate rest</span> for a ${girl} that knows how to manage ${his} time.`); + } else { + r.push(`<span class="green">adequate rest,</span> but not enough for a slave lacking time management.`); + } + } + + if (slave.rules.rest === "mandatory") { + if (slave.devotion <= 20) { + r.push(`Getting a day off each week <span class="mediumaquamarine">builds feelings of liberty</span> a slave shouldn't have.`); + slave.trust += 3; + } else { + r.push(`${He} appreciates having a weekly day off and takes it as a sign that ${he} has a <span class="mediumaquamarine">caring ${getWrittenTitle(slave)}.</span>`); + slave.trust += 1; + } + } else if (V.slaveUsedRest) { + if (slave.rules.rest === "permissive") { + if (slave.devotion <= 20) { + r.push(`${He}'s permitted to rest whenever ${he} feels even the slightest bit tired; <span class="mediumaquamarine">a privilege not lost on ${him}.</span>`); + slave.trust += 2; + } else { + r.push(`${He} <span class="hotpink">likes</span> that you <span class="mediumaquamarine">care enough</span> to let him rest when he gets tired.`); + slave.devotion += 1; + slave.trust += 1; + } + } else if (slave.rules.rest === "restrictive") { + if (slave.devotion <= -20) { + r.push(`${He}'s permitted to rest when fatigue sets in, but not enough to shake ${his} tiredness; ${he} feels this <span class="gold">deprivation</span> is intentional.`); + slave.trust -= 1; + } else if ((slave.devotion <= 20)) { + r.push(`${He}'s permitted to rest when fatigue sets in, and <span class="hotpink">understands</span> this is less for ${his} wellbeing and more to prevent ${him} from become unproductive.`); + slave.devotion += 1; + } else { + r.push(`${He}'s permitted to rest when fatigue sets in and is <span class="mediumaquamarine">thankful</span> you would allow ${him} the privilege so that ${he} may serve you better.`); + slave.trust += 1; + } + } else if (slave.rules.rest === "cruel") { + if (slave.devotion <= -20) { + r.push(`${He}'s <span class="gold">terrified</span> that the only reason ${he} is given any time to rest at all is just to prolong your torment of ${him}.`); + slave.trust -= 3; + } else if ((slave.devotion <= 20)) { + r.push(`You work ${him} to the bone and only allow ${him} rest when on the verge of collapsing. ${He} <span class="gold">fears</span> this <span class="mediumorchid">cruelty</span> is just the beginning.`); + slave.trust -= 3; + slave.devotion -= 3; + } else { + r.push(`Only being allowed rest when on the verge of collapsing <span class="mediumorchid">shakes ${his} faith</span> in you a little.`); + slave.devotion -= 2; + } + } + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} sees to your other slaves, analyzing ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`${He} carries out ${his} daily tasks with a pair of automatic breast pumps attached to ${his} chest to help bring in ${his} lactation.`); + r.push(induceLactation(slave, 6)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain" && V.servantMilkers !== 1) { + r.push(`${He} utilizes ${his} lactation during ${his} daily tasks when needed, and if it should not be needed, spends the evenings with a pair of automatic breast pumps.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be the Milkmaid": + slave.need -= L.dairy * 5; + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (release.masturbation === 0) { + r.push(`gets off while performing ${his} duties, so being forbidden from masturbation doesn't really bother ${him}.`); + } else { + r.push(`gets off while performing ${his} duties, so ${he} doesn't feel the need for release that often.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in ${V.dairyName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing ${him} in charge of it. It also helps to offset the tiring nature of ${his} position.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict ${his} non-essential activities.`); + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} cares for the cattle, analyzing ${his} preferences. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} spends that time hooked up to a milker to hasten ${his} milk production.`); + r.push(induceLactation(slave, 10)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen"> ${cashFormat(milkResult.milkSale)}.</span>`); + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "work in the dairy": + if (V.dairyRestraintsSetting > 1) { + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off, not that ${he} gets the choice.`); + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off, not that ${he} gets a choice.`); + } else { + r.push(`gets off regardless of ${his} thoughts on the matter.`); + } + slave.need = 0; + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} arousal in regards to the visual stimulation. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + } else { + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off from being milked despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + slave.need -= 20; + } else if ((release.masturbation === 0)) { + r.push(`gets off from being milked, so being forbidden to masturbate doesn't affect ${him} seriously.`); + slave.need -= 20; + } else { + r.push(`gets off from being milked, so ${he} doesn't feel the need to masturbate frequently.`); + slave.need -= 20; + } + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + let adequateConditions; + if (slave.devotion <= 20) { + switch (V.dairyDecoration) { + case "Degradationist": + r.push(`The abysmal living conditions <span class="hotpink">force ${him} to get used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware that ${his} fluids are more valuable than ${his} life.</span>`); + slave.trust -= 3; + } else { + r.push(`slavery and <span class="gold">reminds ${him} that ${he} is nothing more than a cow.</span>`); + slave.trust -= 1; + } + slave.devotion += 1; + break; + case "Subjugationist": + case "Supremacist": + r.push(`The spare living conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + slave.devotion += 1; + break; + case "Arabian Revivalist": + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Edo Revivalist": + case "Egyptian Revivalist": + case "Roman Revivalist": + case "Neo-Imperialist": + r.push(`The spare living conditions and daily tasks <span class="hotpink">get ${him} used</span> to the routine of slavery.`); + slave.devotion += 1; + break; + default: + r.push(`The reasonable living conditions allow ${him} to relax after the days work, or would if ${his}`); + if (slave.lactation) { + r.push(`breasts`); + if (slave.balls) { + r.push(`and`); + } + } + if (slave.balls) { + r.push(`balls`); + } + r.push(`didn't ache so much, constantly reminding ${him} of ${his} role as a cow.`); + if (slave.pregKnown && V.dairyPregSetting >= 1 && slave.bellyPreg >= 1500) { + r.push(`Getting comfortable`); + let belly; + if (slave.bellyPreg >= 750000) { + belly = bellyAdjective(slave); + r.push(`with a strained, ${belly} stomach ready to burst with contracted calves`); + } else if (slave.bellyPreg >= 600000) { + belly = bellyAdjective(slave); + r.push(`with a constantly quivering ${belly} stomach filled to the brim with contracted calves`); + } else if (slave.bellyPreg >= 450000) { + belly = bellyAdjective(slave); + r.push(`with a ${belly} stomach overstuffed with contracted calves`); + } else if (slave.bellyPreg >= 150000) { + r.push(`with the massive bulge of ${his} contract pregnancy`); + } else if (slave.bellyPreg >= 120000) { + r.push(`while so enormously pregnant with calves`); + } else if (slave.bellyPreg >= 10000) { + r.push(`while so heavily pregnant with`); + if (slave.pregType > 1) { + r.push(`contracted children`); + } else { + r.push(`a contracted child`); + } + } else if (slave.bellyPreg >= 5000) { + r.push(`with ${his} contract pregnancy`); + } else { + r.push(`with the slight bulge of pregnancy`); + } + r.push(`also weighs heavily on ${his}`); + if (slave.bellyPreg >= 120000) { + r.push(`mind, though ${he} often gets lost in the sensation of being so full of life.`); + } else { + r.push(`mind.`); + } + } + } + } else { + switch (V.dairyDecoration) { + case "Degradationist": + if (slave.trust > 40) { + r.push(`The abysmal living conditions of ${V.dairyName} <span class="gold">remind ${him} that ${his} fluids are more valuable to you than ${his} life.</span>`); + slave.trust -= 3; + } else if ((slave.trust > 10)) { + r.push(`The abysmal living conditions of ${V.dairyName} <span class="gold">remind ${him} that ${he} is worthless as a person to you</span> and forces ${him} to accept ${he} is nothing more than a lowly cow.`); + slave.trust -= 2; + } + break; + case "Subjugationist": + case "Supremacist": + if (slave.trust > 40) { + r.push(`The spare living conditions of ${V.dairyName} <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The spare living conditions of ${V.dairyName} <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } + break; + case "Arabian Revivalist": + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Edo Revivalist": + case "Egyptian Revivalist": + case "Roman Revivalist": + r.push(`The living conditions of ${V.dairyName} might be spare, but they are by no means meant to be uncomfortable.`); + adequateConditions = 1; + break; + default: + r.push(`${He} likes ${his} personal space in ${V.dairyName}'s dormitory, even if it's just a stall.`); + } + } + if (slave.rules.living === "luxurious") { + r.push(`It provides a <span class="green">satisfying rest</span> every time ${he} drifts off to sleep.`); + } else if (slave.rules.living === "spare") { + if (slave.devotion > 20) { + if (adequateConditions) { + r.push(`They are <span class="green">quite relaxing</span>`); + } else { + r.push(`They suffice`); + } + r.push(`for cows that know their place.`); + } else { + if (adequateConditions) { + r.push(`They could even be considered relaxing if properly appreciated.`); + } else { + r.push(`They are just barely sufficient, but only if properly made use of.`); + } + } + } else { + r.push(`It provides`); + if (slave.devotion > 20) { + r.push(`<span class="green">more than enough rest</span> for a happy cow looking to unwind.`); + } else { + r.push(`<span class="green">adequate rest,</span> but only to cows capable of appreciating what they've got.`); + } + } + + if (slave.rules.rest === "mandatory") { + if (slave.devotion <= 20) { + r.push(`Getting a day off each week <span class="mediumaquamarine">builds feelings of liberty</span> a slave shouldn't have.`); + slave.trust += 3; + } else { + r.push(`${He} appreciates having a weekly day off and takes it as a sign that ${he} has a <span class="mediumaquamarine">caring ${getWrittenTitle(slave)}.</span>`); + slave.trust += 1; + } + } else if (V.slaveUsedRest) { + if (slave.rules.rest === "permissive") { + if (slave.devotion <= 20) { + r.push(`${He}'s permitted to rest whenever ${he} feels even the slightest bit tired; <span class="mediumaquamarine">a privilege not lost on ${him}.</span>`); + slave.trust += 2; + } else { + r.push(`${He} <span class="hotpink">likes</span> that you <span class="mediumaquamarine">care enough</span> to let him rest when he gets tired.`); + slave.devotion += 1; + slave.trust += 1; + } + } else if (slave.rules.rest === "restrictive") { + if (slave.devotion <= -20) { + r.push(`${He}'s permitted to rest when fatigue sets in, but not enough to shake ${his} tiredness; ${he} feels this <span class="gold">deprivation</span> is intentional.`); + slave.trust -= 1; + } else if ((slave.devotion <= 20)) { + r.push(`${He}'s permitted to rest when fatigue sets in, and <span class="hotpink">understands</span> this is less for ${his} wellbeing and more to prevent ${him} from become unproductive.`); + slave.devotion += 1; + } else { + r.push(`${He}'s permitted to rest when fatigue sets in and is <span class="mediumaquamarine">thankful</span> you would allow ${him} the privilege so that ${he} may serve you better.`); + slave.trust += 1; + } + } else if (slave.rules.rest === "cruel") { + if (slave.devotion <= -20) { + r.push(`${He}'s <span class="gold">terrified</span> that the only reason ${he} is given any time to rest at all is just to prolong your torment of ${him}.`); + slave.trust -= 3; + } else if ((slave.devotion <= 20)) { + r.push(`You work ${him} to the bone and only allow ${him} rest when on the verge of collapsing. ${He} <span class="gold">fears</span> this <span class="mediumorchid">cruelty</span> is just the beginning.`); + slave.trust -= 3; + slave.devotion -= 3; + } else { + r.push(`Only being allowed rest when on the verge of collapsing <span class="mediumorchid">shakes ${his} faith</span> in you a little.`); + slave.devotion -= 2; + } + } + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} gets milked, attempting to gauge ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + } + break; + case "be the Farmer": + slave.need -= L.farmyard * 5; + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (release.masturbation === 0) { + r.push(`gets off while performing ${his} duties, so being forbidden from masturbation doesn't really bother ${him}.`); + slave.need -= 20; + } else { + r.push(`gets off while performing ${his} duties, so ${he} doesn't feel the need for release that often.`); + slave.need -= 20; + } + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} private room in ${V.farmyardName} and <span class="mediumaquamarine">trusts</span> you a bit more for placing ${him} in charge of it.`); + slave.devotion += 1; + slave.trust += 1; + + if (V.slaveUsedRest) { + r.push(`${He} is permitted to take short breaks throughout the week to help manage ${his} building exhaustion, though it does restrict impact ${his} effectiveness.`); + delete V.slaveUsedRest; + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} cares for the cattle, analyzing ${his} preferences. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} spends that time massaging ${his} breasts and working ${his} nipples.`); + r.push(induceLactation(slave, 2)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (V.servantMilkers === 1) { + milkResult = App.SlaveAssignment.getMilked(slave, 0.25); + r.push(`${His} duties keep ${him} busy, but ${he}`); + if (slave.fetish === "boobs") { + r.push(`eagerly`); + } + r.push(`uses the penthouse milkers whenever ${he} can, giving ${milkResult.milk} liters of milk over the week, which is sold for <span class="yellowgreen">${cashFormat(milkResult.milkSale)}.</span>`); + } else { + r.push(`Whenever ${he} finds a free moment from ${his} duties, ${he} takes the time to thoroughly milk ${his} breasts to keep ${his} lactation strong for you.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "work as a farmhand": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off from working as a farmhand despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + slave.need -= 20; + } else if ((release.masturbation === 0)) { + r.push(`gets off from working as a farmhand, so being forbidden to masturbate doesn't affect ${him} seriously.`); + slave.need -= 20; + } else { + r.push(`gets off from working as a farmhand, so ${he} doesn't feel the need to masturbate frequently.`); + slave.need -= 20; + } + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + switch (V.farmyardDecoration) { + case "Degradationist": + r.push(`The abysmal living conditions <span class="hotpink">force ${him} to get used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware that ${his} work in the fields is more valuable than ${his} life.</span>`); + slave.trust -= 3; + } else { + r.push(`slavery and <span class="gold">reminds ${him} that ${he} is nothing more than a farming tool.</span>`); + slave.trust -= 1; + } + slave.devotion += 1; + break; + case "Subjugationist": + case "Supremacist": + r.push(`The spare living conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + slave.devotion += 1; + break; + case "Arabian Revivalist": + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Edo Revivalist": + case "Egyptian Revivalist": + case "Neo-Imperialist": + r.push(`The spare living conditions and daily tasks <span class="hotpink">get ${him} used</span> to the routine of slavery.`); + slave.devotion += 1; + break; + case "Roman Revivalist": + r.push(`${He} is <span class="hotpink">pleased</span> with ${his} cushy living arrangements, and <span class="mediumaquamarine">trusts you more</span> for it.`); + slave.devotion += 2; + slave.trust += 2; + break; + default: + r.push(`The reasonable living conditions allow ${him} to relax after the days work.`); + if (slave.pregKnown && V.farmyardPregSetting >= 1 && slave.bellyPreg >= 1500) { + r.push(`Getting comfortable`); + let belly; + if (slave.bellyPreg >= 750000) { + belly = bellyAdjective(slave); + r.push(`with a strained, ${belly} stomach ready to burst`); + } else if (slave.bellyPreg >= 600000) { + belly = bellyAdjective(slave); + r.push(`with a constantly quivering ${belly} stomach filled to the brim`); + } else if (slave.bellyPreg >= 450000) { + belly = bellyAdjective(slave); + r.push(`with a ${belly} stomach overstuffed`); + } else if (slave.bellyPreg >= 150000) { + r.push(`with the massive bulge of ${his} pregnancy`); + } else if (slave.bellyPreg >= 120000) { + r.push(`while so enormously pregnant`); + } else if (slave.bellyPreg >= 10000) { + r.push(`while so heavily pregnant with`); + if (slave.pregType > 1) { + r.push(`children`); + } else { + r.push(`a child`); + } + } else if (slave.bellyPreg >= 5000) { + r.push(`with ${his} pregnancy`); + } else { + r.push(`with the slight bulge of pregnancy`); + } + r.push(`also weighs heavily on ${his}`); + if (slave.bellyPreg >= 120000) { + r.push(`mind, though ${he} often gets lost in the sensation of being so full of life.`); + } else { + r.push(`mind.`); + } + } + } + } else { + switch (V.farmyardDecoration) { + case "Degradationist": + if (slave.trust > 40) { + r.push(`The abysmal living conditions of ${V.farmyardName} <span class="gold">remind ${him} that ${his} work in the fields is more valuable to you than ${his} life.</span>`); + slave.trust -= 3; + } else if ((slave.trust > 10)) { + r.push(`The abysmal living conditions of ${V.farmyardName} <span class="gold">remind ${him} that ${he} is worthless as a person to you</span> and forces ${him} to accept ${he} is nothing more than a lowly farmhand.`); + slave.trust -= 2; + } + break; + case "Subjugationist": + case "Supremacist": + if (slave.trust > 40) { + r.push(`The spare living conditions of ${V.farmyardName} <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The spare living conditions of ${V.farmyardName} <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } + break; + case "Arabian Revivalist": + case "Aztec Revivalist": + case "Chattel Religionist": + case "Chinese Revivalist": + case "Edo Revivalist": + case "Egyptian Revivalist": + case "Neo-Imperialist": + r.push(`The living conditions of ${V.farmyardName} might be spare, but they are by no means meant to be uncomfortable.`); + break; + case "Roman Revivalist": + r.push(`${He} is <span class="hotpink">very happy</span> about ${his} cushy living arrangements, and <span class="mediumaquamarine">trusts you all the more</span> for it.`); + slave.devotion += 2; + slave.trust += 2; + break; + default: + r.push(`${He} likes ${his} personal space in ${V.farmyardName}'s dormitory, even if it's just a small room.`); + } + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} works with the crops and animals, attempting to gauge ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`${He} carries out ${his} daily tasks with a pair of automatic breast pumps attached to ${his} chest to help bring in ${his} lactation.`); + r.push(induceLactation(slave, 6)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + r.push(`${He} carries out ${his} daily tasks with a pair of automatic breast pumps attached to ${his} chest to keep ${him} productive and drained.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "be your Concubine": + if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off allowing ${him} to focus on getting you off.`); + slave.need = 0; + } else { + r.push(`gets more of your attention each day than any other slave, leaving ${him} thoroughly satisfied.`); + slave.need = 0; + } + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} amuses ${himself}, analyzing ${his} tastes. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`${He} spends ${his} time away from you fervently working to induce lactation, eager to enjoy it with you.`); + r.push(induceLactation(slave, 9)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + r.push(`${He} doesn't need to do anything to maintain ${his} lactation as you personally see to it each night.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "serve in the master suite": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off.`); + slave.need = 0; + } else if (V.masterSuiteUpgradeLuxury === 2 && L.masterSuite > 3) { + r.push(`never goes unsatisfied with all the action in the fuckpit.`); + slave.need -= 80; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off regularly despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + slave.need -= 20; + } else if ((release.masturbation === 0)) { + r.push(`gets off regularly, so being forbidden to masturbate doesn't affect ${him} seriously.`); + slave.need -= 20; + } else { + r.push(`gets off regularly, so ${he} doesn't feel the need to seek relief.`); + slave.need -= 20; + } + } else { + if (slave.devotion <= 20) { + r.push(`sometimes needs a little extra attention from you, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing to your touch, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + slave.need -= 40; + } else { + r.push(`sometimes needs a little extra sexual attention, not that you mind giving it to ${him}.`); + slave.need -= 40; + } + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} gets off, analyzing ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + r.push(`When you have the free time, you message ${his} breasts and work ${his} nipples in an effort to bring in ${his} lactation.`); + r.push(induceLactation(slave, 2)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (slave.devotion > 20) { + if (slave.fetish === "boobs") { + r.push(`${He} puts ${his} breasts to work when you humor ${his} tastes, easily keeping ${his} lactation from diminishing.`); + } else { + r.push(`You find ways to put ${his} milk to good use, and when you can't, see to it yourself that ${he} is kept drained and comfortable.`); + } + } else if (slave.devotion >= -20) { + if (slave.fetish === "boobs") { + r.push(`${He} responds positively to breast play in bed, assuring ${his} milk production isn't going anywhere.`); + } else { + r.push(`You focus on ${his} breasts during foreplay to make sure ${he} keeps producing milk for you.`); + } + } else { + r.push(`You make sure to see to it that ${he} keeps on lactating.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + case "live with your Head Girl": + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off, not that ${S.HeadGirl.slaveName} cares.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off, though it doesn't stop ${S.HeadGirl.slaveName}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off with ${S.HeadGirl.slaveName} despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + slave.need -= 20; + } else if ((release.masturbation === 0)) { + r.push(`gets off with ${S.HeadGirl.slaveName}, so being forbidden to masturbate doesn't affect ${him} seriously.`); + slave.need -= 20; + } else { + r.push(`gets off with ${S.HeadGirl.slaveName}, so ${he} doesn't feel the need for release that often.`); + slave.need -= 20; + } + } else { + r.push(`either gets off with ${S.HeadGirl.slaveName} or gets to put up with sexual frustration.`); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.devotion <= 20) { + r.push(`${He} shares a room, and sometimes bed, with ${S.HeadGirl.slaveName}. Your Head Girl keeps it from going to ${his} head, however.`); + } else { + r.push(`${He} loves sharing a room, and sometimes bed, with ${S.HeadGirl.slaveName}.`); + } + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} spends time with your Head Girl, analyzing ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + if (S.HeadGirl.fetish === "boobs") { + r.push(`Your Head Girl enjoys playing with ${his} tits, making it an inevitability that ${he}'ll begin lactating.`); + } else { + r.push(`${He} carries out ${his} daily tasks with a pair of automatic breast pumps attached to ${his} chest to help bring in ${his} lactation.`); + } + r.push(induceLactation(slave, 4)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain") { + if (S.HeadGirl.fetish === "boobs") { + r.push(`Your Head Girl enjoys playing with ${his} tits, thoroughly draining ${him} of milk and encouraging ${his} continued lactation.`); + } else { + r.push(`${He} utilizes ${his} lactation as your Head Girl demands, and if it should not be needed, spends the evenings with a pair of automatic breast pumps.`); + } + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + break; + default: + if (slave.devotion < -50) { + r.push(`is so unhappy that ${he} has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.energy <= 20) { + r.push(`is frigid and has little interest in getting off${(App.Utils.releaseRestricted(slave)) ? `, making the rule restricting ${his} sexual outlets superfluous` : ``}.`); + slave.need = 0; + } else if (slave.need < slave.needCap * 0.5) { + if (slave.devotion <= 20) { + r.push(`gets off at work despite ${his} reluctance, <span class="hotpink">habituating ${him} to sexual slavery.</span>`); + slave.devotion += 1; + if ((slave.trust >= -20) && (slave.devotion <= 20)) { + r.push(`${He} hates ${himself} for climaxing, and knows the mild aphrodisiacs in the food are forcing ${his} arousal, <span class="gold">frightening ${him}.</span>`); + slave.trust -= 1; + } + } else if ((release.masturbation === 0)) { + r.push(`gets off at work, so being forbidden to masturbate doesn't affect ${him} seriously.`); + } else { + r.push(`gets off at work, so ${he} doesn't feel the need to masturbate frequently.`); + } + slave.need -= 20; + } else { + r.push(App.SlaveAssignment.nonAssignmentRelease(slave)); + } + + r.push(App.EndWeek.Rules.speechRules(slave)); + + if (slave.assignment !== "be your Head Girl" && slave.assignment !== "guard you") { + if (V.roomsPopulation > V.rooms) { + if (slave.rules.living === "luxurious") { + r.push(`There are <span class="yellow">too many slaves for the penthouse's individual rooms,</span> so ${he} moves out into the dormitory.`); + slave.rules.living = "normal"; + penthouseCensus(); + } + } + } + + if (slave.devotion <= 20) { + if (slave.rules.living === "spare") { + r.push(`The spare living conditions <span class="hotpink">get ${him} used</span> to the routine of`); + if (slave.trust > 20) { + r.push(`slavery and <span class="gold">keep ${him} aware of ${his} lowly place.</span>`); + slave.trust -= 1; + } else { + r.push(`slavery.`); + } + slave.devotion += 1; + } else if ((slave.rules.living === "normal")) { + r.push(`The reasonable living conditions allow ${him} to <span class="mediumaquamarine">feel self-reliant.</span>`); + slave.trust += 1; + } else { + r.push(`The luxurious living conditions encourage ${him} to <span class="mediumaquamarine">feel respectable.</span>`); + slave.trust += 2; + } + } else { + if ((slave.ID === V.HeadGirlID) && (V.HGSuite === 1)) { + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} suite and <span class="mediumaquamarine">trusts</span> you a bit more for providing it.`); + slave.devotion += 1; + slave.trust += 1; + } else if ((slave.ID === V.BodyguardID) && (V.dojo <= 1)) { + r.push(`${He} rarely leaves your company enough to make use of ${his} living area.`); + } else if ((slave.rules.living === "luxurious")) { + r.push(`${He} is <span class="hotpink">very happy</span> with ${his} little room and <span class="mediumaquamarine">trusts</span> you a bit more for providing it.`); + slave.devotion += 1; + slave.trust += 1; + } else if ((slave.rules.living === "normal")) { + r.push(`${He} likes ${his} personal space in the dormitory.`); + } else if ((slave.trust > 40)) { + r.push(`The spare living conditions <span class="gold">remind ${him} not to get too comfortable</span> with ${his} life.`); + slave.trust -= 2; + } else if ((slave.trust > 10)) { + r.push(`The spare living conditions <span class="gold">keep ${him} aware of ${his} place.</span>`); + slave.trust -= 1; + } else { + r.push(`${He}'s used to having only the bare minimum in terms of living conditions, so ${he}'s not bothered by them.`); + } + } + if (["be a servant", "get milked", "please you", "serve the public", "whore", "work as a farmhand", "work a glory hole"].includes(slave.assignment)) { + if (slave.rules.living === "luxurious") { + if (slave.devotion <= 20) { + r.push(`They provide`); + } else { + r.push(`It provides a`); + } + r.push(`<span class="green">satisfying rest</span> every time ${he} drifts off to sleep.`); + } else if (slave.rules.living === "spare") { + if (slave.devotion > 20 && slave.trust <= 10) { + r.push(`They don't provide much rest, however.`); + } else { + r.push(`They provide meager rest, if anything, however.`); + } + } else { + if (slave.devotion <= 20) { + r.push(`They provide`); + } else { + r.push(`It provides`); + } + if (slave.devotion > 20) { + r.push(`<span class="green">adequate rest</span> for a ${girl} that knows how to manage ${his} time.`); + } else { + r.push(`<span class="green">adequate rest,</span> but not enough for a slave lacking time management.`); + } + } + } + + if (slave.rules.living !== "luxurious") { + if (V.dormitoryPopulation > V.dormitory) { + const dormPop = V.dormitoryPopulation - V.dormitory; + r.push(`The slave dormitory is`); + if (dormPop <= 5) { + r.push(`<span class="yellow">somewhat overcrowded.</span> The mild inconvenience`); + if (slave.trust > 20) { + r.push(`<span class="gold">reduces ${his} trust</span> in you a little.`); + slave.trust -= 2; + } else { + r.push(`<span class="mediumorchid">lowers you</span> a little in ${his} opinion.`); + slave.devotion -= 2; + } + } else if (dormPop <= 10) { + r.push(`<span class="yellow">badly overcrowded.</span> The constant difficulties`); + if (slave.trust > 20) { + r.push(`<span class="gold">reduces ${his} trust</span> in you`); + slave.trust -= 3; + } else { + r.push(`<span class="mediumorchid">lowers you</span> in ${his} opinion`); + slave.devotion -= 3; + } + r.push(`and is <span class="red">not good for ${him},</span> since it's difficult to rest there.`); + healthDamage(slave, 2); + } else { + r.push(`<span class="yellow">extremely overcrowded.</span> The unpleasant situation`); + if (slave.trust > 20) { + r.push(`seriously <span class="gold">reduces ${his} trust</span> in you`); + slave.trust -= 5; + } else { + r.push(`seriously <span class="mediumorchid">lowers you</span> in ${his} opinion`); + slave.devotion -= 5; + } + r.push(`and is <span class="red">bad for ${his} health.</span>`); + healthDamage(slave, 4); + } + } + } + + if (["be a servant", "get milked", "please you", "serve the public", "whore", "work a glory hole"].includes(slave.assignment)) { + if (slave.rules.rest === "mandatory") { + if (slave.devotion <= 20) { + r.push(`Getting a day off each week <span class="mediumaquamarine">builds feelings of liberty</span> a slave shouldn't have.`); + slave.trust += 3; + } else { + r.push(`${He} appreciates having a weekly day off and takes it as a sign that ${he} has a <span class="mediumaquamarine">caring ${getWrittenTitle(slave)}.</span>`); + slave.trust += 1; + } + } else if (V.slaveUsedRest) { + if (slave.rules.rest === "permissive") { + if (slave.devotion <= 20) { + r.push(`${He}'s permitted to rest whenever ${he} feels even the slightest bit tired; <span class="mediumaquamarine">a privilege not lost on ${him}.</span>`); + slave.trust += 2; + } else { + r.push(`${He} <span class="hotpink">likes</span> that you <span class="mediumaquamarine">care enough</span> to let him rest when he gets tired.`); + slave.devotion += 1; + slave.trust += 1; + } + } else if (slave.rules.rest === "restrictive") { + if (slave.devotion <= -20) { + r.push(`${He}'s permitted to rest when fatigue sets in, but not enough to shake ${his} tiredness; ${he} feels this <span class="gold">deprivation</span> is intentional.`); + slave.trust -= 1; + } else if ((slave.devotion <= 20)) { + r.push(`${He}'s permitted to rest when fatigue sets in, and <span class="hotpink">understands</span> this is less for ${his} wellbeing and more to prevent ${him} from become unproductive.`); + slave.devotion += 1; + } else { + r.push(`${He}'s permitted to rest when fatigue sets in and is <span class="mediumaquamarine">thankful</span> you would allow ${him} the privilege so that ${he} may serve you better.`); + slave.trust += 1; + } + } else if (slave.rules.rest === "cruel") { + if (slave.devotion <= -20) { + r.push(`${He}'s <span class="gold">terrified</span> that the only reason ${he} is given any time to rest at all is just to prolong your torment of ${him}.`); + slave.trust -= 3; + } else if ((slave.devotion <= 20)) { + r.push(`You work ${him} to the bone and only allow ${him} rest when on the verge of collapsing. ${He} <span class="gold">fears</span> this <span class="mediumorchid">cruelty</span> is just the beginning.`); + slave.trust -= 3; + slave.devotion -= 3; + } else { + r.push(`Only being allowed rest when on the verge of collapsing <span class="mediumorchid">shakes ${his} faith</span> in you a little.`); + slave.devotion -= 2; + } + } + delete V.slaveUsedRest; + } + } + + r.push(App.EndWeek.Rules.consentRules(slave)); + + if (slave.attrKnown === 0) { + if ((V.week - slave.weekAcquired > 4) && slave.energy > 20) { + slave.attrKnown = 1; + r.push(`${capFirstChar(V.assistant.name)} has been monitoring ${him} as ${he} gets off, analyzing ${his} sexuality. It seems ${he} is`); + r.push(App.EndWeek.Rules.attractionDiscovery(slave)); + } + } + + if (slave.rules.lactation === "induce") { + if (canHold(slave)) { + r.push(`${He} is required to vigorously massage ${his} breasts and nipples in an effort to induce lactation.`); + } else { + r.push(`${He} spends ${his} nights with a pair of automatic breast pumps attached to ${his} chest in order to bring in ${his} lactation.`); + } + r.push(induceLactation(slave, 4)); + if (slave.lactation === 1) { + slave.rules.lactation = "maintain"; + } + } else if (slave.rules.lactation === "maintain" && (V.servantMilkers !== 1 || !setup.servantMilkersJobs.includes(slave.assignment))) { + r.push(`${He} utilizes ${his} lactation during ${his} daily tasks as needed, and when ${he} isn't drained well enough, spends the evenings with a pair of automatic breast pumps.`); + slave.lactationDuration = 2; + slave.boobs -= slave.boobsMilk; + slave.boobsMilk = 0; + } + + r.push(App.SlaveAssignment.rewardAndPunishment(slave)); + if (V.subSlaves > 0 && release.slaves === 1 && slave.assignment !== "serve your other slaves") { + slave.need -= (20 * V.subSlaves); + /* make those serve your other slaves do some work for once */ + } + } + } + } + App.Events.addNode(el, r); + return el; +}; diff --git a/src/endWeek/saServeYourOtherSlaves.js b/src/endWeek/saServeYourOtherSlaves.js index 8f90c164438bbe31087ef95ff0cbc4d866e089fb..10cd5d2480c6f0c64fc859e09bd12535a1cc3fda 100644 --- a/src/endWeek/saServeYourOtherSlaves.js +++ b/src/endWeek/saServeYourOtherSlaves.js @@ -1443,8 +1443,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { slave.fetishKnown = 1; } subSlaveLikedFetish = 1; - slave.induceLactation += 2; - r.push(`${induceLactation(slave)}`); + r.push(induceLactation(slave, 2)); } break; } @@ -1626,8 +1625,7 @@ App.SlaveAssignment.serveYourOtherSlaves = (function() { slave.fetishKnown = 1; } slave.need = 0; - slave.induceLactation += 2; - r.push(`${induceLactation(slave)}`); + r.push(induceLactation(slave, 2)); } break; } diff --git a/src/endWeek/slaveAssignmentReport.js b/src/endWeek/slaveAssignmentReport.js index 9f0ef46ffdabeb3949e3850882330aa7996f2108..eee83ba79fae976fbd47e0641a0f14aed74d91b5 100644 --- a/src/endWeek/slaveAssignmentReport.js +++ b/src/endWeek/slaveAssignmentReport.js @@ -295,7 +295,7 @@ App.EndWeek.slaveAssignmentReport = function() { * @param array _facListArr * Multidimensional temporary array * 0: The SC passage name or DOM function for the facility's report - * 1: A facility object, or the title of the report if there is no facility obejct + * 1: A facility object, or the title of the report if there is no facility object * 2: If there is no facility object, a truthy value indicating whether the facility exists * 3: If there is no facility object, the maximum capacity of the facility * diff --git a/src/endWeek/standardSlaveReport.js b/src/endWeek/standardSlaveReport.js index d8181b37cd5e3d49b1490f7af86cd642924fc632..5ed4a6d9b43f2f8129093671ce28c516ed8e1fe3 100644 --- a/src/endWeek/standardSlaveReport.js +++ b/src/endWeek/standardSlaveReport.js @@ -9,7 +9,7 @@ App.SlaveAssignment.standardSlaveReport = function(slave, silent=false) { tired(slave); - const rules = App.UI.DOM.renderPassage("SA rules"); + const rules = App.SlaveAssignment.rules(slave); const diet = App.SlaveAssignment.diet(slave); const ltEffects = App.SlaveAssignment.longTermEffects(slave); const drugs = App.SlaveAssignment.drugs(slave); diff --git a/src/js/utilsFC.js b/src/js/utilsFC.js index 29ba225e22d26007a924d45e076fa3b3e0711b24..9528b93dd3353a294b5c8334b36c600a2fee823e 100644 --- a/src/js/utilsFC.js +++ b/src/js/utilsFC.js @@ -1575,12 +1575,14 @@ globalThis.lengthToEitherUnit = function(length) { /** * @param {App.Entity.SlaveState} slave + * @param {number} [induce] * @returns {string} */ -globalThis.induceLactation = function(slave) { +globalThis.induceLactation = function(slave, induce = 0) { const {His} = getPronouns(slave); let r = ""; let lactationStartChance = jsRandom(10, 100); + slave.induceLactation += induce; if (slave.boobs < 300) { lactationStartChance *= 1.5; } else if (slave.boobs < 400 || slave.boobs >= 5000) { @@ -1605,7 +1607,7 @@ globalThis.induceLactation = function(slave) { lactationStartChance = (lactationStartChance / (slave.lactationAdaptation / 10)); } if (slave.geneticQuirks.galactorrhea === 2) { - lactationStartChance *= .5 + lactationStartChance *= .5; } lactationStartChance = Math.floor(lactationStartChance); if (slave.induceLactation >= lactationStartChance) { diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw index faa66635bbbaef30ada52b7e4b8e8159b4c532d3..7621d9b22ad53521e4bae1e51717925b423fe50e 100644 --- a/src/uncategorized/REFI.tw +++ b/src/uncategorized/REFI.tw @@ -56,8 +56,7 @@ <<set $slaves[_refi].lactationDuration = 2>> <<set $slaves[_refi].boobs -= $slaves[_refi].boobsMilk, $slaves[_refi].boobsMilk = 0>> <<else>> - <<set $slaves[_refi].induceLactation += 4>> - <<run induceLactation($slaves[_refi])>> + <<run induceLactation($slaves[_refi], 4)>> <</if>> <<case "dom">> /* TODO: expand this */ @@ -1562,8 +1561,7 @@ There was a glint of envy <<if canSee($activeSlave)>>in $his eyes when $he saw<< <<set $activeSlave.lactationDuration = 2>> <<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>> <<else>> - <<set $activeSlave.induceLactation += 5>> - <<= induceLactation($activeSlave)>> + <<= induceLactation($activeSlave, 5)>> <</if>> <</replace>> <</link>> diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw index 0cf72b8a1e0945bf9f2af6b42aed5e62a1d97a97..6e869d4dd399e6aae743b396b45be81e870863ea 100644 --- a/src/uncategorized/RESS.tw +++ b/src/uncategorized/RESS.tw @@ -1680,8 +1680,7 @@ $He stops and <<if canSee($activeSlave)>>stares<<else>>faces you<</if>>, struggl <<set $activeSlave.lactationDuration = 2>> <<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>> <<else>> - <<set $activeSlave.induceLactation += 2>> - <<= induceLactation($activeSlave)>> + <<= induceLactation($activeSlave, 2)>> <</if>> <<else>> Even $his nipples show signs of wear, having prolapsed slightly from heavy use. @@ -10029,8 +10028,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<set $activeSlave.lactationDuration = 2>> <<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>> <<else>> - <<set $activeSlave.induceLactation += 4>> - <<= induceLactation($activeSlave)>> + <<= induceLactation($activeSlave, 4)>> <</if>> <<case "pregnancy">> <<if !canDoAnal($activeSlave) && !canDoVaginal($activeSlave)>> @@ -11974,8 +11972,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<set $activeSlave.lactationDuration = 2>> <<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>> <<else>> - <<set $activeSlave.induceLactation += 3>> - <<= induceLactation($activeSlave)>> + <<= induceLactation($activeSlave, 3)>> <</if>> <</replace>> <</link>> @@ -15448,8 +15445,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<set $activeSlave.lactationDuration = 2>> <<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>> <<else>> - <<set $activeSlave.induceLactation += 5>> - <<= induceLactation($activeSlave)>> + <<= induceLactation($activeSlave, 5)>> <</if>> <<case "pregnancy">> $He doesn't have permission to impregnate them, but they don't know that, and $he lies shamelessly. <<if canPenetrate($activeSlave)>>They beg $him not to cum inside them, but $he does anyway,<<else>>$He uses a strap-on with a reservoir to fill them with cum,<</if>> and they cry themselves to sleep every night. @@ -15517,8 +15513,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<set $activeSlave.lactationDuration = 2>> <<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>> <<else>> - <<set $activeSlave.induceLactation += 3>> - <<= induceLactation($activeSlave)>> + <<= induceLactation($activeSlave, 3)>> <</if>> <</replace>> <</link>> @@ -15957,8 +15952,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<set $activeSlave.lactationDuration = 2>> <<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>> <<else>> - <<set $activeSlave.induceLactation += 3>> - <<= induceLactation($activeSlave)>> + <<= induceLactation($activeSlave, 3)>> <</if>> <</replace>> <</link>> diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw index ad3e4c7a549c548fa065ba18b59061af7a976421..2f2dca07c7e394d40b8a15dba49052161ee1578f 100644 --- a/src/uncategorized/arcadeReport.tw +++ b/src/uncategorized/arcadeReport.tw @@ -138,7 +138,7 @@ <</if>> <<if $showEWD != 0>> <br> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_slave)>> <<= App.SlaveAssignment.diet(_slave)>> <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> <<= App.SlaveAssignment.drugs(_slave)>> @@ -146,15 +146,13 @@ <<= App.SlaveAssignment.rivalries(_slave)>> <br> <<= App.SlaveAssignment.devotion(_slave)>> <<else>> - <<silently>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules()>> <<run App.SlaveAssignment.diet(_slave)>> <<run App.SlaveAssignment.longTermEffects(_slave)>> <<run App.SlaveAssignment.drugs(_slave)>> <<run App.SlaveAssignment.relationships(_slave)>> <<run App.SlaveAssignment.rivalries(_slave)>> <<run App.SlaveAssignment.devotion(_slave)>> - <</silently>> <</if>> <</for>> diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw index 3cfca0248129a6a359a32e3c07796afc08c6cdf1..d735efced5a2206b2e2370612a28ab483f9e9b05 100644 --- a/src/uncategorized/brothelReport.tw +++ b/src/uncategorized/brothelReport.tw @@ -196,7 +196,7 @@ <br> <<= App.SlaveAssignment.choosesOwnClothes(_S.Madam)>> <<run tired(_S.Madam)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_S.Madam)>> <<= App.SlaveAssignment.diet(_S.Madam)>> <<includeDOM App.SlaveAssignment.longTermEffects(_S.Madam)>> <<= App.SlaveAssignment.drugs(_S.Madam)>> @@ -204,17 +204,15 @@ <<= App.SlaveAssignment.rivalries(_S.Madam)>> <br> <<= App.SlaveAssignment.devotion(_S.Madam)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnClothes(_S.Madam)>> <<run tired(_S.Madam)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules(_S.Madam)>> <<run App.SlaveAssignment.diet(_S.Madam)>> <<run App.SlaveAssignment.longTermEffects(_S.Madam)>> <<run App.SlaveAssignment.drugs(_S.Madam)>> <<run App.SlaveAssignment.relationships(_S.Madam)>> <<run App.SlaveAssignment.rivalries(_S.Madam)>> <<run App.SlaveAssignment.devotion(_S.Madam)>> - <</silently>> <</if>> <</if>> @@ -287,7 +285,7 @@ <br> $He <<= App.SlaveAssignment.whore(_slave)>> <br> <<= App.SlaveAssignment.choosesOwnClothes(_slave)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_slave)>> <<= App.SlaveAssignment.diet(_slave)>> <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> <<= App.SlaveAssignment.drugs(_slave)>> @@ -295,18 +293,16 @@ <<= App.SlaveAssignment.rivalries(_slave)>> <br> <<= App.SlaveAssignment.devotion(_slave)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnJob(_slave)>> <<run App.SlaveAssignment.whore(_slave)>> <<run App.SlaveAssignment.choosesOwnClothes(_slave)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules(_slave)>> <<run App.SlaveAssignment.diet(_slave)>> <<run App.SlaveAssignment.longTermEffects(_slave)>> <<run App.SlaveAssignment.drugs(_slave)>> <<run App.SlaveAssignment.relationships(_slave)>> <<run App.SlaveAssignment.rivalries(_slave)>> <<run App.SlaveAssignment.devotion(_slave)>> - <</silently>> <</if>> <<set _seed = Math.max(App.Ads.getMatchedCategoryCount(_slave, "brothel"), 1)>> diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw index 7c0555e8fce51ef3ce1a0f3423485b973f0c9137..8a2d3b4426fdf6360f035987da697c5d79beae08 100644 --- a/src/uncategorized/cellblockReport.tw +++ b/src/uncategorized/cellblockReport.tw @@ -141,7 +141,7 @@ <br> <<= App.SlaveAssignment.choosesOwnClothes($slaves[$i])>> <<run tired($slaves[$i])>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules($slaves[$i])>> <<= App.SlaveAssignment.diet($slaves[$i])>> <<includeDOM App.SlaveAssignment.longTermEffects($slaves[$i])>> <<= App.SlaveAssignment.drugs($slaves[$i])>> @@ -149,17 +149,15 @@ <<= App.SlaveAssignment.rivalries($slaves[$i])>> <br> <<= App.SlaveAssignment.devotion($slaves[$i])>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnClothes($slaves[$i])>> <<run tired($slaves[$i])>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules($slaves[$i])>> <<run App.SlaveAssignment.diet($slaves[$i])>> <<run App.SlaveAssignment.longTermEffects($slaves[$i])>> <<run App.SlaveAssignment.drugs($slaves[$i])>> <<run App.SlaveAssignment.relationships($slaves[$i])>> <<run App.SlaveAssignment.rivalries($slaves[$i])>> <<run App.SlaveAssignment.devotion($slaves[$i])>> - <</silently>> <</if>> <</if>> @@ -263,7 +261,7 @@ <</if>> <br> $He <<= App.SlaveAssignment.stayConfined(_slave)>> <br> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_slave)>> <<= App.SlaveAssignment.diet(_slave)>> <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> <<= App.SlaveAssignment.drugs(_slave)>> @@ -274,7 +272,7 @@ <<silently>> <<run App.SlaveAssignment.choosesOwnJob(_slave)>> <<run App.SlaveAssignment.stayConfined(_slave)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules(_slave)>> <<run App.SlaveAssignment.diet(_slave)>> <<run App.SlaveAssignment.longTermEffects(_slave)>> <<run App.SlaveAssignment.drugs(_slave)>> diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw index e9d427d33e362bedd62d1b7507d34f0b02320a58..c7a90861626efa418ba0b9d01d45b18888383d61 100644 --- a/src/uncategorized/clubReport.tw +++ b/src/uncategorized/clubReport.tw @@ -120,7 +120,7 @@ <br> <<= App.SlaveAssignment.choosesOwnClothes(_S.DJ)>> <<run tired(_S.DJ)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_S.DJ)>> <<= App.SlaveAssignment.diet(_S.DJ)>> <<includeDOM App.SlaveAssignment.longTermEffects(_S.DJ)>> <<= App.SlaveAssignment.drugs(_S.DJ)>> @@ -128,17 +128,15 @@ <<= App.SlaveAssignment.rivalries(_S.DJ)>> <br> <<= App.SlaveAssignment.devotion(_S.DJ)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnClothes(_S.DJ)>> <<run tired(_S.DJ)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules(_S.DJ)>> <<run App.SlaveAssignment.diet(_S.DJ)>> <<run App.SlaveAssignment.longTermEffects(_S.DJ)>> <<run App.SlaveAssignment.drugs(_S.DJ)>> <<run App.SlaveAssignment.relationships(_S.DJ)>> <<run App.SlaveAssignment.rivalries(_S.DJ)>> <<run App.SlaveAssignment.devotion(_S.DJ)>> - <</silently>> <</if>> <</if>> @@ -197,7 +195,7 @@ <br> $He <<= App.SlaveAssignment.serveThePublic(_slave)>> <br> <<= App.SlaveAssignment.choosesOwnClothes(_slave)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_slave)>> <<= App.SlaveAssignment.diet(_slave)>> <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> <<= App.SlaveAssignment.drugs(_slave)>> @@ -205,18 +203,16 @@ <<= App.SlaveAssignment.rivalries(_slave)>> <br> <<= App.SlaveAssignment.devotion(_slave)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnJob(_slave)>> <<run App.SlaveAssignment.serveThePublic(_slave)>> <<run App.SlaveAssignment.choosesOwnClothes(_slave)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_slave)>> <<run App.SlaveAssignment.diet(_slave)>> <<run App.SlaveAssignment.longTermEffects(_slave)>> <<run App.SlaveAssignment.drugs(_slave)>> <<run App.SlaveAssignment.relationships(_slave)>> <<run App.SlaveAssignment.rivalries(_slave)>> <<run App.SlaveAssignment.devotion(_slave)>> - <</silently>> <</if>> <</for>> <p> diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw index 8fc702d6f8aab12ac4bb7b85f9c3f867270e7845..14409cb005a55d468e4c80bb3a27c6ac6a8493d4 100644 --- a/src/uncategorized/dairyReport.tw +++ b/src/uncategorized/dairyReport.tw @@ -310,7 +310,7 @@ <br> <<= App.SlaveAssignment.choosesOwnClothes(_S.Milkmaid)>> <<run tired(_S.Milkmaid)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_S.Milkmaid)>> <<= App.SlaveAssignment.diet(_S.Milkmaid)>> <<includeDOM App.SlaveAssignment.longTermEffects(_S.Milkmaid)>> <<= App.SlaveAssignment.drugs(_S.Milkmaid)>> @@ -318,17 +318,15 @@ <<= App.SlaveAssignment.rivalries(_S.Milkmaid)>> <br> <<= App.SlaveAssignment.devotion(_S.Milkmaid)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnClothes(_S.Milkmaid)>> <<run tired(_S.Milkmaid)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules(_S.Milkmaid)>> <<run App.SlaveAssignment.diet(_S.Milkmaid)>> <<run App.SlaveAssignment.longTermEffects(_S.Milkmaid)>> <<run App.SlaveAssignment.drugs(_S.Milkmaid)>> <<run App.SlaveAssignment.relationships(_S.Milkmaid)>> <<run App.SlaveAssignment.rivalries(_S.Milkmaid)>> <<run App.SlaveAssignment.devotion(_S.Milkmaid)>> - <</silently>> <</if>> <</if>> @@ -418,7 +416,7 @@ <<set _milkResults = App.SlaveAssignment.getMilked(_slave)>> <br> $He <<= _milkResults.text>> <br> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_slave)>> <<= App.SlaveAssignment.diet(_slave)>> <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> <<= App.SlaveAssignment.drugs(_slave)>> @@ -426,17 +424,15 @@ <<= App.SlaveAssignment.rivalries(_slave)>> <br> <<= App.SlaveAssignment.devotion(_slave)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnJob(_slave)>> <<set _milkResults = App.SlaveAssignment.getMilked(_slave)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules(_slave)>> <<run App.SlaveAssignment.diet(_slave)>> <<run App.SlaveAssignment.longTermEffects(_slave)>> <<run App.SlaveAssignment.drugs(_slave)>> <<run App.SlaveAssignment.relationships(_slave)>> <<run App.SlaveAssignment.rivalries(_slave)>> <<run App.SlaveAssignment.devotion(_slave)>> - <</silently>> <</if>> <<set _milkWeek += _milkResults.milk, _cumWeek += _milkResults.cum>> @@ -488,8 +484,7 @@ <</if>> <<elseif $dairyImplantsSetting == 3>> <<if (_slave.lactation < 1) && (_slave.boobs > 300 || _slave.balls == 0)>> - <<set _slave.induceLactation += 9>> - <<run induceLactation(_slave)>> + <<run induceLactation(_slave, 9)>> <</if>> <</if>> <</if>> diff --git a/src/uncategorized/fullReport.tw b/src/uncategorized/fullReport.tw index b840e0372b1b9ce87864ac6ce1dbe038807d60fb..95d64be55e6178b8149b4e3c8b328f271593c277 100644 --- a/src/uncategorized/fullReport.tw +++ b/src/uncategorized/fullReport.tw @@ -61,17 +61,15 @@ <</if>> <<if $showEWD == 0>> - <<silently>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules($slaves[$i])>> <<run App.SlaveAssignment.choosesOwnClothes($slaves[$i])>> <<run App.SlaveAssignment.diet($slaves[$i])>> <<run App.SlaveAssignment.longTermEffects($slaves[$i])>> <<run App.SlaveAssignment.drugs($slaves[$i])>> <<run App.SlaveAssignment.relationships($slaves[$i])>> <<run App.SlaveAssignment.rivalries($slaves[$i])>> - <</silently>> <<else>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules($slaves[$i])>> <<= App.SlaveAssignment.choosesOwnClothes($slaves[$i])>> <<= App.SlaveAssignment.diet($slaves[$i])>> <<includeDOM App.SlaveAssignment.longTermEffects($slaves[$i])>> diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw index 3090acf5a33451d74be5f6e2c91b41c062c69250..48f53186004fd51e73ca5e795469370a33b2f8c2 100644 --- a/src/uncategorized/saLiveWithHG.tw +++ b/src/uncategorized/saLiveWithHG.tw @@ -1031,19 +1031,17 @@ <</if>> <<if $showEWD == 0>> - <<silently>> /*<<run App.SlaveAssignment.choosesOwnClothes($slaves[$i])>>*/ - <<include "SA rules">> + <<run App.SlaveAssignment.rules($slaves[$i])>> <<run App.SlaveAssignment.diet($slaves[$i])>> <<run App.SlaveAssignment.longTermEffects($slaves[$i])>> <<run App.SlaveAssignment.drugs($slaves[$i])>> <<run App.SlaveAssignment.relationships($slaves[$i])>> <<run App.SlaveAssignment.rivalries($slaves[$i])>> <<run App.SlaveAssignment.devotion($slaves[$i])>> - <</silently>> <<else>> /*<<= App.SlaveAssignment.choosesOwnClothes($slaves[$i])>>*/ - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules($slaves[$i])>> <<= App.SlaveAssignment.diet($slaves[$i])>> <<includeDOM App.SlaveAssignment.longTermEffects($slaves[$i])>> <<= App.SlaveAssignment.drugs($slaves[$i])>> diff --git a/src/uncategorized/saRules.tw b/src/uncategorized/saRules.tw deleted file mode 100644 index d0b58feeb6901dc8b830868508844763146ffd79..0000000000000000000000000000000000000000 --- a/src/uncategorized/saRules.tw +++ /dev/null @@ -1,2393 +0,0 @@ -:: SA rules [nobr] - -<<set _L = App.Utils.countFacilityWorkers()>> -<<set _release = $slaves[$i].rules.release>> - -<<if $slaves[$i].fuckdoll == 0>> - $He - <<if $slaves[$i].fetish == "mindbroken">> - is mentally broken so none of the rules have any impact. - <<else>> - <<switch $slaves[$i].assignment>> - <<case "be confined in the arcade">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off, not that $he gets a choice. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off, not that $he gets a choice. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off at work despite $his reluctance, @@.hotpink;habituating $him to being a fuckhole.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<elseif App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - wasn't a popular enough hole to sate $his arousal, leaving $him @@.gold;uncomfortably horny@@ despite $his conditions. - <<set $slaves[$i].trust -= 3>> - <</if>> - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $his body gets used. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - <<case "be the Madam">> - <<set $slaves[$i].need -= (App.Entity.facilities.brothel.employeesIDs().size*10)>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in $brothelName and @@.mediumaquamarine;trusts@@ you a bit more for placing $him in charge of it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - It also helps to offset the tiring nature of $his position. - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict $his non-essential activities. - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he manages clients, analyzing $his tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment from $his duties, $he spends that time massaging $his breasts and working $his nipples. - <<set $slaves[$i].induceLactation += 2>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - Whenever $he finds a free moment from $his duties, $he takes the time to thoroughly milk $his breasts to keep $his lactation strong for you. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "work in the brothel">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off, not that $his clients care. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off, not that $his clients care. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off at work despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<elseif App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - <<switch $brothelDecoration>> - <<case "Degradationist" "standard">> - The spare living conditions of $brothelName @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<set $slaves[$i].devotion += 1>> - <<case "Chattel Religionist">> - The open, yet comfortable, conditions of $brothelName @@.hotpink;get $him used@@ to the routine of slavery. - <<set $slaves[$i].devotion += 1>> - <<default>> - $He gets a little room all to $himself, allowing $him to feel self-reliant; or it would, if it didn't reek of sex and shame after all the customers $he serviced in it. - <</switch>> - <<else>> - <<switch $brothelDecoration>> - <<case "Degradationist" "standard">> - <<if ($slaves[$i].trust > 40)>> - The spare living conditions of $brothelName @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The spare living conditions of $brothelName @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - $He's used to spare living conditions, so $he's not bothered by $brothelName's. - <</if>> - <<case "Chattel Religionist">> - The open, yet comfortable, conditions of $brothelName's slave quarters are quite refreshing after a day of public sex, even if $he has to share it with all the other whores. - <<default>> - $He likes $his little room in $brothelName, even if <<if canSmell($slaves[$i])>>it smells of sex<<else>>it's filled with the heat of sex<</if>> after fucking in it all day. - <</switch>> - <</if>> - <<if $slaves[$i].rules.living == "luxurious">> - They provide @@.green;satisfying rest@@ every time $he drifts off to sleep. - <<elseif $slaves[$i].rules.living == "spare">> - <<if $slaves[$i].devotion > 20 && $slaves[$i].trust <= 10>> - They don't provide much rest, however. - <<else>> - They provide meager rest, if anything. - <</if>> - <<else>> - They provide - <<if $slaves[$i].devotion > 20>> - @@.green;adequate rest@@ for a $girl that knows how to manage $his time. - <<else>> - @@.green;adequate rest,@@ but not enough for a slave lacking time management. - <</if>> - <</if>> - - <<if $slaves[$i].rules.rest == "mandatory">> - <<if ($slaves[$i].devotion <= 20)>> - Getting a day off each week @@.mediumaquamarine;builds feelings of liberty@@ a slave shouldn't have. - <<set $slaves[$i].trust += 3>> - <<else>> - $He appreciates having a weekly day off and takes it as a sign that $he has a @@.mediumaquamarine;caring <<= getWrittenTitle($slaves[$i])>>.@@ - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaveUsedRest>> - <<if $slaves[$i].rules.rest == "permissive">> - <<if ($slaves[$i].devotion <= 20)>> - $He's permitted to rest whenever $he feels even the slightest bit tired; @@.mediumaquamarine;a privilege not lost on $him.@@ - <<set $slaves[$i].trust += 2>> - <<else>> - $He @@.hotpink;likes@@ that you @@.mediumaquamarine;care enough@@ to let him rest when he gets tired. - <<set $slaves[$i].devotion += 1>> - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "restrictive">> - <<if ($slaves[$i].devotion <= -20)>> - $He's permitted to rest when fatigue sets in, but not enough to shake $his tiredness; $he feels this @@.gold;deprivation@@ is intentional. - <<set $slaves[$i].trust -= 1>> - <<elseif ($slaves[$i].devotion <= 20)>> - $He's permitted to rest when fatigue sets in, and @@.hotpink;understands@@ this is less for $his wellbeing and more to prevent $him from become unproductive. - <<set $slaves[$i].devotion += 1>> - <<else>> - $He's permitted to rest when fatigue sets in and is @@.mediumaquamarine;thankful@@ you would allow $him the privilege so that $he may serve you better. - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "cruel">> - <<if ($slaves[$i].devotion <= -20)>> - $He's @@.gold;terrified@@ that the only reason $he is given any time to rest at all is just to prolong your torment of $him. - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].devotion <= 20)>> - You work $him to the bone and only allow $him rest when on the verge of collapsing. $He @@.gold;fears@@ this @@.mediumorchid;cruelty@@ is just the beginning. - <<set $slaves[$i].trust -= 3>> - <<set $slaves[$i].devotion -= 3>> - <<else>> - Only being allowed rest when on the verge of collapsing @@.mediumorchid;shakes $his faith@@ in you a little. - <<set $slaves[$i].devotion -= 2>> - <</if>> - <</if>> - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he services customers, analyzing $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Customers are encouraged to work $his breasts and nipples in an effort to induce lactation; whoever gets $him to start dribbling milk wins a week of drinks on the house. - <<set $slaves[$i].induceLactation += 4>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $slaves[$i].devotion > 20>> - <<if $slaves[$i].fetish == "boobs">> - It's unclear if $he is using $his milky breasts during sex for you or $himself; either way, $his lactation won't be going anywhere. - <<else>> - $He happily puts $his milky breasts to use during sex in order to keep lactating for you. - <</if>> - <<elseif $slaves[$i].devotion >= -20>> - <<if $slaves[$i].fetish == "boobs">> - $He doesn't need to be ordered to use $his milky breasts during sex since $he favors them heavily. - <<else>> - $He is required to utilize $his milky breasts during sex to keep $his lactation strong. - <</if>> - <<else>> - Customers are encouraged to molest $his breasts to keep $him lactating. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the DJ">> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in the back of $clubName and @@.mediumaquamarine;trusts@@ you a bit more for placing your faith in $his abilities. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - It helps offset the tiring nature of $his position and gives $him a place to center $himself at the end of the day. - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict $his non-essential activities. - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he works the crowd, analyzing $his sexual tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment between $his sets, $he spends that time massaging $his breasts and working $his nipples. - <<set $slaves[$i].induceLactation += 2>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - $He has worked milking $himself into $his dance routines, both entertaining the crowd and keeping $his lactation strong for you. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "serve in the club">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off, not that $his spectators care. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off, not that $his spectators care. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off at work despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<elseif App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - $He shares a room with <<if App.Entity.facilities.club.employeesIDs().size > 4>>some of <</if>>the other sluts, preventing $him from becoming too complacent. It doesn't help that during business hours $he has to take citizens in $his own bed. - <<else>> - $He likes $his personal space in $clubName, even if <<if canSmell($slaves[$i])>>it smells of<<else>>it's filled with the heat from<</if>> sex and citizens. - <</if>> - It provides - <<if $slaves[$i].devotion > 20>> - @@.green;adequate rest@@ for a slut that knows how to manage $his time. - <<else>> - @@.green;adequate rest,@@ but not enough for a slut lacking time management. - <</if>> - - <<if $slaves[$i].rules.rest == "mandatory">> - <<if ($slaves[$i].devotion <= 20)>> - Getting a day off each week @@.mediumaquamarine;builds feelings of liberty@@ a slave shouldn't have. - <<set $slaves[$i].trust += 3>> - <<else>> - $He appreciates having a weekly day off and takes it as a sign that $he has a @@.mediumaquamarine;caring <<= getWrittenTitle($slaves[$i])>>.@@ - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaveUsedRest>> - <<if $slaves[$i].rules.rest == "permissive">> - <<if ($slaves[$i].devotion <= 20)>> - $He's permitted to rest whenever $he feels even the slightest bit tired; @@.mediumaquamarine;a privilege not lost on $him.@@ - <<set $slaves[$i].trust += 2>> - <<else>> - $He @@.hotpink;likes@@ that you @@.mediumaquamarine;care enough@@ to let him rest when he gets tired. - <<set $slaves[$i].devotion += 1>> - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "restrictive">> - <<if ($slaves[$i].devotion <= -20)>> - $He's permitted to rest when fatigue sets in, but not enough to shake $his tiredness; $he feels this @@.gold;deprivation@@ is intentional. - <<set $slaves[$i].trust -= 1>> - <<elseif ($slaves[$i].devotion <= 20)>> - $He's permitted to rest when fatigue sets in, and @@.hotpink;understands@@ this is less for $his wellbeing and more to prevent $him from become unproductive. - <<set $slaves[$i].devotion += 1>> - <<else>> - $He's permitted to rest when fatigue sets in and is @@.mediumaquamarine;thankful@@ you would allow $him the privilege so that $he may serve you better. - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "cruel">> - <<if ($slaves[$i].devotion <= -20)>> - $He's @@.gold;terrified@@ that the only reason $he is given any time to rest at all is just to prolong your torment of $him. - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].devotion <= 20)>> - You work $him to the bone and only allow $him rest when on the verge of collapsing. $He @@.gold;fears@@ this @@.mediumorchid;cruelty@@ is just the beginning. - <<set $slaves[$i].trust -= 3>> - <<set $slaves[$i].devotion -= 3>> - <<else>> - Only being allowed rest when on the verge of collapsing @@.mediumorchid;shakes $his faith@@ in you a little. - <<set $slaves[$i].devotion -= 2>> - <</if>> - <</if>> - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he services citizens, analyzing $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Citizens are encouraged to work $his breasts and nipples in an effort to induce lactation; whoever gets $him to start dribbling milk wins a week of drinks on the house. - <<set $slaves[$i].induceLactation += 4>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $slaves[$i].devotion > 20>> - <<if $slaves[$i].fetish == "boobs">> - It's unclear if $his lactation based routines are for your benefit or $his own; either way, $his milk production won't be slowing down. - <<else>> - $He happily works $his lactation into $his routines in order to keep $his milk flowing. - <</if>> - <<elseif $slaves[$i].devotion >= -20>> - <<if $slaves[$i].fetish == "boobs">> - $He doesn't need to be ordered to work $his lactation into $his routines since $he does so already. - <<else>> - $He is required to utilize $his lactation while entertaining to keep $his lactation strong. - <</if>> - <<else>> - Citizens are encouraged to molest $his breasts to keep $him lactating. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the Nurse">> - <<set $slaves[$i].need -= ($flSex.size*3)>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in $clinicName and @@.mediumaquamarine;trusts@@ you a bit more for placing $him in charge of it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - Having a place to call $his own each night helps keep the stress of $his duties from catching up with $him. - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict $his non-essential activities. - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he cares for $his patients to determine $his tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - $He spends much of $his time with a pair of automatic breast pumps attached to $his chest. The constant stimulation will have $him milky soon enough. - <<set $slaves[$i].induceLactation += 8>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - It's not unusual to see $him tending to $his patients with a pair of breast pumps sucking away at $his breasts. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "get treatment in the clinic">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<else>> - <<set _partner = App.EndWeek.getClinicPartner($slaves[$i])>> - <<switch _partner.type>> - <<case "player">> - is well taken care of during $his stay in $clinicName; you make sure your $wife's every sexual need is handled personally. - <<set $slaves[$i].need = 0>> - <<if canImpreg($slaves[$i], $PC) && (($slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1)||($slaves[$i].anus != 0 && $slaves[$i].mpreg == 1))>> - <<= knockMeUp($slaves[$i], 10, 0, -1, 1)>> - <<if ($slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1)>> - <<set $slaves[$i].counter.vaginal += 7, $vaginalTotal += 7>> - <<else>> - <<set $slaves[$i].counter.anal += 7, $analTotal += 7>> - <</if>> - <<if $slaves[$i].preg > 0>> - It comes as little surprise when routine health checks start to show @@.lime;$he's pregnant!@@ - <</if>> - <</if>> - <<case "lover">> - <<setLocalPronouns _partner.slave 2>> - <<set $slaves[$i].need = 0>> - is well taken care of during $his stay in $clinicName; $his <<if $slaves[$i].relationship == 3>>friend with benefits<<elseif $slaves[$i].relationship == 4>>sweetheart<<else>>_wife2<</if>> frequently stops by when $he gets the chance to make sure $his sexual needs are properly handled. - <<set _partner.slave.counter.oral += 14, $oralTotal += 14>> - <<case "family">> - is well-loved by $his family; this week, $his <<= relativeTerm($slaves[$i], _partner.slave)>> @@.lightgreen;_partner.slave.slaveName@@ pays special attention to $him, making sure $his sexual needs are met. - <<set $slaves[$i].need = 0>> - <<set _partner.slave.counter.oral += 7, $oralTotal += 7>> - <<case "friend">> - is friends with @@.lightgreen;_partner.slave.slaveName,@@ who comes to visit $him regularly. $His sexual frustration from being confined to the clinic shows, and _partner.slave.slaveName often winds up helping $him get relief. - <<if _partner.slave.rules.relationship === "permissive" && $slaves[$i].rules.relationship === "permissive">> - They have @@.lightgreen;become lovers.@@ - <<set $slaves[$i].relationship = 3, _partner.slave.relationship = 3>> - <<else>> - They know it your rules prevent them from becoming anything more, but they enjoy themselves anyway. - <</if>> - <<set $slaves[$i].need = 0>> - <<set _partner.slave.counter.oral += 7, $oralTotal += 7>> - <<case "nurse">> - is routinely brought to orgasm by _S.Nurse.slaveName as part of $his duties. - <<if canPenetrate($slaves[$i]) && _S.Nurse.boobs >= 500>> - <<run seX(_S.Nurse, "mammary", $slaves[$i], "penetrative", 14)>> - <<else>> - <<run actX(_S.Nurse, "oral", 14)>> - /* possible cumflation code here */ - <</if>> - <<set $slaves[$i].need -= 60>> - <<default>> - <<if _release.masturbation === 1>> - <<if ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>> - takes solace in $his permission to masturbate rather than being forced to seek other means of release, @@.mediumaquamarine;reducing $his fear@@ of you. - <<set $slaves[$i].trust += 2, $slaves[$i].need = 0>> - <<elseif ($slaves[$i].devotion <= 20)>> - enjoys being allowed to masturbate rather than having to seek other means of release, @@.mediumaquamarine;slightly reducing $his fear@@ of you but @@.mediumorchid;allowing $him to remain in control of $him sexuality.@@ - <<set $slaves[$i].trust += 1, $slaves[$i].devotion -= 1, $slaves[$i].need = 0>> - <<elseif ($slaves[$i].devotion <= 50)>> - accepts having to relieve $himself solely through masturbation. - <<set $slaves[$i].need = 0>> - <<else>> - is a little disappointed that $he's limited to $his <<if !hasAnyArms($slaves[$i])>>imagination<<else>>hand<<if hasBothArms($slaves[$i])>>s<</if>><</if>> and toys, but @@.mediumaquamarine;understands you care about $his current health.@@ - <<set $slaves[$i].trust += 1, $slaves[$i].need = 0>> - <</if>> - <<if $slaves[$i].devotion > 20>> - When $he does play with $himself, $he - <<includeDOM App.EndWeek.Rules.masturbationFetishPlay($slaves[$i])>> - <<includeDOM App.EndWeek.Rules.masturbationDiscoversFetish($slaves[$i])>> - <</if>> - <<includeDOM App.EndWeek.Rules.masturbationDrugEffects($slaves[$i])>> - <<else>> - eventually gives in to $his urges and is @@.gold;punished@@ for illicit masturbation. - <<set $slaves[$i].trust -= 2, $slaves[$i].need -= 10>> - <</if>> - <</switch>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - <<switch $clinicDecoration>> - <<case "Eugenics" "Gender Fundamentalist" "Gender Radicalist" "Hedonistic" "Maturity Preferentialist" "Paternalist" "Repopulation Focus" "Slimness Enthusiast" "Youth Preferentialist" "Neo-Imperialist">> - The luxurious living conditions encourage $him to @@.mediumaquamarine;feel respectable.@@ $He can't help but @@.hotpink;feel you care@@ about $him as something more than just an object under such lovely treatment. - <<set $slaves[$i].trust += 3, $slaves[$i].devotion += 1>> - <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Egyptian Revivalist" "Roman Revivalist">> - The living conditions, despite their open nature, are @@.mediumaquamarine;quite relaxing.@@ $His opinion of you @@.hotpink;can only rise@@ with such lovely treatment. - <<set $slaves[$i].trust += 2, $slaves[$i].devotion += 1>> - <<case "Edo Revivalist">> - The living conditions, despite their spartan nature, are @@.mediumaquamarine;calming.@@ $His opinion of you @@.hotpink;improves@@ with such a contrast to $his usual life. - <<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>> - <<case "standard">> - The spare living conditions of $clinicName serve as a constant reminder that @@.hotpink;you only care about $his body@@ and not about $him. - <<if ($slaves[$i].trust > 20)>> - @@.gold;$He fully understands what this means for $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].devotion += 1>> - <<default>> - The spare living conditions of $clinicName serve as a constant reminder that @@.hotpink;$he is nothing more than an object@@ for your amusement. - <<if ($slaves[$i].trust > 20)>> - $He can only @@.gold;envision the horrors@@ that await $him under your care. - <<set $slaves[$i].trust -= 2>> - <</if>> - <<set $slaves[$i].devotion += 1>> - <</switch>> - <<else>> - <<switch $clinicDecoration>> - <<case "Eugenics" "Gender Fundamentalist" "Gender Radicalist" "Hedonistic" "Maturity Preferentialist" "Paternalist" "Repopulation Focus" "Slimness Enthusiast" "Youth Preferentialist" "Neo-Imperialist">> - $He loves $his stay in $clinicName and almost wishes it didn't have to end. - <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Egyptian Revivalist" "Roman Revivalist">> - The living conditions, despite their open nature, are @@.mediumaquamarine;quite relaxing.@@ $He savors $his stay at $clinicName. - <<set $slaves[$i].trust += 1>> - <<case "Edo Revivalist">> - The living conditions, despite their spartan nature, are @@.mediumaquamarine;calming.@@ $He enjoys $his stay at $clinicName. - <<set $slaves[$i].trust += 1>> - <<case "standard">> - <<if ($slaves[$i].trust > 40)>> - The spare living conditions of $clinicName @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The spare living conditions of $clinicName @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<default>> - <<if ($slaves[$i].devotion >= 80)>> - The spare living conditions of $clinicName remind $him that $he is just an object for your amusement, and that is fine with $him. - <<elseif ($slaves[$i].trust > 40)>> - The spare living conditions of $clinicName @@.gold;remind $him that $he is just an object to you.@@ - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The spare living conditions of $clinicName @@.gold;keep $him aware of $his place as your plaything.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <</switch>> - <</if>> - - /% diverges from App.EndWeek.Rules.consentRules($slaves[$i]) %/ - <<if ($universalRulesConsent == 0)>> - <<if ($slaves[$i].devotion <= 20)>> - <<if ($slaves[$i].trust > -10)>> - Under the rules, $he is free game for other slaves to molest, and lives $his life constantly @@.gold;afraid@@ of the day $he is released from $clinicName. - <<set $slaves[$i].trust -= 2>> - <<else>> - Under the rules, $he will find $himself constantly molested by other slaves once $he leaves $clinicName, but $he's already in such constant terror it that it doesn't cross $his mind. - <</if>> - <<elseif (_release.slaves === 1)>> - <<if ($slaves[$i].energy > 95)>> - Under the rules, $he's allowed to demand that other slaves get $him off, and $he @@.hotpink;eagerly takes the opportunity@@ whenever visiting slaves are present. - <<set $slaves[$i].devotion += 1>> - <<elseif ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>> - <<if ($slaves[$i].fetish == "sadist")>> - Under the rules, $he's allowed to demand that other slaves get $him off, and $he @@.hotpink;eagerly orders@@ visiting slaves to get in bed with $him. - <<set $slaves[$i].devotion += 1>> - <<elseif ($slaves[$i].fetish == "dom")>> - Under the rules, $he's allowed to demand other slaves to have sex with $him, and $he @@.hotpink;eagerly orders@@ visiting slaves to serve $his every desire. - <<set $slaves[$i].devotion += 1>> - <</if>> - <</if>> - <</if>> - <<else>> - <<if ($slaves[$i].devotion <= 20) && ($slaves[$i].devotion >= -20)>> - Since $he's low in the slave hierarchy, @@.mediumaquamarine;$he knows that $he's safe@@ from other slave's abuse while $he is recovering. - <<set $slaves[$i].trust += 1>> - <</if>> - <</if>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $his choice of entertainment, analyzing $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - $He spends $his stay with a pair of automatic breast pumps attached to $his chest. The constant stimulation will have $him milky soon enough. - <<set $slaves[$i].induceLactation += 10>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $slaves[$i].devotion > 20>> - <<if $slaves[$i].fetish == "boobs">> - <<if (canHold($slaves[$i]))>> - Whenever $he is feeling up to it, $he enjoys milking $himself by hand in lieu of using a breast pump; it's around for those times $he can't muster the energy. - <<else>> - $He spends $his stay mostly with a pair of automatic breast pumps attached to $his chest. They get $him so worked up, $he has to be asked to take breaks from using them. - <</if>> - <<else>> - $He spends $his stay with a pair of automatic breast pumps attached to $his chest. The periodic suction is both relieving and invigorating. - <</if>> - <<elseif $slaves[$i].devotion >= -20>> - <<if $slaves[$i].fetish == "boobs">> - $He spends most of $his stay with a pair of automatic breast pumps attached to $his chest. They get $him so worked up, $his time with them has to be limited. - <<else>> - $He spends $his stay with a pair of automatic breast pumps attached to $his chest. It's a little uncomfortable, but $he won't dare complain. - <</if>> - <<else>> - $He spends $his stay with a pair of automatic breast pumps locked to $his chest. $His lactation will not be allowed to wane so easily. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the Wardeness">> - <<set $slaves[$i].need -= ($flSex.size*5)>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - gets off at work, so $he doesn't feel the need for release that often. - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in $cellblockName and @@.mediumaquamarine;trusts@@ you a bit more for placing $him in charge of it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - It also helps to offset the tiring nature of $his position. - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict $his non-essential activities. - <<unset $slaveUsedRest>> - <</if>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he oversees the prisoners, analyzing $his preferences. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment from $his duties, $he spends that time massaging $his breasts and working $his nipples. - <<set $slaves[$i].induceLactation += 3>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - $He works maintaining $his lactation into $his duties; when $he feels $his chest has grown too heavy, the nearest prisoner had better have an appetite or there will be punishment. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be confined in the cellblock">> - <<set _wardenFunTimes = 0>> - <<if $flSex.has($slaves[$i].ID)>> - <<set _wardenFunTimes = random(0,5)>> - <<set $slaves[$i].need -= (10*_wardenFunTimes)>> - <</if>> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off, making the rule restricting $his sexual outlets superfluous. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off, making the rule restricting $his sexual outlets superfluous. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].relationship == -3>> - You make sure your troublesome $wife's sexual needs are handled, openly, in the middle of $cellblockName, where everyone can see, hear, and smell your dominance. - <<set $slaves[$i].need = 0>> - <<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0>> - <<run seX($PC, "penetrative", $slaves[$i], "vaginal", 7)>> - <<elseif canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>> - <<run seX($PC, "penetrative", $slaves[$i], "anal", 7)>> - <<else>> - <<run seX($PC, "penetrative", $slaves[$i], "oral", 7)>> - <</if>> - <<if canImpreg($slaves[$i], $PC) && (($slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1)||($slaves[$i].anus != 0 && $slaves[$i].mpreg == 1))>> - <<= knockMeUp($slaves[$i], 10, 0, -1, 1)>> - <<if $slaves[$i].preg > 0>> - As an added show, you @@.lime;proudly display $his positive pregnancy@@ test for all to see. - <</if>> - <</if>> - <<else>> - <<if _wardenFunTimes > 0>> - <<run SimpleSexAct.Slaves($slaves[$i], _S.Wardeness, _wardenFunTimes)>> - <<if _wardenFunTimes > 0 && canImpreg($slaves[$i], _S.Wardeness) && ($cellblockWardenCumsInside == 1 || _S.Wardeness.fetish == "mindbroken")>> - <<if (canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1)>> - <<= knockMeUp($slaves[$i], 10, 0, $WardenessID, 1)>> - <<elseif (canDoAnal($slaves[$i]) && $slaves[$i].anus > 0 && $slaves[$i].mpreg == 1)>> - <<= knockMeUp($slaves[$i], 10, 1, $WardenessID, 1)>> - <</if>> - <</if>> - <</if>> - <<if $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].need -= 20>> - <</if>> - <<else>> - <<if random(-100,0) > $slaves[$i].devotion>> - refuses to not touch $himself and is @@.gold;severely punished@@ for illicit masturbation. - <<set $slaves[$i].trust -= 2, $slaves[$i].need -= 10>> - <<else>> - @@.gold;fears@@ trying to - <<if ($slaves[$i].chastityPenis)>> - touch $himself - <<elseif canAchieveErection($slaves[$i])>> - jack off - <<else>> - touch $himself - <</if>> - to get relief when $he knows what the consequences are. - <<set $slaves[$i].trust -= 1>> - <</if>> - <</if>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<switch $cellblockDecoration>> - <<case "Degradationist">> - $He expected spare living conditions. In reality, they are far worse. @@.gold;Not one moment goes by that $he isn't filled with terror.@@ - <<set $slaves[$i].trust -= 3>> - <<case "Paternalist">> - $He expected far worse living conditions, and while still resistant, @@.hotpink;finds $himself more willing to obey.@@ - <<set $slaves[$i].devotion += 1>> - <<case "Pastoralist">> - $He expected the spare living conditions, but not the dietary supplements. $He never anticipated @@.gold;you'd go this far@@ to force $him into shape and is constantly reminded of $his changes by just how small $his cell feels with a belly full of milk. - <<set $slaves[$i].trust -= 2>> - <<case "Body Purist">> - $He expected the spare living conditions, but not the excessive hydration. $He never anticipated @@.gold;you'd go this far@@ to force $him into shape and is constantly reminded of $his changes by the fullness of $his bladder. - <<set $slaves[$i].trust -= 2>> - <<case "Hedonistic">> - $He expected the spare living conditions, but not the dietary supplements. $He never anticipated @@.gold;you'd go this far@@ to force $him into shape and is constantly reminded of $his changes by just how small $his cell feels with a belly full of food. - <<set $slaves[$i].trust -= 2>> - <<default>> - $He expected the spare living conditions, but no matter how hard $he tries to shut out $his surroundings, @@.gold;they still wear down $his will.@@ - <<set $slaves[$i].trust -= 1>> - <</switch>> - - <<if $slaves[$i].rules.lactation == "induce">> - $He spends $his sentence with a pair of automatic breast pumps locked to $his chest. If all goes well, $he'll be both reformed and lactating by $his release. - <<set $slaves[$i].induceLactation += 10>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - $He spends $his stay with a pair of automatic breast pumps locked to $his chest. - <<if $slaves[$i].devotion > 20>> - <<if $slaves[$i].fetish == "boobs">> - It's both enjoyable and what you want, so the inconvenience is easily tolerated. - <<else>> - It beats swollen breasts, so $he can't complain. - <</if>> - <<elseif $slaves[$i].devotion >= -20>> - <<if $slaves[$i].fetish == "boobs">> - It's enjoyable, but showing it will only be met with punishment. - <<else>> - It's uncomfortable, but complaints will only be met with punishment. - <</if>> - <<else>> - $His lactation will not be allowed to wane so easily. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the Attendant">> - <<set $slaves[$i].need -= ($flSex.size*3)>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in the back of $spaName and @@.mediumaquamarine;trusts@@ you a bit more for placing the well-being of your slaves in $his <<if !hasAnyArms($slaves[$i])>>figurative <</if>>hand<<if hasBothArms($slaves[$i])>>s<</if>>. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - $He finds plenty of time to relax between $his duties, or during them, should $his company be requested. - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he massages and relieves slaves, analyzing $his tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment from $his duties, $he spends that time massaging $his breasts and working $his nipples. - <<set $slaves[$i].induceLactation += 4>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - Whenever $he finds a free moment from $his duties, $he takes the time to thoroughly milk $his breasts to keep $his lactation strong for you. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "rest in the spa">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $flSex.has($slaves[$i].ID)>> - is routinely relieved of any built up tension by _S.Attendant.slaveName and $his - <<if canPenetrate($slaves[$i]) && _S.Attendant.boobs >= 500>> - luscious breasts. - <<run actX(_S.Attendant, "mammary", 14)>> - <<else>> - <<if _S.Attendant.lips > 40>> - luscious lips. - <<elseif _S.Attendant.skill.oral > 30>> - skilled tongue. - <<else>> - willing mouth. - <</if>> - <<run actX(_S.Attendant, "oral", 14)>> - /* possible cumflation code here */ - <</if>> - <<set $slaves[$i].need -= 60>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - <<switch $spaDecoration>> - <<case "Chinese Revivalist">> - The steam of the bathhouse lingers even in $his personal room and @@.hotpink;dulls $his will.@@ - <<set $slaves[$i].devotion += 1>> - <<case "Chattel Religionist">> - $He gets a space of $his own in the communal slave quarters, but the constant sexual presence of the other slaves @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<set $slaves[$i].devotion += 1>> - <<case "Degradationist">> - $He gets a little room all to $himself, allowing $him to feel self-reliant; or it would, if it didn't have numerous cameras watching $his every move. The conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<case "Asset Expansionist" "Transformation Fetishist" "Pastoralist">> - $He gets a little room all to $himself, allowing $him to feel self-reliant; or it would, if it weren't filled with constant reminders of $his changing body. The conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<default>> - $He gets a comfortable little room all to $himself, allowing $him to let down $his guard and @@.mediumaquamarine;feel self-reliant.@@ - <<set $slaves[$i].trust += 1>> - <</switch>> - <<else>> - <<switch $spaDecoration>> - <<case "Chinese Revivalist">> - The steam of the bathhouse lingers even in $his personal room and @@.hotpink;renders $him even more submissive.@@ - <<set $slaves[$i].devotion += 1>> - <<case "Chattel Religionist">> - $He likes $his personal space in $spaName, even if <<if canSmell($slaves[$i])>>it smells of<<else>>it's filled with the heat from<</if>> sex and steam. - <<case "Degradationist">> - <<if ($slaves[$i].trust > 40)>> - The invasive living conditions of $spaName @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The invasive living conditions of $spaName @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<case "Asset Expansionist" "Transformation Fetishist" "Pastoralist">> - $He likes $his little room in $spaName, <<if $slaves[$i].boobs < 10000>>even if $his boobs are too small to make the most of it<<else>>even more so, since it accommodates $his expansive bust<</if>>. - <<default>> - $He loves $his little room in $spaName. It's the perfect end to a day of relaxation. - <<set $slaves[$i].trust += 1>> - <</switch>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he mingles with other soaking slaves, analyzing $his sexual tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $AttendantID != 0>> /* Attendant milks natural lactation in order to relieve physical stress — spaReport */ - <<if $slaves[$i].rules.lactation == "induce">> - <<if canHold($slaves[$i]) && $slaves[$i].devotion >= -20>> - $He massages $his breasts while relaxing in an effort to bring in $his lactation. - <<else>> - $He tries to relax as best $he can with a pair of automatic breast pumps attached to $his chest in an attempt to induce lactation. - <</if>> - <<set $slaves[$i].induceLactation += 4>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if canHold($slaves[$i]) && ($slaves[$i].devotion >= -20 || $slaves[$i].fetish == "boobs")>> - $He massages $his breasts while relaxing to take the edge off and keep the milk flowing. - <<else>> - $He tries to relax as best $he can with a pair of automatic breast pumps stuck to $his chest, keeping $his milk flowing. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the Matron">> - <<set $slaves[$i].need -= ($flSex.size*3)>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if (_release.masturbation === 0)>> - gets off while relieving $his charges, so being forbidden from masturbation doesn't really bother $him. - <<else>> - gets off while relieving $his charges, so $he doesn't feel the need for release that often. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in the back of $nurseryName and @@.mediumaquamarine;trusts@@ you a bit more for placing the responsibility of raising $arcologies[0].name's children in $his <<if !hasAnyArms($slaves[$i])>>figurative <</if>>hand<<if hasBothArms($slaves[$i])>>s<</if>>. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he massages and relieves slaves, analyzing $his tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment from $his duties, $he spends that time massaging $his breasts and working $his nipples. - <<set $slaves[$i].induceLactation += 4>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - Whenever $he finds a free moment from $his duties, $he takes the time to thoroughly milk $his breasts to keep $his lactation strong for you. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "work as a nanny">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $flSex.has($slaves[$i].ID)>> - is routinely relieved of any built up tension by _S.Matron.slaveName and $his - <<if canPenetrate($slaves[$i]) && _S.Matron.boobs >= 500>> - luscious breasts. - <<run actX(_S.Matron, "mammary", 14)>> - <<else>> - <<if _S.Matron.lips > 40>> - luscious lips. - <<elseif _S.Matron.skill.oral > 30>> - skilled tongue. - <<else>> - willing mouth. - <</if>> - <<run actX(_S.Matron, "oral", 14)>> - /* possible cumflation code here */ - <</if>> - <<set $slaves[$i].need -= 60>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - <<switch $nurseryDecoration>> - <<case "Chinese Revivalist">> - The Oriental artwork in $his personal room reminds $him of where $he is and @@.hotpink;dulls $his will.@@ - <<set $slaves[$i].devotion += 1>> - <<case "Chattel Religionist">> - $He gets a space of $his own in the communal slave quarters, but the constant sexual presence of the other slaves @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<set $slaves[$i].devotion += 1>> - <<case "Degradationist">> - $He gets a little room all to $himself, allowing $him to feel self-reliant; or it would, if it didn't have numerous cameras watching $his every move. The conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<case "Asset Expansionist" "Transformation Fetishist" "Pastoralist">> - $He gets a little room all to $himself, allowing $him to feel self-reliant; or it would, if it weren't filled with constant reminders of $his changing body. The conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<default>> - $He gets a comfortable little room all to $himself, allowing $him to let down $his guard and @@.mediumaquamarine;feel self-reliant.@@ - <<set $slaves[$i].trust += 1>> - <</switch>> - <<else>> - <<switch $nurseryDecoration>> - <<case "Chinese Revivalist">> - The Oriental artwork in $his personal room reminds $him of $his position and @@.hotpink;renders $him even more submissive.@@ - <<set $slaves[$i].devotion += 1>> - <<case "Chattel Religionist">> - $He likes $his personal space in $nurseryName, even if it constantly reminds $him that $he is naught but a servant to the Prophet. - <<case "Degradationist">> - <<if ($slaves[$i].trust > 40)>> - The invasive living conditions of $nurseryName @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The invasive living conditions of $nurseryName @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<case "Asset Expansionist" "Transformation Fetishist" "Pastoralist">> - $He likes $his little room in $nurseryName, <<if $slaves[$i].boobs < 10000>>even if $his boobs are too small to make the most of it<<else>>even more so, since it accommodates $his expansive bust<</if>>. - <<default>> - $He loves $his little room in $nurseryName. It's the perfect end to a busy day of taking care of children. - <<set $slaves[$i].trust += 1>> - <</switch>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he mingles with other busily working slaves, analyzing $his sexual tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - /* update me, things like wet nursing and the like are important here */ - <<if $slaves[$i].rules.lactation == "induce">> - $He spends $his stay with a pair of automatic breast pumps attached to $his chest. The constant stimulation will have $him milky soon enough. - <<set $slaves[$i].induceLactation += 10>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $slaves[$i].devotion > 20>> - Milk is always needed in a nursery and $his is no exception. $He is thoroughly drained each and every day, be it by breast pump or nursing infant. - <<elseif $slaves[$i].devotion >= -20>> - Milk is always needed in a nursery and $his is no exception. $He is thoroughly drained each and every day. - <<else>> - $He spends $his stay with a pair of automatic breast pumps locked to $his chest. $His is a valuable commodity and needs to be maintained. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the Schoolteacher">> - <<set $slaves[$i].need -= ($flSex.size*10)>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if (_release.masturbation == 0)>> - gets off with $his students, so being forbidden from masturbation doesn't really bother $him. - <<else>> - gets off with $his students, so $he doesn't feel the need for release that often. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in the back of $schoolroomName and @@.mediumaquamarine;trusts@@ you a bit more for placing the future education of your slaves in $his <<if !hasAnyArms($slaves[$i])>>figurative <</if>>hand<<if hasBothArms($slaves[$i])>>s<</if>>. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - It also helps to offset the tiring nature of $his position. - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict $his non-essential activities. - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he teaches students, analyzing $his preferences. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - $His lectures frequently include demonstrations on the proper way to induce lactation. - <<set $slaves[$i].induceLactation += 5>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - $He makes sure to give a special lecture whenever $his breasts start to feel full on the proper methods to milk a $girl. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "learn in the schoolroom">> - <<if $flSex.has($slaves[$i].ID)>> - <<set $slaves[$i].need -= 30>> - <<run seX($slaves[$i], "oral", _S.Schoolteacher, "oral", 7)>> - <<if canPenetrate(_S.Schoolteacher) && $slaves[$i].boobs > 500>> - <<run seX($slaves[$i], "mammary", _S.Schoolteacher, "penetrative", 7)>> - <</if>> - <<if canDoVaginal($slaves[$i])>> - <<if $slaves[$i].vagina != 0>> - <<run seX(_S.Schoolteacher, "penetrative", $slaves[$i], "vaginal", 7)>> - <<if canImpreg($slaves[$i], _S.Schoolteacher) && ($slaves[$i].breedingMark == 0 || $propOutcome == 0 || $eugenicsFullControl == 1 || $arcologies[0].FSRestart == "unset")>> - <<= knockMeUp($slaves[$i], 5, 0, _S.Schoolteacher.ID, 1)>> - <</if>> - <</if>> - <<set $slaves[$i].need -= 10>> - <</if>> - <<if canDoAnal($slaves[$i])>> - <<if $slaves[$i].anus != 0>> - <<run seX(_S.Schoolteacher, "penetrative", $slaves[$i], "anal", 7)>> - <<if canImpreg($slaves[$i], _S.Schoolteacher) && ($slaves[$i].breedingMark == 0 || $propOutcome == 0 || $eugenicsFullControl == 1 || $arcologies[0].FSRestart == "unset")>> - <<= knockMeUp($slaves[$i], 5, 1, _S.Schoolteacher.ID, 1)>> - <</if>> - <</if>> - <<set $slaves[$i].need -= 10>> - <</if>> - <<if canPenetrate($slaves[$i])>> - <<if _S.Schoolteacher.vagina != 0>> - <<run seX(_S.Schoolteacher, "vaginal", $slaves[$i], "penetrative", 7)>> - <<elseif _S.Schoolteacher.anus != 0>> - <<run seX(_S.Schoolteacher, "anal", $slaves[$i], "penetrative", 7)>> - <</if>> - <<if canImpreg(_S.Schoolteacher, $slaves[$i]) && (_S.Schoolteacher.breedingMark == 0 || $propOutcome == 0 || $eugenicsFullControl == 1 || $arcologies[0].FSRestart == "unset")>> - <<if _S.Schoolteacher.vagina != 0 && _S.Schoolteacher.ovaries == 1>> - <<= knockMeUp(_S.Schoolteacher, 5, 0, $slaves[$i].ID, 1)>> - <<elseif _S.Schoolteacher.anus != 0 && _S.Schoolteacher.mpreg == 1>> - <<= knockMeUp(_S.Schoolteacher, 5, 1, $slaves[$i].ID, 1)>> - <</if>> - <</if>> - <<set $slaves[$i].need -= 10>> - <</if>> - <</if>> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off, making the rule restricting $his sexual outlets superfluous. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off, making the rule restricting $his sexual outlets superfluous. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off during class despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<elseif App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off during class as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off during class, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off during class, so $he doesn't feel the need to masturbate frequently. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - The reasonable living conditions allow $him to @@.mediumaquamarine;feel self-reliant.@@ - <<set $slaves[$i].trust += 1>> - <<else>> - $He likes $his personal space in the dormitory even if the other students sometimes bother $him. - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he studies, analyzing what topics $he tends to keep returning to. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - $He is taught and tested on how to properly induce lactation. - <<set $slaves[$i].induceLactation += 2>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - $He is taught and tested on how to properly manage lactation. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the Stewardess">> - <<set $slaves[$i].need -= _L.servantsQuarters*10>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if _release.masturbation === 0>> - gets off while performing $his duties, so being forbidden from masturbation doesn't really bother $him. - <<set $slaves[$i].need -= 20>> - <<else>> - gets off while performing $his duties, so $he doesn't feel the need for release that often. - <<set $slaves[$i].need -= 20>> - <</if>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room off of $servantsQuartersName and @@.mediumaquamarine;trusts@@ you a bit more for placing $him in charge of it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - It also helps to offset the tiring nature of $his position. - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict $his non-essential activities. - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he manages the servants, analyzing $his preferences. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment from $his duties, $he spends that time massaging $his breasts and working $his nipples. - <<set $slaves[$i].induceLactation += 2>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - Whenever $he finds a free moment from $his duties, $he takes the time to thoroughly milk $his breasts to keep $his lactation strong for you. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "work as a servant">> - <<set $slaves[$i].need -= $slaves.length*5>> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off at work despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<elseif App.Utils.hasNonassignmentSex($slaves[$i])>> - gets off at work as well as during $his rest time. - <<elseif _release.masturbation == 0>> - gets off at work, so being unable to touch $himself doesn't bother $him. - <<else>> - gets off at work, so being unable to sate $his urges doesn't affect $him seriously. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - <<switch $servantsQuartersDecoration>> - <<case "Degradationist">> - The abysmal living conditions @@.hotpink;force $him to get used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of how meaningless $he is.@@ - <<set $slaves[$i].trust -= 3>> - <<else>> - slavery and @@.gold;reminds $him that $his life is meaningless.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<case "Subjugationist" "Supremacist">> - The spare living conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - Every time $he has to watch another slave get beaten @@.gold;solidifies $his fears.@@ - <<set $slaves[$i].trust -= 1>> - <<case "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Edo Revivalist" "Roman Revivalist">> - The spare living conditions @@.hotpink;get $him used@@ to the routine of slavery. - <<case "Arabian Revivalist" "Egyptian Revivalist" "Neo-Imperialist">> - The spare living conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery, but the small luxuries @@.mediumaquamarine;afford $him some dignity.@@ - <<set $slaves[$i].trust += 1>> - <<else>> - slavery. - <</if>> - <<default>> - The reasonable living conditions allow $him to @@.mediumaquamarine;feel some dignity@@ after @@.hotpink;cleaning up sexual fluids and servicing slaves all day.@@ - <<set $slaves[$i].trust += 1>> - <</switch>> - <<set $slaves[$i].devotion += 1>> - <<else>> - <<switch $servantsQuartersDecoration>> - <<case "Degradationist">> - <<if ($slaves[$i].trust > 40)>> - The abysmal living conditions of $servantsQuartersName @@.gold;remind $him that $his life is absolutely meaningless to you.@@ - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].trust > 10)>> - The abysmal living conditions of $servantsQuartersName @@.gold;remind $him that $he is worthless as a person to you.@@ - <<set $slaves[$i].trust -= 2>> - <</if>> - <<case "Subjugationist" "Supremacist">> - <<if ($slaves[$i].trust > 40)>> - The spare living conditions of $servantsQuartersName @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The spare living conditions of $servantsQuartersName @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<case "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Edo Revivalist" "Roman Revivalist">> - The living conditions of $servantsQuartersName might be spare, but they are no means uncomfortable. - <<case "Arabian Revivalist" "Egyptian Revivalist" "Neo-Imperialist">> - The living conditions of $servantsQuartersName might be spare, but $he loves the little luxuries that come with them. - <<default>> - $He likes $his personal space in $servantsQuartersName's dormitory. - <</switch>> - <</if>> - <<if $slaves[$i].rules.living == "luxurious">> - They provide @@.green;satisfying rest@@ every time $he drifts off to sleep. - <<elseif $slaves[$i].rules.living == "spare">> - <<if $slaves[$i].devotion > 20 && $slaves[$i].trust <= 10>> - They don't provide much rest, however. - <<else>> - They provide meager rest, if anything. - <</if>> - <<else>> - They provide - <<if $slaves[$i].devotion > 20>> - @@.green;adequate rest@@ for a $girl that knows how to manage $his time. - <<else>> - @@.green;adequate rest,@@ but not enough for a slave lacking time management. - <</if>> - <</if>> - - <<if $slaves[$i].rules.rest == "mandatory">> - <<if ($slaves[$i].devotion <= 20)>> - Getting a day off each week @@.mediumaquamarine;builds feelings of liberty@@ a slave shouldn't have. - <<set $slaves[$i].trust += 3>> - <<else>> - $He appreciates having a weekly day off and takes it as a sign that $he has a @@.mediumaquamarine;caring <<= getWrittenTitle($slaves[$i])>>.@@ - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaveUsedRest>> - <<if $slaves[$i].rules.rest == "permissive">> - <<if ($slaves[$i].devotion <= 20)>> - $He's permitted to rest whenever $he feels even the slightest bit tired; @@.mediumaquamarine;a privilege not lost on $him.@@ - <<set $slaves[$i].trust += 2>> - <<else>> - $He @@.hotpink;likes@@ that you @@.mediumaquamarine;care enough@@ to let him rest when he gets tired. - <<set $slaves[$i].devotion += 1>> - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "restrictive">> - <<if ($slaves[$i].devotion <= -20)>> - $He's permitted to rest when fatigue sets in, but not enough to shake $his tiredness; $he feels this @@.gold;deprivation@@ is intentional. - <<set $slaves[$i].trust -= 1>> - <<elseif ($slaves[$i].devotion <= 20)>> - $He's permitted to rest when fatigue sets in, and @@.hotpink;understands@@ this is less for $his wellbeing and more to prevent $him from become unproductive. - <<set $slaves[$i].devotion += 1>> - <<else>> - $He's permitted to rest when fatigue sets in and is @@.mediumaquamarine;thankful@@ you would allow $him the privilege so that $he may serve you better. - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "cruel">> - <<if ($slaves[$i].devotion <= -20)>> - $He's @@.gold;terrified@@ that the only reason $he is given any time to rest at all is just to prolong your torment of $him. - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].devotion <= 20)>> - You work $him to the bone and only allow $him rest when on the verge of collapsing. $He @@.gold;fears@@ this @@.mediumorchid;cruelty@@ is just the beginning. - <<set $slaves[$i].trust -= 3>> - <<set $slaves[$i].devotion -= 3>> - <<else>> - Only being allowed rest when on the verge of collapsing @@.mediumorchid;shakes $his faith@@ in you a little. - <<set $slaves[$i].devotion -= 2>> - <</if>> - <</if>> - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he sees to your other slaves, analyzing $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - $He carries out $his daily tasks with a pair of automatic breast pumps attached to $his chest to help bring in $his lactation. - <<set $slaves[$i].induceLactation += 6>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain" && $servantMilkers != 1>> - $He utilizes $his lactation during $his daily tasks when needed, and if it should not be needed, spends the evenings with a pair of automatic breast pumps. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be the Milkmaid">> - <<set $slaves[$i].need -= _L.dairy*5>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if (_release.masturbation === 0)>> - gets off while performing $his duties, so being forbidden from masturbation doesn't really bother $him. - <<else>> - gets off while performing $his duties, so $he doesn't feel the need for release that often. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in $dairyName and @@.mediumaquamarine;trusts@@ you a bit more for placing $him in charge of it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - It also helps to offset the tiring nature of $his position. - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict $his non-essential activities. - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he cares for the cattle, analyzing $his preferences. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment from $his duties, $he spends that time hooked up to a milker to hasten $his milk production. - <<set $slaves[$i].induceLactation += 10>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "work in the dairy">> - <<if $dairyRestraintsSetting > 1>> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off, not that $he gets the choice. - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off, not that $he gets a choice. - <<else>> - gets off regardless of $his thoughts on the matter. - <</if>> - <<set $slaves[$i].need = 0>> - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him arousal in regards to the visual stimulation. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - <<else>> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off from being milked despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].need -= 20>> - <<elseif (_release.masturbation === 0)>> - gets off from being milked, so being forbidden to masturbate doesn't affect $him seriously. - <<set $slaves[$i].need -= 20>> - <<else>> - gets off from being milked, so $he doesn't feel the need to masturbate frequently. - <<set $slaves[$i].need -= 20>> - <</if>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - <<switch $dairyDecoration>> - <<case "Degradationist">> - The abysmal living conditions @@.hotpink;force $him to get used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware that $his fluids are more valuable than $his life.@@ - <<set $slaves[$i].trust -= 3>> - <<else>> - slavery and @@.gold;reminds $him that $he is nothing more than a cow.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].devotion += 1>> - <<case "Subjugationist" "Supremacist">> - The spare living conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<set $slaves[$i].devotion += 1>> - <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Edo Revivalist" "Egyptian Revivalist" "Roman Revivalist" "Neo-Imperialist">> - The spare living conditions and daily tasks @@.hotpink;get $him used@@ to the routine of slavery. - <<set $slaves[$i].devotion += 1>> - <<default>> - The reasonable living conditions allow $him to relax after the days work, or would if $his - <<if $slaves[$i].lactation>> - breasts<<if $slaves[$i].balls>> and<</if>> - <</if>> - <<if $slaves[$i].balls>> - balls - <</if>> - didn't ache so much, constantly reminding $him of $his role as a cow. - <<if $slaves[$i].pregKnown && $dairyPregSetting >= 1 && $slaves[$i].bellyPreg >= 1500>> - Getting comfortable - <<if $slaves[$i].bellyPreg >= 750000>> - <<set _belly = bellyAdjective($slaves[$i])>> - with a strained, _belly stomach ready to burst with contracted calves - <<elseif $slaves[$i].bellyPreg >= 600000>> - <<set _belly = bellyAdjective($slaves[$i])>> - with a constantly quivering _belly stomach filled to the brim with contracted calves - <<elseif $slaves[$i].bellyPreg >= 450000>> - <<set _belly = bellyAdjective($slaves[$i])>> - with a _belly stomach overstuffed with contracted calves - <<elseif $slaves[$i].bellyPreg >= 150000>> - with the massive bulge of $his contract pregnancy - <<elseif $slaves[$i].bellyPreg >= 120000>> - while so enormously pregnant with calves - <<elseif $slaves[$i].bellyPreg >= 10000>> - while so heavily pregnant with <<if $slaves[$i].pregType > 1>>contracted children<<else>>a contracted child<</if>> - <<elseif $slaves[$i].bellyPreg >= 5000>> - with $his contract pregnancy - <<else>> - with the slight bulge of pregnancy - <</if>> - also weighs heavily on $his - <<if $slaves[$i].bellyPreg >= 120000>> - mind, though $he often gets lost in the sensation of being so full of life. - <<else>> - mind. - <</if>> - <</if>> - <</switch>> - <<else>> - <<switch $dairyDecoration>> - <<case "Degradationist">> - <<if ($slaves[$i].trust > 40)>> - The abysmal living conditions of $dairyName @@.gold;remind $him that $his fluids are more valuable to you than $his life.@@ - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].trust > 10)>> - The abysmal living conditions of $dairyName @@.gold;remind $him that $he is worthless as a person to you@@ and forces $him to accept $he is nothing more than a lowly cow. - <<set $slaves[$i].trust -= 2>> - <</if>> - <<case "Subjugationist" "Supremacist">> - <<if ($slaves[$i].trust > 40)>> - The spare living conditions of $dairyName @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The spare living conditions of $dairyName @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Edo Revivalist" "Egyptian Revivalist" "Roman Revivalist">> - The living conditions of $dairyName might be spare, but they are by no means meant to be uncomfortable. - <<set _adequateConditions = 1>> - <<default>> - $He likes $his personal space in $dairyName's dormitory, even if it's just a stall. - <</switch>> - <</if>> - <<if $slaves[$i].rules.living == "luxurious">> - It provides a @@.green;satisfying rest@@ every time $he drifts off to sleep. - <<elseif $slaves[$i].rules.living == "spare">> - <<if $slaves[$i].devotion > 20>> - <<if _adequateConditions>> - They are @@.green;quite relaxing@@ - <<else>> - They suffice - <</if>> - for cows that know their place. - <<else>> - <<if _adequateConditions>> - They could even be considered relaxing if properly appreciated. - <<else>> - They are just barely sufficient, but only if properly made use of. - <</if>> - <</if>> - <<else>> - It provides - <<if $slaves[$i].devotion > 20>> - @@.green;more than enough rest@@ for a happy cow looking to unwind. - <<else>> - @@.green;adequate rest,@@ but only to cows capable of appreciating what they've got. - <</if>> - <</if>> - - <<if $slaves[$i].rules.rest == "mandatory">> - <<if ($slaves[$i].devotion <= 20)>> - Getting a day off each week @@.mediumaquamarine;builds feelings of liberty@@ a slave shouldn't have. - <<set $slaves[$i].trust += 3>> - <<else>> - $He appreciates having a weekly day off and takes it as a sign that $he has a @@.mediumaquamarine;caring <<= getWrittenTitle($slaves[$i])>>.@@ - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaveUsedRest>> - <<if $slaves[$i].rules.rest == "permissive">> - <<if ($slaves[$i].devotion <= 20)>> - $He's permitted to rest whenever $he feels even the slightest bit tired; @@.mediumaquamarine;a privilege not lost on $him.@@ - <<set $slaves[$i].trust += 2>> - <<else>> - $He @@.hotpink;likes@@ that you @@.mediumaquamarine;care enough@@ to let him rest when he gets tired. - <<set $slaves[$i].devotion += 1>> - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "restrictive">> - <<if ($slaves[$i].devotion <= -20)>> - $He's permitted to rest when fatigue sets in, but not enough to shake $his tiredness; $he feels this @@.gold;deprivation@@ is intentional. - <<set $slaves[$i].trust -= 1>> - <<elseif ($slaves[$i].devotion <= 20)>> - $He's permitted to rest when fatigue sets in, and @@.hotpink;understands@@ this is less for $his wellbeing and more to prevent $him from become unproductive. - <<set $slaves[$i].devotion += 1>> - <<else>> - $He's permitted to rest when fatigue sets in and is @@.mediumaquamarine;thankful@@ you would allow $him the privilege so that $he may serve you better. - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "cruel">> - <<if ($slaves[$i].devotion <= -20)>> - $He's @@.gold;terrified@@ that the only reason $he is given any time to rest at all is just to prolong your torment of $him. - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].devotion <= 20)>> - You work $him to the bone and only allow $him rest when on the verge of collapsing. $He @@.gold;fears@@ this @@.mediumorchid;cruelty@@ is just the beginning. - <<set $slaves[$i].trust -= 3>> - <<set $slaves[$i].devotion -= 3>> - <<else>> - Only being allowed rest when on the verge of collapsing @@.mediumorchid;shakes $his faith@@ in you a little. - <<set $slaves[$i].devotion -= 2>> - <</if>> - <</if>> - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he gets milked, attempting to gauge $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <</if>> - <<case "be the Farmer">> - <<set $slaves[$i].need -= _L.farmyard*5>> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if (_release.masturbation === 0)>> - gets off while performing $his duties, so being forbidden from masturbation doesn't really bother $him. - <<set $slaves[$i].need -= 20>> - <<else>> - gets off while performing $his duties, so $he doesn't feel the need for release that often. - <<set $slaves[$i].need -= 20>> - <</if>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - $He is @@.hotpink;very happy@@ with $his private room in $farmyardName and @@.mediumaquamarine;trusts@@ you a bit more for placing $him in charge of it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - - <<if $slaveUsedRest>> - $He is permitted to take short breaks throughout the week to help manage $his building exhaustion, though it does restrict impact $his effectiveness. - <<unset $slaveUsedRest>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he cares for the cattle, analyzing $his preferences. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - Whenever $he finds a free moment from $his duties, $he spends that time massaging $his breasts and working $his nipples. - <<set $slaves[$i].induceLactation += 2>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $servantMilkers == 1>> - $His duties keep $him busy, but $he <<if $slaves[$i].fetish == "boobs">>eagerly <</if>>uses the penthouse milkers whenever $he can, - <<set _milkResult = App.SlaveAssignment.getMilked($slaves[$i], 0.25)>> - giving <<= _milkResult.milk>> liters of milk over the week, which is sold for @@.yellowgreen;<<print cashFormat(_milkResult.milkSale)>>.@@ - <<else>> - Whenever $he finds a free moment from $his duties, $he takes the time to thoroughly milk $his breasts to keep $his lactation strong for you. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "work as a farmhand">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off from working as a farmhand despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].need -= 20>> - <<elseif (_release.masturbation === 0)>> - gets off from working as a farmhand, so being forbidden to masturbate doesn't affect $him seriously. - <<set $slaves[$i].need -= 20>> - <<else>> - gets off from working as a farmhand, so $he doesn't feel the need to masturbate frequently. - <<set $slaves[$i].need -= 20>> - <</if>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - <<switch $farmyardDecoration>> - <<case "Degradationist">> - The abysmal living conditions @@.hotpink;force $him to get used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware that $his work in the fields is more valuable than $his life.@@ - <<set $slaves[$i].trust -= 3>> - <<else>> - slavery and @@.gold;reminds $him that $he is nothing more than a farming tool.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].devotion += 1>> - <<case "Subjugationist" "Supremacist">> - The spare living conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<set $slaves[$i].devotion += 1>> - <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Edo Revivalist" "Egyptian Revivalist" "Neo-Imperialist">> - The spare living conditions and daily tasks @@.hotpink;get $him used@@ to the routine of slavery. - <<set $slaves[$i].devotion += 1>> - <<case "Roman Revivalist">> - $He is @@.hotpink;pleased@@ with $his cushy living arrangements, and @@.mediumaquamarine;trusts you more@@ for it. - <<set $slaves[$i].devotion += 2, $slaves[$i].trust += 2>> - <<default>> - The reasonable living conditions allow $him to relax after the days work. - <<if $slaves[$i].pregKnown && $farmyardPregSetting >= 1 && $slaves[$i].bellyPreg >= 1500>> - Getting comfortable - <<if $slaves[$i].bellyPreg >= 750000>> - <<set _belly = bellyAdjective($slaves[$i])>> - with a strained, _belly stomach ready to burst - <<elseif $slaves[$i].bellyPreg >= 600000>> - <<set _belly = bellyAdjective($slaves[$i])>> - with a constantly quivering _belly stomach filled to the brim - <<elseif $slaves[$i].bellyPreg >= 450000>> - <<set _belly = bellyAdjective($slaves[$i])>> - with a _belly stomach overstuffed - <<elseif $slaves[$i].bellyPreg >= 150000>> - with the massive bulge of $his pregnancy - <<elseif $slaves[$i].bellyPreg >= 120000>> - while so enormously pregnant - <<elseif $slaves[$i].bellyPreg >= 10000>> - while so heavily pregnant with <<if $slaves[$i].pregType > 1>>children<<else>>a child<</if>> - <<elseif $slaves[$i].bellyPreg >= 5000>> - with $his pregnancy - <<else>> - with the slight bulge of pregnancy - <</if>> - also weighs heavily on $his - <<if $slaves[$i].bellyPreg >= 120000>> - mind, though $he often gets lost in the sensation of being so full of life. - <<else>> - mind. - <</if>> - <</if>> - <</switch>> - <<else>> - <<switch $farmyardDecoration>> - <<case "Degradationist">> - <<if ($slaves[$i].trust > 40)>> - The abysmal living conditions of $farmyardName @@.gold;remind $him that $his work in the fields is more valuable to you than $his life.@@ - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].trust > 10)>> - The abysmal living conditions of $farmyardName @@.gold;remind $him that $he is worthless as a person to you@@ and forces $him to accept $he is nothing more than a lowly farmhand. - <<set $slaves[$i].trust -= 2>> - <</if>> - <<case "Subjugationist" "Supremacist">> - <<if ($slaves[$i].trust > 40)>> - The spare living conditions of $farmyardName @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The spare living conditions of $farmyardName @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<case "Arabian Revivalist" "Aztec Revivalist" "Chattel Religionist" "Chinese Revivalist" "Edo Revivalist" "Egyptian Revivalist" "Neo-Imperialist">> - The living conditions of $farmyardName might be spare, but they are by no means meant to be uncomfortable. - <<case "Roman Revivalist">> - $He is @@.hotpink;very happy@@ about $his cushy living arrangements, and @@.mediumaquamarine;trusts you all the more@@ for it. - <<set $slaves[$i].devotion += 2, $slaves[$i].trust += 2>> - <<default>> - $He likes $his personal space in $farmyardName's dormitory, even if it's just a small room. - <</switch>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he works with the crops and animals, attempting to gauge $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - $He carries out $his daily tasks with a pair of automatic breast pumps attached to $his chest to help bring in $his lactation. - <<set $slaves[$i].induceLactation += 6>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - $He carries out $his daily tasks with a pair of automatic breast pumps attached to $his chest to keep $him productive and drained. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "be your Concubine">> - <<if $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off allowing $him to focus on getting you off. - <<set $slaves[$i].need = 0>> - <<else>> - gets more of your attention each day than any other slave, leaving $him thoroughly satisfied. - <<set $slaves[$i].need = 0>> - <</if>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he amuses $himself, analyzing $his tastes. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - $He spends $his time away from you fervently working to induce lactation, eager to enjoy it with you. - <<set $slaves[$i].induceLactation += 9>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - $He doesn't need to do anything to maintain $his lactation as you personally see to it each night. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "serve in the master suite">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off. - <<set $slaves[$i].need = 0>> - <<elseif $masterSuiteUpgradeLuxury == 2 && _L.masterSuite > 3>> - never goes unsatisfied with all the action in the fuckpit. - <<set $slaves[$i].need -= 80>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off regularly despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].need -= 20>> - <<elseif (_release.masturbation === 0)>> - gets off regularly, so being forbidden to masturbate doesn't affect $him seriously. - <<set $slaves[$i].need -= 20>> - <<else>> - gets off regularly, so $he doesn't feel the need to seek relief. - <<set $slaves[$i].need -= 20>> - <</if>> - <<else>> - <<if ($slaves[$i].devotion <= 20)>> - sometimes needs a little extra attention from you, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing to your touch, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].need -= 40>> - <<else>> - sometimes needs a little extra sexual attention, not that you mind giving it to $him. - <<set $slaves[$i].need -= 40>> - <</if>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he gets off, analyzing $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - When you have the free time, you message $his breasts and work $his nipples in an effort to bring in $his lactation. - <<set $slaves[$i].induceLactation += 2>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if $slaves[$i].devotion > 20>> - <<if $slaves[$i].fetish == "boobs">> - $He puts $his breasts to work when you humor $his tastes, easily keeping $his lactation from diminishing. - <<else>> - You find ways to put $his milk to good use, and when you can't, see to it yourself that $he is kept drained and comfortable. - <</if>> - <<elseif $slaves[$i].devotion >= -20>> - <<if $slaves[$i].fetish == "boobs">> - $He responds positively to breast play in bed, assuring $his milk production isn't going anywhere. - <<else>> - You focus on $his breasts during foreplay to make sure $he keeps producing milk for you. - <</if>> - <<else>> - You make sure to see to it that $he keeps on lactating. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<case "live with your Head Girl">> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off, not that _S.HeadGirl.slaveName cares. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off, though it doesn't stop _S.HeadGirl.slaveName. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off with _S.HeadGirl.slaveName despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<set $slaves[$i].need -= 20>> - <<elseif (_release.masturbation === 0)>> - gets off with _S.HeadGirl.slaveName, so being forbidden to masturbate doesn't affect $him seriously. - <<set $slaves[$i].need -= 20>> - <<else>> - gets off with _S.HeadGirl.slaveName, so $he doesn't feel the need for release that often. - <<set $slaves[$i].need -= 20>> - <</if>> - <<else>> - either gets off with _S.HeadGirl.slaveName or gets to put up with sexual frustration. - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if ($slaves[$i].devotion <= 20)>> - $He shares a room, and sometimes bed, with _S.HeadGirl.slaveName. Your Head Girl keeps it from going to $his head, however. - <<else>> - $He loves sharing a room, and sometimes bed, with _S.HeadGirl.slaveName. - <</if>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he spends time with your Head Girl, analyzing $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - <<if _S.HeadGirl.fetish == "boobs">> - Your Head Girl enjoys playing with $his tits, making it an inevitability that $he'll begin lactating. - <<else>> - $He carries out $his daily tasks with a pair of automatic breast pumps attached to $his chest to help bring in $his lactation. - <</if>> - <<set $slaves[$i].induceLactation += 4>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain">> - <<if _S.HeadGirl.fetish == "boobs">> - Your Head Girl enjoys playing with $his tits, thoroughly draining $him of milk and encouraging $his continued lactation. - <<else>> - $He utilizes $his lactation as your Head Girl demands, and if it should not be needed, spends the evenings with a pair of automatic breast pumps. - <</if>> - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<default>> - <<if $slaves[$i].devotion < -50>> - is so unhappy that $he has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].energy <= 20>> - is frigid and has little interest in getting off<<if App.Utils.releaseRestricted($slaves[$i])>>, making the rule restricting $his sexual outlets superfluous<</if>>. - <<set $slaves[$i].need = 0>> - <<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>> - <<if ($slaves[$i].devotion <= 20)>> - gets off at work despite $his reluctance, @@.hotpink;habituating $him to sexual slavery.@@ - <<set $slaves[$i].devotion += 1>> - <<if ($slaves[$i].trust >= -20) && ($slaves[$i].devotion <= 20)>> - $He hates $himself for climaxing, and knows the mild aphrodisiacs in the food are forcing $his arousal, @@.gold;frightening $him.@@ - <<set $slaves[$i].trust -= 1>> - <</if>> - <<elseif (_release.masturbation === 0)>> - gets off at work, so being forbidden to masturbate doesn't affect $him seriously. - <<else>> - gets off at work, so $he doesn't feel the need to masturbate frequently. - <</if>> - <<set $slaves[$i].need -= 20>> - <<else>> - <<includeDOM App.SlaveAssignment.nonAssignmentRelease($slaves[$i])>> - <</if>> - - <<= App.EndWeek.Rules.speechRules($slaves[$i])>> - - <<if $slaves[$i].assignment != "be your Head Girl" && $slaves[$i].assignment != "guard you">> - <<if $roomsPopulation > $rooms>> - <<if $slaves[$i].rules.living == "luxurious">> - There are @@.yellow;too many slaves for the penthouse's individual rooms,@@ so $he moves out into the dormitory. - <<set $slaves[$i].rules.living = "normal">> - <<run penthouseCensus()>> - <</if>> - <</if>> - <</if>> - - <<if ($slaves[$i].devotion <= 20)>> - <<if ($slaves[$i].rules.living == "spare")>> - The spare living conditions @@.hotpink;get $him used@@ to the routine of - <<if ($slaves[$i].trust > 20)>> - slavery and @@.gold;keep $him aware of $his lowly place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - slavery. - <</if>> - <<set $slaves[$i].devotion += 1>> - <<elseif ($slaves[$i].rules.living == "normal")>> - The reasonable living conditions allow $him to @@.mediumaquamarine;feel self-reliant.@@ - <<set $slaves[$i].trust += 1>> - <<else>> - The luxurious living conditions encourage $him to @@.mediumaquamarine;feel respectable.@@ - <<set $slaves[$i].trust += 2>> - <</if>> - <<else>> - <<if ($slaves[$i].ID == $HeadGirlID) && ($HGSuite == 1)>> - $He is @@.hotpink;very happy@@ with $his suite and @@.mediumaquamarine;trusts@@ you a bit more for providing it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - <<elseif ($slaves[$i].ID == $BodyguardID) && ($dojo <= 1)>> - $He rarely leaves your company enough to make use of $his living area. - <<elseif ($slaves[$i].rules.living == "luxurious")>> - $He is @@.hotpink;very happy@@ with $his little room and @@.mediumaquamarine;trusts@@ you a bit more for providing it. - <<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>> - <<elseif ($slaves[$i].rules.living == "normal")>> - $He likes $his personal space in the dormitory. - <<elseif ($slaves[$i].trust > 40)>> - The spare living conditions @@.gold;remind $him not to get too comfortable@@ with $his life. - <<set $slaves[$i].trust -= 2>> - <<elseif ($slaves[$i].trust > 10)>> - The spare living conditions @@.gold;keep $him aware of $his place.@@ - <<set $slaves[$i].trust -= 1>> - <<else>> - $He's used to having only the bare minimum in terms of living conditions, so $he's not bothered by them. - <</if>> - <</if>> - <<if ["be a servant", "get milked", "please you", "serve the public", "whore", "work as a farmhand", "work a glory hole"].includes($slaves[$i].assignment)>> - <<if $slaves[$i].rules.living == "luxurious">> - <<if ($slaves[$i].devotion <= 20)>>They provide<<else>>It provides a<</if>> @@.green;satisfying rest@@ every time $he drifts off to sleep. - <<elseif $slaves[$i].rules.living == "spare">> - <<if $slaves[$i].devotion > 20 && $slaves[$i].trust <= 10>> - They don't provide much rest, however. - <<else>> - They provide meager rest, if anything, however. - <</if>> - <<else>> - <<if ($slaves[$i].devotion <= 20)>>They provide<<else>>It provides<</if>> - <<if $slaves[$i].devotion > 20>> - @@.green;adequate rest@@ for a $girl that knows how to manage $his time. - <<else>> - @@.green;adequate rest,@@ but not enough for a slave lacking time management. - <</if>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.living != "luxurious">> - <<if $dormitoryPopulation > $dormitory>> - <<set _dormPop = $dormitoryPopulation - $dormitory>> - The slave dormitory is - <<if _dormPop <= 5>> - @@.yellow;somewhat overcrowded.@@ The mild inconvenience - <<if $slaves[$i].trust > 20>> - @@.gold;reduces $his trust@@ in you a little. - <<set $slaves[$i].trust -= 2>> - <<else>> - @@.mediumorchid;lowers you@@ a little in $his opinion. - <<set $slaves[$i].devotion -= 2>> - <</if>> - <<elseif _dormPop <= 10>> - @@.yellow;badly overcrowded.@@ The constant difficulties - <<if $slaves[$i].trust > 20>> - @@.gold;reduces $his trust@@ in you - <<set $slaves[$i].trust -= 3>> - <<else>> - @@.mediumorchid;lowers you@@ in $his opinion - <<set $slaves[$i].devotion -= 3>> - <</if>> - and is @@.red;not good for $him,@@ since it's difficult to rest there. - <<run healthDamage($slaves[$i], 2)>> - <<else>> - @@.yellow;extremely overcrowded.@@ The unpleasant situation - <<if $slaves[$i].trust > 20>> - seriously @@.gold;reduces $his trust@@ in you - <<set $slaves[$i].trust -= 5>> - <<else>> - seriously @@.mediumorchid;lowers you@@ in $his opinion - <<set $slaves[$i].devotion -= 5>> - <</if>> - and is @@.red;bad for $his health.@@ - <<run healthDamage($slaves[$i], 4)>> - <</if>> - <</if>> - <</if>> - - <<if ["be a servant", "get milked", "please you", "serve the public", "whore", "work a glory hole"].includes($slaves[$i].assignment)>> - <<if $slaves[$i].rules.rest == "mandatory">> - <<if ($slaves[$i].devotion <= 20)>> - Getting a day off each week @@.mediumaquamarine;builds feelings of liberty@@ a slave shouldn't have. - <<set $slaves[$i].trust += 3>> - <<else>> - $He appreciates having a weekly day off and takes it as a sign that $he has a @@.mediumaquamarine;caring <<= getWrittenTitle($slaves[$i])>>.@@ - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaveUsedRest>> - <<if $slaves[$i].rules.rest == "permissive">> - <<if ($slaves[$i].devotion <= 20)>> - $He's permitted to rest whenever $he feels even the slightest bit tired; @@.mediumaquamarine;a privilege not lost on $him.@@ - <<set $slaves[$i].trust += 2>> - <<else>> - $He @@.hotpink;likes@@ that you @@.mediumaquamarine;care enough@@ to let him rest when he gets tired. - <<set $slaves[$i].devotion += 1>> - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "restrictive">> - <<if ($slaves[$i].devotion <= -20)>> - $He's permitted to rest when fatigue sets in, but not enough to shake $his tiredness; $he feels this @@.gold;deprivation@@ is intentional. - <<set $slaves[$i].trust -= 1>> - <<elseif ($slaves[$i].devotion <= 20)>> - $He's permitted to rest when fatigue sets in, and @@.hotpink;understands@@ this is less for $his wellbeing and more to prevent $him from become unproductive. - <<set $slaves[$i].devotion += 1>> - <<else>> - $He's permitted to rest when fatigue sets in and is @@.mediumaquamarine;thankful@@ you would allow $him the privilege so that $he may serve you better. - <<set $slaves[$i].trust += 1>> - <</if>> - <<elseif $slaves[$i].rules.rest == "cruel">> - <<if ($slaves[$i].devotion <= -20)>> - $He's @@.gold;terrified@@ that the only reason $he is given any time to rest at all is just to prolong your torment of $him. - <<set $slaves[$i].trust -= 3>> - <<elseif ($slaves[$i].devotion <= 20)>> - You work $him to the bone and only allow $him rest when on the verge of collapsing. $He @@.gold;fears@@ this @@.mediumorchid;cruelty@@ is just the beginning. - <<set $slaves[$i].trust -= 3>> - <<set $slaves[$i].devotion -= 3>> - <<else>> - Only being allowed rest when on the verge of collapsing @@.mediumorchid;shakes $his faith@@ in you a little. - <<set $slaves[$i].devotion -= 2>> - <</if>> - <</if>> - <<unset $slaveUsedRest>> - <</if>> - <</if>> - - <<= App.EndWeek.Rules.consentRules($slaves[$i])>> - - <<if ($slaves[$i].attrKnown == 0)>> - <<if ($week-$slaves[$i].weekAcquired > 4) && $slaves[$i].energy > 20>> - <<set $slaves[$i].attrKnown = 1>> - <<= capFirstChar($assistant.name)>> has been monitoring $him as $he gets off, analyzing $his sexuality. It seems $he is - <<includeDOM App.EndWeek.Rules.attractionDiscovery($slaves[$i])>> - <</if>> - <</if>> - - <<if $slaves[$i].rules.lactation == "induce">> - <<if (canHold($slaves[$i]))>> - $He is required to vigorously massage $his breasts and nipples in an effort to induce lactation. - <<else>> - $He spends $his nights with a pair of automatic breast pumps attached to $his chest in order bring in $his lactation. - <</if>> - <<set $slaves[$i].induceLactation += 4>> - <<= induceLactation($slaves[$i])>> - <<if $slaves[$i].lactation == 1>><<set $slaves[$i].rules.lactation = "maintain">><</if>> - <<elseif $slaves[$i].rules.lactation == "maintain" && ($servantMilkers != 1 || !setup.servantMilkersJobs.includes($slaves[$i].assignment))>> - $He utilizes $his lactation during $his daily tasks as needed, and when $he isn't drained well enough, spends the evenings with a pair of automatic breast pumps. - <<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>> - <</if>> - - <<= App.SlaveAssignment.rewardAndPunishment($slaves[$i])>> - <<if $subSlaves > 0 && _release.slaves == 1 && $slaves[$i].assignment != "serve your other slaves">> - <<set $slaves[$i].need -= (20*$subSlaves)>> /* make those serve your other slaves do some work for once */ - <</if>> - <</switch>> - <</if>> /* closes mindbreak exemption */ - -<</if>> /* closes Fuckdoll exemption */ diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw index 19d64cce398f7e4b015c77a060a1277f1ab8c5b5..0ea1ed2eaaefe49c2f8cfe4fc76b5d65296e5c6d 100644 --- a/src/uncategorized/spaReport.tw +++ b/src/uncategorized/spaReport.tw @@ -233,7 +233,7 @@ <br> <<= App.SlaveAssignment.choosesOwnClothes(_S.Attendant)>> <<run tired(_S.Attendant)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_S.Attendant)>> <<= App.SlaveAssignment.diet(_S.Attendant)>> <<includeDOM App.SlaveAssignment.longTermEffects(_S.Attendant)>> <<= App.SlaveAssignment.drugs(_S.Attendant)>> @@ -241,17 +241,15 @@ <<= App.SlaveAssignment.rivalries(_S.Attendant)>> <br> <<= App.SlaveAssignment.devotion(_S.Attendant)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnClothes(_S.Attendant)>> <<run tired(_S.Attendant)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules()>> <<run App.SlaveAssignment.diet(_S.Attendant)>> <<run App.SlaveAssignment.longTermEffects(_S.Attendant)>> <<run App.SlaveAssignment.drugs(_S.Attendant)>> <<run App.SlaveAssignment.relationships(_S.Attendant)>> <<run App.SlaveAssignment.rivalries(_S.Attendant)>> <<run App.SlaveAssignment.devotion(_S.Attendant)>> - <</silently>> <</if>> <</if>> @@ -342,7 +340,7 @@ <</if>> <br> <<= App.SlaveAssignment.choosesOwnClothes(_slave)>> - <<include "SA rules">> + <<includeDOM App.SlaveAssignment.rules(_slave)>> <<= App.SlaveAssignment.diet(_slave)>> <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> <<= App.SlaveAssignment.drugs(_slave)>> @@ -350,18 +348,16 @@ <<= App.SlaveAssignment.rivalries(_slave)>> <br> <<= App.SlaveAssignment.devotion(_slave)>> <<else>> - <<silently>> <<run App.SlaveAssignment.choosesOwnJob(_slave)>> <<run App.SlaveAssignment.choosesOwnClothes(_slave)>> <<run App.SlaveAssignment.rest(_slave)>> - <<include "SA rules">> + <<run App.SlaveAssignment.rules(_slave)>> <<run App.SlaveAssignment.diet(_slave)>> <<run App.SlaveAssignment.longTermEffects(_slave)>> <<run App.SlaveAssignment.drugs(_slave)>> <<run App.SlaveAssignment.relationships(_slave)>> <<run App.SlaveAssignment.rivalries(_slave)>> <<run App.SlaveAssignment.devotion(_slave)>> - <</silently>> <</if>> <</for>> <<if (_restedSlaves > 0)>>