From 50d7e6082d7fa09d3d73845df114d72facd83a64 Mon Sep 17 00:00:00 2001 From: Svornost <11434-svornost@users.noreply.gitgud.io> Date: Mon, 23 Dec 2019 01:13:59 -0800 Subject: [PATCH] respect $seeIncest in utility functions and UI --- src/js/releaseRules.js | 42 ++++++++++++++++-------------- src/uncategorized/slaveInteract.tw | 12 +++++---- 2 files changed, 29 insertions(+), 25 deletions(-) diff --git a/src/js/releaseRules.js b/src/js/releaseRules.js index 8dab2f50350..2a19f47f112 100644 --- a/src/js/releaseRules.js +++ b/src/js/releaseRules.js @@ -13,9 +13,9 @@ App.Utils.sexAllowed = function sexAllowed(slaveA, slaveB) { } else if (haveRelationshipP(slaveA, slaveB)) { return (slaveA.rules.release.partner === 1) && (slaveB.rules.release.partner === 1); } else if (V.familyTesting === 0 && haveRelationP(slaveA, slaveB)) { - return (slaveA.rules.release.family === 1) && (slaveB.rules.release.family === 1); + return V.seeIncest && (slaveA.rules.release.family === 1) && (slaveB.rules.release.family === 1); } else if (V.familyTesting === 1 && areRelated(slaveA, slaveB)) { - return (slaveA.rules.release.family === 1) && (slaveB.rules.release.family === 1); + return V.seeIncest && (slaveA.rules.release.family === 1) && (slaveB.rules.release.family === 1); } else { return (slaveA.rules.release.slaves === 1) && (slaveB.rules.release.slaves === 1); } @@ -35,7 +35,7 @@ App.Utils.releaseSummaryShort = function releaseSummaryShort(slave) { if (rel.partner === 1) { ret += "P"; } - if (rel.family === 1) { + if (rel.family === 1 && V.seeIncest === 1) { ret += "F"; } if (rel.slaves === 1) { @@ -57,15 +57,16 @@ App.Utils.releaseSummaryShort = function releaseSummaryShort(slave) { */ App.Utils.releaseSummaryLong = function releaseSummaryLong(slave) { const rel = slave.rules.release; - if (rel.masturbation === 0 && rel.partner === 0 && rel.family === 0 && rel.slaves === 0 && rel.master === 0) { + const includeFamily = (rel.family === 1) && (V.seeIncest === 1); + if (rel.masturbation === 0 && rel.partner === 0 && includeFamily === 0 && rel.slaves === 0 && rel.master === 0) { return "chastity"; - } else if (rel.masturbation === 1 && rel.partner === 0 && rel.family === 0 && rel.slaves === 0 && rel.master === 0) { + } else if (rel.masturbation === 1 && rel.partner === 0 && includeFamily === 0 && rel.slaves === 0 && rel.master === 0) { return "masturbation only"; - } else if (rel.masturbation === 0 && rel.partner === 1 && rel.family === 0 && rel.slaves === 0 && rel.master === 0) { + } else if (rel.masturbation === 0 && rel.partner === 1 && includeFamily === 0 && rel.slaves === 0 && rel.master === 0) { return "partner only"; - } else if (rel.masturbation === 0 && rel.partner === 0 && rel.family === 1 && rel.slaves === 0 && rel.master === 0) { + } else if (rel.masturbation === 0 && rel.partner === 0 && includeFamily === 1 && rel.slaves === 0 && rel.master === 0) { return "family only"; - } else if (rel.masturbation === 0 && rel.partner === 0 && rel.family === 0 && rel.slaves === 0 && rel.master === 1) { + } else if (rel.masturbation === 0 && rel.partner === 0 && includeFamily === 0 && rel.slaves === 0 && rel.master === 1) { return "you only"; } else if (rel.slaves === 1) { let ret = "permissive"; @@ -73,7 +74,7 @@ App.Utils.releaseSummaryLong = function releaseSummaryLong(slave) { if (rel.partner === 0) { exceptions.push("partner"); } - if (rel.family === 0) { + if (includeFamily === 0) { exceptions.push("family"); } if (rel.master === 0) { @@ -94,7 +95,7 @@ App.Utils.releaseSummaryLong = function releaseSummaryLong(slave) { if (rel.partner === 1) { permissions.push("partner"); } - if (rel.family === 1) { + if (includeFamily === 1) { permissions.push("family"); } if (rel.master === 1) { @@ -111,28 +112,29 @@ App.Utils.releaseSummaryLong = function releaseSummaryLong(slave) { */ App.Desc.releaseDesc = function releaseDesc(slave) { const rel = slave.rules.release; + const includeFamily = (rel.family === 1) && (V.seeIncest === 1); let r = "and "; let appendFrequency = false; - if (rel.masturbation === 0 && rel.partner === 0 && rel.family === 0 && rel.slaves === 0 && rel.master === 0) { + if (rel.masturbation === 0 && rel.partner === 0 && includeFamily === 0 && rel.slaves === 0 && rel.master === 0) { r += "$he is to remain completely chaste."; - } else if (rel.masturbation === 1 && rel.partner === 0 && rel.family === 0 && rel.slaves === 0 && rel.master === 0) { + } else if (rel.masturbation === 1 && rel.partner === 0 && includeFamily === 0 && rel.slaves === 0 && rel.master === 0) { r += "$he is only allowed to masturbate"; if (slave.energy > 95) { r += ", which $he is constantly doing."; } else { r += "."; } - } else if (rel.masturbation === 0 && rel.partner === 1 && rel.family === 0 && rel.slaves === 0 && rel.master === 0) { + } else if (rel.masturbation === 0 && rel.partner === 1 && includeFamily === 0 && rel.slaves === 0 && rel.master === 0) { r += "$he is not allowed to masturbate or proposition "; if (slave.rules.relationship === "permissive" && slave.relationship >= 3) { r += `slaves other than $his ${relationshipTerm(slave)}.`; } else { r += "other slaves; $he must find sexual release in $his duties."; } - } else if (rel.masturbation === 0 && rel.partner === 0 && rel.family === 1 && rel.slaves === 0 && rel.master === 0) { + } else if (rel.masturbation === 0 && rel.partner === 0 && includeFamily === 1 && rel.slaves === 0 && rel.master === 0) { r += "$he is not allowed to masturbate. $He is only allowed to acheive sexual release with close family members,"; appendFrequency = true; - } else if (rel.masturbation === 0 && rel.partner === 0 && rel.family === 0 && rel.slaves === 0 && rel.master === 1) { + } else if (rel.masturbation === 0 && rel.partner === 0 && includeFamily === 0 && rel.slaves === 0 && rel.master === 1) { r += "$he is not allowed to masturbate. $He must find you if $he wants sexual release,"; appendFrequency = true; } else if (rel.slaves === 1) { @@ -148,11 +150,11 @@ App.Desc.releaseDesc = function releaseDesc(slave) { } const exceptPartner = (rel.partner === 0) && (slave.rules.relationship === "permissive") && (slave.relationship >= 3); - if (exceptPartner && rel.family === 0) { + if (exceptPartner && includeFamily === 0) { r += ` except for $his ${relationshipTerm(slave)} and close family members,`; } else if (exceptPartner) { r += ` except for $his ${relationshipTerm(slave)},`; - } else if (rel.family === 0) { + } else if (includeFamily === 0) { r += ` except for $his close family members,`; } @@ -165,13 +167,13 @@ App.Desc.releaseDesc = function releaseDesc(slave) { } const showPartner = (rel.partner === 1) && (slave.rules.relationship === "permissive") && (slave.relationship >= 3); - if (rel.family === 1 && showPartner) { + if (includeFamily === 1 && showPartner) { r += `have sex with $his ${relationshipTerm(slave)} and close family members,`; } else if (showPartner) { r += `fuck $his ${relationshipTerm(slave)} as much as he wants,`; - } else if (rel.family === 1 && rel.master === 1) { + } else if (includeFamily === 1 && rel.master === 1) { r += `proposition sex from $his close family members and you,`; - } else if (rel.family === 1) { + } else if (includeFamily === 1) { r += `proposition sex from $his close family members,`; } else { // should mean rel.master === 1 r += `find you for sexual relief,`; diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw index 76fe0ece46b..2c9f5b874e8 100644 --- a/src/uncategorized/slaveInteract.tw +++ b/src/uncategorized/slaveInteract.tw @@ -1563,11 +1563,13 @@ Hormones: <strong><span id="hormones"> <<link "Allow">><<set $activeSlave.rules.release.partner = 1>><<replace "#relPartner">>allowed<</replace>><</link>> | <<link "Forbid">><<set $activeSlave.rules.release.partner = 0>><<replace "#relPartner">>forbidden<</replace>><</link>> </div> - <div style="text-indent:2em"> - Sex with close family is ''<span id="relFamily"><<if $activeSlave.rules.release.family === 1>>allowed<<else>>forbidden<</if>></span>.'' - <<link "Allow">><<set $activeSlave.rules.release.family = 1>><<replace "#relFamily">>allowed<</replace>><</link>> | - <<link "Forbid">><<set $activeSlave.rules.release.family = 0>><<replace "#relFamily">>forbidden<</replace>><</link>> - </div> + <<if $seeIncest == 1>> + <div style="text-indent:2em"> + Sex with close family is ''<span id="relFamily"><<if $activeSlave.rules.release.family === 1>>allowed<<else>>forbidden<</if>></span>.'' + <<link "Allow">><<set $activeSlave.rules.release.family = 1>><<replace "#relFamily">>allowed<</replace>><</link>> | + <<link "Forbid">><<set $activeSlave.rules.release.family = 0>><<replace "#relFamily">>forbidden<</replace>><</link>> + </div> + <</if>> <div style="text-indent:2em"> Sex with other slaves is ''<span id="relSlaves"><<if $activeSlave.rules.release.slaves === 1>>allowed<<else>>forbidden<</if>></span>.'' <<link "Allow">><<set $activeSlave.rules.release.slaves = 1>><<replace "#relSlaves">>allowed<</replace>><</link>> | -- GitLab