diff --git a/js/rulesAssistant/conditionEvaluation.js b/js/rulesAssistant/conditionEvaluation.js index 197e137736b03a4fd2883fb44adbac622b28545a..66f423c03cc57aa4aaaddae87759c228cdd7688f 100644 --- a/js/rulesAssistant/conditionEvaluation.js +++ b/js/rulesAssistant/conditionEvaluation.js @@ -671,6 +671,13 @@ App.RA.Activation.populateGetters = function() { "'pregnancy', 'none' (AKA vanilla)", val: c => c.slave.fetish }); + gm.addString("title", { + name: "Title", + description: "Slave title (class) without adjectives (slavegirl, MILF, bimbo, shemale, herm, etc.). ", + requirements: "The alternate titles game option is enabled", + enabled: () => V.newDescriptions === 1, + val: c => SlaveTitle(c.slave, false, false) + }); }; /** diff --git a/src/js/utilsSlave.js b/src/js/utilsSlave.js index 38f5ca555e72cc8981200b9afaa5b885ad3463c8..e99c9c32cbdf351467137e6631fae0a86ce00f7b 100644 --- a/src/js/utilsSlave.js +++ b/src/js/utilsSlave.js @@ -2169,13 +2169,15 @@ globalThis.PoliteRudeTitle = function(slave) { /** * @param {App.Entity.SlaveState} slave + * @param {boolean} [adjective=true] Add adjectives + * @param {boolean} [variability=true] Use alternative titles * @returns {string} */ -globalThis.SlaveTitle = function(slave) { +globalThis.SlaveTitle = function(slave, adjective = true, variability = true) { let r; if (V.newDescriptions === 1) { if (slave.dick > 0 && slave.balls > 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries === 1) { - if (jsRandom(1, 100) > 50) { + if (variability && jsRandom(1, 100) > 50) { r = "futanari"; } else { r = "herm"; @@ -2236,6 +2238,10 @@ globalThis.SlaveTitle = function(slave) { r = "slave"; } + if (!adjective) { + return r; + } + if (slave.visualAge < 13) { if (slave.actualAge < 3) { if (slave.actualAge < 1) {