diff --git a/src/endWeek/reports/dairyReport.js b/src/endWeek/reports/dairyReport.js index beba61e915faa744e5549f0633ccb56f51c1a9d7..78b75d9d63353f74f24a0ee70f0da9298894f467 100644 --- a/src/endWeek/reports/dairyReport.js +++ b/src/endWeek/reports/dairyReport.js @@ -8,8 +8,8 @@ App.EndWeek.dairyReport = function() { let MMWorkout = 0; const BF = App.Data.misc.bioreactorFluids; const slaves = App.Utils.sortedEmployees(App.Entity.facilities.dairy); - let DL = slaves.length; - let anusesStretched = 0, birthers = 0, births = 0, cumWeek = 0, femCumWeek = 0, FLsFetish = 0, milkWeek = 0, balltacular = 0, boobtacular = 0, careerForgotten = 0, chemMinor = 0, chemSevere = 0, desterilized = 0, hateFilled = 0, horrified = 0, intelligenceLost = 0, mindbroken = 0, profits = 0, skillsLost = 0, stupidified = 0, vaginasStretched = 0; + const DL = slaves.length; + let anusesStretched = 0, cumWeek = 0, femCumWeek = 0, FLsFetish = 0, milkWeek = 0, balltacular = 0, boobtacular = 0, careerForgotten = 0, chemMinor = 0, chemSevere = 0, desterilized = 0, hateFilled = 0, horrified = 0, intelligenceLost = 0, mindbroken = 0, skillsLost = 0, stupidified = 0, vaginasStretched = 0; let cmSlave, dsSlave, hfSlave, hrSlave, slSlave, cfSlave, stSlave, btSlave; const inflatedSlaves = App.Facilities.Dairy.inflation(); const dairySettings = V.dairyStimulatorsSetting + V.dairyFeedersSetting + V.dairyPregSetting; @@ -23,9 +23,6 @@ App.EndWeek.dairyReport = function() { V.milkmaidTrustBonus = 1; V.milkmaidDevotionThreshold = 45; V.milkmaidTrustThreshold = 35; - let He, His, he, his, him, wife, girl; - let he2, his2; - let milkResults; let growth; let cashValue; let outputMilk; @@ -42,97 +39,95 @@ App.EndWeek.dairyReport = function() { r = []; let milkmaidImpregnated = 0, milkers = 0, cummers = 0, breeders = 0, prostateStim = 0; - if (DL > 0) { - for (const slave of slaves) { - if (slave.lactation > 0) { - milkers++; - } - if (slave.balls > 0 && slave.ballType === "human") { - cummers++; + for (const slave of slaves) { + if (slave.lactation > 0) { + milkers++; + } + if (slave.balls > 0 && slave.ballType === "human") { + cummers++; + } + if (slave.bellyPreg >= 500 && V.dairyPregSetting > 0) { + breeders++; + } + if (V.milkmaidImpregnates === 1 && canPenetrate(S.Milkmaid) && S.Milkmaid.pubertyXY === 1 && !slaveResting(S.Milkmaid)) { + if (canImpreg(slave, S.Milkmaid)) { + slave.preg = 1; + slave.pregSource = V.MilkmaidID; + slave.pregKnown = 1; + slave.pregWeek = 1; + milkmaidImpregnated++; + if (slave.mpreg === 1) { + slave.counter.anal += 10; + V.analTotal += 10; + } else { + slave.counter.vaginal += 10; + V.vaginalTotal += 10; + } + slave.pregType = setPregType(slave); + WombImpregnate(slave, slave.pregType, V.MilkmaidID, 1); } - if (slave.bellyPreg >= 500 && V.dairyPregSetting > 0) { - breeders++; + } + /* how much effort the MM must take to force a slave into a stall */ + if (slave.devotion <= 20) { + MMWorkout++; + } + if (slave.trust < 20) { + MMWorkout++; + } + if (slave.muscles >= 30 || slave.muscles < -30) { + MMWorkout++; + } + if (slave.weight >= 70) { + MMWorkout++; + } + if (slave.weight >= 160) { + MMWorkout++; + } + if (slave.boobs >= 20000) { + MMWorkout++; + } + if (slave.balls >= 30) { + MMWorkout++; + } + if (slave.belly >= 5000) { + MMWorkout++; + } + if (!canMove(slave)) { // big bonus if they can't move themselves and are fat as cows + if (slave.weight >= 70) { + MMWorkout += 2; } - if (V.milkmaidImpregnates === 1 && canPenetrate(S.Milkmaid) && S.Milkmaid.pubertyXY === 1 && !slaveResting(S.Milkmaid)) { - if (canImpreg(slave, S.Milkmaid)) { - slave.preg = 1; - slave.pregSource = V.MilkmaidID; - slave.pregKnown = 1; - slave.pregWeek = 1; - milkmaidImpregnated++; - if (slave.mpreg === 1) { - slave.counter.anal += 10; - V.analTotal += 10; - } else { - slave.counter.vaginal += 10; - V.vaginalTotal += 10; - } - slave.pregType = setPregType(slave); - WombImpregnate(slave, slave.pregType, V.MilkmaidID, 1); - } + if (slave.weight >= 160) { + MMWorkout += 2; } - /* how much effort the MM must take to force a slave into a stall */ - if (slave.devotion <= 20) { - MMWorkout++; + if (slave.boobs >= 20000) { + MMWorkout += 2; } - if (slave.trust < 20) { - MMWorkout++; + if (slave.balls >= 30) { + MMWorkout += 2; } - if (slave.muscles >= 30 || slave.muscles < -30) { - MMWorkout++; + if (slave.belly >= 5000) { + MMWorkout += 2; } + } else if (!canWalk(slave)) { // smaller bonus if they are fat as cows and need assistance with moving if (slave.weight >= 70) { - MMWorkout++; + MMWorkout += 1; } if (slave.weight >= 160) { - MMWorkout++; + MMWorkout += 1; } if (slave.boobs >= 20000) { - MMWorkout++; + MMWorkout += 1; } if (slave.balls >= 30) { - MMWorkout++; + MMWorkout += 1; } if (slave.belly >= 5000) { - MMWorkout++; - } - if (!canMove(slave)) { // big bonus if they can't move themselves and are fat as cows - if (slave.weight >= 70) { - MMWorkout += 2; - } - if (slave.weight >= 160) { - MMWorkout += 2; - } - if (slave.boobs >= 20000) { - MMWorkout += 2; - } - if (slave.balls >= 30) { - MMWorkout += 2; - } - if (slave.belly >= 5000) { - MMWorkout += 2; - } - } else if (!canWalk(slave)) { // smaller bonus if they are fat as cows and need assistance with moving - if (slave.weight >= 70) { - MMWorkout += 1; - } - if (slave.weight >= 160) { - MMWorkout += 1; - } - if (slave.boobs >= 20000) { - MMWorkout += 1; - } - if (slave.balls >= 30) { - MMWorkout += 1; - } - if (slave.belly >= 5000) { - MMWorkout += 1; - } + MMWorkout += 1; } - if (V.dairyStimulatorsSetting < 2 && S.Milkmaid.dick > 4 && canPenetrate(S.Milkmaid) && prostateStim !== 1) { - if (slave.balls > 0 && slave.prostate > 0) { - prostateStim = 1; - } + } + if (V.dairyStimulatorsSetting < 2 && S.Milkmaid.dick > 4 && canPenetrate(S.Milkmaid) && prostateStim !== 1) { + if (slave.balls > 0 && slave.prostate > 0) { + prostateStim = 1; } } } @@ -209,9 +204,9 @@ App.EndWeek.dairyReport = function() { } } getSlaveStatisticData(S.Milkmaid, V.facility.dairy); - ({ + const { he, him, his, He, His, wife, girl - } = getPronouns(S.Milkmaid)); + } = getPronouns(S.Milkmaid); r.push(`${SlaveFullName(S.Milkmaid)} is serving as your Milkmaid.`); if (S.Milkmaid.relationship === -3 && S.Milkmaid.devotion > 50) { V.milkmaidDevotionBonus += 2; @@ -295,9 +290,7 @@ App.EndWeek.dairyReport = function() { V.milkmaidTrustThreshold += (5 * V.milkmaidTrustBonus); for (const slave of slaves) { if (S.Milkmaid.rivalryTarget === slave.ID) { - ({ - he2, his2 - } = getPronouns(slave).appendSuffix("2")); + const {he2} = getPronouns(slave).appendSuffix("2"); r.push(`${He} either neglects or harasses ${his} ${rivalryTerm(S.Milkmaid)}, ${slave.slaveName}, making sure ${he2} is unhappy and uncomfortable.`); slave.devotion -= 3; slave.trust -= 3; @@ -306,16 +299,12 @@ App.EndWeek.dairyReport = function() { slave.rivalry++; } } else if (S.Milkmaid.relationshipTarget === slave.ID) { - ({ - he2, his2 - } = getPronouns(slave).appendSuffix("2")); + const {he2} = getPronouns(slave).appendSuffix("2"); r.push(`${He} dotes over ${his} ${relationshipTerm(S.Milkmaid)}, ${slave.slaveName}, making sure ${he2} is happy and comfortable.`); slave.devotion++; slave.trust++; } else if (areRelated(S.Milkmaid, slave)) { - ({ - he2, his2 - } = getPronouns(slave).appendSuffix("2")); + const {he2} = getPronouns(slave).appendSuffix("2"); r.push(`${He} pays special attention to ${his} ${relativeTerm(S.Milkmaid, slave)}, ${slave.slaveName}, making sure ${he2} is well kept and happy.`); slave.trust++; } @@ -325,7 +314,7 @@ App.EndWeek.dairyReport = function() { slave.devotion += 3; slave.trust += 3; } else { - r.push(`${He} is disappointed that the well-known cow ${slave.slaveName}${(slave.lactation === 0) ? `isn't producing milk anymore` : `'s breasts have shrunken considerably from their heyday`}.`); + r.push(`${He} is disappointed that the well-known cow ${slave.slaveName}${(slave.lactation === 0) ? ` isn't producing milk anymore` : `'s breasts have shrunken considerably from their heyday`}.`); } } if (slave.prestigeDesc === "$He is remembered for winning best in show as a cockmilker.") { @@ -345,9 +334,7 @@ App.EndWeek.dairyReport = function() { } } if (slave.prestigeDesc === "$He is remembered for winning best in show as a breeder." && slave.bellyPreg >= 1500) { - ({ - he2, his2 - } = getPronouns(slave).appendSuffix("2")); + const {his2} = getPronouns(slave).appendSuffix("2"); r.push(`${He} spends extra time with ${slave.slaveName}, the well-known breeder. ${S.Milkmaid.slaveName} is fascinated by ${his2} growing pregnancy and popular womb. ${He} makes sure ${his2} belly and its occupants are nice and comfortable.`); slave.devotion += 3; slave.trust += 3; @@ -397,9 +384,6 @@ App.EndWeek.dairyReport = function() { const oldCash = V.cash; for (const slave of slaves) { - ({ - he, him, his, He, His, wife, girl - } = getPronouns(slave)); /* Special attention section */ if (slave.devotion > 50 && slave.prestige === 0) { if ( @@ -501,6 +485,9 @@ App.EndWeek.dairyReport = function() { } /* General End of Week effects */ + const milkResults = App.SlaveAssignment.getMilked(slave); + milkWeek += milkResults.milk; + cumWeek += milkResults.cum; if (V.showEWD !== 0) { const slaveEntry = App.UI.DOM.appendNewElement("div", el, '', "slave-report"); if (V.seeImages && V.seeReportImages) { @@ -515,8 +502,8 @@ App.EndWeek.dairyReport = function() { r.push(`is serving as a cow in ${V.dairyName}.`); } App.Events.addNode(slaveEntry, r, "div"); - milkResults = App.SlaveAssignment.getMilked(slave); + const {He} = getPronouns(slave); App.Events.addNode( slaveEntry, [ @@ -530,11 +517,8 @@ App.EndWeek.dairyReport = function() { } else { // discard return values silently App.SlaveAssignment.choosesOwnJob(slave); - milkResults = App.SlaveAssignment.getMilked(slave); App.SlaveAssignment.standardSlaveReport(slave, true); } - milkWeek += milkResults.milk; - cumWeek += milkResults.cum; /* Facility Specific End of Week effects */ if (slave.devotion <= 20 && slave.trust >= -20) { @@ -1153,7 +1137,7 @@ App.EndWeek.dairyReport = function() { cashX(forceNeg(Math.trunc((300 * (inflatedSlaves.cum + 8)) + random(25, 100))), "slaveAssignmentDairy"); } - profits = V.cash - oldCash; + const profits = V.cash - oldCash; r = []; if (chemSevere > 1) { @@ -1165,42 +1149,42 @@ App.EndWeek.dairyReport = function() { if (chemMinor > 1) { r.push(`${chemMinor} cows have been drugged and used long enough that they require increased curative doses, slightly reducing their output.`); } else if (chemMinor > 0) { - ({he, his} = getPronouns(cmSlave)); + const {he, his} = getPronouns(cmSlave); r.push(`One cow has been drugged and used long enough that ${he} requires increased curative doses, slightly reducing ${his} output.`); } if (desterilized > 1) { r.push(`${desterilized} cows had minor health issues preventing their fertile womb from conceiving; the issues have been resolved and they have been impregnated.`); } else if (desterilized > 0) { - ({he, his} = getPronouns(dsSlave)); + const {he, his} = getPronouns(dsSlave); r.push(`One cow had minor health issues preventing ${his} fertile womb from conceiving; they have been resolved and ${he} has been impregnated.`); } if (hateFilled > 1) { r.push(`${hateFilled} cows stopped struggling so much when fucked by the machines; it seems they have sunk into a fugue.`); } else if (hateFilled > 0) { - ({he} = getPronouns(hfSlave)); + const {he} = getPronouns(hfSlave); r.push(`One cow stopped struggling so much when fucked by the machines; it seems ${he} has sunk into a fugue.`); } if (horrified > 1) { r.push(`${horrified} cows' emotional activity dropped significantly; this indicates acceptance that they are not likely to leave ${V.dairyName}, ever again.`); } else if (horrified > 0) { - ({he} = getPronouns(hrSlave)); + const {he} = getPronouns(hrSlave); r.push(`One cow's emotional activity dropped significantly; this indicates acceptance that ${he} is not likely to leave ${V.dairyName}, ever again.`); } if (skillsLost > 1) { r.push(`${skillsLost} cows forgot skills due to their inability to focus on anything but machine rape.`); } else if (skillsLost > 0) { - ({his} = getPronouns(slSlave)); + const {his} = getPronouns(slSlave); r.push(`One cow forgot skills due to ${his} inability to focus on anything but machine rape.`); } if (careerForgotten > 1) { r.push(`${careerForgotten} cows forgot the details of their past professional lives; all they can remember now is this.`); } else if (careerForgotten > 0) { - ({he, his} = getPronouns(cfSlave)); + const {he, his} = getPronouns(cfSlave); r.push(`One cow forgot the details of ${his} past professional life; all ${he} can remember now is this.`); } @@ -1225,7 +1209,7 @@ App.EndWeek.dairyReport = function() { if (stupidified > 1) { r.push(`${stupidified} cows were so mentally dulled by use as biological factories that they were reduced to a very low level of intelligence.`); } else if (stupidified > 0) { - ({he} = getPronouns(stSlave)); + const {he} = getPronouns(stSlave); r.push(`One cow was so mentally dulled by use as biological factories that ${he} was reduced to a very low level of intelligence.`); } @@ -1244,7 +1228,7 @@ App.EndWeek.dairyReport = function() { if (balltacular > 1) { r.push(`${balltacular} cows' testicles reached the largest size drug treatments can produce; the machines will now focus on buttfucking them with extra force.`); } else if (balltacular > 0) { - ({him} = getPronouns(btSlave)); + const {him} = getPronouns(btSlave); r.push(`One cow's testicles reached the largest size drug treatments can produce; the machines will now focus on buttfucking ${him} with extra force.`); } @@ -1290,19 +1274,6 @@ App.EndWeek.dairyReport = function() { if (femCumWeek > 0) { r.push(`The machines also managed to reclaim ${commaNum(femCumWeek)} liters of salable vaginal secretions.`); } - if (births > 1) { - r.push(`Additionally, ${birthers} cows gave birth`); - if (births > birthers) { - r.push(`to a total of ${births} calves`); - } - r.push(`this week.`); - } else if (births > 0) { - r.push(`Additionally, one cow gave birth`); - if (births > birthers) { - r.push(`to a total of ${births} calves`); - } - r.push(`this week.`); - } if (V.arcologies[0].FSRestart !== "unset" && V.eugenicsFullControl !== 1) { if (V.dairyPregSetting > 0) { @@ -1325,13 +1296,13 @@ App.EndWeek.dairyReport = function() { b.whoreCosts += si.cost; b.rep += si.rep; } - b.maintenance = (State.variables.bioreactorsXY + State.variables.bioreactorsXX + State.variables.bioreactorsHerm + State.variables.bioreactorsBarren); + b.maintenance = (V.bioreactorsXY + V.bioreactorsXX + V.bioreactorsHerm + V.bioreactorsBarren); if (b.maintenance > 0) { b.maintenance *= 100; } else { b.maintenance = 0; } - b.maintenance += State.variables.dairy * State.variables.facilityCost * (1.0 + 0.2 * State.variables.dairyFeedersUpgrade + 0.1 * State.variables.dairyPregUpgrade); + b.maintenance += V.dairy * V.facilityCost * (1.0 + 0.2 * V.dairyFeedersUpgrade + 0.1 * V.dairyPregUpgrade); b.totalIncome = b.whoreIncome; b.totalExpenses = b.whoreCosts + b.maintenance; b.profit = b.totalIncome - b.totalExpenses; @@ -1395,9 +1366,7 @@ App.EndWeek.dairyReport = function() { gender = "XY"; } } - ({ - he, him, his, He, His, wife, girl - } = getPronouns(bioreactor)); + const {he, He} = getPronouns(bioreactor); const ageInWeeks = 52 * (V.retirementAge - bioreactor.physicalAge); r = []; r.push(`${SlaveFullName(bioreactor)}'s breasts,`);