From 85ca69de9704c8da1a81cef60249fe24beb66b66 Mon Sep 17 00:00:00 2001 From: lowercasedonkey <lowercasedonkey@gmail.com> Date: Sun, 29 Nov 2020 19:58:12 -0500 Subject: [PATCH] preg --- src/cheats/PCCheatMenu.tw | 4 ++ src/events/intro/pcAppearance.js | 93 +++++++++++++++++++++++++++++--- 2 files changed, 89 insertions(+), 8 deletions(-) diff --git a/src/cheats/PCCheatMenu.tw b/src/cheats/PCCheatMenu.tw index 2080a5037f9..6980a938e82 100644 --- a/src/cheats/PCCheatMenu.tw +++ b/src/cheats/PCCheatMenu.tw @@ -3,6 +3,10 @@ <<set $nextButton = "Apply", $nextLink = "PCCheatMenuCheatDatatypeCleanup", $encyclopedia = "Design Your Master">> <<set $tempSlave = clone($PC)>> +<h1>DOM</h1> +<<includeDOM App.UI.Player.design()>> +<h1>SC</h1> + ''Cheat Editing Player Character'' <<link "[Cancel]" "Manage Personal Affairs">><<unset $tempSlave, $customEvalCode>><</link>> <br><br> diff --git a/src/events/intro/pcAppearance.js b/src/events/intro/pcAppearance.js index 19e41c6a708..430f85c3d80 100644 --- a/src/events/intro/pcAppearance.js +++ b/src/events/intro/pcAppearance.js @@ -8,9 +8,19 @@ App.UI.Player.appearance = function(options) { options.addOption("Your race is", "race", V.PC).showTextBox() .addValueList(Array.from(setup.filterRaces, (k => [k, k.toLowerCase()]))); + if (V.cheatMode) { + options.addOption("Your race is", "origRace", V.PC).showTextBox() + .addValueList(Array.from(setup.filterRaces, (k => [k, k.toLowerCase()]))); + } + options.addOption("Your skin tone is", "skin", V.PC).showTextBox() .addValueList(makeAList(setup.naturalSkins)); + if (V.cheatMode) { + options.addOption("Your genetic skin tone is", "origSkin", V.PC).showTextBox() + .addValueList(makeAList(setup.naturalSkins)); + } + options.addOption("Your body", "markings", V.PC) .addValueList([["Is clear of blemishes", "none"], ["Has light freckling", "freckles"], ["Has heavy freckling", "heavily freckled"]]); @@ -20,6 +30,11 @@ App.UI.Player.appearance = function(options) { options.addOption("Your hair is", "hColor", V.PC).showTextBox() .addValueList(makeAList(App.Medicine.Modification.Color.Primary.map(color => color.value))); + if (V.cheatMode) { + options.addOption("Your original hair is", "origHColor", V.PC).showTextBox() + .addValueList(makeAList(App.Medicine.Modification.Color.Primary.map(color => color.value))); + } + function makeAList(iterable) { return Array.from(iterable, (k => [capFirstChar(k), k])); } @@ -49,7 +64,6 @@ App.UI.Player.names = function(options) { options.addOption("Your given name is", "slaveName", V.PC).showTextBox(); if (V.cheatMode) { - options.addOption("Name", "slaveName", V.PC).showTextBox(); options.addOption("Birth Name", "birthName", V.PC).showTextBox(); options.addOption("Surname", "slaveSurname", V.PC).showTextBox(); options.addOption("Birth Surname", "birthSurname", V.PC).showTextBox(); @@ -72,10 +86,10 @@ App.UI.Player.design = function() { let option; let r; let linkArray; - const freshStart = (V.freshPC === 1 || V.saveImported === 0); + const allowEdits = (V.freshPC === 1 || V.saveImported === 0 || V.cheatMode); // Title / age - if (freshStart || V.cheatMode) { + if (allowEdits) { options.addOption("You are a", "title", V.PC) .addValue("Masculine Master", 1, () => V.PC.genes = "XY").addValue("Feminine Mistress", 0, () => V.PC.genes = "XX"); @@ -89,7 +103,6 @@ App.UI.Player.design = function() { options.addOption("Visual Age", "visualAge", V.PC).showTextBox(); options.addOption("Ovary Age", "ovaryAge", V.PC).showTextBox(); options.addOption("Age Implant", "ageImplant", V.PC).showTextBox().addComment("0: no surgery, 1: age altering surgery"); - options.addOption("Player Aging", "playerAging", V).showTextBox().addComment("0: no aging, 1: no aging, but birthdays, 2: aging"); } else { options.addOption("You are", "actualAge", V.PC).showTextBox() .addRange(25, 35, "<", "Surprisingly young").addRange(40, 50, "<", "Entering middle age") @@ -136,7 +149,7 @@ App.UI.Player.design = function() { } // Appearance - if (freshStart) { + if (allowEdits) { App.UI.Player.appearance(options); options.addOption("Your face is", "faceShape", V.PC) @@ -167,7 +180,7 @@ App.UI.Player.design = function() { App.UI.Player.refreshmentChoice(options); // History - if (freshStart) { + if (allowEdits) { option = options.addOption("Before you came to the Free Cities, you were a", "career", V.PC); if (V.PC.career === "arcology owner") { option.addValue("Arcology owner", "arcology owner"); @@ -303,7 +316,7 @@ App.UI.Player.design = function() { // Sexuality App.UI.DOM.appendNewElement("h2", el, "Sexuality"); - if (freshStart) { + if (allowEdits) { options = new App.UI.OptionsGroup(); if (V.PC.vagina !== -1 && V.PC.dick !== 0) { @@ -347,6 +360,20 @@ App.UI.Player.design = function() { option.addComment("Sex scene variations; more difficult reputation maintenance; some unique opportunities, especially with breasts."); } + if (V.cheatMode) { + options.addOption("Vagina", "vagina", V.PC).showTextBox(); + options.addOption("New vagina", "newVag", V.PC).showTextBox(); + options.addOption("Dick", "dick", V.PC).showTextBox(); + options.addOption("Balls", "balls", V.PC).addValueList([ + ["Normal", 3], + ["Big", 5], + ["Huge", 9], + ["Monstrous", 30] + ]) + .showTextBox(); + options.addOption("Balls implant", "ballsImplant", V.PC).showTextBox(); + } + if (V.PC.vagina !== -1) { option = options.addOption("You are", "preg", V.PC) .addValue("Taking contraceptives", -1, () => { V.PC.pregType = 0; V.PC.labor = 0; }) @@ -354,6 +381,10 @@ App.UI.Player.design = function() { .addRange(16, 37, "<=", "Pregnant").addCallback(() => { V.PC.pregType = 1; V.PC.labor = 0; }) .addRange(40, 42, "<=", "Ready to drop").addCallback(() => { V.PC.pregType = 1; V.PC.labor = 0; }) .addRange(43, 42, ">", "Ready to drop with octuplets").addCallback(() => { V.PC.pregType = 8; V.PC.labor = 1; }); + if (V.cheatMode) { + option.showTextBox(); + option.addComment(`how far along your pregnancy is (pregMood kicks in at 24+ weeks) - -2: infertile, -1: contraceptives, 0: not pregnant, 1 - 42: pregnant, 43+: giving birth`); + } if (V.PC.preg === -1) { option.addComment("You can't get pregnant, however there will be a slight increase to living expenses."); } @@ -373,6 +404,23 @@ App.UI.Player.design = function() { } else if (V.PC.pregMood === 2) { option.addComment("Sex scene alterations; slaves will fear you more, but will become more submissive to you."); } + + if (V.cheatMode) { + option = options.addOption("Fetus Count", "pregType", V.PC).showTextBox().addComment(`how many you're having (1-8)`); + option = options.addOption("Pregnancy Source", "pregSource", V.PC) + .addValueList([ + ["Unknown", 0], + ["Self-impregnation", -1], + ["Citizen", -2], + ["Former Master", -3], + ["Male arc owner", -4], + ["Client", -5], + ["Societal Elite", -6], + ["Designer baby", -7], + ["Futanari Sister", -9], + ]) + .showTextBox(); + } } if (V.PC.title === 1 && V.PC.boobs <= 100) { @@ -386,15 +434,44 @@ App.UI.Player.design = function() { ["F-cups", 1100], ["G-cups", 1300] ]); + option.showTextBox(); if (V.PC.boobs >= 500) { options.addOption("Your breasts are", "boobsImplant", V.PC) .addValueList([ ["All natural", 0], ["Fake", 400] - ]); + ]) + .showTextBox("CCs"); + } + + if (V.cheatMode) { + if (V.PC.boobs >= 500) { + options.addOption("Your breasts are", "lactation", V.PC) + .addValueList([ + ["Lactating", 1], + ["Not Lactating", 0] + ]); + } } + options.addOption("Your butt size", "butt", V.PC) + .addValueList([ + ["Normal", 2], + ["Big", 3], + ["Huge", 4], + ["Enormous", 5], + ]) + .showTextBox(); + + options.addOption("Your butt is", "buttImplant", V.PC) + .addValueList([ + ["All natural", 0], + ["Fake", 1] + ]) + .showTextBox("CCs"); + + options.addOption("You are genetically", "genes", V.PC) .addValue("XY").addValue("XX"); -- GitLab