From 2066a1ce4742d2c6082a1bda23b1bab027798db5 Mon Sep 17 00:00:00 2001 From: Trinidad <anchaiscastilla@gmail.com> Date: Tue, 12 Sep 2023 23:18:01 +0200 Subject: [PATCH] modified: devNotes/usefulJSFunctionDocumentation.md modified: src/npc/descriptions/genericDescriptions.js --- devNotes/usefulJSFunctionDocumentation.md | 18 ++++ src/npc/descriptions/genericDescriptions.js | 104 +++++++++++++++++++- 2 files changed, 120 insertions(+), 2 deletions(-) diff --git a/devNotes/usefulJSFunctionDocumentation.md b/devNotes/usefulJSFunctionDocumentation.md index e67ded88ad0..97a39140864 100644 --- a/devNotes/usefulJSFunctionDocumentation.md +++ b/devNotes/usefulJSFunctionDocumentation.md @@ -181,6 +181,24 @@ SlaveTitle(slave) // Returns the slave's descriptive title. relativeTerm(slave1, slave2) // Returns the term for slave2's relation to slave1. (daughter, mother, etc.) +vaginaDesc(slave) // Returns the description of the slave's vagina. + +dickDesc(slave) // Returns the description of the slave's penis. + +ballsDesc(slave) // Returns the description of the slave's testicles. + +anusDesc(slave) // Returns the description of the slave's anus. + +boobsDesc(slave) // Returns the size descriptor of the slave's breasts. + +boobsDescLong(slave) // Returns the full description of the slave's breasts. + +buttDesc(slave) // Returns the description of the slave's bottom. + +lipsDesc(slave) // Returns the description of the slave's lips. + +bellyDesc(slave, withNoun, pregReference) // Returns the description of the slave's belly. + relationshipChecks [script] All work as expected with <<if X.rivalryTarget == $slaves[$i].ID>> preceding them. rivalryTerm(id) // Returns the rivalry term for the input. e.g. lines 99-100 of brothelReport. //<<if $Madam.rivalryTarget == $slaves[$i].ID>> diff --git a/src/npc/descriptions/genericDescriptions.js b/src/npc/descriptions/genericDescriptions.js index d303c2b00d0..657742bf2da 100644 --- a/src/npc/descriptions/genericDescriptions.js +++ b/src/npc/descriptions/genericDescriptions.js @@ -254,7 +254,7 @@ globalThis.boobsDesc = function(slave, withNoun = true) { * @param {boolean} withLactation * @returns {string} */ -globalThis.boobsLongDesc = function(slave, withNoun = true, withShape = true, withCup = true, withSurgery = true, withLactation = true) { +globalThis.boobsDescLong = function(slave, withNoun = true, withShape = true, withCup = true, withSurgery = true, withLactation = true) { if (!slave) {return "ERROR"} if (slave.boobs < 300 && slave.hormoneBalance < -20) { return `masculine${withNoun ? " chest" : ""}`; @@ -349,4 +349,104 @@ globalThis.lipsDesc = function(slave, withNoun = true, withSurgery = true) { return `${jsEither(adj)} ${surgery}${jsEither(noun)}`; } return `${surgery}${jsEither(adj)}`; -} \ No newline at end of file +} + +/** + * Returns the description of the slave's bally + * @param {FC.HumanState} slave // admits V.PC as argument. + * @param {boolean} withNoun + * @param {boolean} pregReference // mentions pregnancy if slave is pregnant + * @returns {string} + */ +globalThis.bellyDesc = function(slave, withNoun = true, pregReference = true) { + if (!slave) {return "ERROR"} + let adj = []; + let noun =["belly"]; + if (pregReference && !!V.seePreg && slave.preg > 0) { + if (slave.belly > 750000) { + adj.push("inhumanly overexpanded pregnant"); + } else if (slave.belly > 600000) { + adj.push("immensely overexpanded pregnant"); + } else if (slave.belly > 450000) { + adj.push("enormously overexpanded pregnant"); + } else if (slave.belly > 300000) { + adj.push("overexpanded pregnant"); + } else if (slave.belly > 150000) { + adj.push("grotesquely oversized pregnant"); + } else if (slave.belly > 120000) { + adj.push("absurd pregnant"); + } else if (slave.belly > 105000) { + adj.push("monstrous pregnant"); + } else if (slave.belly > 90000) { + adj.push("titanic pregnant"); + } else if (slave.belly > 75000) { + adj.push("massive pregnant"); + } else if (slave.belly > 60000) { + adj.push("gigantic pregnant"); + } else if (slave.belly > 45000) { + adj.push("huge pregnant"); + } else if (slave.belly > 30000) { + adj.push("big pregnant"); + } else if (slave.belly > 15000) { + adj.push("full term looking"); + } else if (slave.belly > 10000) { + adj.push("very pregnant"); + } else if (slave.belly > 5000) { + adj.push("obviously pregnant"); + } else if (slave.belly > 1500) { + adj.push("plump"); + } else if (slave.belly > 100) { + adj.push("bloated"); + } else { + adj.push("flat"); + noun.push("stomach", "tummy"); + } + } else { + if (slave.belly > 750000) { + adj.push("inhumanly overexpanded"); + } else if (slave.belly > 600000) { + adj.push("immensely overexpanded"); + } else if (slave.belly > 450000) { + adj.push("enormously overexpanded"); + } else if (slave.belly > 300000) { + adj.push("overexpanded"); + } else if (slave.belly > 150000) { + adj.push("grotesquely oversized"); + } else if (slave.belly > 120000) { + adj.push("absurd"); + } else if (slave.belly > 105000) { + adj.push("monstrous"); + } else if (slave.belly > 90000) { + adj.push("titanic"); + } else if (slave.belly > 75000) { + adj.push("massive"); + } else if (slave.belly > 60000) { + adj.push("gigantic"); + } else if (slave.belly > 45000) { + adj.push("huge"); + } else if (slave.belly > 30000) { + adj.push("obese"); + } else if (slave.belly > 15000) { + adj.push("beefy"); + } else if (slave.belly > 10000) { + adj.push("porky"); + } else if (slave.belly > 5000) { + adj.push("chubby"); + } else if (slave.belly > 1500) { + adj.push("plump"); + } else if (slave.belly > 100) { + adj.push("bloated"); + noun.push("tummy"); + } else { + adj.push("flat"); + } + noun.push("stomach"); + if (slave.belly > 5000) { + noun.push("paunch", "belly"); + } + } + if (withNoun) { + return `${jsEither(adj)} ${jsEither(noun)}`; + } + return `${surgery}${jsEither(adj)}`; +} -- GitLab