Newer
Older
class RewardList extends List {
constructor() {
const pairs = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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;
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 default setting", "no default setting"],
/* ["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 = [
["no default setting"],
["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("no default setting")));
if (this.colorlist.value !== "no default setting") { lst.push(this.colorlist.value); }
if (this.shapelist.value !== "no default setting") { lst.push(this.shapelist.value); }
if (lst.length === 0) { return "no default setting"; } else { return lst.join(" "); }
"no default setting",
"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;
}
}
class MakeupList extends List {
constructor() {
super("Makeup");
[
["no default setting"],
["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;
class NailsList extends List {
constructor() {
super("Nails");
[
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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"],
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["None", 0],
["Studded", 1]
];
super("Areola studs", pairs);
this.onchange = (value) => current_rule.set.areolaePiercing = value;
class LipPiercingList extends List {
constructor() {
const pairs = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["None", 0],
["Light", 1],
["Heavy", 2]
];
super("Tongue piercing", pairs);
this.onchange = (value) => current_rule.set.tonguePiercing = value;
constructor() {
const pairs = [
["No default setting", "no default setting"],
["None", 0],
["Light", 1],
["Heavy", 2],
this.onchange = (value) => current_rule.set.clitPiercing = value;
class LabiaPiercingList extends List {
constructor() {
const pairs = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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 = [
["No default setting", "no default setting"],
["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],
];
super("Automatic branding", pairs);
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);
["Left", "left cheek"],
["Right", "right cheek"],
["Both", "cheeks"]
]);
this.appendChild(cheeks);
["Left", "left shoulder"],
["Right", "right shoulder"],
["Both", "shoulders"]
["Left", "right breast"],
["Right", "left breast"],
["Both", "breasts"]
["Left", "left upper arm"],
["Right", "right upper arm"],
["Both", "upper arms"]
["Left", "left lower arm"],
["Right", "right lower arm"],
["Both", "lower arms"]
["Left", "left wrist"],
["Right", "right wrist"],
["Both", "wrists"]
["Left", "left hand"],
["Right", "right hand"],
["Both", "hands"]
["Left", "left buttock"],
["Right", "right buttock"],
["Both", "buttocks"]
["Left", "left thigh"],
["Right", "right thigh"],
["Both", "thighs"]
["Left", "left calf"],
["Right", "right calf"],
["Both", "calves"]
["Left", "left ankle"],
["Right", "right ankle"],
["Both", "ankles"]
["Left", "left foot"],
["Right", "right foot"],
["Both", "feet"]
["Neck", "neck"],
["Chest", "chest"],
["Belly", "belly"],
["Pubic mound", "pubic mound"],
["Back", "back"],
["Lower Back", "lower back"]
class BrandDesignList extends List {
constructor() {
const items = [
["Your initials", "your initials"],
["SLUT"],
["WHORE"],
["SLAVE"],
["COW"],
["MEAT"],
["CUMDUMP"],
["LOVER"],
["Pussy symbol", "a pussy symbol"],
["Anus symbol", "an anus symbol"],
["Penis symbol", "a penis symbol"],
["Lady", "a lady silhouette"],
["Princess", "a princess silhouette"],
["Queen", "a queen silhouette"],
["Angel", "an angel silhouette"],
["Devil", "a devil silhouette"]
if (V.arcologies[0].FSSupremacist !== "unset" || V.arcologies[0].FSSubjugationist !== "unset") { items.push(["(FS) Racial Slur", "a racial slur"]); }
if (V.arcologies[0].FSSupremacist !== "unset" && V.arcologies[0].FSSupremacistRace === "white") { items.push(["(FS) Swastika", "a swastika"]); }
if (V.arcologies[0].FSSubjugationist !== "unset" && V.arcologies[0].FSSubjugationistRace === "semitic") { items.push(["(FS) Star of David", "a Star of David"]); }
if (V.arcologies[0].FSGenderRadicalist !== "unset" || V.arcologies.FSGenderFundamentalist !== "unset") { items.push(["(FS) Gender Symbol", "a gender symbol"]); }
if (V.arcologies[0].FSPaternalist !== "unset") { items.push(["(FS) Personal Symbol", "her own personal symbol"]); }
if (V.arcologies[0].FSDegradationist !== "unset") { items.push(["(FS) Chain Symbol", "a chain symbol"]); }
if (V.arcologies[0].FSBodyPurist !== "unset") { items.push(["(FS) Vitruvian Man", "a Vitruvian man"]); }
if (V.arcologies[0].FSTransformationFetishist !== "unset") { items.push(["(FS) Most Desired Implants", "a shortlist of desired implants"]); }
if (V.arcologies[0].FSYouthPreferentialist !== "unset") { items.push(["(FS) Virginity Status", "her virginity status"]); }
if (V.arcologies[0].FSMaturityPreferentialist !== "unset") { items.push(["(FS) Sexual Skill Info", "her sexual skills"]); }
if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") { items.push(["(FS) Breast Ceiling", "her absolute maximum breast size"]); }