diff --git a/src/js/PenthouseNaming.js b/src/js/PenthouseNaming.js index 9d84a0be2e16073a2fd0d33129007049d9396bf9..8fe4bac44d5299a539ded3cc6f420516bfb57bff 100644 --- a/src/js/PenthouseNaming.js +++ b/src/js/PenthouseNaming.js @@ -5,10 +5,11 @@ window.MasterSuiteUIName = function () { const V = State.variables; let name = ""; - if (V.masterSuiteNameCaps === "The Master Suite") + if (V.masterSuiteNameCaps === "The Master Suite") { name = "Master Suite"; - else + } else { name = V.masterSuiteNameCaps; + } return `<<link "${name}""Master Suite">><</link>> `; }; /** @@ -17,10 +18,11 @@ window.MasterSuiteUIName = function () { window.HeadGirlSuiteUIName = function () { const V = State.variables; let name = ""; - if (V.HGSuiteNameCaps === "The Head Girl Suite") + if (V.HGSuiteNameCaps === "The Head Girl Suite") { name = "Head Girl Suite"; - else + } else { name = V.HGSuiteNameCaps; + } return `<<link "${name}""Head Girl Suite">><</link>> `; }; /** @@ -29,10 +31,11 @@ window.HeadGirlSuiteUIName = function () { window.ServantQuartersUIName = function () { const V = State.variables; let name = ""; - if (V.servantsQuartersNameCaps === "The Servants' Quarters") + if (V.servantsQuartersNameCaps === "The Servants' Quarters") { name = "Servants' Quarters"; - else + } else { name = V.servantsQuartersNameCaps; + } return `<<link "${name}""Servants' Quarters">><</link>> `; }; /** @@ -41,10 +44,11 @@ window.ServantQuartersUIName = function () { window.SpaUIName = function() { const V = State.variables; let name = ""; - if (V.spaNameCaps === "The Spa") + if (V.spaNameCaps === "The Spa") { name = "Spa"; - else + } else { name = V.spaNameCaps; + } return `<<link "${name}""Spa">><</link>> `; }; /** @@ -53,10 +57,11 @@ window.SpaUIName = function() { window.NurseryUIName = function () { const V = State.variables; let name = ""; - if (V.nurseryNameCaps === "The Nursery") + if (V.nurseryNameCaps === "The Nursery") { name = "Nursery"; - else + } else { name = V.nurseryNameCaps; + } return `<<link "${name}""Nursery">><</link>> `; }; /** @@ -65,10 +70,11 @@ window.NurseryUIName = function () { window.ClinicUIName = function () { const V = State.variables; let name = ""; - if (V.clinicNameCaps === "The Clinic") + if (V.clinicNameCaps === "The Clinic") { name = "Clinic"; - else + } else { name = V.clinicNameCaps; + } return `<<link "${name}""Clinic">><</link>> `; }; /** @@ -77,10 +83,11 @@ window.ClinicUIName = function () { window.SchoolRoomUIName = function () { const V = State.variables; let name = ""; - if (V.schoolroomNameCaps === "The Schoolroom") + if (V.schoolroomNameCaps === "The Schoolroom") { name = "Schoolroom"; - else + } else { name = V.schoolroomNameCaps; + } return `<<link "${name}""Schoolroom">><</link>> `; }; /** @@ -89,10 +96,11 @@ window.SchoolRoomUIName = function () { window.CellblockUIName = function () { const V = State.variables; let name = ""; - if (V.cellblockNameCaps === "The Cellblock") + if (V.cellblockNameCaps === "The Cellblock") { name = "Cellblock"; - else + } else { name = V.cellblockNameCaps; + } return `<<link "${name}""Cellblock">><</link>> `; }; /** @@ -101,9 +109,10 @@ window.CellblockUIName = function () { window.IncubatorUIName = function () { const V = State.variables; let name = ""; - if (V.incubatorNameCaps === "The Incubator") + if (V.incubatorNameCaps === "The Incubator") { name = "Incubator"; - else + } else { name = V.incubatorNameCaps; + } return `<<link "${name}""Incubator">><</link>> `; }; diff --git a/src/js/generateNewSlaveJS.js b/src/js/generateNewSlaveJS.js index bc583592e404d7d2fcc7a8f26ea7a9a77ed10c1a..3ad61b5724dadb1fd5b796689f5940d38c764a01 100644 --- a/src/js/generateNewSlaveJS.js +++ b/src/js/generateNewSlaveJS.js @@ -1,7 +1,7 @@ /* eslint-disable no-undef */ window.GenerateNewSlave = (function() { - 'use strict'; - let V, chance; + "use strict"; + let V; let chance; /** @type {App.Entity.SlaveState} */ let slave; @@ -14,7 +14,7 @@ window.GenerateNewSlave = (function() { if (jsRandom(0, 99) < V.seeDicks) { GenerateXYSlave(); } else if (V.seeDicks > 0) { - var femaleSlaveGen = 80; + let femaleSlaveGen = 80; if (V.arcologies[0].FSGenderFundamentalistSMR === 1 || V.arcologies[0].FSRepopulationFocusSMR === 1) { femaleSlaveGen = 90; } else if (V.arcologies[0].FSGenderRadicalist !== "unset") { @@ -980,7 +980,7 @@ window.GenerateNewSlave = (function() { } function generateXXTeeth() { - var femaleCrookedTeethGen = slave.intelligence+slave.intelligenceImplant; + let femaleCrookedTeethGen = slave.intelligence+slave.intelligenceImplant; if ("American" === slave.nationality) { femaleCrookedTeethGen += 20; } else if (["Andorran", "Antiguan", "Argentinian", "Aruban", "Australian", "Austrian", "Bahamian", "Bahraini", "Barbadian", "Belarusian", "Belgian", "Bermudian", "Brazilian", "British", "Bruneian", "Bulgarian", "Canadian", "Catalan", "Chilean", "a Cook Islander", "Croatian", "Curaçaoan", "Cypriot", "Czech", "Danish", "Dutch", "Emirati", "Estonian", "Finnish", "French", "German", "Greek", "Greenlandic", "Guamanian", "Hungarian", "Icelandic", "Irish", "Israeli", "Italian", "Japanese", "Kazakh", "Korean", "Kuwaiti", "Latvian", "a Liechtensteiner", "Lithuanian", "Luxembourgian", "Malaysian", "Maltese", "Mauritian", "Monégasque", "Montenegrin", "New Caledonian", "a New Zealander", "Niuean", "Norwegian", "Omani", "Palauan", "Panamanian", "Polish", "Portuguese", "Puerto Rican", "Qatari", "Romanian", "Russian", "Sammarinese", "Saudi", "Seychellois", "Singaporean", "Slovak", "Slovene", "Spanish", "Swedish", "Swiss", "Taiwanese", "Trinidadian", "Uruguayan", "Vatican"].includes(slave.nationality)) { @@ -1001,7 +1001,7 @@ window.GenerateNewSlave = (function() { } function generateXYTeeth() { - var maleCrookedTeethGen = slave.intelligence+slave.intelligenceImplant; + let maleCrookedTeethGen = slave.intelligence+slave.intelligenceImplant; if ("American" === slave.nationality) { maleCrookedTeethGen += 22; } else if (["Andorran", "Antiguan", "Argentinian", "Aruban", "Australian", "Austrian", "Bahamian", "Bahraini", "Barbadian", "Belarusian", "Belgian", "Bermudian", "Brazilian", "British", "Bruneian", "Bulgarian", "Canadian", "Catalan", "Chilean", "a Cook Islander", "Croatian", "Curaçaoan", "Cypriot", "Czech", "Danish", "Dutch", "Emirati", "Estonian", "Finnish", "French", "German", "Greek", "Greenlandic", "Guamanian", "Hungarian", "Icelandic", "Irish", "Israeli", "Italian", "Japanese", "Kazakh", "Korean", "Kuwaiti", "Latvian", "a Liechtensteiner", "Lithuanian", "Luxembourgian", "Malaysian", "Maltese", "Mauritian", "Monégasque", "Montenegrin", "New Caledonian", "a New Zealander", "Niuean", "Norwegian", "Omani", "Palauan", "Panamanian", "Polish", "Portuguese", "Puerto Rican", "Qatari", "Romanian", "Russian", "Sammarinese", "Saudi", "Seychellois", "Singaporean", "Slovak", "Slovene", "Spanish", "Swedish", "Swiss", "Taiwanese", "Trinidadian", "Uruguayan", "Vatican"].includes(slave.nationality)) { @@ -1387,7 +1387,7 @@ window.GenerateNewSlave = (function() { } } - var BoobShapeGen = []; + const BoobShapeGen = []; if (slave.boobs > 250 && slave.boobs < 800) { BoobShapeGen.push("perky"); BoobShapeGen.push("downward-facing"); @@ -1436,7 +1436,7 @@ window.GenerateNewSlave = (function() { slave.hears = -1; } if (V.seeExtreme === 1) { - let disList = []; + const disList = []; disList.push("hearNot"); disList.push("seeNot"); disList.push("speakNot"); @@ -1445,7 +1445,7 @@ window.GenerateNewSlave = (function() { let disableCount = 0; if (V.oneTimeDisableDisability === 0) { while (disList.length > 0) { - let rolled = jsEither(disList); + const rolled = jsEither(disList); switch (rolled) { case "hearNot": if ((jsRandom(1, 100)-(disableCount*2)) > 90) { diff --git a/src/js/slaveCostJS.js b/src/js/slaveCostJS.js index 829f261ef3ba828e902d8b9f4e9aab5fef5c2803..3cf916222e14d4b0e09045be4d12512fb00d773c 100644 --- a/src/js/slaveCostJS.js +++ b/src/js/slaveCostJS.js @@ -1,12 +1,11 @@ -/* eslint-disable no-undef */ window.Beauty = (function() { "use strict"; - let V, arcology, beauty; + const V = State.variables; + const arcology = V.arcologies[0]; + let beauty; /** @param {App.Entity.SlaveState} slave */ function Beauty(slave) { - V = State.variables; - arcology = V.arcologies[0]; V.modScore = SlaveStatsChecker.modScore(slave); beauty = 120; @@ -83,7 +82,6 @@ window.Beauty = (function() { if (slave.vagina > 3) { beauty -= 10 + (slave.vagina*2); /*-20*/ } - } /** @param {App.Entity.SlaveState} slave */ @@ -669,7 +667,7 @@ window.Beauty = (function() { if (arcology.FSPhysicalIdealist !== "unset") { if (arcology.FSPhysicalIdealistLaw === 1) { if (Math.abs(slave.weight) <= 30 && slave.health >= 20 && slave.muscles >= 20 && slave.muscles <= 50) { - beauty += (slave.muscles + (Math.min(slave.health,300)/5))*(arcology.FSPhysicalIdealist/100); + beauty += (slave.muscles + (Math.min(slave.health, 300)/5))*(arcology.FSPhysicalIdealist/100); } else { beauty -= 30; } @@ -1082,9 +1080,9 @@ window.Beauty = (function() { } } if (arcology.FSChattelReligionist > 40 && arcology.FSBodyPurist === "unset") { - let tats = ["anusTat", "armsTat", "backTat", "boobsTat", "buttTat", "dickTat", "legsTat", "lipsTat", "shouldersTat", "stampTat", "vaginaTat"]; + const tats = ["anusTat", "armsTat", "backTat", "boobsTat", "buttTat", "dickTat", "legsTat", "lipsTat", "shouldersTat", "stampTat", "vaginaTat"]; let sacrilegeCount = 0; - for (let index in tats) { + for (const index in tats) { if (slave[index] === "sacrilege") { sacrilegeCount++; } @@ -1316,48 +1314,57 @@ window.FResult = (function() { "use strict"; // we can't initialize our global variables on load, because SugarCube.State isn't initialized // instead, declare them and initialize on run time - let V, result, incest_bonus; + let V; let result; let incest_bonus; /** @param {App.Entity.SlaveState} slave */ function FResult(slave) { V = State.variables; incest_bonus = V.arcologies[0].FSEgyptianRevivalist > 20 || V.arcologies[0].FSEgyptianRevivalistIncestPolicy === 1; calcUseWeights(slave); - if (!slave.fuckdoll) + if (!slave.fuckdoll) { calcNotFuckdoll(slave); - else + } else { result += slave.fuckdoll/10; + } result += Math.max(0, slave.aphrodisiacs) * 2; - if (slave.inflationType === "aphrodisiac") + if (slave.inflationType === "aphrodisiac") { result += slave.inflation*4; + } - if (slave.lactation > 0) + if (slave.lactation > 0) { result += 1; + } - if (slave.nipples === "fuckable") + if (slave.nipples === "fuckable") { calcFuckableTits(slave); + } - if (V.seeAge === 1) + if (V.seeAge === 1) { calcAge(slave); - if (slave.fetish === "mindbroken") + } + if (slave.fetish === "mindbroken") { result = Math.trunc(result*0.4); - else + } else { result = Math.trunc(result*0.7); + } - if (slave.pregWeek < 0) - result -= Math.trunc(result*slave.pregWeek/10); // reduced the most just after birth + if (slave.pregWeek < 0) { + result -= Math.trunc(result*slave.pregWeek/10); + } // reduced the most just after birth calcAmputation(slave); - if (V.arcologies[0].FSHedonisticDecadence > 20) + if (V.arcologies[0].FSHedonisticDecadence > 20) { calcHedonismWeight(slave); + } if (result < 2) { - if (supremeRaceP(slave) && V.arcologies[0].FSSupremacist > 20) + if (supremeRaceP(slave) && V.arcologies[0].FSSupremacist > 20) { result = 0; - else + } else { result = 2; + } } return result; } @@ -1365,17 +1372,19 @@ window.FResult = (function() { /** @param {App.Entity.SlaveState} slave */ function calcUseWeights(slave) { result = (3 - slave.anus)+(slave.muscles/30); - if (slave.muscles < -95) + if (slave.muscles < -95) { result -= 5; - else if (slave.muscles < -30) + } else if (slave.muscles < -30) { result -= 2; + } const uses = V.oralUseWeight + V.vaginalUseWeight + V.analUseWeight; if (uses <= 0) return; result += (6+slave.tonguePiercing) * (V.oralUseWeight/uses) * (slave.oralSkill/30); - if (slave.sexualFlaw === "cum addict") + if (slave.sexualFlaw === "cum addict") { result += (V.oralUseWeight/uses) * (slave.oralSkill/30); + } if (canDoVaginal(slave)) { result += 6 * (V.vaginalUseWeight/uses) * (slave.vaginalSkill/30); result += (3 - slave.vagina); @@ -1383,18 +1392,21 @@ window.FResult = (function() { } if (canDoAnal(slave)) { result += 6 * (V.analUseWeight/uses) * (slave.analSkill/30); - if (slave.sexualFlaw === "anal addict") + if (slave.sexualFlaw === "anal addict") { result += (V.analUseWeight/uses) * (slave.analSkill/30); - if (slave.inflationType === "aphrodisiac") + } + if (slave.inflationType === "aphrodisiac") { result += (V.analUseWeight/uses) * (slave.inflation * 3); + } } } /** @param {App.Entity.SlaveState} slave */ function calcFuckableTits(slave) { result += 2; - if (slave.fetish === "boobs") + if (slave.fetish === "boobs") { result += Math.trunc(slave.fetishStrength/20); + } } /** @param {App.Entity.SlaveState} slave */ @@ -1436,16 +1448,18 @@ window.FResult = (function() { /** @param {App.Entity.SlaveState} slave */ function calcHInjectionsDiet(slave) { - if (slave.drugs === "male hormone injections" || slave.drugs === "female hormone injections") + if (slave.drugs === "male hormone injections" || slave.drugs === "female hormone injections") { result -= 10; - if (slave.diet === "XXY") + } + if (slave.diet === "XXY") { result += 2; - else if (slave.diet === "XY" || slave.diet === "XX") + } else if (slave.diet === "XY" || slave.diet === "XX") { result += 1; - else if (slave.diet === "cum production") + } else if (slave.diet === "cum production") { result += 1; - else if (slave.diet === "fertility") + } else if (slave.diet === "fertility") { result += 1; + } } /** @param {App.Entity.SlaveState} slave */ @@ -1454,15 +1468,17 @@ window.FResult = (function() { if (slave.belly >= 1500) result += 2; else result -= 2; } else if (V.arcologies[0].FSRepopulationFocusPregPolicy === 1) { - if (slave.bellyPreg >= 1500) + if (slave.bellyPreg >= 1500) { result += 1; + } } else if (V.arcologies[0].FSRestart > 20) { - if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propOutcome === 1) + if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propOutcome === 1) { result += 1; - else if (slave.bellyPreg >= 1500) + } else if (slave.bellyPreg >= 1500) { result -= 10; - else + } else { result += 0; + } } if (V.arcologies[0].FSRepopulationFocusMilfPolicy === 1 || V.arcologies[0].FSRepopulationFocus > 20) { result += 1; @@ -1471,18 +1487,21 @@ window.FResult = (function() { /** @param {App.Entity.SlaveState} slave */ function calcRace(slave) { - if (V.arcologies[0].FSSupremacist !== "unset" && supremeRaceP(slave)) + if (V.arcologies[0].FSSupremacist !== "unset" && supremeRaceP(slave)) { result -= (V.arcologies[0].FSSupremacist/5) + (V.arcologies[0].FSSupremacistLawME*10); - if (V.arcologies[0].FSSubjugationist !== "unset" && inferiorRaceP(slave)) + } + if (V.arcologies[0].FSSubjugationist !== "unset" && inferiorRaceP(slave)) { result += (V.arcologies[0].FSSubjugationist/10) + (V.arcologies[0].FSSubjugationistLawME); + } } /** @param {App.Entity.SlaveState} slave */ function calcSexAttributes(slave) { if (slave.clitPiercing > 2) result += 1; if (slave.tail === "sex") result += 1; - if (slave.fetishKnown === 1 && slave.fetishStrength > 60 && slave.fetish !== "none") + if (slave.fetishKnown === 1 && slave.fetishStrength > 60 && slave.fetish !== "none") { result += slave.fetishStrength/5; + } if (slave.attrKnown === 1) { result += Math.trunc(slave.attrXX/20); @@ -1501,63 +1520,73 @@ window.FResult = (function() { /** @param {App.Entity.SlaveState} slave */ function calcCareer(slave) { - if (setup.whoreCareers.includes(slave.career)) + if (setup.whoreCareers.includes(slave.career)) { result += 1; - else if (slave.oralCount + slave.analCount + slave.vaginalCount + slave.mammaryCount + slave.penetrativeCount > 1000) + } else if (slave.oralCount + slave.analCount + slave.vaginalCount + slave.mammaryCount + slave.penetrativeCount > 1000) { result += 1; + } } /** @param {App.Entity.SlaveState} slave */ function calcSight(slave) { if (!canSee(slave)) result -= 3; else if (slave.eyes <= -1) { - if (slave.eyewear !== "corrective glasses" && slave.eyewear !== "corrective contacts") + if (slave.eyewear !== "corrective glasses" && slave.eyewear !== "corrective contacts") { result -= 1; - } else if (slave.eyewear === "blurring glasses") + } + } else if (slave.eyewear === "blurring glasses") { result -= 1; - else if (slave.eyewear === "blurring contacts") + } else if (slave.eyewear === "blurring contacts") { result -= 1; + } } /** @param {App.Entity.SlaveState} slave */ function calcHearing(slave) { if (!canHear(slave)) result -= 2; else if (slave.hears <= -1) { - if (slave.earwear !== "hearing aids") + if (slave.earwear !== "hearing aids") { result -= 1; - } else if (slave.earwear === "muffling ear plugs") + } + } else if (slave.earwear === "muffling ear plugs") { result -= 1; + } } /** @param {App.Entity.SlaveState} slave */ function calcEgyptianBonus(slave) { if (V.racialVarieties === undefined) V.racialVarieties = []; - if (!V.racialVarieties.includes(slave.race)) + if (!V.racialVarieties.includes(slave.race)) { V.racialVarieties.push(slave.race); + } } /** @param {App.Entity.SlaveState} slave */ function calcYouthBonus(slave) { if (slave.visualAge < 30) { - if (slave.actualAge > 30) - result += 5; // experienced for her apparent age - if (slave.physicalAge > 30) - result -= slave.physicalAge/2; // too old :( + if (slave.actualAge > 30) { + result += 5; + } // experienced for her apparent age + if (slave.physicalAge > 30) { + result -= slave.physicalAge/2; + } // too old :( } } /** @param {App.Entity.SlaveState} slave */ function calcMatureBonus(slave) { - if (slave.visualAge >= 30 && slave.actualAge >= 30 && slave.physicalAge < slave.visualAge) - result += Math.min((slave.physicalAge - slave.visualAge) * 2, 20); // looks and acts mature, but has a body that just won't quit + if (slave.visualAge >= 30 && slave.actualAge >= 30 && slave.physicalAge < slave.visualAge) { + result += Math.min((slave.physicalAge - slave.visualAge) * 2, 20); + } // looks and acts mature, but has a body that just won't quit } /** @param {App.Entity.SlaveState} slave */ function calcNotFuckdoll(slave) { - if (V.familyTesting === 1 && totalRelatives(slave) > 0) + if (V.familyTesting === 1 && totalRelatives(slave) > 0) { calcWorksWithRelatives(slave); - else if(!V.familyTesting && slave.relation !==0) + } else if (!V.familyTesting && slave.relation !==0) { calcWorksWithRelativesVanilla(slave); + } if (slave.relationship > 0) calcWorksWithRelationship(slave); if (slave.rivalry !== 0) calcWorksWithRival(slave); calcHInjectionsDiet(slave); @@ -1567,12 +1596,14 @@ window.FResult = (function() { calcCareer(slave); calcSight(slave); calcHearing(slave); - if (V.arcologies[0].FSEgyptianRevivalist !== "unset") + if (V.arcologies[0].FSEgyptianRevivalist !== "unset") { calcEgyptianBonus(slave); - if (V.arcologies[0].FSYouthPreferentialist !== "unset") + } + if (V.arcologies[0].FSYouthPreferentialist !== "unset") { calcYouthBonus(slave); - else if (V.arcologies[0].FSMaturityPreferentialist !== "unset") + } else if (V.arcologies[0].FSMaturityPreferentialist !== "unset") { calcMatureBonus(slave); + } } /** @param {App.Entity.SlaveState} slave */ @@ -1587,16 +1618,17 @@ window.FResult = (function() { else if (slave.birthWeek < 4) result += 0.1*result; } else if (slave.physicalAge === V.fertilityAge && canGetPregnant(slave) && (V.arcologies[0].FSRepopulationFocus !== "unset" || V.arcologies[0].FSGenderFundamentalist !== "unset")) { result += 1; - if (slave.birthWeek === 0) + if (slave.birthWeek === 0) { result += 0.5*result; - else if (slave.birthWeek < 4) + } else if (slave.birthWeek < 4) { result += 0.1*result; + } } } /** @param {App.Entity.SlaveState} slave */ function calcAmputation(slave) { - switch(slave.amp) { + switch (slave.amp) { case 0: case -2: case -5: @@ -1611,17 +1643,18 @@ window.FResult = (function() { /** @param {App.Entity.SlaveState} slave */ function calcHedonismWeight(slave) { - if (slave.weight < 10) + if (slave.weight < 10) { result -= 2; - else if (slave.weight > 190) - result -= 5; // too fat + } else if (slave.weight > 190) { + result -= 5; + } // too fat } return FResult; })(); window.slaveCost = (function() { "use strict"; - let V, arcology, multiplier, cost; + let V; let arcology; let multiplier; let cost; /** @param {App.Entity.SlaveState} slave */ function slaveCost(slave, isStartingSlave) { @@ -1969,7 +2002,7 @@ window.slaveCost = (function() { /** @param {App.Entity.SlaveState} slave */ function calcMiscCost(slave) { - let totalInt = Math.clamp(slave.intelligence + slave.intelligenceImplant,-130,130); /* make absolutely certain we do not use +-131 in the next line */ + const totalInt = Math.clamp(slave.intelligence + slave.intelligenceImplant, -130, 130); /* make absolutely certain we do not use +-131 in the next line */ multiplier += Math.floor((Math.asin(totalInt/131))*50)/50; if (slave.pubertyXY === 0 && slave.physicalAge >= V.potencyAge && slave.genes === "XY" && arcology.FSGenderRadicalist === "unset") { multiplier += 0.5;