diff --git a/js/003-data/gameVariableData.js b/js/003-data/gameVariableData.js index a8fa870372d6394584635531672a165f11f900d3..207fddc4451aa4dbd20dc43dada88b15f1d5fa72 100644 --- a/js/003-data/gameVariableData.js +++ b/js/003-data/gameVariableData.js @@ -700,8 +700,6 @@ App.Data.resetOnNGPlus = { pregInventorID: 0, pregInventions: 0, - legendaryWombID: 0, - FSAnnounced: 0, FSGotRepCredits: 0, FSCreditCount: 5, diff --git a/src/endWeek/reports/brothelReport.js b/src/endWeek/reports/brothelReport.js index a75dad38462f363b2a5a0448c67eb87a6975755e..b3d899cb9dd500dafa7995dd0fb804a8eb280764 100644 --- a/src/endWeek/reports/brothelReport.js +++ b/src/endWeek/reports/brothelReport.js @@ -9,7 +9,6 @@ App.EndWeek.brothelReport = function() { const slaves = App.Utils.sortedEmployees(App.Entity.facilities.brothel); const SL = slaves.length; let profits = 0; - V.legendaryWombID = 0; // Statistics gathering V.facility = V.facility || {}; @@ -293,10 +292,6 @@ App.EndWeek.brothelReport = function() { } let oldCash = V.cash; for (const slave of App.SlaveAssignment.reportSlaves(slaves)) { - 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; - } - /* Perform facility based rule changes */ improveCondition(slave, healthBonus); slave.aphrodisiacs = aphrodisiacs; diff --git a/src/endWeek/reports/clubReport.js b/src/endWeek/reports/clubReport.js index de05d196f863b7e036e4fa760ed21594f0373154..007d0a48c5f579c57cef8a99f5b4f7012a2ffc1b 100644 --- a/src/endWeek/reports/clubReport.js +++ b/src/endWeek/reports/clubReport.js @@ -6,7 +6,6 @@ App.EndWeek.clubReport = function() { let r; const slaves = App.Utils.sortedEmployees(App.Entity.facilities.club); - V.legendaryWombID = 0; // 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 || {}; @@ -165,9 +164,6 @@ App.EndWeek.clubReport = function() { if (slaves.length > 0) { for (const slave of App.SlaveAssignment.reportSlaves(slaves)) { - 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; diff --git a/src/events/RE/reLegendaryWomb.js b/src/events/RE/reLegendaryWomb.js new file mode 100644 index 0000000000000000000000000000000000000000..4208298cd4a9088731966f5d75a59b6eeb9bca61 --- /dev/null +++ b/src/events/RE/reLegendaryWomb.js @@ -0,0 +1,110 @@ +App.Events.RELegendaryWomb = class RELegendaryWomb extends App.Events.BaseEvent { + actorPrerequisites() { + return [[ + (s) => s.devotion > 50, + (s) => s.trust > 50, + (s) => s.broodmother === 0, + (s) => s.eggType === "human", + (s) => s.counter.births > 10, + (s) => s.slave.preg > s.pregData.normalBirth / 1.33, + (s) => s.bellyPreg >= 14000, + (s) => [Job.WHORE, Job.BROTHEL, Job.PUBLIC, Job.CLUB].includes(s.assignment), + isAmputee + ]]; + } + + execute(node) { + V.nextButton = "Continue"; + V.nextLink = "RIE Eligibility Check"; + const slave = getSlave(this.actors[0]); + let r = []; + + const { + He, + he, his, him + } = getPronouns(slave); + + App.Events.drawEventArt(node, slave); + + slave.devotion += 4; + + + r.push( + App.UI.DOM.slaveDescriptionDialog(slave), + `is an incredible mother. ${He}'s given birth to numbers that would have been considered absurd in the days when drug treatments were limited by consent. A nascent organization will be holding a pageant for pregnant slaves tomorrow, and since they're aware you keep breeders, they've sent you an invitation to enter a heavily pregnant slave to be judged.` + ); + + App.Events.addParagraph(node, r); + r = []; + + r.push(`This is a rare opportunity. The idea of a pregnancy pageant isn't new but it is undeniably going to attract attention, so the pageant is likely to draw some serious press. Were ${slave.slaveName} to win, ${he} would probably be remembered for a long time as a special mother.`); + + const cashSmall = 5000; + const cashLarge = 10000; + const choices = []; + choices.push(new App.Events.Result(`Fairly enter ${him} in the pregnancy pageant`, enterFairly)); + if (V.cash > cashSmall) { + choices.push(new App.Events.Result(`Spend ${cashFormat(cashSmall)} bribing the judges`, bribeLow)); + } else { + choices.push(new App.Events.Result(null, null, `You do not have enough cash to bribe the judges`)); + } + if (V.cash > cashLarge) { + choices.push(new App.Events.Result(`Spend ${cashFormat(cashLarge)} bribing the judges and sabotaging the competition`, bribeHigh)); + } else { + choices.push(new App.Events.Result(null, null, `You do not have enough cash to bribe the judges and sabotage the competition`)); + } + App.Events.addResponses(node, choices); + + function enterFairly() { + const frag = new DocumentFragment(); + let r = []; + if (random(1, 100) > 90) { + r.push(`${slave.slaveName} is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. It's likely there was some bribery behind the scenes, but ${his} heavy belly and creative positions win the day. Against all odds ${he} is named best in show, and will be <span class="green">remembered</span> as a breeder of the highest pedigree. As ${his} owner, your reputation has <span class="green">also increased.</span>`); + repX(500, "event", slave); + slave.prestige = 1; + slave.prestigeDesc = "$He is remembered for winning best in show as a breeder."; + V.trinkets.push(`a best in show ribbon awarded to ${slave.slaveName} as a breeder`); + } else { + r.push(`${slave.slaveName} is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. It's likely there was some bribery behind the scenes, and it is fatal to ${his} chances of winning. Though ${his} pregnant body is the most impressive on display, another slaveowner who was more open-handed with the judges took best in show. The public is impressed with ${slave.slaveName}'s reproductive capability anyway; as you are ${his} owner, your reputation has <span class="green">increased</span> a little.`); + repX(500, "event", slave); + } + App.Events.addParagraph(frag, r); + return frag; + } + + function bribeLow() { + const frag = new DocumentFragment(); + let r = []; + cashX(-cashSmall, "event", slave); + repX(500, "event", slave); + if (random(1, 100) > 50) { + r.push(`${slave.slaveName} is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. Several of the judges cannot resist giving you a wink as they look ${him} over. ${slave.slaveName} is unsurprisingly named best in show, and will be <span class="prestigious">remembered</span> as a breeder of the highest pedigree. As ${his} owner, your reputation has <span class="reputation inc">also increased.</span>`); + slave.prestige = 1; + slave.prestigeDesc = "$He is remembered for winning best in show as a breeder."; + V.trinkets.push(`a best in show ribbon awarded to ${slave.slaveName} as a breeder`); + } else { + r.push(`${slave.slaveName} is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. Several of the judges cannot resist giving you a wink as they look ${him} over, but others look disapprovingly at them; it seems some of your competitors also forwarded money to the committee. After furious wrangling, ${slave.slaveName} loses to another mother. The public is impressed with ${slave.slaveName}'s reproductive capability anyway; as you are ${his} owner, your reputation has <span class="reputation inc">increased</span> a little.`); + } + App.Events.addParagraph(frag, r); + return frag; + } + + function bribeHigh() { + const frag = new DocumentFragment(); + let r = []; + cashX(-cashLarge, "event", slave); + if (random(1, 100) > 10) { + r.push(`${slave.slaveName} is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. After ${he}'s put through ${his} paces, the most unfortunate series of accidents somehow befalls ${his} fellow mothers. One is taken ill, another seems drugged, and another went into labor and gave birth, disqualifying her. ${slave.slaveName} is unsurprisingly named best in show, and will be <span class="prestigious">remembered</span> as a breeder of the highest pedigree. As ${his} owner, your reputation has <span class="reputation inc">also increased.</span>`); + repX(500, "event", slave); + slave.prestige = 1; + slave.prestigeDesc = "$He is remembered for winning best in show as a breeder."; + V.trinkets.push(`a best in show ribbon awarded to ${slave.slaveName} as a breeder`); + } else { + r.push(`${slave.slaveName} is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. You are surprised to see that the judging committee has been changed at the last minute. They choose another breeder as best in show. There are persistent <span class="reputation dec">rumors</span> after the show that there was an absolute massacre of firings at the dairy organization headquarters the night before the show after it was discovered that someone, widely thought to be you, had been corrupting the judges.`); + repX(-100, "event", slave); + } + App.Events.addParagraph(frag, r); + return frag; + } + } +}; diff --git a/src/js/eventSelectionJS.js b/src/js/eventSelectionJS.js index 057130cdc7ed62ab32ec84b2049014f99256b80c..1010b6a391c0a347aad8aa5d66ec86d7c389b742 100644 --- a/src/js/eventSelectionJS.js +++ b/src/js/eventSelectionJS.js @@ -1084,24 +1084,6 @@ if(eventSlave.drugs === "breast injections") { } } - if (eventSlave.prestige === 0 && eventSlave.assignment !== Job.QUARTER) { - if (eventSlave.devotion > 50) { - if (eventSlave.trust > 50) { - if (eventSlave.bellyPreg >= 14000) { - if (eventSlave.broodmother === 0) { - if (eventSlave.counter.births > 10) { - if (eventSlave.assignment === Job.WHORE || eventSlave.assignment === Job.PUBLIC) { - if (!isAmputee(eventSlave)) { - V.events.push("RE legendary womb"); - } - } - } - } - } - } - } - } - if (eventSlave.relationship === 4) { if (eventSlave.devotion > 20) { if (eventSlave.trust > 20) { diff --git a/src/pregmod/reLegendaryWomb.tw b/src/pregmod/reLegendaryWomb.tw deleted file mode 100644 index b96de8ce5eb8c1c3b3aaa072665aa7cacfc562fa..0000000000000000000000000000000000000000 --- a/src/pregmod/reLegendaryWomb.tw +++ /dev/null @@ -1,79 +0,0 @@ -:: RE legendary womb [nobr] - -<<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check", $activeSlave = ($legendaryFacility == 1) ? getSlave($legendaryWombID) : $eventSlave>> - -<<if (ndef $activeSlave)>> /* not found — reset variable and stop event */ - <<set $legendaryWombID = 0>> - <<goto "RIE Eligibility Check">> -<<else>> - -<<run App.Utils.setLocalPronouns($activeSlave)>> -<<set $activeSlave.devotion += 4>> - -<<= App.UI.slaveDescriptionDialog($activeSlave)>> is an incredible mother. $He's given birth to numbers that would have been considered absurd in the days when drug treatments were limited by consent. A nascent organization will be holding a pageant for pregnant slaves tomorrow, and since they're aware you keep breeders, they've sent you an invitation to enter a heavily pregnant slave to be judged. - -<br><br> - -This is a rare opportunity. The idea of a pregnancy pageant isn't new but it is undeniably going to attract attention, so the pageant is likely to draw some serious press. Were $activeSlave.slaveName to win, $he would probably be remembered for a long time as a special mother. - -<br><br> - -<span id="result"> -<<link "Fairly enter $him in the pregnancy pageant">> - <<if random(1,100) > 90>> - <<replace "#result">> - $activeSlave.slaveName is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. It's likely there was some bribery behind the scenes, but $his heavy belly and creative positions win the day. Against all odds $he is named best in show, and will be @@.green;remembered@@ as a breeder of the highest pedigree. As $his owner, your reputation has @@.green;also increased.@@ - <<run repX(500, "event", $activeSlave)>> - <<set $activeSlave.prestige = 1>> - <<set $activeSlave.prestigeDesc = "$He is remembered for winning best in show as a breeder.">> - <<set $desc = "a best in show ribbon awarded to " + $activeSlave.slaveName + " as a breeder">> - <<set $trinkets.push($desc)>> - <</replace>> - <<else>> - <<replace "#result">> - $activeSlave.slaveName is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. It's likely there was some bribery behind the scenes, and it is fatal to $his chances of winning. Though $his pregnant body is the most impressive on display, another slaveowner who was more open-handed with the judges took best in show. The public is impressed with $activeSlave.slaveName's reproductive capability anyway; as you are $his owner, your reputation has @@.green;increased@@ a little. - <<run repX(500, "event", $activeSlave)>> - <</replace>> - <</if>> -<</link>> -<br><<link "Spend <<print cashFormat(5000)>> bribing the judges">> - <<if random(1,100) > 50>> - <<replace "#result">> - $activeSlave.slaveName is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. Several of the judges cannot resist giving you a wink as they look $him over. $activeSlave.slaveName is unsurprisingly named best in show, and will be @@.green;remembered@@ as a breeder of the highest pedigree. As $his owner, your reputation has @@.green;also increased.@@ - <<run cashX(-5000, "event", $activeSlave)>> - <<run repX(500, "event", $activeSlave)>> - <<set $activeSlave.prestige = 1>> - <<set $activeSlave.prestigeDesc = "$He is remembered for winning best in show as a breeder.">> - <<set $desc = "a best in show ribbon awarded to " + $activeSlave.slaveName + " as a breeder">> - <<set $trinkets.push($desc)>> - <</replace>> - <<else>> - <<replace "#result">> - $activeSlave.slaveName is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. Several of the judges cannot resist giving you a wink as they look $him over, but others look disapprovingly at them; it seems some of your competitors also forwarded money to the committee. After furious wrangling, $activeSlave.slaveName loses to another mother. The public is impressed with $activeSlave.slaveName's reproductive capability anyway; as you are $his owner, your reputation has @@.green;increased@@ a little. - <<run cashX(-5000, "event", $activeSlave)>> - <<run repX(500, "event", $activeSlave)>> - <</replace>> - <</if>> -<</link>> -<br><<link "Spend <<print cashFormat(10000)>> bribing the judges and sabotaging the competition">> - <<if random(1,100) > 10>> - <<replace "#result">> - $activeSlave.slaveName is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. After $he's put through $his paces, the most unfortunate series of accidents somehow befalls $his fellow mothers. One is taken ill, another seems drugged, and another went into labor and gave birth, disqualifying her. $activeSlave.slaveName is unsurprisingly named best in show, and will be @@.green;remembered@@ as a breeder of the highest pedigree. As $his owner, your reputation has @@.green;also increased.@@ - <<run cashX(-10000, "event", $activeSlave)>> - <<run repX(500, "event", $activeSlave)>> - <<set $activeSlave.prestige = 1>> - <<set $activeSlave.prestigeDesc = "$He is remembered for winning best in show as a breeder.">> - <<set $desc = "a best in show ribbon awarded to " + $activeSlave.slaveName + " as a breeder">> - <<set $trinkets.push($desc)>> - <</replace>> - <<else>> - <<replace "#result">> - $activeSlave.slaveName is shown in public, closely inspected by the judging committee, and then asked to demonstrate how to pleasure a man while so heavily pregnant. You are surprised to see that the judging committee has been changed at the last minute. They choose another breeder as best in show. There are persistent @@.red;rumors@@ after the show that there was an absolute massacre of firings at the dairy organization headquarters the night before the show after it was discovered that someone, widely thought to be you, had been corrupting the judges. - <<run cashX(-10000, "event", $activeSlave)>> - <<run repX(-100, "event", $activeSlave)>> - <</replace>> - <</if>> -<</link>> -</span> - -<</if>> /* closes validity check */ diff --git a/src/uncategorized/randomNonindividualEvent.tw b/src/uncategorized/randomNonindividualEvent.tw index 504f3ec3690564566b3d659e3c4452285c46b3c1..20a6b70faac569ec1fb276c7573d8eb6e7570845 100644 --- a/src/uncategorized/randomNonindividualEvent.tw +++ b/src/uncategorized/randomNonindividualEvent.tw @@ -30,9 +30,6 @@ <</if>> <<set $legendaryFacility = 1>> - <<if $legendaryWombID != 0>> - <<set $events.push("RE legendary womb")>> - <</if>> <<if $seeCats != 0>> <<if ($projectN.status > 4)>> <<set $events.push("RE sos assassin")>>