Skip to content
Snippets Groups Projects
rulesAssistantOptions.js 102 KiB
Newer Older
  • Learn to ignore specific revisions
  • vas's avatar
    vas committed
    				["Pubic mound", "pubic mound"],
    				["Back", "back"],
    				["Lower Back", "lower back"]
    
    vas's avatar
    vas committed
    			]);
    			this.appendChild(other);
    
    vas's avatar
    vas committed
    
    
    vas's avatar
    vas committed
    			this.setValue(V.brandTarget);
    
    vas's avatar
    vas committed
    			this.onchange = (value) => V.brandTarget = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    vas's avatar
    vas committed
    
    	class BrandDesignList extends List {
    		constructor() {
    			const items = [
    
    klorpa's avatar
    klorpa committed
    				["Your slaving emblem", "your personal symbol"],
    
    vas's avatar
    vas committed
    				["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"]
    
    vas's avatar
    vas committed
    			];
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    			if (V.arcologies[0].FSSupremacist !== "unset" || V.arcologies[0].FSSubjugationist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Racial Slur", "a racial slur"]);
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    			if (V.arcologies[0].FSSupremacist !== "unset" && V.arcologies[0].FSSupremacistRace === "white")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Swastika", "a swastika"]);
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    			if (V.arcologies[0].FSSubjugationist !== "unset" && V.arcologies[0].FSSubjugationistRace === "semitic")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Star of David", "a Star of David"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSGenderRadicalist !== "unset" || V.arcologies.FSGenderFundamentalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Gender Symbol", "a gender symbol"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSPaternalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Personal Symbol", "her own personal symbol"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSDegradationist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Chain Symbol", "a chain symbol"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSBodyPurist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Vitruvian Man", "a Vitruvian man"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSTransformationFetishist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Most Desired Implants", "a shortlist of desired implants"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSYouthPreferentialist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Virginity Status", "her virginity status"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSMaturityPreferentialist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Sexual Skill Info", "her sexual skills"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSSlimnessEnthusiast !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Breast Ceiling", "her absolute maximum breast size"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSAssetExpansionist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Breast Floor", "her absolute minimum breast size"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSPastoralist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Product Quality", "her body product quality"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSPhysicalIdelist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Deadlift Info", "her deadlift record"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSHedonisticDecadence !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Weight Record", "her highest weigh-in"]);
    
    vas's avatar
    vas committed
    
    
    ezsh's avatar
    ezsh committed
    			if (V.arcologies[0].FSHedonisticDecadence && V.PC.refreshmentType === 2)
    
    vas's avatar
    vas committed
    				items.push(["(FS) Favorite Food", `a big helping of ${V.PC.refreshment}`]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSRepopulationFocus !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Birth Count", "the number of children she has birthed"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSChattelReligionist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Religious Symbol", "a religious symbol"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSRomanRevivalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Republican Crest", "a small crest of your Republic"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSAztecRevivalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Seven Serpents", "a small symbol of the Aztec gods"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSEgyptianRevivalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Dynastic Sigil", "a small sigil of your Dynasty"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSEdoRevivalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Mon", "a small image of the Shogunate's mon"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSArabianRevivalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Caliphate Symbol", "a small symbol of the Caliphate"]);
    
    vas's avatar
    vas committed
    
    			if (V.arcologies[0].FSChineseRevivalist !== "unset")
    
    vas's avatar
    vas committed
    				items.push(["(FS) Imperial Seal", "a small image of your Imperial Seal"]);
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    			super("Your brand design is", items, true);
    
    vas's avatar
    vas committed
    		}
    	}
    
    vas's avatar
    vas committed
    
    	class FaceTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["permanent makeup"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    				["paternalist"]
    
    vas's avatar
    vas committed
    			];
    			super("Facial tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.lipsTat);
    			this.onchange = (value) => current_rule.set.lipsTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    	class ShoulderTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    				["paternalist"]
    
    vas's avatar
    vas committed
    			];
    			super("Shoulder tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.shouldersTat);
    			this.onchange = (value) => current_rule.set.shouldersTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class ChestTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    				["paternalist"]
    
    vas's avatar
    vas committed
    			];
    			super("Chest tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.boobsTat);
    			this.onchange = (value) => current_rule.set.boobsTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class ArmTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    				["paternalist"]
    
    vas's avatar
    vas committed
    			];
    			super("Arm tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.armsTat);
    			this.onchange = (value) => current_rule.set.armsTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class UpperBackTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    
    vas's avatar
    vas committed
    				["paternalist"],
    
    vas's avatar
    vas committed
    			];
    			super("Upper back tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.backTat);
    			this.onchange = (value) => current_rule.set.backTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class LowerBackTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    				["paternalist"]
    
    vas's avatar
    vas committed
    			];
    			super("Lower back tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.stampTat);
    			this.onchange = (value) => current_rule.set.stampTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class AbdomenTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    
    vas's avatar
    vas committed
    				["paternalist"],
    			];
    			super("Abdomen tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.vaginaTat);
    			this.onchange = (value) => current_rule.set.vaginaTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class DickTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    
    vas's avatar
    vas committed
    				["paternalist"],
    
    vas's avatar
    vas committed
    			];
    			super("Dick tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.dickTat);
    			this.onchange = (value) => current_rule.set.dickTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class ButtockTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    
    vas's avatar
    vas committed
    				["paternalist"],
    
    vas's avatar
    vas committed
    			];
    
    vas's avatar
    vas committed
    			super("Buttock tattoos:", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.buttTat);
    			this.onchange = (value) => current_rule.set.buttTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class AnalTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    
    vas's avatar
    vas committed
    				["bleached"],
    
    vas's avatar
    vas committed
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    
    vas's avatar
    vas committed
    				["paternalist"],
    
    vas's avatar
    vas committed
    			];
    			super("Anal tattoo or bleaching", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.anusTat);
    			this.onchange = (value) => current_rule.set.anusTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class LegTattooList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    
    vas's avatar
    vas committed
    				["tribal patterns"],
    				["flowers"],
    				["counting"],
    				["advertisements"],
    				["rude words"],
    				["degradation"],
    				["bovine patterns"],
    				["Asian art"],
    				["scenes"],
    				["sacrament"],
    				["sacrilege"],
    				["possessive"],
    
    vas's avatar
    vas committed
    				["paternalist"],
    
    vas's avatar
    vas committed
    			];
    			super("Leg tattoos", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.legsTat);
    			this.onchange = (value) => current_rule.set.legsTat = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class VisionSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["fixed", 1],
    
    vas's avatar
    vas committed
    				["blurred", -1],
    
    vas's avatar
    vas committed
    			];
    			super("Vision correction", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_eyes);
    			this.onchange = (value) => current_rule.set.surgery_eyes = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    
    klorpa's avatar
    klorpa committed
    	class HearingSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["fixed", 0],
    				["muffled", -1],
    			];
    			super("Hearing correction", items);
    			this.setValue(current_rule.set.surgery_hears);
    			this.onchange = (value) => current_rule.set.surgery_hears = value;
    		}
    	}
    
    klorpa's avatar
    klorpa committed
    
    
    klorpa's avatar
    klorpa committed
    	class SmellSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["fixed", 0],
    				["disabled", -1],
    			];
    			super("Olfactory correction", items);
    			this.setValue(current_rule.set.surgery_smells);
    			this.onchange = (value) => current_rule.set.surgery_smells = value;
    		}
    	}
    
    klorpa's avatar
    klorpa committed
    
    
    klorpa's avatar
    klorpa committed
    	class TasteSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["fixed", 0],
    				["disabled", -1],
    			];
    			super("Gustatory correction", items);
    			this.setValue(current_rule.set.surgery_tastes);
    			this.onchange = (value) => current_rule.set.surgery_tastes = value;
    		}
    	}
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    	class LactationSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["implanted", 1],
    
    vas's avatar
    vas committed
    				["removed", 0],
    
    vas's avatar
    vas committed
    			];
    			super("Lactation drug implants", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_lactation);
    			this.onchange = (value) => current_rule.set.surgery_lactation = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class SemenSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["implanted", 1],
    
    vas's avatar
    vas committed
    				["removed", 0],
    
    vas's avatar
    vas committed
    			];
    			super("Prostate production enhancing drug implants", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_prostate);
    			this.onchange = (value) => current_rule.set.surgery_prostate = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    
    vas's avatar
    vas committed
    	class VasectomyList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["apply vasectomy", true],
    				["undo vasectomy", false],
    			];
    			super("Apply or undo vasectomy for slaves with testicles", items);
    			this.setValue(current_rule.set.surgery_vasectomy);
    			this.onchange = (value) => current_rule.set.surgery_vasectomy = value;
    		}
    	}
    
    
    vas's avatar
    vas committed
    	class CosmeticSurgeryList extends List {
    		constructor() {
    			const items = [
    
    kopareigns's avatar
    kopareigns committed
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["none", 0],
    				["subtle", 1],
    
    vas's avatar
    vas committed
    				["invasive", 2],
    			];
    			super("Cosmetic Surgery", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_cosmetic);
    			this.onchange = (value) => current_rule.set.surgery_cosmetic = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    
    ezsh's avatar
    ezsh committed
    	class LipSurgeryList extends NumberRange {
    
    vas's avatar
    vas committed
    		constructor() {
    			const items = [
    				["no default setting"],
    				["removed", 0],
    				["plush", 20],
    				["big", 40],
    				["huge", 70],
    
    vas's avatar
    vas committed
    				["facepussy", 95],
    
    vas's avatar
    vas committed
    			];
    
    ezsh's avatar
    ezsh committed
    			super("Lip implants", items, 0, 95, true);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_lips);
    			this.onchange = (value) => current_rule.set.surgery_lips = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    
    ezsh's avatar
    ezsh committed
    	class ButtSurgeryList extends NumberRange {
    
    vas's avatar
    vas committed
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["removed", 0],
    
    vas's avatar
    vas committed
    				["slim", 2],
    				["stacked", 4],
    				["huge", 6],
    
    klorpa's avatar
    klorpa committed
    				["maximized", 9],
    
    vas's avatar
    vas committed
    			];
    
    ezsh's avatar
    ezsh committed
    			super("Buttock implants", items, 0, 9, true);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_butt);
    			this.onchange = (value) => current_rule.set.surgery_butt = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    
    ezsh's avatar
    ezsh committed
    	class BreastSurgeryList extends NumberRange {
    
    vas's avatar
    vas committed
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["removed", 0],
    
    vas's avatar
    vas committed
    				["slim", 400],
    				["stacked", 1000],
    				["huge", 2000],
    				["barely functional", 9000],
    
    klorpa's avatar
    klorpa committed
    				["maximized", 48000]
    
    vas's avatar
    vas committed
    			];
    
    ezsh's avatar
    ezsh committed
    			super("Breast implants", items, 0, 48000, true);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_boobs);
    			this.onchange = (value) => current_rule.set.surgery_boobs = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class TighteningSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["tightening", 1],
    
    vas's avatar
    vas committed
    				["virginity restoration", 2],
    
    vas's avatar
    vas committed
    			];
    			super("Orifice Tightening", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_holes);
    			this.onchange = (value) => current_rule.set.surgery_holes = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    Skriv's avatar
    Skriv committed
    
    
    lowercasedonkey's avatar
    lowercasedonkey committed
    	class TummyTuckSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["tuck", 1],
    			];
    			super("Tummy Tuck", items);
    			this.setValue(current_rule.set.surgery_tummy);
    			this.onchange = (value) => current_rule.set.surgery_tummy = value;
    		}
    	}
    
    
    vas's avatar
    vas committed
    
    	class BodyHairSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["keep", 1],
    				["removal", 2],
    			];
    
    vas's avatar
    vas committed
    			super("Body Hair", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_bodyhair);
    			this.onchange = (value) => current_rule.set.surgery_bodyhair = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    	class HairSurgeryList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    
    vas's avatar
    vas committed
    				["keep", 1],
    				["removal", 2],
    			];
    
    vas's avatar
    vas committed
    			super("Hair", items);
    
    vas's avatar
    vas committed
    			this.setValue(current_rule.set.surgery_hair);
    			this.onchange = (value) => current_rule.set.surgery_hair = value;
    
    vas's avatar
    vas committed
    		}
    	}
    
    vas's avatar
    vas committed
    
    	class AutomaticAssignmentList extends List {
    		constructor() {
    			const items = [
    
    vas's avatar
    vas committed
    				["No default setting", "no default setting"],
    
    vas's avatar
    vas committed
    				["Rest", "rest"],
    				["Fucktoy", "please you"],
    				["Subordinate Slave", "be a subordinate slave"],
    				["House Servant", "be a servant"],
    				["Confined", "stay confined"],
    				["Whore", "whore"],
    
    vas's avatar
    vas committed
    				["Public Servant", "serve the public"],
    
    vas's avatar
    vas committed
    				["Classes", "take classes"],
    				["Milked", "get milked"],
    
    kopareigns's avatar
    kopareigns committed
    				["Gloryhole", "work a glory hole"],
    				["Choose Her Own", "choose her own job"]
    
    vas's avatar
    vas committed
    			];
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    			if (V.HGSuite > 0) items.push(["Head Girl Suite", "live with your Head Girl"]);
    
    vas's avatar
    vas committed
    			if (V.brothel > 0) items.push(["Brothel", "work in the brothel"]);
    			if (V.club > 0) items.push(["Club", "serve in the club"]);
    			if (V.arcade > 0) items.push(["Arcade", "be confined in the arcade"]);
    			if (V.dairy > 0) items.push(["Dairy", "work in the dairy"]);
    
    			if (V.farmyard > 0) items.push(["Farmyard", "work as a farmhand"]);
    
    			if (V.servantsQuarters > 0) items.push(["Servant Quarters", "work as a servant"]);
    
    vas's avatar
    vas committed
    			if (V.masterSuite > 0) items.push(["Master Suite", "serve in the master suite"]);
    			if (V.schoolroom > 0) items.push(["Schoolroom", "learn in the schoolroom"]);
    			if (V.spa > 0) items.push(["Spa", "rest in the spa"]);
    			if (V.clinic > 0) items.push(["Clinic", "get treatment in the clinic"]);
    			if (V.cellblock > 0) items.push(["Cellblock", "be confined in the cellblock"]);
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    			super("Automatically set assignment", items);
    			this.setValue(current_rule.set.setAssignment);
    			this.onchange = (value) => current_rule.set.setAssignment = value;
    		}
    
    vas's avatar
    vas committed
    	}
    
    vas's avatar
    vas committed
    
    	class BellyImplantList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    				["install", "install"],
    				["remove", "remove"],
    			];
    			super("Belly implant", items);
    			this.setValue(current_rule.set.surgery_bellyImplant);
    			this.onchange = (value) => current_rule.set.surgery_bellyImplant = value;
    		}
    	}
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    	class LabelList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    			];
    			super("Custom label", items, true);
    			this.setValue(current_rule.set.label);
    			this.onchange = (value) => current_rule.set.label = value;
    		}
    	}
    
    
    	class LabelRemoveList extends List {
    		constructor() {
    			const items = [
    				["no default setting"],
    			];
    			super("Remove custom label", items, true);
    			this.setValue(current_rule.set.removeLabel);
    			this.onchange = (value) => current_rule.set.removeLabel = value;
    		}
    	}
    
    klorpa's avatar
    klorpa committed
    
    
    klorpa's avatar
    klorpa committed
    	class SkinColorList extends List {
    
    vas's avatar
    vas committed
    		constructor() {
    			const items = [
    				["no default setting"],
    
    				["natural"],
    
    klorpa's avatar
    klorpa committed
    				["pure white"],
    				["ivory"],
    				["white"],
    				["extremely pale"],
    				["very pale"],
    
    vas's avatar
    vas committed
    				["pale"],
    
    klorpa's avatar
    klorpa committed
    				["extremely fair"],
    				["very fair"],
    				["fair"],
    				["light"],
    				["light olive"],
    				["tan"],
    				["olive"],
    				["bronze"],
    				["dark olive"],
    
    vas's avatar
    vas committed
    				["dark"],
    
    klorpa's avatar
    klorpa committed
    				["light beige"],
    				["beige"],
    				["dark beige"],
    				["light brown"],
    				["brown"],
    				["dark brown"],
    				["black"],
    				["ebony"],
    				["pure black"],
    
    klorpa's avatar
    klorpa committed
    				["sun tanned"],
    				["spray tanned"],
    
    vas's avatar
    vas committed
    				["dyed red"],
    				["dyed green"],
    				["dyed blue"],
    
    klorpa's avatar
    klorpa committed
    				["dyed pink"],
    
    klorpa's avatar
    klorpa committed
    				["dyed gray"],
    				["tiger striped"],
    
    vas's avatar
    vas committed
    				["camouflage patterned"],
    
    ezsh's avatar
    ezsh committed
    			];
    
    vas's avatar
    vas committed
    			super("Dye or tan skin", items);
    			this.setValue(current_rule.set.skinColor);
    			this.onchange = (x) => current_rule.set.skinColor = x;
    		}
    	}
    
    klorpa's avatar
    klorpa committed
    
    
    vas's avatar
    vas committed
    	return rulesAssistantOptions;
    
    vas's avatar
    vas committed
    })();