diff --git a/src/data/backwardsCompatibility/datatypeCleanup.js b/src/data/backwardsCompatibility/datatypeCleanup.js index 07adf18d76526666d269373cd7c5999ce8f40768..7f5e6e93a66d015c75e400d5b2be3f0406cf9ca5 100644 --- a/src/data/backwardsCompatibility/datatypeCleanup.js +++ b/src/data/backwardsCompatibility/datatypeCleanup.js @@ -1364,6 +1364,9 @@ globalThis.PCDatatypeCleanup = (function PCDatatypeCleanup() { PC.fertPeak = Math.clamp(+PC.fertPeak, 0, 4) || 0; PC.pregSource = +PC.pregSource || 0; PC.pregMood = Math.clamp(+PC.pregMood, 0, 2) || 0; + if (typeof PC.pregControl !== "string") { + PC.pregControl = "none"; + } PC.forcedFertDrugs = Math.max(+PC.forcedFertDrugs, 0) || 0; WombNormalizePreg(PC); } diff --git a/src/endWeek/economics/neighborsDevelopment.js b/src/endWeek/economics/neighborsDevelopment.js index e4eff32af7f1421e4f7fe1547ad8bbf657963642..aaeba25ae78a5f87aee8192af8c492b50394af6f 100644 --- a/src/endWeek/economics/neighborsDevelopment.js +++ b/src/endWeek/economics/neighborsDevelopment.js @@ -2109,20 +2109,8 @@ App.EndWeek.neighborsDevelopment = function() { r.push(`Your agent <span class="pink">${leader.slaveName}</span> successfully pushes it to <span class="yellow">adopt Aztec Revivalism,</span> since ${he}'s Mexican ${himself} and can claim high honor in such a society.`); arc.FSAztecRevivalist = 5; return; - } else if (validFSes.includes("FSNeoImperialist") && leader.nationality === "German") { - r.push(`Your agent <span class="pink">${leader.slaveName}</span> successfully pushes it to <span class="yellow">adopt Neo-Imperialism,</span> since ${he}'s German ${himself} and can easily cement ${his} rule with Imperial directives in your name.`); - arc.FSNeoImperialist = 5; - return; - } else if (validFSes.includes("FSNeoImperialist") && leader.nationality === "French") { - r.push(`Your agent <span class="pink">${leader.slaveName}</span> successfully pushes it to <span class="yellow">adopt Neo-Imperialism,</span> since ${he}'s French ${himself} and can easily cement ${his} rule with Imperial directives in your name.`); - arc.FSNeoImperialist = 5; - return; - } else if (validFSes.includes("FSNeoImperialist") && leader.nationality === "Spanish") { - r.push(`Your agent <span class="pink">${leader.slaveName}</span> successfully pushes it to <span class="yellow">adopt Neo-Imperialism,</span> since ${he}'s Spanish ${himself} and can easily cement ${his} rule with Imperial directives in your name.`); - arc.FSNeoImperialist = 5; - return; - } else if (validFSes.includes("FSNeoImperialist") && leader.nationality === "English") { - r.push(`Your agent <span class="pink">${leader.slaveName}</span> successfully pushes it to <span class="yellow">adopt Neo-Imperialism,</span> since ${he}'s English ${himself} and can easily cement ${his} rule with Imperial directives in your name.`); + } else if (validFSes.includes("FSNeoImperialist") && ["German", "French", "Spanish", "English"].includes(leader.nationality)) { + r.push(`Your agent <span class="pink">${leader.slaveName}</span> successfully pushes it to <span class="yellow">adopt Neo-Imperialism,</span> since ${he}'s ${leader.nationality} ${himself} and can easily cement ${his} rule with Imperial directives in your name.`); arc.FSNeoImperialist = 5; return; } else if (validFSes.includes("FSRomanRevivalist") && leader.behavioralQuirk === "confident") { diff --git a/src/events/scheduled/assholeKnight.js b/src/events/scheduled/assholeKnight.js index 9a0a78e4ae5b149e575987d698f8273366fdad36..8375dbf0a44ed8047c3e50dc5a7f4e1c61d8b480 100644 --- a/src/events/scheduled/assholeKnight.js +++ b/src/events/scheduled/assholeKnight.js @@ -23,17 +23,18 @@ App.Events.SEAssholeKnight = class SEAssholeKnight extends App.Events.BaseEvent assholeKnight.behavioralQuirk = "none"; assholeKnight.trust = random(-30, -20); assholeKnight.butt = random(0, 1); - assholeKnight.faceShape = "masculine"; assholeKnight.height = random(175, 195); assholeKnight.fetish = "sadist"; assholeKnight.fetishStrength = 80; assholeKnight.preg = 0; if (assholeKnight.genes === "XY") { + assholeKnight.faceShape = "masculine"; assholeKnight.dick = random(3, 5); assholeKnight.balls = random(2, 4); assholeKnight.scrotum = assholeKnight.balls; assholeKnight.boobs = 150; } else { + assholeKnight.faceShape = "androgynous"; assholeKnight.vagina = 0; assholeKnight.boobs = Math.min(assholeKnight.boobs, 450); } diff --git a/src/gui/Encyclopedia/encyclopediaSlaveLeaders.js b/src/gui/Encyclopedia/encyclopediaSlaveLeaders.js index e5f502e1475b14dc10651b5bb1bf49f517c09933..91db03c7994c6ed90e32922e120e3aed8c599c64 100644 --- a/src/gui/Encyclopedia/encyclopediaSlaveLeaders.js +++ b/src/gui/Encyclopedia/encyclopediaSlaveLeaders.js @@ -6,7 +6,7 @@ App.Encyclopedia.addArticle("Leadership Positions", function() { return r; }, "slaveLeaders"); -App.Encyclopedia.addArticle("Career Experiences", function() { +App.Encyclopedia.addArticle("Career Experience", function() { const link = (text, article, className) => App.Encyclopedia.Dialog.linkDOM(text, article, className); const devotion = (text="devotion") => link(text, "From Rebellious to Devoted", "hotpink"); const trust = (text="trust") => link(text, "Trust", "mediumaquamarine"); @@ -430,7 +430,7 @@ App.Encyclopedia.addArticle("Wardeness", function() { App.Encyclopedia.addCategory("slaveLeaders", function() { const r = []; r.push(App.Encyclopedia.Dialog.linkDOM("Leadership Positions")); - r.push(App.Encyclopedia.Dialog.linkDOM("Career Experiences")); + r.push(App.Encyclopedia.Dialog.linkDOM("Career Experience")); r.push(App.Encyclopedia.Dialog.linkDOM("Attendant")); r.push(App.Encyclopedia.Dialog.linkDOM("Matron")); r.push(App.Encyclopedia.Dialog.linkDOM("Bodyguard")); diff --git a/src/gui/Encyclopedia/encyclopediaSlaveQuirks.js b/src/gui/Encyclopedia/encyclopediaSlaveQuirks.js index 056605ad44383d2bda49f91fee9bb7c6e05e3805..b009357c60c2c667e668d08748acd6555c6e6634 100644 --- a/src/gui/Encyclopedia/encyclopediaSlaveQuirks.js +++ b/src/gui/Encyclopedia/encyclopediaSlaveQuirks.js @@ -1,15 +1,14 @@ App.Encyclopedia.addArticle("Quirks", function() { const f = new DocumentFragment(); const r = new SpacedTextAccumulator(f); - r.push(App.UI.DOM.makeElement("span", "Quirks", ["bold"])); - r.push("are positive slave qualities. They increase slaves' value and performance at sexual assignments, and each quirk also has other, differing effects. Each quirk is associated with a corresponding"); - r.push(App.Encyclopedia.Dialog.linkDOM("flaw", "Flaws")); - r.push(", and slave can have two quirks (a sexual quirk and a behavioral quirk), just like flaws. Quirks may appear randomly, but the most reliable way to give slaves quirks is to soften flaws."); - r.toParagraph(); - - r.push("The", App.Encyclopedia.Dialog.linkDOM("Head Girl")); - r.push("can be ordered to soften flaws, and the player character can soften flaws with personal attention. Flaws can also be naturally softened into quirks by fetishes."); - r.toNode("div"); + r.push(App.UI.DOM.makeElement("span", "Quirks", ["bold"])); + r.push("are positive slave qualities. They increase slaves' value and performance at sexual assignments, and each quirk also has other, differing effects. Each quirk is associated with a corresponding"); + r.push(App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("flaw", "Flaws"), ", and slave can have two quirks (a sexual quirk and a behavioral quirk), just like flaws. Quirks may appear randomly, but the most reliable way to give slaves quirks is to soften flaws.")); + r.toParagraph(); + + r.push("The", App.Encyclopedia.Dialog.linkDOM("Head Girl")); + r.push("can be ordered to soften flaws, and the player character can soften flaws with personal attention. Flaws can also be naturally softened into quirks by fetishes."); + r.toNode("div"); return f; }, "slaveQuirks"); @@ -120,10 +119,11 @@ App.Encyclopedia.addArticle("Insecure", function() { App.Encyclopedia.addArticle("Sinful", function() { const f = new DocumentFragment(); const r = new SpacedTextAccumulator(f); - r.push(App.UI.DOM.makeElement("span", "Sinful", ["bold"]), "is a behavioral", App.Encyclopedia.Dialog.linkDOM("quirk", "Quirks"), "developed from the"); - r.push(App.Encyclopedia.Dialog.linkDOM("devout"), App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("flaw", "Flaws"), ".")); - r.push("Slaves may naturally become", App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("humiliation fetishists", "Humiliation Fetishists"), ".")); - r.push("In addition to the standard value and sexual assignment advantages, they get bonus", App.Encyclopedia.Dialog.linkDOM("devotion", "From Rebellious to Devoted", "hotpink"), "while performing", App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("whoring."), ".")); + r.push(App.UI.DOM.makeElement("span", "Sinful", ["bold"]), "is a behavioral", App.Encyclopedia.Dialog.linkDOM("quirk", "Quirks"), "developed from the"); + r.push(App.Encyclopedia.Dialog.linkDOM("devout"), App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("flaw", "Flaws"), ".")); + r.push("Slaves may naturally become", App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("humiliation fetishists", "Humiliation Fetishists"), ".")); + r.push("In addition to the standard value and sexual assignment advantages, they get bonus", App.Encyclopedia.Dialog.linkDOM("devotion", "From Rebellious to Devoted", "hotpink"), "while performing", App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("whoring."), ".")); + r.toNode("div"); return f; }, "slaveQuirks"); @@ -247,30 +247,30 @@ App.Encyclopedia.addArticle("Unflinching", function() { }, "slaveQuirks"); App.Encyclopedia.addCategory("slaveQuirks", function() { - const f = new DocumentFragment(); + const f = new DocumentFragment(); let r = []; r.push(App.Encyclopedia.Dialog.linkDOM("Adores men")); r.push(App.Encyclopedia.Dialog.linkDOM("Adores women")); r.push(App.Encyclopedia.Dialog.linkDOM("Advocate")); r.push(App.Encyclopedia.Dialog.linkDOM("Confident")); r.push(App.Encyclopedia.Dialog.linkDOM("Cutting")); - r.push(App.Encyclopedia.Dialog.linkDOM("Fitness")); + r.push(App.Encyclopedia.Dialog.linkDOM("Fitness")); r.push(App.Encyclopedia.Dialog.linkDOM("Funny")); r.push(App.Encyclopedia.Dialog.linkDOM("Insecure")); r.push(App.Encyclopedia.Dialog.linkDOM("Sinful")); - App.Events.addNode(f, [App.UI.DOM.combineNodes("Behavioral", App.Encyclopedia.Dialog.linkDOM("Quirks"), ":"), App.UI.DOM.generateLinksStrip(r)], "div"); + App.Events.addNode(f, ["Behavioral", App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("Quirks"), ":"), App.UI.DOM.generateLinksStrip(r)], "div"); - r = []; + r = []; r.push(App.Encyclopedia.Dialog.linkDOM("Caring")); - r.push(App.Encyclopedia.Dialog.linkDOM("Gagfuck Queen")); + r.push(App.Encyclopedia.Dialog.linkDOM("Gagfuck Queen")); r.push(App.Encyclopedia.Dialog.linkDOM("Painal Queen")); r.push(App.Encyclopedia.Dialog.linkDOM("Perverted")); r.push(App.Encyclopedia.Dialog.linkDOM("Romantic")); r.push(App.Encyclopedia.Dialog.linkDOM("Size Queen")); - r.push(App.Encyclopedia.Dialog.linkDOM("Strugglefuck Queen")); + r.push(App.Encyclopedia.Dialog.linkDOM("Strugglefuck Queen")); r.push(App.Encyclopedia.Dialog.linkDOM("Tease")); r.push(App.Encyclopedia.Dialog.linkDOM("Unflinching")); - App.Events.addNode(f, [App.UI.DOM.combineNodes("Sexual", App.Encyclopedia.Dialog.linkDOM("Quirks"), ":"), App.UI.DOM.generateLinksStrip(r)], "div"); + App.Events.addNode(f, ["Sexual", App.UI.DOM.combineNodes(App.Encyclopedia.Dialog.linkDOM("Quirks"), ":"), App.UI.DOM.generateLinksStrip(r)], "div"); return f; }); diff --git a/src/player/js/enslavePlayer.js b/src/player/js/enslavePlayer.js index 2c7aa5b287b40e181684118cca1b537d80874c40..a15e598b5737483a62ecfc809ad615bf83622754 100644 --- a/src/player/js/enslavePlayer.js +++ b/src/player/js/enslavePlayer.js @@ -85,13 +85,10 @@ globalThis.convertPlayerToSlave = function(player, badEnd = "boring") { slave.currentRules = []; slave.HGExclude = 0; slave.choosesOwnChastity = 0; - slave.pregControl = "none"; slave.readyProsthetics = []; slave.onDiet = 0; slave.haircuts = 0; slave.newGamePlus = 0; - /* eslint-disable camelcase*/ - slave.NCSyouthening = 0; slave.override_Race = 0; slave.override_Skin = 0; slave.override_Eye_Color = 0;