From b624465b1681b2708dea87f97e8c202c9ef5777d Mon Sep 17 00:00:00 2001 From: Pregmodder <pregmodder@gmail.com> Date: Sat, 20 Oct 2018 16:44:22 -0400 Subject: [PATCH] fixes --- devNotes/twine JS.txt | 607 ++++++++++++++++++++++++- src/endWeek/saChoosesOwnClothes.tw | 8 +- src/js/slaveSummaryWidgets.tw | 38 +- src/utility/descriptionWidgetsFlesh.tw | 4 +- 4 files changed, 641 insertions(+), 16 deletions(-) diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt index 849c76ddab3..472741531b6 100644 --- a/devNotes/twine JS.txt +++ b/devNotes/twine JS.txt @@ -10868,9 +10868,9 @@ window.saChoosesOwnClothes = (function() { belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/ } } else if(slave.devotion <= 20) { - if(slave.belly > 10000 && (slave.pregAdaptation*800 <= slave.belly)){ + if(slave.belly > 10000 && (slave.pregAdaptation*800 <= slave.belly) && slave.bellyAccessory != "a support band"){ belly.push({text: `slips a pregnancy support band around ${his} middle to help alleviate some of the discomfort,`, bellyAccessory: "a support band"}); - } else if (slave.belly < 8000) { + } else if (slave.belly < 8000 && slave.bellyAccessory == "a support band") { belly.push({text: `removes ${his} support band since ${he} no longer needs it,`, bellyAccessory: "none"}); } } else { @@ -10890,13 +10890,13 @@ window.saChoosesOwnClothes = (function() { } else if(slave.fetishStrength > 95) { belly.push({text: `straps on the largest belly ${he} can find to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a huge empathy belly"}); } - } else if(slave.belly > 10000 && (slave.pregAdaptation*1200 <= slave.belly)){ + } else if(slave.belly > 10000 && (slave.pregAdaptation*1200 <= slave.belly) && slave.bellyAccessory != "a support band"){ belly.push({text: `slips a pregnancy support band around ${his} middle to better handle ${his} fecund mound,`, bellyAccessory: "a support band"}); } else if(empathyBellies.includes(slave.bellyAccessory) && slave.fetish != "pregnancy") { belly.push({text: `removes ${his} fake belly, since ${he} dislikes it,`, bellyAccessory: "none"}); } else if(empathyBellies.includes(slave.bellyAccessory) && slave.sexualFlaw == "breeder") { belly.push({text: `pulls ${his} fake belly off, disgusted by it,`, bellyAccessory: "none"}); - } else if (slave.belly < 8000) { + } else if (slave.belly < 8000 && slave.bellyAccessory == "a support band") { belly.push({text: `removes ${his} support band since ${he} no longer needs it,`, bellyAccessory: "none"}); } else { belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/ @@ -18526,6 +18526,567 @@ window.rulesAssistantOptions = (function() { return rulesAssistantOptions; })(); +/*:: rules autosurgery js [script]*/ + +window.rulesAutosurgery = (function() { + "use strict"; + let V; + let r; + return rulesAutoSurgery; + + function rulesAutoSurgery(slave) { + V = State.variables; + r = ""; + const surgeries = []; + const thisSurgery = ProcessHGTastes(slave); + if (slave.health > 20) + CommitSurgery(slave, thisSurgery, surgeries); + if (surgeries.length > 0) + PrintResult(slave, thisSurgery, surgeries); + return r; + } + + function autoSurgerySelector(slave, ruleset) { + const surgery = {}; + ruleset.forEach(rule => { + Object.keys(rule) + .filter(key => key.startsWith("surgery_") && rule[key] !== "no default setting") + .forEach(key => { + surgery[key] = rule[key]; + }); + }); + return surgery; + } + + function ProcessHGTastes(slave) { + let thisSurgery; + switch (V.HGTastes) { + case 1: + thisSurgery = { + surgery_lactation: 0, + surgery_cosmetic: 1, + surgery_faceShape: "cute", + surgery_lips: 10, + surgery_hips: 0, + surgery_hipsImplant: 0, + surgery_butt: 0, + surgery_accent: 0, + surgery_shoulders: 0, + surgery_shouldersImplant: 0, + surgery_boobs: 0, + surgery_holes: 0 + }; + break ; + case 2: + thisSurgery = { + surgery_lactation: 0, + surgery_cosmetic: 1, + surgery_faceShape: "cute", + surgery_lips: 60, + surgery_hips: 0, + surgery_hipsImplant: 0, + surgery_butt: 4, + surgery_accent: 0, + surgery_shoulders: 0, + surgery_shouldersImplant: 0, + surgery_boobs: 1200, + surgery_holes: 0 + }; + break; + case 3: + thisSurgery = { + surgery_lactation: 0, + surgery_cosmetic: 1, + surgery_faceShape: "cute", + surgery_lips: 95, + surgery_hips: 0, + surgery_hipsImplant: 0, + surgery_butt: 8, + surgery_accent: 0, + surgery_shoulders: 0, + surgery_shouldersImplant: 0, + surgery_boobs: 10000, + surgery_holes: 2 + }; + break; + case 4: + thisSurgery = { + surgery_lactation: 1, + surgery_cosmetic: 1, + surgery_faceShape: "cute", + surgery_lips: 10, + surgery_hips: 3, + surgery_hipsImplant: 0, + surgery_butt: 0, + surgery_accent: 0, + surgery_shoulders: 0, + surgery_shouldersImplant: 0, + surgery_boobs: 0, + surgery_holes: 0 + }; + break; + default: + thisSurgery = autoSurgerySelector( + slave, + V.defaultRules + .filter(x => ruleApplied(slave, x) && x.set.autoSurgery === 1) + .map(x => x.set)); + if ((thisSurgery.surgery_hips !== "no default setting") && (thisSurgery.surgery_butt !== "no default setting")) { + if (slave.hips < -1) { + if (thisSurgery.surgery_butt > 2) + thisSurgery.surgery_butt = 2; + } else if (slave.hips < 0) { + if (thisSurgery.surgery_butt > 4) + thisSurgery.surgery_butt = 4; + } else if (slave.hips > 0) { + if (thisSurgery.surgery_butt > 8) + thisSurgery.surgery_butt = 8; + } else if (slave.hips > 1) { + true; + } else { + if (thisSurgery.surgery_butt > 6) + thisSurgery.surgery_butt = 6; + } + } + break; + } + return thisSurgery; + } + + function CommitSurgery(slave, thisSurgery, surgeries) { + if ((slave.eyes == -1) && (thisSurgery.surgery_eyes == 1)) { + surgeries.push("surgery to correct her vision"); + slave.eyes = 1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.eyes == 1) && (thisSurgery.surgery_eyes == -1)) { + surgeries.push("surgery to blur her vision"); + slave.eyes = -1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.hears == -1) && (thisSurgery.surgery_hears == 1)) { + surgeries.push("surgery to correct her hearing"); + slave.hears = 0; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.hears == 0) && (thisSurgery.surgery_hears == -1)) { + surgeries.push("surgery to muffle her hearing"); + slave.hears = -1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.lactation == 2) && (thisSurgery.surgery_lactation == 0)) { + surgeries.push("surgery to remove her lactation implants"); + slave.lactation = 0; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if (slave.lactation != 2 && (thisSurgery.surgery_lactation == 1)) { + surgeries.push("lactation inducing implanted drugs"); + slave.lactation = 2; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.prostate == 2) && (thisSurgery.surgery_prostate == 0)) { + surgeries.push("surgery to remove her prostate implant"); + slave.prostate = 0; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if (slave.prostate == 1 && (thisSurgery.surgery_prostate == 1)) { + surgeries.push("a precum production enhancing drug implant"); + slave.prostate = 2; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.anus > 3) && (thisSurgery.surgery_cosmetic > 0)) { + surgeries.push("a restored anus"); + slave.anus = 3; + if (slave.analSkill > 10) + slave.analSkill -= 10; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.vagina > 3) && (thisSurgery.surgery_cosmetic > 0)) { + surgeries.push("a restored pussy"); + slave.vagina = 3; + if (slave.vaginalSkill > 10) + slave.vaginalSkill -= 10; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.faceImplant <= 15) && (slave.face <= 95) && (thisSurgery.surgery_cosmetic > 0)) { + surgeries.push("a nicer face"); + if (slave.faceShape == "masculine") slave.faceShape = "androgynous"; + slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-5*V.surgeryUpgrade; + slave.face = Math.clamp(slave.face+20,-100,100); + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.faceImplant <= 15) && (slave.ageImplant != 1) && (slave.visualAge >= 25) && (thisSurgery.surgery_cosmetic > 0)) { + surgeries.push("an age lift"); + slave.ageImplant = 1; + slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-5*V.surgeryUpgrade; + if (slave.visualAge > 80) slave.visualAge -= 40; + else if (slave.visualAge >= 70) slave.visualAge -= 30; + else if (slave.visualAge > 50) slave.visualAge -= 20; + else if (slave.visualAge > 36) slave.visualAge -= 10; + else slave.visualAge -= 5; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if (((slave.underArmHStyle != "bald" && slave.underArmHStyle != "hairless") || (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless")) && (thisSurgery.surgery_bodyhair == 2)) { + surgeries.push("body hair removal"); + if (slave.underArmHStyle != "hairless") slave.underArmHStyle = "bald"; + if (slave.pubicHStyle != "hairless") slave.pubicHStyle = "bald"; + V.cash -= V.surgeryCost; + + } else if ((slave.bald == 0 || slave.hStyle != "bald" || slave.eyebrowHStyle != "bald") && (thisSurgery.surgery_hair == 2)) { + surgeries.push("hair removal"); + slave.eyebrowHStyle = "bald"; + slave.hStyle = "bald"; + slave.bald = 1; + V.cash -= V.surgeryCost; + + } else if ((slave.weight >= 10) && (thisSurgery.surgery_cosmetic > 0)) { + surgeries.push("liposuction"); + slave.weight -= 50; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.voice == 1) && (slave.voiceImplant == 0) && (thisSurgery.surgery_cosmetic > 0)) { + surgeries.push("a feminine voice"); + slave.voice += 1; + slave.voiceImplant += 1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.waist >= -10) && (thisSurgery.surgery_cosmetic > 0)) { + surgeries.push("a narrower waist"); + slave.waist -= 20; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if (((slave.boobShape == "saggy") || (slave.boobShape == "downward-facing")) && (thisSurgery.surgery_cosmetic > 0) && (slave.breastMesh != 1)) { + surgeries.push("a breast lift"); + slave.boobShape = "normal"; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if (((slave.boobShape == "normal") || (slave.boobShape == "wide-set")) && (thisSurgery.surgery_cosmetic > 0) && (slave.breastMesh != 1)) { + if (slave.boobs > 800) + slave.boobShape = "torpedo-shaped"; + else + slave.boobShape = "perky"; + surgeries.push("more interestingly shaped breasts"); + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((thisSurgery.surgery_lips == 0) && (slave.lipsImplant > 0)) { + surgeries.push("surgery to remove her lip implants"); + slave.lips -= slave.lipsImplant; + slave.lipsImplant = 0; + if (slave.oralSkill > 10) + slave.oralSkill -= 10; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.lips <= 95) && (slave.lips < thisSurgery.surgery_lips)) { + if (thisSurgery.surgery_lips !== "no default setting") { + surgeries.push("bigger lips"); + slave.lipsImplant += 10; + slave.lips += 10; + if (slave.oralSkill > 10) + slave.oralSkill -= 10; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + + } else if ((slave.faceImplant <= 45) && (slave.face <= 95) && (thisSurgery.surgery_cosmetic == 2)) { + surgeries.push("a nicer face"); + if (slave.faceShape == "masculine") slave.faceShape = "androgynous"; + slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-5*V.surgeryUpgrade; + slave.face = Math.clamp(slave.face+20,-100,100); + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.hips < 1) && (slave.hips < thisSurgery.surgery_hips) && (V.surgeryUpgrade == 1)) { + surgeries.push("wider hips"); + slave.hips++; + slave.hipsImplant++; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.faceImplant <= 45) && (slave.ageImplant != 1) && (slave.visualAge >= 25) && (thisSurgery.surgery_cosmetic == 2)) { + surgeries.push("an age lift"); + slave.ageImplant = 1; + if (slave.visualAge > 80) { + slave.visualAge -= 40; + } else if (slave.visualAge >= 70) { + slave.visualAge -= 30; + } else if (slave.visualAge > 50) { + slave.visualAge -= 20; + } else if (slave.visualAge > 36) { + slave.visualAge -= 10; + } else { + slave.visualAge -= 5; + } + slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-5*V.surgeryUpgrade; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.waist >= -95) && (thisSurgery.surgery_cosmetic == 2) && (V.seeExtreme == 1)) { + surgeries.push("a narrower waist"); + slave.waist = Math.clamp(slave.waist-20,-100,100); + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.voice < 3) && (slave.voiceImplant == 0) && (thisSurgery.surgery_cosmetic == 2)) { + surgeries.push("a bimbo's voice"); + slave.voice += 1; + slave.voiceImplant += 1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((thisSurgery.surgery_butt == 0) && (slave.buttImplant > 0)) { + surgeries.push("surgery to remove her butt implants"); + slave.butt -= slave.buttImplant; + slave.buttImplant = 0; + slave.buttImplantType = 0; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((thisSurgery.surgery_boobs == 0) && (slave.boobsImplant > 0)) { + surgeries.push("surgery to remove her boob implants"); + slave.boobs -= slave.boobsImplant; + slave.boobsImplant = 0; + slave.boobsImplantType = 0; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } else if ((slave.butt <= 3) && (slave.butt < thisSurgery.surgery_butt)) { + if (thisSurgery.surgery_butt !== "no default setting") { + surgeries.push("a bigger butt"); + slave.buttImplant = 1; + slave.butt += 1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + } else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+400 <= thisSurgery.surgery_boobs)) { + if (thisSurgery.surgery_boobs !== "no default setting") { + surgeries.push("bigger boobs"); + slave.boobsImplant += 400; + slave.boobs += 400; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + } else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+200 <= thisSurgery.surgery_boobs)) { + if (thisSurgery.surgery_boobs !== "no default setting") { + surgeries.push("modestly bigger boobs"); + slave.boobsImplant += 200; + slave.boobs += 200; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + + } else if ((slave.butt <= 5) && (slave.butt < thisSurgery.surgery_butt)) { + if (thisSurgery.surgery_butt !== "no default setting") { + surgeries.push("a bigger butt"); + slave.buttImplant = 1; + slave.butt += 1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + + } else if ((slave.boobs <= 2000) && (slave.lactation < 2) && (slave.boobs+400 < thisSurgery.surgery_boobs)) { + if (thisSurgery.surgery_boobs !== "no default setting") { + surgeries.push("bigger boobs"); + slave.boobsImplant += 400; + slave.boobs += 400; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + + } else if ((slave.anus > 0) && (V.surgeryUpgrade == 1) && (thisSurgery.surgery_holes == 2)) { + surgeries.push("a virgin anus"); + slave.anus = 0; + if (slave.analSkill > 10) { + slave.analSkill -= 10; + } + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.vagina > 0) && (V.surgeryUpgrade == 1) && (thisSurgery.surgery_holes == 2)) { + surgeries.push("a virgin pussy"); + slave.vagina = 0; + if (slave.vaginalSkill > 10) + slave.vaginalSkill -= 10; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.hips < 2) && (slave.hips < thisSurgery.surgery_hips) && (V.surgeryUpgrade == 1)) { + surgeries.push("wider hips"); + slave.hips++; + slave.hipsImplant++; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.anus > 1) && (thisSurgery.surgery_holes == 1)) { + surgeries.push("a tighter anus"); + slave.anus = 1; + if (slave.analSkill > 10) { + slave.analSkill -= 10; + } + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.vagina > 1) && (thisSurgery.surgery_holes == 1)) { + surgeries.push("a tighter pussy"); + slave.vagina = 1; + if (slave.vaginalSkill > 10) { + slave.vaginalSkill -= 10; + } + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if ((slave.butt <= 8) && (slave.butt < thisSurgery.surgery_butt)) { + if (thisSurgery.surgery_butt !== "no default setting") { + surgeries.push("a bigger butt"); + slave.buttImplant = 1; + slave.butt += 1; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + + } else if ((slave.boobs <= 9000) && (slave.lactation < 2) && (slave.boobs < thisSurgery.surgery_boobs)) { + if (thisSurgery.surgery_boobs !== "no default setting") { + surgeries.push("bigger boobs"); + slave.boobsImplant += 200; + slave.boobs += 200; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } + + } else if ((slave.hips < 3) && (slave.hips < thisSurgery.surgery_hips) && (V.surgeryUpgrade == 1)) { + surgeries.push("wider hips"); + slave.hips++; + slave.hipsImplant++; + V.cash -= V.surgeryCost; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + + } else if (slave.bellyImplant < 0 && V.bellyImplants > 0 && thisSurgery.surgery_bellyImplant == "install" && slave.womb.length == 0 && slave.broodmother == 0) { + slave.bellyImplant = 100; + slave.preg = -2; + V.cash -= V.surgeryCost; + if (slave.ovaries == 1 || slave.mpreg == 1) { + surgeries.push("belly implant"); + V.surgeryType = "bellyIn"; + if (V.PC.medicine >= 100) slave.health -= 5; + else slave.health -= 10; + } else { + surgeries.push("male belly implant"); + V.surgeryType = "bellyInMale"; + if (V.PC.medicine >= 100) slave.health -= 25; + else slave.health -= 50; + } + bellyIn(slave); + + } else if (slave.bellyImplant >= 0 && thisSurgery.surgery_bellyImplant == "remove") { + surgeries.push("belly implant removal"); + V.surgeryType = "bellyOut"; + if (V.PC.medicine >= 100) + slave.health -= 5; + else + slave.health -= 10; + slave.preg = 0; + slave.bellyImplant = -1; + V.cash -= V.surgeryCost; + } else if (slave.balls > 0 && slave.vasectomy === 0 && thisSurgery.surgery_vasectomy === true) { + surgeries.push("vasectomy"); + V.surgeryType = "vasectomy"; + if (V.PC.medicine >= 100) + slave.health -= 5; + else + slave.health -= 10; + slave.vasectomy = 1; + V.cash -= V.surgeryCost; + } else if (slave.balls > 0 && slave.vasectomy === 1 && thisSurgery.surgery_vasectomy === false) { + surgeries.push("undo vasectomy"); + V.surgeryType = "vasectomy undo"; + if (V.PC.medicine >= 100) + slave.health -=5; + else + slave.health -= 10; + slave.vasectomy = 0; + V.cash -= V.surgeryCost; + } + } + + function PrintResult(slave, thisSurgery, surgeries) { + let surgeriesDisplay = ""; + if (surgeries.length === 1) + surgeriesDisplay = surgeries[0]; + else { + surgeriesDisplay = surgeries.slice(0, surgeries.length - 1).join(", "); + surgeriesDisplay += ", and" + surgeries[surgeries.length - 1]; + } + r += `${V.assistantName === "your personal assistant" ? "Your personal assistant" : V.assistantName}, ordered to apply surgery, gives ${slave.slaveName} <span class="lime">${surgeriesDisplay}.</span>`; + } + + function bellyIn(slave) { + // less hacky version of calling surgery degradation silently + if (slave.devotion > 50) + slave.devotion += 4; + else if (slave.devotion >= -20) + slave.trust -= 5; + else { + slave.trust -= 5; + slave.devotion -= 5; + } + } +})(); + /*:: sexActJS [script]*/ /* @@ -21686,10 +22247,26 @@ window.SlaveSummaryUncached = (function(){ var intelligence = slave.intelligence + slave.intelligenceImplant; if (slave.fetish === "mindbroken") { return; - } else if (slave.intelligenceImplant >= 15) { + } else if (slave.intelligenceImplant >= 30) { if (intelligence >= 130) { - r += `<span class="deepskyblue">I++++(e)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + r += `<span class="deepskyblue">I++++(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 95) { + r += `<span class="deepskyblue">I+++(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 50) { + r += `<span class="deepskyblue">I++(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 15) { + r += `<span class="deepskyblue">I+(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -15) { + r += `I(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}`; + } else if (intelligence >= -50) { + r += `<span class="orangered">I-(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -95) { + r += `<span class="orangered">I--(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else { + r += `<span class="orangered">I---(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } + } else if (slave.intelligenceImplant >= 15) { + if (intelligence > 95) { r += `<span class="deepskyblue">I+++(e)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 50) { r += `<span class="deepskyblue">I++(e)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; @@ -21812,10 +22389,26 @@ window.SlaveSummaryUncached = (function(){ var intelligence = slave.intelligence + slave.intelligenceImplant; if (slave.fetish === "mindbroken") { return; - } else if (slave.intelligenceImplant >= 15) { + } else if (slave.intelligenceImplant >= 30) { if (intelligence >= 130) { r += `<span class="deepskyblue">Genius.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 95) { + r += `<span class="deepskyblue">Brilliant, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 50) { + r += `<span class="deepskyblue">Very smart, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 15) { + r += `<span class="deepskyblue">Smart, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -15) { + r += `Average intelligence, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}`; + } else if (intelligence >= -50) { + r += `<span class="orangered">Slow, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -95) { + r += `<span class="orangered">Very slow, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else { + r += `<span class="orangered">Moronic, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } + } else if (slave.intelligenceImplant >= 15) { + } if (intelligence > 95) { r += `<span class="deepskyblue">Brilliant, educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 50) { r += `<span class="deepskyblue">Very smart, educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; diff --git a/src/endWeek/saChoosesOwnClothes.tw b/src/endWeek/saChoosesOwnClothes.tw index 8daeb1905af..0e5630cae10 100644 --- a/src/endWeek/saChoosesOwnClothes.tw +++ b/src/endWeek/saChoosesOwnClothes.tw @@ -895,9 +895,9 @@ window.saChoosesOwnClothes = (function() { belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/ } } else if(slave.devotion <= 20) { - if(slave.belly > 10000 && (slave.pregAdaptation*800 <= slave.belly)){ + if(slave.belly > 10000 && (slave.pregAdaptation*800 <= slave.belly) && slave.bellyAccessory != "a support band"){ belly.push({text: `slips a pregnancy support band around ${his} middle to help alleviate some of the discomfort,`, bellyAccessory: "a support band"}); - } else if (slave.belly < 8000) { + } else if (slave.belly < 8000 && slave.bellyAccessory == "a support band") { belly.push({text: `removes ${his} support band since ${he} no longer needs it,`, bellyAccessory: "none"}); } } else { @@ -917,13 +917,13 @@ window.saChoosesOwnClothes = (function() { } else if(slave.fetishStrength > 95) { belly.push({text: `straps on the largest belly ${he} can find to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a huge empathy belly"}); } - } else if(slave.belly > 10000 && (slave.pregAdaptation*1200 <= slave.belly)){ + } else if(slave.belly > 10000 && (slave.pregAdaptation*1200 <= slave.belly) && slave.bellyAccessory != "a support band"){ belly.push({text: `slips a pregnancy support band around ${his} middle to better handle ${his} fecund mound,`, bellyAccessory: "a support band"}); } else if(empathyBellies.includes(slave.bellyAccessory) && slave.fetish != "pregnancy") { belly.push({text: `removes ${his} fake belly, since ${he} dislikes it,`, bellyAccessory: "none"}); } else if(empathyBellies.includes(slave.bellyAccessory) && slave.sexualFlaw == "breeder") { belly.push({text: `pulls ${his} fake belly off, disgusted by it,`, bellyAccessory: "none"}); - } else if (slave.belly < 8000) { + } else if (slave.belly < 8000 && slave.bellyAccessory == "a support band") { belly.push({text: `removes ${his} support band since ${he} no longer needs it,`, bellyAccessory: "none"}); } else { belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/ diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw index d0873a06df0..0d63b31eec1 100644 --- a/src/js/slaveSummaryWidgets.tw +++ b/src/js/slaveSummaryWidgets.tw @@ -2518,10 +2518,26 @@ window.SlaveSummaryUncached = (function(){ var intelligence = slave.intelligence + slave.intelligenceImplant; if (slave.fetish === "mindbroken") { return; - } else if (slave.intelligenceImplant >= 15) { + } else if (slave.intelligenceImplant >= 30) { if (intelligence >= 130) { - r += `<span class="deepskyblue">I++++(e)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + r += `<span class="deepskyblue">I++++(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 95) { + r += `<span class="deepskyblue">I+++(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 50) { + r += `<span class="deepskyblue">I++(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 15) { + r += `<span class="deepskyblue">I+(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -15) { + r += `I(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}`; + } else if (intelligence >= -50) { + r += `<span class="orangered">I-(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -95) { + r += `<span class="orangered">I--(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else { + r += `<span class="orangered">I---(e+)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } + } else if (slave.intelligenceImplant >= 15) { + if (intelligence > 95) { r += `<span class="deepskyblue">I+++(e)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 50) { r += `<span class="deepskyblue">I++(e)${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; @@ -2644,10 +2660,26 @@ window.SlaveSummaryUncached = (function(){ var intelligence = slave.intelligence + slave.intelligenceImplant; if (slave.fetish === "mindbroken") { return; - } else if (slave.intelligenceImplant >= 15) { + } else if (slave.intelligenceImplant >= 30) { if (intelligence >= 130) { r += `<span class="deepskyblue">Genius.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 95) { + r += `<span class="deepskyblue">Brilliant, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 50) { + r += `<span class="deepskyblue">Very smart, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence > 15) { + r += `<span class="deepskyblue">Smart, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -15) { + r += `Average intelligence, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}`; + } else if (intelligence >= -50) { + r += `<span class="orangered">Slow, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else if (intelligence >= -95) { + r += `<span class="orangered">Very slow, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } else { + r += `<span class="orangered">Moronic, well educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; + } + } else if (slave.intelligenceImplant >= 15) { + } if (intelligence > 95) { r += `<span class="deepskyblue">Brilliant, educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; } else if (intelligence > 50) { r += `<span class="deepskyblue">Very smart, educated.${V.summaryStats ? `[${slave.intelligence+slave.intelligenceImplant}]` : ''}</span>`; diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw index f05fcf77b4e..29cd33f21db 100644 --- a/src/utility/descriptionWidgetsFlesh.tw +++ b/src/utility/descriptionWidgetsFlesh.tw @@ -5218,7 +5218,7 @@ $He's got a <<elseif ($activeSlave.intelligence >= -50)>> <<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15)>> but $his facial expressions reveal $his alertness; with $his education, $he can be considered of average intelligence. - <<elseif $activeSlave.intelligenceImplant >= -15>> + <<elseif $activeSlave.intelligenceImplant >= 15>> but $his facial expressions reveal $he is rather dim; $he is of @@.orangered;below average intelligence@@ despite having been <<if $activeSlave.intelligenceImplant >= 30>>thoroughly <</if>>educated. <<else>> but $his facial expressions reveal $he is rather dim; $he is of @@.orangered;below average intelligence@@ and is poorly educated. @@ -5278,7 +5278,7 @@ $He's got a <<elseif ($activeSlave.intelligence >= -50)>> <<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15)>> $His $activeSlave.eyeColor eyes are alert; with $his education, $he can be considered of average intelligence. - <<elseif $activeSlave.intelligenceImplant >= -15>> + <<elseif $activeSlave.intelligenceImplant >= 15>> $His $activeSlave.eyeColor eyes are dim; $he is of @@.orangered;below average intelligence@@ despite having been <<if $activeSlave.intelligenceImplant >= 30>>thoroughly <</if>>educated. <<else>> $His $activeSlave.eyeColor eyes are dim; $he is of @@.orangered;below average intelligence@@ and is poorly educated. -- GitLab