From c0f1e51d0c33103092bf347bc9e24585f827cc15 Mon Sep 17 00:00:00 2001 From: lowercasedonkey <lowercasedonkey@gmail.com> Date: Fri, 18 Dec 2020 11:20:35 -0500 Subject: [PATCH] move eye color to physical, move physical to JS --- src/npc/startingGirls/startingGirls.js | 493 +++++++++++++------------ src/npc/startingGirls/startingGirls.tw | 3 +- 2 files changed, 261 insertions(+), 235 deletions(-) diff --git a/src/npc/startingGirls/startingGirls.js b/src/npc/startingGirls/startingGirls.js index a9998e8e1a7..388070a5aa4 100644 --- a/src/npc/startingGirls/startingGirls.js +++ b/src/npc/startingGirls/startingGirls.js @@ -686,23 +686,35 @@ App.StartingGirls.applyPlayerOrigin = function(slave) { App.StartingGirls.physical = function(slave) { const el = new DocumentFragment(); - const _options = new App.UI.OptionsGroup(); - let _option; + const options = new App.UI.OptionsGroup(); + let option; - _options.addOption(`Height: ${heightToEitherUnit(slave.height)}`, "height", slave).showTextBox("cm") + options.addOption(`Height: ${heightToEitherUnit(slave.height)}`, "height", slave).showTextBox("cm") .addRange(145, 150, "<", "Petite") .addRange(155, 160, "<", "Short") .addRange(165, 170, "<", "Average") .addRange(180, 185, "<", "Tall") .addRange(190, 185, ">=", "Very tall"); - _option = _options.addOption(`Average height for a ${slave.actualAge} year old """is ${heightToEitherUnit(Math.round(Height.mean(slave)))}"""`) - .customButton("Make average", () => resyncSlaveHight(slave))); + option = options.addOption(`Average height for a ${slave.actualAge} year old """is ${heightToEitherUnit(Math.round(Height.mean(slave)))}"""`) + .customButton( + "Make average", + () => resyncSlaveHight(slave), + "" + ); if (V.cheatMode === 1) { - _option.customButton("Make dwarf", () => slave.height = Height.random(slave, {limitMult: [-4, -1], spread: 0.15})) - .customButton("Make giant", () => ${slave.height} = Height.random(slave, {limitMult: [3, 10], spread: 0.15}))); + option.customButton( + "Make dwarf", + () => slave.height = Height.random(slave, {limitMult: [-4, -1], spread: 0.15}), + "" + ) + .customButton( + "Make giant", + () => slave.height = Height.random(slave, {limitMult: [3, 10], spread: 0.15}), + "" + ); } - _options.addOption("Weight", "weight", slave) + options.addOption("Weight", "weight", slave) .addRange(-100, -95, "<", "Emaciated") .addRange(-50, -30, "<", "Skinny") .addRange(-20, -10, "<", "Thin") @@ -714,7 +726,7 @@ App.StartingGirls.physical = function(slave) { .addRange(180, 190, "<", "Super obese") .addRange(200, 190, ">=", "Dangerously obese"); - _options.addOption("Muscles", "muscles", slave) + options.addOption("Muscles", "muscles", slave) .addRange(-100, -96, "<", "Frail") .addRange(-66, -51, "<", "Very weak") .addRange(-41, -6, "<", "Weak") @@ -724,7 +736,7 @@ App.StartingGirls.physical = function(slave) { .addRange(65, 95, "<", "Quite muscular") .addRange(100, 95, ">=", "Ripped"); - _options.addOption("Waist", "waist", slave) + options.addOption("Waist", "waist", slave) .addRange(-100, -95, "<", " Absurd") .addRange(-55, -40, "<", "Hourglass") .addRange(-25, -15, "<", "Feminine") @@ -733,14 +745,14 @@ App.StartingGirls.physical = function(slave) { .addRange(55, 95, "<", "Ugly") .addRange(100, 10, ">=", "Masculine"); - _option = _options.addOption("Facial appearance", "faceShape", slave) - .addValue("Normal", "normal") - if (V.seeDicks !== 0) { - _option.addValue("Masculine", "masculine"); - } - _option.addValueList([["Androgynous", "androgynous"], ["Cute", "cute"], ["Sensual", "sensual"], ["Exotic", "exotic"]]); + option = options.addOption("Facial appearance", "faceShape", slave) + .addValue("Normal", "normal"); + if (V.seeDicks !== 0) { + option.addValue("Masculine", "masculine"); + } + option.addValueList([["Androgynous", "androgynous"], ["Cute", "cute"], ["Sensual", "sensual"], ["Exotic", "exotic"]]); - _options.addOption("Facial attractiveness", "face", slave) + options.addOption("Facial attractiveness", "face", slave) .addRange(-100, -95, "<", "Very ugly") .addRange(-55, -40, "<", "Ugly") .addRange(-15, -10, "<", "Unattractive") @@ -749,23 +761,23 @@ App.StartingGirls.physical = function(slave) { .addRange(55, 95, "<", "Beautiful") .addRange(100, 95, ">=", "Very beautiful"); - _option = _options.addOption("Lips", "lips", slave) + option = options.addOption("Lips", "lips", slave) .addRange(5, 10, "<", "Thin") .addRange(15, 20, "<", "Normal") .addRange(25, 40, "<", "Pretty") .addRange(55, 70, "<", "Plush"); if (V.seeExtreme === 1) { - _option.addRange(85, 95, "<", "Huge") + option.addRange(85, 95, "<", "Huge") .addRange(100, 95, ">=", "Facepussy"); } else { - _option.addRange(85, 70, ">=", "Huge"); + option.addRange(85, 70, ">=", "Huge"); } - _options.addOption("Voice", "voice", slave) - .addValueList([["Mute", 0], ["Deep", 1], ["Normal", 2], ["High", 3]])); + options.addOption("Voice", "voice", slave) + .addValueList([["Mute", 0], ["Deep", 1], ["Normal", 2], ["High", 3]]); if (slave.voice !== 0) { - _options.addOption("V.language", "accent", slave) + options.addOption(V.language, "accent", slave) .addValueList([ ["Unaccented", 0], [`Pretty ${aNational(slave.nationality)} accent`, 1], @@ -774,30 +786,30 @@ App.StartingGirls.physical = function(slave) { ]); } - _option = _options.addOption("Teeth", "teeth", slave) - .addValueList([ - ["Crooked", "crooked"], - ["Gapped", "gapped"], - ["Braces", "straightening braces"] - ]); + option = options.addOption("Teeth", "teeth", slave) + .addValueList([ + ["Crooked", "crooked"], + ["Gapped", "gapped"], + ["Braces", "straightening braces"] + ]); if (slave.physicalAge >= 12) { if (slave.teeth === "baby" || slave.teeth === "mixed") { slave.teeth = "normal"; } - _option.addValue("Straight", "normal"); + option.addValue("Straight", "normal"); } else if (slave.physicalAge >= 6) { if (slave.teeth === "baby" || slave.teeth === "normal" || slave.teeth === "") { slave.teeth = "mixed"; } - _option.addValue("Mixed adult & child", "mixed"); + option.addValue("Mixed adult & child", "mixed"); } else { if (slave.teeth === "mixed" || slave.teeth === "normal" || slave.teeth === "") { slave.teeth = "mixed"; } - _option.addValue("Baby", "baby"); + option.addValue("Baby", "baby"); } - _options.addOption("Breasts", "boobs", slave).showTextBox("CCs") + options.addOption("Breasts", "boobs", slave).showTextBox("CCs") .addRange(200, 200, "<=", "Flat (AA-cup)") .addRange(300, 300, "<=", "Small (A-cup)") .addRange(400, 400, "<=", "Medium (B-cup)") @@ -809,240 +821,251 @@ App.StartingGirls.physical = function(slave) { .addRange(6000, 6000, "<=", "Monstrous") .addRange(8000, 6000, ">", "Science Experiment"); - _options.addOption("Natural shape", "boobShape", slave) - .addValueList([ - ["Normal", "normal"], - ["Perky", "perky"], - ["Torpedo-shaped", "torpedo-shaped"], - ["Wide-set", "wide-set"], - ["Downward-facing", "downward-facing"], - ["Saggy", "saggy"] - ]); - - _options.addOption("Lactation", "lactation", slave) + options.addOption("Natural shape", "boobShape", slave) + .addValueList([ + ["Normal", "normal"], + ["Perky", "perky"], + ["Torpedo-shaped", "torpedo-shaped"], + ["Wide-set", "wide-set"], + ["Downward-facing", "downward-facing"], + ["Saggy", "saggy"] + ]); + + options.addOption("Lactation", "lactation", slave) .addValue("Artificial", 2, () => slave.lactationDuration = 2) .addValue("Natural", 1, () => slave.lactationDuration = 2) .addValue("None", 0); - _options.addOption("Nipples", "nipples", slave) - .addValueList([["Tiny", "tiny"], ["Cute", "cute"], ["Puffy", "puffy"], ["Partially Inverted", "partially inverted"], ["Inverted", "inverted"], ["Huge", "huge"]]); + options.addOption("Nipples", "nipples", slave) + .addValueList([["Tiny", "tiny"], ["Cute", "cute"], ["Puffy", "puffy"], ["Partially Inverted", "partially inverted"], ["Inverted", "inverted"], ["Huge", "huge"]]); - _options.addOption("Areolae", "areolae", slave) - .addValueList([["Normal", 0], ["Large", 1], ["Wide", 2], ["Huge", 3], ["Massive", 4]]); + options.addOption("Areolae", "areolae", slave) + .addValueList([["Normal", 0], ["Large", 1], ["Wide", 2], ["Huge", 3], ["Massive", 4]]); - _options.addOption("Shoulders", "shoulders", slave) - .addValueList([["Very narrow", -2], ["Narrow", -1], ["Feminine", 0], ["Broad", 1], ["Very broad", 2]]); + options.addOption("Shoulders", "shoulders", slave) + .addValueList([["Very narrow", -2], ["Narrow", -1], ["Feminine", 0], ["Broad", 1], ["Very broad", 2]]); - _options.addOption("Hips", "hips", slave) - .addValueList([["Very narrow", -2], ["Narrow", -1], ["Normal", 0], ["Broad", 1], ["Very broad", 2]]); + options.addOption("Hips", "hips", slave) + .addValueList([["Very narrow", -2], ["Narrow", -1], ["Normal", 0], ["Broad", 1], ["Very broad", 2]]); - _options.addOption("Butt", "butt", slave) - .addValueList([["Flat", 0], ["Small", 1], ["Plump", 2], ["Big", 3], ["Huge", 4], ["Enormous", 5], ["Gigantic", 6], ["Massive", 7]]); + options.addOption("Butt", "butt", slave) + .addValueList([["Flat", 0], ["Small", 1], ["Plump", 2], ["Big", 3], ["Huge", 4], ["Enormous", 5], ["Gigantic", 6], ["Massive", 7]]); - _options.addOption("Anus", "anus", slave) - .addValueList([["Virgin", 0], ["Normal", 1], ["Veteran", 2], ["Gaping", 3]]); + options.addOption("Anus", "anus", slave) + .addValueList([["Virgin", 0], ["Normal", 1], ["Veteran", 2], ["Gaping", 3]]); if (slave.anus > 0) { + let comment; if (slave.analArea <= slave.anus) { - _comment = "Recently stretched to current size."; + comment = "Recently stretched to current size."; } else if (slave.analArea - slave.anus === 1) { - _comment = "Used to current size."; + comment = "Used to current size."; } else { - _comment = "Very broad."; + comment = "Very broad."; } - _options.addOption("External anus appearance", "anus", slave) - .addValueList([ - ["Recently stretched", slave.analArea = slave.anus], - ["Used to current size", slave.analArea = slave.anus+1], - ["Very broad", slave.analArea = slave.anus+2], - ]).addComment(_comment); + options.addOption("External anus appearance", "anus", slave) + .addValueList([ + ["Recently stretched", slave.analArea = slave.anus], + ["Used to current size", slave.analArea = slave.anus+1], + ["Very broad", slave.analArea = slave.anus+2], + ]).addComment(comment); } - _options.addOption("Vagina", "vagina", slave) - .addValue("No vagina", -1, () => { - slave.preg = 0; - WombFlush(slave); - slave.belly = 0; - slave.bellyPreg = 0; - slave.pubertyXX = 0; - slave.pubertyAgeXX = V.fertilityAge; - slave.ovaries= 0; - }).addValue("Virgin", 0, () => { - slave.preg} = -1; - slave.belly} = 0; - slave.bellyPreg} = 0; - slave.ovaries} = 1`); - }).addValue("Normal", 1, () => { - slave.preg} = -1; - slave.belly} = 0; - slave.bellyPreg} = 0; - slave.ovaries} = 1`); - }).addValue("Veteran", 2, () => { - slave.preg} = -1; - slave.belly} = 0; - slave.bellyPreg} = 0; - slave.ovaries} = 1`); - }).addValue("Gaping", 3, () => { - slave.preg} = -1; - slave.belly} = 0; - slave.bellyPreg} = 0; - slave.ovaries} = 1`); - })>> + options.addOption("Vagina", "vagina", slave) + .addValue("No vagina", -1, () => { + slave.preg = 0; + WombFlush(slave); + slave.belly = 0; + slave.bellyPreg = 0; + slave.pubertyXX = 0; + slave.pubertyAgeXX = V.fertilityAge; + slave.ovaries= 0; + }) + .addValue("Virgin", 0, () => { + slave.preg = -1; + slave.belly = 0; + slave.bellyPreg = 0; + slave.ovaries = 1; + }) + .addValue("Normal", 1, () => { + slave.preg = -1; + slave.belly = 0; + slave.bellyPreg = 0; + slave.ovaries = 1; + }) + .addValue("Veteran", 2, () => { + slave.preg = -1; + slave.belly = 0; + slave.bellyPreg = 0; + slave.ovaries = 1; + }) + .addValue("Gaping", 3, () => { + slave.preg = -1; + slave.belly = 0; + slave.bellyPreg = 0; + slave.ovaries = 1; + }); if (slave.vagina > -1) { if (slave.dick === 0) { - _options.addOption("Clit", "clit", slave) - .addValueList([["Normal", 0], ["Large", 1], ["Huge", 2]])); + options.addOption("Clit", "clit", slave) + .addValueList([["Normal", 0], ["Large", 1], ["Huge", 2]]); } - _options.addOption("Labia", "labia", slave) - .addValueList([["Normal", 0], ["Large", 1], ["Huge", 2], ["Huge Dangling", 3]])); + options.addOption("Labia", "labia", slave) + .addValueList([["Normal", 0], ["Large", 1], ["Huge", 2], ["Huge Dangling", 3]]); - _options.addOption("Vaginal wetness", "vaginaLube", slave) - .addValueList([["Dry", 0], ["Normal", 1], ["Excessive", 2]])); + options.addOption("Vaginal wetness", "vaginaLube", slave) + .addValueList([["Dry", 0], ["Normal", 1], ["Excessive", 2]]); if (V.seePreg !== 0) { /* This is only shown if slave has vagina */ - _options.addOption("Puberty", "pubertyXX", slave) - .addValue("Prepubescent", 0, () => {`); - slave.pubertyAgeXX} = V.fertilityAge; - slave.belly} = 0; - slave.bellyPreg} = 0; - WombFlush(${slave) - }).addValue("Postpubescent", 1)>> + options.addOption("Puberty", "pubertyXX", slave) + .addValue("Prepubescent", 0, () => { + slave.pubertyAgeXX = V.fertilityAge; + slave.belly = 0; + slave.bellyPreg = 0; + WombFlush(slave); + }).addValue("Postpubescent", 1); - _options.addOption("Age of puberty", "pubertyAgeXX", slave).showTextBox(); + options.addOption("Age of puberty", "pubertyAgeXX", slave).showTextBox(); if (slave.pubertyXX === 1) { - _option = _options.addOption("Pregnancy", "preg", slave); + option = options.addOption("Pregnancy", "preg", slave); if (V.seeHyperPreg === 1 && V.cheatMode === 1) { - _option.addValue("Bursting at the seams", 43, () => { - slave.pregType} = 150; - slave.pregWeek} = 43; - slave.pregKnown} = 1; - slave.belly} = 2700000; - slave.bellyPreg} = 2700000; - slave.pubertyXX} = 1; - })>> + option.addValue("Bursting at the seams", 43, () => { + slave.pregType = 150; + slave.pregWeek = 43; + slave.pregKnown = 1; + slave.belly = 2700000; + slave.bellyPreg = 2700000; + slave.pubertyXX = 1; + }); if (slave.preg === 43) { - _option.addComment("Extreme hyper pregnancy!"); + option.addComment("Extreme hyper pregnancy!"); } } - _option.addValue("Completely Filled", 42, () => { - slave.pregType} = 8; - slave.pregWeek} = 42; - slave.pregKnown} = 1; - slave.belly} = 120000; - slave.bellyPreg} = 120000; - slave.pubertyXX} = 1; + option.addValue("Completely Filled", 42, () => { + slave.pregType = 8; + slave.pregWeek = 42; + slave.pregKnown = 1; + slave.belly = 120000; + slave.bellyPreg = 120000; + slave.pubertyXX = 1; }).addValue("Ready to drop", 40, () => { - slave.pregType} = 1; - slave.pregWeek} = 40; - slave.pregKnown} = 1; - slave.belly} = 15000; - slave.bellyPreg} = 15000; - slave.pubertyXX} = 1; + slave.pregType = 1; + slave.pregWeek = 40; + slave.pregKnown = 1; + slave.belly = 15000; + slave.bellyPreg = 15000; + slave.pubertyXX = 1; }).addValue("Advanced", 34, () => { - slave.pregType} = 1; - slave.pregWeek} = 34; - slave.pregKnown} = 1; - slave.belly} = 10000; - slave.bellyPreg} = 10000; - slave.pubertyXX} = 1; + slave.pregType = 1; + slave.pregWeek = 34; + slave.pregKnown = 1; + slave.belly = 10000; + slave.bellyPreg = 10000; + slave.pubertyXX = 1; }).addValue("Showing", 27, () => { - slave.pregType} = 1; - slave.pregWeek} = 27; - slave.pregKnown} = 1; - slave.belly} = 5000; - slave.bellyPreg} = 5000; - slave.pubertyXX} = 1; + slave.pregType = 1; + slave.pregWeek = 27; + slave.pregKnown = 1; + slave.belly = 5000; + slave.bellyPreg = 5000; + slave.pubertyXX = 1; }).addValue("Early", 12, () => { - slave.pregType} = 1; - slave.pregWeek} = 12; - slave.pregKnown} = 1; - slave.belly} = 100; - slave.bellyPreg} = 100; - slave.pubertyXX} = 1; + slave.pregType = 1; + slave.pregWeek = 12; + slave.pregKnown = 1; + slave.belly = 100; + slave.bellyPreg = 100; + slave.pubertyXX = 1; }).addValue("None", 0, () => { - slave.pregType} = 0; - slave.belly} = 0; - slave.bellyPreg} = 0; - slave.pregSource} = 0; - slave.pregWeek} = 0; - slave.pregKnown} = 0; + slave.pregType = 0; + slave.belly = 0; + slave.bellyPreg = 0; + slave.pregSource = 0; + slave.pregWeek = 0; + slave.pregKnown = 0; }).addValue("Contraceptives", -1, () => { - slave.pregType} = 0; - slave.belly} = 0; - slave.bellyPreg} = 0; - slave.pregSource} = 0; - slave.pregWeek} = 0; - slave.pregKnown} = 0; + slave.pregType = 0; + slave.belly = 0; + slave.bellyPreg = 0; + slave.pregSource = 0; + slave.pregWeek = 0; + slave.pregKnown = 0; }).addValue("Barren", -2, () => { - slave.pregType} = 0; - slave.belly} = 0; - slave.bellyPreg} = 0; - slave.pregSource} = 0; - slave.pregWeek} = 0; - slave.pregKnown} = 0; - })>> + slave.pregType = 0; + slave.belly = 0; + slave.bellyPreg = 0; + slave.pregSource = 0; + slave.pregWeek = 0; + slave.pregKnown = 0; + }); } if (V.PC.dick > 0 && slave.preg > 0) { - _options.addOption("Father of child", "pregSource", slave) - .addValueList([["My child", -1], ["Not me", 0]])); + options.addOption("Father of child", "pregSource", slave) + .addValueList([["My child", -1], ["Not me", 0]]); } } } if (V.seeDicks !== 0 || V.makeDicks === 1) { - _options.addOption("Penis", "dick", slave) - .addValue("None", 0, () => {`); - slave.balls} = 0; - slave.pubertyXY} = 0; - slave.pubertyAgeXY} = V.potencyAge; - }).addValue("Tiny", 1, () => {slave.clit = 0}) - .addValue("Small", 2, () => {${slave.clit} = 0}); - .addValue("Normal", 3, () => {${slave.clit} = 0}); - .addValue("Large", 4, () => {${slave.clit} = 0}); - .addValue("Massive", 5, () => {${slave.clit} = 0})); + options.addOption("Penis", "dick", slave) + .addValue("None", 0, () => { + slave.balls = 0; + slave.pubertyXY = 0; + slave.pubertyAgeXY = V.potencyAge; + }) + .addValue("Tiny", 1, () => slave.clit = 0) + .addValue("Small", 2, () => slave.clit = 0) + .addValue("Normal", 3, () => slave.clit = 0) + .addValue("Large", 4, () => slave.clit = 0) + .addValue("Massive", 5, () => slave.clit = 0); if (slave.dick > 0) { - _option = _options.addOption("Foreskin", "foreskin", slave); + option = options.addOption("Foreskin", "foreskin", slave); if (V.seeCircumcision === 1) { - _option.addValue("Circumcised", 0); + option.addValue("Circumcised", 0); } else if (slave.foreskin === 0) { slave.foreskin = 3; } - _option.addValueList([["Tiny", 1], ["Small", 2], ["Normal", 3], ["Large", 4], ["Massive", 5]]); + option.addValueList([["Tiny", 1], ["Small", 2], ["Normal", 3], ["Large", 4], ["Massive", 5]]); } - _options.addOption("Testicles", "balls", slave) - .addValue("None", 0, () => {`); - slave.pubertyXY} = 0; - slave.pubertyAgeXY} = V.potencyAge; - slave.scrotum} = 0; - }).addValueList([["Vestigial", 1], ["Small", 2], ["Normal", 3], ["Large", 4], ["Massive", 5]])>> + options.addOption("Testicles", "balls", slave) + .addValue("None", 0, () => { + slave.pubertyXY = 0; + slave.pubertyAgeXY = V.potencyAge; + slave.scrotum = 0; + }).addValueList([["Vestigial", 1], ["Small", 2], ["Normal", 3], ["Large", 4], ["Massive", 5]]); - _options.addOption("Age of Male Puberty", "pubertyAgeXY", slave).showTextBox(); + options.addOption("Age of Male Puberty", "pubertyAgeXY", slave).showTextBox(); if (slave.balls > 0) { - _options.addOption("Ballsack", "scrotum", slave) - .addValueList([["None", 0], ["Tiny", 1], ["Small", 2], ["Normal", 3], ["Large", 4], ["Massive", 5]])); + options.addOption("Ballsack", "scrotum", slave) + .addValueList([["None", 0], ["Tiny", 1], ["Small", 2], ["Normal", 3], ["Large", 4], ["Massive", 5]]); - _options.addOption("Male Puberty", "pubertyXY", slave) - .addValue("Prepubescent", 0, () => {${slave.pubertyAgeXY} = V.potencyAge}); - .addValue("Postpubescent", 1)); + options.addOption("Male Puberty", "pubertyXY", slave) + .addValue("Prepubescent", 0, () => slave.pubertyAgeXY = V.potencyAge) + .addValue("Postpubescent", 1); } } - _options.addOption("Prostate", "prostate", slave) - .addValueList([["No prostate", 0], ["Has a prostate", 1]])); - - _optionLeft = _options.addOption("Left eye", "vision", slave.eye.left); - _optionRight = _options.addOption("Right eye", "vision", slave.eye.right); - _optionLeft.addValueList([["Normal", 2], ["Nearsighted", 1]]), _optionRight.addValueList([["Normal", 2], ["Nearsighted", 1]]); + options.addOption("Prostate", "prostate", slave) + .addValueList([ + ["No prostate", 0], + ["Has a prostate", 1] + ]); + + const optionLeft = options.addOption("Left eye", "vision", slave.eye.left); + const optionRight = options.addOption("Right eye", "vision", slave.eye.right); + optionLeft.addValueList([["Normal", 2], ["Nearsighted", 1]]); + optionRight.addValueList([["Normal", 2], ["Nearsighted", 1]]); if (V.seeExtreme === 1) { - _optionLeft.addValue("Blind", 0), _optionRight.addValue("Blind", 0); + optionLeft.addValue("Blind", 0); + optionRight.addValue("Blind", 0); } else { if (slave.eye.left.vision === 0) { slave.eye.left.vision = 2; @@ -1051,44 +1074,48 @@ App.StartingGirls.physical = function(slave) { slave.eye.right.vision = 2; } } + option = options.addOption("Natural eye color", "origColor", slave.eye); + for (const color of App.Medicine.Modification.eyeColor.map(color => color.value)) { + option.addValue(capFirstChar(color), color); + } + option.pulldown(); - _option = _options.addOption("Hearing", "hears", slave); - _option.addValueList([["Normal", 0], ["Hard of hearing", -1]]); + option = options.addOption("Hearing", "hears", slave); + option.addValueList([["Normal", 0], ["Hard of hearing", -1]]); if (V.seeExtreme === 1) { - _option.addValue("Deaf", -2); + option.addValue("Deaf", -2); } else if (slave.hears === 0) { slave.hears = 2; } - if (V.seeExtreme === 1) { - _options.addOption("Smell ability", "smells", slave) - .addValueList([["Normal", 0], ["None", -1]])); - - _options.addOption("Taste ability", "tastes", slave) - .addValueList([["Normal", 0], ["None", -1]])); - - _LA = hasLeftArm(slave); - _options.addOption("Left arm", "LA", State.temporary) - .addValue("Healthy", true, () => ${slave.arm.left} = new App.Entity.LimbState()); - .addValue("Amputated", false, () => ${slave.arm.left} = null)); - - _RA = hasRightArm(slave); - _options.addOption("Right arm", "RA", State.temporary) - .addValue("Healthy", true, () => ${slave.arm.right} = new App.Entity.LimbState()); - .addValue("Amputated", false, () => ${slave.arm.right} = null)); - - _LL = hasLeftLeg(slave); - _options.addOption("Left leg", "LL", State.temporary) - .addValue("Healthy", true, () => ${slave.leg.left} = new App.Entity.LimbState()); - .addValue("Amputated", false, () => ${slave.leg.left} = null)); - - _RL = hasRightLeg(slave); - _options.addOption("Right leg", "RL", State.temporary) - .addValue("Healthy", true, () => ${slave.leg.right} = new App.Entity.LimbState()); - .addValue("Amputated", false, () => ${slave.leg.right} = null)); + options.addOption("Smell ability", "smells", slave) + .addValueList([["Normal", 0], ["None", -1]]); + + options.addOption("Taste ability", "tastes", slave) + .addValueList([["Normal", 0], ["None", -1]]); + + State.temporary.LA = hasLeftArm(slave); + options.addOption("Left arm", "LA", State.temporary) + .addValue("Healthy", true, () => slave.arm.left = new App.Entity.LimbState()) + .addValue("Amputated", false, () => slave.arm.left = null); + + State.temporary.RA = hasRightArm(slave); + options.addOption("Right arm", "RA", State.temporary) + .addValue("Healthy", true, () => slave.arm.right = new App.Entity.LimbState()) + .addValue("Amputated", false, () => slave.arm.right = null); + + State.temporary.LL = hasLeftLeg(slave); + options.addOption("Left leg", "LL", State.temporary) + .addValue("Healthy", true, () => slave.leg.left = new App.Entity.LimbState()) + .addValue("Amputated", false, () => slave.leg.left = null); + + State.temporary.RL = hasRightLeg(slave); + options.addOption("Right leg", "RL", State.temporary) + .addValue("Healthy", true, () => slave.leg.right = new App.Entity.LimbState()) + .addValue("Amputated", false, () => slave.leg.right = null); } - <<includeDOM _options.render()>> + el.append(options.render()); return el; }; diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw index 65d8837e967..81527ab4386 100644 --- a/src/npc/startingGirls/startingGirls.tw +++ b/src/npc/startingGirls/startingGirls.tw @@ -348,8 +348,7 @@ <div id="Physical" class="tab-content"> <div class="content"> - - + <<includeDOM App.StartingGirls.physical($activeSlave)>> </div> </div> -- GitLab