From f912f5c40472d372de3d784563a6b657ace5a933 Mon Sep 17 00:00:00 2001 From: Pregmodder <pregmodder@gmail.com> Date: Wed, 23 Feb 2022 19:24:58 -0500 Subject: [PATCH] ideal age cleanup first pass --- CHANGELOG.md | 3 + js/003-data/policiesData.js | 8 +-- src/cheats/cheatEditArcology.js | 2 +- src/endWeek/economics/arcmgmt.js | 65 ++++++++++------------ src/events/intro/introSummary.js | 4 +- src/npc/descriptions/descriptionWidgets.js | 2 +- src/npc/descriptions/longSlave.js | 2 + 7 files changed, 43 insertions(+), 43 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cc1ed1e8f53..62f23305ec5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) ## Unreleased +* age now centered around an ideal age + policies to manage it +* fixes + ## 0.10.7.1-4.0.0-alpha.13 - 2022-02-12 * first stages of a rudimentary modding API diff --git a/js/003-data/policiesData.js b/js/003-data/policiesData.js index b2b82cd5f23..1c6bd4de4d9 100644 --- a/js/003-data/policiesData.js +++ b/js/003-data/policiesData.js @@ -314,14 +314,14 @@ App.Data.Policies.Selection = { ], "policies.idealAge": [ { - title: "Ideal Age Of Sexual Appeal", + title: "Age Of Sexual Appeal", get text() { const el = new DocumentFragment; if(V.idealAge === 18) { - el.append(`most consider the ideal age of sexual appeal to be the old world default of 18. You will use your influence to change the sexually ideal age to `); + el.append(`many consider the most sexually appealing age to be the old world default of 18. You will use your influence to change the sexual ideal to `); } else { - el.append(`most consider the ideal age of sexual appeal to be ${V.idealAge}. You will use your influence to change the sexually ideal age to `); + el.append(`many consider the most sexually appealing age to be ${V.idealAge}. You will use your influence to change the sexual ideal to `); } el.append( App.UI.DOM.makeElement( @@ -348,7 +348,7 @@ App.Data.Policies.Selection = { return el; }, get activatedText() { - return `you are using your personal influence to make ${V.targetIdealAge} the most sexually appealing age. The current percieved ideal age of sexual appeal is ${V.idealAge}.`; + return `you are using your personal influence to make ${V.targetIdealAge} the most sexually appealing age. The current percieved ideal age is ${V.idealAge}.`; }, onRepeal: function() { if(V.arcologies[0].FSMaturityPreferentialist !== "unset") { diff --git a/src/cheats/cheatEditArcology.js b/src/cheats/cheatEditArcology.js index 3fa3fdac49e..aebc9076f1a 100644 --- a/src/cheats/cheatEditArcology.js +++ b/src/cheats/cheatEditArcology.js @@ -157,7 +157,7 @@ App.UI.Cheat.arcology = function(num) { option.addValue(capRace, race); } } - } + } } el.append(options.render()); return el; diff --git a/src/endWeek/economics/arcmgmt.js b/src/endWeek/economics/arcmgmt.js index bee0102dc00..2cb9acc3208 100644 --- a/src/endWeek/economics/arcmgmt.js +++ b/src/endWeek/economics/arcmgmt.js @@ -196,6 +196,36 @@ App.EndWeek.arcManagement = function() { if (V.arcologies[0].FSHedonisticDecadenceSMR === 1) { r.push(`The arcology must import a very large quantity of fattening food to plump up its slaves.`); } + r.push(`Polling finds the most attractive age to be ${V.idealAge}.`); + if (V.policies.idealAge) { + if (V.targetIdealAge !== V.idealAge) { + r.push(`You use your wealth and personal influence to try and shift it to ${V.targetIdealAge}`); + V.idealAgeAdoption += V.rep / 100; + if(V.idealAgeAdoption > 100) { + const adoptionModifier = Math.floor(V.idealAgeAdoption / 100); + if(V.targetIdealAge > V.idealAge) { + V.idealAge = Math.clamp(Math.floor(V.idealAge + adoptionModifier), V.idealAge, V.targetIdealAge); + } else { + V.idealAge = Math.clamp(Math.floor(V.idealAge - adoptionModifier), V.idealAge, V.targetIdealAge); + } + if (adoptionModifier > 1) { + r.push(`and, with your peerless reptutation, ${V.idealAge === V.targetIdealAge ? `find it <span class="green">accepted wholeheartedly` : `<span class="green">quickly gain support`}.</span>`); + } else if (V.idealAge === V.targetIdealAge) { + + } else { + r.push(`, but tastes don't change quickly, so it ends up at ${V.idealAge}.`); + } + V.idealAgeAdoption = V.idealAgeAdoption - (100 * adoptionModifier); + } else { + if (V.idealAgeAdoption <= 0) { + r.push(r.pop() + `; unfortunately, your efforts <span class="red">have no effect</span> on what others find sexually appealing, and so it remains where it is.`); + } + else { + r.push(`and make <span class="yellow">some progress</span> in doing so, but for now, society's tastes do not change.`); + } + } + } + } if (V.ACitizens > V.ASlaves * 2) { /* This will need to go away Eventually*/ r.push(`Since most citizens do not own sex slaves, <span class="yellowgreen">demand for sexual services is intense.</span>`); @@ -1058,41 +1088,6 @@ App.EndWeek.arcManagement = function() { function policiesImpact() { const el = new DocumentFragment(); const r = []; - if(V.policies.idealAge) { - if(V.targetIdealAge !== V.idealAge) { - r.push(`You spend <span class="yellow">${cashFormat(1500)}</span> and use your personal influence to shift the percieved ideal age of sexual appeal.`); - V.idealAgeAdoption += V.rep / 100; - if(V.idealAgeAdoption > 100) { - const adoptionModifier = Math.floor(V.idealAgeAdoption / 100); - if(V.targetIdealAge > V.idealAge) { - V.idealAge = Math.clamp(Math.floor(V.idealAge + adoptionModifier),V.idealAge,V.targetIdealAge); - } else { - V.idealAge = Math.clamp(Math.floor(V.idealAge - adoptionModifier),V.idealAge,V.targetIdealAge); - } - if(adoptionModifier > 1) { - r.push(`Your peerless reptutation <span class="green">rapidly accelerates</span> the adoption of your proposed ideal age of sexual appeal, and most now consider it to be ${V.idealAge}.`); - } else { - r.push(`The percieved ideal age of sexual appeal has shifted ${V.idealAge === V.targetIdealAge ? "to" : "toward"} ${V.targetIdealAge}${V.idealAge !== V.targetIdealAge ? ", and most now consider the ideal age to be " + V.idealAge : ""}.`); - } - if(V.targetIdealAge === V.idealAge) { - r.push(`The percieved ideal age of sexual appeal has <span class="green">reached your intended target.</span>`); - } - V.idealAgeAdoption = V.idealAgeAdoption - (100 * adoptionModifier); - } - else { - if(V.idealAgeAdoption <= 0) { - r.push(`Unfortunately, your efforts <span class="red">had no effect</span> on the perceived ideal age of sexual appeal, and it remains ${V.idealAge}.`); - } - else { - r.push(`You have made <span class="yellow">partial progress</span> in shifting the perceived ideal age of sexual appeal, but for now, it remains ${V.idealAge}.`); - } - } - } else { - r.push(`Most continue to consider the ideal age of sexual appeal to be ${V.idealAge}.`); - } - } else { - r.push(`Most consider the ideal age of sexual appeal to be ${V.idealAge}.`); - } if (V.policies.retirement.menial2Citizen === 1) { slaveDemandU *= 0.8; slaveDemandT *= 0.75; diff --git a/src/events/intro/introSummary.js b/src/events/intro/introSummary.js index f72206639a9..117d9a3f348 100644 --- a/src/events/intro/introSummary.js +++ b/src/events/intro/introSummary.js @@ -623,8 +623,8 @@ App.Intro.summary = function() { .addComment("May cause issues with New Game and initial slaves if set below 45.").showTextBox(); V.idealAge = Math.clamp(V.idealAge, minAge, maxAge); - options.addOption("Initial ideal age of sexual appeal will be", "idealAge") - .addComment("Percieved beauty will decrease the farther (younger or older) a body is visually from this age.").showTextBox(); + options.addOption("Prime age of sexual appeal", "idealAge") + .addComment("Percieved beauty will decrease the farther (younger or older) one's appearance is from the ideal.").showTextBox(); V.fertilityAge = Math.clamp(V.fertilityAge, 3, 18); options.addOption("Girls will not be able to become pregnant if their age is under", "fertilityAge").showTextBox(); diff --git a/src/npc/descriptions/descriptionWidgets.js b/src/npc/descriptions/descriptionWidgets.js index 9afaef4b742..232a6f39e6c 100644 --- a/src/npc/descriptions/descriptionWidgets.js +++ b/src/npc/descriptions/descriptionWidgets.js @@ -472,7 +472,7 @@ App.Desc.ageAndHealth = function(slave) { if(slave.birthWeek >= 52 && V.seeAge) { r += `is going to turn ${age} this week`; if (V.showAgeDetail && V.seeAge !== 0 && slave.actualAge !== V.idealAge) { - r += `, and people are looking forward to ${his} birthday with great interest.`; + r += `, and people are already beginning to eye ${him}.`; } else { r += `.`; } diff --git a/src/npc/descriptions/longSlave.js b/src/npc/descriptions/longSlave.js index a996c0e7265..7d8b3ef9fff 100644 --- a/src/npc/descriptions/longSlave.js +++ b/src/npc/descriptions/longSlave.js @@ -293,6 +293,7 @@ App.Desc.longSlave = function(slave, {descType, market = 0, prisonCrime, noArt} r.push(`bimbo by societal trends.`); } + /* Needs contemplation. Slightly redundant with descriptionsWidgets. if(slave.visualAge === V.idealAge) { if(slave.actualAge === V.idealAge) { r.push(`${He} is ${slave.actualAge}, `); @@ -324,6 +325,7 @@ App.Desc.longSlave = function(slave, {descType, market = 0, prisonCrime, noArt} } r.push(`but due to ${his} appearing to be ${slave.visualAge}, there is less enthusiasm for ${him} than there might otherwise be.`); } + */ $(p).append(r.join(" ")); -- GitLab