diff --git a/src/endWeek/saServeThePublic.js b/src/endWeek/saServeThePublic.js index 30533eaa274ab0e365cad40550cc3a5b6fec9d5a..5da7e14dd04dde848ff202fac43fd95856430684 100644 --- a/src/endWeek/saServeThePublic.js +++ b/src/endWeek/saServeThePublic.js @@ -930,7 +930,7 @@ App.SlaveAssignment.serveThePublic = (function() { r += ` As a proper Japanese ${girl}, ${he} is considered extremely desirable.`; } } else if (arcology.FSChineseRevivalist !== "unset") { - if (slave.nationality === "Chinese" || slave.nationality === "Chinese Revivalist") { + if (slave.nationality === "Chinese" || slave.nationality === "Ancient Chinese Revivalist") { r += ` As a proper Chinese ${girl}, ${he} is considered extremely desirable.`; } } diff --git a/src/endWeek/saWhore.js b/src/endWeek/saWhore.js index ff56017e1924824b8906ada57ac7af6ad9ff3fb4..50ce837c429289f084b3a53a3684f589015fc253 100644 --- a/src/endWeek/saWhore.js +++ b/src/endWeek/saWhore.js @@ -1013,7 +1013,7 @@ App.SlaveAssignment.whore = (function() { r += ` As a proper Japanese ${girl}, ${he} is considered extremely desirable.`; } } else if (arcology.FSChineseRevivalist !== "unset") { - if (slave.nationality === "Chinese" || slave.nationality === "Chinese Revivalist") { + if (slave.nationality === "Chinese" || slave.nationality === "Ancient Chinese Revivalist") { r += ` As a proper Chinese ${girl}, ${he} is considered extremely desirable.`; } } diff --git a/src/events/PE/peLonelyBodyguard.js b/src/events/PE/peLonelyBodyguard.js index e147ed8ec3a16e94db555e64393a5e7c2fb2fa3b..f5d371dcdfdcb289b60e833d9c23f29872b39a88 100644 --- a/src/events/PE/peLonelyBodyguard.js +++ b/src/events/PE/peLonelyBodyguard.js @@ -12,7 +12,8 @@ App.Events.PELonelyBodyguard = class PELonelyBodyguard extends App.Events.BaseEv return [[ s => s.ID !== V.BodyguardID, s => s.relationship === 0, - s => s.devotion >= -20 + s => s.devotion >= -20, + s => V.seeIncest === 1 || !areRelated(s, S.Bodyguard) ]]; } diff --git a/src/interaction/siRecords.js b/src/interaction/siRecords.js index dc97ae8f5eafb6df7f404a33f0b5a5aed7472632..15df9d3558bf352c04fc5329c1fa6b3fe06a6f6e 100644 --- a/src/interaction/siRecords.js +++ b/src/interaction/siRecords.js @@ -251,20 +251,22 @@ App.UI.SlaveInteract.records = function(slave, refresh) { r.push("You cannot sell your last slave"); } else if (slave.origin === "You bought $him from a body dump, completely broken." && (V.week - slave.weekAcquired <= 8)) { r.push(`A discarded slave must be kept for at least two months to ensure health before being sold.`); - } else if (slave.accent > 3) { - r.push(`${His} lack of language and basic life skills is a red sign to most slave appraisers. ${He} must not act like a child to be sold without raising suspicion.`); } else { - linkArray.push( - App.UI.DOM.link( - `Sell ${him}`, - () => { - cashX(-500, "personalBusiness", slave); - }, - [], - "Sell Slave", - `Listing ${him} for sale will cost ${cashFormat(500)}` - ) - ); + if (slave.accent < 4) { + linkArray.push( + App.UI.DOM.link( + `Sell ${him}`, + () => { + cashX(-500, "personalBusiness", slave); + }, + [], + "Sell Slave", + `Listing ${him} for sale will cost ${cashFormat(500)}` + ) + ); + } else { + r.push(`${His} lack of language and basic life skills is a red sign to most slave appraisers. ${He} must not act like a child to be sold without raising suspicion.`); + } if ((V.seeAge !== 0) && (slave.indenture < 1)) { linkArray.push( App.UI.DOM.passageLink( diff --git a/src/js/releaseRules.js b/src/js/releaseRules.js index 5f4e1ee4f16df3711aa78e7f3a608870f3dd596c..0ab23091ca913840ac003803512602a45c3f3d55 100644 --- a/src/js/releaseRules.js +++ b/src/js/releaseRules.js @@ -5,6 +5,11 @@ * @returns {boolean} */ App.Utils.sexAllowed = function sexAllowed(slaveA, slaveB) { + /* absolutely no sex of any kind with relatives, if incest is prohibited by game rules */ + const related = areRelated(slaveA, slaveB); + if (V.seeIncest === 0 && related) { + return false; + } /* check most specific to least specific - master, partner, leader, family, slaves */ if (slaveA === V.PC) { return slaveB.rules.release.master === 1; @@ -16,8 +21,8 @@ App.Utils.sexAllowed = function sexAllowed(slaveA, slaveB) { return slaveA.rules.release.facilityLeader === 1; } else if (App.Utils.isDevelopmentFacilityLeader(slaveB, slaveA)) { return slaveB.rules.release.facilityLeader === 1; - } else if (areRelated(slaveA, slaveB)) { - return V.seeIncest && (slaveA.rules.release.family === 1) && (slaveB.rules.release.family === 1); + } else if (related) { + return (slaveA.rules.release.family === 1) && (slaveB.rules.release.family === 1); } else { return (slaveA.rules.release.slaves === 1) && (slaveB.rules.release.slaves === 1); }