diff --git a/js/003-data/policiesData.js b/js/003-data/policiesData.js index 1724e461df317c96bbeef91cca238254591a3cb2..de5939cdf8df054fbd2e8bba7992f21b8e101891 100644 --- a/js/003-data/policiesData.js +++ b/js/003-data/policiesData.js @@ -1127,7 +1127,7 @@ App.Data.Policies.Selection = { V.arcologies[0].FSSlimnessEnthusiastLaw === 0 && V.arcologies[0].FSHedonisticDecadenceLaw2 === 0 && V.arcologies[0].FSPhysicalIdealistLaw === 0 && - V.arcologies[0].FSGenderFundamentalist > 20 + V.arcologies[0].FSGenderRadicalist > 20 ); }, } diff --git a/src/events/RE/reNickname.js b/src/events/RE/reNickname.js index 5db2cfcb7fe0afd3166af8c274b557918ccffb5b..cbf2cc4f0eb5842e52337cbf2a21159f264d938d 100644 --- a/src/events/RE/reNickname.js +++ b/src/events/RE/reNickname.js @@ -1650,7 +1650,7 @@ App.Events.RENickname = class RENickname extends App.Events.BaseEvent { nicknameArray = ["Barely Legal"]; } } - situationDesc = `is yet underage by old world standards, and some older slaves do not let ${him} forget that.`; + situationDesc = `is still considered underage by old world standards, and some older slaves do not let ${him} forget that.`; applyDesc = `understands that far from being a mockery, your sanction has turned an intended insult into a reference to the appeal of ${his} years.`; notApplyDesc = `understands that despite ${his} young age ${he} must do ${his} best to fuck like the most veteran of whores.`; diff --git a/src/events/nonRandomEvent.js b/src/events/nonRandomEvent.js index 279e9a13162f9ecbaf085876489a60d7e8a130b7..030f53b00797033b40a7d39ad97772d2c7914ba9 100644 --- a/src/events/nonRandomEvent.js +++ b/src/events/nonRandomEvent.js @@ -151,13 +151,13 @@ App.Events.playNonrandomEvent = function() { const clearEvent = () => { V.event = null; }; if (V.event instanceof App.Events.BaseEvent) { - // we've deserialized a saved game with an event active, or a cheater has picked one, so just play it immediately + // we've deserialized a saved game with an event active, or a player has picked one, so just play it immediately V.event.execute(d); V.passageSwitchHandler = clearEvent; } else { - if (V.debugMode > 0 && V.debugModeEventSelection) { + if (V.debugMode > 0 && V.debugModeEventSelection > 0) { V.nextButton = "Refresh"; - // show all the scheduled, nonrandom, and queued events, and allow the cheater to play them in any order and skip the remainder + // show all the scheduled, nonrandom, and queued events, and allow the player to play them in any order and skip the remainder App.UI.DOM.appendNewElement("h2", d, "Scheduled and Nonrandom Events"); App.UI.DOM.appendNewElement("div", d, "These scheduled and nonrandom events still need to play this week, in this order."); App.UI.DOM.appendNewElement("div", d, "WARNING: playing certain scheduled events out of order, or skipping them, can break your game! Be careful!", ["note", "warning"]); diff --git a/src/events/scheduled/seWedding.js b/src/events/scheduled/seWedding.js index ba2a0a2cc854bdb0a5a97c818e22fddfd8cece94..7992d3ec2f9c12f8fb25845fc729717a52cb31d8 100644 --- a/src/events/scheduled/seWedding.js +++ b/src/events/scheduled/seWedding.js @@ -22,8 +22,11 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { const { HeC, - heC, hisC, himC, wivesC + heC, hisC, himC } = getPronouns(solo ? slave1 : {pronoun: App.Data.Pronouns.Kind.plural}).appendSuffix("C"); // "C" is for collective. Used for flexibility in scenes that may have just one slave, or more than one. "she/they bow before you." + const wivesC = solo ? + getPronouns(slave1).wife : + getPronouns({pronoun: App.Data.Pronouns.Kind.plural}).wives; const belly = bellyAdjective(slave1); const ML = V.marrying.length; @@ -770,7 +773,7 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { r.push(`You'll fuck them repeatedly over the next few days, ensuring`); if (brides.every(b => b.devotion < -20)) { r.push(`impregnation, despite their protests.`); - } else if (brides.some(b => b)) { + } else if (brides.some(b => b.devotion < -20)) { const lowDevNames = brides .filter(slave => slave.devotion < -20) .map(slave => slave.slaveName); @@ -1628,7 +1631,7 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { const r = []; let _c = 0; let _h = 0; - r.push(`You also proclaim your new slave ${wives} ${namesString} ${V.PC.slaveSurname}.`); + r.push(`You also proclaim your new slave ${wivesC} ${namesString} ${V.PC.slaveSurname}.`); for (const slave of brides) { _c += 1; if (canHear(slave)) { @@ -1637,9 +1640,9 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { } r.push(`The new Mrs. ${V.PC.slaveSurname}${(_c > 1) ? `s` : ``}`); if (_h > 0) { - r.push((_c === 1) ? `hear` : `hears`); + r.push((_c === 1) ? `hears` : `hear`); } else { - r.push((_c === 1) ? `understand` : `understands`); + r.push((_c === 1) ? `understands` : `understand`); } r.push(`this, of course, and`); const nameCheck = !solo && brides.every(b => b.slaveSurname !== V.PC.slaveSurname); @@ -1657,7 +1660,7 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { let meanwhile; for (const slave of brides) { const {he, his, him} = getPronouns(slave); - if (_c > 1 && slave.slaveSurname !== V.PC.slaveSurname) { + if (slave.slaveSurname !== V.PC.slaveSurname) { if (!meanwhile) { r.push(slave.slaveName); } else { @@ -1665,41 +1668,26 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { } meanwhile = true; if (slave.fetish === "mindbroken") { - if (_c < 1) { - r.push(slave.slaveName); - } - r.push(`shows no reaction. Like many things, names mean nothing to ${him} now. Your guests, on the other hand, appreciate the gift.`); + r.push(`${slave.slaveName} shows no reaction. Like many things, names mean nothing to ${him} now. Your guests, on the other hand, appreciate the gift.`); } else if (slave.devotion + slave.trust >= 175) { - if (_c < 1) { - r.push(slave.slaveName); - } if (V.weddingPlanned === 3) { r.push(`breaks down again. Not only is ${he} to be blessed with your child, but ${he}'s to take your surname as well.`); } else { r.push(`breaks down again; it's like a dream come true.`); } } else if (slave.devotion < -20 && slave.trust > 20) { - if (_c < 1) { - r.push(slave.slaveName); - } if (V.weddingPlanned === 3) { r.push(`scoffs audibly. Just another burden for ${him} to carry; like the child soon to be growing in ${his} womb.`); } else { r.push(`scoffs audibly; just another burden for ${him} to carry.`); } } else if (slave.devotion < -20) { - if (_c < 1) { - r.push(slave.slaveName); - } if (V.weddingPlanned === 3) { r.push(`breaks down again. Not only are you binding ${him} to you with your child, but with your name as well.`); } else { r.push(`breaks down again; this is nothing more than another unwanted link to you.`); } } else { - if (_c < 1) { - r.push(slave.slaveName); - } r.push(`nods acceptingly. Your will is ${his} will, after all.`); } } @@ -1755,7 +1743,7 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { function ringCeremony() { const r = []; - if (brides.every(b => hasAnyArms(b))) { + if (!solo && brides.every(b => hasAnyArms(b))) { r.push(`on each slave's`); if (brides.every((b) => b.devotion < -20 && b.trust <= 20)) { r.push(`trembling`); @@ -1766,9 +1754,9 @@ App.Events.SEWedding = class SEWedding extends App.Events.BaseEvent { for (const slave of brides) { const {he} = getPronouns(slave); if (!hasAnyArms(slave)) { - r.push(`on a cord around ${slave.slaveName}'s neck, since ${he} lacks fingers to wear it on`); + ring.push(`on a cord around ${slave.slaveName}'s neck, since ${he} lacks fingers to wear it on`); } else { - r.push(`on ${slave.slaveName}'s ${(slave.devotion < -20 && slave.trust <= 20) ? `trembling ` : ``}finger`); + ring.push(`on ${slave.slaveName}'s ${(slave.devotion < -20 && slave.trust <= 20) ? `trembling ` : ``}middle finger`); } } r.push(`${toSentence(ring, " and another ring ")}.`); diff --git a/src/facilities/incubator/incubatorInteract.js b/src/facilities/incubator/incubatorInteract.js index 9b57a3fe331332addaf70a257e3c0ce089afaf21..d5b12f2cf04d824b4dd2d60642932a62a84182ef 100644 --- a/src/facilities/incubator/incubatorInteract.js +++ b/src/facilities/incubator/incubatorInteract.js @@ -1566,6 +1566,7 @@ App.UI.incubator = function() { function refresh() { jQuery(settingsContent).empty().append(tankSettings()); jQuery(introSpan).empty().append(intro()); + jQuery(tanksContent).empty().append(tankBabies()); } } diff --git a/src/facilities/surgery/surgeryPassageStructural.js b/src/facilities/surgery/surgeryPassageStructural.js index ec79ab27381b82cdd64d1187148169a716b17ed9..d8e9f58d21d1d9820837339598d577821240908e 100644 --- a/src/facilities/surgery/surgeryPassageStructural.js +++ b/src/facilities/surgery/surgeryPassageStructural.js @@ -236,7 +236,7 @@ App.UI.surgeryPassageStructural = function(slave, cheat = false) { } else if (slave.heightImplant >= 1) { if (slave.height < (Height.mean(slave) + 15) && V.surgeryUpgrade === 1) { linkArray.push(makeLink( - "Advanced height gain surger", + "Advanced height gain surgery", "height", increaseHeight )); diff --git a/src/gui/Encyclopedia/encyclopediaBeingInCharge.js b/src/gui/Encyclopedia/encyclopediaBeingInCharge.js index 1ecaad5891f0851a62cbb19beca7430c8e98bf59..a8c11fcbbd9207d71fb5c45b815c9656c77e4dfb 100644 --- a/src/gui/Encyclopedia/encyclopediaBeingInCharge.js +++ b/src/gui/Encyclopedia/encyclopediaBeingInCharge.js @@ -138,7 +138,7 @@ App.Encyclopedia.addArticle("Rules Assistant", function() { r = []; r.push(App.Encyclopedia.topic("Applying a rule to specific assignments")); - r.push("You can apply a rule only to slaves on individual assignments by selecting them under <span class='encyclopedia interaction'>Apply to assignments</span>. For example a rule can give aphrodisiacs to slaves on whoring assignments. <span class='note'>This is mutually exclusive to automatically giving an assignment to slaves.</span>"); + r.push("You can apply a rule only to slaves on individual assignments by selecting them under <span class='encyclopedia interaction'>Apply to assignments.</span> For example a rule can give aphrodisiacs to slaves on whoring assignments. <span class='note'>This is mutually exclusive to automatically giving an assignment to slaves.</span>"); App.Events.addParagraph(f, r); r = []; diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js index 4b25cc9b20f798f5867c6a854a266f1ff53e3cec..8f8b3753175ea67c8ebd662ef01d7a52776e979b 100644 --- a/src/js/rulesAssistantOptions.js +++ b/src/js/rulesAssistantOptions.js @@ -1972,11 +1972,11 @@ App.RA.options = (function() { ]; super("Collar", items); - const niceCollars = isItemAccessible.array(App.Data.slaveWear.collar, (c) => c.harsh); + const niceCollars = isItemAccessible.array(App.Data.slaveWear.collar, (c) => !c.harsh); niceCollars.sort(function(a, b) { if (a[0] < b[0]) { return -1; } if (a[0] > b[0]) { return 1; } return 0; }); this._nice = new ListSubSection(this, "Nice", niceCollars); - const harshCollars = isItemAccessible.array(App.Data.slaveWear.collar, (c) => !c.harsh); + const harshCollars = isItemAccessible.array(App.Data.slaveWear.collar, (c) => c.harsh); harshCollars.sort(function(a, b) { if (a[0] < b[0]) { return -1; } if (a[0] > b[0]) { return 1; } return 0; }); this._harsh = new ListSubSection(this, "Harsh", harshCollars);