diff --git a/js/003-data/miscData.js b/js/003-data/miscData.js index c4215f06bffa3cbe6292032973cd97436e2a4a01..922f0b0c88db9f6d553b6ea7a75ab657c85c4a59 100644 --- a/js/003-data/miscData.js +++ b/js/003-data/miscData.js @@ -1940,228 +1940,228 @@ App.Data.misc = { name: "Maternity lingerie", value: "attractive lingerie for a pregnant woman", fs: "FSRepopulationFocus", - get rs() { return V.boughtItem.clothing.maternityLingerie === 1; } + get requirements() { return V.boughtItem.clothing.maternityLingerie === 1; } }, { name: "Bunny outfit", value: "a bunny outfit", fs: "FSGenderFundamentalist", - get rs() { return V.boughtItem.clothing.bunny === 1; } + get requirements() { return V.boughtItem.clothing.bunny === 1; } }, { name: "Body oil", value: "body oil", fs: "FSPhysicalIdealist", - get rs() { return V.boughtItem.clothing.oil === 1; } + get requirements() { return V.boughtItem.clothing.oil === 1; } }, { name: "Chattel habit", value: "a chattel habit", fs: "FSChattelReligionist", - get rs() { return V.boughtItem.clothing.habit === 1; } + get requirements() { return V.boughtItem.clothing.habit === 1; } }, { name: "Conservative clothing", value: "conservative clothing", fs: "FSPaternalist", - get rs() { return V.boughtItem.clothing.conservative === 1; } + get requirements() { return V.boughtItem.clothing.conservative === 1; } }, { name: "Harem gauze", value: "harem gauze", fs: "FSArabianRevivalist", - get rs() { return V.boughtItem.clothing.harem === 1; } + get requirements() { return V.boughtItem.clothing.harem === 1; } }, { name: "Huipil", value: "a huipil", fs: "FSAztecRevivalist", - get rs() { return V.boughtItem.clothing.huipil === 1; } + get requirements() { return V.boughtItem.clothing.huipil === 1; } }, { name: "Kimono", value: "a kimono", fs: "FSEdoRevivalist", - get rs() { return (V.boughtItem.clothing.kimono === 1 || V.continent === "Japan"); } + get requirements() { return (V.boughtItem.clothing.kimono === 1 || V.continent === "Japan"); } }, { name: "Maternity dress", value: "a maternity dress", fs: "FSRepopulationFocus", - get rs() { return V.boughtItem.clothing.maternityDress === 1; } + get requirements() { return V.boughtItem.clothing.maternityDress === 1; } }, { name: "Qipao (slutty)", value: "a slutty qipao", fs: "FSChineseRevivalist", - get rs() { return V.boughtItem.clothing.qipao === 1; } + get requirements() { return V.boughtItem.clothing.qipao === 1; } }, { name: "Qipao (long)", value: "a long qipao", fs: "FSChineseRevivalist", - get rs() { return V.boughtItem.clothing.cultural === 1; } + get requirements() { return V.boughtItem.clothing.cultural === 1; } }, { name: "Stretch pants and a crop-top", value: "stretch pants and a crop-top", fs: "FSHedonisticDecadence", - get rs() { return V.boughtItem.clothing.lazyClothes === 1; } + get requirements() { return V.boughtItem.clothing.lazyClothes === 1; } }, { name: "Toga", value: "a toga", fs: "FSRomanRevivalist", - get rs() { return V.boughtItem.clothing.toga === 1; } + get requirements() { return V.boughtItem.clothing.toga === 1; } }, { name: "Western clothing", value: "Western clothing", fs: "FSPastoralist", - get rs() { return V.boughtItem.clothing.western === 1; } + get requirements() { return V.boughtItem.clothing.western === 1; } }, { name: "Courtesan dress", value: "a courtesan dress", fs: "FSSlaveProfessionalism", - get rs() { return V.boughtItem.clothing.courtesan === 1; } + get requirements() { return V.boughtItem.clothing.courtesan === 1; } }, { name: "Bimbo outfit", value: "a bimbo outfit", fs: "FSIntellectualDependency", - get rs() { return V.boughtItem.clothing.bimbo === 1; } + get requirements() { return V.boughtItem.clothing.bimbo === 1; } }, { name: "Petite admi outfit", value: "petite admi outfit", fs: "FSPetiteAdmiration", - get rs() { return V.boughtItem.clothing.petite === 1; } - }, - {name: "Battlearmor", value: "battlearmor", get rs() { return V.boughtItem.clothing.military === 1; }}, - {name: "Military uniform", value: "a military uniform", get rs() { return V.boughtItem.clothing.military === 1; }}, - {name: "Red Army uniform", value: "a red army uniform", get rs() { return V.boughtItem.clothing.military === 1; }}, - {name: "Battledress", value: "battledress", get rs() { return V.boughtItem.clothing.military === 1; }}, - {name: "Biyelgee costume", value: "a biyelgee costume", get rs() { return V.boughtItem.clothing.cultural === 1; }}, - {name: "Dirndl", value: "a dirndl", get rs() { return V.boughtItem.clothing.cultural === 1; }}, - {name: "Lederhosen", value: "lederhosen", get rs() { return V.boughtItem.clothing.cultural === 1; }}, - {name: "Mounty outfit", value: "a mounty outfit", get rs() { return V.boughtItem.clothing.cultural === 1; }}, - {name: "Hanbok", value: "a hanbok", get rs() { return V.boughtItem.clothing.cultural === 1; }}, + get requirements() { return V.boughtItem.clothing.petite === 1; } + }, + {name: "Battlearmor", value: "battlearmor", get requirements() { return V.boughtItem.clothing.military === 1; }}, + {name: "Military uniform", value: "a military uniform", get requirements() { return V.boughtItem.clothing.military === 1; }}, + {name: "Red Army uniform", value: "a red army uniform", get requirements() { return V.boughtItem.clothing.military === 1; }}, + {name: "Battledress", value: "battledress", get requirements() { return V.boughtItem.clothing.military === 1; }}, + {name: "Biyelgee costume", value: "a biyelgee costume", get requirements() { return V.boughtItem.clothing.cultural === 1; }}, + {name: "Dirndl", value: "a dirndl", get requirements() { return V.boughtItem.clothing.cultural === 1; }}, + {name: "Lederhosen", value: "lederhosen", get requirements() { return V.boughtItem.clothing.cultural === 1; }}, + {name: "Mounty outfit", value: "a mounty outfit", get requirements() { return V.boughtItem.clothing.cultural === 1; }}, + {name: "Hanbok", value: "a hanbok", get requirements() { return V.boughtItem.clothing.cultural === 1; }}, { name: "Burqa", value: "a burqa", - get rs() { return V.boughtItem.clothing.middleEastern === 1 || V.continent === "the Middle East"; } + get requirements() { return V.boughtItem.clothing.middleEastern === 1 || V.continent === "the Middle East"; } }, { name: "Niqab and abaya", value: "a niqab and abaya", - get rs() { return V.boughtItem.clothing.middleEastern === 1 || V.continent === "the Middle East"; } + get requirements() { return V.boughtItem.clothing.middleEastern === 1 || V.continent === "the Middle East"; } }, { name: "Hijab and blouse", value: "a hijab and blouse", - get rs() { return (V.boughtItem.clothing.conservative === 1 || V.continent === "the Middle East"); } + get requirements() { return (V.boughtItem.clothing.conservative === 1 || V.continent === "the Middle East"); } }, { name: "Burkini", value: "a burkini", - get rs() { return V.boughtItem.clothing.swimwear === 1 && (V.boughtItem.clothing.swimwear === 1 || V.continent === "the Middle East"); } + get requirements() { return V.boughtItem.clothing.swimwear === 1 && (V.boughtItem.clothing.swimwear === 1 || V.continent === "the Middle East"); } }, - {name: "Santa dress", value: "a Santa dress", get rs() { return V.boughtItem.clothing.costume === 1; }}, + {name: "Santa dress", value: "a Santa dress", get requirements() { return V.boughtItem.clothing.costume === 1; }}, - {name: "Klan robe", value: "a klan robe", get rs() { return V.boughtItem.clothing.pol === 1; }}, - {name: "Slutty klan robe", value: "a slutty klan robe", get rs() { return V.boughtItem.clothing.pol === 1; }}, - {name: "Schutzstaffel uniform", value: "a schutzstaffel uniform", get rs() { return V.boughtItem.clothing.pol === 1; }}, - {name: "Slutty schutzstaffel uniform", value: "a slutty schutzstaffel uniform", get rs() { return V.boughtItem.clothing.pol === 1; }}, + {name: "Klan robe", value: "a klan robe", get requirements() { return V.boughtItem.clothing.pol === 1; }}, + {name: "Slutty klan robe", value: "a slutty klan robe", get requirements() { return V.boughtItem.clothing.pol === 1; }}, + {name: "Schutzstaffel uniform", value: "a schutzstaffel uniform", get requirements() { return V.boughtItem.clothing.pol === 1; }}, + {name: "Slutty schutzstaffel uniform", value: "a slutty schutzstaffel uniform", get requirements() { return V.boughtItem.clothing.pol === 1; }}, - {name: "Nice business attire", value: "nice business attire", get rs() { return V.boughtItem.clothing.career === 1; }}, - {name: "Nurse (nice)", value: "a nice nurse outfit", get rs() { return V.boughtItem.clothing.career === 1; }}, - {name: "Police uniform", value: "a police uniform", get rs() { return V.boughtItem.clothing.career === 1; }}, + {name: "Nice business attire", value: "nice business attire", get requirements() { return V.boughtItem.clothing.career === 1; }}, + {name: "Nurse (nice)", value: "a nice nurse outfit", get requirements() { return V.boughtItem.clothing.career === 1; }}, + {name: "Police uniform", value: "a police uniform", get requirements() { return V.boughtItem.clothing.career === 1; }}, { name: "Maid (nice)", value: "a nice maid outfit", - get rs() { return V.boughtItem.clothing.career === 1 || V.PC.career === "servant"; } - }, - - {name: "Ballgown", value: "a ball gown", get rs() { return V.boughtItem.clothing.dresses === 1; }}, - {name: "Gothic lolita dress", value: "a gothic lolita dress", get rs() { return V.boughtItem.clothing.dresses === 1; }}, - - {name: "Cybersuit", value: "a cybersuit", get rs() { return V.boughtItem.clothing.bodysuits === 1; }}, - {name: "Latex catsuit", value: "a latex catsuit", get rs() { return V.boughtItem.clothing.bodysuits === 1; }}, - - {name: "Button-up shirt and panties", value: "a button-up shirt and panties", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Button-up shirt", value: "a button-up shirt", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Cutoffs", value: "cutoffs", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Jeans", value: "jeans", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Leather pants and a tube top", value: "leather pants and a tube top", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Leather pants", value: "leather pants", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Oversized t-shirt", value: "an oversized t-shirt", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Sweater and cutoffs", value: "a sweater and cutoffs", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Sweater and panties", value: "a sweater and panties", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Sweater", value: "a sweater", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "T-shirt and jeans", value: "a t-shirt and jeans", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "T-shirt and panties", value: "a t-shirt and panties", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "T-shirt", value: "a t-shirt", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Tank-top and panties", value: "a tank-top and panties", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Tank-top", value: "a tank-top", get rs() { return V.boughtItem.clothing.casual === 1; }}, - {name: "Tube top", value: "a tube top", get rs() { return V.boughtItem.clothing.casual === 1; }}, - - {name: "Boyshorts", value: "boyshorts", get rs() { return V.boughtItem.clothing.underwear === 1; }}, - {name: "Bra", value: "a bra", get rs() { return V.boughtItem.clothing.underwear === 1; }}, - {name: "Kitty lingerie", value: "kitty lingerie", get rs() { return V.boughtItem.clothing.underwear === 1; }}, - {name: "Panties and pasties", value: "panties and pasties", get rs() { return V.boughtItem.clothing.underwear === 1; }}, - {name: "Skimpy loincloth", value: "a skimpy loincloth", get rs() { return V.boughtItem.clothing.underwear === 1; }}, - {name: "Thong", value: "a thong", get rs() { return V.boughtItem.clothing.underwear === 1; }}, - {name: "Pasties", value: "pasties", get rs() { return V.boughtItem.clothing.underwear === 1; }}, + get requirements() { return V.boughtItem.clothing.career === 1 || V.PC.career === "servant"; } + }, + + {name: "Ballgown", value: "a ball gown", get requirements() { return V.boughtItem.clothing.dresses === 1; }}, + {name: "Gothic lolita dress", value: "a gothic lolita dress", get requirements() { return V.boughtItem.clothing.dresses === 1; }}, + + {name: "Cybersuit", value: "a cybersuit", get requirements() { return V.boughtItem.clothing.bodysuits === 1; }}, + {name: "Latex catsuit", value: "a latex catsuit", get requirements() { return V.boughtItem.clothing.bodysuits === 1; }}, + + {name: "Button-up shirt and panties", value: "a button-up shirt and panties", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Button-up shirt", value: "a button-up shirt", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Cutoffs", value: "cutoffs", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Jeans", value: "jeans", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Leather pants and a tube top", value: "leather pants and a tube top", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Leather pants", value: "leather pants", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Oversized t-shirt", value: "an oversized t-shirt", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Sweater and cutoffs", value: "a sweater and cutoffs", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Sweater and panties", value: "a sweater and panties", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Sweater", value: "a sweater", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "T-shirt and jeans", value: "a t-shirt and jeans", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "T-shirt and panties", value: "a t-shirt and panties", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "T-shirt", value: "a t-shirt", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Tank-top and panties", value: "a tank-top and panties", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Tank-top", value: "a tank-top", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + {name: "Tube top", value: "a tube top", get requirements() { return V.boughtItem.clothing.casual === 1; }}, + + {name: "Boyshorts", value: "boyshorts", get requirements() { return V.boughtItem.clothing.underwear === 1; }}, + {name: "Bra", value: "a bra", get requirements() { return V.boughtItem.clothing.underwear === 1; }}, + {name: "Kitty lingerie", value: "kitty lingerie", get requirements() { return V.boughtItem.clothing.underwear === 1; }}, + {name: "Panties and pasties", value: "panties and pasties", get requirements() { return V.boughtItem.clothing.underwear === 1; }}, + {name: "Skimpy loincloth", value: "a skimpy loincloth", get requirements() { return V.boughtItem.clothing.underwear === 1; }}, + {name: "Thong", value: "a thong", get requirements() { return V.boughtItem.clothing.underwear === 1; }}, + {name: "Pasties", value: "pasties", get requirements() { return V.boughtItem.clothing.underwear === 1; }}, { name: "Leather pants and pasties", value: "leather pants and pasties", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } + get requirements() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, { name: "T-shirt and thong", value: "a t-shirt and thong", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } + get requirements() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, { name: "Tube top and thong", value: "a tube top and thong", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } + get requirements() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, { name: "Oversized t-shirt and boyshorts", value: "an oversized t-shirt and boyshorts", - get rs() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } + get requirements() { return V.boughtItem.clothing.underwear === 1 && V.boughtItem.clothing.casual === 1; } }, - {name: "Sport shorts and a sports bra", value: "sport shorts and a sports bra", get rs() { return V.boughtItem.clothing.sports === 1; }}, - {name: "Sport shorts", value: "sport shorts", get rs() { return V.boughtItem.clothing.sports === 1; }}, - {name: "Sports bra", value: "a sports bra", get rs() { return V.boughtItem.clothing.sports === 1; }}, + {name: "Sport shorts and a sports bra", value: "sport shorts and a sports bra", get requirements() { return V.boughtItem.clothing.sports === 1; }}, + {name: "Sport shorts", value: "sport shorts", get requirements() { return V.boughtItem.clothing.sports === 1; }}, + {name: "Sports bra", value: "a sports bra", get requirements() { return V.boughtItem.clothing.sports === 1; }}, { name: "Sport shorts and a t-shirt", value: "sport shorts and a t-shirt", - get rs() { return V.boughtItem.clothing.sports === 1 && V.boughtItem.clothing.casual === 1; } + get requirements() { return V.boughtItem.clothing.sports === 1 && V.boughtItem.clothing.casual === 1; } }, - {name: "Pony outfit (nice)", value: "a nice pony outfit", get rs() { return V.boughtItem.clothing.pony === 1; }}, - {name: "Pony outfit (slutty)", value: "a slutty pony outfit", get rs() { return V.boughtItem.clothing.pony === 1; }}, + {name: "Pony outfit (nice)", value: "a nice pony outfit", get requirements() { return V.boughtItem.clothing.pony === 1; }}, + {name: "Pony outfit (slutty)", value: "a slutty pony outfit", get requirements() { return V.boughtItem.clothing.pony === 1; }}, - {name: "Monokini", value: "a monokini", get rs() { return V.boughtItem.clothing.swimwear === 1; }}, - {name: "One-piece swimsuit", value: "a one-piece swimsuit", get rs() { return V.boughtItem.clothing.swimwear === 1; }}, + {name: "Monokini", value: "a monokini", get requirements() { return V.boughtItem.clothing.swimwear === 1; }}, + {name: "One-piece swimsuit", value: "a one-piece swimsuit", get requirements() { return V.boughtItem.clothing.swimwear === 1; }}, { name: "Striped bra", value: "a striped bra", - get rs() { return V.boughtItem.clothing.pantsu === 1 || V.continent === "Japan"; } + get requirements() { return V.boughtItem.clothing.pantsu === 1 || V.continent === "Japan"; } }, { name: "Striped panties", value: "striped panties", - get rs() { return V.boughtItem.clothing.pantsu === 1 || V.continent === "Japan"; } + get requirements() { return V.boughtItem.clothing.pantsu === 1 || V.continent === "Japan"; } }, { name: "Striped underwear", value: "striped underwear", - get rs() { return V.boughtItem.clothing.pantsu === 1 || V.continent === "Japan"; } + get requirements() { return V.boughtItem.clothing.pantsu === 1 || V.continent === "Japan"; } }, // "Normal" things: @@ -2197,7 +2197,7 @@ App.Data.misc = { name: "Chains", value: "chains", fs: "FSDegradationist", - get rs() { return V.boughtItem.clothing.chains === 1; } + get requirements() { return V.boughtItem.clothing.chains === 1; } }, {name: "Go naked", value: "no clothing"}, {name: "Penitent nun", value: "a penitent nuns habit"}, @@ -2212,34 +2212,34 @@ App.Data.misc = { {name: "Silken ribbon", value: "silk ribbon"}, {name: "Heavy gold", value: "heavy gold"}, {name: "Pretty jewelry", value: "pretty jewelry"}, - {name: "Nice retirement counter", value: "nice retirement counter", get rs() { return V.seeAge; }}, + {name: "Nice retirement counter", value: "nice retirement counter", get requirements() { return V.seeAge; }}, {name: "Bell", value: "bell collar"}, {name: "Cowbell", value: "leather with cowbell"}, { name: "Bowtie collar", value: "bowtie", fs: "FSGenderFundamentalist", - get rs() { return V.boughtItem.clothing.bunny === 1; } + get requirements() { return V.boughtItem.clothing.bunny === 1; } }, { name: "Neck tie", value: "neck tie", fs: "FSPaternalist", - get rs() { return V.boughtItem.clothing.conservative === 1; } + get requirements() { return V.boughtItem.clothing.conservative === 1; } }, { name: "Ancient Egyptian", value: "ancient Egyptian", fs: "FSEgyptianRevivalist", - get rs() { return V.boughtItem.clothing.egypt === 1; } + get requirements() { return V.boughtItem.clothing.egypt === 1; } }, ], harshCollars: [ {name: "Tight steel", value: "tight steel"}, - {name: "Cruel retirement counter", value: "cruel retirement counter", get rs() { return V.seeAge === 1; }}, + {name: "Cruel retirement counter", value: "cruel retirement counter", get requirements() { return V.seeAge === 1; }}, {name: "Uncomfortable leather", value: "uncomfortable leather"}, - {name: "Pregnancy biometrics", value: "preg biometrics", get rs() { return V.seeAge === 1; }}, + {name: "Pregnancy biometrics", value: "preg biometrics", get requirements() { return V.seeAge === 1; }}, {name: "Shock punishment", value: "shock punishment"}, {name: "Neck corset", value: "neck corset"}, ], @@ -2256,7 +2256,7 @@ App.Data.misc = { { name: "Massive dildo gag", value: "massive dildo gag", - get rs() { return V.boughtItem.toys.gags === 1; } + get requirements() { return V.boughtItem.toys.gags === 1; } }, {name: "Dildo gag", value: "dildo gag"}, ], @@ -2272,19 +2272,19 @@ App.Data.misc = { name: "Platforms", value: "platform shoes", fs: "FSStatuesqueGlorification", - get rs() { return (V.boughtItem.shoes.heels === 1); } + get requirements() { return (V.boughtItem.shoes.heels === 1); } }, { name: "Platform heels", value: "platform heels", fs: "FSStatuesqueGlorification", - get rs() { return (V.boughtItem.shoes.heels === 1); } + get requirements() { return (V.boughtItem.shoes.heels === 1); } }, { name: "Painfully extreme platform heels", value: "extreme platform heels", fs: "FSStatuesqueGlorification", - get rs() { return (V.boughtItem.shoes.heels === 1); } + get requirements() { return (V.boughtItem.shoes.heels === 1); } } ], @@ -2297,25 +2297,25 @@ App.Data.misc = { name: "1st Trimester belly", value: "a small empathy belly", fs: "FSRepopulationFocus", - get rs() { return V.boughtItem.clothing.belly === 1; } + get requirements() { return V.boughtItem.clothing.belly === 1; } }, { name: "2nd Trimester belly", value: "a medium empathy belly", fs: "FSRepopulationFocus", - get rs() { return V.boughtItem.clothing.belly === 1; } + get requirements() { return V.boughtItem.clothing.belly === 1; } }, { name: "3rd Trimester belly", value: "a large empathy belly", fs: "FSRepopulationFocus", - get rs() { return V.boughtItem.clothing.belly === 1; } + get requirements() { return V.boughtItem.clothing.belly === 1; } }, { name: "3rd Trimester twins belly", value: "a huge empathy belly", fs: "FSRepopulationFocus", - get rs() { return V.boughtItem.clothing.belly === 1; } + get requirements() { return V.boughtItem.clothing.belly === 1; } } ], @@ -2330,7 +2330,7 @@ App.Data.misc = { { name: "Smart bullet vibrator", value: "smart bullet vibrator", - get rs() { return V.boughtItem.toys.smartVibes === 1; } + get requirements() { return V.boughtItem.toys.smartVibes === 1; } }, { name: "Dildo", @@ -2339,7 +2339,7 @@ App.Data.misc = { { name: "Long dildo", value: "long dildo", - get rs() { return V.boughtItem.toys.dildos === 1; } + get requirements() { return V.boughtItem.toys.dildos === 1; } }, { name: "Large dildo", @@ -2348,16 +2348,16 @@ App.Data.misc = { { name: "Long, large dildo", value: "long, large dildo", - get rs() { return V.boughtItem.toys.dildos === 1; } + get requirements() { return V.boughtItem.toys.dildos === 1; } }, { name: "Huge dildo", - get rs() { return V.boughtItem.toys.dildos === 1; } + get requirements() { return V.boughtItem.toys.dildos === 1; } }, { name: "Long, huge dildo", value: "long, huge dildo", - get rs() { return V.boughtItem.toys.dildos === 1; } + get requirements() { return V.boughtItem.toys.dildos === 1; } } ], @@ -2378,7 +2378,7 @@ App.Data.misc = { { name: "Smart bullet vibrator", value: "smart bullet vibrator", - get rs() { return V.boughtItem.toys.smartVibes === 1; } + get requirements() { return V.boughtItem.toys.smartVibes === 1; } } ], @@ -2393,7 +2393,7 @@ App.Data.misc = { { name: "Long plug", value: "long plug", - get rs() { return V.boughtItem.toys.buttPlugs === 1; } + get requirements() { return V.boughtItem.toys.buttPlugs === 1; } }, { name: "Large plug", @@ -2402,7 +2402,7 @@ App.Data.misc = { { name: "Long, large plug", value: "long, large plug", - get rs() { return V.boughtItem.toys.buttPlugs === 1; } + get requirements() { return V.boughtItem.toys.buttPlugs === 1; } }, { name: "Huge plug", @@ -2411,16 +2411,16 @@ App.Data.misc = { { name: "Long, huge plug", value: "long, huge plug", - get rs() { return V.boughtItem.toys.buttPlugs === 1; } + get requirements() { return V.boughtItem.toys.buttPlugs === 1; } } ], buttplugAttachments: [ {name: "None", value: "none"}, - {name: "Tail", value: "tail", get rs() { return V.boughtItem.toys.buttPlugTails === 1; }}, - {name: "Fox tail", value: "fox tail", get rs() { return V.boughtItem.toys.buttPlugTails === 1; }}, - {name: "Cat tail", value: "cat tail", get rs() { return V.boughtItem.toys.buttPlugTails === 1; }}, - {name: "Cow tail", value: "cow tail", get rs() { return V.boughtItem.toys.buttPlugTails === 1; }} + {name: "Tail", value: "tail", get requirements() { return V.boughtItem.toys.buttPlugTails === 1; }}, + {name: "Fox tail", value: "fox tail", get requirements() { return V.boughtItem.toys.buttPlugTails === 1; }}, + {name: "Cat tail", value: "cat tail", get requirements() { return V.boughtItem.toys.buttPlugTails === 1; }}, + {name: "Cow tail", value: "cow tail", get requirements() { return V.boughtItem.toys.buttPlugTails === 1; }} ], chastityDevices: [ diff --git a/js/003-data/policiesData.js b/js/003-data/policiesData.js index eb9e647c25a79abf25f1cffb5a9352c280e10081..c5db6e1406c376dd927da710ba422863eb59cdab 100644 --- a/js/003-data/policiesData.js +++ b/js/003-data/policiesData.js @@ -5,7 +5,7 @@ * @property {string} [activatedTitle] The title of the policy if the policy is active. Param "title" is used as a fallback. * @property {string} text Text that describes the policy in detail. No initial cap, ends with punctuation. * @property {string} [activatedText] Text that describes an active policy in detail. Uses param "text" as a fallback. - * @property {function(void):boolean} [requirements] Function to determine if a policy can be enabled. + * @property {boolean} [requirements] Function to determine if a policy can be enabled. * @property {function(void):void} [onImplementation] Beyond applying the policy itself and billing the player, are there other values to change? This allows a shortstack FS policy to revoke some generic tall policies, for example. * @property {function(void):void} [onRepeal] same as onImplementation, but fires when a policy is repealed. * @property {number|string} [enable] Value to enable a policy. Defaults to 1 if not defined. @@ -151,7 +151,7 @@ App.Data.Policies.Selection = { { title: "Basic Beauty Standards", text: "no unattractive slaves may be sold in the slave markets.", - requirements: function() { return (V.policies.SMR.beauty.qualitySMR === 0); }, + get requirements() { return (V.policies.SMR.beauty.qualitySMR === 0); }, note: "This will raise the price of slaves" } ], @@ -160,7 +160,7 @@ App.Data.Policies.Selection = { { title: "Quality Beauty Standards", text: "only attractive slaves may be sold in the slave markets.", - requirements: function() { return (V.policies.SMR.beauty.basicSMR === 0); }, + get requirements() { return (V.policies.SMR.beauty.basicSMR === 0); }, note: "This will raise the price of slaves" } ], @@ -178,14 +178,14 @@ App.Data.Policies.Selection = { title: "Basic Height Standards (Tall)", text: "tall slaves will be favored in the slave markets and those not quite tall enough will undergo height increasing surgery. This will not preclude the sale of short slaves, just the care of them.", activatedText: "tall slaves are favored in the slave market, short slaves capable of meeting height standards via surgery must undergo it.", - requirements: function() { return (V.policies.SMR.height.advancedSMR === 0); }, + get requirements() { return (V.policies.SMR.height.advancedSMR === 0); }, note: "This will raise the price of slaves" }, { title: "Basic Height Standards (Short)", text: "short slaves are favored in the slave market, tall slaves capable of meeting height standards via surgery must undergo it.", activatedText: "short slaves will be favored in the slave markets and those just above the cut off will undergo height reducing surgery. This will not preclude the sale of tall slaves, just the care of them.", - requirements: function() { return (V.policies.SMR.height.advancedSMR === 0); }, + get requirements() { return (V.policies.SMR.height.advancedSMR === 0); }, enable: -1, note: "This will raise the price of slaves" } @@ -196,7 +196,7 @@ App.Data.Policies.Selection = { title: "Quality Height Standards (Tall)", text: "only slaves of above average height for their age may be sold in the slave markets.", activatedText: "no slaves of below average height for their age may be sold in the slave markets.", - requirements: function() { + get requirements() { return ( V.policies.SMR.height.basicSMR === 0 && V.arcologies[0].FSPetiteAdmirationSMR === 0 && @@ -209,7 +209,7 @@ App.Data.Policies.Selection = { title: "Quality Height Standards (Short)", text: "no slaves of above average height for their age may be sold in the slave markets.", activatedText: "no slaves of average average height for their age may be sold in the slave markets.", - requirements: function() { + get requirements() { return ( V.policies.SMR.height.basicSMR === 0 && V.arcologies[0].FSPetiteAdmirationSMR === 0 && @@ -225,7 +225,7 @@ App.Data.Policies.Selection = { { title: "Basic Intelligence Standards", text: "no stupid slaves may be sold in the slave markets.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSIntellectualDependencySMR === 0 && V.policies.SMR.intelligence.qualitySMR === 0 @@ -239,7 +239,7 @@ App.Data.Policies.Selection = { { title: "Quality Intelligence Standards", text: "only intelligent slaves may be sold in the slave markets.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSIntellectualDependencySMR === 0 && V.policies.SMR.intelligence.basicSMR === 0 @@ -308,7 +308,7 @@ App.Data.Policies.Selection = { title: "Child Protection Act", text: "underage slaves enjoy protections only against penetrative sex.", activatedText: "underage slaves enjoy protections against molestation and rape.", - requirements: function() { return (V.extremeUnderage === 1); }, + get requirements() { return (V.extremeUnderage === 1); }, } ], "arcologies[0].FSEgyptianRevivalistIncestPolicy": [ @@ -316,7 +316,7 @@ App.Data.Policies.Selection = { title: "Incest Encouragement", text: "you will use your personal influence to spur interest in incest.", activatedText: "you are using your personal influence to spur interest in incest.", - requirements: function() { return (V.arcologies[0].FSEgyptianRevivalist === "unset"); }, + get requirements() { return (V.arcologies[0].FSEgyptianRevivalist === "unset"); }, } ], "policies.bestialityOpenness": [ @@ -324,7 +324,7 @@ App.Data.Policies.Selection = { title: "Bestiality Acceptance", text: "you will use your personal influence to spur acceptance of bestiality.", activatedText: "you are using your personal influence to spur the acceptance of bestiality.", - requirements: function() { return (V.seeBestiality === 1); }, + get requirements() { return (V.seeBestiality === 1); }, } ] }, @@ -334,7 +334,7 @@ App.Data.Policies.Selection = { title: "Encourage Refugee Servitude", text: "the image of slavery in your arcology will be softened, encouraging old world refugees to consider slavery.", activatedText: "the image of slavery in your arcology is being softened, encouraging old world refugees to consider becoming menial slaves.", - requirements: function() { return (V.arcologies[0].FSDegradationist === "unset"); }, + get requirements() { return (V.arcologies[0].FSDegradationist === "unset"); }, note: "Will increase immigration of refugees to become menial slaves" } ], @@ -510,7 +510,7 @@ App.Data.Policies.Selection = { title: "Raiding Mercenaries", text: "you will allow your mercenaries to occasionally conduct a raid directly for your benefit.", activatedText: "you are allowing your mercenaries to occasionally raid for your direct benefit.", - requirements: function() { return (V.mercenaries > 0) && (V.mercenariesHelpCorp > 0); }, + get requirements() { return (V.mercenaries > 0) && (V.mercenariesHelpCorp > 0); }, get note() { return `Will cost ${cashFormat(policies.cost())} weekly to maintain`; } } ], @@ -527,7 +527,7 @@ App.Data.Policies.Selection = { title: "Marriage between Owners and Slaves", text: "you will provide a legal basis for citizens to marry their slaves without impacting their rights as slaveowners.", activatedText: "you are providing a legal basis for citizens to marry their slaves without impacting their rights as slaveowners.", - requirements: function() { return (V.arcologies[0].FSDegradationist === "unset"); }, + get requirements() { return (V.arcologies[0].FSDegradationist === "unset"); }, get note() { if (V.arcologies[0].FSPaternalist >= 60) { return `Will not damage your reputation due to your arcology's advanced Paternalism`; @@ -544,14 +544,14 @@ App.Data.Policies.Selection = { title: "The Slave School subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.TSS.schoolProsperity < 10 && V.TSS.schoolPresent === 1); }, + get requirements() { return (V.TSS.schoolProsperity < 10 && V.TSS.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine The Slave School", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.TSS.schoolPresent === 1); }, + get requirements() { return (V.TSS.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -560,14 +560,14 @@ App.Data.Policies.Selection = { title: "The Utopian Orphanage subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.TUO.schoolProsperity < 10 && V.TUO.schoolPresent === 1); }, + get requirements() { return (V.TUO.schoolProsperity < 10 && V.TUO.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine The Utopian Orphanage", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.TUO.schoolPresent === 1); }, + get requirements() { return (V.TUO.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -576,14 +576,14 @@ App.Data.Policies.Selection = { title: "The Growth Research Institute subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.GRI.schoolProsperity < 10 && V.GRI.schoolPresent === 1); }, + get requirements() { return (V.GRI.schoolProsperity < 10 && V.GRI.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine the Growth Research Institute", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.GRI.schoolPresent === 1); }, + get requirements() { return (V.GRI.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -592,14 +592,14 @@ App.Data.Policies.Selection = { title: "St. Claver Preparatory subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.SCP.schoolProsperity < 10 && V.SCP.schoolPresent === 1); }, + get requirements() { return (V.SCP.schoolProsperity < 10 && V.SCP.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine St. Claver Preparatory", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.SCP.schoolPresent === 1); }, + get requirements() { return (V.SCP.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -608,14 +608,14 @@ App.Data.Policies.Selection = { title: "L'École des Enculées subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.LDE.schoolProsperity < 10 && V.LDE.schoolPresent === 1); }, + get requirements() { return (V.LDE.schoolProsperity < 10 && V.LDE.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine L'École des Enculées", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.LDE.schoolPresent === 1); }, + get requirements() { return (V.LDE.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -624,14 +624,14 @@ App.Data.Policies.Selection = { title: "The Gymnasium-Academy subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.TGA.schoolProsperity < 10 && V.TGA.schoolPresent === 1); }, + get requirements() { return (V.TGA.schoolProsperity < 10 && V.TGA.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine the Gymnasium-Academy", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.TGA.schoolPresent === 1); }, + get requirements() { return (V.TGA.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -640,14 +640,14 @@ App.Data.Policies.Selection = { title: "The Cattle Ranch subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.TCR.schoolProsperity < 10 && V.TCR.schoolPresent === 1); }, + get requirements() { return (V.TCR.schoolProsperity < 10 && V.TCR.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine The Cattle Ranch", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.TCR.schoolPresent === 1); }, + get requirements() { return (V.TCR.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -656,14 +656,14 @@ App.Data.Policies.Selection = { title: "Futanari Sisters subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.TFS.schoolProsperity < 10 && V.TFS.schoolPresent === 1); }, + get requirements() { return (V.TFS.schoolProsperity < 10 && V.TFS.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine the Futanari Sisters", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.TFS.schoolPresent === 1); }, + get requirements() { return (V.TFS.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -672,14 +672,14 @@ App.Data.Policies.Selection = { title: "Hippolyta Academy subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.HA.schoolProsperity < 10 && V.HA.schoolPresent === 1); }, + get requirements() { return (V.HA.schoolProsperity < 10 && V.HA.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine the Hippolyta Academy", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.HA.schoolPresent === 1); }, + get requirements() { return (V.HA.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -688,14 +688,14 @@ App.Data.Policies.Selection = { title: "Nueva Universidad de Libertad subsidy", text: "you will subsidize this school's branch campus in your arcology.", activatedText: "you are subsidizing this school's branch campus in your arcology.", - requirements: function() { return (V.NUL.schoolProsperity < 10 && V.NUL.schoolPresent === 1); }, + get requirements() { return (V.NUL.schoolProsperity < 10 && V.NUL.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, }, { title: "Undermine Nueva Universidad de Libertad", text: "you will covertly hurt this school's branch campus in your arcology.", activatedText: "you are covertly hurting this school's branch campus in your arcology.", - requirements: function() { return (V.NUL.schoolPresent === 1); }, + get requirements() { return (V.NUL.schoolPresent === 1); }, get note() { return `Will cost ${cashFormat(1000)} weekly to maintain; does not cost reputation to start`; }, } ], @@ -727,7 +727,7 @@ App.Data.Policies.Selection = { }, get activatedText() { return `you have set your arcology's standard retirement age for sex slaves at ${V.retirementAge}.`; }, onRepeal: function() { V.retirementAge = 45; }, - requirements: function() { return (V.policies.retirement.physicalAgePolicy === 0); }, + get requirements() { return (V.policies.retirement.physicalAgePolicy === 0); }, note: "Set age before implementing" } ], @@ -780,14 +780,14 @@ App.Data.Policies.Selection = { text += `production.`; return text; }, - requirements: function() { return (V.arcologies[0].FSPaternalist === "unset"); }, + get requirements() { return (V.arcologies[0].FSPaternalist === "unset"); }, enable: "bioreactor" }, { title: "Public Arcade Retirement", text: "once reaching mandatory retirement age, slaves will be placed in cheap public arcades to be used until useless.", activatedText: "once reaching mandatory retirement age, slaves are placed in cheap public arcades to be used until useless.", - requirements: function() { return (V.arcologies[0].FSPaternalist === "unset"); }, + get requirements() { return (V.arcologies[0].FSPaternalist === "unset"); }, enable: "arcade" }, { @@ -827,7 +827,7 @@ App.Data.Policies.Selection = { return el; }, enable: 10000, - requirements: function() { return (V.policies.retirement.fate === "citizen"); }, + get requirements() { return (V.policies.retirement.fate === "citizen"); }, } ], "policies.retirement.milk": [ @@ -858,7 +858,7 @@ App.Data.Policies.Selection = { return el; }, enable: 50000, - requirements: function() { return (V.policies.retirement.fate === "citizen"); }, + get requirements() { return (V.policies.retirement.fate === "citizen"); }, } ], "policies.retirement.cum": [ @@ -889,7 +889,7 @@ App.Data.Policies.Selection = { return el; }, enable: 500000, - requirements: function() { return (V.policies.retirement.fate === "citizen" && (V.seeDicks > 0 || V.makeDicks)); }, + get requirements() { return (V.policies.retirement.fate === "citizen" && (V.seeDicks > 0 || V.makeDicks)); }, } ], "policies.retirement.births": [ @@ -920,7 +920,7 @@ App.Data.Policies.Selection = { return el; }, enable: 5, - requirements: function() { return (V.policies.retirement.fate === "citizen"); }, + get requirements() { return (V.policies.retirement.fate === "citizen"); }, } ], "policies.retirement.kills": [ @@ -951,7 +951,7 @@ App.Data.Policies.Selection = { return el; }, enable: 3, - requirements: function() { return (V.policies.retirement.fate === "citizen"); }, + get requirements() { return (V.policies.retirement.fate === "citizen"); }, } ], }, @@ -1007,7 +1007,7 @@ App.Data.Policies.Selection = { activatedTitle: "Mandatory Menial Retirement Age", text: `all slaveowners will be required to pay into accounts to support their slaves as lower-class citizens in retirement.`, get activatedText() { return `you have set your arcology's retirement age for menial slaves at ${V.customMenialRetirementAge}.`; }, - requirements: function() { return (V.arcologies[0].FSDegradationist === "unset"); }, + get requirements() { return (V.arcologies[0].FSDegradationist === "unset"); }, note: `Will add upkeep to all menial slaves`, onImplementation: function() { if (V.citizenRetirementTrigger === 0) { V.citizenRetirementTrigger = 1; } }, onRepeal: function() { V.customMenialRetirementAge = 45; } @@ -1020,13 +1020,13 @@ App.Data.Policies.Selection = { title: "Cultural Openness", text: "you will promote the exchange of ideas between arcologies, increasing cultural crossover between your arcology and its neighbors.", activatedText: "you are promoting the exchange of ideas between arcologies, increasing cultural crossover between your arcology and its neighbors.", - requirements: function() { return (V.arcologies.length > 1); }, + get requirements() { return (V.arcologies.length > 1); }, }, { title: "Cultural Defensiveness", text: "you will do your best to suppress the exchange of ideas between arcologies, reducing cultural crossover between your arcology and its neighbors.", activatedText: " you are doing your best to suppress the exchange of ideas between arcologies, reducing cultural crossover between your arcology and its neighbors.", - requirements: function() { return (V.arcologies.length > 1); }, + get requirements() { return (V.arcologies.length > 1); }, enable: -1, }, ], @@ -1038,7 +1038,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start a fashion for elegant girls with just the right amount of T&A.", activatedText: "you are doing your best to maintain a fashion for elegant girls with just the right amount of T&A.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSSlimnessEnthusiastLaw === 0 && V.arcologies[0].FSHedonisticDecadenceLaw2 === 0 && @@ -1060,7 +1060,7 @@ App.Data.Policies.Selection = { title: "Mandatory Feminization SMR", titleClass: "lime", text: "in order to be sold in the arcology, slaves with dicks must have their balls removed.", - requirements: function() { return (V.arcologies[0].FSGenderFundamentalist >= 40); }, + get requirements() { return (V.arcologies[0].FSGenderFundamentalist >= 40); }, note: `Will help advance Gender Fundamentalism` } ], @@ -1072,7 +1072,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start a fashion for turning slaves into elegant girls with just the right amount of T&A.", activatedText: "you are doing your best to maintain a fashion for turning slaves into elegant girls with just the right amount of T&A.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSSlimnessEnthusiastLaw === 0 && V.arcologies[0].FSHedonisticDecadenceLaw2 === 0 && @@ -1088,7 +1088,7 @@ App.Data.Policies.Selection = { text: "you will encourage veneration of slaves with both dicks and pussies.", activatedText: "you are encouraging Gender Radicalism towards veneration of slaves with both dicks and pussies.", enable: 1, - requirements: function() { return (V.seeDicks !== 0); }, + get requirements() { return (V.seeDicks !== 0); }, note: `Will affect citizens' appreciation of futas` }, { @@ -1097,7 +1097,7 @@ App.Data.Policies.Selection = { text: "you will encourage an appreciation for stiff dicks and swinging balls.", activatedText: "you are encouraging Gender Radicalism towards an appreciation for stiff dicks and swinging balls.", enable: 2, - requirements: function() { return (V.seeDicks !== 0); }, + get requirements() { return (V.seeDicks !== 0); }, note: `Will affect slaves' attractiveness to citizens` }, { @@ -1106,7 +1106,7 @@ App.Data.Policies.Selection = { text: "you will encourage an appreciation for broad hips, plush asses, big buttholes, and skilled sphincters.", activatedText: "you are encouraging an appreciation for broad hips, plush asses, big buttholes, and skilled sphincters.", enable: 3, - requirements: function() { return (V.seeDicks !== 0); }, + get requirements() { return (V.seeDicks !== 0); }, note: `Will affect slaves' attractiveness to citizens` }, { @@ -1115,7 +1115,7 @@ App.Data.Policies.Selection = { text: "you will encourage an appreciation for cute, flat chested slaves with small male genitals and no vagina.", activatedText: "you are encouraging an appreciation for cute, flat chested slaves with small male genitals and no vagina.", enable: 4, - requirements: function() { return (V.seeDicks !== 0); }, + get requirements() { return (V.seeDicks !== 0); }, note: `Will affect slaves' attractiveness to citizens` }, ], @@ -1127,7 +1127,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "the slave markets will be required to treat incoming slaves reasonably well.", activatedText: "the slave markets are required to treat incoming slaves reasonably well.", - requirements: function() { return (V.arcologies[0].FSDegradationistSMR === 0); }, + get requirements() { return (V.arcologies[0].FSDegradationistSMR === 0); }, note: `Will reduce the arcology's prosperity and help advance Paternalism` } ], @@ -1137,7 +1137,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "slaveowners who treat their slaves well will be offered reduced rent.", activatedText: "slaveowners who treat their slaves well are offered reduced rent.", - requirements: function() { return (V.arcologies[0].FSPaternalist >= 60); }, + get requirements() { return (V.arcologies[0].FSPaternalist >= 60); }, note: `Will reduce your rental income` } ], @@ -1149,7 +1149,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "slave markets will be required to punish new slaves severely simply to introduce them to pain.", activatedText: "slave markets are required to punish new slaves severely simply to introduce them to pain.", - requirements: function() { return (V.arcologies[0].FSPaternalistSMR === 0); }, + get requirements() { return (V.arcologies[0].FSPaternalistSMR === 0); }, note: `Will help advance Degradationism` } ], @@ -1159,7 +1159,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "slaveowners will be required to allow their menial slaves to use the sex arcades.", activatedText: "slaveowners are required to allow their menial slaves to use the sex arcades.", - requirements: function() { return (V.arcologies[0].FSDegradationist >= 90); }, + get requirements() { return (V.arcologies[0].FSDegradationist >= 90); }, note: `Will reduce labor efficiency, damaging the arcology's prosperity and adds a cost to each menial slave` } ], @@ -1171,7 +1171,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "in order to be sold in the arcology, slaves will need to fail a simple intelligence test.", activatedText: "in order to be sold in the arcology, slaves must fail a simple intelligence test.", - requirements: function() { return (V.arcologies[0].FSSlaveProfessionalismSMR === 0); }, + get requirements() { return (V.arcologies[0].FSSlaveProfessionalismSMR === 0); }, onImplementation: function() { V.policies.SMR.intelligence.basicSMR = 0; V.policies.SMR.intelligence.qualitySMR = 0; @@ -1191,7 +1191,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start an appreciation for stereotypical bimbo bodies.", activatedText: "you are encouraging an appreciation for the stereotypical bimbo body.", - requirements: function() { return (V.arcologies[0].FSIntellectualDependency >= 60); }, + get requirements() { return (V.arcologies[0].FSIntellectualDependency >= 60); }, note: `Will greatly affect society's views on slave beauty` } ], @@ -1200,7 +1200,7 @@ App.Data.Policies.Selection = { title: "Invalid Protection Act", titleClass: "lime", text: "by law, anyone unable to pass a standardized test of intelligence and not already a dependant will be enslaved for their own well being.", - requirements: function() { return (V.arcologies[0].FSIntellectualDependency >= 80); }, + get requirements() { return (V.arcologies[0].FSIntellectualDependency >= 80); }, note: `Will convert some immigrants to menial slaves and give a small boost to reputation` } ], @@ -1211,7 +1211,7 @@ App.Data.Policies.Selection = { title: "Head Start SMR", titleClass: "lime", text: "in order to be sold in the arcology, slaves must pass a rigorous course designed to bring their skills and poise up to standard.", - requirements: function() { return (V.arcologies[0].FSIntellectualDependencySMR === 0); }, + get requirements() { return (V.arcologies[0].FSIntellectualDependencySMR === 0); }, note: `Will help advance Slave Professionalism` } ], @@ -1221,7 +1221,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "citizens will be required to pass regular intelligence tests or face expulsion from the arcology.", activatedText: "citizens must pass regular intelligence tests or face expulsion from the arcology.", - requirements: function() { return (V.arcologies[0].FSSlaveProfessionalism >= 90); }, + get requirements() { return (V.arcologies[0].FSSlaveProfessionalism >= 90); }, onImplementation: function() { if (V.FSSlaveProfLawTrigger === 0) { V.FSSlaveProfLawTrigger = 1; @@ -1247,7 +1247,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "all drugs in the arcology will be subjected to rigorous testing for purity.", activatedText: "all drugs in the arcology must pass rigorous testing for purity.", - requirements: function() { return (V.arcologies[0].FSBodyPurist >= 90); }, + get requirements() { return (V.arcologies[0].FSBodyPurist >= 90); }, note: `Will reduce slaving profits, damaging the arcology's prosperity` } ], @@ -1279,7 +1279,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "young citizens will be offered reduced rent.", activatedText: "young citizens are offered reduced rent.", - requirements: function() { return (V.arcologies[0].FSYouthPreferentialist >= 90); }, + get requirements() { return (V.arcologies[0].FSYouthPreferentialist >= 90); }, note: `Will reduce your rental income` } ], @@ -1300,7 +1300,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "older citizens will be offered reduced rent.", activatedText: "older citizens are offered reduced rent.", - requirements: function() { return (V.arcologies[0].FSMaturityPreferentialist >= 90); }, + get requirements() { return (V.arcologies[0].FSMaturityPreferentialist >= 90); }, note: `Will reduce your rental income` } ], @@ -1312,7 +1312,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "in order to be sold in the arcology, slaves will have to pass height requirements.", activatedText: "in order to be sold in the arcology, slaves must pass height requirements.", - requirements: function() { return (V.arcologies[0].FSStatuesqueGlorificationSMR === 0); }, + get requirements() { return (V.arcologies[0].FSStatuesqueGlorificationSMR === 0); }, onImplementation: function() { if (V.policies.SMR.height.advancedSMR > 0) { V.policies.SMR.height.advancedSMR = 0; @@ -1336,7 +1336,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to push a taste for relative height rather than a strict cut-off.", activatedText: "beauty standards are based off of relative expected height as opposed to a strict cutoff.", - requirements: function() { return (V.arcologies[0].FSPetiteAdmiration >= 60); }, + get requirements() { return (V.arcologies[0].FSPetiteAdmiration >= 60); }, note: `Will weaken beauty standards by making them more easily attainable but may flush out cheaters` } ], @@ -1346,7 +1346,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "citizens will be offered reduced rent for keeping slaves and taking partners far shorter than themselves.", activatedText: "citizens are offered reduced rent for keeping slaves far shorter than themselves.", - requirements: function() { return (V.arcologies[0].FSPetiteAdmiration >= 90); }, + get requirements() { return (V.arcologies[0].FSPetiteAdmiration >= 90); }, note: `Will reduce your rental income` } ], @@ -1381,7 +1381,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to push focus on to relative height rather than a strict cutoff.", activatedText: "beauty standards are based off of relative expected height as opposed to a strict cutoff.", - requirements: function() { return (V.arcologies[0].FSStatuesqueGlorification >= 60); }, + get requirements() { return (V.arcologies[0].FSStatuesqueGlorification >= 60); }, note: `Will weaken beauty standards by making them more easily attainable` } ], @@ -1391,7 +1391,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "tall citizens will be offered reduced rent at short citizens' expense.", activatedText: "tall citizens are offered reduced rent at short citizens' expense.", - requirements: function() { return (V.arcologies[0].FSStatuesqueGlorification >= 90); }, + get requirements() { return (V.arcologies[0].FSStatuesqueGlorification >= 90); }, } ], }, @@ -1410,7 +1410,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start a fashion for elegant girls with just the right amount of T&A, none!", activatedText: "you are doing your best to maintain a fashion for elegant girls with just the right amount of T&A, none!", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSGenderRadicalistLawBeauty === 0 && V.arcologies[0].FSGenderFundamentalistLawBeauty === 0 && @@ -1449,7 +1449,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "animal products that compete with slave fluids will be banned.", activatedText: "animal products that compete with slave fluids are banned.", - requirements: function() { return (V.arcologies[0].FSPastoralist >= 90); }, + get requirements() { return (V.arcologies[0].FSPastoralist >= 90); }, note: `Will reduce market freedom, damaging the arcology's prosperity` } ], @@ -1486,7 +1486,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start a fashion for fit, healthy girls with just the right amount of muscle definition.", activatedText: "you are doing your best to maintain a fashion for fit, healthy girls with just the right amount of muscle definition.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSHedonisticDecadenceLaw2 === 0 && V.arcologies[0].FSSlimnessEnthusiastLaw === 0 && @@ -1505,7 +1505,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start a fashion for strong girls with a thick layer of fat over their muscles.", activatedText: "you are doing your best to maintain a fashion for strong girls with a thick layer of fat over their muscles.", - requirements: function() { return (V.arcologies[0].FSPhysicalIdealist >= 60); }, + get requirements() { return (V.arcologies[0].FSPhysicalIdealist >= 60); }, note: `Will greatly affect society's views on slave beauty` } ], @@ -1526,7 +1526,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start a fashion for thick girls with soft bellies, big butts and luscious tits.", activatedText: "you are doing your best to maintain a fashion for thick girls with soft bellies, big butts and luscious tits.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSSlimnessEnthusiastLaw === 0 && V.arcologies[0].FSGenderRadicalistLawBeauty === 0 && @@ -1545,7 +1545,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will do your best to start a fashion for thick girls with plenty of muscle under their fat.", activatedText: "you are doing your best to maintain a fashion for thick, strong girls.", - requirements: function() { return (V.arcologies[0].FSHedonisticDecadence >= 60); }, + get requirements() { return (V.arcologies[0].FSHedonisticDecadence >= 60); }, note: `Will greatly affect society's views on slave beauty` } ], @@ -1555,7 +1555,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "food vendors will be offered reduced rent and operating expenses.", activatedText: "food vendors are offered reduced rent and operating expenses.", - requirements: function() { return (V.arcologies[0].FSHedonisticDecadence >= 90); }, + get requirements() { return (V.arcologies[0].FSHedonisticDecadence >= 90); }, note: `Will improve prosperity but decrease rental income — tailors may see increased business` } ], @@ -1576,7 +1576,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "you will be enshrined as the prophet of a vibrant slaveowning religion.", activatedText: "you are enshrined as the prophet of a vibrant slaveowning religion.", - requirements: function() { return (V.arcologies[0].FSChattelReligionist >= 90); }, + get requirements() { return (V.arcologies[0].FSChattelReligionist >= 90); }, note: `Will increase your renown` } ], @@ -1672,7 +1672,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "all citizens of stature will be required to participate personally in the defense of the state.", activatedText: "all citizens of stature are required to participate personally in the defense of the state.", - requirements: function() { return (V.arcologies[0].FSRomanRevivalist >= 90); }, + get requirements() { return (V.arcologies[0].FSRomanRevivalist >= 90); }, note: `Will improve your arcology's combat power during crises` } ], @@ -1693,7 +1693,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "to inherit or receive a trade a citizen will have to pass a mandatory course in one of the academies.", activatedText: "to inherit or receive a trade a citizen must pass a mandatory course in one of the academies.", - requirements: function() { return (V.arcologies[0].FSAztecRevivalist >= 90); }, + get requirements() { return (V.arcologies[0].FSAztecRevivalist >= 90); }, note: `Will improve your arcology's combat power during crises` } ], @@ -1721,7 +1721,7 @@ App.Data.Policies.Selection = { return `though you do not currently have a Head Girl, they would hold legal status as your Consort, increasing their prominence.`; } }, - requirements: function() { return (V.arcologies[0].FSEgyptianRevivalist >= 90); }, + get requirements() { return (V.arcologies[0].FSEgyptianRevivalist >= 90); }, note: `Will increase your Head Girl's prominence` } ], @@ -1742,7 +1742,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "will protect the arcology from old world influences.", activatedText: "protects the arcology from old world influences, speeding the acceptance of all future societies.", - requirements: function() { return (V.arcologies[0].FSEdoRevivalist >= 90); }, + get requirements() { return (V.arcologies[0].FSEdoRevivalist >= 90); }, note: `Will speed the acceptance of all future societies` } ], @@ -1763,7 +1763,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "will raise the rents of unassimilated citizens, speeding the acceptance of all future societies.", activatedText: "raises the rents of unassimilated citizens, speeding the acceptance of all future societies.", - requirements: function() { return (V.arcologies[0].FSArabianRevivalist >= 90); }, + get requirements() { return (V.arcologies[0].FSArabianRevivalist >= 90); }, note: `Will moderately increase rental income and improve acceptance of all future societies` } ], @@ -1798,7 +1798,7 @@ App.Data.Policies.Selection = { return `affords a Head Girl considerable legal power, allowing them to accomplish even more slave training.`; } }, - requirements: function() { return (V.arcologies[0].FSChineseRevivalist >= 90); }, + get requirements() { return (V.arcologies[0].FSChineseRevivalist >= 90); }, } ], }, @@ -1809,7 +1809,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "in order to be sold in the arcology, slaves will be made capable of pregnancy, if they are not, and subsequently impregnated.", activatedText: "in order to be sold in the arcology, slaves must be pregnant.", - requirements: function() { return (V.arcologies[0].FSRepopulationFocusDecoration >= 40); }, + get requirements() { return (V.arcologies[0].FSRepopulationFocusDecoration >= 40); }, note: `Will help advance repopulation efforts. Due to surgery costs, male slaves will become less common` } ], @@ -1819,7 +1819,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "pregnant citizens will be offered reduced rent.", activatedText: "all pregnant citizens are offered reduced rent.", - requirements: function() { return (V.arcologies[0].FSRepopulationFocusDecoration >= 90); }, + get requirements() { return (V.arcologies[0].FSRepopulationFocusDecoration >= 90); }, note: `Will reduce your rental income` } ], @@ -1831,7 +1831,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "in order to be sold in the arcology, slaves of inferior races with dicks must have their balls removed to prevent racial pollution.", activatedText: "in order to be sold in the arcology, slaves of inferior races with dicks will have to have their balls removed to prevent racial pollution.", - requirements: function() { return (V.seeDicks !== 0 && V.arcologies[0].FSSupremacist >= 40); }, + get requirements() { return (V.seeDicks !== 0 && V.arcologies[0].FSSupremacist >= 40); }, note: `Will help advance racial Supremacy` } ], @@ -1841,7 +1841,7 @@ App.Data.Policies.Selection = { titleClass: "lime", get text() { return `will force anyone not of the ${V.arcologies[0].FSSupremacistRace} race to emigrate or accept enslavement, and make sex with non-${V.arcologies[0].FSSupremacistRace} people such an expectation that the appetite for all such slaves will increase slightly.`; }, get activatedText() { return `by law, anyone not of the ${V.arcologies[0].FSSupremacistRace} in your arcology is a slave`; }, - requirements: function() { return (V.seeDicks !== 0 && V.arcologies[0].FSSupremacist >= 40); }, + get requirements() { return (V.seeDicks !== 0 && V.arcologies[0].FSSupremacist >= 40); }, onImplementation: function() { V.FSSupLawTrigger = 1; }, note: `Will affect the slave market and arcology drastically` } @@ -1852,7 +1852,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "in order to be sold in the arcology, subhumans with dicks will have to have their balls removed to prevent racial pollution.", activatedText: "in order to be sold in the arcology, subhumans with dicks must have their balls removed to prevent racial pollution.", - requirements: function() { return (V.seeDicks !== 0 && V.arcologies[0].FSSubjugationist >= 40); }, + get requirements() { return (V.seeDicks !== 0 && V.arcologies[0].FSSubjugationist >= 40); }, note: `Will help advance racial Subjugation` } ], @@ -1862,7 +1862,7 @@ App.Data.Policies.Selection = { titleClass: "lime", get text() { return `will force slavery on all ${V.arcologies[0].FSSubjugationistRace} subhumans in your arcology, and make sex with ${V.arcologies[0].FSSubjugationistRace} people such an expectation that the appetite for all such slaves will increase slightly.`; }, get activatedText() { return `by law, all ${V.arcologies[0].FSSubjugationistRace} subhumans in your arcology are slaves`; }, - requirements: function() { return (V.arcologies[0].FSSubjugationist >= 90); }, + get requirements() { return (V.arcologies[0].FSSubjugationist >= 90); }, onImplementation: function() { if (V.FSSubLawTrigger === 0) { V.FSSubLawTrigger = 1; @@ -1878,7 +1878,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "in order to be sold in the arcology, slave ovaries and testicles will be removed.", activatedText: "in order to be sold in the arcology, slaves must be infertile.", - requirements: function() { return (V.arcologies[0].FSRestartDecoration >= 90); }, + get requirements() { return (V.arcologies[0].FSRestartDecoration >= 90); }, note: `Will help advance starting society over` } ], @@ -1888,7 +1888,7 @@ App.Data.Policies.Selection = { titleClass: "lime", text: "fertile civilians, who are not part of society's Elite, will face increased taxation.", activatedText: "all fertile lower class citizens pay increased taxes.", - requirements: function() { return (V.arcologies[0].FSRestartDecoration >= 90); }, + get requirements() { return (V.arcologies[0].FSRestartDecoration >= 90); }, note: `Will increase your rental income, but the lower class will dislike you` } ], @@ -1897,7 +1897,7 @@ App.Data.Policies.Selection = { title: "Elite Breeder Eligibility", titleClass: "lime", text: "slaves that pass very strict tests may be permitted for use by the Societal Elite to bear their children.", - requirements: function() { return (V.arcologies[0].FSRestartDecoration >= 100 && V.rep >= 5000); }, + get requirements() { return (V.arcologies[0].FSRestartDecoration >= 100 && V.rep >= 5000); }, onImplementation: function() { repX(-4000, "policies"); SugarCube.Engine.play("Breeder Proposal"); @@ -1911,7 +1911,7 @@ App.Data.Policies.Selection = { title: "Pregnancy Encouragement", text: "you will use your personal influence to spur interest in pregnancy.", activatedText: "you are using your personal influence to spur interest in pregnancy.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSRepopulationFocus === "unset" && V.arcologies[0].FSRestart === "unset" && @@ -1925,7 +1925,7 @@ App.Data.Policies.Selection = { title: "Motherly Preference", text: "you will use your personal influence to spur interest in MILFs.", activatedText: "you are using your personal influence to spur interest in MILFs.", - requirements: function() { + get requirements() { return ( V.arcologies[0].FSRepopulationFocus === "unset" && V.arcologies[0].FSRestart === "unset" diff --git a/src/facilities/wardrobe/wardrobeShopping.js b/src/facilities/wardrobe/wardrobeShopping.js index fcedafe8efa032b3c42f5c9b85a46ba92d537621..e1aeb31be6eaa9e753ac5db7427a51b10a41b638 100644 --- a/src/facilities/wardrobe/wardrobeShopping.js +++ b/src/facilities/wardrobe/wardrobeShopping.js @@ -173,7 +173,7 @@ App.UI.WardrobeShopping = function() { throw `${name} set incorrectly or not found`; } - if (obj.hasOwnProperty("rs") && obj.rs !== true) { + if (obj.hasOwnProperty("requirements") && obj.requirements !== true) { return line; } diff --git a/src/facilities/wardrobe/wardrobeShoppingData.js b/src/facilities/wardrobe/wardrobeShoppingData.js index 0a3f34eb551c4109b2e2ede1d99fe9550ed826d1..c6b6b0e775519e8d3fde2029c549a0bcf0eb047a 100644 --- a/src/facilities/wardrobe/wardrobeShoppingData.js +++ b/src/facilities/wardrobe/wardrobeShoppingData.js @@ -9,7 +9,7 @@ App.Data.WardrobeShopping.Clothing = { * @property {string[]} contains * @property {string} owned * @property {object} [modelUpdate] - * @property {boolean} [rs] requirements met + * @property {boolean} [requirements] requirements met */ /** @@ -235,7 +235,7 @@ App.Data.WardrobeShopping.Accessories = { title: `the "smart" variant of the bullet vibrators`, cost: 5000, contains: ["long dildo"], - get rs() { return V.boughtItem.toys.dildos !== 0; }, + get requirements() { return V.boughtItem.toys.dildos !== 0; }, owned: `Some of the bullet vibes are of the "smart" variety.`, }, "toys.vaginalAttachments": { @@ -279,7 +279,7 @@ App.Data.WardrobeShopping.Accessories = { title: `medical enema supplies`, cost: 5000, contains: [], - get rs() { return (V.boughtItem.toys.enema !== 0); }, + get requirements() { return (V.boughtItem.toys.enema !== 0); }, owned: "You are also well stocked with drugs to be mixed with the enema water for use in medical enemas.", }, }; diff --git a/src/interaction/policies/policies.js b/src/interaction/policies/policies.js index 6ef1341ffbdfb6440bdeb349ddf877b7c7b438c4..841b82e1132a819de03167e792e9490ae86df256 100644 --- a/src/interaction/policies/policies.js +++ b/src/interaction/policies/policies.js @@ -47,7 +47,7 @@ globalThis.policy = function(category) { for (let i = 0; i < policyObject.length; i++) { const p = policyObject[i]; const enable = p.enable || 1; - if (p.hasOwnProperty("requirements") && p.requirements() === false) { + if (p.hasOwnProperty("requirements") && p.requirements === false) { continue; } div = document.createElement("div"); @@ -69,8 +69,7 @@ globalThis.policy = function(category) { // link if (!(p.hasOwnProperty("hide") && p.hide.button === 1)) { if (p.hasOwnProperty("requirements")) { - const req = p.requirements(); - if (req === true) { + if (p.requirements === true) { div.append(implement(p, enable)); } else { link = App.UI.DOM.disabledLink("Implement", [`You do not meet the requirements, or passed a conflicting policy already`]); diff --git a/src/js/itemAvailability.js b/src/js/itemAvailability.js index 8a05c65810293bc13806680888ae134218090353..f167beaa2eb9baae43e2b359478cacf184c70095 100644 --- a/src/js/itemAvailability.js +++ b/src/js/itemAvailability.js @@ -99,12 +99,12 @@ globalThis.isItemAccessible = (function() { return slaveResults; } } - if (!(item.hasOwnProperty("fs")) && !(item.hasOwnProperty("rs"))) { + if (!(item.hasOwnProperty("fs")) && !(item.hasOwnProperty("requirements"))) { // No restriction, this clothing item is available to everyone return true; } - if (item.hasOwnProperty("rs")) { - if (item.rs === true) { + if (item.hasOwnProperty("requirements")) { + if (item.requirements === true) { return true; } }