diff --git a/src/events/RESS/cockfeederResistance.js b/src/events/RESS/cockfeederResistance.js index cf15c66a2b84d8cc27ba176971aee5184727d252..f09461c11002ce1d4518e05250188592c4b09a55 100644 --- a/src/events/RESS/cockfeederResistance.js +++ b/src/events/RESS/cockfeederResistance.js @@ -45,7 +45,7 @@ App.Events.RESSCockFeederResistance = class RESSCockFeederResistance extends App t = []; t.push(`${He} turns to you as you enter, and ${canSee(eventSlave) ? "seeing" : "realizing"} that it's you, ${he}`); - if(canTalk(eventSlave)) { + if (canTalk(eventSlave)) { t.push(`mumbles unhappily, "Plea${s}e, ${Master}, plea${s}e, can I ju${s}t eat normally for one day? Thi${s} i${s}, um, kind of gro${ss}."`); } else { t.push(`uses hesitant gestures to beg you to let ${him} eat normally today. ${His} hand${hasBothArms(eventSlave) ? "s become" : " becomes"} vehement when it comes to the phallus in ${his} face, which ${he} apparently finds disgusting.`); diff --git a/src/events/RESS/escapee.js b/src/events/RESS/escapee.js index 5e7ec27c9f295a48745d778dcaae07c5303c3e3e..87a53cb7dfa5799dc796ade6226f35c061b8615a 100644 --- a/src/events/RESS/escapee.js +++ b/src/events/RESS/escapee.js @@ -75,7 +75,7 @@ App.Events.RESSEscapee = class RESSEscapee extends App.Events.BaseEvent { ? new App.Events.Result("Mute the would-be escapee", mute) : new App.Events.Result() ) - ] : [] + ] : [] ) ]); @@ -92,7 +92,7 @@ App.Events.RESSEscapee = class RESSEscapee extends App.Events.BaseEvent { } function confine() { - t= []; + t = []; t.push(`You order ${eventSlave.slaveName} confined until further notice. ${eventSlave.slaveName} is <span class="hotpink">a little crushed</span> by ${his} failure to escape. However, every single one of your other slaves not already obedient to you is slightly <span class="orangered">encouraged in their trust that you won't hurt them</span> by this moderate punishment of an escape attempt.`); @@ -104,7 +104,7 @@ App.Events.RESSEscapee = class RESSEscapee extends App.Events.BaseEvent { } function flog() { - t= []; + t = []; t.push(`Lesser whippings are usually performed by binding a slave's hands and then securing them to the ceiling so that ${he} will dance titillatingly when struck. This is not such a beating. You tie ${eventSlave.slaveName} to a wall by ${his} wrists and ankles and flog ${him} with workmanlike thoroughness${eventSlave.pregKnown === 1 ? `, making sure to avoid accidentally ending ${his} pregnancy` : ""}. ${He} passes from angry struggles to agonized sobbing and finally to bloody, exhausted weeping before you untie ${his} now-limp form and apply first aid. ${eventSlave.slaveName}'s rebelliousness is <span class="gold">dulled by the experience,</span> and ${his} <span class="red">health is damaged.</span> Furthermore, every single one of your other slaves not already obedient to you is <span class="gold">frightened</span> by the example set.`); @@ -116,7 +116,7 @@ App.Events.RESSEscapee = class RESSEscapee extends App.Events.BaseEvent { } function clip() { - t= []; + t = []; t.push(`The simple thing to do would be to sedate ${eventSlave.slaveName} and haul ${him} to the remote surgery for ${his} punishment. That would deny ${him} the added weight of terror, however, and would stop your other slaves from learning by the sight of it. So, you restrain ${him}, pronounce judgment, and drag ${his} struggling, weeping form through the penthouse to the surgery. ${eventSlave.slaveName} is <span class="mediumorchid">saddened</span> and <span class="gold">frightened</span> by this punishment, and ${his} <span class="red">health is damaged</span> by the surgery. Every single one of your other slaves with any resistance left in them is <span class="gold">sensibly restrained</span> from trying such rash acts.`); @@ -130,7 +130,7 @@ App.Events.RESSEscapee = class RESSEscapee extends App.Events.BaseEvent { } function amputate() { - t= []; + t = []; t.push(`The simple thing to do would be to sedate ${eventSlave.slaveName} and haul ${him} to the remote surgery for ${his} punishment. That would deny ${him} the added weight of terror, however, and would stop your other slaves from learning by the sight of it. So, you restrain ${him}, pronounce judgment, and drag ${his} struggling, weeping form through the penthouse to the surgery. ${eventSlave.slaveName} is <span class="mediumorchid">filled with implacable hatred</span> by this terrible punishment, and ${his} <span class="red">health is damaged</span> by the major surgery. However, every single one of your other slaves not already obedient to you is <span class="gold">utterly terrified</span> by the example set.`); @@ -145,7 +145,7 @@ App.Events.RESSEscapee = class RESSEscapee extends App.Events.BaseEvent { } function blind() { - t= []; + t = []; t.push(`The simple thing to do would be to sedate ${eventSlave.slaveName} and haul ${him} to the remote surgery for ${his} punishment. That would deny ${him} the added weight of terror, however, and would stop your other slaves from learning by the sight of it. So, you restrain ${him}, pronounce judgment, and drag ${his} struggling, weeping form through the penthouse to the surgery. You make sure to point out all the things ${he}'ll never get to see again. ${eventSlave.slaveName} is <span class="mediumorchid">filled with implacable hatred</span> by this terrible punishment, and ${his} <span class="red">health is slightly damaged</span> by the surgery. However, every single one of your other slaves not already obedient to you is <span class="gold">utterly terrified</span> by the example set.`); @@ -159,7 +159,7 @@ App.Events.RESSEscapee = class RESSEscapee extends App.Events.BaseEvent { } function mute() { - t= []; + t = []; t.push(`The simple thing to do would be to sedate ${eventSlave.slaveName} and haul ${him} to the remote surgery for ${his} punishment. That would deny ${him} the added weight of terror, however, and would stop your other slaves from learning by the sight of it. So, you restrain ${him}, pronounce judgment, and drag ${his} struggling, protesting form through the penthouse to the surgery. ${He} is allowed one last chance to verbally resist you, plead with you, and finally to beg with you, all in vain. ${eventSlave.slaveName} is <span class="mediumorchid">filled with hatred</span> and <span class="gold">terror</span> by this harsh punishment, and ${his} <span class="red">health is slightly damaged</span> by the surgery. However, every single one of your other slaves not already obedient to you is <span class="hotpink">terrified</span> by the example set.`); diff --git a/src/events/RESS/suppositoryResistance.js b/src/events/RESS/suppositoryResistance.js index dca8214a470ced67a70e1dac166c5a0334610805..e30e952568ecdb264be35982ccb4c852c3ac1f68 100644 --- a/src/events/RESS/suppositoryResistance.js +++ b/src/events/RESS/suppositoryResistance.js @@ -55,7 +55,7 @@ App.Events.RESSSuppositoryResistance = class RESSSuppositoryResistance extends A t = []; t.push(`${He} turns to you as you enter, and ${canSee(eventSlave) ? "seeing" : "realizing"} that it's you, ${he}`); - if(canTalk(eventSlave)) { + if (canTalk(eventSlave)) { t.push(`mumbles unhappily, "Plea${s}e, ${Master}, can I ju${s}t take a ${sh}ot? A${ss}rape from, you know, people, i${s}, um, bad enough."`); } else { t.push(`uses hesitant gestures to beg you to let ${him} take ${his} drugs normally. ${He} tries to use gestures to explain that ${he} thinks ${he} gets enough anal from humans, without being buttfucked by a machine every morning.`); diff --git a/src/js/itemAvailability.js b/src/js/itemAvailability.js index 7290a62ae71fdd490f56ceaabd0685f04b7eac60..ae2f3353f3af13ed0f0ab2cbeb63df056f8d0d9f 100644 --- a/src/js/itemAvailability.js +++ b/src/js/itemAvailability.js @@ -77,7 +77,7 @@ globalThis.isItemAccessible = (function() { if (V.cheatMode || isAvailable(i)) { let name = i.name; if (i.fs) { - name = i.name + ` (FS)`; + name = `${i.name} (FS)`; } array.push([name, i.value]); } @@ -85,6 +85,12 @@ globalThis.isItemAccessible = (function() { return array; } + /** + * @param {object} item + * @param {string} [category="clothing"] that item is in clothing, collar, etc + * @param {App.Entity.SlaveState} [slave] + * @returns {boolean|string} Returns true if item is accessible, and false if it is not. If the slave param is set, it may sometimes return a string instead of false, explaining why the item can't be used with that slave. + */ function isAvailable(item, category, slave) { let slaveResults; if (slave) { @@ -141,17 +147,9 @@ globalThis.isItemAccessible = (function() { } } }); - if (fail) { - return false; - } else { - return true; - } + return !(fail); } else { // string - if (V[item.rs] < 1) { - return false; - } else { - return true; - } + return (V[item.rs] >= 1); } } if (item.hasOwnProperty("fs")) { @@ -165,6 +163,12 @@ globalThis.isItemAccessible = (function() { return true; } + /** + * @param {object} item + * @param {string} [category="clothing"] that item is in clothing, collar, etc + * @param {App.Entity.SlaveState} [slave] + * @returns {boolean|string} Returns true if item is accessible, and false if it is not. If the slave param is set, it may sometimes return a string instead of false, explaining why the item can't be used with that slave. + */ function isAvailableForSlave(item, category, slave) { switch (category) { case "clothing": @@ -277,50 +281,24 @@ globalThis.isItemAccessible = (function() { break; } case "dickAccessory": - if (slave.dick < 1) { - return false; - } - return true; + return (slave.dick >= 1); case "shoes": break; case "chastity": { switch (item.value) { case "chastity belt": - case "combined chastity belt": { - if (slave.vagina > -1) { - return true; - } else { - return false; - } - } + case "combined chastity belt": + return (slave.vagina > -1); case "chastity cage": - case "combined chastity cage": { - if (slave.dick > 0) { - return true; - } else { - return false; - } - } + case "combined chastity cage": + return (slave.dick > 0); case "genital chastity": - case "full chastity": { - if (slave.vagina > -1 && slave.dick > 0) { - return true; - } else { - return false; - } - } - case "choose own chastity": { - if (slave.choosesOwnChastity !== 1 && slave.devotion > 20 && slave.trust > 0) { - return true; - } - return false; - } - case "revoke choosing own chastity": { - if (slave.choosesOwnChastity > 0) { - return true; - } - return false; - } + case "full chastity": + return (slave.vagina > -1 && slave.dick > 0); + case "choose own chastity": + return (slave.choosesOwnChastity !== 1 && slave.devotion > 20 && slave.trust > 0); + case "revoke choosing own chastity": + return (slave.choosesOwnChastity > 0); default: return true; } diff --git a/src/js/sexActsJS.js b/src/js/sexActsJS.js index 9c38adce0229d594f8f8d8d6630a0f8f898510f9..3c6eebf99d5ccb55d3eb137dfbfe766c1c76f7ac 100644 --- a/src/js/sexActsJS.js +++ b/src/js/sexActsJS.js @@ -323,7 +323,7 @@ globalThis.SimpleSexAct = (function() { for (let i = 0; i < fuckCount; i++) { fuckTarget = jsRandom(1, 100); - if (slave.nipples === "fuckable" && V.PC.dick >0 && fuckTarget > 80) { + if (slave.nipples === "fuckable" && V.PC.dick > 0 && fuckTarget > 80) { actX(slave, "mammary"); } else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) { actX(slave, "vaginal"); diff --git a/src/js/slaveCostJS.js b/src/js/slaveCostJS.js index 91c5519e6db7f44e10f562f572c5367807ffe8d5..fd5212d8504953078287a782adb9155f3371258e 100644 --- a/src/js/slaveCostJS.js +++ b/src/js/slaveCostJS.js @@ -1591,7 +1591,6 @@ globalThis.Beauty = function(s) { }; - globalThis.BeautyTooltip = function(slave) { // Make a link. Text should be slave'slave beauty. Clicking the link will display detailed info about that beauty where the link used to be if (V.cheatMode || V.debugMode) { @@ -2124,7 +2123,6 @@ globalThis.FResult = function(s) { }; - globalThis.FResultTooltip = function(slave) { // Make a link. Text should be slave'slave FResult. Clicking the link will display detailed info about that beauty where the link used to be if (V.cheatMode || V.debugMode) { diff --git a/src/js/slaveListing.js b/src/js/slaveListing.js index cb9b60febfdc4c92b53090730d171d45fe3c8fce..dec491595859e5549737ae4d1043c15a801caa7a 100644 --- a/src/js/slaveListing.js +++ b/src/js/slaveListing.js @@ -524,17 +524,17 @@ App.UI.SlaveList.ScrollPosition = (function() { let position = 0; return { - reset : function() { + reset: function() { lastPassage = null; position = 0; }, - record : function() { + record: function() { lastPassage = passage(); position = window.pageYOffset; }, - restore : function() { + restore: function() { $(document).one(':passageend', () => { if (lastPassage === passage()) { window.scrollTo(0, position);