Newer
Older
if (V.arcologies[0].FSAssetExpansionistResearch === 1) {
drugs.push(["hyper breast injections"]);
drugs.push(["hyper butt injections"]);
drugs.push(["hyper penis enhancement"]);
drugs.push(["hyper testicle enhancement"]);
}
if (V.arcologies[0].FSYouthPreferentialistResearch === 1) {
}
if (V.seeHyperPreg === 1 && V.superFertilityDrugs === 1) {
this.setValue(current_rule.set.drug);
this.onchange = (value) => current_rule.set.drug = value;
class EnemaList extends List {
constructor() {
const enemas = [
["None", "none"],
["Water", "water"]
];
if (V.medicalEnema === 1) {
enemas.push(
["Aphrodisiac", "aphrodisiac"],
["Curative", "curative"],
["Tightener", "tightener"]
);
}
super("Enemas", enemas);
this.setValue(current_rule.set.inflationType);
this.onchange = (value) => current_rule.set.inflationType = value;
}
}
class DietList extends List {
constructor() {
const diets = [
["Fix fat and skinny slaves", "attractive"],
["Curvy", 30],
this.setValue(current_rule.set.diet);
this.onchange = (value) => current_rule.set.diet = value;
class DietGrowthList extends List {
constructor() {
const pairs = [
["On", 1],
["Off", 0]
];
this.setValue(current_rule.set.dietGrowthSupport);
this.onchange = (value) => current_rule.set.dietGrowthSupport = value;
class DietBaseList extends List {
constructor() {
// TODO: better data structure?
const pairs = [
["Normal Diet", {cum: 0, milk: 0}],
["Cum Added", {cum: 1, milk: 0}],
["Milk Added", {cum: 0, milk: 1}],
["Cum & Milk Added", {cum: 1, milk: 1}],
["Cum-Based", {cum: 2, milk: 0}],
["Milk-Based", {cum: 0, milk: 2}],
this.setValue(this.value2string(current_rule.set.dietCum, current_rule.set.dietMilk));
this.onchange = (value) => {
current_rule.set.dietCum = value.cum;
current_rule.set.dietMilk = value.milk;
this.setValue(this.value2string(current_rule.set.dietCum, current_rule.set.dietMilk));
value2string(cum, milk) {
return `cum: ${cum}, milk: ${milk}`;
}
class DietSolidFoodList extends List {
constructor() {
const pairs = [
["Permitted", 0],
["Forbidden", 1],
];
super("Solid food access", pairs);
this.setValue(current_rule.set.onDiet);
this.onchange = (value) => current_rule.set.onDiet = value;
}
}
["None", 0],
["Toned", 20],
["Ripped", 50],
["Massive", 100],
["Weak", -20]
this.setValue(current_rule.set.muscles);
this.onchange = (value) => current_rule.set.muscles = value;
class BraceList extends List {
constructor() {
const pairs = [
["None", "none"],
["Straighten", "straighten"],
["Universal", "universal"]
];
super("Braces", pairs);
this.setValue(current_rule.set.teeth);
this.onchange = (value) => current_rule.set.teeth = value;
class LivingStandardList extends List {
constructor() {
const pairs = [
["Luxurious", "luxurious"],
["Normal", "normal"],
["Spare", "spare"]
];
super("Living standard", pairs);
this.setValue(current_rule.set.livingRules);
this.onchange = (value) => current_rule.set.livingRules = value;
class PunishmentList extends List {
constructor() {
const pairs = [
["Confinement", "confinement"],
["Whipping", "whipping"],
["Chastity", "chastity"],
["Situational", "situational"]
];
super("Typical punishment", pairs);
this.setValue(current_rule.set.standardPunishment);
this.onchange = (value) => current_rule.set.standardPunishment = value;
class RewardList extends List {
constructor() {
const pairs = [
["Relaxation", "relaxation"],
["Drugs", "drugs"],
["Orgasm", "orgasm"],
["Situational", "situational"]
];
super("Typical reward", pairs);
this.setValue(current_rule.set.standardReward);
this.onchange = (value) => current_rule.set.standardReward = value;
class ReleaseList extends List {
constructor() {
const pairs = [
["Permissive", "permissive"],
["Sapphic", "sapphic"],
["Masturbation", "masturbation"],
["Restrictive", "restrictive"],
["Chastity", "chastity"]
this.setValue(current_rule.set.releaseRules);
this.onchange = (value) => current_rule.set.releaseRules = value;
class ToyHoleList extends List {
constructor() {
const pairs = [
["All her holes", "all her holes"],
["Mouth", "mouth"],
["Boobs", "boobs"],
["Pussy", "pussy"],
["Ass", "ass"],
["Dick", "dick"]
];
super("Fucktoy use preference", pairs);
this.setValue(current_rule.set.toyHole);
this.onchange = (value) => current_rule.set.toyHole = value;
}
}
class SmartFetishList extends List {
constructor() {
const pairs = [
["Vanilla", "vanilla"],
["Oral", "oral"],
["Anal", "anal"],
["Boobs", "boobs"],
["Sub", "submissive"],
["Dom", "dom"],
["Humiliation", "humiliation"],
["Preg", "pregnancy"],
["Pain", "masochist"],
["Sadism", "sadist"]
];
super("Smart piercing fetish target", pairs);
this.setValue(current_rule.set.clitSetting);
this.onchange = (value) => current_rule.set.clitSetting = value;
}
}
class SmartXYAttractionList extends List {
constructor() {
const pairs = [
["Passionate", 100],
["Attracted", 75],
["Indifferent", 45],
["None", 0]
this.setValue(current_rule.set.clitSettingXY);
this.onchange = (value) => current_rule.set.clitSettingXY = value;
class SmartXXAttractionList extends List {
constructor() {
const pairs = [
["Passionate", 100],
["Attracted", 75],
["Indifferent", 45],
["None", 0]
this.setValue(current_rule.set.clitSettingXX);
this.onchange = (value) => current_rule.set.clitSettingXX = value;
class SmartEnergyList extends List {
constructor() {
const pairs = [
["Nympho", 100],
["Sex Addict", 85],
["Powerful", 65],
["Healthy", 45],
["Weak", 25],
["Frigid", 0]
this.setValue(current_rule.set.clitSettingEnergy);
this.onchange = (value) => current_rule.set.clitSettingEnergy = value;
class SpeechList extends List {
constructor() {
const pairs = [
["Permissive", "permissive"],
["Suppress accents", "accent elimination"],
["Restrictive", "restrictive"]
];
super("Speech rules", pairs);
this.setValue(current_rule.set.speechRules);
this.onchange = (value) => current_rule.set.speechRules = value;
["Permissive", "permissive"],
["Just friends", "just friends"],
["Restrictive", "restrictive"]
];
super("Relationship rules", pairs);
this.setValue(current_rule.set.relationshipRules);
this.onchange = (value) => current_rule.set.relationshipRules = value;
constructor() {
const pairs = [
["Disabled", 0],
["Enabled", 1]
];
super("Porn Broadcasting Status", pairs);
this.setValue(current_rule.set.pornFeed);
this.onchange = (value) => current_rule.set.pornFeed = value;
}
}
class PornList extends List {
constructor() {
const pairs = [
/* ["No broadcasting", -1], **This has changed, it would now use .pornFeed** */
["No subsidy", 0],
["1000", 1000],
["2000", 2000],
["3000", 3000],
["4000", 4000],
["5000", 5000]
this.setValue(current_rule.set.pornFameSpending);
this.onchange = (value) => current_rule.set.pornFameSpending = value;
}
}
class EyewearList extends List {
constructor() {
const pairs = [
["correct with contacts"],
["universal glasses"],
["blur with glasses"],
["blur with contacts"]
];
super("Eyewear", pairs);
this.setValue(current_rule.set.eyewear);
this.onchange = (value) => current_rule.set.eyewear = value;
this.appendChild(new OptionsItem("No default setting", () => this.setValue(null)));
if (lst.length === 0) return null;
else return lst.join(" ");
"blue",
"black",
"brown",
"green",
"turquoise",
"sky-blue",
"hazel",
"pale-grey",
"white",
"pink",
].forEach(i => items.push(new OptionsItem(i, item => {
this.value = item.label;
this.parent.setValue();
}
}
class LensesShapeList extends Options {
constructor() {
"wide-eyed",
"almond-shaped",
"bright",
"teary",
"vacant"
].forEach(i => items.push(new OptionsItem(i, item => {
this.value = item.label;
this.parent.setValue();
})));
class EarwearList extends List {
constructor() {
const pairs = [
["correct with hearing aids"],
["muffle with ear plugs"],
["deafen with ear plugs"]
];
super("Earwear", pairs);
this.setValue(current_rule.set.earwear);
this.onchange = (value) => current_rule.set.earwear = value;
}
}
["makeup-free", 0],
["nice", 1],
["gorgeous", 2],
["color-coordinate with hair", 3],
["slutty", 4]
this.setValue(current_rule.set.makeup);
this.onchange = (value) => current_rule.set.makeup = value;
["clipped", 0],
["extended", 1],
["color-coordinate with hair", 2],
["sharp and claw-like", 3],
["bright and glittery", 4],
["hooker nails", 5],
["neon colored", 6],
["neon color-coordinate with hair", 7],
["metallic painted", 8],
["metallic color-coordinate with hair", 9]
this.setValue(current_rule.set.nails);
this.onchange = (value) => current_rule.set.nails = value;
class HairLengthList extends List {
constructor() {
const pairs = [
["very short", 5],
["short", 10],
["shoulder length", 30],
["long", 60],
["very long", 100],
["floor length", 150]
this.setValue(current_rule.set.hLength);
this.onchange = (value) => current_rule.set.hLength = value;
class HaircutsList extends List {
constructor() {
const pairs = [
["maintain hair length", 1],
["do not maintain hair length", 0]
];
super("Hair length maintenance", pairs);
this.setValue(current_rule.set.haircuts);
this.onchange = (value) => current_rule.set.haircuts = value;
}
}
constructor() {
const pairs = [
["blonde"],
["golden"],
["platinum blonde"],
["green"],
["blue"],
["pink"],
["dark brown"],
["brown"],
["auburn"],
["burgundy"],
["chocolate"],
["chestnut"],
["hazel"],
["purple"],
["dark orchid"],
["sea green"],
["green-yellow"],
["dark blue"],
["blazing red"],
["neon green"],
["neon blue"],
["neon pink"]
];
super("Hair color", pairs);
this.setValue(current_rule.set.hColor);
this.onchange = (value) => current_rule.set.hColor = value;
}
}
class HairStyleList extends List {
constructor() {
const pairs = [
["neat"],
["shaved"],
["trimmed"],
["buzzcut"],
["up"],
["ponytail"],
["bun"],
["curled"],
["permed"],
["luxurious"],
["dreadlocks"],
["cornrows"],
["braided"],
["tails"],
this.setValue(current_rule.set.hStyle);
this.onchange = (value) => current_rule.set.hStyle = value;
class EyebrowColorList extends List {
constructor() {
const pairs = [
["blonde"],
["golden"],
["platinum blonde"],
["copper"],
["ginger"],
["red"],
["deep red"],
["green"],
["blue"],
["pink"],
["dark brown"],
["brown"],
["auburn"],
["burgundy"],
["chocolate"],
["chestnut"],
["hazel"],
["black"],
["grey"],
["silver"],
["white"],
["blue-violet"],
["purple"],
["dark orchid"],
["sea green"],
["green-yellow"],
["dark blue"],
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
["blazing red"],
["neon green"],
["neon blue"],
["neon pink"]
];
super("Eyebrow hair color, when present", pairs);
this.setValue(current_rule.set.eyebrowHColor);
this.onchange = (value) => current_rule.set.eyebrowHColor = value;
}
}
class EyebrowStyleList extends List {
constructor() {
const pairs = [
["shaved"],
["straight"],
["rounded"],
["natural"],
["slanted inwards"],
["slanted outwards"],
["high-arched"],
["elongated"],
["shortened"],
["curved"]
];
super("Eyebrow style", pairs);
this.setValue(current_rule.set.eyebrowHStyle);
this.onchange = (value) => current_rule.set.eyebrowHStyle = value;
}
}
class EyebrowFullnessList extends List {
constructor() {
const pairs = [
["pencil-thin"],
["thin"],
["threaded"],
["natural"],
["tapered"],
["thick"],
["bushy"]
];
super("Eyebrow fullness", pairs);
this.setValue(current_rule.set.eyebrowFullness);
this.onchange = (value) => current_rule.set.eyebrowFullness = value;
}
}
class MarkingsList extends List {
constructor() {
const pairs = [
["remove beauty marks"],
["remove birthmarks"],
["remove both"]
];
super("Facial markings", pairs);
this.setValue(current_rule.set.markings);
this.onchange = (value) => current_rule.set.markings = value;
}
}
constructor() {
const pairs = [
["blonde"],
["golden"],
["platinum blonde"],
["green"],
["blue"],
["pink"],
["dark brown"],
["brown"],
["auburn"],
["burgundy"],
["chocolate"],
["chestnut"],
["hazel"],
["purple"],
["dark orchid"],
["sea green"],
["green-yellow"],
["dark blue"],
["blazing red"],
["neon green"],
["neon blue"],
["neon pink"]
];
super("Pubic hair color, when present", pairs);
this.setValue(current_rule.set.pubicHColor);
this.onchange = (value) => current_rule.set.pubicHColor = value;
}
}
class PubicHairStyleList extends List {
constructor() {
const pairs = [
["waxed"],
["in a strip"],
["neat"],
["bushy"],
["bushy in the front and neat in the rear"],
["very bushy"]
];
super("Pubic hairstyle", pairs);
this.setValue(current_rule.set.pubicHStyle);
this.onchange = (value) => current_rule.set.pubicHStyle = value;
constructor() {
const pairs = [
["blonde"],
["golden"],
["platinum blonde"],
["strawberry-blonde"],
["copper"],
["ginger"],
["red"],
["green"],
["blue"],
["pink"],
["dark brown"],
["brown"],
["auburn"],
["purple"],
["dark orchid"],
["sea green"],
["green-yellow"],
["dark blue"],
["blazing red"],
["neon green"],
["neon blue"],
["neon pink"]
this.setValue(current_rule.set.underArmHColor);
this.onchange = (value) => current_rule.set.underArmHColor = value;
}
}
class ArmpitHairStyleList extends List {
constructor() {
const pairs = [
["waxed"],
["shaved"],
["neat"],
["bushy"]
];
super("Underarm hair style", pairs);
this.setValue(current_rule.set.underArmHStyle);
this.onchange = (value) => current_rule.set.underArmHStyle = value;
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Ear piercings", pairs);
this.onchange = (value) => current_rule.set.earPiercing = value;
class NosePiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Nasal piercings", pairs);
this.onchange = (value) => current_rule.set.nosePiercing = value;
class EyebrowPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Eyebrow piercings", pairs);
this.onchange = (value) => current_rule.set.eyebrowPiercing = value;
class NavelPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Navel piercings", pairs);
this.onchange = (value) => current_rule.set.navelPiercing = value;
class NipplePiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Nipple piercings", pairs);
this.onchange = (value) => current_rule.set.nipplesPiercing = value;
class AreolaPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Studded", 1]
];
super("Areola studs", pairs);
this.onchange = (value) => current_rule.set.areolaePiercing = value;
class LipPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Lip piercings", pairs);
this.onchange = (value) => current_rule.set.lipsPiercing = value;
class TonguePiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Tongue piercing", pairs);
this.onchange = (value) => current_rule.set.tonguePiercing = value;
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2],
this.onchange = (value) => current_rule.set.clitPiercing = value;
class LabiaPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Pussylips piercings", pairs);
this.onchange = (value) => current_rule.set.vaginaPiercing = value;
class ShaftPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Shaft piercings", pairs);
this.onchange = (value) => current_rule.set.dickPiercing = value;
class PerineumPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Perianal piercings", pairs);
this.onchange = (value) => current_rule.set.anusPiercing = value;
class CorsetPiercingList extends List {
constructor() {
const pairs = [
["None", 0],
["Apply", 1]
];
super("Corset piercings", pairs);
this.onchange = (value) => current_rule.set.corsetPiercing = value;
class AutoBrandingList extends List {
constructor() {
const pairs = [
["Activate", 1],
["Off", 0],
];
this.setValue(current_rule.set.autoBrand);
this.onchange = (value) => current_rule.set.autoBrand = value;
class BrandingLocationList extends List {
constructor() {
super("Your preferred location for brands is", []);
["Left", "left ear"],
["Right", "right ear"],
["Both", "ears"]
]);
this.appendChild(ears);