From 5f706197b0173f75b64c57b87a182f4bcab42517 Mon Sep 17 00:00:00 2001 From: lowercasedonkey <lowercasedonkey@gmail.com> Date: Fri, 6 Nov 2020 18:58:43 -0500 Subject: [PATCH] inital file creation and machine conversion --- src/endWeek/reports/clubReport.js | 278 ++++++++++++++++++++++++++++ src/endWeek/reportsTW/clubReport.tw | 3 + src/uncategorized/clubReport.tw | 258 -------------------------- 3 files changed, 281 insertions(+), 258 deletions(-) create mode 100644 src/endWeek/reports/clubReport.js create mode 100644 src/endWeek/reportsTW/clubReport.tw delete mode 100644 src/uncategorized/clubReport.tw diff --git a/src/endWeek/reports/clubReport.js b/src/endWeek/reports/clubReport.js new file mode 100644 index 00000000000..4cc10a7b331 --- /dev/null +++ b/src/endWeek/reports/clubReport.js @@ -0,0 +1,278 @@ +/** + * @returns {DocumentFragment} + */ +App.EndWeek.clubReport = function() { + const el = new DocumentFragment(); + let r; + + <span id="club-stats"></span> + + _slaves = App.Utils.sortedEmployees(App.Entity.facilities.club); + _DL = _slaves.length, _SL = V.slaves.length, V.legendaryEntertainerID = 0, _FLsFetish = 0; + V.legendaryWombID = 0; + _minBonus = 50, _maxBonus = 150; + + <!-- Statistics gathering; income is rep boosts in numbers, and profit will be rep per cash unit, or cash unit per rep --> + V.facility = V.facility || {}, V.facility.club = initFacilityStatistics(V.facility.club); + + if (S.DJ) { + if (S.DJ.health.condition < -80) { + improveCondition(S.DJ, 20); + } else if (S.DJ.health.condition < -40) { + improveCondition(S.DJ, 15); + } else if (S.DJ.health.condition < 0) { + improveCondition(S.DJ, 10); + } else if (S.DJ.health.condition < 90) { + improveCondition(S.DJ, 7); + } + if (S.DJ.devotion <= 60) { + S.DJ.devotion += 5; + } + if (S.DJ.trust < 60) { + S.DJ.trust += 3; + } + if (S.DJ.fetishStrength <= 95) { + if (S.DJ.fetish !== "humiliation") { + if (fetishChangeChance(S.DJ) > random(0,100)) { + _FLsFetish = 1, S.DJ.fetishKnown = 1, S.DJ.fetish = "humiliation"; + } + } else if (S.DJ.fetishKnown === 0) { + _FLsFetish = 1, S.DJ.fetishKnown = 1; + } else { + _FLsFetish = 2, S.DJ.fetishStrength += 4; + } + } + if (S.DJ.rules.living !== "luxurious") { + S.DJ.rules.living = "luxurious"; + } + if (S.DJ.rules.rest !== "restrictive") { + S.DJ.rules.rest = "restrictive"; + } + /* Make sure we have registered living expenses as for any other slave */ + getSlaveStatisticData(S.DJ, V.facility.club); + <<setLocalPronouns S.DJ>> + + V.SlaveFullName(S.DJ) + r.push(` is performing as the DJ.`); + if (S.DJ.relationship === -3 && S.DJ.devotion > 50) { + r.push(`${He} tries ${his} best to be your energetic, cheerful ${V.wife}.`); + } + if (_FLsFetish === 1) { + r.push(`${He}'s expected to be the innovative, beautiful DJ spinning beats one minute, and come out of ${his} booth to grind on the floor the next; ${he} enjoys the interplay, and finds greater <span class="lightcoral">pleasure in exhibitionism.</span>`); + } else if ((_FLsFetish === 2)) { + r.push(`Every day ${he} gets to enjoy hundreds of stares on ${his} skin, and <span class="lightsalmon">becomes more of an exhibitionist.</span>`); + } + if (getBestVision(S.DJ) === 0) { + r.push(`${His} lack of eyesight doesn't slow ${him} down; rather, it strengthens ${his} other senses. ${His} tracks have a distinct sound, since ${he} experiences noise as ${his} sight.`); + } + if (S.DJ.skill.entertainment <= 10) { + r.push(`Though ${S.DJ.slaveName} does ${his} best to lead on the club, with ${his} lack of skill ${he} can do little.`); + } else if ((S.DJ.skill.entertainment <= 30)) { + S.DJ.slaveName's basic skills marginally <span class="green">improve</span> the atmosphere in V.clubName. + } else if ((S.DJ.skill.entertainment <= 60)) { + S.DJ.slaveName's skills <span class="green">improve</span> the atmosphere in V.clubName. + } else if ((S.DJ.skill.entertainment < 100)) { + S.DJ.slaveName's skills greatly <span class="green">improve</span> the atmosphere in V.clubName. + } else if ((S.DJ.skill.entertainment >= 100)) { + S.DJ.slaveName's mastery immensely <span class="green">improves</span> the atmosphere in V.clubName. + } + if (S.DJ.muscles > 5) && (S.DJ.muscles <= 95) { + r.push(`${His} toned body helps ${him} lead ${his} fellow club sluts by letting ${him} dance all night.`); + } + if (S.DJ.intelligence+S.DJ.intelligenceImplant > 15) { + r.push(`${He}'s smart enough to make an actual contribution to the music, greatly enhancing the entire experience.`); + } + if (S.DJ.face > 95) { + r.push(`${His} great beauty is a further draw, even when ${he}'s in ${his} DJ booth, but especially when ${he} comes out to dance.`); + } + if (setup.DJCareers.includes(S.DJ.career)) { + r.push(`${He} has musical experience from ${his} life before ${he} was a slave, a grounding that gives ${his} tracks actual depth.`); + } else if (S.DJ.skill.DJ >= V.masteredXP) { + r.push(`${He} has musical experience from working for you, giving ${his} tracks actual depth.`); + } else { + S.DJ.skill.DJ += random(1,Math.ceil((S.DJ.intelligence+S.DJ.intelligenceImplant)/15) + 8); + } + if (_DL + V.clubSlavesGettingHelp < 10) && V.DJnoSex !== 1 && !slaveResting(S.DJ) { + if (V.legendaryEntertainerID === 0) && (S.DJ.prestige === 0) && (S.DJ.skill.entertainment >= 100) && (S.DJ.devotion > 50) { + V.legendaryEntertainerID = S.DJ.ID; + } + <br> Since ${he} doesn't have enough sluts in V.clubName to make it worthwhile for ${him} to be on stage 24/7, ${he} spends ${his} extra time slutting it up ${himself}. ${He} has sex with S.DJ.sexAmount citizens, <span class="green">pleasing them immensely,</span> since it's more appealing to fuck the DJ than some club slut. + if (V.showEWD !== 0) { + <br> ${He} + V.App.SlaveAssignment.serveThePublic(S.DJ) + } else { + App.SlaveAssignment.serveThePublic(S.DJ); + } + } + if (_DL > 0) {<br><br> + } + } + + if (_DL > 0) { + _possibleBonuses = 0; + + if (_DL !== 1) {''The _DL slaves pleasing citizens in V.clubName'' + } else {''The one slave pleasing citizens in V.clubName'' + } + r.push(` worked hard to <span class="green">increase your reputation</span> this week.`); + } + + if (S.DJ) { + V.i = V.slaveIndices[V.djID]; + r.push(` /* apply following SA passages to facility leader */`); + if (V.showEWD !== 0) { + <br><br> + /* 000-250-006 */ + if (V.seeImages && V.seeReportImages) { + <div class="imageRef tinyImg"> + r.push(`${V.SlaveArt(${S.DJ}}, 0, 0)`); + </div> + } + /* 000-250-006 */ + <<includeDOM App.EndWeek.favoriteIcon(S.DJ)>> + <span class='slave-name'> + V.SlaveFullName(S.DJ)</span> is performing as the DJ in V.clubName. + <br> + r.push(`${V.App.SlaveAssignment.choosesOwnClothes(${S.DJ)}}`); + tired(S.DJ); + <<includeDOM App.SlaveAssignment.rules(S.DJ)>> + r.push(`${V.App.SlaveAssignment.diet(${S.DJ)}}`); + <<includeDOM App.SlaveAssignment.longTermEffects(S.DJ)>> + r.push(`${V.App.SlaveAssignment.drugs(${S.DJ)}}`); + r.push(`${V.App.SlaveAssignment.relationships(${S.DJ)}}`); + r.push(`${V.App.SlaveAssignment.rivalries(${S.DJ)}}`); + <br> + V.App.SlaveAssignment.devotion(S.DJ) + } else { + App.SlaveAssignment.choosesOwnClothes(S.DJ); + tired(S.DJ); + App.SlaveAssignment.rules(S.DJ); + App.SlaveAssignment.diet(S.DJ); + App.SlaveAssignment.longTermEffects(S.DJ); + App.SlaveAssignment.drugs(S.DJ); + App.SlaveAssignment.relationships(S.DJ); + App.SlaveAssignment.rivalries(S.DJ); + App.SlaveAssignment.devotion(S.DJ); + } + } + + if (_DL > 0) { + <<for _slave range _slaves>> + V.i = V.slaveIndices[_slave.ID]; + <<setLocalPronouns _slave>> + if (V.legendaryEntertainerID === 0) && (_slave.prestige === 0) && (_slave.skill.entertainment >= 100) && (_slave.devotion > 50) { + V.legendaryEntertainerID = _slave.ID; + } + if (V.legendaryWombID === 0) && (!isAmputee(_slave)) && (_slave.preg > _slave.pregData.normalBirth/1.33) && (_slave.broodmother === 0) && (_slave.eggType === "human") && (_slave.counter.births > 10) && (_slave.devotion > 50) && (_slave.prestige === 0) { + V.legendaryWombID = _slave.ID; + } + if (_slave.devotion <= 20) && (_slave.trust >= -20) { + _slave.devotion -= 5, _slave.trust -= 5; + } else if ((_slave.devotion < 45)) { + _slave.devotion += 4; + } else if ((_slave.devotion > 50)) { + _slave.devotion -= 4; + } + + if (_slave.trust < 30) { + _slave.trust += 5; + } + + if (_slave.health.condition < -80) { + improveCondition(_slave, 20); + } else if ((_slave.health.condition < -40)) { + improveCondition(_slave, 15); + } else if ((_slave.health.condition < 0)) { + improveCondition(_slave, 10); + } else if ((_slave.health.condition < 90)) { + improveCondition(_slave, 7); + } + + if (_slave.rules.living !== "normal") { + _slave.rules.living = "normal"; + } + + if (V.showEWD !== 0) { + <br><br> + /* 000-250-006 */ + if (V.seeImages && V.seeReportImages) { + <div class="imageRef tinyImg"> + r.push(`${V.SlaveArt(_slave}, 0, 0)`); + </div> + } + /* 000-250-006 */ + <<includeDOM App.EndWeek.favoriteIcon(_slave)>> + <span class='slave-name'> + V.SlaveFullName(_slave)</span> + if (_slave.choosesOwnAssignment === 2) { + r.push(`${V.App.SlaveAssignment.choosesOwnJob(_slave)}`); + } else { + r.push(`is serving in ${V.clubName}.`); + } + <br> ${He} + V.App.SlaveAssignment.serveThePublic(_slave) + <br> + r.push(`${V.App.SlaveAssignment.choosesOwnClothes(_slave)}`); + <<includeDOM App.SlaveAssignment.rules(_slave)>> + r.push(`${V.App.SlaveAssignment.diet(_slave)}`); + <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> + r.push(`${V.App.SlaveAssignment.drugs(_slave)}`); + r.push(`${V.App.SlaveAssignment.relationships(_slave)}`); + r.push(`${V.App.SlaveAssignment.rivalries(_slave)}`); + <br> + V.App.SlaveAssignment.devotion(_slave) + } else { + App.SlaveAssignment.choosesOwnJob(_slave); + App.SlaveAssignment.serveThePublic(_slave); + App.SlaveAssignment.choosesOwnClothes(_slave); + <<includeDOM App.SlaveAssignment.rules(_slave)>> + App.SlaveAssignment.diet(_slave); + App.SlaveAssignment.longTermEffects(_slave); + App.SlaveAssignment.drugs(_slave); + App.SlaveAssignment.relationships(_slave); + App.SlaveAssignment.rivalries(_slave); + App.SlaveAssignment.devotion(_slave); + } + <</for>> + <p> + r.push(`${V.App.Ads.report("club")}`); + </p> + + <!-- Record statistics gathering --> + <<script>> + r.push(`var b = State.variables.facility.club;`); + r.push(`b.whoreIncome = 0;`); + r.push(`b.customers = 0;`); + r.push(`b.whoreCosts = 0;`); + r.push(`b.rep = 0;`); + r.push(`for (var si of b.income.values()) {`); + r.push(`b.whoreIncome += si.income;`); + r.push(`b.customers += si.customers;`); + r.push(`b.whoreCosts += si.cost;`); + r.push(`b.rep += si.rep;`); + } + r.push(`b.adsCosts = State.variables.clubAdsSpending;`); + r.push(`b.maintenance = State.variables.club * State.variables.facilityCost * (1.0 + 0.2 * State.variables.clubUpgradePDAs);`); + r.push(`b.totalIncome = b.whoreIncome + b.adsIncome;`); + r.push(`b.totalExpenses = b.whoreCosts + b.adsCosts + b.maintenance;`); + r.push(`b.profit = b.totalIncome / b.totalExpenses;`); + <</script>> + if (V.clubDecoration !== "standard") { + <p> + r.push(`${V.capFirstChar(V.clubName)}'s customers enjoy <span class="green">having sex in V.clubDecoration surroundings.</span>`); + </p> + } + + <!-- Statistics output --> + <<includeDOM App.Facilities.Club.Stats(false)>> + <<timed 50ms>> + <<replace #club-stats>> + <<includeDOM App.Facilities.Club.Stats(true)>> + <</replace>> + <</timed>> + } + + if (_DL > 0 || S.DJ) { + <br><br> + } + }; diff --git a/src/endWeek/reportsTW/clubReport.tw b/src/endWeek/reportsTW/clubReport.tw new file mode 100644 index 00000000000..c345a8117e0 --- /dev/null +++ b/src/endWeek/reportsTW/clubReport.tw @@ -0,0 +1,3 @@ +:: Club Report [nobr] + +<<includeDOM App.EndWeek.clubReport()>> diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw deleted file mode 100644 index c7a90861626..00000000000 --- a/src/uncategorized/clubReport.tw +++ /dev/null @@ -1,258 +0,0 @@ -:: Club Report [nobr] - -<span id="club-stats"></span> - -<<set _slaves = App.Utils.sortedEmployees(App.Entity.facilities.club)>> -<<set _DL = _slaves.length, _SL = $slaves.length, $legendaryEntertainerID = 0, _FLsFetish = 0>> -<<set $legendaryWombID = 0>> -<<set _minBonus = 50, _maxBonus = 150>> - -<!-- Statistics gathering; income is rep boosts in numbers, and profit will be rep per cash unit, or cash unit per rep --> -<<set $facility = $facility || {}, $facility.club = initFacilityStatistics($facility.club)>> - -<<if _S.DJ>> - <<if (_S.DJ.health.condition < -80)>> - <<run improveCondition(_S.DJ, 20)>> - <<elseif _S.DJ.health.condition < -40>> - <<run improveCondition(_S.DJ, 15)>> - <<elseif _S.DJ.health.condition < 0>> - <<run improveCondition(_S.DJ, 10)>> - <<elseif _S.DJ.health.condition < 90>> - <<run improveCondition(_S.DJ, 7)>> - <</if>> - <<if _S.DJ.devotion <= 60>> - <<set _S.DJ.devotion += 5>> - <</if>> - <<if _S.DJ.trust < 60>> - <<set _S.DJ.trust += 3>> - <</if>> - <<if _S.DJ.fetishStrength <= 95>> - <<if _S.DJ.fetish != "humiliation">> - <<if fetishChangeChance(_S.DJ) > random(0,100)>> - <<set _FLsFetish = 1, _S.DJ.fetishKnown = 1, _S.DJ.fetish = "humiliation">> - <</if>> - <<elseif _S.DJ.fetishKnown == 0>> - <<set _FLsFetish = 1, _S.DJ.fetishKnown = 1>> - <<else>> - <<set _FLsFetish = 2, _S.DJ.fetishStrength += 4>> - <</if>> - <</if>> - <<if _S.DJ.rules.living != "luxurious">> - <<set _S.DJ.rules.living = "luxurious">> - <</if>> - <<if _S.DJ.rules.rest != "restrictive">> - <<set _S.DJ.rules.rest = "restrictive">> - <</if>> - /% Make sure we have registered living expenses as for any other slave %/ - <<run getSlaveStatisticData(_S.DJ, $facility.club)>> - <<setLocalPronouns _S.DJ>> - <<= SlaveFullName(_S.DJ)>> is performing as the DJ. - <<if _S.DJ.relationship == -3 && _S.DJ.devotion > 50>> - $He tries $his best to be your energetic, cheerful $wife. - <</if>> - <<if (_FLsFetish == 1)>> - $He's expected to be the innovative, beautiful DJ spinning beats one minute, and come out of $his booth to grind on the floor the next; $he enjoys the interplay, and finds greater @@.lightcoral;pleasure in exhibitionism.@@ - <<elseif (_FLsFetish == 2)>> - Every day $he gets to enjoy hundreds of stares on $his skin, and @@.lightsalmon;becomes more of an exhibitionist.@@ - <</if>> - <<if getBestVision(_S.DJ) === 0>> - $His lack of eyesight doesn't slow $him down; rather, it strengthens $his other senses. $His tracks have a distinct sound, since $he experiences noise as $his sight. - <</if>> - <<if (_S.DJ.skill.entertainment <= 10)>> - Though _S.DJ.slaveName does $his best to lead on the club, with $his lack of skill $he can do little. - <<elseif (_S.DJ.skill.entertainment <= 30)>> - _S.DJ.slaveName's basic skills marginally @@.green;improve@@ the atmosphere in $clubName. - <<elseif (_S.DJ.skill.entertainment <= 60)>> - _S.DJ.slaveName's skills @@.green;improve@@ the atmosphere in $clubName. - <<elseif (_S.DJ.skill.entertainment < 100)>> - _S.DJ.slaveName's skills greatly @@.green;improve@@ the atmosphere in $clubName. - <<elseif (_S.DJ.skill.entertainment >= 100)>> - _S.DJ.slaveName's mastery immensely @@.green;improves@@ the atmosphere in $clubName. - <</if>> - <<if (_S.DJ.muscles > 5) && (_S.DJ.muscles <= 95)>> - $His toned body helps $him lead $his fellow club sluts by letting $him dance all night. - <</if>> - <<if (_S.DJ.intelligence+_S.DJ.intelligenceImplant > 15)>> - $He's smart enough to make an actual contribution to the music, greatly enhancing the entire experience. - <</if>> - <<if (_S.DJ.face > 95)>> - $His great beauty is a further draw, even when $he's in $his DJ booth, but especially when $he comes out to dance. - <</if>> - <<if setup.DJCareers.includes(_S.DJ.career)>> - $He has musical experience from $his life before $he was a slave, a grounding that gives $his tracks actual depth. - <<elseif _S.DJ.skill.DJ >= $masteredXP>> - $He has musical experience from working for you, giving $his tracks actual depth. - <<else>> - <<set _S.DJ.skill.DJ += random(1,Math.ceil((_S.DJ.intelligence+_S.DJ.intelligenceImplant)/15) + 8)>> - <</if>> - <<if (_DL + $clubSlavesGettingHelp < 10) && $DJnoSex != 1 && !slaveResting(_S.DJ)>> - <<if ($legendaryEntertainerID == 0) && (_S.DJ.prestige == 0) && (_S.DJ.skill.entertainment >= 100) && (_S.DJ.devotion > 50)>> - <<set $legendaryEntertainerID = _S.DJ.ID>> - <</if>> - <br> Since $he doesn't have enough sluts in $clubName to make it worthwhile for $him to be on stage 24/7, $he spends $his extra time slutting it up $himself. $He has sex with _S.DJ.sexAmount citizens, @@.green;pleasing them immensely,@@ since it's more appealing to fuck the DJ than some club slut. - <<if $showEWD != 0>> - <br> $He <<= App.SlaveAssignment.serveThePublic(_S.DJ)>> - <<else>> - <<run App.SlaveAssignment.serveThePublic(_S.DJ)>> - <</if>> - <</if>> - <<if (_DL > 0)>><br><br><</if>> -<</if>> - -<<if (_DL > 0)>> - <<set _possibleBonuses = 0>> - <<if (_DL != 1)>>''The _DL slaves pleasing citizens in $clubName''<<else>>''The one slave pleasing citizens in $clubName''<</if>> worked hard to @@.green;increase your reputation@@ this week. -<</if>> - -<<if _S.DJ>> - <<set $i = $slaveIndices[$djID]>> /* apply following SA passages to facility leader */ - <<if $showEWD != 0>> - <br><br> - /* 000-250-006 */ - <<if $seeImages && $seeReportImages>> - <div class="imageRef tinyImg"> - <<= SlaveArt(_S.DJ, 0, 0)>> - </div> - <</if>> - /* 000-250-006 */ - <<includeDOM App.EndWeek.favoriteIcon(_S.DJ)>> - <span class='slave-name'><<= SlaveFullName(_S.DJ)>></span> is performing as the DJ in $clubName. - <br> - <<= App.SlaveAssignment.choosesOwnClothes(_S.DJ)>> - <<run tired(_S.DJ)>> - <<includeDOM App.SlaveAssignment.rules(_S.DJ)>> - <<= App.SlaveAssignment.diet(_S.DJ)>> - <<includeDOM App.SlaveAssignment.longTermEffects(_S.DJ)>> - <<= App.SlaveAssignment.drugs(_S.DJ)>> - <<= App.SlaveAssignment.relationships(_S.DJ)>> - <<= App.SlaveAssignment.rivalries(_S.DJ)>> - <br> <<= App.SlaveAssignment.devotion(_S.DJ)>> - <<else>> - <<run App.SlaveAssignment.choosesOwnClothes(_S.DJ)>> - <<run tired(_S.DJ)>> - <<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)>> - <</if>> -<</if>> - -<<if (_DL > 0)>> - <<for _slave range _slaves>> - <<set $i = $slaveIndices[_slave.ID]>> - <<setLocalPronouns _slave>> - <<if ($legendaryEntertainerID == 0) && (_slave.prestige == 0) && (_slave.skill.entertainment >= 100) && (_slave.devotion > 50)>> - <<set $legendaryEntertainerID = _slave.ID>> - <</if>> - <<if ($legendaryWombID == 0) && (!isAmputee(_slave)) && (_slave.preg > _slave.pregData.normalBirth/1.33) && (_slave.broodmother == 0) && (_slave.eggType == "human") && (_slave.counter.births > 10) && (_slave.devotion > 50) && (_slave.prestige == 0)>> - <<set $legendaryWombID = _slave.ID>> - <</if>> - <<if (_slave.devotion <= 20) && (_slave.trust >= -20)>> - <<set _slave.devotion -= 5, _slave.trust -= 5>> - <<elseif (_slave.devotion < 45)>> - <<set _slave.devotion += 4>> - <<elseif (_slave.devotion > 50)>> - <<set _slave.devotion -= 4>> - <</if>> - - <<if (_slave.trust < 30)>> - <<set _slave.trust += 5>> - <</if>> - - <<if (_slave.health.condition < -80)>> - <<run improveCondition(_slave, 20)>> - <<elseif (_slave.health.condition < -40)>> - <<run improveCondition(_slave, 15)>> - <<elseif (_slave.health.condition < 0)>> - <<run improveCondition(_slave, 10)>> - <<elseif (_slave.health.condition < 90)>> - <<run improveCondition(_slave, 7)>> - <</if>> - - <<if _slave.rules.living != "normal">> - <<set _slave.rules.living = "normal">> - <</if>> - - <<if $showEWD != 0>> - <br><br> - /* 000-250-006 */ - <<if $seeImages && $seeReportImages>> - <div class="imageRef tinyImg"> - <<= SlaveArt(_slave, 0, 0)>> - </div> - <</if>> - /* 000-250-006 */ - <<includeDOM App.EndWeek.favoriteIcon(_slave)>> - <span class='slave-name'><<= SlaveFullName(_slave)>></span> - <<if _slave.choosesOwnAssignment == 2>> - <<= App.SlaveAssignment.choosesOwnJob(_slave)>> - <<else>> - is serving in $clubName. - <</if>> - <br> $He <<= App.SlaveAssignment.serveThePublic(_slave)>> - <br> - <<= App.SlaveAssignment.choosesOwnClothes(_slave)>> - <<includeDOM App.SlaveAssignment.rules(_slave)>> - <<= App.SlaveAssignment.diet(_slave)>> - <<includeDOM App.SlaveAssignment.longTermEffects(_slave)>> - <<= App.SlaveAssignment.drugs(_slave)>> - <<= App.SlaveAssignment.relationships(_slave)>> - <<= App.SlaveAssignment.rivalries(_slave)>> - <br> <<= App.SlaveAssignment.devotion(_slave)>> - <<else>> - <<run App.SlaveAssignment.choosesOwnJob(_slave)>> - <<run App.SlaveAssignment.serveThePublic(_slave)>> - <<run App.SlaveAssignment.choosesOwnClothes(_slave)>> - <<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)>> - <</if>> - <</for>> - <p> - <<= App.Ads.report("club")>> - </p> - - <!-- Record statistics gathering --> - <<script>> - var b = State.variables.facility.club; - b.whoreIncome = 0; - b.customers = 0; - b.whoreCosts = 0; - b.rep = 0; - for (var si of b.income.values()) { - b.whoreIncome += si.income; - b.customers += si.customers; - b.whoreCosts += si.cost; - b.rep += si.rep; - } - b.adsCosts = State.variables.clubAdsSpending; - b.maintenance = State.variables.club * State.variables.facilityCost * (1.0 + 0.2 * State.variables.clubUpgradePDAs); - b.totalIncome = b.whoreIncome + b.adsIncome; - b.totalExpenses = b.whoreCosts + b.adsCosts + b.maintenance; - b.profit = b.totalIncome / b.totalExpenses; - <</script>> - <<if $clubDecoration != "standard">> - <p> - <<= capFirstChar($clubName)>>'s customers enjoy @@.green;having sex in $clubDecoration surroundings.@@ - </p> - <</if>> - - <!-- Statistics output --> - <<includeDOM App.Facilities.Club.Stats(false)>> - <<timed 50ms>> - <<replace #club-stats>> - <<includeDOM App.Facilities.Club.Stats(true)>> - <</replace>> - <</timed>> -<</if>> - -<<if _DL > 0 || _S.DJ>> - <br><br> -<</if>> -- GitLab