diff --git a/devNotes/AnatomyOfAFreeCitiesEvent.txt b/devNotes/AnatomyOfAFreeCitiesEvent.txt index 00cf61d6653080dfb20da2246fd93c52fd5e1172..270069daa283cb3dded5160cd786e305bf3d5b3f 100644 --- a/devNotes/AnatomyOfAFreeCitiesEvent.txt +++ b/devNotes/AnatomyOfAFreeCitiesEvent.txt @@ -119,7 +119,7 @@ A choice doesn't need to have a specific effect. If your event has an immediate <<if $cash >= 2000>> <br><<link "Take the poor slave $girl into your custody">> <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/devNotes/legacy files/weighted racial nationality arrays.txt b/devNotes/legacy files/weighted racial nationality arrays.txt index eb8e377996af48ac6632d2fb18479a76b28922a8..85c6988c17a7bf7eb7eceef7e11dfe1e2962ad2a 100644 --- a/devNotes/legacy files/weighted racial nationality arrays.txt +++ b/devNotes/legacy files/weighted racial nationality arrays.txt @@ -5,19 +5,19 @@ <<set setup.latinaNationalities = {"American": 1, "Antiguan": 1, "Argentinian": 1, "Aruban": 1, "Bahamian": 1, "Belizean": 1, "Bolivian": 1, "Brazilian": 1, "Canadian": 1, "Catalan": 1, "Chilean": 1, "Colombian": 1, "Costa Rican": 1, "Cuban": 1, "Dominican": 1, "Ecuadorian": 1, "Guatemalan": 1, "Honduran": 1, "Japanese": 1, "Mexican": 1, "Nicaraguan": 1, "Panamanian": 1, "Paraguayan": 1, "Peruvian": 1, "Portuguese": 1, "Puerto Rican": 1, "Salvadoran": 1, "Spanish": 1, "Uruguayan": 1, "Vatican": 1, "Venezuelan": 1}>> -<<set setup.middleeasternNationalities = {"Afghan": 1, "Algerian": 1, "American": 1, "Andorran": 1, "Bahraini": 1, "Belgian": 1, "British": 1, "Bulgarian": 1, "Burkinabé": 1, "Cameroonian": 1, "Canadian": 1, "Catalan": 1, "Central African": 1, "Chadian": 1, "Comorian": 1, "Cypriot": 1, "Danish": 1, "Djiboutian": 1, "Dutch": 1, "Egyptian": 1, "Emirati": 1, "Eritrean": 1, "Ethiopian": 1, "Finnish": 1, "French": 1, "Gambian": 1, "German": 1, "Ghanan": 1, "Guinean": 1, "Indonesian": 1, "Iranian": 1, "Iraqi": 1, "Israeli": 1, "Italian": 1, "Ivorian": 1, "Jordanian": 1, "Kenyan": 1, "Kosovan": 1, "Kurdish": 1, "Kuwaiti": 1, "Lebanese": 1, "a Liechtensteiner": 1, "Liberian": 1, "Libyan": 1, "Maldivian": 1, "Malian": 1, "Maltese": 1, "Mauritanian": 1, "Monégasque": 1, "Moroccan": 1, "Nigerian": 1, "Nigerien": 1, "Omani": 1, "Palestinian": 1, "Qatari": 1, "Sahrawi": 1, "Saudi": 1, "Scottish": 1, "Senegalese": 1, "Sierra Leonean": 1, "Somali": 1, "South Sudanese": 1, "Spanish": 1, "Sri Lankan": 1, "Sudanese": 1, "Swedish": 1, "Syrian": 1, "Tanzanian": 1, "Togolese": 1, "Tunisian": 1, "Turkish": 1, "Yemeni": 1}>> +<<set setup.middleEasternNationalities = {"Afghan": 1, "Algerian": 1, "American": 1, "Andorran": 1, "Bahraini": 1, "Belgian": 1, "British": 1, "Bulgarian": 1, "Burkinabé": 1, "Cameroonian": 1, "Canadian": 1, "Catalan": 1, "Central African": 1, "Chadian": 1, "Comorian": 1, "Cypriot": 1, "Danish": 1, "Djiboutian": 1, "Dutch": 1, "Egyptian": 1, "Emirati": 1, "Eritrean": 1, "Ethiopian": 1, "Finnish": 1, "French": 1, "Gambian": 1, "German": 1, "Ghanan": 1, "Guinean": 1, "Indonesian": 1, "Iranian": 1, "Iraqi": 1, "Israeli": 1, "Italian": 1, "Ivorian": 1, "Jordanian": 1, "Kenyan": 1, "Kosovan": 1, "Kurdish": 1, "Kuwaiti": 1, "Lebanese": 1, "a Liechtensteiner": 1, "Liberian": 1, "Libyan": 1, "Maldivian": 1, "Malian": 1, "Maltese": 1, "Mauritanian": 1, "Monégasque": 1, "Moroccan": 1, "Nigerian": 1, "Nigerien": 1, "Omani": 1, "Palestinian": 1, "Qatari": 1, "Sahrawi": 1, "Saudi": 1, "Scottish": 1, "Senegalese": 1, "Sierra Leonean": 1, "Somali": 1, "South Sudanese": 1, "Spanish": 1, "Sri Lankan": 1, "Sudanese": 1, "Swedish": 1, "Syrian": 1, "Tanzanian": 1, "Togolese": 1, "Tunisian": 1, "Turkish": 1, "Yemeni": 1}>> <<set setup.blackNationalities = {"American": 1, "Angolan": 1, "Antiguan": 1, "Aruban": 1, "Australian": 1, "Bahamian": 1, "Barbadian": 1, "Belizean": 1, "Beninese": 1, "Bermudian": 1, "Bissau-Guinean": 1, "Brazilian": 1, "British": 1, "Burkinabé": 1, "Burundian": 1, "Cameroonian": 1, "Canadian": 1, "Cape Verdean": 1, "Central African": 1, "Chadian": 1, "Colombian": 1, "Comorian": 1, "Congolese": 1, "Costa Rican": 1, "Cuban": 1, "Djiboutian": 1, "Dominican": 1, "Dominiquais": 1, "Ecuadorian": 1, "Egyptian": 1, "Emirati": 1, "Equatoguinean": 1, "Eritrean": 1, "Ethiopian": 1, "French": 1, "French Guianan": 1, "Gabonese": 1, "Gambian": 1, "German": 1, "Ghanan": 1, "Grenadian": 1, "Guinean": 1, "Guyanese": 1, "Haitian": 1, "Honduran": 1, "Iraqi": 1, "Israeli": 1, "Ivorian": 1, "Jamaican": 1, "Kenyan": 1, "Kittitian": 1, "Kuwaiti": 1, "Liberian": 1, "Libyan": 1, "Malagasy": 1, "Malawian": 1, "Malian": 1, "Mauritanian": 1, "Mauritian": 1, "Mexican": 1, "Moroccan": 1, "Mosotho": 1, "Motswana": 1, "Mozambican": 1, "Namibian": 1, "Nicaraguan": 1, "Nigerian": 1, "Nigerien": 1, "Norwegian": 1, "Omani": 1, "Panamanian": 1, "Paraguayan": 1, "Portuguese": 1, "Puerto Rican": 1, "Rwandan": 1, "Sahrawi": 1, "Saint Lucian": 1, "São Toméan": 1, "Saudi": 1, "Scottish": 1, "Senegalese": 1, "Seychellois": 1, "Sierra Leonean": 1, "Somali": 1, "South African": 1, "South Sudanese": 1, "Sudanese": 1, "Surinamese": 1, "Swazi": 1, "Tanzanian": 1, "Togolese": 1, "Trinidadian": 1, "Ugandan": 1, "Uruguayan": 1, "Venezuelan": 1, "Vincentian": 1, "Yemeni": 1, "Zairian": 1, "Zambian": 1, "Zimbabwean": 1}>> -<<set setup.indoaryanNationalities = {"Afghan": 1, "Albanian": 1, "American": 1, "Antiguan": 1, "Armenian": 1, "Australian": 1, "Austrian": 1, "Azerbaijani": 1, "Bahraini": 1, "Bangladeshi": 1, "Barbadian": 1, "Belarusian": 1, "Belizean": 1, "Beninese": 1, "Bhutanese": 1, "Bosnian": 1, "British": 1, "Bruneian": 1, "Bulgarian": 1, "Burmese": 1, "Canadian": 1, "Chinese": 1, "Croatian": 1, "Cypriot": 1, "Czech": 1, "Danish": 1, "Dutch": 1, "Egyptian": 1, "Emirati": 1, "Fijian": 1, "Finnish": 1, "French": 1, "Georgian": 1, "German": 1, "Ghanan": 1, "Greek": 1, "Grenadian": 1, "Guyanese": 1, "Hungarian": 1, "Indian": 1, "Indonesian": 1, "Iranian": 1, "Iraqi": 1, "Irish": 1, "Israeli": 1, "Italian": 1, "Jamaican": 1, "Jordanian": 1, "Kazakh": 1, "Kenyan": 1, "Kittitian": 1, "Korean": 1, "Kosovan": 1, "Kurdish": 1, "Kuwaiti": 1, "Kyrgyz": 1, "Latvian": 1, "Lebanese": 1, "a Liechtensteiner": 1, "Lithuanian": 1, "Macedonian": 1, "Malagasy": 1, "Malawian": 1, "Malaysian": 1, "Maldivian": 1, "Mauritian": 1, "Moldovan": 1, "Mongolian": 1, "Montenegrin": 1, "Mozambican": 1, "Nepalese": 1, "Norwegian": 1, "Omani": 1, "Pakistani": 1, "Palestinian": 1, "Portuguese": 1, "Qatari": 1, "Romanian": 1, "Russian": 1, "Saint Lucian": 1, "Saudi": 1, "Scottish": 1, "Serbian": 1, "Seychellois": 1, "Singaporean": 1, "Slovak": 1, "Slovene": 1, "Somali": 1, "South African": 1, "Spanish": 1, "Sri Lankan": 1, "Surinamese": 1, "Swazi": 1, "Swedish": 1, "Swiss": 1, "Syrian": 1, "Tajik": 1, "Thai": 1, "Tibetan": 1, "Trinidadian": 1, "Turkish": 1, "Turkmen": 1, "Ugandan": 1, "Ukrainian": 1, "Uzbek": 1, "Vincentian": 1, "Yemeni": 1, "Zambian": 1}>> +<<set setup.indoAryanNationalities = {"Afghan": 1, "Albanian": 1, "American": 1, "Antiguan": 1, "Armenian": 1, "Australian": 1, "Austrian": 1, "Azerbaijani": 1, "Bahraini": 1, "Bangladeshi": 1, "Barbadian": 1, "Belarusian": 1, "Belizean": 1, "Beninese": 1, "Bhutanese": 1, "Bosnian": 1, "British": 1, "Bruneian": 1, "Bulgarian": 1, "Burmese": 1, "Canadian": 1, "Chinese": 1, "Croatian": 1, "Cypriot": 1, "Czech": 1, "Danish": 1, "Dutch": 1, "Egyptian": 1, "Emirati": 1, "Fijian": 1, "Finnish": 1, "French": 1, "Georgian": 1, "German": 1, "Ghanan": 1, "Greek": 1, "Grenadian": 1, "Guyanese": 1, "Hungarian": 1, "Indian": 1, "Indonesian": 1, "Iranian": 1, "Iraqi": 1, "Irish": 1, "Israeli": 1, "Italian": 1, "Jamaican": 1, "Jordanian": 1, "Kazakh": 1, "Kenyan": 1, "Kittitian": 1, "Korean": 1, "Kosovan": 1, "Kurdish": 1, "Kuwaiti": 1, "Kyrgyz": 1, "Latvian": 1, "Lebanese": 1, "a Liechtensteiner": 1, "Lithuanian": 1, "Macedonian": 1, "Malagasy": 1, "Malawian": 1, "Malaysian": 1, "Maldivian": 1, "Mauritian": 1, "Moldovan": 1, "Mongolian": 1, "Montenegrin": 1, "Mozambican": 1, "Nepalese": 1, "Norwegian": 1, "Omani": 1, "Pakistani": 1, "Palestinian": 1, "Portuguese": 1, "Qatari": 1, "Romanian": 1, "Russian": 1, "Saint Lucian": 1, "Saudi": 1, "Scottish": 1, "Serbian": 1, "Seychellois": 1, "Singaporean": 1, "Slovak": 1, "Slovene": 1, "Somali": 1, "South African": 1, "Spanish": 1, "Sri Lankan": 1, "Surinamese": 1, "Swazi": 1, "Swedish": 1, "Swiss": 1, "Syrian": 1, "Tajik": 1, "Thai": 1, "Tibetan": 1, "Trinidadian": 1, "Turkish": 1, "Turkmen": 1, "Ugandan": 1, "Ukrainian": 1, "Uzbek": 1, "Vincentian": 1, "Yemeni": 1, "Zambian": 1}>> -<<set setup.pacificislanderNationalities = {"American": 1, "Australian": 1, "a Cook Islander": 1, "East Timorese": 1, "Fijian": 1, "Filipina": 1, "French Polynesian": 1, "Guamanian": 1, "I-Kiribati": 1, "Indonesian": 1, "Japanese": 1, "Marshallese": 1, "Micronesian": 1, "Nauruan": 1, "New Caledonian": 1, "a New Zealander": 1, "Ni-Vanuatu": 1, "Niuean": 1, "Palauan": 1, "Papua New Guinean": 1, "Samoan": 1, "a Solomon Islander": 1, "Tongan": 1, "Tuvaluan": 1}>> +<<set setup.pacificIslanderNationalities = {"American": 1, "Australian": 1, "a Cook Islander": 1, "East Timorese": 1, "Fijian": 1, "Filipina": 1, "French Polynesian": 1, "Guamanian": 1, "I-Kiribati": 1, "Indonesian": 1, "Japanese": 1, "Marshallese": 1, "Micronesian": 1, "Nauruan": 1, "New Caledonian": 1, "a New Zealander": 1, "Ni-Vanuatu": 1, "Niuean": 1, "Palauan": 1, "Papua New Guinean": 1, "Samoan": 1, "a Solomon Islander": 1, "Tongan": 1, "Tuvaluan": 1}>> <<set setup.malayNationalities = {"American": 1, "Bruneian": 1, "Burmese": 1, "Cambodian": 1, "East Timorese": 1, "Filipina": 1, "Guamanian": 1, "Indonesian": 1, "Laotian": 1, "Malaysian": 1, "New Caledonian": 1, "Omani": 1, "Papua New Guinean": 1, "Singaporean": 1, "South African": 1, "Sri Lankan": 1, "Surinamese": 1, "Taiwanese": 1, "Thai": 1, "Vietnamese": 1}>> <<set setup.amerindianNationalities = {"American": 1, "Argentinian": 1, "Aruban": 1, "Belizean": 1, "Bolivian": 1, "Brazilian": 1, "Canadian": 1, "Chilean": 1, "Colombian": 1, "Costa Rican": 1, "Danish": 1, "Dominiquais": 1, "Ecuadorian": 1, "French Guianan": 1, "Greenlandic": 1, "Guatemalan": 1, "Guyanese": 1, "Honduran": 1, "Mexican": 1, "Nicaraguan": 1, "Panamanian": 1, "Peruvian": 1, "Puerto Rican": 1, "Russian": 1, "Surinamese": 1, "Uruguayan": 1}>> -<<set setup.southerneuropeanNationalities = {"Albanian": 1, "Algerian": 1, "American": 1, "Andorran": 1, "Argentinian": 1, "Armenian": 1, "Australian": 1, "Belgian": 1, "Bissau-Guinean": 1, "British": 1, "Canadian": 1, "Cape Verdean": 1, "Catalan": 1, "Chilean": 1, "Colombian": 1, "Croatian": 1, "Cuban": 1, "Cypriot": 1, "Czech": 1, "Djiboutian": 1, "Ecuadorian": 1, "Equatoguinean": 1, "Eritrean": 1, "Filipina": 1, "French Guianan": 1, "French": 1, "Georgian": 1, "German": 1, "Greek": 1, "Italian": 1, "a Liechtensteiner": 1, "Luxembourgian": 1, "Maltese": 1, "Monégasque": 1, "Moroccan": 1, "Mozambican": 1, "Peruvian": 1, "Polish": 1, "Portuguese": 1, "Russian": 1, "Sammarinese": 1, "São Toméan": 1, "Scottish": 1, "Seychellois": 1, "Slovene": 1, "South African": 1, "Spanish": 1, "Sri Lankan": 1, "Swiss": 1, "Tunisian": 1, "Turkish": 1, "Uruguayan": 1, "Vatican": 1}>> +<<set setup.southernEuropeanNationalities = {"Albanian": 1, "Algerian": 1, "American": 1, "Andorran": 1, "Argentinian": 1, "Armenian": 1, "Australian": 1, "Belgian": 1, "Bissau-Guinean": 1, "British": 1, "Canadian": 1, "Cape Verdean": 1, "Catalan": 1, "Chilean": 1, "Colombian": 1, "Croatian": 1, "Cuban": 1, "Cypriot": 1, "Czech": 1, "Djiboutian": 1, "Ecuadorian": 1, "Equatoguinean": 1, "Eritrean": 1, "Filipina": 1, "French Guianan": 1, "French": 1, "Georgian": 1, "German": 1, "Greek": 1, "Italian": 1, "a Liechtensteiner": 1, "Luxembourgian": 1, "Maltese": 1, "Monégasque": 1, "Moroccan": 1, "Mozambican": 1, "Peruvian": 1, "Polish": 1, "Portuguese": 1, "Russian": 1, "Sammarinese": 1, "São Toméan": 1, "Scottish": 1, "Seychellois": 1, "Slovene": 1, "South African": 1, "Spanish": 1, "Sri Lankan": 1, "Swiss": 1, "Tunisian": 1, "Turkish": 1, "Uruguayan": 1, "Vatican": 1}>> <<set setup.semiticNationalities = {"American": 1, "Armenian": 1, "Azerbaijani": 1, "Belarusian": 1, "British": 1, "Czech": 1, "Egyptian": 1, "Eritrean": 1, "Estonian": 1, "Ethiopian": 1, "French": 1, "Georgian": 1, "German": 1, "Ghanan": 1, "Iranian": 1, "Iraqi": 1, "Israeli": 1, "Jordanian": 1, "Kazakh": 1, "Kurdish": 1, "Latvian": 1, "Lebanese": 1, "Lithuanian": 1, "Maltese": 1, "Moldovan": 1, "Pakistani": 1, "Palestinian": 1, "Romanian": 1, "Russian": 1, "South African": 1, "Spanish": 1, "Syrian": 1, "Tanzanian": 1, "Turkish": 1, "Turkmen": 1, "Ukrainian": 1, "Uzbek": 1, "Yemeni": 1}>> */ \ No newline at end of file diff --git a/devTools/Script to convert SC to JS/SC to JS 1.py b/devTools/Script to convert SC to JS/SC to JS 1.py index ca5859bbcec1c5658d5defb2d8315c0f6a561316..45b41bca4270124a08a76b34555e045e46cbc7cc 100644 --- a/devTools/Script to convert SC to JS/SC to JS 1.py +++ b/devTools/Script to convert SC to JS/SC to JS 1.py @@ -26,7 +26,7 @@ editor.rereplace(r"<<elseif (.*?)>>", r"} else if \(\1\) {") editor.rereplace(r"<<else>>", r"} else {") editor.rereplace(r"<</if>>", r"}") #fix paren -editor.rereplace(r"([ \n])if ([^\(].*) {", r"\1 if \(\2\) {") +editor.rereplace(r"([ \n])if ([^\(].*) {", r"\1if \(\2\) {") editor.rereplace(r"([ \n])else if ([^\(].*) {", r"\1 else if \(\2\) {") # run can happen directly diff --git a/devTools/javaSanityCheck/ignoredVariables b/devTools/javaSanityCheck/ignoredVariables index 1bb832c5d30c4d9c66df82ab1a5e692c1940be31..01634b42d7979ee69f01c42b60bcdcc959e245b0 100644 --- a/devTools/javaSanityCheck/ignoredVariables +++ b/devTools/javaSanityCheck/ignoredVariables @@ -58,7 +58,7 @@ DefaultRulesError canGrow;canImplant;implantError;growOrgan;removeOrgan totalChildTime toStringExt -northamericaNationalities;europeNationalities;middleeastNationalities;africaNationalities;australiaNationalities +northAmericaNationalities;europeNationalities;middleEastNationalities;africaNationalities;australiaNationalities surnamePoolSelector assignmentVisible attendingClasses;confinement;gloryHole;milking;publicService;sexualServitude;servitude diff --git a/js/003-data/gameVariableData.js b/js/003-data/gameVariableData.js index 2c8d35a6332f00dda4d142a304578f744c60dfd1..29919395a4f6b7cea141811d37e94e7c7401f456 100644 --- a/js/003-data/gameVariableData.js +++ b/js/003-data/gameVariableData.js @@ -409,13 +409,6 @@ App.Data.resetOnNGPlus = { docks: 1, hubSecurity: 1, - /* events */ - smilingManProgress: 0, - investedFunds: 0, - relationshipLM: 0, - globalCrisisWeeks: 0, - smilingManFate: 4, - /* rebellions */ tension: 0, slaveProgress: 0, @@ -491,13 +484,6 @@ App.Data.resetOnNGPlus = { SavedLeader: 0, SavedSFI: 0, sectionInFirebase: 0, - - militiaFounded: 0, - recruitVolunteers: 0, - conscription: 0, - militaryService: 0, - militarizedSociety: 0, - /* base vars */ SecExp: {}, PCvictories: 0, @@ -740,8 +726,6 @@ App.Data.resetOnNGPlus = { nurseryNannies: 0, /** Counts the number of children currently in the nursery */ nurseryChildren: 0, - /** Check for whether the children are influenced by the Matron */ - MatronInfluence: 0, /** Check for whether the children are influenced by the nannies */ nannyInfluence: 0, nurseryDecoration: "standard", diff --git a/js/003-data/miscData.js b/js/003-data/miscData.js index a47385c30c8f561452834f55b0fb457e87567158..c4215f06bffa3cbe6292032973cd97436e2a4a01 100644 --- a/js/003-data/miscData.js +++ b/js/003-data/miscData.js @@ -267,7 +267,7 @@ App.Data.misc = { /* START Custom Nationalities region filter */ /* Not currently weighted, but will accept weights */ - northamericaNationalities: { + northAmericaNationalities: { "American": 1, "Antiguan": 1, "Aruban": 1, @@ -298,7 +298,7 @@ App.Data.misc = { "Vincentian": 1 }, - southamericaNationalities: { + southAmericaNationalities: { "Argentinian": 1, "Bolivian": 1, "Brazilian": 1, @@ -396,7 +396,7 @@ App.Data.misc = { "Vietnamese": 1 }, - middleeastNationalities: { + middleEastNationalities: { "Afghan": 1, "Armenian": 1, "Azerbaijani": 1, @@ -1703,7 +1703,7 @@ App.Data.misc = { "Zimbabwean": 1 }, - indoaryanNationalities: { + indoAryanNationalities: { "Afghan": 1, "Azerbaijani": 1, "Bahraini": 1, @@ -1764,7 +1764,7 @@ App.Data.misc = { "Papua New Guinean": 1 }, - middleeasternNationalities: { + middleEasternNationalities: { "Algerian": 1, "Bahraini": 1, "Egyptian": 1, @@ -1785,7 +1785,7 @@ App.Data.misc = { "Yemeni": 1 }, - mixedraceNationalities: { + mixedRaceNationalities: { "Aruban": 1, "Cape Verdean": 1, "French Guianan": 1, @@ -1793,7 +1793,7 @@ App.Data.misc = { "Seychellois": 1 }, - pacificislanderNationalities: { + pacificIslanderNationalities: { "a Cook Islander": 1, "Fijian": 1, "French Polynesian": 1, @@ -1814,7 +1814,7 @@ App.Data.misc = { semiticNationalities: {"Armenian": 1, "Georgian": 1, "Israeli": 1}, - southerneuropeanNationalities: { + southernEuropeanNationalities: { "Andorran": 1, "Catalan": 1, "Cypriot": 1, @@ -2535,15 +2535,15 @@ App.Data.misc = { /* Nationalities based on $continent value. Note that $continent can be undefined! */ App.Data.misc.nationalityPoolSelector = { - "North America": App.Data.misc.northamericaNationalities, - "South America": App.Data.misc.southamericaNationalities, + "North America": App.Data.misc.northAmericaNationalities, + "South America": App.Data.misc.southAmericaNationalities, "Europe": App.Data.misc.europeNationalities, "Asia": App.Data.misc.asiaNationalities, - "the Middle East": App.Data.misc.middleeastNationalities, + "the Middle East": App.Data.misc.middleEastNationalities, "Africa": App.Data.misc.africaNationalities, "Australia": App.Data.misc.australiaNationalities, "Japan": App.Data.misc.asiaNationalities, - "Brazil": App.Data.misc.southamericaNationalities + "Brazil": App.Data.misc.southAmericaNationalities }; // these markets are exempt from law compliance diff --git a/js/003-data/policiesData.js b/js/003-data/policiesData.js index 73a72c83f66dfbbc1b048c9951e23f3b237275a2..eb9e647c25a79abf25f1cffb5a9352c280e10081 100644 --- a/js/003-data/policiesData.js +++ b/js/003-data/policiesData.js @@ -1155,7 +1155,7 @@ App.Data.Policies.Selection = { ], "arcologies[0].FSDegradationistLaw": [ { - title: "Universal Arcade Access Mandat", + title: "Universal Arcade Access Mandate", 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.", diff --git a/js/003-data/slaveMods.js b/js/003-data/slaveMods.js index fa46443c69a254b80d419702babfd509f527eb31..509d9a710294c24d5bf99d0da59e9e458696dca0 100644 --- a/js/003-data/slaveMods.js +++ b/js/003-data/slaveMods.js @@ -1,6 +1,6 @@ /** * @typedef {object} BrandStyle - * @property {string} displayName The way the brand is dispayed as a choice in the UI + * @property {string} displayName The way the brand is displayed as a choice in the UI * @property {function(void):boolean} [requirements] Function to determine if a brand symbol can be used. */ /** diff --git a/src/002-config/fc-version.js b/src/002-config/fc-version.js index ef7d1d27de844046fdaeb7d134a578e600e49ca3..1abc575f6fe9d6fef8f275c2d895f321b82f190a 100644 --- a/src/002-config/fc-version.js +++ b/src/002-config/fc-version.js @@ -2,5 +2,5 @@ App.Version = { base: "0.10.7.1", // The vanilla version the mod is based off of, this should never be changed. pmod: "3.6.2", commitHash: null, - release: 1085 + release: 1087 }; diff --git a/src/002-config/mousetrapConfig.js b/src/002-config/mousetrapConfig.js index 6d67333edcc39aac898a9a580d3738981d230c3d..17135f873a43dacc974e17ddd0cde7d49d3b61a7 100644 --- a/src/002-config/mousetrapConfig.js +++ b/src/002-config/mousetrapConfig.js @@ -274,24 +274,24 @@ App.UI.Hotkeys.add("nextLink", { $("#story-caption #nextButton a.macro-link").trigger("click"); }, combinations: ["space"], uiName: "Continue/Back" }); -App.UI.Hotkeys.add("prevSlave", { +App.UI.Hotkeys.add("prev-slave", { callback: function() { - $("#prevSlave a.macro-link").trigger("click"); + $("#prev-slave a.macro-link").trigger("click"); }, combinations: ["left", "q"], uiName: "Previous Slave" }); -App.UI.Hotkeys.add("nextSlave", { +App.UI.Hotkeys.add("next-slave", { callback: function() { - $("#nextSlave a.macro-link").trigger("click"); + $("#next-slave a.macro-link").trigger("click"); }, combinations: ["right", "e"], uiName: "Next Slave" }); -App.UI.Hotkeys.add("prevChild", { +App.UI.Hotkeys.add("prev-child", { callback: function() { - $("#prevChild a.macro-link").trigger("click"); + $("#prev-child a.macro-link").trigger("click"); }, combinations: ["left", "q"], uiName: "Previous Child" }); -App.UI.Hotkeys.add("nextChild", { +App.UI.Hotkeys.add("next-child", { callback: function() { - $("#nextChild a.macro-link").trigger("click"); + $("#next-child a.macro-link").trigger("click"); }, combinations: ["right", "e"], uiName: "Next Child" }); App.UI.Hotkeys.add("walkpast", { diff --git a/src/003-assets/CSS/tabs.css b/src/003-assets/CSS/tabs.css index 9f857f236db77b252b0db10cc200f936b2575f1a..2e52d21325ebb9c4ad8fd49562e1e56c010b9986 100644 --- a/src/003-assets/CSS/tabs.css +++ b/src/003-assets/CSS/tabs.css @@ -1,8 +1,8 @@ -div.tabbar { +div.tab-bar { overflow: hidden; } -div.tabbar button { +div.tab-bar button { background-color: var(--button-color); border: solid 2px var(--button-color); color: var(--link-color); @@ -14,58 +14,58 @@ div.tabbar button { font-size: large; } -div.tabbar button.card { +div.tab-bar button.card { border-top-left-radius: 15px; border-top-right-radius: 15px; border: none; } -div.tabbar button.card.active { +div.tab-bar button.card.active { background-color: #1a1a1a; } -div.tabbar button:hover { +div.tab-bar button:hover { background-color: var(--button-hover-color); } -div.tabbar button.active { +div.tab-bar button.active { background-color: var(--button-selected-color); color: #c7cedf; } -div.tabbar button.show-warning { /* dumb name, but warning and error already exist */ +div.tab-bar button.show-warning { /* dumb name, but warning and error already exist */ background-color: #b30000; border-color: #b30000; } -div.tabbar button.show-warning:hover { +div.tab-bar button.show-warning:hover { background-color: #e60000 } -div.tabbar button.show-warning.active { +div.tab-bar button.show-warning.active { background-color: #4d0000; } -div.tabbar a.active { +div.tab-bar a.active { color: white; pointer-events: none; cursor: default; } -.tabcontent:not(.noFade) { +.tab-content:not(.noFade) { display: none; padding: 6px 12px; -webkit-animation: fadeEffect 0.3s; animation: fadeEffect 0.3s; } -.tabcontent.card { +.tab-content.card { border-radius: 0 8px 8px 8px; background-color: #1a1a1a; border: 0; } -.tabcontent.card .slaveSummary.card { +.tab-content.card .slaveSummary.card { background-color: #252525; } diff --git a/src/Corporation/corporate.js b/src/Corporation/corporate.js index d2d6a93ba1ae688b4cc561d6ce9494c76a0ffaf8..0f0d0dbbc0c8029a32f73a271dc1ff1d4de6cdd0 100644 --- a/src/Corporation/corporate.js +++ b/src/Corporation/corporate.js @@ -141,7 +141,7 @@ App.Corporate.Init = function() { this.corp.deleteStored(key + this.suffix); } }; - const WeekProcessingEffeciencyLine = class { + const WeekProcessingEfficiencyLine = class { constructor() { this.value = 0; this.efficiency = 0; @@ -235,8 +235,8 @@ App.Corporate.Init = function() { this._const.division = division; this._const.ledger = weekLedger; - this._var.slaves = new WeekProcessingEffeciencyLine(); - this._var.revenue = new WeekProcessingEffeciencyLine(); + this._var.slaves = new WeekProcessingEfficiencyLine(); + this._var.revenue = new WeekProcessingEfficiencyLine(); this._var.transfer = new WeekProcessingTransfer(this); this._var.market = new WeekProcessingMarket(this); } diff --git a/src/Corporation/corporateWidgets.tw b/src/Corporation/corporateWidgets.tw index 164bc59b5ebca23906944dc2b879bc64df8589af..14e57d4a7545356cce98f6d8efc0e23e4b3eb1ea 100644 --- a/src/Corporation/corporateWidgets.tw +++ b/src/Corporation/corporateWidgets.tw @@ -57,12 +57,12 @@ Usage: <td>Liquidity</td> <td> <<if ($cheatMode) && ($cheatModeM)>> - <span id="corpCash"><<= cashFormatColor(App.Corporate.cash)>></span> - <<set _TcorpCash = App.Corporate.cash>> - <<textbox "_TcorpCash" _TcorpCash>> + <span id="corp-cash"><<= cashFormatColor(App.Corporate.cash)>></span> + <<set _tCorpCash = App.Corporate.cash>> + <<textbox "_tCorpCash" _tCorpCash>> <<link "Apply">> - <<set App.Corporate.cheatCash(_TcorpCash)>> - <<replace "#corpCash">><<= cashFormatColor(App.Corporate.cash)>><</replace>> + <<set App.Corporate.cheatCash(_tCorpCash)>> + <<replace "#corp-cash">><<= cashFormatColor(App.Corporate.cash)>><</replace>> <</link>> <<else>> <<= cashFormatColor(App.Corporate.cash)>> diff --git a/src/Corporation/manageCorporation.tw b/src/Corporation/manageCorporation.tw index 4ecab35defa77c11ad0156e5911caccb7b9a72c0..3ac259e971c36fcd0530ab2d7ca04967bb2da7d2 100644 --- a/src/Corporation/manageCorporation.tw +++ b/src/Corporation/manageCorporation.tw @@ -77,11 +77,11 @@ <<set _divMaint = _div.getDisplayMaintenanceCost()>> <br>It costs @@.red;<<= cashFormat(Math.trunc(_divMaint.cost))>>@@ to run. On average that is @@.red;<<= cashFormat(Math.trunc(_divMaint.perUnit)) >>@@ per slave. <br><<= _div.messageSlaveOutput() >> - <<set _divSentanceStart = ["Currently the division", "It also"]>> + <<set _divSentenceStart = ["Currently the division", "It also"]>> <h3>Direct Control</h3> <<if _div.fromMarket>> <div> - <<= _divSentanceStart.shift() >> is <<= _div.slaveAction.present >> @@.green;<<= numberWithPlural(_div.activeSlaves, "slave") >>@@. + <<= _divSentenceStart.shift() >> is <<= _div.slaveAction.present >> @@.green;<<= numberWithPlural(_div.activeSlaves, "slave") >>@@. <<if _div.activeSlaves < _div.developmentCount>> <<set _fillSlaveCount = _div.availableRoom>> <br>There is room to <<= _div.slaveAction.future >> <<= numberWithPluralOne(_fillSlaveCount, "more slave")>>. @@ -104,7 +104,7 @@ <<if $corp.Cash < _slaveSetCost>> <<continue>> <</if>> - <<= Seperator(_sepObj) >> + <<= Separator(_sepObj) >> <<= "[[" + _slaveNum.name + "|Manage Corporation]" + "[App.Corporate.buySlaves('"+_div.id+"', "+_slaveNum.count+")]" + "]">> @@ -122,7 +122,7 @@ <<set _finishedSlaveNoun = _div.nounFinishedSlave>> <<if _div.heldSlaves > 0>> <div> - <<= _divSentanceStart.shift() >> holds @@.green;<<= numberWithPlural(_div.heldSlaves, _finishedSlaveNoun) >>@@. + <<= _divSentenceStart.shift() >> holds @@.green;<<= numberWithPlural(_div.heldSlaves, _finishedSlaveNoun) >>@@. <<for _nextDiv range _div.relatedDivisions .to .filter(div => div.availableRoom > 0 @@ -141,7 +141,7 @@ <</if>> <<set _sepObj.need = false>> <<for _index, _slaveNum range _sendSlaveArray.filter(slaveNum => slaveNum.count <= _nextDiv.availableRoom && slaveNum.count <= _div.heldSlaves)>> - <<= Seperator(_sepObj)>> + <<= Separator(_sepObj)>> <<= "[[" + _slaveNum.name + "|Manage Corporation]" + "[App.Corporate.transferSlaves('"+_div.id+"', '"+_nextDiv.id+"', "+_slaveNum.count+")" + "]]">> @@ -161,7 +161,7 @@ <<set _sepObj.need = false>> <<for _index, _slaveNum range _sellSlaveArray.filter(slaveNum => _div.heldSlaves >= slaveNum.count)>> - <<= Seperator(_sepObj)>> + <<= Separator(_sepObj)>> <<= "[[" + _slaveNum.name + "|Manage Corporation]" + "[App.Corporate.sellSlaves('"+_div.id+"',"+_slaveNum.count+")]" + "]">> @@ -182,7 +182,7 @@ ]>> <<set _sepObj.need = false>> <<for _buySet range _buyDevArray.filter(buySet => App.Corporate.cash >= buySet.count * _depExpandCost)>> - <<= Seperator(_sepObj) >> + <<= Separator(_sepObj) >> <<= "[["+_buySet.name+"|Manage Corporation]" + "[App.Corporate.buyDevelopment('" + _div.id + "', " + _buySet.count + ")]" + "]">> @@ -195,7 +195,7 @@ { 'name': 'Downsize x10' , 'count':10} ]>> <<for _sellSet range _sellDevArray.filter(divNum => _div.developmentCount > divNum.count)>> - <<= Seperator(_sepObj) >> + <<= Separator(_sepObj) >> <<= "[["+_sellSet.name+"|Manage Corporation]" + "[App.Corporate.sellDevelopment('"+_div.id+"', "+_sellSet.count+")]" + "]">> @@ -271,14 +271,14 @@ The corporation is currently reserving <<= Math.trunc(_dividend * 100)>>% of its profit to be paid out as dividends. <<set _sepObj.need = false>> <<if _index > 0>> - <<= Seperator(_sepObj)>> + <<= Separator(_sepObj)>> <<= "[[Increase Ratio|Manage Corporation][App.Corporate.dividendRatio = " + _dividends[_index - 1] + "]]">> <</if>> <<if _nextIndex != _dividends.length>> - <<= Seperator(_sepObj)>> + <<= Separator(_sepObj)>> <<= "[[Reduce Ratio|Manage Corporation][App.Corporate.dividendRatio = " + _dividends[_nextIndex] + "]]">> <<else>> - <<= Seperator(_sepObj)>> + <<= Separator(_sepObj)>> <<= "[[None|Manage Corporation][App.Corporate.dividendRatio = 0]]">> <</if>> <<else>> diff --git a/src/Mods/Reminder/reminder.js b/src/Mods/Reminder/reminder.js index 3dbd591d33be4a37f7af58b9b1b561357d96c748..7062c27cc2de1380b4ae4ec187f8eab06709d063 100644 --- a/src/Mods/Reminder/reminder.js +++ b/src/Mods/Reminder/reminder.js @@ -19,9 +19,10 @@ App.Reminders.add = function(message, week, category = "manual") { }; /** - * @param {number} [maxFuture] how far into the future should reminders be displayed. - * @param {string} [category] - * @param {boolean} [link] show link to managePersonalAffairs.tw + * @param {Object} [obj] + * @param {number} [obj.maxFuture] how far into the future should reminders be displayed. + * @param {string} [obj.category] + * @param {boolean} [obj.link] show link to managePersonalAffairs.tw * @returns {HTMLSpanElement} */ App.Reminders.list = function list({maxFuture = Number.POSITIVE_INFINITY, category = "all", link = false} = {}) { @@ -35,7 +36,7 @@ App.Reminders.list = function list({maxFuture = Number.POSITIVE_INFINITY, catego */ const includedCategory = category === "all" ? () => true : c => c === category; - const replace = () => App.UI.DOM.replace("#reminderList", list({ + const replace = () => App.UI.DOM.replace("#reminder-list", list({ maxFuture: maxFuture, category: category, link: link @@ -61,7 +62,7 @@ App.Reminders.list = function list({maxFuture = Number.POSITIVE_INFINITY, catego } let outerSpan = document.createElement("span"); - outerSpan.id = "reminderList"; + outerSpan.id = "reminder-list"; let overdue = 0, any = false; diff --git a/src/Mods/SecExp/SecExpBackwardCompatibility.tw b/src/Mods/SecExp/SecExpBackwardCompatibility.tw index eefe11c4748acb9f7c0356d2957f26820970a08d..514aa0743ee19232a18ede4a056665f23252fead 100644 --- a/src/Mods/SecExp/SecExpBackwardCompatibility.tw +++ b/src/Mods/SecExp/SecExpBackwardCompatibility.tw @@ -3,7 +3,7 @@ <<set $nextButton = "Continue", $nextLink = "Main", $returnTo = "Main">> /* base stats */ -<<run App.SecExp.Check.general()>> +<<run App.SecExp.generalBC()>> <<set $lastRebellionWeeks = Number($lastRebellionWeeks) || 0>> <<if ndef $currentUpgrade.ID>> diff --git a/src/Mods/SecExp/attackOptions.tw b/src/Mods/SecExp/attackOptions.tw index fb5a5c45209b4fc69fd4f5a64c28bf59a57b1d21..8ea89c1acba6cf54ca166188b0d40c7b22ca8d8c 100644 --- a/src/Mods/SecExp/attackOptions.tw +++ b/src/Mods/SecExp/attackOptions.tw @@ -141,7 +141,7 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem <hr>__Battle Plan__:<br> <<set _leaderFound = 1>> <<if $leadingTroops === "bodyguard" && $BodyguardID === 0 || $leadingTroops === "headGirl" && $HeadGirlID === 0>> - @@.warning;Chosen leader $leadingTroops cannot be found be found, please select another.@@ + @@.warning;Chosen leader $leadingTroops cannot be found, please select another.@@ <<set _leaderFound = 0>> <</if>> <<switch $leadingTroops>> @@ -216,10 +216,10 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem <</link>> <</if>> <br>For this battle you choose to follow <span id="tactic"><strong><<print $chosenTactic>></strong></span> tactics.<br> -<button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'defensiveTactics')" id="tab defensive tactics">Defensive tactics</button> -<button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'offensiveTactics')" id="tab offensiveTactics">Offensive Tactics</button> +<button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'defensiveTactics')" id="tab defensive tactics">Defensive tactics</button> +<button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'offensiveTactics')" id="tab offensiveTactics">Offensive Tactics</button> -<div id="defensiveTactics" class="tabcontent"> +<div id="defensiveTactics" class="tab-content"> <div class="content"> <<link "Bait and Bleed">> <<set $chosenTactic = "Bait and Bleed">> @@ -259,7 +259,7 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem </div> </div> -<div id="offensiveTactics" class="tabcontent"> +<div id="offensiveTactics" class="tab-content"> <div class="content"> <<link "Blitzkrieg">> <<set $chosenTactic = "Blitzkrieg">> @@ -424,16 +424,16 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem <br><br> <</if>> <<if $militiaUnits.length > 0>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'militia')" id="tab militia">Militia: ($militiaUnits.length)</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'militia')" id="tab militia">Militia: ($militiaUnits.length)</button> <</if>> <<if $slaveUnits.length > 0>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'slaves')" id="tab slaves">Slaves: ($slaveUnits.length)</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'slaves')" id="tab slaves">Slaves: ($slaveUnits.length)</button> <</if>> <<if $mercUnits.length > 0>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'mercs')" id="tab mercs">Mercs: ($mercUnits.length)</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'mercs')" id="tab mercs">Mercs: ($mercUnits.length)</button> <</if>> -<div id="militia" class="tabcontent"> +<div id="militia" class="tab-content"> <div class="content"> <<for _i = 0; _i < _mL; _i++>> <<capture _i>> @@ -454,7 +454,7 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem <</for>> </div> </div> -<div id="slaves" class="tabcontent"> +<div id="slaves" class="tab-content"> <div class="content"> <<for _i = 0; _i < _sL; _i++>> <<capture _i>> @@ -475,7 +475,7 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem <</for>> </div> </div> -<div id="mercs" class="tabcontent"> +<div id="mercs" class="tab-content"> <div class="content"> <<for _i = 0; _i < _meL; _i++>> <<capture _i>> diff --git a/src/Mods/SecExp/buildings/secBarracks.tw b/src/Mods/SecExp/buildings/secBarracks.tw index 88ef6a443e0a10b0444ed0edd9e5eab6d3422885..a61e40b45196c0612e6ec91d9e69c595c2b8f18f 100644 --- a/src/Mods/SecExp/buildings/secBarracks.tw +++ b/src/Mods/SecExp/buildings/secBarracks.tw @@ -138,40 +138,40 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( <<if $mercenaries === 0>> <br>Mercenaries are not allowed inside the arcology. You will not be able to recruit mercenary units. <</if>> -<div class="tabbar"> +<div class="tab-bar"> <<if $arcologyUpgrade.drones == 1>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Bots')" id="tab Bots">Security Drones</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Bots')" id="tab Bots">Security Drones</button> <</if>> <<if $SecExp.edicts.defense.militia >= 1>> - <button class="tablinks" onclick="App.UI.tabBar.openTab(event, 'Militia')" id="tab Militia">Militia: ($militiaUnits.length)</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Militia')" id="tab Militia">Militia: ($militiaUnits.length)</button> <</if>> <<if $mercenaries >= 1>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Mercs')" id="tab Mercs">Mercenaries: ($mercUnits.length)</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Mercs')" id="tab Mercs">Mercenaries: ($mercUnits.length)</button> <</if>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Slaves')" id="tab Slaves">Slaves: ($slaveUnits.length)</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Slaves')" id="tab Slaves">Slaves: ($slaveUnits.length)</button> </div> <<run App.UI.tabbar.handlePreSelectedTab($tabChoice.secBarracks)>> -<div id="Bots" class="tabcontent"> +<div id="Bots" class="tab-content"> <div class="content"> <<set _secBotsCost = 500, _secBotsUpgradeCost = 250>> <<= App.SecExp.getUnit("Bots").describe()>> <br> <<if $secBots.active == 1>> <<if $secBots.maxTroops > $secBots.troops>> <br> - <<link "Replenish the unit" "seeUnit">> + <<link "Replenish the unit" "secBarracks">> <<run cashX(forceNeg(($secBots.maxTroops - $secBots.troops) * _secBotsCost), "securityExpansion")>> <<set $secBots.troops = $secBots.maxTroops>> <</link>> <</if>> <br> <<if $secBots.maxTroops < 80>> <br> - <<link "Improve the digital control matrix" "seeUnit">> + <<link "Improve the digital control matrix" "secBarracks">> <<set $secBots.maxTroops += 10>> <<run cashX(-5000, "securityExpansion")>> <</link>> Invest in the development of more refined controls for your drones to increase the maximum number of drones in the unit. <br>//Costs <<print cashFormat(5000)>> per upgrade and each will increase the max by 10// <<elseif $SF.Toggle && $SF.Active >= 1 && $secBots.maxTroops < 100 && $SecExp.edicts.SFSupportLevel >= 1>> <br> - <<link "Refine the drone network with $SF.Lower assistance" "seeUnit">> + <<link "Refine the drone network with $SF.Lower assistance" "secBarracks">> <<set $secBots.maxTroops += 10>> <<run cashX(forceNeg(5000 + 10 * _secBotsUpgradeCost * $secBots.equip), "securityExpansion")>> <</link>> @@ -183,7 +183,7 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( There's little left to improve in the matrix. Your control systems are at top capacity and won't be able to handle a bigger drone unit. <</if>> <<if $secBots.equip < 3>> <br> - <<link "Improve drone weaponry and armor" "seeUnit">> + <<link "Improve drone weaponry and armor" "secBarracks">> <<set $secBots.equip += 1>> <<run cashX(forceNeg((_secBotsUpgradeCost * $secBots.maxTroops) + 1000), "securityExpansion")>> <</link>> @@ -211,7 +211,7 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( <</if>> </div> </div> -<div id="Slaves" class="tabcontent"> +<div id="Slaves" class="tab-content"> <div class="content"> You are free to organize your menial slaves into fighting units. Currently you have <<print num($menials)>> slaves available, while <<print num(App.SecExp.Manpower.employedSlave)>> are already employed as soldiers. During all your battles you lost a total of <<print num($slavesTotalCasualties)>>. <<if $menials > 0 && App.SecExp.battle.activeUnits() < App.SecExp.battle.maxUnits()>> @@ -289,7 +289,7 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( <</for>> </div> </div> -<div id="Militia" class="tabcontent"> +<div id="Militia" class="tab-content"> <div class="content"> You founded the $arcologies[0].name free militia. You are now able to organize your citizens into fighting units. <<if $SecExp.edicts.defense.militia === 2>> @@ -358,7 +358,7 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( <</for>> </div> </div> -<div id="Mercs" class="tabcontent"> +<div id="Mercs" class="tab-content"> <div class="content"> With the installation of a mercenary company in the arcology, many other are attracted to your free city, hoping to land a contract with you. You are able to organize them in units to use in the defense of the arcology. Excluding the defense force you set up, there are <<print num(App.SecExp.Manpower.totalMerc)>> mercenaries in your arcology, of which <<print num(App.SecExp.Manpower.employedMerc)>> actively employed and <<print num($mercFreeManpower)>> not yet under contract. In total <<print num($mercTotalCasualties)>> mercenaries have died defending your arcology. diff --git a/src/Mods/SecExp/edicts.tw b/src/Mods/SecExp/edicts.tw index 072a8a2046737c51d4c0bed0974a015ba9854c68..957ac456ce08977a6318a07e161a1a95387d4ce4 100644 --- a/src/Mods/SecExp/edicts.tw +++ b/src/Mods/SecExp/edicts.tw @@ -3,14 +3,14 @@ <<set $nextButton = "Back", $nextLink = "Main">> //Passing any edict will cost <<print cashFormat(5000)>> and some authority. More edicts will become available as the arcology develops.// -<<run App.UI.tabBar.handlePreSelectedTab($tabChoice.edicts)>> +<<run App.UI.tabbar.handlePreSelectedTab($tabChoice.edicts)>> <br> -<button class="tabLinks" onclick="App.UI.tabBar.openTab(event, 'Society')" id="tab Society">Society</button> +<button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Society')" id="tab Society">Society</button> <<if $battlesCount > 0 || $rebellionsCount > 0 || $mercenaries > 0>> - <button class="tabLinks" onclick="App.UI.tabBar.openTab(event, 'Military')" id="tab Military">Military</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Military')" id="tab Military">Military</button> <</if>> -<div id="Society" class="tabContent"> +<div id="Society" class="tab-content"> <div class="content"> <<if $SecExp.edicts.alternativeRents == 1>> <br>''Alternative rent payment:'' you are allowing citizens to pay for their rents in menial slaves rather than cash. @@ -316,7 +316,7 @@ </div> </div> -<div id="Military" class="tabContent"> +<div id="Military" class="tab-content"> <div class="content"> <<if $SecExp.edicts.defense.soldierWages === 0>> <br>''Low wages for soldiers:'' wages for soldiers are set to a low level compared to market standards. diff --git a/src/Mods/SecExp/js/secExp.js b/src/Mods/SecExp/js/secExp.js index 79e93c44b045c2f4ded930e52a0fb65419585a6a..baf01b7290ea7be05d0bcaaf7a9fec06b35adc7f 100644 --- a/src/Mods/SecExp/js/secExp.js +++ b/src/Mods/SecExp/js/secExp.js @@ -48,6 +48,9 @@ App.SecExp.generalInit = function(){ pharaonTradition: 0, } }, + smilingMan: { + progress : 0, + } }); }; @@ -418,16 +421,11 @@ App.SecExp.battle = (function() { App.SecExp.Check = (function() { "use strict"; return { - general:general, secRestPoint:secRestPoint, crimeCap:crimeCap, reqMenials:reqMenials, }; - function general() { - App.SecExp.generalBC(); - } // Closes general check function. - function secRestPoint() { let rest = 40; diff --git a/src/Mods/SecExp/js/secExpBC.js b/src/Mods/SecExp/js/secExpBC.js index dc1446e8858fb6c2dc33cc8dba8ae2384f18a18f..5f70a78267e6cce4cfcc1bfa644b0cb7491faca6 100644 --- a/src/Mods/SecExp/js/secExpBC.js +++ b/src/Mods/SecExp/js/secExpBC.js @@ -83,6 +83,30 @@ App.SecExp.generalBC = function (){ troops: Math.max(V.secBots.troops, V.arcologyUpgrade.drones > 0 ? 30 : 0), maxTroops: Math.max(V.secBots.maxTroops, V.arcologyUpgrade.drones > 0 ? 30 : 0) }); + + V.SecExp.smilingMan = V.SecExp.smilingMan || {}; + V.SecExp.smilingMan.progress = V.SecExp.smilingMan.progress || V.smilingManProgress || 0; + if (V.smilingManFate) { + if (V.smilingManFate === 0) { // Offer $him a new life + V.SecExp.smilingMan.progress = 10; + } else if (V.smilingManFate === 1) { // Make $him pay + V.SecExp.smilingMan.progress = 20; + } else if (V.smilingManFate === 2) { // Enslave $him + V.SecExp.smilingMan.progress = 30; + } + } + + if (V.SecExp.smilingMan.progress < 4) { + if (V.SecExp.smilingMan.progress === 0 && V.investedFunds) { + V.SecExp.smilingMan.investedFunds = V.investedFunds; + } + if (V.relationshipLM) { + V.SecExp.smilingMan.relationship = V.relationshipLM; + } + if (V.globalCrisisWeeks) { + V.SecExp.smilingMan.globalCrisisWeeks = V.globalCrisisWeeks; + } + } V.SecExp.core = V.SecExp.core || {}; diff --git a/src/Mods/SecExp/potentialToDo.txt b/src/Mods/SecExp/potentialToDo.txt index f296e0340642562128b2a5585a1306d336a060e5..3025ed4fbc39e241ac45bf595177c62d5424a94d 100644 --- a/src/Mods/SecExp/potentialToDo.txt +++ b/src/Mods/SecExp/potentialToDo.txt @@ -1,5 +1,6 @@ Hexall90's last merged commit: 52dde0b3 +- Fix broken immigration stuff (https://gitgud.io/pregmodfan/fc-pregmod/-/issues/2073 && https://gitgud.io/pregmodfan/fc-pregmod/-/merge_requests/7375) - My personal asst keeps getting the credit, even though I choose to personally lead my forces. (Has been this way for a fewish days): Military01.swf - Enable oceanic battles Fine, I'll Do It Myself diff --git a/src/Mods/SecExp/secExpSmilingMan.tw b/src/Mods/SecExp/secExpSmilingMan.tw index 3ff49f92c06eb4a57b3df451c91b5473c0c75e1f..0aa02e6a594f1e8e0eb850990d20d772ec96451c 100644 --- a/src/Mods/SecExp/secExpSmilingMan.tw +++ b/src/Mods/SecExp/secExpSmilingMan.tw @@ -1,9 +1,10 @@ :: secExpSmilingMan [nobr] <h2>The Smiling Man</h2> -<<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> +<<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event", _effectiveWeek = $week-$nationHate>> <<setAssistantPronouns>> -<<if $smilingManProgress == 0>> +<<if $SecExp.smilingMan.progress === 0 && _effectiveWeek >= 74>> + <<set $SecExp.smilingMan.relationship = 0>> <<set $fcnn.push("...encryption techniques: how to protect you and your loved ones from hackers ...")>> <p> During your morning routine, a peculiar report appears: it's been several weeks since your arcology was the victim of a series of cyber-crimes conducted by a mysterious figure. @@ -22,9 +23,8 @@ <div> <<link "Devote funds to the search for this dangerous criminal">> <<run cashX(-10000, "event")>> - <<set $investedFunds = 1>> - <<set $relationshipLM++>> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.investedFunds = 1>> + <<set $SecExp.smilingMan.relationship++, $SecExp.smilingMan.progress++>> <<replace "#result">> You devote funds to capture and neutralize the threat. You cannot help but wonder what the end game of this "smiling man" is. Money? Fame? Or is he on an ideological crusade? <</replace>> @@ -33,9 +33,8 @@ <div> <<link "Attempt to contact the mysterious figure">> <<run cashX(-10000, "event")>> - <<set $investedFunds = 1>> - <<set $relationshipLM += 2>> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.investedFunds = 1>> + <<set $SecExp.smilingMan.relationship += 2, $SecExp.smilingMan.progress++>> <<replace "#result">> You devote funds to an attempt at communicating with the smiling man. You cannot help but wonder what the end game of this "smiling man" is. Money? Fame? Or is he on an ideological crusade? <</replace>> @@ -44,9 +43,8 @@ <div> <<link "Invest funds to increase the cyber-security of the arcology">> <<run cashX(-10000, "event")>> - <<set $investedFunds = 1>> - <<set $relationshipLM += random(5,10)>> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.investedFunds = 1>> + <<set $SecExp.smilingMan.relationship += random(5,10), $SecExp.smilingMan.progress++>> <<replace "#result">> You devote funds to the improvement of the cyber-security of your arcology. You cannot help but wonder what the end game of this "smiling man" is. Money? Fame? Or is he on an ideological crusade? <</replace>> @@ -59,14 +57,14 @@ <</if>> <div> <<link "Ignore the issue">> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.progress++>> <<replace "#result">> You do not consider this individual a threat. <</replace>> <</link>> </div> </p> -<<elseif $smilingManProgress == 1>> +<<elseif $SecExp.smilingMan.progress === 1 && _effectiveWeek >= 77>> <<set $fcnn.push("...cybersecurity market is booming thanks to a series of recent high-profile attacks...")>> <p> You have just reached your penthouse when your faithful assistant appears in front of you, evidently excited. @@ -115,17 +113,17 @@ <<set _lostCash -= Math.min(30000, _lostCash)>> The additional cyber defenses acquired and running in the security HQ <<if _lostCash < 200000>>further<</if>> limit the damage. <</if>> - <<if $investedFunds == 1>> + <<if $SecExp.smilingMan.investedFunds>> <<set _lostCash -= Math.min(20000, _lostCash)>> The funding you dedicated to the Smiling Man case saved some of the assets that would have been otherwise lost. + <<run delete $SecExp.smilingMan.investedFunds>> <</if>> </p> <<run cashX(forceNeg(_lostCash), "event")>> <p id="result"> <div> <<link ""I want him dead. Now."">> - <<set $relationshipLM-->> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.relationship--, $SecExp.smilingMan.progress++>> <<replace "#result">> You command your loyal operatives to double down on the search and elimination of the threat. <</replace>> @@ -133,8 +131,7 @@ </div> <div> <<link ""I want him, dead or alive!"">> - <<set $relationshipLM++>> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.relationship++, $SecExp.smilingMan.progress++>> <<replace "#result">> You command your loyal operatives to double down on the search and capture of the threat. <</replace>> @@ -142,8 +139,7 @@ </div> <div> <<link ""If we don't find him soon, we will regret it."">> - <<set $relationshipLM += 2>> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.relationship += 2, $SecExp.smilingMan.progress++>> <<replace "#result">> You command your loyal operatives to double down on the search and neutralization of the threat. <</replace>> @@ -151,7 +147,7 @@ </div> <div> <<link ""He got what he wanted. Hopefully, we will be left in peace."">> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.progress++>> <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> <<replace "#result">> You take no further action. Hopefully this ordeal is over. @@ -159,7 +155,7 @@ <</link>> </div> </p> -<<elseif $smilingManProgress == 2>> +<<elseif $SecExp.smilingMan.progress === 2 && _effectiveWeek >= 82>> <<set $fcnn.push("...my money safe the old-fashioned way: I store it all underneath my mattress...")>> <p style="margin-bottom: 2em"> When $assistant.name violently wakes you up, _hisA worried expression can mean only one thing: the Smiling Man had been back. "We were anonymously sent a link to a new website: it's a very simple site, no visuals, no text; only a countdown ticking away. It will reach zero this evening." your assistant says. @@ -202,7 +198,7 @@ <</if>> <<run cashX(($cash * 0.2)-$cash, "event")>> You are not the only one affected by this however. <span class="red">The economy of the entire world is severely affected</span> by the loss of vast quantities of currency. Who knows how long will it take for the global economy to recover. - <<set $globalCrisisWeeks = random(8,16)>> + <<set $SecExp.smilingMan.globalCrisisWeeks = random(8,16)>> Trade is <span class="red">severely affected.</span> <<set $SecExp.core.trade *= 0.2>> With the loss of so much information, most of your accomplishments are simply forgotten, so <span class="reputation.dec">your reputation suffers.</span> @@ -234,8 +230,7 @@ <p id="result"> <div> <<link ""Eliminate the threat, once and for all."">> - <<set $relationshipLM-->> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.relationship--, $SecExp.smilingMan.progress++>> <<replace "#result">> You command your loyal operatives to prepare for a manhunt. <</replace>> @@ -243,8 +238,7 @@ </div> <div> <<link ""Bring him to me."">> - <<set $relationshipLM++>> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.relationship++, $SecExp.smilingMan.progress++>> <<replace "#result">> You command your loyal operatives to prepare for a manhunt. <</replace>> @@ -252,8 +246,7 @@ </div> <div> <<link ""Such skill on my side would be a great boon. Find him."">> - <<set $relationshipLM += 2>> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.relationship += 2, $SecExp.smilingMan.progress++>> <<replace "#result">> You command your loyal operatives to prepare for a manhunt. <</replace>> @@ -261,7 +254,7 @@ </div> <div> <<link ""He finally got what he always wanted. Let him have his victory, we have better things to do."">> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.progress++>> <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> <<replace "#result">> You take no further action. Hopefully this ordeal is finally over. @@ -269,7 +262,7 @@ <</link>> </div> </p> -<<elseif $smilingManProgress == 3>> +<<elseif $SecExp.smilingMan.progress === 3>> <<set $nextButton = " ">> <<set $fcnn.push("...sometimes high-tech problems have low-tech solutions. Back to you in the...")>> @@ -300,8 +293,8 @@ <<set $activeSlave.birthSurname = "Yamadera">> <<set $activeSlave.origSkin = "pale">> <<run applyGeneticColor($activeSlave)>> - <<set $activeSlave.devotion = 5 * $relationshipLM>> - <<set $activeSlave.trust = 5 * $relationshipLM>> + <<set $activeSlave.devotion = 5 * $SecExp.smilingMan.relationship>> + <<set $activeSlave.trust = 5 * $SecExp.smilingMan.relationship>> <<set $activeSlave.face = random(10,50)>> <<run setHealth($activeSlave, 70, 0, 0, 0, 0)>> <<set $activeSlave.teeth = "normal">> @@ -347,7 +340,7 @@ <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> "So it was you to find me first. - <<if $relationshipLM > 2>> + <<if $SecExp.smilingMan.relationship > 2>> I was hoping you would be the one! <<else>> I expected you would be the one. @@ -364,14 +357,13 @@ <p id="result"> <div> <<link "Offer $him a new life">> - <<set $smilingManFate = 0>> <<replace "#result">> <div> You decide it would be criminally wasteful to throw away such talent. You offer $him a new life at your side. $His expertise will surely guarantee safety, if not supremacy, to your arcology in cyberspace, while $he will have safety and luxury in the physical world. </div> <div> <<link "Continue">> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.progress = 10>> <<goto "secExpSmilingMan">> <</link>> </div> @@ -380,14 +372,13 @@ </div> <div> <<link "Make $him pay">> - <<set $smilingManFate = 1>> <<replace "#result">> <div> You decide to end $his pitiful life. $He has crossed the wrong master of the new world $he worked so hard to create. No mercy was asked for and no mercy will be given. </div> <div> <<link "Continue">> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.progress = 20>> <<goto "secExpSmilingMan">> <</link>> </div> @@ -396,14 +387,13 @@ </div> <div> <<link "Enslave $him">> - <<set $smilingManFate = 2>> <<replace "#result">> <div> You decide to enslave the $girl. $His skill may be great, but $his crimes are equally so, which makes it all the sweeter to turn $him into an obedient little toy to play with. </div> <div> <<link "Continue">> - <<set $smilingManProgress++>> + <<set $SecExp.smilingMan.progress = 30>> <<goto "secExpSmilingMan">> <</link>> </div> @@ -415,17 +405,17 @@ <</link>> </span> /* closes id="continue" */ </p> -<<else>> - <<if $smilingManFate < 2>> +<<elseif $SecExp.smilingMan.progress > 3>> + <<if $SecExp.smilingMan.progress < 30>> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageRef medImg"><<= SlaveArt($activeSlave, 2, 0)>></div> <</if>> /* 000-250-006 */ - <<if $smilingManFate == 0>> + <<if $SecExp.smilingMan.progress === 10>> <p> The $girl asks for a few minutes to think about your offer, - <<if $relationshipLM >= 4>> + <<if $SecExp.smilingMan.relationship >= 4>> but $he quickly comes to terms with the situation and accepts. <<else>> and after some time $he reluctantly accepts. @@ -436,7 +426,7 @@ <p> The collaboration of the ex-Smiling Man permanently increases <span class="green">security and the rate of prosperity growth.</span> <span class="cash.inc">Cash will be also provided,</span> but you're better off not knowing the sources. </p> - <<elseif $smilingManFate == 1>> + <<elseif $SecExp.smilingMan.progress === 20>> <<set $activeSlave.clothes = "no clothing">> <p> For such a criminal a simple execution is not enough. You order the $girl captured and crucified outside the city, with a mask resembling $his famous symbol. Your men quickly obey. $He never once shows sign of pain or fear, remaining stoic and proud to the end. @@ -447,11 +437,11 @@ </p> <<run repX(10000, "architecture")>> <</if>> - <<elseif $smilingManFate == 2>> + <<elseif $SecExp.smilingMan.progress === 30>> <<set $activeSlave.clothes = "no clothing">> <p style="margin-bottom: 2em"> Your men move to immobilize $him. Terror flashes through $his eyes for - <<if $relationshipLM >= 4>> + <<if $SecExp.smilingMan.relationship >= 4>> a second, but $he quickly recovers $his usual demeanor. <<else>> a second — $he barely manages to recover $his usual demeanor. @@ -462,4 +452,5 @@ <<include "New Slave Intro">> </p> <</if>> -<</if>> + <<run delete $SecExp.smilingMan.relationship>> +<</if>> \ No newline at end of file diff --git a/src/Mods/SecExp/securityReport.tw b/src/Mods/SecExp/securityReport.tw index 559e4b46c5f63158a0cc5916112d688362de7b9c..6e28f4d8a216fd400254b6cb03bb30e1756157d3 100644 --- a/src/Mods/SecExp/securityReport.tw +++ b/src/Mods/SecExp/securityReport.tw @@ -41,7 +41,7 @@ Your past life as a mercenary makes it easier to manage the security of the arcology. <<set _secGrowth += 1>> <</if>> -<<if $smilingManFate == 0>> +<<if $SecExp.smilingMan.progress === 10>> The ex-criminal known to the world as The Smiling Man puts their impressive skills to work, dramatically increasing the efficiency of your security measures. <<set _secGrowth += 2>> <</if>> diff --git a/src/Mods/SpecialForce/Firebase.tw b/src/Mods/SpecialForce/Firebase.tw index 68e85c00ecc247dcbb188e5efd088b7fb130df94..a477569fe8325d86bd103fd78073c1b4ce3dc10b 100644 --- a/src/Mods/SpecialForce/Firebase.tw +++ b/src/Mods/SpecialForce/Firebase.tw @@ -28,15 +28,15 @@ <<if $SF.FS.Tension !== -1>> The Colonel's current Tension: $SF.FS.Tension<</if>> <<run App.UI.tabbar.handlePreSelectedTab($tabChoice.Firebase)>> - <div class="tabbar"> + <div class="tab-bar"> <<if _size !== _max>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Upgrades')" id="tab Upgrades">Upgrades</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Upgrades')" id="tab Upgrades">Upgrades</button> <</if>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Actions')" id="tab Actions">Actions</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'FS')" id="tab FS">Future Societies</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Actions')" id="tab Actions">Actions</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'FS')" id="tab FS">Future Societies</button> </div> - <div id="Upgrades" class="tabcontent"> + <div id="Upgrades" class="tab-content"> <div class="content"> <<set _T1 = App.SF.unlocked.secondTier()>> Total upgrade progress: <<print App.SF.progress(_size,_max)>> _size/_max(<<print (_size/_max).toFixed(2)*100>>%) <<if _size < 30>> <br>//<<print (30-_size)>> more upgrades is needed until the next tier unlocks.// <</if>> @@ -50,7 +50,7 @@ </div> </div> - <div id="Actions" class="tabcontent"> + <div id="Actions" class="tab-content"> <div class="content"> <<if $SF.MercCon.CanAttend === 0 || $SF.MercCon.History >= 1 && ((Math.trunc($week/24) === ($week/24)) && $SF.MercCon.CanAttend === -1)>> Her expression changes as something jogs her memory. "Before we begin <<if $SF.Colonel.Core == "brazen">><<= properTitle()>><<else>>boss<</if>> @@ -106,7 +106,7 @@ </div> </div> - <div id="FS" class="tabcontent"> + <div id="FS" class="tab-content"> <div class="content"> <<= App.SF.fsIntegration()>> </div> </div> <</if>> \ No newline at end of file diff --git a/src/Mods/SpecialForce/SpecialForce.js b/src/Mods/SpecialForce/SpecialForce.js index 98c495ea23ea1514d4ff826b688cca98e9f9eed6..5fbf0e8254d1a599eaf78a23fa1fd70698416a23 100644 --- a/src/Mods/SpecialForce/SpecialForce.js +++ b/src/Mods/SpecialForce/SpecialForce.js @@ -21,15 +21,15 @@ App.SF.weeklyGift = function(input) { break; case 3: switch(env) { - case 4: EnvProsp = 3; - case 3: EnvProsp = 5; - case 2: EnvProsp = 7; + case 4: EnvProsp = 3; break; + case 3: EnvProsp = 5; break; + case 2: EnvProsp = 7; break; } value = EnvProsp + (Math.ceil(size/100 * env)); break; } return value; -} +}; App.SF.unlocked = (function() { return { @@ -94,7 +94,7 @@ App.SF.upgrades = (function() { if (V.SF.Toggle === 0 || V.SF.Active < 1) { return 0; } - return Object.values(V.SF.Squad).reduce((a,b) => a+b); + return Object.values(V.SF.Squad).reduce((a, b) => a+b); } function list(completeView = '') { @@ -209,7 +209,7 @@ App.SF.Init = function() { FS_OPTIONS = FS_OPTIONS.concat(Revivalisms); for (let i = 0; i < FS_OPTIONS.length; i++) { if (V.SF.FS[FS_OPTIONS[i]] === undefined) { - V.SF.FS[FS_OPTIONS[i]] = {lv: 0, vaildOption: 1, gift: 0}; + V.SF.FS[FS_OPTIONS[i]] = {lv: 0, validOption: 1, gift: 0}; } } } @@ -224,33 +224,33 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100) { function validityTester() { if (V.SF.FS.Repopulation.lv > V.SF.FS.Eugenics.lv) { - V.SF.FS.Eugenics.vaildOption = 0; + V.SF.FS.Eugenics.validOption = 0; } else if (V.SF.FS.Eugenics.lv > V.SF.FS.Repopulation.lv) { - V.SF.FS.Repopulation.vaildOption = 0; + V.SF.FS.Repopulation.validOption = 0; } if (V.SF.FS.Gender_radicalism.lv > V.SF.FS.Gender_traditionalism.lv) { - V.SF.FS.Gender_traditionalism.vaildOption = 0; + V.SF.FS.Gender_traditionalism.validOption = 0; } else if (V.SF.FS.Gender_traditionalism.lv > V.SF.FS.Gender_radicalism.lv) { - V.SF.FS.Gender_radicalism.vaildOption = 0; + V.SF.FS.Gender_radicalism.validOption = 0; } if (V.SF.FS.Body_Purism.lv > V.SF.FS.Transformation_Fetishism.lv) { - V.SF.FS.Transformation_Fetishism.vaildOption = 0; + V.SF.FS.Transformation_Fetishism.validOption = 0; } else if (V.SF.FS.Transformation_Fetishism.lv > V.SF.FS.Body_Purism.lv) { - V.SF.FS.Body_Purism.vaildOption = 0; + V.SF.FS.Body_Purism.validOption = 0; } if (V.SF.FS.Youth_Preferentialism.lv > V.SF.FS.Maturity_Preferentialism.lv) { - V.SF.FS.Maturity_Preferentialism.vaildOption = 0; + V.SF.FS.Maturity_Preferentialism.validOption = 0; } else if (V.SF.FS.Maturity_Preferentialism.lv > V.SF.FS.Youth_Preferentialism.lv) { - V.SF.FS.Youth_Preferentialism.vaildOption = 0; + V.SF.FS.Youth_Preferentialism.validOption = 0; } if (V.SF.FS.Slimness_Enthusiasm.lv > V.SF.FS.Asset_Expansionism.lv) { - V.SF.FS.Asset_Expansionism.vaildOption = 0; + V.SF.FS.Asset_Expansionism.validOption = 0; } else if (V.SF.FS.Asset_Expansionism.lv > V.SF.FS.Slimness_Enthusiasm.lv) { - V.SF.FS.Slimness_Enthusiasm.vaildOption = 0; + V.SF.FS.Slimness_Enthusiasm.validOption = 0; } let ChosenRevivalism; @@ -262,7 +262,7 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100) { if (ChosenRevivalism) { for (let i = 0; i < Revivalisms.length; i++) { if (V.SF.FS[Revivalisms[i]] !== ChosenRevivalism) { - V.SF.FS[Revivalisms[i]].vaildOption = 0; + V.SF.FS[Revivalisms[i]].validOption = 0; } } } @@ -334,117 +334,117 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100) { InputText0 += `\n`; switch (selectedFS) { case 'Repopulation': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nRepopulation efforts: focus on mass breeding in order to repopulate the future world.`; } break; case 'Eugenics': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nEugenics: rebuilding society using restrictive breeding programs reserved solely for society's finest. `; } break; case 'Gender_radicalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nGender radicalism: a radical redefinition of gender that identifies powerful people as male, and everyone else as female.`; } break; case 'Gender_traditionalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nGender traditionalism: a societal preference for feminine slaves and support for slave pregnancy. `; } break; case 'Paternalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nPaternalism: a vision of slave improvement, including slaves' health, mental well-being, and education. `; } break; case 'Degradationism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nDegradationism: a belief that slaves are not human and should not be treated decently.`; } break; case 'Body_Purism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nBody Purism: societal disapproval of implant surgery. `; } break; case 'Transformation_Fetishism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nTransformation Fetishism: societal fetishization of implant surgery.`; } break; case 'Youth_Preferentialism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nYouth Preferentialism: increased interest in girls just past their majority. `; } break; case 'Maturity_Preferentialism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nMaturity Preferentialism: increased interest in mature slaves. `; } break; case 'Slimness_Enthusiasm': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nSlimness Enthusiasm: a fashion for slaves with girlish figures.`; } break; case 'Asset_Expansionism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nAsset Expansionism: societal hunger for huge assets of whatever origin.`; } break; case 'Slave_Pastoralism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nSlave Pastoralism: societal acceptance of slave products like milk.`; } break; case 'Physical_Idealism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nPhysical Idealism: societal reverence for the idealized human form, including height, health and muscle.`; } break; case 'Hedonistic_Decadence': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nHedonistic Decadence: societal acceptance of overindulgence and immediate gratification. Be it food, drink, sex, drugs or whatever one's desire may be.`; } break; case 'Chattel_Religionism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nChattel Religionism: a new strain of religion that emphasizes the slaveholding portions of religious history.`; } break; case 'Roman_Revivalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nRoman Revivalism: a vision of a new Rome.`; } break; case 'Aztec_Revivalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nAztec Revivalism: a vision of a new Aztec Empire.`; } break; case 'Egyptian_Revivalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nEgyptian Revivalism: a vision of a Pharaoh's Egypt.`; } break; case 'Edo_Revivalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nEdo Revivalism: a vision of Edo Japan.`; } break; case 'Arabian_Revivalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nArabian Revivalism: a vision of the Sultanate of old.`; } break; case 'Chinese_Revivalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nChinese Revivalism: a vision of ancient China.`; } break; case 'Multiculturalism': - if (fsIncrease > 0 || V.SF.FS[selectedFS].vaildOption < 1) { + if (fsIncrease > 0 || V.SF.FS[selectedFS].validOption < 1) { InputText0 += `\nMulticulturalism: a commitment to allow your arcology's citizens cultural freedom.`; } break; @@ -458,7 +458,7 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100) { InputText0 += `\n Smuggle in FS-optimized (${V.SF.FS[selectedFS].lv}%): `; } - if (V.SF.FS[selectedFS].gift < 1 || (V.SF.FS[selectedFS].lv < 100 && V.SF.FS[selectedFS].vaildOption > 0)) { + if (V.SF.FS[selectedFS].gift < 1 || (V.SF.FS[selectedFS].lv < 100 && V.SF.FS[selectedFS].validOption > 0)) { InputText0 += ` [[${InputText1}|Firebase][cashX(-${cost}, "specialForcesCap"), $SF.FS.Tension += ${tension}, $SF.FS.${[selectedFS]}.gift = ${gift}, $SF.FS.${[selectedFS]}.lv += ${fsIncrease}]]`; if (fsIncrease > 0) { InputText0 += ` (FS acceptance:<span class='green'>+${fsIncrease}%,</span>`; @@ -508,7 +508,7 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100) { text += `You walk past The Colonel and move towards the common area to meet with an exclusive group of her very influential officers that are currently relaxing at their favorite table. These men and women are known for their competence, popularity, and authority within in their respective divisions of the ${V.SF.Lower}, they are hard to replace, and they are always looking to earn more coin; they are the perfect weak link for trickling your Future Society influences down into the Firebase. As the officers make room at their table for you to sit and join them for discussion, you spot The Colonel staring at you from afar, and she does not look happy with you. As you are her employer, she cannot stop you from speaking with her soldiers or moving around as you please, but she can tell that you are up to no good.`; validityTester(); for (let i = 0; i < FS_OPTIONS.length; i++) { - if (V.SF.FS[FS_OPTIONS[i]].vaildOption !== 0 && V.SF.FS[FS_OPTIONS[i]].lv < 100) { + if (V.SF.FS[FS_OPTIONS[i]].validOption !== 0 && V.SF.FS[FS_OPTIONS[i]].lv < 100) { OptionsMenu(FS_OPTIONS[i]); } if (V.SF.FS[FS_OPTIONS[i]].gift < 1) { @@ -1407,7 +1407,7 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100) { text += `\nEveryday, the captives kept in the processing cages must learn a new hymn or a new chapter from the Holy Book, word for word. Backsliders who do not learn the assigned content by end of day are made to repent of their faithlessness, through whipping and the gnashing of teeth.\n`; } if (textDisplay === 25 && V.SF.FS[FS_OPTIONS[i]].lv >= textDisplay) { - text += `\nEvery chair is engraved with a powerful verse of scripture from your Holy Book, and a large ornate den has been constructed on the eastern fringe of the common area to serve as the Firebase's orthodox confession booths. War is hell, and here, soldiers are often invited to speak anonymously with the compassionate and unjudgmental priests of the faith to share their most troublesome memories. It is only here that they can safely unload their emotional burdens of guilt, anxiety, and fear to the benevolent unseen listener, and receive absolution.\n`; + text += `\nEvery chair is engraved with a powerful verse of scripture from your Holy Book, and a large ornate den has been constructed on the eastern fringe of the common area to serve as the Firebase's orthodox confession booths. War is hell, and here, soldiers are often invited to speak anonymously with the compassionate and nonjudgmental priests of the faith to share their most troublesome memories. It is only here that they can safely unload their emotional burdens of guilt, anxiety, and fear to the benevolent unseen listener, and receive absolution.\n`; } if (textDisplay === 30 && V.SF.FS[FS_OPTIONS[i]].lv >= textDisplay) { text += `\nOn every wall of the barracks, the authoritative scripture in boldly inscribed in fine calligraphy. Disguised speakers tucked away in corners play gentle, unobtrusive hymns that ease the troops to sleep at nights, and the beds themselves are painted in majestic colors that herald the glorious destinies of the faithful that use them.\n`; @@ -1508,7 +1508,7 @@ App.SF.fsIntegration = function(input = 'Menu', textDisplay = 100) { text += `\nA carefully paved world-class swimming pool occupies the exterior of the Firebase, with an integrated water heater, several water slides, and even a built-in waterfall. The pool and its surrounding platform plays host to the regular pool parties and swimming competitions that are open to all soldiers and staff that have some free time. Laughter can frequently be heard from the swimwear-clad partygoers as they hang out and socialize here.\n`; } if (textDisplay === 90 && V.SF.FS[FS_OPTIONS[i]].lv >= textDisplay) { - text += `\nLenghty, good-spirited debates and competitions have become regular activities in the Firebase, and that is to be expected. Your exciting, inclusive tolerant, and artistic multiculture fills a void within your warriors that killing, drugging, and whoring do not. For many it provides new outlooks on life, for those that delve deep enough, it provides novel reams of worldly wisdom. Rather than take up space in cemeteries, the bodies of your fallen are promptly cremated to make more room for the living. Every week, ceremonies are held in honor of Life itself. Sanctioned protocols for properly interacting with non-hostile civilians, soldiers, and slaves from foreign countries and arcologies are taught consistently throughout basic training alongside the conventional curricula, which has so far worked well in avoiding faux pas that could have lead to needless conflict with members of other cultures. Soldiers and staff can be heard humming internationally-popular songs or quietly chanting military cadences as they clean weapons and tools, get dressed, move about, and perform many other typical tasks, including fucking. Quite a few officers and NCO's double as language teachers too, and trained interpreters are a coveted addition to any platoon that doesn't already have one. It is common for deployed troops to exchange gifts with one another before mounting up and heading for battle, and as you see a fully kitted infantry section huddled around an ornate tree right now, you are confident that the globalization effort has succeeded.\n`; + text += `\nLengthy, good-spirited debates and competitions have become regular activities in the Firebase, and that is to be expected. Your exciting, inclusive tolerant, and artistic multiculture fills a void within your warriors that killing, drugging, and whoring do not. For many it provides new outlooks on life, for those that delve deep enough, it provides novel reams of worldly wisdom. Rather than take up space in cemeteries, the bodies of your fallen are promptly cremated to make more room for the living. Every week, ceremonies are held in honor of Life itself. Sanctioned protocols for properly interacting with non-hostile civilians, soldiers, and slaves from foreign countries and arcologies are taught consistently throughout basic training alongside the conventional curricula, which has so far worked well in avoiding faux pas that could have lead to needless conflict with members of other cultures. Soldiers and staff can be heard humming internationally-popular songs or quietly chanting military cadences as they clean weapons and tools, get dressed, move about, and perform many other typical tasks, including fucking. Quite a few officers and NCO's double as language teachers too, and trained interpreters are a coveted addition to any platoon that doesn't already have one. It is common for deployed troops to exchange gifts with one another before mounting up and heading for battle, and as you see a fully kitted infantry section huddled around an ornate tree right now, you are confident that the globalization effort has succeeded.\n`; } if (textDisplay === 100 && V.SF.FS[FS_OPTIONS[i]].lv >= textDisplay) { text += `\nMulticulturalism: Sometimes when The Colonel is making her rounds in the Firebase, you'll see her wearing a finely tailored business suit, complete with jacket and skirt, much like many wealthy and powerful women these days. Sometimes when she is relaxing or sleeping she'll wear just a simple comfortable bra and panties, like most women around the world do by now too. Her pavilion contains a wide assortment of goods made from countries all over the world, not just this part of it. Her combat battledress now features a simple cloth beret and a collapsible ballistic shield painted to look like the flag of the ${V.SF.Lower}.\n`; @@ -2389,8 +2389,8 @@ App.SF.AAR = function(endWeekCall = 1) { if (endWeekCall > 0) { cashX(income, "specialForces"); - //We run this in economyJS.js now. - //cashX(forceNeg(upkeep), "specialForces"); + // We run this in economyJS.js now. + // cashX(forceNeg(upkeep), "specialForces"); if (V.SF.ArmySize > unitCap) { V.SF.ArmySize = unitCap; } @@ -2507,7 +2507,7 @@ App.SF.env = function() { App.SF.UpgradeCost = function(cost, unit) { "use strict"; const S = V.SF.Squad; - let value = cost * App.SF.env() * Math.pow(1.15 , unit + 1); + let value = cost * App.SF.env() * Math.pow(1.15, unit + 1); if ([S.AircraftCarrier, S.Drones, S.GiantRobot, S.GunS, S.MissileSilo, S.Satellite.lv, S.SpacePlane, S.Sub].includes(unit)) { value *= V.HackingSkillMultiplier; } diff --git a/src/Mods/SpecialForce/SpecialForceBC.js b/src/Mods/SpecialForce/SpecialForceBC.js index 2be42bd16b57189fe6a99e77d6c75731d7922724..c29c4757b4bcc5366684e4d7eeef253e250b2d71 100644 --- a/src/Mods/SpecialForce/SpecialForceBC.js +++ b/src/Mods/SpecialForce/SpecialForceBC.js @@ -196,6 +196,16 @@ App.SF.BC = function() { V.SF.FS.Tension = V.SF.FS.Tension || -1; if (V.SF.Toggle && V.SF.Active >= 1) { + const Revivalisms = ['Roman_Revivalism', 'Aztec_Revivalism', 'Egyptian_Revivalism', 'Edo_Revivalism', 'Arabian_Revivalism', 'Chinese_Revivalism', 'Multiculturalism']; + let FS_OPTIONS = ['Repopulation', 'Eugenics', 'Gender_radicalism', 'Gender_traditionalism', 'Paternalism', 'Degradationism', 'Body_Purism', 'Transformation_Fetishism', 'Youth_Preferentialism', 'Maturity_Preferentialism', 'Slimness_Enthusiasm', 'Asset_Expansionism', 'Slave_Pastoralism', 'Physical_Idealism', 'Hedonistic_Decadence', 'Chattel_Religionism']; + FS_OPTIONS = FS_OPTIONS.concat(Revivalisms); + for (let i = 0; i < FS_OPTIONS.length; i++) { + if (V.SF.FS[FS_OPTIONS[i]].vaildOption) { + V.SF.FS[FS_OPTIONS[i]].validOption = V.SF.FS[FS_OPTIONS[i]].vaildOption; + delete V.SF.FS[FS_OPTIONS[i]].vaildOption; + } + } + V.SF.UC = V.SF.UC || {}; V.SF.Depravity = V.SF.Depravity || 0; V.SF.Upgrade = V.SF.Upgrade || 0; diff --git a/src/Mods/SpecialForce/TrickShotNight.tw b/src/Mods/SpecialForce/TrickShotNight.tw index 5d6e26793602f425c7d485e714250d86727bdc3b..39c1758f0a91f3a3e8b52fdb6feb30c0a711cfef 100644 --- a/src/Mods/SpecialForce/TrickShotNight.tw +++ b/src/Mods/SpecialForce/TrickShotNight.tw @@ -48,10 +48,10 @@ Despite your direct elevator, interaction with the majority of your security for <<replace "#result">> You instruct $assistant.name to inform $SF.Lower that you will be attending their trick shot night, and after settling your affairs in the penthouse you head down to the firebase. The atmosphere in the firebase is casual, especially in comparison to the usual situations you meet them, though your security force still maintain some measure of decorum towards you as their employer. Eventually, you settle in at the table with a handful of $SF.Lower officers and turn your @@.yellowgreen;<<print cashFormat(50000)>>@@ into bullets. All that remains is to decide your strategy for the night. <br><br> - <span id="bountyresult"> + <span id="bounty-result"> <<link "Play it safe">> - <<replace "#bountyresult">> + <<replace "#bounty-result">> <<if random(1,100) > _shootChance>> Despite your attempts to mitigate risk and play the safest shots possible, it seems lady luck has conspired against you this evening. However, even when your last bullet is shot, your security force pitch you a few bullets to keep you in the game for the rest of the night. You may have lost most of your ¤, but it seems you've @@.green;made some friends.@@ <<run repX(5000, "event")>> @@ -66,7 +66,7 @@ Despite your direct elevator, interaction with the majority of your security for <<if random(1,100) < _shootChance>> <br> <<link "Up the ante">> - <<replace "#bountyresult">> + <<replace "#bounty-result">> <<set $activeSlaveOneTimeMinAge = 25>> <<set $activeSlaveOneTimeMaxAge = 35>> <<set $one_time_age_overrides_pedo_mode = 1>> @@ -104,7 +104,7 @@ Despite your direct elevator, interaction with the majority of your security for <<set $activeSlave.hStyle = "buzzcut">> <<set $activeSlave.clothes = "a military uniform">> <<setLocalPronouns $activeSlave>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -117,18 +117,18 @@ Despite your direct elevator, interaction with the majority of your security for </span> Some aggressive play and an eye for riling up your fellow players has resulted in an immense payout, and all but one of your adversaries have folded as the situation has escalated. The only player still in contention is a wily old mercenary, the veteran of $his fair share of battles on the battlefield and at the firing range. $He's short on bullets, however, and $he'll have to buy in with something else as collateral. <br><br> - <span id="aliveresult"> + <span id="alive-result"> <<link "A year of servitude">> <<set $activeSlave.clothes = "no clothing">> - <<replace "#aliveresult">> + <<replace "#alive-result">> <<if random(1,100) > _shootChance>> For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck was not on your side. As the victor sweeps up $his spoils, the other security force clap you on the back and offer their condolences for your defeat. Though you may have lost your ¤, it seems you've @@.green;made some friends.@@ <<run repX(5000, "event")>> <<run cashX(-50000, "event")>> <<else>> - <<replace "#artFrame">> - <span id="artFrame"> + <<replace "#art-frame">> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -149,7 +149,7 @@ Despite your direct elevator, interaction with the majority of your security for <</link>> <br> <<link "Dock $his wages">> - <<replace "#aliveresult">> + <<replace "#alive-result">> <<if random(1,100) > _shootChance>> For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck was not on your side. As the victor sweeps up $his spoils, the other security force members clap you on the back and offer their condolences for your defeat. Though you may have lost your ¤, it seems you've @@.green;made some friends.@@ <<run repX(5000, "event")>> diff --git a/src/arcologyBuilding/manufacturing.js b/src/arcologyBuilding/manufacturing.js index e692f0340ab6f74299225144553cab557ba2454e..8896de6ec0be2d59da766292e923b624132fd834 100644 --- a/src/arcologyBuilding/manufacturing.js +++ b/src/arcologyBuilding/manufacturing.js @@ -219,7 +219,7 @@ App.Arcology.Cell.Manufacturing = class extends App.Arcology.Cell.BaseCell { } } - if (V.secExpEnabled === 1) { + if (V.secExpEnabled > 0) { if (V.weapManu !== 1) { fragment.append(thisCell._makeUpgrade( "Convert this sector to weapons manufacturing", diff --git a/src/arcologyBuilding/markets.js b/src/arcologyBuilding/markets.js index e93f11c3b8c68b1db212f02c80389e2ca1b9ca24..05160b6a812f53ed5501a7cfe7de8c234cf6685e 100644 --- a/src/arcologyBuilding/markets.js +++ b/src/arcologyBuilding/markets.js @@ -99,7 +99,7 @@ App.Arcology.Cell.Market = class extends App.Arcology.Cell.BaseCell { )); } - if (V.secExpEnabled === 1 && V.transportHub === 0) { + if (V.secExpEnabled > 0 && V.transportHub === 0) { fragment.append(this._makeUpgrade( "Centralize and modernize the transport hub", () => { diff --git a/src/arcologyBuilding/shops.js b/src/arcologyBuilding/shops.js index e03feb69dfbeca04325b0137aef6a58b03bf23e1..acc9e6f2cecb4d2b7405dcd8846be6dbf53ca4d4 100644 --- a/src/arcologyBuilding/shops.js +++ b/src/arcologyBuilding/shops.js @@ -129,13 +129,13 @@ App.Arcology.Cell.Shop = class extends App.Arcology.Cell.BaseCell { break; case "Youth Preferentialist": fragment.append(`dedicated to Youth Preferentialism. The shops here are quite varied. Some, like the tailors, only betray their focus on young slaves by their selections of school${girl} outfits, girlish leotards, and the like. There are several high-end slave trainers who specialize in maximizing slaves' ${ - V.seeDicks < 100 ? "vaginal and" : ""} anal skills while they're still virgins, with instruction only. `, - App.UI.DOM.linkReplace("Look in on the classes", - `You decide to put in an appearance and look into the training sessions. Of course, the trainers are very eager to share all the details with the arcology owner, and have you seen displaying an interest in their work. You're shown a classroom of obedient young slaves, right at sale age, paying rapt attention to a male trainer and a slave at the head of the classroom. He's reviewing how to relax during one's first time before 'deflowering' the teacher's assistant, whose ${ - V.seeDicks > 25 - ? "asshole is allowed to rest and return to virgin tightness" - : "hymen is surgically restored" - } between sessions.`)); + V.seeDicks < 100 ? "vaginal and" : ""} anal skills while they're still virgins, with instruction only. `, + App.UI.DOM.linkReplace("Look in on the classes", + `You decide to put in an appearance and look into the training sessions. Of course, the trainers are very eager to share all the details with the arcology owner, and have you seen displaying an interest in their work. You're shown a classroom of obedient young slaves, right at sale age, paying rapt attention to a male trainer and a slave at the head of the classroom. He's reviewing how to relax during one's first time before 'deflowering' the teacher's assistant, whose ${ + V.seeDicks > 25 + ? "asshole is allowed to rest and return to virgin tightness" + : "hymen is surgically restored" + } between sessions.`)); break; case "Maturity Preferentialist": fragment.append("dedicated to Maturity Preferentialism. It's not immediately apparent, though the stores here offer fashions that are obviously designed to flatter mature women, and anti-aging products of all kinds are prominently displayed. What there are, though, are quite a number of pretty, scantily clad female citizens here, obviously retired from sexual slavery and looking to slake their still trained libidos with any handsome fellow citizen interested. ", @@ -144,10 +144,10 @@ App.Arcology.Cell.Shop = class extends App.Arcology.Cell.BaseCell { V.PC.dick === 0 ? `${He}'s as eager as a teenager to have a lesbian experience in public, and can't stop giggling as you fuck.` : A.FSGenderFundamentalist !== "unset" - ? `Like many recently retired slaves in your arcology, ${he}'s gotten pregnant as a free ${woman}, and it's supercharged ${his} sex drive. No matter what you do to ${him}, ${he} just wants more.` - : A.FSGenderRadicalist !== "unset" - ? `${He}'s got a big dick, and clearly has close friends among the other recently retired ${girl}s, but is very willing to be your bottom, especially in public.` - : `${He} was horny to begin with, but the foreplay and the naughtiness of doing it out in public has ${him} as eager as a teenager, and ${he} goes wild.` + ? `Like many recently retired slaves in your arcology, ${he}'s gotten pregnant as a free ${woman}, and it's supercharged ${his} sex drive. No matter what you do to ${him}, ${he} just wants more.` + : A.FSGenderRadicalist !== "unset" + ? `${He}'s got a big dick, and clearly has close friends among the other recently retired ${girl}s, but is very willing to be your bottom, especially in public.` + : `${He} was horny to begin with, but the foreplay and the naughtiness of doing it out in public has ${him} as eager as a teenager, and ${he} goes wild.` }`)); break; case "Slimness Enthusiast": @@ -162,10 +162,10 @@ App.Arcology.Cell.Shop = class extends App.Arcology.Cell.BaseCell { break; case "Pastoralist": fragment.append(`dedicated to Pastoralism. Milking is mostly done elsewhere, so the establishments here are a curious mix of farm supply stores and eateries. You can sample all kinds of ice cream, shakes, smoothies, cheeses, butter, and other dairy products here, all made from creamy human milk drawn from a busty slave${girl}'s breasts. ${ - V.seeDicks > 0 - ? `There are also all kinds of slave beauty products and foods made from 'the other slave${girl} milk,' cum.` : ""} `, - App.UI.DOM.linkReplace("Tour the kitchens", - "The eateries are very eager to have you seen inspecting their equipment and methods, and roll out the red carpet for you as they show you around. All kinds of old world culinary skill is on display here: artisan cheesemaking, butter hand-churned by muscular slaves, sweet custards and delicate flans that could compete in any dessert contest in the world. It's all so very refined and normal that it's quite easy to forget completely that the milk that is the basis of all this food comes from slaves.")); + V.seeDicks > 0 + ? `There are also all kinds of slave beauty products and foods made from 'the other slave${girl} milk,' cum.` : ""} `, + App.UI.DOM.linkReplace("Tour the kitchens", + "The eateries are very eager to have you seen inspecting their equipment and methods, and roll out the red carpet for you as they show you around. All kinds of old world culinary skill is on display here: artisan cheesemaking, butter hand-churned by muscular slaves, sweet custards and delicate flans that could compete in any dessert contest in the world. It's all so very refined and normal that it's quite easy to forget completely that the milk that is the basis of all this food comes from slaves.")); break; case "Physical Idealist": fragment.append("dedicated to Physical Idealism. There are supplement shops and workout equipment stores here, but they're small and packed into the spaces between all the gyms. These are some of the best patronized gyms in the world, because not only do physical idealists work out, there's a strong inclination to work out in public. ", @@ -179,8 +179,8 @@ App.Arcology.Cell.Shop = class extends App.Arcology.Cell.BaseCell { V.seeDicks === 0 ? "a woman in nun's attire holding a ribbed vibrating dildo" : V.seeDicks < 100 - ? "futanari in nun's attire" - : "a man in monk's attire" + ? "futanari in nun's attire" + : "a man in monk's attire" } fucks ${him} mercilessly from behind.`)); break; case "Roman Revivalist": @@ -232,8 +232,8 @@ App.Arcology.Cell.Shop = class extends App.Arcology.Cell.BaseCell { V.PC.belly >= 5000 ? `Spreading ${his} legs, you find that ${he} is suspended at the perfect height for you to comfortably penetrate ${him}; or ${he} would be, if your own rounded middle wasn't pushing into ${his} own. ${He} asks for a little help getting down, and afterwards, shows you to a series of harnesses designed to hold a ${girl} with ${his} belly dangling beneath ${him}. The perfect toy for the very pregnant slaveowner hoping to plow ${hisP} equally gravid chattel.` : V.PC.dick !== 0 - ? `Spreading ${his} legs, you find that ${he} is suspended at the perfect height for you to comfortably penetrate ${him}.` - : `Picking out an attractive strap-on, donning it, and spreading ${his} legs, you find that ${he} is suspended at the perfect height for you to comfortably penetrate ${him}.` + ? `Spreading ${his} legs, you find that ${he} is suspended at the perfect height for you to comfortably penetrate ${him}.` + : `Picking out an attractive strap-on, donning it, and spreading ${his} legs, you find that ${he} is suspended at the perfect height for you to comfortably penetrate ${him}.` } Even better, the swing handles ${his} weight, so no sprained back!`)); break; case "Eugenics": @@ -529,9 +529,9 @@ App.Arcology.Cell.Shop = class extends App.Arcology.Cell.BaseCell { if (V.FSPromenade.Pastoralist === 0) { fragment.append(this._makeUpgrade( "Upgrade this sector to appeal to Pastoralist establishments.", - () => {; + () => { this._clearFsStyle(); - V.FSPromenade.Pastoralist = 1 + V.FSPromenade.Pastoralist = 1; this.type = "Pastoralist"; }, cost )); diff --git a/src/cheats/mod_EditChildCheatNew.tw b/src/cheats/mod_EditChildCheatNew.tw index 14046e6b0891397407af860262099846c7b8eb26..38557e8e7552b598e0c6669b03d605322d0157ff 100644 --- a/src/cheats/mod_EditChildCheatNew.tw +++ b/src/cheats/mod_EditChildCheatNew.tw @@ -2496,7 +2496,7 @@ <br> <</widget>> -<<widget TattoTab>> +<<widget TattooTab>> <br> ''Full-body Tattoos:''<br> <<link "[Tribal patterns]">> @@ -2757,7 +2757,7 @@ <<widget BrandTab>> ''Branding:'' - <p id="brandSelection"></p> + <p id="brand-selection"></p> <script> App.Medicine.Modification.Select.brand(V.tempSlave, true) </script> @@ -2866,7 +2866,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 1>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<NameTab>> @@ -2890,7 +2890,7 @@ <<FlaQuiTab>> <<StatisticTab>> <<PrestTab>> - <<TattoTab>> + <<TattooTab>> <<BrandTab>> <<PiercTab>> <</replace>> @@ -2907,7 +2907,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 1>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<NameTab>> @@ -2925,7 +2925,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 1>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<FamilyTab>> @@ -2943,7 +2943,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 1>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<NationalTab>> @@ -2961,7 +2961,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 1>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<AgeTab>> @@ -2979,7 +2979,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 1>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<DevoTab>> @@ -2997,7 +2997,7 @@ <<replace "#spot">> <<set _faceR = 1>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<FaceTab>> @@ -3015,7 +3015,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 1>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<HairTab>> @@ -3033,7 +3033,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 1>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<EyesTab>> @@ -3051,7 +3051,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 1>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<MouthTab>> @@ -3069,7 +3069,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 1>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<BodyTab>> @@ -3087,7 +3087,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 1>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<BellyTab>> @@ -3105,7 +3105,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 1>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<BreastsTab>> @@ -3123,7 +3123,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 1>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<ButtTab>> @@ -3141,7 +3141,7 @@ <<replace "#spot">><br> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 1>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<VagTab>> @@ -3159,7 +3159,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 1>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 1>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<PenisTab>> @@ -3177,7 +3177,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 1>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 1>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<SkillsTab>> @@ -3195,7 +3195,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 1>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 1>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<InteliTab>> @@ -3213,7 +3213,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 1>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 1>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<FetSexTab>> @@ -3231,7 +3231,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 1>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 1>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<FlaQuiTab>> @@ -3249,7 +3249,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 1>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<StatisticTab>> @@ -3267,7 +3267,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 1>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <br> @@ -3286,10 +3286,10 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 1>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 1>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> - <<TattoTab>> + <<TattooTab>> <</replace>> <<else>> <<replace "#spot">> @@ -3304,7 +3304,7 @@ <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 0>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 0>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 1>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<BrandTab>> @@ -3318,18 +3318,18 @@ /*-------------------------------------------------------------------------------------------------------------------------------*/ <<print " | " >> <<link "Piercings">> -<<if (ndef _piercR) || (_piercR == 0) >> +<<if (ndef _pierceR) || (_pierceR == 0) >> <<replace "#spot">> <<set _faceR = 0>><<set _nameR = 0>><<set _famR = 0>><<set _identR = 0>><<set _ageR = 0>><<set _devR = 0>><<set _hairR = 0>> <<set _descR = 0>><<set _eyesR = 0>><<set _mouthR = 0>><<set _bodyR = 0>><<set _titsR = 0>><<set _buttR = 0>><<set _vagR = 0>> - <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _piercR = 1>> + <<set _dickR = 0>><<set _skillsR = 0>><<set _intR = 0>><<set _sexR = 0>><<set _flawR = 0>><<set _tatsR = 0>><<set _pierceR = 1>> <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1R = 0>><<set _ecol2R = 0>><<set _ppilR = 0>><<set _sclrR = 0>> <<PiercTab>> <</replace>> <<else>> <<replace "#spot">> - <<set _piercR = 0>> + <<set _pierceR = 0>> <</replace>> <</if>> <</link>> @@ -3348,4 +3348,4 @@ /*.visualAge .ageImplant .birthWeek .health.condition .health.shortDamage .health.longDamage .health.illness .health.tired .chem .addict .devotion .oldDevotion .trust .oldTrust .face .faceShape .faceImplant .markings .bald .hLength .hStyle .hColor .origHColor*/ /*.eyebrowHColor .pubicHColor .pubicHStyle .underArmHColor .underArmHStyle .eyeColor .origEye .eyes .hears .lips .lipsImplant .teeth .voiceImplant .voice .accent .genes .amp .fuckdoll .muscles .weight*/ /*.waist .height .heightImplant .shoulders .shouldersImplant .hips .hipsImplant .bellyImplant .bellySag .burst .boobs .boobsImplant .boobsImplantType .lactation .boobShape .nipples .areolae*/ -/*.butt .buttImplant .anus .mpreg .vagina .vaginaLube .clit .labia .pubertyXX .pubertyAgeXX .crevixImplant .breedingMark .ovaries .preg .pregType .pregSource .dick .foreskin .balls*/ +/*.butt .buttImplant .anus .mpreg .vagina .vaginaLube .clit .labia .pubertyXX .pubertyAgeXX .cervixImplant .breedingMark .ovaries .preg .pregType .pregSource .dick .foreskin .balls*/ diff --git a/src/cheats/mod_EditInfantCheatNew.tw b/src/cheats/mod_EditInfantCheatNew.tw index 7010d35de063ede6e334695a1ffd343a3acf3863..a2974b8dfe78ddb19491e396920f71f023cc3e4a 100644 --- a/src/cheats/mod_EditInfantCheatNew.tw +++ b/src/cheats/mod_EditInfantCheatNew.tw @@ -2759,7 +2759,7 @@ <<widget BrandTab>> ''Branding:'' - <p id="brandSelection"></p> + <p id="brand-selection"></p> <script> App.Medicine.Modification.Select.brand(V.tempSlave, true) </script> diff --git a/src/cheats/mod_EditNeighborArcologyCheat.tw b/src/cheats/mod_EditNeighborArcologyCheat.tw index 00a2d0cdeaf34adc8c235ab8967c01524e5e2f15..fd59774f67f78870a21204681fb6ea08a2d1ee4f 100644 --- a/src/cheats/mod_EditNeighborArcologyCheat.tw +++ b/src/cheats/mod_EditNeighborArcologyCheat.tw @@ -16,8 +16,8 @@ <<for _eca = 0; _eca < $arcologies.length; _eca++>> <<set _seed.delete($arcologies[_eca].direction)>> /* remove directions already in use */ <</for>> - <<set _govtypes = ["a committee", "a corporation", "an individual", "an oligarchy", "direct democracy", "elected officials"]>> - <<set $activeArcology = {name: "Arcology X-", direction: _seed.random(), government: _govtypes.random(), honeymoon: 0, prosperity: 50, ownership: 50, minority: 20, PCminority: 0, demandFactor:0, FSSupremacist: "unset", FSSupremacistRace: 0, FSSubjugationist: "unset", FSSubjugationistRace: 0, FSGenderRadicalist: "unset", FSGenderFundamentalist: "unset", FSPaternalist: "unset", FSDegradationist: "unset", FSIntellectualDependency: "unset", FSSlaveProfessionalism: "unset", FSBodyPurist: "unset", FSTransformationFetishist: "unset", FSYouthPreferentialist: "unset", FSMaturityPreferentialist: "unset", FSStatuesqueGlorification: "unset", FSPetiteAdmiration: "unset", FSSlimnessEnthusiast: "unset", FSAssetExpansionist: "unset", FSPastoralist: "unset", FSPhysicalIdealist: "unset", FSChattelReligionist: "unset", FSRomanRevivalist: "unset", FSAztecRevivalist: "unset", FSEgyptianRevivalist: "unset", FSEdoRevivalist: "unset", FSArabianRevivalist: "unset", FSChineseRevivalist: "unset", FSNull: "unset", FSRepopulationFocus: "unset", FSHedonisticDecadence: "unset", FSCummunism: "unset", FSIncestFetishist: "unset", FSRestart: "unset", embargo: 1, embargoTarget: -1, influenceTarget: -1, influenceBonus: 0, rival: 0}>> + <<set _govTypes = ["a committee", "a corporation", "an individual", "an oligarchy", "direct democracy", "elected officials"]>> + <<set $activeArcology = {name: "Arcology X-", direction: _seed.random(), government: _govTypes.random(), honeymoon: 0, prosperity: 50, ownership: 50, minority: 20, PCminority: 0, demandFactor:0, FSSupremacist: "unset", FSSupremacistRace: 0, FSSubjugationist: "unset", FSSubjugationistRace: 0, FSGenderRadicalist: "unset", FSGenderFundamentalist: "unset", FSPaternalist: "unset", FSDegradationist: "unset", FSIntellectualDependency: "unset", FSSlaveProfessionalism: "unset", FSBodyPurist: "unset", FSTransformationFetishist: "unset", FSYouthPreferentialist: "unset", FSMaturityPreferentialist: "unset", FSStatuesqueGlorification: "unset", FSPetiteAdmiration: "unset", FSSlimnessEnthusiast: "unset", FSAssetExpansionist: "unset", FSPastoralist: "unset", FSPhysicalIdealist: "unset", FSChattelReligionist: "unset", FSRomanRevivalist: "unset", FSAztecRevivalist: "unset", FSEgyptianRevivalist: "unset", FSEdoRevivalist: "unset", FSArabianRevivalist: "unset", FSChineseRevivalist: "unset", FSNull: "unset", FSRepopulationFocus: "unset", FSHedonisticDecadence: "unset", FSCummunism: "unset", FSIncestFetishist: "unset", FSRestart: "unset", embargo: 1, embargoTarget: -1, influenceTarget: -1, influenceBonus: 0, rival: 0}>> <<if $arcologies.length < 4>> /* X-4 is reserved for player's arcology, so X-1 is available */ <<set $activeArcology.name += ($arcologies.length)>> diff --git a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw index 043d863a43e53d02bd68d7404ded8b01fa599212..41ee8e1e832badd9f695a8e7afe8efe7fce17bd4 100644 --- a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw +++ b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw @@ -151,8 +151,8 @@ <<elseif $tempSlave.tail == "combat" && !isProstheticAvailable($tempSlave, "combatT")>><<run addProsthetic($tempSlave, "combatT")>> <<elseif $tempSlave.tail == "mod">> <<if !isProstheticAvailable($tempSlave, "modT")>><<run addProsthetic($tempSlave, "modT")>><</if>> - <<if $tempSlave.tailShape == "none">><<print "Tailshape was missing: set to Cat">><<set $tempSlave.tailShape = "neko">><br><</if>> - <<if $tempSlave.tailColor == "none">><<print "Tailcolor was missing: set to original haircolor">><<set $tempSlave.tailColor = $tempSlave.origHColor>><br><</if>> + <<if $tempSlave.tailShape == "none">><<print "Tail shape was missing: set to Cat">><<set $tempSlave.tailShape = "neko">><br><</if>> + <<if $tempSlave.tailColor == "none">><<print "Tail color was missing: set to original hair color">><<set $tempSlave.tailColor = $tempSlave.origHColor>><br><</if>> <</if>> <<if (ndef $tempSlave.pubertyXX) && ($tempSlave.physicalAge >= $tempSlave.pubertyAgeXX)>> <<set $tempSlave.pubertyXX = 1>> diff --git a/src/cheats/mod_editSlaveCheatNew.tw b/src/cheats/mod_editSlaveCheatNew.tw index c3a3e1dad083ce6b810f230635604e4c332b29b3..f13f2a7490cee55c638fbe003ee7cb90f5785f7b 100644 --- a/src/cheats/mod_editSlaveCheatNew.tw +++ b/src/cheats/mod_editSlaveCheatNew.tw @@ -4009,7 +4009,7 @@ <br> <</widget>> -<<widget TattoTab>> +<<widget TattooTab>> <br> ''Full-body Tattoos:''<br> <<link "[Tribal patterns]">> @@ -4270,7 +4270,7 @@ <<widget BrandTab>> ''Branding:'' - <p id="brandSelection"></p> + <p id="brand-selection"></p> <script> App.Medicine.Modification.Select.brand(V.tempSlave, true) </script> @@ -4405,7 +4405,7 @@ <<GenQuiTab>> <<StatisticTab>> <<PrestTab>> - <<TattoTab>> + <<TattooTab>> <<BrandTab>> <<PiercTab>> <</replace>> @@ -4845,7 +4845,7 @@ <<set _sAllR = 0>><<set _natR = 0>><<set _carR = 0>><<set _bellyR = 0>><<set _useR = 0>><<set _brandR = 0>><<set _hcol5R = 0>><<set _hcol4R = 0>> <<set _hcol3R = 0>><<set _hcol2R = 0>><<set _hcol1R = 0>><<set _ecol1RR = 0>><<set _ecol1RL = 0>><<set _ecol2R = 0>><<set _ppilRR = 0>><<set _ppilRL = 0>> <<set _sclrRR = 0>><<set _sclrRL = 0>> - <<TattoTab>> + <<TattooTab>> <</replace>> <<else>> <<replace "#spot">> diff --git a/src/data/backwardsCompatibility/BackwardsCompatibility.tw b/src/data/backwardsCompatibility/BackwardsCompatibility.tw index 1e4b86c77fe8a8538bb8c6f13d27f88206c66689..0a3ff856077b2e720b146f89553a7100f218f495 100644 --- a/src/data/backwardsCompatibility/BackwardsCompatibility.tw +++ b/src/data/backwardsCompatibility/BackwardsCompatibility.tw @@ -6,7 +6,7 @@ /* resetOnNGPlus contains half of the variables we need, but we use it politely here instead of forcing it so it fills in holes instead of overwriting data */ <<run App.Update.setNonexistentProperties(V, App.Data.resetOnNGPlus)>> -<span id="backwardsCompatibility"></span> +<span id="backwards-compatibility"></span> <script> App.Update.backwardsCompatibility(); </script> \ No newline at end of file diff --git a/src/data/backwardsCompatibility/backwardsCompatibility.js b/src/data/backwardsCompatibility/backwardsCompatibility.js index d4c5b9282ba73a30f83b818ea75f303211d958f2..4a83fd418802d8a0e4f39c858e278c3470a2b590 100644 --- a/src/data/backwardsCompatibility/backwardsCompatibility.js +++ b/src/data/backwardsCompatibility/backwardsCompatibility.js @@ -1,3 +1,4 @@ +// @ts-nocheck /* eslint-disable no-lone-blocks */ App.Update.autoshred = function(node) { const set = new Set( @@ -39,7 +40,7 @@ App.Update.setNonexistentProperties = function(obj, props) { return console.log(`Set up ${count} variables.`); }; -App.Update.setExistantProperties = function(obj, array) { +App.Update.setExistentProperties = function(obj, array) { for (let p in array) { if (Array.isArray(array[p])){ obj[p] = Array.from(array[p]); @@ -55,65 +56,65 @@ App.Update.setExistantProperties = function(obj, array) { App.Update.backwardsCompatibility = function() { let div; - jQuery('#backwardsCompatibility').empty(); + jQuery('#backwards-compatibility').empty(); try { div = document.createElement('div'); div.append(`Check for old version... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.oldVersions(div); div = document.createElement('div'); div.append(`Updating gene pool records... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.genePoolRecords(div); div = document.createElement('div'); div.append(`Updating global variables... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.globalVariables(div); div = document.createElement('div'); div.append(`Updating slave variables... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.slaveVariables(div); div = document.createElement('div'); div.append(`Updating slave records... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.slaveRecords(div); div = document.createElement('div'); div.append(`Updating Rule Assistant data... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.RAassistantData(div); // Sec Exp div = document.createElement('div'); div.append(`Updating Security Expansion... `); - jQuery('#backwardsCompatibility').append(div); - App.SecExp.Check.general(); - if (V.secExpEnabled === 1) { + jQuery('#backwards-compatibility').append(div); + App.SecExp.generalBC(); + if (V.secExpEnabled > 0) { div.append(App.UI.DOM.renderPassage("SecExpBackwardCompatibility")); } div = document.createElement('div'); div.append(`Checking for old variables... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.autoshred(div); // leave this at the bottom of BC div = document.createElement('div'); div.append(`Cleaning up... `); - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); App.Update.cleanUp(div); App.UI.SlaveSummary.settingsChanged(); } catch (error) { div = document.createElement('p'); div.className = "red"; div.textContent = `Backwards compatibility has failed for your save. Please upload your save to https://gitgud.io/pregmodfan/fc-pregmod/ with notes on what went wrong so that we can fix the backwards compatibility process for everyone. Thank you!`; - jQuery('#backwardsCompatibility').append(div); + jQuery('#backwards-compatibility').append(div); State.restore(); - throw (error); // rethrow the exception to Sugarcube so we get a fancy stack trace + throw (error); // rethrow the exception to SugarCube so we get a fancy stack trace } }; @@ -1342,7 +1343,7 @@ App.Update.slaveRecords = function(node) { child.inbreedingCoeff = ibc.coeff(child); } else { App.Update.Slave(child); - App.Entity.Utils.SlaveDataSchemeCleanup(child, true); + App.Entity.Utils.SlaveDataSchemeCleanup(child); App.Facilities.Nursery.ChildDatatypeCleanup(child); } }); diff --git a/src/debugging/debugWidgets.tw b/src/debugging/debugWidgets.tw index 4cf0f2cefe46a2bce014c1053c6460de6675158f..7537a9eee2d68dc490fe63343e7ec7a72e4c817e 100644 --- a/src/debugging/debugWidgets.tw +++ b/src/debugging/debugWidgets.tw @@ -27,9 +27,9 @@ Differences: <br> Variable: <<print _diffArrayFromNew[_i].variable>>, Original Value: <<print _diffArrayFromNew[_i].oldVal>>, New Value: <<print _diffArrayFromNew[_i].newVal>> <</if>> <</for>><br> - <span id="extraInfo"> + <span id="extra-info"> <<link "Show more">> - <<replace "#extraInfo">> + <<replace "#extra-info">> Alternate display: <<for _i = 0; _i < _diffArrayFromOld.length; _i++>> /* Print variable names, and changed values. Will output the old values correctly, may not output new values correctly */ <<if _diffArrayFromOld[_i].variable != "nextButton" && _diffArrayFromOld[_i].variable != "nextLink" && _diffArrayFromOld[_i].variable != "args">> diff --git a/src/descriptions/familySummaries.js b/src/descriptions/familySummaries.js index f962d0a076090a3469a5eaaa5bc7c7ab0ccff19d..9c0c80efc51d2e535c4fefa23799a0bf3b111e54 100644 --- a/src/descriptions/familySummaries.js +++ b/src/descriptions/familySummaries.js @@ -492,15 +492,17 @@ App.Desc.family = (function() { if (V.inbreeding && slave.inbreedingCoeff > 0) { r.push(`${He} is`); - if (slave.inbreedingCoeff >= 0.5) + if (slave.inbreedingCoeff >= 0.5) { r.push("extremely"); - else if (slave.inbreedingCoeff >= 0.25) + } else if (slave.inbreedingCoeff >= 0.25) { r.push("very"); - else if (slave.inbreedingCoeff >= 0.125); - else if (slave.inbreedingCoeff >= 0.0625) + } else if (slave.inbreedingCoeff >= 0.125) { + + } else if (slave.inbreedingCoeff >= 0.0625) { r.push("somewhat"); - else + } else { r.push("slightly"); + } r.push(`inbred, with a CoI of ${slave.inbreedingCoeff}.`); } @@ -691,15 +693,16 @@ App.Desc.family = (function() { if (V.inbreeding && V.PC.inbreedingCoeff > 0) { r.push(`You are`); - if (V.PC.inbreedingCoeff >= 0.5) + if (V.PC.inbreedingCoeff >= 0.5) { r.push("extremely"); - else if (V.PC.inbreedingCoeff >= 0.25) + } else if (V.PC.inbreedingCoeff >= 0.25) { r.push("very"); - else if (V.PC.inbreedingCoeff >= 0.125); // No adjective in this case - else if (V.PC.inbreedingCoeff >= 0.0625) + } else if (V.PC.inbreedingCoeff >= 0.125) { // No adjective in this case + } else if (V.PC.inbreedingCoeff >= 0.0625) { r.push("somewhat"); - else + } else { r.push("slightly"); + } r.push(`inbred, with a CoI of ${V.PC.inbreedingCoeff}.`); } diff --git a/src/endWeek/reports/childrenReport.js b/src/endWeek/reports/childrenReport.js index 5090f870b49714888ba806a6b3bf95f8360193ac..29f67ea80a00344cb28255c2d56eb1e766c3f1e8 100644 --- a/src/endWeek/reports/childrenReport.js +++ b/src/endWeek/reports/childrenReport.js @@ -62,7 +62,6 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { function matronFetishEffects(child) { const - { He } = getPronouns(child), chance = jsRandom(1, 100); if ((chance > 90 && child.fetish === "none") || chance > 95) { @@ -75,7 +74,7 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { function matronEducationEffects(child) { // TODO: expand this const - { he, him, his } = getPronouns(Matron), + {he, him, his} = getPronouns(Matron), theChildren = CL > 1 ? `the children` : `${child.slaveName}`; @@ -115,7 +114,7 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { function nannyFetishEffects(child, slave) { const - { he } = getPronouns(child), + {he} = getPronouns(child), chance = jsRandom(1, 100); if (chance > 85) { @@ -174,7 +173,7 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { // TODO: double check these classes, make sure they make sense const span = document.createElement("span"), - { he, He, His } = getPronouns(child); + {he, He, His} = getPronouns(child); if (V.nurseryWeight) { const @@ -237,7 +236,9 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { if (V.nurseryMuscles) { const caretaker = Matron ? Matron.slaveName : NL > 1 ? `A nanny` : firstNanny.slaveName, - firstNanny = NL > 0 ? nannies[0] : null; + firstNanny = NL > 0 ? nannies[0] : null, + {His, He, he} = getPronouns(child); + const muscleSpan = App.UI.DOM.makeElement("div", 'rapid muscle development.', "improvement"); @@ -301,7 +302,7 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { div = document.createElement("div"), - { his } = getPronouns(target), + {his} = getPronouns(target), chance = jsRandom(1, 100); let @@ -501,7 +502,7 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { case "dom": return `is now very sexually dominant`; case "pregnancy": - return `has developed a facination for all things pregnancy-related`; + return `has developed a fascination for all things pregnancy-related`; default: throw `<span class="error">Unexpected fetish value of "${fetish}" in newChildFetish(). Please report this.</span>`; } @@ -513,7 +514,7 @@ App.Facilities.Nursery.childrenReport = function childrenReport() { limeSpan = App.UI.DOM.makeElement("span", 'ready for release.', "lime"), mainSpan = document.createElement("span"), - { He } = getPronouns(child); + {He} = getPronouns(child); if (child.growTime > 0) { mainSpan.append(nameSpan, ` is growing steadily. ${He} will be ready for release in about ${years(child.growTime)}. `); diff --git a/src/endWeek/reports/nurseryReport.js b/src/endWeek/reports/nurseryReport.js index a365777f6b1a643f0105a02c9830d937e700a8f5..a16fb07e58cc03db4c504dc358221514b4d98aaf 100644 --- a/src/endWeek/reports/nurseryReport.js +++ b/src/endWeek/reports/nurseryReport.js @@ -45,7 +45,7 @@ App.Facilities.Nursery.nurseryReport = function nurseryReport() { function matronText() { if (S.Matron) { const - { He, he, His, his, him } = getPronouns(S.Matron); + {He, he, His, his, him} = getPronouns(S.Matron); let r = []; @@ -209,7 +209,7 @@ App.Facilities.Nursery.nurseryReport = function nurseryReport() { if (V.showEWD) { const - { He } = getPronouns(slave), + {He} = getPronouns(slave), slaveEntry = App.UI.DOM.appendNewElement("div", frag, '', "slave-report"); if (V.seeImages && V.seeReportImages) { diff --git a/src/endWeek/saRules_old.js b/src/endWeek/saRules_old.js index 98cc22ed1c79e18a697c6caf9871a7219b4ccd74..c42885ca8a26176810cdd5e2e8708829b1ac5f59 100644 --- a/src/endWeek/saRules_old.js +++ b/src/endWeek/saRules_old.js @@ -133,6 +133,7 @@ } r += `${masturbationDrugEffects(slave)}`; } else { // hasNonassignmentSex is true + const whom = (release.slaves === 1) ? `other slaves` : `${his} family`; if (!App.Utils.hasFamilySex(slave) && release.slaves === 0) { // no family and no other slaves, so must be his partner r += `finds frequent sexual release with ${his} ${relationshipTerm(slave)} <span class="lightgreen">${getSlave(slave.relationshipTarget).slaveName},</span> which ${he} is <span class="mediumaquamarine">thankful for.</span> `; @@ -140,7 +141,6 @@ slave.need -= 20; // TODO: probably should be based on BOTH slaves' need, leaving the less needy partner slightly frustrated slave.trust++; } else if (!V.universalRulesConsent) { - const whom = (release.slaves === 1) ? `other slaves` : `${his} family`; if (slave.devotion <= 20) { if (slave.trust > -20) { if (release.masturbation === 1) { diff --git a/src/endWeek/saTakeClasses.js b/src/endWeek/saTakeClasses.js index a228e653b822381ef65e633464539488cdede8e8..49b307ab266eccc1503e1f770231064366dd9973 100644 --- a/src/endWeek/saTakeClasses.js +++ b/src/endWeek/saTakeClasses.js @@ -483,7 +483,7 @@ App.SlaveAssignment.takeClasses = (function() { if (V.cash > cost) { cashX(forceNeg(cost), "capEx"); switch (tutorForSlave(slave)) { - case "Headgirl": + case "HeadGirl": if (slave.skill.headGirl <= 10) { r += ` ${He} is so unskilled that the tutor teaches ${him} the basics. ${He} learns how to make slaves obey ${him} and how to treat minor injuries.`; } else if (slave.skill.headGirl <= 30) { @@ -493,17 +493,17 @@ App.SlaveAssignment.takeClasses = (function() { } else if (slave.skill.headGirl <= 100) { r += ` Now that ${he} has mastered individual skills, ${he} is taught to assist you in running the arcology as a whole. ${He} learns how the security systems work, and how to make every slave perform at their best.`; } - r += ` ${SkillIncrease.Headgirl(slave, skillIncrease)}`; + r += ` ${SkillIncrease.HeadGirl(slave, skillIncrease)}`; break; case "Recruiter": if (slave.skill.recruiter <= 10) { r += ` The tutor starts teaching ${him} the basics. ${He} is given lessons on conversing, pronunciation, style and fashion.`; } else if (slave.skill.recruiter <= 30) { - r += ` Having been taught the basics by ${his} tutor, ${he} is no longer awkard in conversation. But ${he} has a long way to go, the tutor teaches ${him} how to carry ${himself} and how to interpret others' non-verbal cues.`; + r += ` Having been taught the basics by ${his} tutor, ${he} is no longer awkward in conversation. But ${he} has a long way to go, the tutor teaches ${him} how to carry ${himself} and how to interpret others' non-verbal cues.`; } else if (slave.skill.recruiter <= 60) { - r += ` The tutor has ${him} practice convincing others. ${He} watches online lectures on slave pschyology, and applies it in practice by convincing others to make unfavorable deals.`; + r += ` The tutor has ${him} practice convincing others. ${He} watches online lectures on slave psychology, and applies it in practice by convincing others to make unfavorable deals.`; } else if (slave.skill.recruiter <= 100) { - r += ` Every move ${he} makes is practiced and calculated, yet looks entirely natural. He has ${him} continue attending lectures on pschyology, and sends ${him} out to convince free citizens to let themselves get voluntarily enslaved.`; + r += ` Every move ${he} makes is practiced and calculated, yet looks entirely natural. He has ${him} continue attending lectures on psychology, and sends ${him} out to convince free citizens to let themselves get voluntarily enslaved.`; } r += ` ${SkillIncrease.Recruiter(slave, skillIncrease)}`; break; diff --git a/src/endWeek/sexualServices.js b/src/endWeek/sexualServices.js index 03209ba35478f8f2d42bf86120d6ae72d5897661..fe209c76ece98a8d2b462d9e8436ebde6fd3fc29 100644 --- a/src/endWeek/sexualServices.js +++ b/src/endWeek/sexualServices.js @@ -5,7 +5,7 @@ App.EndWeek.computeSexualServicesModel = function(renderContainer) { const arcology = V.arcologies[0]; /* Sexual services demand per class */ - /* We can add milk etc. to this as well, though this is a good that can be traded beyond the arcology and also needs its own market much like the slavemarket. TODO */ + /* We can add milk etc. to this as well, though this is a good that can be traded beyond the arcology and also needs its own market much like the slave market. TODO */ /* In the default scenario these numbers indicate the amount of money each individual citizen of a particular class is looking to spend on sex (and milk) every week Depending on the conditions they may derive more or less 'utility' out of their credits spent i.e. a highly paternalist arcology with little choice for its lower class but Fuckdolls may still put money into them but not get the same satisfaction out of it*/ diff --git a/src/events/RESS/assFitting.js b/src/events/RESS/assFitting.js index 58d170a2c9524893c1b4ae391cbbbc0ed330eaa7..6e29e104937c42495eda812701eb761c6cf1bb87 100644 --- a/src/events/RESS/assFitting.js +++ b/src/events/RESS/assFitting.js @@ -21,7 +21,7 @@ App.Events.RESSAssFitting = class RESSAssFitting extends App.Events.BaseEvent { /** @type {Array<App.Entity.SlaveState>} */ let [eventSlave] = this.actors.map(a => getSlave(a)); const { - He, he, His, his, hers, him, himself, girl + He, he, His, his, him } = getPronouns(eventSlave); const {title: Master} = getEnunciation(eventSlave); diff --git a/src/events/RESS/frighteningDick.js b/src/events/RESS/frighteningDick.js index d8e44b8aa08da94bae98d58900ddb6937e503aa7..ba364ce5f47fd9249da6fa51bdc679fb95ef7102 100644 --- a/src/events/RESS/frighteningDick.js +++ b/src/events/RESS/frighteningDick.js @@ -114,7 +114,7 @@ App.Events.RESSFrighteningDick = class RESSFrighteningDick extends App.Events.Ba t.push(`Sometimes there's really no need to overthink things. You reach down, grab ${him} under the armpits, and haul ${him} up, throwing ${him} across your desk. ${He} lands on ${his} back, and the impact drives the wind out of ${him}, so ${he} lies there, <span class="gold">all possibility of resistance driven out of ${him}.</span> ${eventSlave.clothes === "no clothing" ? `${He}'s already naked, so there's no need to` : "You"} tear the clothes off ${him}. You force yourself in between ${his} legs as ${he} struggles to get ${his} breath back, and ${he} gets another good look at the formidable dick that's about to be slammed inside ${him}`); if (eventSlave.belly >= 5000) { - t.push(`before it disappears beneath ${his} ${eventSlave.bellyPreg >= 3000 ? "pregnant" : belly } belly`); + t.push(`before it disappears beneath ${his} ${eventSlave.bellyPreg >= 3000 ? "pregnant" : belly} belly`); } t.push(t.pop() + `. ${His} eyes go wide with fear, and you enhance the effect by smacking yourself against`); if (canDoVaginal(eventSlave)) { diff --git a/src/events/RESS/hotPC.js b/src/events/RESS/hotPC.js index a3f6d88267a008431a994c1a3cbd1b41d32dcd3a..979e8391bf00079eaa8d82ea95fa31c5d4baf7ed 100644 --- a/src/events/RESS/hotPC.js +++ b/src/events/RESS/hotPC.js @@ -25,7 +25,7 @@ App.Events.RESSHotPC = class RESSHotPC extends App.Events.BaseEvent { /** @type {Array<App.Entity.SlaveState>} */ let [eventSlave] = this.actors.map(a => getSlave(a)); const { - He, he, His, his, hers, him, himself, girl + He, he, His, his, him, himself } = getPronouns(eventSlave); const {s, S, ss, title: Master} = getEnunciation(eventSlave); diff --git a/src/events/RESS/imScared.js b/src/events/RESS/imScared.js index 8df132ff2c21793c445e651a2e4250edd2d23297..16194753bcb3073569a5ae0e907894b2f89bfbd5 100644 --- a/src/events/RESS/imScared.js +++ b/src/events/RESS/imScared.js @@ -85,7 +85,7 @@ App.Events.RESSImScared = class RESSImScared extends App.Events.BaseEvent { t.push(`${he} screams as you open the box for ${him}. ${He} knows that if ${he} doesn't climb in, it'll be longer before ${he}'s let out, so ${he} does, scrabbling inside and sobbing desperately as you close the lid.`); break; case "whipping": - t.push(`whipped. <span class="gold">${He} breaks down,</span> falling to ${his} knees, begging abjectly for mercy. "It'll h-hu-hurt," ${he} blubbers weakly as you attach ${his} handif (hasBothArms(eventSlave)) {s} to shackles high on the office wall. The first stroke across ${his} buttocks draws a long shriek out of ${him}.`); + t.push(`whipped. <span class="gold">${He} breaks down,</span> falling to ${his} knees, begging abjectly for mercy. "It'll h-hu-hurt," ${he} blubbers weakly as you attach ${his} ${hasBothArms(eventSlave) ? "hands" : "hand"} to shackles high on the office wall. The first stroke across ${his} buttocks draws a long shriek out of ${him}.`); break; case "chastity": t.push(`locked up in chastity. <span class="gold">${He} breaks down,</span> falling to ${his} knees, begging abjectly for mercy. "I c-can't," ${he} moans. "I can't take it. I can't stand it." As you lock the chastity onto ${him}, ${he} sobs inconsolably, knowing that any arousal will be torturous until ${he}'s released.`); diff --git a/src/events/RESS/moistPussy.js b/src/events/RESS/moistPussy.js index 9d3c7648699f7a2149a73fd7f0b2fec565706550..2377d370f6b5814e3b5b728087ca7621ce5c445d 100644 --- a/src/events/RESS/moistPussy.js +++ b/src/events/RESS/moistPussy.js @@ -19,7 +19,7 @@ App.Events.RESSMoistPussy = class RESSMoistPussy extends App.Events.BaseEvent { /** @type {Array<App.Entity.SlaveState>} */ let [eventSlave] = this.actors.map(a => getSlave(a)); const { - He, he, His, his, hers, him, himself, girl + He, he, His, his, him } = getPronouns(eventSlave); const belly = bellyAdjective(eventSlave); diff --git a/src/events/RESS/muscles.js b/src/events/RESS/muscles.js index 607fcc050f65017adeeb0124c6df3db82b0ac559..5aaf4e91e5ac3b5e024cc4f2c1541120a414ea97 100644 --- a/src/events/RESS/muscles.js +++ b/src/events/RESS/muscles.js @@ -90,13 +90,13 @@ App.Events.RESSMuscles = class RESSMuscles extends App.Events.BaseEvent { } else { t.push(`As ${he} lies still,`); if (V.PC.dick === 0) { - t.push(`you lift one of ${his} legs and straddle yourself in to bring your groin against ${hers}. It's a strange sensation, this mass of muscle lying quietly still beneath you, whimpering with delight as you gently scissor yourself against ${him}. ${He} comes in no time at all. When ${he} does ${he} squeezes you between vicelike thighs, ${V.PC.vagina !== -1 ? "pressing your pussy deliciously and" : ""} bringing you to climax, too.`); + t.push(`you lift one of ${his} legs and straddle yourself in to bring your groin against ${hers}. It's a strange sensation, this mass of muscle lying quietly still beneath you, whimpering with delight as you gently scissor yourself against ${him}. ${He} comes in no time at all. When ${he} does ${he} squeezes you between vice-like thighs, ${V.PC.vagina !== -1 ? "pressing your pussy deliciously and" : ""} bringing you to climax, too.`); } else { t.push(`you slowly push your cock into ${his}`); if (canDoVaginal(eventSlave)) { t.push(`pussy; ${he}'s so relaxed from the massage that it slides in easily.`); t.push(VCheck.Vaginal(1, eventSlave)); - t.push(`It's a strange sensation, this mass of muscle lying quietly still beneath you, whimpering with delight as you gently penetrate ${him}. ${He} comes in no time at all. When ${he} does you happen to be halfway inside ${him}; ${he} wraps ${his} legs around you and pulls you into ${his} depths. You explode into ${him} as ${he} holds you in place with ${his} vicelike thighs.`); + t.push(`It's a strange sensation, this mass of muscle lying quietly still beneath you, whimpering with delight as you gently penetrate ${him}. ${He} comes in no time at all. When ${he} does you happen to be halfway inside ${him}; ${he} wraps ${his} legs around you and pulls you into ${his} depths. You explode into ${him} as ${he} holds you in place with ${his} vice-like thighs.`); } else { t.push(`ass; ${he}'s so relaxed from the massage that it slides in easily.`); t.push(VCheck.Anal(1, eventSlave)); diff --git a/src/events/RESS/obedientGirlish.js b/src/events/RESS/obedientGirlish.js index 5900257f1235057431b562b56ebbc8d16dea5471..8767676e5902d31093be6d3a788f729f76d0b787 100644 --- a/src/events/RESS/obedientGirlish.js +++ b/src/events/RESS/obedientGirlish.js @@ -88,7 +88,7 @@ App.Events.RESSObedientGirlish = class RESSObedientGirlish extends App.Events.Ba function dress() { t = []; - t.push(`You let ${eventSlave.slaveName} don a nice dress and take ${him} out ${!canWalk(eventSlave) ? "in a wheelchair" : ""}. ${He}'s a little suspicious at first but when you reach the first balcony on your lazy route around the huge building the sun on ${his} face and the gentle breeze around ${his} ears convince ${him} there's no trick. ${He} watches you shyly as you lead ${him} around, soaking in the sights and relaxing. Though you still speak as ${his} ${WrittenMaster(eventSlave)}, you chat about goings on around the arcology, and you buy ${him} a fresh fruit from a vendor. The unexpected show of care and compassion has ${him} quite agog. By the time you take ${him} out onto another parklike balcony and fuck ${him} on a bench,`); + t.push(`You let ${eventSlave.slaveName} don a nice dress and take ${him} out ${!canWalk(eventSlave) ? "in a wheelchair" : ""}. ${He}'s a little suspicious at first but when you reach the first balcony on your lazy route around the huge building the sun on ${his} face and the gentle breeze around ${his} ears convince ${him} there's no trick. ${He} watches you shyly as you lead ${him} around, soaking in the sights and relaxing. Though you still speak as ${his} ${WrittenMaster(eventSlave)}, you chat about goings on around the arcology, and you buy ${him} a fresh fruit from a vendor. The unexpected show of care and compassion has ${him} quite agog. By the time you take ${him} out onto another park-like balcony and fuck ${him} on a bench,`); if (eventSlave.dick > 0 && eventSlave.chastityPenis === 1 && eventSlave.chastityAnus === 1) { t.push(`${his} combined chastity cage and anal chastity belt makes ${him} move awkwardly.`); } else if (eventSlave.dick > 0 && eventSlave.chastityPenis === 1) { diff --git a/src/events/RESS/retchingCum.js b/src/events/RESS/retchingCum.js index a8e6ebdbf19eaea598aad498b577dbeddb13b454..f49ce0e31a0c9ae5d89dbb98cbe8d20b3e1aaec0 100644 --- a/src/events/RESS/retchingCum.js +++ b/src/events/RESS/retchingCum.js @@ -21,7 +21,7 @@ App.Events.RESSRetchingCum = class RESSRetchingCum extends App.Events.BaseEvent /** @type {Array<App.Entity.SlaveState>} */ let [eventSlave] = this.actors.map(a => getSlave(a)); const { - He, he, His, his, hers, him, himself, girl + He, he, His, his, him, girl } = getPronouns(eventSlave); V.nextLink = "Next Week"; diff --git a/src/events/RESS/slaveOnSlaveDick.js b/src/events/RESS/slaveOnSlaveDick.js index 435260fe9180a2373a22a705498dc3568f6e1610..4978555768b94d8d4246036e5a6360c4431bb0d9 100644 --- a/src/events/RESS/slaveOnSlaveDick.js +++ b/src/events/RESS/slaveOnSlaveDick.js @@ -42,7 +42,7 @@ App.Events.RESSSlaveOnSlaveDick = class RESSSlaveOnSlaveDick extends App.Events. } else if (eventSlave.dick <= 4) { t.push(`long cock.`); } else if (eventSlave.dick > 4) { - t.push(`huge, horselike phallus.`); + t.push(`huge, horse-like phallus.`); } t.push(`Since you gave ${him} orders that permit ${him} to fuck your other slaves, ${he}'s been fucking them whenever ${he} can. The other slave is`); if (eventSlave.dick <= 2) { diff --git a/src/events/RESS/tooThinForCumDiet.js b/src/events/RESS/tooThinForCumDiet.js index c2c416234e03caf2ef8a7f0b07a3549db7ba2027..e4a1cd5962ad4b374d58f3519ff4a7acae5cb4c2 100644 --- a/src/events/RESS/tooThinForCumDiet.js +++ b/src/events/RESS/tooThinForCumDiet.js @@ -29,7 +29,7 @@ App.Events.RESSTooThinForCumDiet = class RESSTooThinForCumDiet extends App.Event /** @type {Array<App.Entity.SlaveState>} */ let [eventSlave] = this.actors.map(a => getSlave(a)); const { - He, he, His, his, hers, him, himself, girl + He, he, His, his, him, girl } = getPronouns(eventSlave); const {title: Master} = getEnunciation(eventSlave); diff --git a/src/events/eventUtils.js b/src/events/eventUtils.js index 141c1e108f7f068f0ed205496264df48ab480b09..5eaf384ca872d04783dedb6a0bd1c4fbae86f3e0 100644 --- a/src/events/eventUtils.js +++ b/src/events/eventUtils.js @@ -52,7 +52,7 @@ App.Events.drawEventArt = (function() { // actually draw the art - large if single slave, medium column if multiple slaves let artSpan = document.createElement("span"); - artSpan.id = "artFrame"; + artSpan.id = "art-frame"; if (slaves.length === 1) { let refDiv = document.createElement("div"); refDiv.classList.add("imageRef", V.imageChoice === 1 ? "lrgVector" : "lrgRender"); diff --git a/src/events/intro/initNationalities.js b/src/events/intro/initNationalities.js index f51b5c17c7e3822af12a1cdd97a7fde0b8273650..b6a93a5c228d88da1f984d310430313884930610 100644 --- a/src/events/intro/initNationalities.js +++ b/src/events/intro/initNationalities.js @@ -2,7 +2,7 @@ App.Intro.initNationalities = function() { function initSecExp() { /* base vars */ V.SecExp = SecExpBase(); - App.SecExp.Check.general(); + App.SecExp.generalBC(); V.secUpgrades = { nanoCams: 0, cyberBots: 0, @@ -544,7 +544,7 @@ App.Intro.initNationalities = function() { /* Nationalities Setup */ - delete V.nationalitiescheck; /* Removes unique nationalities array to avoid var bloat */ + delete V.nationalitiesCheck; /* Removes unique nationalities array to avoid var bloat */ if (!V.customVariety) { /* If non-custom variety, empties or defines $nationalities */ diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw index 35225adac6b0da45fc6ef9314aaef9dbf3b54eed..8f268af067f0a75cddb306aebc34e958ed2ecaca 100644 --- a/src/events/intro/introSummary.tw +++ b/src/events/intro/introSummary.tw @@ -97,14 +97,14 @@ You may review your settings before clicking "Continue" to begin.<br> <<run App.UI.tabbar.handlePreSelectedTab($tabChoice.IntroSummary)>> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'World')" id="tab World">World</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'slaves')" id="tab slaves">Slaves</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'PC')" id="tab PC">Player Character</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'UI')" id="tab UI">UI</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'World')" id="tab World">World</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'slaves')" id="tab slaves">Slaves</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'PC')" id="tab PC">Player Character</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'UI')" id="tab UI">UI</button> </div> -<div id="UI" class="tabcontent"> +<div id="UI" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -137,7 +137,7 @@ You may review your settings before clicking "Continue" to begin.<br> <<set _options = new App.UI.OptionsGroup()>> <<run _options.addOption("", "imageChoice") - .addValueList([["Revamped embedded vector art", 3], ["Non-embedded vector art", 2], ["NoX/Deepmurk's vector art", 1], ["Shokushu's rendered imagepack", 0]])>> + .addValueList([["Revamped embedded vector art", 3], ["Non-embedded vector art", 2], ["NoX/Deepmurk's vector art", 1], ["Shokushu's rendered image pack", 0]])>> <<if $imageChoice === 1>> <<run _options.addOption("").addComment('<span class="warning">Git compiled only, no exceptions.</span>')>> @@ -182,7 +182,7 @@ You may review your settings before clicking "Continue" to begin.<br> </div> </div> -<div id="World" class="tabcontent"> +<div id="World" class="tab-content"> <div class="content"> <h2>Economy</h2> @@ -239,14 +239,14 @@ You may review your settings before clicking "Continue" to begin.<br> .customButton("Adjust the slave trade", () => {V.customWA = 0; V.customVariety = 1}, "Customize Slave Trade") .customButton("Stop customizing", () => {delete V.customVariety})>> - <<if ndef $nationalitiescheck>> /* NGP: regenerate $nationalitiescheck from previous game's $nationalities array */ + <<if ndef $nationalitiesCheck>> /* NGP: regenerate $nationalitiesCheck from previous game's $nationalities array */ <div id="SilentlyButWithStyle" style="display: none;"><<include "Customize Slave Trade">></div> <</if>> <<run _options.addOption("").addCustomElement(` <hr style="margin:0"> - <<set _len = Object.keys($nationalitiescheck).length>> + <<set _len = Object.keys($nationalitiesCheck).length>> <<set _j = 0>> - <<for _nation, _i range $nationalitiescheck>> + <<for _nation, _i range $nationalitiesCheck>> <<print _nation>> @@.orange;<<print (($nationalities[_nation]/hashSum($nationalities))*100).toFixed(2)>>%@@ <<set _j++>> <<if _j < _len>> | <</if>> @@ -366,7 +366,7 @@ You may review your settings before clicking "Continue" to begin.<br> </div> </div> -<div id="slaves" class="tabcontent"> +<div id="slaves" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -383,7 +383,7 @@ You may review your settings before clicking "Continue" to begin.<br> <<run _options.addOption("Mention nationality", "seeNationality") .addValue("Enabled", 1).on().addValue("Disabled", 0).off()>> - <<run _options.addOption("Dynasties of enslaved royalities are", "realRoyalties") + <<run _options.addOption("Dynasties of enslaved royalties are", "realRoyalties") .addValueList([["Historical", 1], ["Random", 0]])>> <<run _options.addOption("New slaves may have male names", "allowMaleSlaveNames").addComment("This only affects slave generation and not your ability to name your slaves.") @@ -454,7 +454,7 @@ You may review your settings before clicking "Continue" to begin.<br> </div> </div> -<div id="PC" class="tabcontent"> +<div id="PC" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -503,7 +503,7 @@ You may review your settings before clicking "Continue" to begin.<br> <<run _options.addOption("Your race is", "race", $PC).showTextBox() .addValueList([["White", "white"], ["Asian", "asian"], ["Latina", "latina"], ["Middle Eastern", "middle eastern"], - ["Black", "black"], ["Semetic", "semetic"], ["Southern European", "southern european"], ["Indo-Aryan", "indo-aryan"], + ["Black", "black"], ["Semitic", "semitic"], ["Southern European", "southern european"], ["Indo-Aryan", "indo-aryan"], ["Amerindian", "amerindian"], ["Pacific Islander", "pacific islander"], ["Malay", "malay"], ["Mixed Race", "mixed race"]])>> <<run _options.addOption("Your skin tone is", "skin", $PC).showTextBox() diff --git a/src/events/legacy/RECI.tw b/src/events/legacy/RECI.tw index 20a64041d53e36ba22152fce2dc654dbdd672491..801aa79bd3d3b0733e3d174bf90e0ef17b285975 100644 --- a/src/events/legacy/RECI.tw +++ b/src/events/legacy/RECI.tw @@ -50,7 +50,7 @@ <<case "placeholder">> <<set $activeSlave.clothes = "no clothing">> <</switch>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/events/reRelativeRecruiter.js b/src/events/reRelativeRecruiter.js index d582c49a6eed26ae4d1a6b3ab76fe0ba8ad1fa9d..770be7e9d786ab922afd176243962ab749b2c852 100644 --- a/src/events/reRelativeRecruiter.js +++ b/src/events/reRelativeRecruiter.js @@ -159,7 +159,7 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba // pick a random background for the selected relative this.params.background = this._getRelativeBackgrounds(this.params.relative).random(); - let _this = this; // fuck javascript's halfassed classes + let _this = this; // fuck javascript's half-assed classes let cost = 0; // will be filled out later let cheatDiv = App.UI.DOM.makeElement("div", (V.cheatMode === 1) ? cheatModeSelectors() : ''); diff --git a/src/events/reSnatchAndGrabFollowup.tw b/src/events/reSnatchAndGrabFollowup.tw index 775a5eea49cf2f8821c8ac41bec5005c96cb89e5..b9c605bfd641c210205dace907ca581efe2f67a6 100644 --- a/src/events/reSnatchAndGrabFollowup.tw +++ b/src/events/reSnatchAndGrabFollowup.tw @@ -6,7 +6,7 @@ <<setLocalPronouns _slave>> <<set _clothesTemp = _slave.clothes, _slave.clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> <<if $seeImages == 1>> <div class="imageColumn"> <div class="imageRef medImg"> diff --git a/src/events/scheduled/murderAttempt.js b/src/events/scheduled/murderAttempt.js index 6589e302425aa01ae213484f4fd079a76b9f0dc9..c5bd773daedd5c0bb286e9879c90e91a33799b3d 100644 --- a/src/events/scheduled/murderAttempt.js +++ b/src/events/scheduled/murderAttempt.js @@ -467,7 +467,7 @@ App.Events.murderAttemptFollowup = function(variation, companyName, type) { r.push("After several months of fighting the Free Cities colony in the old world is finally established. While small scale fighting will continue likely for years to come local Free Cities can easily do this, so external forces, like your own mercenaries, are starting to withdraw. For your participation you get", cashFormatColor(1000000), "and 500 menial slaves."); cashX(1000000, "event"); - V.menial += 500; + V.menials += 500; } else { r.push("Despite great efforts the coalition of Free Cities trying to establish a colony in the old world finally announces the projects failure. Whether the reason is that the old world military still has enough power left to stop the establishment of a colony or simple mismanagement by the leading Free Cities is a topic for debate, but the fact remains that months were waisted on a fruitless war. Luckily you didn't invest too much so the cost for failure is a meager", cashFormatColor(40000, true), "and some <span class='reputation dec'>reputation loss.</span>"); diff --git a/src/facilities/brothel/brothelAssignmentScene.tw b/src/facilities/brothel/brothelAssignmentScene.tw index 3ebda3d30ee6b8924842e40b38d57e7a88b62f47..1d818e4ea1f2d166e79d884469cce80c8de6c5df 100644 --- a/src/facilities/brothel/brothelAssignmentScene.tw +++ b/src/facilities/brothel/brothelAssignmentScene.tw @@ -4,7 +4,7 @@ <<run Enunciate($activeSlave)>> <<setLocalPronouns $activeSlave>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/facilities/farmyard/reports/farmyardReport.js b/src/facilities/farmyard/reports/farmyardReport.js index 63ee5047bedad2ad0db79b4d8c8371bb54a1cef4..23eafbcfb12232604185ec455ef4e7a9527673ab 100644 --- a/src/facilities/farmyard/reports/farmyardReport.js +++ b/src/facilities/farmyard/reports/farmyardReport.js @@ -120,7 +120,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { function farmerFetishEffects(slave, fetish = 0) { const - { he, his, himself, He } = getPronouns(slave); + {he, his, himself, He} = getPronouns(slave); if (fetish === 1) { return `${He} isn't above sampling the merchandise ${himself}; before long it's obvious to ${his} workers that ${he} <span class="lightcoral">really likes fucking them.</span> `; @@ -131,7 +131,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { function farmerSkill(slave) { const - { he, his, His } = getPronouns(slave); + {he, his, His} = getPronouns(slave); let r = []; @@ -155,7 +155,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { } function farmerExperience(slave) { - const { he, his, him, He } = getPronouns(slave); + const {he, his, him, He} = getPronouns(slave); if (setup.farmerCareers.includes(slave.career)) { return `${He} has experience from ${his} life before ${he} was a slave that helps ${him} in the difficult life of managing animals and property.`; @@ -167,7 +167,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { } function farmerRelationshipSlaves(Farmer) { - const { he, his, He } = getPronouns(Farmer); + const {he, his, He} = getPronouns(Farmer); for (const slave of slaves) { let r = []; @@ -201,7 +201,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { } function farmerContracts(slave) { - const { he, his, himself } = getPronouns(slave); + const {he, his, himself} = getPronouns(slave); let r = [], @@ -217,7 +217,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { } function farmerRelationshipPC(slave) { - const { he, his, wife } = getPronouns(slave); + const {he, his, wife} = getPronouns(slave); if (slave.relationship === -3 && slave.devotion > 50) { return `As your loving ${wife}, ${he} does ${his} best to ensure ${V.farmyardName} runs smoothly.`; @@ -225,7 +225,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { } function farmerAgeSkill(slave) { - const { His } = getPronouns(slave); + const {His} = getPronouns(slave); if (slave.actualAge > 35) { return `${His} age and experience also contribute.`; @@ -233,7 +233,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { } function farmerIntelligence(slave) { - const { He } = getPronouns(slave); + const {He} = getPronouns(slave); if (slave.intelligence + slave.intelligenceImplant > 15) { return `${He} is a clever manager.`; @@ -241,7 +241,7 @@ App.Facilities.Farmyard.farmyardReport = function farmyardReport() { } function farmerSmell(slave) { - const { him, His } = getPronouns(slave); + const {him, His} = getPronouns(slave); if (!canSmell(slave)) { return `${His} lack of a sense of smell protects ${him} from that omnipresent barnyard stench.`; diff --git a/src/facilities/farmyard/shows/saFarmyardShows.js b/src/facilities/farmyard/shows/saFarmyardShows.js index f871fd325b800bd9ec6580ce1237443050279a30..ec00216ef0892cc297ff0b9c9e5ff941f34f1eda 100644 --- a/src/facilities/farmyard/shows/saFarmyardShows.js +++ b/src/facilities/farmyard/shows/saFarmyardShows.js @@ -6,7 +6,7 @@ */ App.Facilities.Farmyard.putOnShows = function(slave) { const - { he, him, his, hers, He, His } = getPronouns(slave), + {he, him, his, hers, He, His} = getPronouns(slave), incomeStats = getSlaveStatisticData(slave, V.facility.farmyard), arcology = V.arcologies[0], _beautiful = beautiful(slave), diff --git a/src/facilities/nursery/nursery.tw b/src/facilities/nursery/nursery.tw index ccba47ae1b2a103cd0865127fd6192998f5d90fa..6839ea7c9e43553c07acaffb491c69a4e48188ab 100644 --- a/src/facilities/nursery/nursery.tw +++ b/src/facilities/nursery/nursery.tw @@ -83,7 +83,6 @@ <<set $nannyInfluence = 1>> <<elseif $MatronID>> _S.Matron.slaveName is alone in $nurseryName, and keeps the place clean and looks after the children $himself. - <<set $MatronInfluence = 1>> <<elseif (_NL <= 0) && ($nurseryChildren <= 0)>> $nurseryNameCaps is empty and quiet. <div class="choices" style="font-style:normal"> @@ -97,14 +96,14 @@ <</if>> </p> -<div class="tabbar"> - /* <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'nannies')" id="tab nannies">Nannies</button> */ - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'pregnantSlaves')" id="tab pregnantSlaves">Pregnant Slaves</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'children')" id="tab children">Children</button> +<div class="tab-bar"> + /* <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'nannies')" id="tab nannies">Nannies</button> */ + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'pregnantSlaves')" id="tab pregnantSlaves">Pregnant Slaves</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'children')" id="tab children">Children</button> </div> /* -<div id="nannies" class="tabcontent"> +<div id="nannies" class="tab-content"> <div id="content"> */ <<set _Tmult0 = Math.trunc($nurseryNannies*1000*$upgradeMultiplierArcology)>> @@ -158,7 +157,7 @@ </div> */ -<div id="pregnantSlaves" class="tabcontent"> +<div id="pregnantSlaves" class="tab-content"> <div id="content"> <br><br> Reserve an eligible mother-to-be's child to be placed in a room upon birth. Of $nursery rooms, <<print _freecribs>> <<if _freecribs == 1>>is<<else>>are<</if>> unoccupied. Of those, $reservedChildrenNursery room<<if $reservedChildrenNursery == 1>> is<<else>>s are<</if>> reserved. @@ -169,38 +168,38 @@ <span class="note"> Sorting: </span> - ''<span id="qlNurserySort">$sortNurseryList</span>.'' + ''<span id="ql-nursery-sort">$sortNurseryList</span>.'' <<link "Sort by Name">> <<set $sortNurseryList = 'Name'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<replace "#ql-nursery-sort">>$sortNurseryList<</replace>> <<script>> sortNurseryPossiblesByName(); <</script>> <</link>> | <<link "Sort by Reserved Nursery Spots">> <<set $sortNurseryList = 'Reserved Nursery Spots'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<replace "#ql-nursery-sort">>$sortNurseryList<</replace>> <<script>> sortNurseryPossiblesByReservedSpots(); <</script>> <</link>> | <<link "Sort by Pregnancy Week">> <<set $sortNurseryList = 'Pregnancy Week'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<replace "#ql-nursery-sort">>$sortNurseryList<</replace>> <<script>> sortNurseryPossiblesByPregnancyWeek(); <</script>> <</link>> | <<link "Sort by Number of Children">> <<set $sortNurseryList = 'Number of Children'>> - <<replace "#qlNurserySort">>$sortNurseryList<</replace>> + <<replace "#ql-nursery-sort">>$sortNurseryList<</replace>> <<script>> sortNurseryPossiblesByPregnancyCount(); <</script>> <</link>> <br> <</if>> - <div id="qlNursery"> + <div id="ql-nursery"> <<for _u = 0; _u < _SL; _u++>> <<setLocalPronouns $slaves[_u]>> <<if $slaves[_u].preg > 0 && $slaves[_u].broodmother == 0 && $slaves[_u].pregKnown == 1 && $slaves[_u].eggType == "human">> @@ -286,12 +285,12 @@ <</for>> </div> <<script>> - $('div#qlNursery').ready(sortNurseryPossiblesByPreviousSort); + $('div#ql-nursery').ready(sortNurseryPossiblesByPreviousSort); <</script>> </div> </div> -<div id="children" class="tabcontent"> +<div id="children" class="tab-content"> <div id="content"> <p> Target age for release: <<textbox "$targetAgeNursery" $targetAgeNursery "Nursery">> diff --git a/src/facilities/nursery/utils/nurseryUtils.js b/src/facilities/nursery/utils/nurseryUtils.js index 9706437409af261508363b8f9d984ba4e2b0e8a0..d733eda01cbb3ccb877fc6e96660d7de3008c7ab 100644 --- a/src/facilities/nursery/utils/nurseryUtils.js +++ b/src/facilities/nursery/utils/nurseryUtils.js @@ -20,7 +20,7 @@ App.Facilities.Nursery.childList = function childList() { const weeksOwned = V.week - child.weekAcquired, weeksLeft = (V.targetAgeNursery * 52) - weeksOwned, - { he, him, He } = getPronouns(child), + {he, him, He} = getPronouns(child), hr = document.createElement("hr"); hr.style.margin = "0"; @@ -70,7 +70,7 @@ App.Facilities.Nursery.childList = function childList() { /** * Converts the infant object into a new child object * @param {object} child - * @return {object} + * @returns {object} */ App.Facilities.Nursery.infantToChild = function infantToChild(child) { child.abortionTat = -1; @@ -675,7 +675,7 @@ App.Facilities.Nursery.newChild = function newChild(child) { /** * @param {App.Entity.ChildState[]} [cribs] - * @returns {Object.<number, number>} + * @returns {object.<number, number>} */ App.Facilities.Nursery.cribsToIndices = function cribsToIndices(cribs = V.cribs) { return cribs.reduce((acc, child, i) => { acc[child.ID] = i; return acc; }, {}); @@ -719,14 +719,14 @@ App.Facilities.Nursery.nurserySort = function nurserySort() { nurseryHasReservedChildren = false, reservedChildrenNursery = FetusGlobalReserveCount("nursery"); - r += `<br><i>Sorting:</i> <b><span id="qlNurserySort">${sortNurseryList}</span>.</b> `; - r += `${App.UI.passageLink("Sort by Name", "Nursery", `${sortNurseryList = "Name"}, ${App.UI.replace(`#qlNurserySort`, sortNurseryList)}, ${byName()}`)} | `; - r += `${App.UI.passageLink("Sort by Reserved Nursery Spots", "Nursery", `${sortNurseryList = "Reserved Nursery Spots"}, ${App.UI.replace(`#qlNurserySort`)} ${sortNurseryList}, ${byReservedSpots()}`)} | `; - r += `${App.UI.passageLink("Sort by Pregnancy Week", "Nursery", `${sortNurseryList = "Pregnancy Week"}, ${App.UI.replace(`#qlNurserySort`, sortNurseryList)}, ${byPregnancyWeek()}`)} | `; - r += `${App.UI.passageLink("Sort by Number of Children", "Nursery", `${sortNurseryList = "Number of Children"}, ${App.UI.replace(`#qlNurserySort`, sortNurseryList)}, ${byPregnancyCount()}`)}`; + r += `<br><i>Sorting:</i> <b><span id="ql-nursery-sort">${sortNurseryList}</span>.</b> `; + r += `${App.UI.passageLink("Sort by Name", "Nursery", `${sortNurseryList = "Name"}, ${App.UI.replace(`#ql-nursery-sort`, sortNurseryList)}, ${byName()}`)} | `; + r += `${App.UI.passageLink("Sort by Reserved Nursery Spots", "Nursery", `${sortNurseryList = "Reserved Nursery Spots"}, ${App.UI.replace(`#ql-nursery-sort`)} ${sortNurseryList}, ${byReservedSpots()}`)} | `; + r += `${App.UI.passageLink("Sort by Pregnancy Week", "Nursery", `${sortNurseryList = "Pregnancy Week"}, ${App.UI.replace(`#ql-nursery-sort`, sortNurseryList)}, ${byPregnancyWeek()}`)} | `; + r += `${App.UI.passageLink("Sort by Number of Children", "Nursery", `${sortNurseryList = "Number of Children"}, ${App.UI.replace(`#ql-nursery-sort`, sortNurseryList)}, ${byPregnancyCount()}`)}`; r += `<br>`; - r += `<div id="qlNursery">`; + r += `<div id="ql-nursery">`; for (let i = 0; i < SL; i++) { const slave = V.slaves[i]; @@ -845,7 +845,7 @@ App.Facilities.Nursery.nurserySort = function nurserySort() { r += `</div>`; - $('div#qlNursery').ready(byPreviousSort); + $('div#ql-nursery').ready(byPreviousSort); if (!eligibility) { r += `<br>`; @@ -919,27 +919,27 @@ App.Facilities.Nursery.nurserySort = function nurserySort() { } function byName() { - let sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); sortedNurseryPossibles = sortDomObjects(sortedNurseryPossibles, 'data-name'); - $(sortedNurseryPossibles).appendTo($('#qlNursery')); + $(sortedNurseryPossibles).appendTo($('#ql-nursery')); } function byReservedSpots() { - let sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); sortedNurseryPossibles = sortDomObjects(sortedNurseryPossibles, 'data-reserved-spots'); - $(sortedNurseryPossibles).appendTo($('#qlNursery')); + $(sortedNurseryPossibles).appendTo($('#ql-nursery')); } function byPregnancyWeek() { - let sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); sortedNurseryPossibles = sortDomObjects(sortedNurseryPossibles, 'data-preg-week'); - $(sortedNurseryPossibles).appendTo($('#qlNursery')); + $(sortedNurseryPossibles).appendTo($('#ql-nursery')); } function byPregnancyCount() { - let sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); sortedNurseryPossibles = sortDomObjects(sortedNurseryPossibles, 'data-preg-count'); - $(sortedNurseryPossibles).appendTo($('#qlNursery')); + $(sortedNurseryPossibles).appendTo($('#ql-nursery')); } function byPreviousSort() { diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw index ee0a928cee55fdedf73434c32b86177c56d446ab..5b6d3203f9808f21679f90d8cccc6e83711974e4 100644 --- a/src/gui/Encyclopedia/encyclopedia.tw +++ b/src/gui/Encyclopedia/encyclopedia.tw @@ -445,7 +445,7 @@ SLAVES Slaves' ''health'' is extremely important for the performance of your slaves and there are many ins and outs interacting with a slave's health. While slaves have an overarching health value it is good to be aware of the individual components; ''condition, short term damage'' and ''long term damage.'' A slave's ''tiredness'' and ''illness'' are also related and interact with ''health.'' <br><br>''Condition'' - <br>An overall indication of health and well-being; indicating how the slave is feeling physically. A poor condition often reduces a slave's effectiveness while a slave in excellent condition will perfrom better. The <<= App.Encyclopedia.Dialog.linkSC("Rest", "Rest")>> or <<= App.Encyclopedia.Dialog.linkSC("Spa", "Spa")>> assignment will increase condition; curative drugs will increase it, while preventative drugs can stop assignment-related health losses. Curatives and rest will synergize and add additional condition if applied simultaneously. + <br>An overall indication of health and well-being; indicating how the slave is feeling physically. A poor condition often reduces a slave's effectiveness while a slave in excellent condition will perform better. The <<= App.Encyclopedia.Dialog.linkSC("Rest", "Rest")>> or <<= App.Encyclopedia.Dialog.linkSC("Spa", "Spa")>> assignment will increase condition; curative drugs will increase it, while preventative drugs can stop assignment-related health losses. Curatives and rest will synergize and add additional condition if applied simultaneously. <br><br>''Short Term Damage'' <br>Whenever something hurts a slave, be it their assignment, an event or perhaps surgery, they will incur short term damage. Short term damage tends to accumulate throughout the week and gets reduced at the end of the week. This process also lessens a slave's condition, but the condition impact can be lessened by the use of curatives or preventatives. Small amounts of short term damage are relatively harmless for a slave's overall health and will quickly heal, however large amounts of damage are dangerous. diff --git a/src/gui/Encyclopedia/encyclopediaDialog.js b/src/gui/Encyclopedia/encyclopediaDialog.js index 379d4f575f1c715259d7282ea5d83e82b9a86e39..a2b41f58e4e1a6272ad2539d8bbd6011d08469c4 100644 --- a/src/gui/Encyclopedia/encyclopediaDialog.js +++ b/src/gui/Encyclopedia/encyclopediaDialog.js @@ -1,7 +1,7 @@ App.Encyclopedia.Dialog = (function() { /** Create a link to an encyclopedia dialog for a given article with the given text * @param {string} text Text for link - * @param {string} article Encyclopdia article to link to + * @param {string} article Encyclopedia article to link to * @returns {string} SugarCube link markup */ function makeLinkSC(text, article) { @@ -10,7 +10,7 @@ App.Encyclopedia.Dialog = (function() { /** Create a link to an encyclopedia dialog for a given article with the given text * @param {string} text Text for link - * @param {string} article Encyclopdia article to link to + * @param {string} article Encyclopedia article to link to * @returns {HTMLElement} DOM link element */ function makeLinkDOM(text, article) { diff --git a/src/gui/multipleInspect.js b/src/gui/multipleInspect.js index 552529e88e700ecfe04cc01a062a472b9d909e09..f4c106b7f586fdf757cef357ae24e79c504de2d7 100644 --- a/src/gui/multipleInspect.js +++ b/src/gui/multipleInspect.js @@ -9,7 +9,7 @@ App.UI.MultipleInspect = (function() { */ function MultipleInspectDOM(slaves, showFamilyTree, market) { const frag = document.createDocumentFragment(); - const tabbar = App.UI.DOM.appendNewElement("div", frag, "", "tabbar"); + const tabbar = App.UI.DOM.appendNewElement("div", frag, "", "tab-bar"); for (const slave of slaves) { tabbar.append(App.UI.tabbar.tabButtonDOM(`slave${slave.ID}`, slave.slaveName)); diff --git a/src/gui/options/options.tw b/src/gui/options/options.tw index 928a523ac5de7fe46c20d28898ba559c78bcc9a2..8be4120ed3b6596bac47ca00c927f2919b6df6ed 100644 --- a/src/gui/options/options.tw +++ b/src/gui/options/options.tw @@ -35,15 +35,15 @@ </div> <div class="indent"> [[Apply Backwards Compatibility Update|Backwards Compatibility]] - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> <br>[[Apply Security Expansion mod backwards compatibility |SecExpBackwardCompatibility]] <</if>> </div> <<link "Reset extended family mode controllers">> <<run resetFamilyCounters()>> - <<replace "#familyHint">>//@@.lightgreen;Done:@@ all family relations flushed and rebuilt.//<</replace>> + <<replace "#family-hint">>//@@.lightgreen;Done:@@ all family relations flushed and rebuilt.//<</replace>> <</link>> -<span id="familyHint">//Clears and rebuilds .sister and .daughter tracking.//</span> +<span id="family-hint">//Clears and rebuilds .sister and .daughter tracking.//</span> <<if isNaN($rep)>> <br>[[Reset Reputation|Options][$rep = 0]] <</if>> @@ -69,15 +69,15 @@ <<run App.UI.tabbar.handlePreSelectedTab($tabChoice.Options)>> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Display')" id="tab Display">Display</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'CONTENT&FLAVOR')" id="tab CONTENT&FLAVOR">Content & flavour</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'MODS')" id="tab MODS">Mods</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'DEBUG/CHEATING')" id="tab DEBUG/CHEATING">Debug/cheating</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Experimental')" id="tab Experimental">Experimental</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Display')" id="tab Display">Display</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'CONTENT&FLAVOR')" id="tab CONTENT&FLAVOR">Content & flavour</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'MODS')" id="tab MODS">Mods</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'DEBUG/CHEATING')" id="tab DEBUG/CHEATING">Debug/cheating</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Experimental')" id="tab Experimental">Experimental</button> </div> -<div id="Display" class="tabcontent"> +<div id="Display" class="tab-content"> <div class="content"> <h2>Reports</h2> @@ -262,7 +262,7 @@ </div> </div> -<div id="CONTENT&FLAVOR" class="tabcontent"> +<div id="CONTENT&FLAVOR" class="tab-content"> <div class="content"> <h2>Content</h2> @@ -384,7 +384,7 @@ </div> </div> -<div id="MODS" class="tabcontent"> +<div id="MODS" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -412,7 +412,7 @@ <<if $SecExp.settings.battle.enabled > 0 || $SecExp.settings.rebellion.enabled > 0>> <<run _options.addOption("Detailed battle statistics are", "showStats", $SecExp.settings) .addValue("Shown", 1).on().addValue("Hidden", 0).off() - .addComment("Visability of detailed statistics and battle turns.")>> + .addComment("Visibility of detailed statistics and battle turns.")>> <<run _options.addOption("Difficulty is", "difficulty", $SecExp.settings) .addValueList([["Extremely hard", 2], ["Very hard", 1.5], ["Hard", 1.25], ["Normal", 1], ["Easy", 0.75], ["Very easy", 0.5]])>> @@ -608,7 +608,7 @@ </div> </div> -<div id="DEBUG/CHEATING" class="tabcontent"> +<div id="DEBUG/CHEATING" class="tab-content"> <div class="content"> <h2>Debug</h2> @@ -710,7 +710,7 @@ </div> </div> -<div id="Experimental" class="tabcontent"> +<div id="Experimental" class="tab-content"> <div style="fontWeight:bold"> Experimental means just that: experimental. Options below are likely to be in an <span class="yellow">even more incomplete or broken state than usual.</span> <span class="red">THEY MAY NOT WORK AT ALL.</span> Make sure you back up your save before enabling any of these, and if you are that interested, consider helping to improve them. </div> diff --git a/src/gui/options/summaryOptions.tw b/src/gui/options/summaryOptions.tw index 9c079d55801ba4aedaed37a3247503a442dcf52e..5e360ba4f630ba9031e4be7813dfd9f71f5a7635 100644 --- a/src/gui/options/summaryOptions.tw +++ b/src/gui/options/summaryOptions.tw @@ -48,7 +48,7 @@ Sample summary: <<set _options = (new App.UI.OptionsGroup()).enableDoubleColumn()>> <<run _options.addOption("Panel style is", "slavePanelStyle") -.addValueList([["None", 0], ["Line Seperator", 1], ["Card", 2]])>> +.addValueList([["None", 0], ["Line Separator", 1], ["Card", 2]])>> <<run App.UI.SlaveSummary.addOptions(_options)>> diff --git a/src/gui/storyCaption.tw b/src/gui/storyCaption.tw index d4562a07d4b16235cf7f46c4c076745d5c430a6c..cbe3ed11056d18cbcd093faa5d00aea5f46a1010 100644 --- a/src/gui/storyCaption.tw +++ b/src/gui/storyCaption.tw @@ -182,7 +182,7 @@ </div> <</if>> - <<if $secExpEnabled == 1 && ($sideBarOptions.Authority + $sideBarOptions.Security + $sideBarOptions.Crime > 0)>> + <<if $secExpEnabled > 0 && ($sideBarOptions.Authority + $sideBarOptions.Security + $sideBarOptions.Crime > 0)>> <<if $sideBarOptions.Authority > 0>> <div> @@.darkviolet;Auth@@ | @@.darkviolet; diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw index 7734e6ed20b5a8231b273eb4f47a3759494941b5..8dc2aa0e04ae250ee5796e0f6e0182021ad6b002 100644 --- a/src/init/storyInit.tw +++ b/src/init/storyInit.tw @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with thi <<run App.Update.setNonexistentProperties(V, App.Data.defaultGameStateVariables)>> /* These variables must be created AND set to default values, NG+ or not */ -<<run App.Update.setExistantProperties(V, App.Data.resetOnNGPlus)>> +<<run App.Update.setExistentProperties(V, App.Data.resetOnNGPlus)>> <<set $ver = App.Version.base, $pmodVer = App.Version.pmod, $releaseID = App.Version.release>> diff --git a/src/interaction/budgets/recordTemplates.js b/src/interaction/budgets/recordTemplates.js index a7fb7425aca8087ef64ae8f5101fb68b81c26c48..9876f622f5a7fef72e533005e9f678771fd98209 100644 --- a/src/interaction/budgets/recordTemplates.js +++ b/src/interaction/budgets/recordTemplates.js @@ -2,206 +2,206 @@ App.Data.Records = {}; App.Data.Records.LastWeeksCash = function() { // Slaves in general - this.slaveMod = 0, - this.slaveSurgery = 0, - this.birth = 0, - this.porn = 0, + this.slaveMod = 0; + this.slaveSurgery = 0; + this.birth = 0; + this.porn = 0; // Slave Income and Expenses per assignment - this.slaveAssignmentRest = 0, - this.slaveAssignmentRestVign = 0, - this.slaveAssignmentFucktoy = 0, - this.slaveAssignmentClasses = 0, - this.slaveAssignmentHouse = 0, - this.slaveAssignmentHouseVign = 0, - this.slaveAssignmentWhore = 0, - this.slaveAssignmentWhoreVign = 0, - this.slaveAssignmentPublic = 0, - this.slaveAssignmentPublicVign = 0, - this.slaveAssignmentSubordinate = 0, - this.slaveAssignmentMilked = 0, - this.slaveAssignmentMilkedVign = 0, - this.slaveAssignmentExtraMilk = 0, - this.slaveAssignmentExtraMilkVign = 0, - this.slaveAssignmentGloryhole = 0, - this.slaveAssignmentConfinement = 0, - this.slaveAssignmentBodyguard = 0, - this.slaveAssignmentHeadgirl = 0, - this.slaveAssignmentHeadgirlsuite = 0, - this.slaveAssignmentRecruiter = 0, - this.slaveAssignmentConcubine = 0, - this.slaveAssignmentMastersuite = 0, - this.slaveAssignmentAgent = 0, - this.slaveAssignmentAgentPartner = 0, - this.slaveAssignmentArcade = 0, - this.slaveAssignmentMadam = 0, - this.slaveAssignmentMadamVign = 0, - this.slaveAssignmentBrothel = 0, - this.slaveAssignmentBrothelVign = 0, - this.slaveAssignmentWarden = 0, - this.slaveAssignmentCellblock = 0, - this.slaveAssignmentDj = 0, - this.slaveAssignmentDjVign = 0, - this.slaveAssignmentClub = 0, - this.slaveAssignmentClubVign = 0, - this.slaveAssignmentNurse = 0, - this.slaveAssignmentClinic = 0, - this.slaveAssignmentMilkmaid = 0, - this.slaveAssignmentDairy = 0, - this.slaveAssignmentDairyVign = 0, - this.slaveAssignmentFarmer = 0, - this.slaveAssignmentFarmyard = 0, - this.slaveAssignmentFarmyardVign = 0, - this.slaveAssignmentMatron = 0, - this.slaveAssignmentNursery = 0, - this.slaveAssignmentNurseryVign = 0, - this.slaveAssignmentTeacher = 0, - this.slaveAssignmentSchool = 0, - this.slaveAssignmentSteward = 0, - this.slaveAssignmentQuarter = 0, - this.slaveAssignmentQuarterVign = 0, - this.slaveAssignmentAttendant = 0, - this.slaveAssignmentSpa = 0, - this.slaveAssignmentBaby_factory = 0, - this.slaveAssignmentChoice = 0, + this.slaveAssignmentRest = 0; + this.slaveAssignmentRestVign = 0; + this.slaveAssignmentFucktoy = 0; + this.slaveAssignmentClasses = 0; + this.slaveAssignmentHouse = 0; + this.slaveAssignmentHouseVign = 0; + this.slaveAssignmentWhore = 0; + this.slaveAssignmentWhoreVign = 0; + this.slaveAssignmentPublic = 0; + this.slaveAssignmentPublicVign = 0; + this.slaveAssignmentSubordinate = 0; + this.slaveAssignmentMilked = 0; + this.slaveAssignmentMilkedVign = 0; + this.slaveAssignmentExtraMilk = 0; + this.slaveAssignmentExtraMilkVign = 0; + this.slaveAssignmentGloryhole = 0; + this.slaveAssignmentConfinement = 0; + this.slaveAssignmentBodyguard = 0; + this.slaveAssignmentHeadgirl = 0; + this.slaveAssignmentHeadgirlsuite = 0; + this.slaveAssignmentRecruiter = 0; + this.slaveAssignmentConcubine = 0; + this.slaveAssignmentMastersuite = 0; + this.slaveAssignmentAgent = 0; + this.slaveAssignmentAgentPartner = 0; + this.slaveAssignmentArcade = 0; + this.slaveAssignmentMadam = 0; + this.slaveAssignmentMadamVign = 0; + this.slaveAssignmentBrothel = 0; + this.slaveAssignmentBrothelVign = 0; + this.slaveAssignmentWarden = 0; + this.slaveAssignmentCellblock = 0; + this.slaveAssignmentDj = 0; + this.slaveAssignmentDjVign = 0; + this.slaveAssignmentClub = 0; + this.slaveAssignmentClubVign = 0; + this.slaveAssignmentNurse = 0; + this.slaveAssignmentClinic = 0; + this.slaveAssignmentMilkmaid = 0; + this.slaveAssignmentDairy = 0; + this.slaveAssignmentDairyVign = 0; + this.slaveAssignmentFarmer = 0; + this.slaveAssignmentFarmyard = 0; + this.slaveAssignmentFarmyardVign = 0; + this.slaveAssignmentMatron = 0; + this.slaveAssignmentNursery = 0; + this.slaveAssignmentNurseryVign = 0; + this.slaveAssignmentTeacher = 0; + this.slaveAssignmentSchool = 0; + this.slaveAssignmentSteward = 0; + this.slaveAssignmentQuarter = 0; + this.slaveAssignmentQuarterVign = 0; + this.slaveAssignmentAttendant = 0; + this.slaveAssignmentSpa = 0; + this.slaveAssignmentBaby_factory = 0; + this.slaveAssignmentChoice = 0; // Menial Slaves - this.menialTrades = 0, - this.fuckdolls = 0, - this.menialBioreactors = 0, + this.menialTrades = 0; + this.fuckdolls = 0; + this.menialBioreactors = 0; // Misc Slaves - this.labScientists = 0, - this.labMenials = 0, - this.slaveTransfer = 0, - this.menialTransfer = 0, - this.fuckdollsTransfer = 0, - this.menialBioreactorsTransfer = 0, - this.menialTransferA = 0, - this.fuckdollsTransferA = 0, - this.menialBioreactorsTransferA = 0, - this.labScientistsTransfer = 0, - this.babyTransfer = 0, - this.menialRetirement = 0, + this.labScientists = 0; + this.labMenials = 0; + this.slaveTransfer = 0; + this.menialTransfer = 0; + this.fuckdollsTransfer = 0; + this.menialBioreactorsTransfer = 0; + this.menialTransferA = 0; + this.fuckdollsTransferA = 0; + this.menialBioreactorsTransferA = 0; + this.labScientistsTransfer = 0; + this.babyTransfer = 0; + this.menialRetirement = 0; // Buildings - this.masterSuite = 0, - this.arcade = 0, - this.brothel = 0, - this.brothelAds = 0, - this.cellblock = 0, - this.club = 0, - this.clubAds = 0, - this.clinic = 0, - this.dairy = 0, - this.farmyard = 0, - this.incubator = 0, - this.incubatorSlaves = 0, - this.nursery = 0, - this.pit = 0, - this.lab = 0, - this.labResearch = 0, - this.school = 0, - this.servantsQuarters = 0, - this.spa = 0, + this.masterSuite = 0; + this.arcade = 0; + this.brothel = 0; + this.brothelAds = 0; + this.cellblock = 0; + this.club = 0; + this.clubAds = 0; + this.clinic = 0; + this.dairy = 0; + this.farmyard = 0; + this.incubator = 0; + this.incubatorSlaves = 0; + this.nursery = 0; + this.pit = 0; + this.lab = 0; + this.labResearch = 0; + this.school = 0; + this.servantsQuarters = 0; + this.spa = 0; // Arcology - this.environment = 0, - this.weather = 0, + this.environment = 0; + this.weather = 0; - this.mercenaries = 0, - this.peacekeepers = 0, - this.specialForces = 0, - this.specialForcesCap = 0, - this.securityExpansion = 0, + this.mercenaries = 0; + this.peacekeepers = 0; + this.specialForces = 0; + this.specialForcesCap = 0; + this.securityExpansion = 0; - this.citizenOrphanage = 0, - this.privateOrphanage = 0, + this.citizenOrphanage = 0; + this.privateOrphanage = 0; - this.capEx = 0, - this.futureSocieties = 0, - this.schoolBacking = 0, - this.policies = 0, - this.subsidiesAndBarriers = 0, - this.edicts = 0, + this.capEx = 0; + this.futureSocieties = 0; + this.schoolBacking = 0; + this.policies = 0; + this.subsidiesAndBarriers = 0; + this.edicts = 0; // Personal Finance - this.personalBusiness = 0, - this.personalLivingExpenses = 0, - this.PCtraining = 0, - this.PCmedical = 0, - this.PCskills = 0, - this.stocksTraded = 0, // trading - this.stocks = 0, // share growth - this.fines = 0, - this.event = 0, // poker night etc. Try to file things elsewhere if you can. - this.war = 0, - - this.rents = 0, - - this.cheating = 0, + this.personalBusiness = 0; + this.personalLivingExpenses = 0; + this.PCtraining = 0; + this.PCmedical = 0; + this.PCskills = 0; + this.stocksTraded = 0; // trading + this.stocks = 0; // share growth + this.fines = 0; + this.event = 0; // poker night etc. Try to file things elsewhere if you can. + this.war = 0; + + this.rents = 0; + + this.cheating = 0; this.total = 0; }; App.Data.Records.LastWeeksRep = function() { // Slave Jobs - this.fucktoy = 0, - this.publicServant = 0, - this.gloryholeArcade = 0, - this.gloryhole = 0, - this.disobedience = 0, - this.concubine = 0, - this.headGirl = 0, - this.bodyguard = 0, - this.recruiter = 0, + this.fucktoy = 0; + this.publicServant = 0; + this.gloryholeArcade = 0; + this.gloryhole = 0; + this.disobedience = 0; + this.concubine = 0; + this.headGirl = 0; + this.bodyguard = 0; + this.recruiter = 0; // Slaves in general - this.fuckdolls = 0, - this.slaveTransfer = 0, - this.babyTransfer = 0, - this.birth = 0, - this.retirement = 0, - this.slavesViewOfPC = 0, - this.prestigiousSlave = 0, - this.vignette = 0, - this.porn = 0, + this.fuckdolls = 0; + this.slaveTransfer = 0; + this.babyTransfer = 0; + this.birth = 0; + this.retirement = 0; + this.slavesViewOfPC = 0; + this.prestigiousSlave = 0; + this.vignette = 0; + this.porn = 0; // Buildings - this.arcade = 0, - this.brothel = 0, - this.club = 0, - this.publicServantClub = 0, - this.clubAds = 0, - this.pit = 0, - this.servantsQuarters = 0, - this.spa = 0, + this.arcade = 0; + this.brothel = 0; + this.club = 0; + this.publicServantClub = 0; + this.clubAds = 0; + this.pit = 0; + this.servantsQuarters = 0; + this.spa = 0; - this.architecture = 0, + this.architecture = 0; // Policies - this.capEx = 0, - this.futureSocieties = 0, - this.policies = 0, - this.subsidiesAndBarriers = 0, - this.edicts = 0, - this.war = 0, - this.food = 0, + this.capEx = 0; + this.futureSocieties = 0; + this.policies = 0; + this.subsidiesAndBarriers = 0; + this.edicts = 0; + this.war = 0; + this.food = 0; // Forces - this.peacekeepers = 0, - this.specialForces = 0, - this.securityExpansion = 0, + this.peacekeepers = 0; + this.specialForces = 0; + this.securityExpansion = 0; // Personal Finance - this.personalBusiness = 0, - this.PCappearance = 0, - this.PCactions = 0, // actions involving your body = becoming pregnant, etc. - this.PCRelationships = 0, - this.SlaveRelationships = 0, - this.event = 0, // poker night etc. Try to file things elsewhere if you can. - this.war = 0, + this.personalBusiness = 0; + this.PCappearance = 0; + this.PCactions = 0; // actions involving your body = becoming pregnant; etc. + this.PCRelationships = 0; + this.SlaveRelationships = 0; + this.event = 0; // poker night etc. Try to file things elsewhere if you can. + this.war = 0; // special - this.multiplier = 0, - this.overflow = 0, - this.cheating = 0, + this.multiplier = 0; + this.overflow = 0; + this.cheating = 0; this.total = 0; }; diff --git a/src/interaction/main/mainLinks.js b/src/interaction/main/mainLinks.js index cf8f0af1bc6c13e19ccc89de58943c9e940bf048..96d9cbc5779d17885300a64e925822aece8c63da 100644 --- a/src/interaction/main/mainLinks.js +++ b/src/interaction/main/mainLinks.js @@ -70,10 +70,9 @@ App.UI.View.mainLinks = function() { const trainees = []; PA.forEach((trainee, i) => { - trainees.push(App.UI.DOM.combineNodes(App.UI.DOM.makeElement("span", SlaveFullName(trainee), "slave-name"), - ` to ${V.personalAttention[i].trainingRegimen}`)); - } - ); + trainees.push(App.UI.DOM.combineNodes(App.UI.DOM.makeElement("span", SlaveFullName(trainee), "slave-name"), + ` to ${V.personalAttention[i].trainingRegimen}`)); + }); fragment.append(App.UI.DOM.arrayToList(trainees)); fragment.append(` this week.`); @@ -159,7 +158,18 @@ App.UI.View.mainLinks = function() { div.append('an organ'); } div.append(" for ", - App.UI.DOM.makeElement("span", App.UI.DOM.link(V.slaves[i].slaveName, () => { V.activeSlave = V.slaves[i], V.tabChoice.RemoteSurgery = "Structural"; }, [], "Remote Surgery"), "clear-formatting"), + App.UI.DOM.makeElement( + "span", + App.UI.DOM.link( + V.slaves[i].slaveName, + () => { + V.activeSlave = V.slaves[i]; + V.tabChoice.RemoteSurgery = "Structural"; + }, + [], + "Remote Surgery") + , "clear-formatting" + ), " which "); if (slaveOrgans > 1) { div.append('are'); diff --git a/src/interaction/main/useGuard.js b/src/interaction/main/useGuard.js index 79977929ba8faf5b2504b4454b4063ab9fe77d70..2e86f80892eaf433e8253bb71ddb095e8b90afb8 100644 --- a/src/interaction/main/useGuard.js +++ b/src/interaction/main/useGuard.js @@ -1,6 +1,6 @@ /** - * @param slave - * @return {string} + * @param {App.Entity.SlaveState} slave + * @returns {string} */ App.Interact.guardPose = function(slave) { "use strict"; diff --git a/src/interaction/main/walkPast.js b/src/interaction/main/walkPast.js index 26473522603c4904e45e36733acaf7cc823a0074..3530725741f8a5765677dc1ff51345e16efd2a4e 100644 --- a/src/interaction/main/walkPast.js +++ b/src/interaction/main/walkPast.js @@ -118,7 +118,7 @@ globalThis.walkPast = (function() { } const { - he, him, his, hers, himself, boy, He, His + him, his, He } = getPronouns(activeSlave); if (activeSlave.fuckdoll === 0) { @@ -176,7 +176,7 @@ globalThis.walkPast = (function() { r = ""; const { - he, him, his, hers, himself, boy, He, His + he, his } = getPronouns(activeSlave); if (partnerSlave !== undefined) { /* potential problem point */ @@ -204,7 +204,7 @@ globalThis.walkPast = (function() { race = (V.seeRace ? activeSlave.race : ""); const { - he, him, his, hers, himself, boy, wife, + he, him, his, himself, boy, He, His } = getPronouns(activeSlave); @@ -5713,25 +5713,25 @@ globalThis.walkPast = (function() { case "an oversized t-shirt": case "an oversized t-shirt and boyshorts": case "sport shorts and a t-shirt": - t += `${His} big belly gentlly pushes out ${his} shirt.`; + t += `${His} big belly gently pushes out ${his} shirt.`; break; case "a tank-top": case "a tank-top and panties": - t += `${His} big belly gentlly pushes out ${his} tank-top.`; + t += `${His} big belly gently pushes out ${his} tank-top.`; break; case "a sweater": case "a sweater and panties": case "a sweater and cutoffs": - t += `${His} big belly gentlly pushes out ${his} sweater.`; + t += `${His} big belly gently pushes out ${his} sweater.`; break; case "a gothic lolita dress": - t += `${His} big belly gentlly pushes out ${his} dress.`; + t += `${His} big belly gently pushes out ${his} dress.`; break; case "a hanbok": - t += `${His} big belly gentlly pushes out ${his} hanbok.`; + t += `${His} big belly gently pushes out ${his} hanbok.`; break; case "a one-piece swimsuit": - t += `${His} big belly gentlly pushes out ${his} swimsuit.`; + t += `${His} big belly gently pushes out ${his} swimsuit.`; break; case "a nice pony outfit": case "a slutty pony outfit": @@ -8092,7 +8092,7 @@ globalThis.walkPast = (function() { t += `${His} leather outfit clings tightly to the outline of ${his} genitals.`; break; case "a skimpy loincloth": - t += `${His} skimpy loincloth gives frequent glipses of ${his} bare genitals underneath.`; + t += `${His} skimpy loincloth gives frequent glimpses of ${his} bare genitals underneath.`; break; case "a burkini": t += `${His} modest swimwear includes a tunic that ends halfway down ${his} thighs.`; @@ -8663,7 +8663,7 @@ globalThis.walkPast = (function() { t += `${His} leather outfit clings tightly to the outline of ${his} genitals.`; break; case "a skimpy loincloth": - t += `${His} skimpy loincloth gives frequent glipses of ${his} bare genitals underneath.`; + t += `${His} skimpy loincloth gives frequent glimpses of ${his} bare genitals underneath.`; break; case "a burkini": t += `${His} modest swimwear includes a tunic that ends halfway down ${his} thighs.`; @@ -8894,7 +8894,7 @@ globalThis.walkPast = (function() { case "a slutty klan robe": case "a sports bra": case "a t-shirt": - case "pasites": + case "pasties": t += `${His} outfit exposes ${his} bare butt and vulnerable asshole.`; break; case "an oversized t-shirt and boyshorts": @@ -9079,7 +9079,7 @@ globalThis.walkPast = (function() { t += `${His} scandalously short miniskirt leaves ${his} ass hanging out and begging for it.`; break; case "a courtesan dress": - t += `As ${he} moves, you catch tantilizing glimpses of ${his} ass beneath the petals.`; + t += `As ${he} moves, you catch tantalizing glimpses of ${his} ass beneath the petals.`; break; default: if (slave.chastityVagina) { diff --git a/src/interaction/policies/policies.js b/src/interaction/policies/policies.js index 4ce8bbfc749d4f3585b456ba09b5bff59a2de924..6ef1341ffbdfb6440bdeb349ddf877b7c7b438c4 100644 --- a/src/interaction/policies/policies.js +++ b/src/interaction/policies/policies.js @@ -210,7 +210,6 @@ globalThis.policy = function(category) { if (!["EducationPolicies"].includes(category)) { repX(-1000, "policies"); } - UIBar.update(); } } }; diff --git a/src/interaction/policies/policies.tw b/src/interaction/policies/policies.tw index 42e0b874f800f0d06bad3dcd10cf4c942173a695..260306b0563707c6b3c03fc7d7db61de54cb6d7e 100644 --- a/src/interaction/policies/policies.tw +++ b/src/interaction/policies/policies.tw @@ -27,16 +27,16 @@ <</if>> More policies will become available as the arcology develops. </p> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'SMRs')" id="tab SMRs">Slave Market Regulations</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'ST')" id="tab ST">Sexual Trendsetting</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Population')" id="tab Population">Population & Domestic</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Education')" id="tab Education">Education</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'FS')" id="tab FS">Future Societies</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'SRP')" id="tab SRP">Slave Retirement Planning</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'SMRs')" id="tab SMRs">Slave Market Regulations</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'ST')" id="tab ST">Sexual Trendsetting</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Population')" id="tab Population">Population & Domestic</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Education')" id="tab Education">Education</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'FS')" id="tab FS">Future Societies</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'SRP')" id="tab SRP">Slave Retirement Planning</button> </div> -<div id="SMRs" class="tabcontent"> +<div id="SMRs" class="tab-content"> <div class="content"> <p class="scene-intro"> Slave Market Regulations (SMRs) will affect slaves that come through the official slave markets in your arcology. The markets themselves will bear the cost of these regulations, but the minimum practicable slave prices may rise as a result. @@ -48,7 +48,7 @@ </div> </div> -<div id="ST" class="tabcontent"> +<div id="ST" class="tab-content"> <div class="content"> <span id="SexualTrendsetting"></span> <script> @@ -57,7 +57,7 @@ </div> </div> -<div id="Population" class="tabcontent"> +<div id="Population" class="tab-content"> <div class="content"> <h1>Population</h1> @@ -75,7 +75,7 @@ </div> </div> -<div id="Education" class="tabcontent"> +<div id="Education" class="tab-content"> <div class="content"> <<if $schoolSuggestion == 0>> <p> @@ -89,7 +89,7 @@ </div> </div> -<div id="SRP" class="tabcontent"> +<div id="SRP" class="tab-content"> <div class="content"> <<if $policies.retirement.customAgePolicy == 0 && $policies.retirement.physicalAgePolicy == 0>> <br>''Default Retirement Age:'' in the absence of a defined slave retirement age, slaves will not remain sex slaves after reaching age $retirementAge. @@ -109,7 +109,7 @@ </div> </div> -<div id="FS" class="tabcontent"> +<div id="FS" class="tab-content"> <div class="content"> <span id="FutureSocietiesTab"></span> <script> diff --git a/src/interaction/slaveInteract.js b/src/interaction/slaveInteract.js index e54f7cb0c5b7919f7b2e0976c36e48e1e98bd092..03b5870a872e165e047e3aaab5780af02d2ffa4d 100644 --- a/src/interaction/slaveInteract.js +++ b/src/interaction/slaveInteract.js @@ -148,7 +148,7 @@ App.UI.SlaveInteract.fucktoyPref = function(slave) { linkDesc.text, () => { slave.toyHole = linkDesc.toyHole; - jQuery('#fucktoypref').empty().append(App.UI.SlaveInteract.fucktoyPref(slave)); + jQuery('#fucktoy-pref').empty().append(App.UI.SlaveInteract.fucktoyPref(slave)); }, ); @@ -203,7 +203,7 @@ App.UI.SlaveInteract.work = function(slave) { p.appendChild(App.UI.DOM.link(`Recall ${him}`, () => { removeJob(slave, slave.assignment, false); App.UI.SlaveInteract.work(slave); })); } else { div = document.createElement('div'); - div.id = "miniscene"; + div.id = "mini-scene"; p.appendChild(div); span = document.createElement('span'); @@ -271,7 +271,7 @@ App.UI.SlaveInteract.work = function(slave) { } div = document.createElement('div'); - div.id = "fucktoypref"; + div.id = "fucktoy-pref"; div.append(App.UI.SlaveInteract.fucktoyPref(slave)); span.appendChild(div); } @@ -1377,7 +1377,7 @@ App.UI.SlaveInteract.useSlaveDisplay = function(slave) { App.UI.SlaveInteract.refreshAll(V.slaves[V.slaveIndices[V.activeSlave.ID]]); // Display scene render results - $("#miniscene").append(frag); + $("#mini-scene").append(frag); } else { // just refresh App.UI.SlaveInteract.refreshAll(V.slaves[V.slaveIndices[V.activeSlave.ID]]); @@ -1447,7 +1447,7 @@ App.UI.SlaveInteract.fertility = function(slave) { His } = getPronouns(slave); const separator = document.createTextNode(` | `); - let fertilityblock = document.createElement('span'); + let fertilityBlock = document.createElement('span'); let link = document.createElement('div'); link.className = "choices"; if (slave.ovaries === 1 || slave.mpreg === 1 || slave.preg > 0) { @@ -1480,10 +1480,10 @@ App.UI.SlaveInteract.fertility = function(slave) { [], "Slave Interact" )); - fertilityblock.append(link); + fertilityBlock.append(link); } } else if (slave.preg >= -1) { - fertilityblock.append("Contraception and fertility: "); + fertilityBlock.append("Contraception and fertility: "); let fertility = document.createElement('span'); // fertility.id = "fertility"; fertility.style.fontWeight = "bold"; @@ -1504,7 +1504,7 @@ App.UI.SlaveInteract.fertility = function(slave) { } } fertility.textContent += ". "; - fertilityblock.appendChild(fertility); + fertilityBlock.appendChild(fertility); if (slave.preg === 0) { link.appendChild(App.UI.DOM.link( @@ -1514,7 +1514,7 @@ App.UI.SlaveInteract.fertility = function(slave) { App.UI.SlaveInteract.refreshAll(slave); }, )); - fertilityblock.append(link); + fertilityBlock.append(link); } else if (slave.preg === -1) { link.appendChild(App.UI.DOM.link( `Let ${him} get pregnant`, @@ -1523,7 +1523,7 @@ App.UI.SlaveInteract.fertility = function(slave) { App.UI.SlaveInteract.refreshAll(slave); }, )); - fertilityblock.append(link); + fertilityBlock.append(link); } else if (slave.induce === 1) { note.textContent += `Hormones are being slipped into ${his} food; ${he} will give birth suddenly and rapidly this week`; } else if (slave.preg > slave.pregData.normalBirth - 2 && slave.preg > slave.pregData.minLiveBirth && slave.broodmother === 0 && slave.labor === 0) { @@ -1537,9 +1537,9 @@ App.UI.SlaveInteract.fertility = function(slave) { [], "Slave Interact" )); - fertilityblock.append(link); - fertilityblock.appendChild(separator); - fertilityblock.append(App.UI.DOM.passageLink(`Give ${him} a cesarean section`, "csec")); + fertilityBlock.append(link); + fertilityBlock.appendChild(separator); + fertilityBlock.append(App.UI.DOM.passageLink(`Give ${him} a cesarean section`, "csec")); } else if (slave.broodmother > 0) { if (slave.broodmotherOnHold !== 1) { link.appendChild(App.UI.DOM.link( @@ -1549,14 +1549,14 @@ App.UI.SlaveInteract.fertility = function(slave) { slave.broodmotherCountDown = 38 - WombMinPreg(slave); }, )); - fertilityblock.append(link); + fertilityBlock.append(link); } if (slave.broodmotherOnHold !== 1 && slave.preg >= 36) { - fertilityblock.appendChild(separator); + fertilityBlock.appendChild(separator); } - fertilityblock.appendChild(separator); + fertilityBlock.appendChild(separator); if (slave.preg > 37) { - fertilityblock.append(App.UI.DOM.passageLink(`Induce mass childbirth`, "BirthStorm")); + fertilityBlock.append(App.UI.DOM.passageLink(`Induce mass childbirth`, "BirthStorm")); } } else if (slave.preg > slave.pregData.minLiveBirth) { link.appendChild(App.UI.DOM.link( @@ -1568,7 +1568,7 @@ App.UI.SlaveInteract.fertility = function(slave) { [], "csec" )); - fertilityblock.append(link); + fertilityBlock.append(link); } else if (slave.preg > 0 && slave.breedingMark === 1 && V.propOutcome === 1 && V.arcologies[0].FSRestart !== "unset" && V.eugenicsFullControl !== 1 && (slave.pregSource === -1 || slave.pregSource === -6)) { note.textContent += "You are forbidden from aborting an Elite child"; } else if (slave.preg > 0) { @@ -1581,9 +1581,9 @@ App.UI.SlaveInteract.fertility = function(slave) { [], "Abort" )); - fertilityblock.append(link); + fertilityBlock.append(link); } - fertilityblock.append(note); + fertilityBlock.append(note); } } if ( @@ -1618,7 +1618,7 @@ App.UI.SlaveInteract.fertility = function(slave) { } else { title.append("Normal gestation and birth. "); } - fertilityblock.appendChild(title); + fertilityBlock.appendChild(title); if (slave.preg >= slave.pregData.minLiveBirth) { if (slave.pregControl === "labor suppressors") { link.appendChild(App.UI.DOM.link( @@ -1668,9 +1668,9 @@ App.UI.SlaveInteract.fertility = function(slave) { )); } } - fertilityblock.appendChild(link); + fertilityBlock.appendChild(link); } - return jQuery('#fertilityblock').empty().append(fertilityblock); + return jQuery('#fertility-block').empty().append(fertilityBlock); }; App.UI.SlaveInteract.curatives = function(slave) { @@ -3235,7 +3235,7 @@ App.UI.SlaveInteract.custom = (function() { () => { slave.custom.image = null; App.UI.SlaveInteract.custom(slave); - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); }, ) ); @@ -3295,10 +3295,10 @@ App.UI.SlaveInteract.custom = (function() { filename: this.value, format: jQuery("#customImageFormatSelector").val() }; - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); } else { c.image.filename = this.value; - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); } } }); @@ -3347,7 +3347,7 @@ App.UI.SlaveInteract.custom = (function() { () => { slave.custom.hairVector = 0; App.UI.SlaveInteract.custom(slave); - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); }, ) ); @@ -3412,7 +3412,7 @@ App.UI.SlaveInteract.generateRows = function(array, slave, category, accessCheck let unlocked = false; if (accessCheck === true) { if (category === "chastity") { - let text = array[i].text.toLowerCase(); // Yucky. Category name does not match for chastity (since it sets multiple kinds of chastity at once). Compare using a lowercased name instead. + let text = array[i].text.toLowerCase(); // Yucky. Category name does not match for chastity (since it sets multiple kinds of chastity at once). Compare using a lowercase name instead. unlocked = isItemAccessible.entry(text, category, slave); } else { unlocked = isItemAccessible.entry(array[i].updateSlave[category], category, slave); diff --git a/src/interaction/wardrobeUse.js b/src/interaction/wardrobeUse.js index 2203e7df071f580dba6758ab14120deaeeb32c32..a6ab97ab0ee35188919346579e4f9cb245dc053d 100644 --- a/src/interaction/wardrobeUse.js +++ b/src/interaction/wardrobeUse.js @@ -916,6 +916,6 @@ App.UI.Wardrobe.refreshAll = function(slave) { App.UI.Wardrobe.vaginalAttachment(slave); App.UI.Wardrobe.dickAccessory(slave); App.UI.Wardrobe.chastity(slave); - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); return; }; diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js index fe70f5f55039ea83c3ab49dd2a6d58c17c1a0eba..bde8b5d6e49e9e8b4c2c255e391894e1f0fec53d 100644 --- a/src/js/DefaultRules.js +++ b/src/js/DefaultRules.js @@ -2936,7 +2936,7 @@ globalThis.DefaultRules = (function() { r += `<br>All of ${slave.slaveName}'s tags have been removed.`; } - // mass removal of old tags, variant from GUI swith. + // mass removal of old tags, variant from GUI switch. if (rule.labelTagsClear === true) { slave.custom.label = slave.custom.label.replace(/(?:\[.+\])+/, ""); r += `<br>All of ${slave.slaveName}'s tags have been removed.`; diff --git a/src/js/SlaveState.js b/src/js/SlaveState.js index c9fc7b51bff3cf4dfb51d387d46e67910c4a3f8f..84cb03c49c9c90a7e9526374210e0639af65dc85 100644 --- a/src/js/SlaveState.js +++ b/src/js/SlaveState.js @@ -270,6 +270,7 @@ App.Entity.SlaveActionsCountersState = class { this.abortions = 0; /** number of miscarriages as your slave */ this.miscarriages = 0; + /** number of labors slave has undergone */ this.laborCount = 0; /** oral sex count */ this.oral = 0; @@ -518,10 +519,15 @@ App.Entity.SlaveState = class SlaveState { this.rivalryTarget = 0; /** slave will serve subTarget (ID) */ this.subTarget = 0; + /** ID of father */ this.father = 0; + /** ID of mother */ this.mother = 0; + /** number of slave's children that are your in your stock */ this.daughters = 0; + /** number of slave's siblings that are your in your stock */ this.sisters = 0; + /** Can the slave recruit relatives. Non-random slaves should be left off. */ this.canRecruit = 0; /** * can slave choose own assignment diff --git a/src/js/economyJS.js b/src/js/economyJS.js index 074594e69a210d70c30f6b1648ec21411bd29f50..3b520bae0e84b9b2b8219c3a4a4b6c8d289f72ed 100644 --- a/src/js/economyJS.js +++ b/src/js/economyJS.js @@ -2343,6 +2343,9 @@ globalThis.cashX = function(cost, what, who) { } } } + + App.Utils.scheduleSidebarRefresh(); + return cost; }; @@ -2401,6 +2404,8 @@ globalThis.repX = function(rep, what, who) { V.rep = 0; } + App.Utils.scheduleSidebarRefresh(); + return rep; }; diff --git a/src/js/extendedFamilyModeJS.js b/src/js/extendedFamilyModeJS.js index cf9a8c3a9a50d309c4a702b346312afc9f701a23..18887bac233bcab2d60f4c66f80796176670ecb0 100644 --- a/src/js/extendedFamilyModeJS.js +++ b/src/js/extendedFamilyModeJS.js @@ -159,7 +159,7 @@ globalThis.isAunt = function(niece, aunt) { return false; }; -// testtest catches the case if a mother is a father or a father a mother - thank you familyAnon, for this code +// catches the case if a mother is a father or a father a mother - thank you familyAnon, for this code globalThis.sameTParent = function(slave1, slave2) { if (slave1.mother === -1 && slave1.father === -1 && slave2.mother === -1 && slave2.father === -1) { return 1; diff --git a/src/js/futureSocietyJS.js b/src/js/futureSocietyJS.js index 3253f9605fc3bb307025e32306f9bbeac4451d77..49b9735e00b5c9804cbbd7b7ebe8e6cdfb019aca 100644 --- a/src/js/futureSocietyJS.js +++ b/src/js/futureSocietyJS.js @@ -393,7 +393,7 @@ globalThis.FutureSocieties = (function() { DecorationCleanup(); } - /** Caculate the number of FS credits that the player still has available (unspent) + /** Calculate the number of FS credits that the player still has available (unspent) * Call as FutureSocieties.availCredits() * @returns {number} */ diff --git a/src/js/porn.js b/src/js/porn.js index 6a48d23fd9d9d41394e1e13638e8afcfa6b442ca..f646c25d68c73825a8a718a4be70d13bb9313073 100644 --- a/src/js/porn.js +++ b/src/js/porn.js @@ -621,7 +621,7 @@ App.Porn.getGenresByType = function(type) { }; /** Returns a string with the pipe-separated SugarCube links necessary to set any valid genre for this slave. - * @param {string} page Sugarcube passage name to redirect to when the link is clicked + * @param {string} page SugarCube passage name to redirect to when the link is clicked */ App.Porn.genreChoiceLinks = function(page, slave) { let makeLink = function(genre) { return App.UI.link(genre.uiName(), (s, g) => s.porn.focus = g.focusName, [slave, genre], page); }; diff --git a/src/js/pregJS.js b/src/js/pregJS.js index ff2318cf4f9eac1d2555a0d80ab34c416c1630ae..addda73e7fb64548d9d50c716e82124ae0e0b148 100644 --- a/src/js/pregJS.js +++ b/src/js/pregJS.js @@ -1,16 +1,16 @@ /* Major props to the anons who worked together to forge the Super Pregnancy Project. Let your legacy go unforgotten.*/ globalThis.getPregBellySize = function(s) { let targetLen; - let gestastionWeek = s.preg; + let gestationWeek = s.preg; let fetuses = s.pregType; let phi = 1.618; - if (gestastionWeek <= 32) { - targetLen = ((0.00006396 * Math.pow(gestastionWeek, 4)) - (0.005501 * Math.pow(gestastionWeek, 3)) + (0.161 * Math.pow(gestastionWeek, 2)) - (0.76 * gestastionWeek) + 0.208); - } else if (gestastionWeek <= 106) { - targetLen = ((-0.0000004675 * Math.pow(gestastionWeek, 4)) + (0.0001905 * Math.pow(gestastionWeek, 3)) - (0.029 * Math.pow(gestastionWeek, 2)) + (2.132 * gestastionWeek) - 16.575); + if (gestationWeek <= 32) { + targetLen = ((0.00006396 * Math.pow(gestationWeek, 4)) - (0.005501 * Math.pow(gestationWeek, 3)) + (0.161 * Math.pow(gestationWeek, 2)) - (0.76 * gestationWeek) + 0.208); + } else if (gestationWeek <= 106) { + targetLen = ((-0.0000004675 * Math.pow(gestationWeek, 4)) + (0.0001905 * Math.pow(gestationWeek, 3)) - (0.029 * Math.pow(gestationWeek, 2)) + (2.132 * gestationWeek) - 16.575); } else { - targetLen = ((-0.00003266 * Math.pow(gestastionWeek, 2)) + (0.076 * gestastionWeek) + 43.843); + targetLen = ((-0.00003266 * Math.pow(gestationWeek, 2)) + (0.076 * gestationWeek) + 43.843); } let bellySize = ((4 / 3) * (Math.PI) * (phi / 2) * (Math.pow((targetLen / 2), 3)) * fetuses); @@ -383,14 +383,14 @@ globalThis.setPregType = function(actor) { } if (actor.geneticQuirks.superfetation === 2 && actor.womb.length > 0) { - let ftvol = FetusGetPrediction(actor, actor.pregData.normalBirth); - let cmvol = ftvol * actor.womb.length; - let maxvol = actor.pregAdaptation*2000; + let ftVol = FetusGetPrediction(actor, actor.pregData.normalBirth); + let cmVol = ftVol * actor.womb.length; + let maxVol = actor.pregAdaptation*2000; if (V.seeHyperPreg === 0) { - maxvol /= 10; // without hyperpreg enabled it's limited to be roughly ten times smaller. + maxVol /= 10; // without hyperpreg enabled it's limited to be roughly ten times smaller. } - let freevol = maxvol - cmvol; - let coeff = ((maxvol/actor.womb.length) / (freevol/ftvol)) / 2; // more divide to 2 is to balance for ensured 1 ova even if over limit. + let freeVol = maxVol - cmVol; + let coeff = ((maxVol/actor.womb.length) / (freeVol/ftVol)) / 2; // more divide to 2 is to balance for ensured 1 ova even if over limit. if (coeff < 0) { coeff = 0; } @@ -408,7 +408,7 @@ globalThis.setPregType = function(actor) { */ if (ovum < 1) { ovum = 1; } - // console.log("Name: ", actor.slaveName, " ftvol:", ftvol, " cmvol:", cmvol, " maxvol:", maxvol, " freevol:", freevol, " coeff:", coeff, " fertilityStack: ", fertilityStack, " ovum: ", ovum); + // console.log("Name: ", actor.slaveName, " ftVol:", ftVol, " cmVol:", cmVol, " maxVol:", maxVol, " freeVol:", freeVol, " coeff:", coeff, " fertilityStack: ", fertilityStack, " ovum: ", ovum); } return Math.ceil(ovum); diff --git a/src/js/quickListJS.js b/src/js/quickListJS.js index 7a5f3757026d8e74fea6f426244fbb77d1ec4c0c..9b37d48e85a369d446b8af140291c3435b36025a 100644 --- a/src/js/quickListJS.js +++ b/src/js/quickListJS.js @@ -86,27 +86,27 @@ globalThis.sortIncubatorPossiblesByPreviousSort = function() { }; globalThis.sortNurseryPossiblesByName = function() { - let $sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let $sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); $sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-name'); - $($sortedNurseryPossibles).appendTo($('#qlNursery')); + $($sortedNurseryPossibles).appendTo($('#ql-nursery')); }; globalThis.sortNurseryPossiblesByPregnancyWeek = function() { - let $sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let $sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); $sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-preg-week'); - $($sortedNurseryPossibles).appendTo($('#qlNursery')); + $($sortedNurseryPossibles).appendTo($('#ql-nursery')); }; globalThis.sortNurseryPossiblesByPregnancyCount = function() { - let $sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let $sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); $sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-preg-count'); - $($sortedNurseryPossibles).appendTo($('#qlNursery')); + $($sortedNurseryPossibles).appendTo($('#ql-nursery')); }; globalThis.sortNurseryPossiblesByReservedSpots = function() { - let $sortedNurseryPossibles = $('#qlNursery div.possible').detach(); + let $sortedNurseryPossibles = $('#ql-nursery div.possible').detach(); $sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-reserved-spots'); - $($sortedNurseryPossibles).appendTo($('#qlNursery')); + $($sortedNurseryPossibles).appendTo($('#ql-nursery')); }; globalThis.sortNurseryPossiblesByPreviousSort = function() { diff --git a/src/js/removeActiveSlave.js b/src/js/removeActiveSlave.js index eb32e2872f8dede7976205ae5c0deca11ca5f9c8..8b48b96ba8920b748cf6313baf314d14d1c13d6f 100644 --- a/src/js/removeActiveSlave.js +++ b/src/js/removeActiveSlave.js @@ -198,8 +198,9 @@ globalThis.removeActiveSlave = function() { } } Object.values(V.missingTable).forEach(s => { - if (s.mother === V.activeSlave.ID || s.father === V.activeSlave.ID) + if (s.mother === V.activeSlave.ID || s.father === V.activeSlave.ID) { missing = true; + } }); if (missing) { V.missingTable[V.missingParentID] = { @@ -220,10 +221,12 @@ globalThis.removeActiveSlave = function() { V.boomerangSlave.missingParentTag = V.missingParentID; } Object.values(V.missingTable).forEach(s => { - if (s.mother === V.activeSlave.ID) + if (s.mother === V.activeSlave.ID) { s.mother = V.missingParentID; - if (s.father === V.activeSlave.ID) + } + if (s.father === V.activeSlave.ID) { s.father = V.missingParentID; + } }); V.missingParentID--; } @@ -324,8 +327,9 @@ globalThis.removeNonNGPSlave = function(removedSlave) { } } Object.values(V.missingTable).forEach(s => { - if (s.mother == removedSlave.ID || s.father == removedSlave.ID) + if (s.mother === removedSlave.ID || s.father === removedSlave.ID) { missing = true; + } }); if (missing) { V.missingTable[V.missingParentID] = { @@ -340,10 +344,12 @@ globalThis.removeNonNGPSlave = function(removedSlave) { inbreedingCoeff: removedSlave.inbreedingCoeff }; Object.values(V.missingTable).forEach(s => { - if (s.mother === removedSlave.ID) + if (s.mother === removedSlave.ID) { s.mother = V.missingParentID; - if (s.father === removedSlave.ID) + } + if (s.father === removedSlave.ID) { s.father = V.missingParentID; + } }); V.missingParentID--; } diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js index ee6a875b4b8b3812b41a7668857ebcd8ed74227b..a12f0ca42cca2cbbf52be9c011728243153623a8 100644 --- a/src/js/rulesAssistantOptions.js +++ b/src/js/rulesAssistantOptions.js @@ -204,7 +204,7 @@ globalThis.rulesAssistantOptions = (function() { render(name) { const tab = document.createElement("div"); tab.id = name; - tab.className = "tabcontent"; + tab.className = "tab-content"; this.tabContent_ = document.createElement("div"); this.tabContent_.classList.add("content"); @@ -222,7 +222,7 @@ globalThis.rulesAssistantOptions = (function() { static makeTabButton(name, text) { const btn = document.createElement("button"); - btn.className = "tablinks"; + btn.className = "tab-links"; btn.id = `tab ${name}`; btn.innerHTML = text; btn.onclick = (event) => App.UI.tabbar.openTab(event, name); @@ -1574,7 +1574,7 @@ globalThis.rulesAssistantOptions = (function() { const element = document.createElement("div"); element.className = "ra-setters"; this.tabButtons_ = document.createElement("div"); - this.tabButtons_.className = "tabbar"; + this.tabButtons_.className = "tab-bar"; element.appendChild(this.tabButtons_); return element; } diff --git a/src/js/rulesAutosurgery.js b/src/js/rulesAutosurgery.js index c20bc4f188cd8563c80d4b04f8543bd0a28e8e6a..8c6f7aed7cc0b8b09cc1f924d1b47756ff66005d 100644 --- a/src/js/rulesAutosurgery.js +++ b/src/js/rulesAutosurgery.js @@ -236,7 +236,10 @@ globalThis.rulesAutosurgery = (function() { if (slave.lactation === 2 && thisSurgery.lactation === 0) { commitProcedure(`surgery to remove ${his} lactation implants`, s => { s.lactation = 0; }); } else if (slave.lactation !== 2 && (thisSurgery.lactation === 1)) { - commitProcedure("lactation inducing implanted drugs", s => { s.lactation = 2, s.rules.lactation = "none"; }); + commitProcedure("lactation inducing implanted drugs", s => { + s.lactation = 2; + s.rules.lactation = "none"; + }); } else if ((slave.boobShape === "saggy" || slave.boobShape === "downward-facing") && thisSurgery.cosmetic > 0 && slave.breastMesh !== 1) { commitProcedure("a breast lift", s => { s.boobShape = "normal"; }); } else if ((slave.boobShape === "normal" || slave.boobShape === "wide-set") && thisSurgery.cosmetic > 0 && slave.breastMesh !== 1) { diff --git a/src/js/salon.js b/src/js/salon.js index f470eb329570dcd84af5b4b89fae4e2387f37ce8..05ceb4323926af5e0dee05925c6ff9efa6d0b662 100644 --- a/src/js/salon.js +++ b/src/js/salon.js @@ -245,7 +245,7 @@ App.Medicine.Salon.ears = function(slave, {primaryEarColor = 0, secondaryEarColo "Match current hair", () => { slave.earTColor = slave.hColor; - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); apply(); } ) @@ -277,7 +277,7 @@ App.Medicine.Salon.ears = function(slave, {primaryEarColor = 0, secondaryEarColo `Color ${his} ears`, () => { slave.earTColor = (primaryEarColor + secondaryEarColor); - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); cashX(forceNeg(V.modCost), "slaveMod", slave); App.Medicine.Salon.ears(slave); // discard selections after locking them in. } @@ -287,7 +287,7 @@ App.Medicine.Salon.ears = function(slave, {primaryEarColor = 0, secondaryEarColo frag.append(p); } } - return jQuery("#salonEars").empty().append(frag); + return jQuery("#salon-ears").empty().append(frag); function createList(array, method) { const links = []; @@ -303,7 +303,7 @@ App.Medicine.Salon.ears = function(slave, {primaryEarColor = 0, secondaryEarColo return App.UI.DOM.generateLinksStrip(links); } function apply() { - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); App.Medicine.Salon.ears( slave, { @@ -343,7 +343,7 @@ App.Medicine.Salon.hair = function(slave, {primaryHairColor = 0, secondaryHairCo frag.append(wigStyle()); frag.append(wigLength()); } - return jQuery("#salonHair").empty().append(frag); + return jQuery("#salon-hair").empty().append(frag); function hairDye() { const frag = new DocumentFragment(); @@ -359,7 +359,7 @@ App.Medicine.Salon.hair = function(slave, {primaryHairColor = 0, secondaryHairCo "Restore natural color", () => { slave.hColor = slave.origHColor; - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); cashX(forceNeg(V.modCost), "slaveMod", slave); apply(); } @@ -392,7 +392,7 @@ App.Medicine.Salon.hair = function(slave, {primaryHairColor = 0, secondaryHairCo `Color ${his} hair`, () => { slave.hColor = (primaryHairColor + secondaryHairColor); - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); cashX(forceNeg(V.modCost), "slaveMod", slave); App.Medicine.Salon.hair(slave); // discard selections after locking them in. } @@ -565,7 +565,7 @@ App.Medicine.Salon.hair = function(slave, {primaryHairColor = 0, secondaryHairCo `Change`, () => { slave.earTColor = (primaryHairColor + secondaryHairColor); - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); cashX(forceNeg(V.modCost), "slaveMod", slave); App.Medicine.Salon.hair(slave); // discard selections after locking them in. } @@ -675,7 +675,7 @@ App.Medicine.Salon.hair = function(slave, {primaryHairColor = 0, secondaryHairCo } function apply() { - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); App.Medicine.Salon.hair( slave, { @@ -704,7 +704,7 @@ App.Medicine.Salon.tail = function(slave, {primaryTailColor = 0, secondaryTailCo frag.append(tailDye()); } - return jQuery("#salonTail").empty().append(frag); + return jQuery("#salon-tail").empty().append(frag); function tailDye() { const frag = new DocumentFragment(); @@ -720,7 +720,7 @@ App.Medicine.Salon.tail = function(slave, {primaryTailColor = 0, secondaryTailCo "Match current hair", () => { slave.tailColor = slave.hColor; - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); cashX(forceNeg(V.modCost), "slaveMod", slave); apply(); } @@ -753,7 +753,7 @@ App.Medicine.Salon.tail = function(slave, {primaryTailColor = 0, secondaryTailCo `Color ${his} tail`, () => { slave.tailColor = (primaryTailColor + secondaryTailColor); - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); cashX(forceNeg(V.modCost), "slaveMod", slave); App.Medicine.Salon.tail(slave); // discard selections after locking them in. } @@ -785,7 +785,7 @@ App.Medicine.Salon.tail = function(slave, {primaryTailColor = 0, secondaryTailCo } function apply() { - App.Art.refreshSlaveArt(slave, 3, "artFrame"); + App.Art.refreshSlaveArt(slave, 3, "art-frame"); App.Medicine.Salon.tail( slave, { diff --git a/src/js/sexActsJS.js b/src/js/sexActsJS.js index 095ba03a20b227056e8f3d2b9fcc75056c472b2d..5342a4f4806319a91ac81dce73412f06e9c77bb7 100644 --- a/src/js/sexActsJS.js +++ b/src/js/sexActsJS.js @@ -371,12 +371,12 @@ globalThis.SimpleSexAct = (function() { * count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave. * If count is left undefined it will assume it to be 1. * Intended to be a simple "x got fucked y times by z and I don't want to keep coding it". - * @param {App.Entity.SlaveState} subslave - * @param {App.Entity.SlaveState} domslave + * @param {App.Entity.SlaveState} subSlave + * @param {App.Entity.SlaveState} domSlave * @param {number} fuckCount * @returns {string} */ - function SimpleSlaveSlaveFucking(subslave, domslave, fuckCount = 1) { + function SimpleSlaveSlaveFucking(subSlave, domSlave, fuckCount = 1) { let fuckTarget = 0; let r = ""; let slave1ID; @@ -386,57 +386,57 @@ globalThis.SimpleSexAct = (function() { for (let j = 0; j < fuckCount; j++) { // there is a reason randomization happens inside cycle - to spread fuck around, otherwise cycle isn't even needed fuckTarget = jsRandom(1, 100); - if (subslave.nipples === "fuckable" && canPenetrate(domslave) && fuckTarget > 80) { + if (subSlave.nipples === "fuckable" && canPenetrate(domSlave) && fuckTarget > 80) { sex = "mammary"; if (passage() === "SA serve your other slaves") { - if (subslave.ID === V.slaves[V.i].ID) { + if (subSlave.ID === V.slaves[V.i].ID) { slave1ID = V.slaves[V.i].ID; - slave2ID = domslave.ID; + slave2ID = domSlave.ID; } else { - slave1ID = subslave.ID; + slave1ID = subSlave.ID; slave2ID = V.slaves[V.i].ID; } } else { - slave1ID = subslave.ID; - slave2ID = domslave.ID; + slave1ID = subSlave.ID; + slave2ID = domSlave.ID; } - } else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) { + } else if (canDoVaginal(subSlave) && subSlave.vagina > 0 && canPenetrate(domSlave) && fuckTarget > 33) { sex = "vaginal"; if (passage() === "SA serve your other slaves") { - if (subslave.ID === V.slaves[V.i].ID) { + if (subSlave.ID === V.slaves[V.i].ID) { slave1ID = V.slaves[V.i].ID; - slave2ID = domslave.ID; + slave2ID = domSlave.ID; } else { - slave1ID = subslave.ID; + slave1ID = subSlave.ID; slave2ID = V.slaves[V.i].ID; } } else { - slave1ID = subslave.ID; - slave2ID = domslave.ID; + slave1ID = subSlave.ID; + slave2ID = domSlave.ID; } - if (canImpreg(subslave, domslave)) { - r += knockMeUp(subslave, 3, 0, domslave.ID, 1); + if (canImpreg(subSlave, domSlave)) { + r += knockMeUp(subSlave, 3, 0, domSlave.ID, 1); } - } else if (canDoAnal(subslave) && subslave.anus > 0 && canPenetrate(domslave) && fuckTarget > 10) { + } else if (canDoAnal(subSlave) && subSlave.anus > 0 && canPenetrate(domSlave) && fuckTarget > 10) { // i think would impregnate from anal here even without .mpreg? same in original widget too sex = "anal"; - if (canImpreg(subslave, domslave) && subslave.mpreg === 1) { - r += knockMeUp(subslave, 3, 1, domslave.ID, 1); + if (canImpreg(subSlave, domSlave) && subSlave.mpreg === 1) { + r += knockMeUp(subSlave, 3, 1, domSlave.ID, 1); } if (passage() === "SA serve your other slaves") { - if (subslave.ID === V.slaves[V.i].ID) { + if (subSlave.ID === V.slaves[V.i].ID) { slave1ID = V.slaves[V.i].ID; - slave2ID = domslave.ID; + slave2ID = domSlave.ID; } else { - slave1ID = subslave.ID; + slave1ID = subSlave.ID; slave2ID = V.slaves[V.i].ID; } } else { - slave1ID = subslave.ID; - slave2ID = domslave.ID; + slave1ID = subSlave.ID; + slave2ID = domSlave.ID; } } else { - actX(subslave, "oral"); + actX(subSlave, "oral"); } if (typeof slave1ID === Number && typeof slave2ID === Number) { seX(V.slaves[slave1ID], sex, V.slaves[slave2ID], "penetrative"); diff --git a/src/js/slaveCostJS.js b/src/js/slaveCostJS.js index 064e183ef1fa25f82e8219e31a8df47976ac6bce..3928d8c7b03a5dbaab01c9cf4f1c2e4cf49f3149 100644 --- a/src/js/slaveCostJS.js +++ b/src/js/slaveCostJS.js @@ -601,7 +601,7 @@ globalThis.BeautyArray = (function() { if (slave.butt <= 2) { adjustBeauty("Small Butt: General", (2 * (slave.butt - 1))); /* 2 */ } else if (slave.butt <= 4) { - adjustBeauty("Big Bubble Buttt: General", (2 + (1.5 * (slave.butt - 2)))); /* 5 */ + adjustBeauty("Big Bubble Butt: General", (2 + (1.5 * (slave.butt - 2)))); /* 5 */ } else if (slave.butt <= 8) { adjustBeauty("Ridiculous Butt: General", (2 + (1.5 * (slave.butt - 2)))); /* 11 */ } else { diff --git a/src/js/slaveListing.js b/src/js/slaveListing.js index 8052c5bd80847693811a8fe70788bb23d958ffcb..f6df4dfb166f5ffe87977ed713ccad2ecb4067c4 100644 --- a/src/js/slaveListing.js +++ b/src/js/slaveListing.js @@ -622,7 +622,7 @@ App.UI.SlaveList.listSJFacilitySlaves = function(facility, facilityPassage, show if (V.sortSlavesMain) { frag.append(this.sortingLinks(facilityPassage)); } - const tabbar = App.UI.DOM.appendNewElement("div", frag, '', "tabbar"); + const tabbar = App.UI.DOM.appendNewElement("div", frag, '', "tab-bar"); tabbar.append( App.UI.tabbar.tabButtonDOM('assign', tabCaptions.assign), App.UI.tabbar.tabButtonDOM('remove', tabCaptions.remove), @@ -710,7 +710,7 @@ App.UI.SlaveList.listNGPSlaves = function() { const frag = document.createDocumentFragment(); frag.append(this.sortingLinks(thisPassage)); - const tabbar = App.UI.DOM.appendNewElement("div", frag, '', "tabbar"); + const tabbar = App.UI.DOM.appendNewElement("div", frag, '', "tab-bar"); tabbar.append( App.UI.tabbar.tabButtonDOM('assign', "Import a slave"), App.UI.tabbar.tabButtonDOM('remove', "Remove from import") @@ -1032,7 +1032,7 @@ App.UI.SlaveList.penthousePage = function() { } const div = document.createElement("div"); - div.classList.add("tabbar"); + div.classList.add("tab-bar"); if (V.useSlaveSummaryTabs === 0) { const links = []; for (const tab of tabs) { diff --git a/src/js/utilsFC.js b/src/js/utilsFC.js index b05b79d2a10f51fd3058e54c5a1b3403406a967a..42be8f0261f54d552690c62f43936d56d61a3e20 100644 --- a/src/js/utilsFC.js +++ b/src/js/utilsFC.js @@ -1130,11 +1130,11 @@ globalThis.onlyPlural = function(number, single, plural) { } return asPlural(single, plural); }; -globalThis.Seperator = function(seperatorObject) { - if (seperatorObject.need) { - return seperatorObject.text; +globalThis.Separator = function(SeparatorObject) { + if (SeparatorObject.need) { + return SeparatorObject.text; } - seperatorObject.need = true; + SeparatorObject.need = true; return ""; }; /** @@ -3442,3 +3442,25 @@ globalThis.deflate = function(slave) { slave.cumSource = 0; SetBellySize(slave); }; + +/** Notify the game that the sidbar needs to be refreshed as soon as possible, but do not do it immediately. + * This allows us to call this function repeatedly without impacting performance (for example, from repX() and cashX()). + * The game will redraw the sidebar exactly once, as soon as all the scripts have finished executing. + */ +App.Utils.scheduleSidebarRefresh = (function() { + let refresh = false; + + function updateSidebar() { + refresh = false; + UIBar.update(); + } + + function schedule() { + if (!refresh) { + refresh = true; + setTimeout(updateSidebar, 0); + } + } + + return schedule; +})(); diff --git a/src/js/utilsSC.js b/src/js/utilsSC.js index c424d660b07a8ad10dd97262ec90e1717fb751bd..a5319a21cf3f1023b9103e99d867df0feb899050 100644 --- a/src/js/utilsSC.js +++ b/src/js/utilsSC.js @@ -156,11 +156,11 @@ App.UI.tabbar = function() { function openTab(evt, tabName) { /* var passage = passage().trim().replace(/ /g,"+");*/ - const tabcontent = document.getElementsByClassName("tabcontent"); + const tabcontent = document.getElementsByClassName("tab-content"); for (let i = 0; i < tabcontent.length; i++) { tabcontent[i].style.display = "none"; } - const tablinks = document.getElementsByClassName("tablinks"); + const tablinks = document.getElementsByClassName("tab-links"); for (let i = 0; i < tablinks.length; i++) { tablinks[i].className = tablinks[i].className.replace(" active", ""); } @@ -175,7 +175,7 @@ App.UI.tabbar = function() { * @returns {string} */ function tabButton(name, text) { - return `<button class="tablinks" onclick="App.UI.tabbar.openTab(event, '${name}')" id="tab ${name}">${text}</button>`; + return `<button class="tab-links" onclick="App.UI.tabbar.openTab(event, '${name}')" id="tab ${name}">${text}</button>`; } /** @@ -187,7 +187,7 @@ App.UI.tabbar = function() { function tabButtonDOM(name, text, plainLink = false) { if (plainLink) { const link = document.createElement("a"); - link.classList.add("tablinks", "pure"); + link.classList.add("tab-links", "pure"); link.id = `tab ${name}`; link.textContent = text; link.addEventListener('click', event => { @@ -196,7 +196,7 @@ App.UI.tabbar = function() { return link; } else { const button = document.createElement("button"); - button.classList.add("tablinks"); + button.classList.add("tab-links"); button.id = `tab ${name}`; button.textContent = text; button.addEventListener('click', event => { @@ -212,7 +212,7 @@ App.UI.tabbar = function() { * @returns {string} */ function makeTab(name, content) { - return `<div id="${name}" class="tabcontent"><div class="content">${content}</div></div>`; + return `<div id="${name}" class="tab-content"><div class="content">${content}</div></div>`; } /** @@ -223,7 +223,7 @@ App.UI.tabbar = function() { function makeTabDOM(name, content) { const outerDiv = document.createElement("div"); outerDiv.id = name; - outerDiv.classList.add("tabcontent"); + outerDiv.classList.add("tab-content"); const innerDiv = document.createElement("div"); innerDiv.classList.add("content"); innerDiv.append(content); diff --git a/src/js/vignettes.js b/src/js/vignettes.js index 4c8c856db9d17302d27f16db2efbdaf44ebad21e..43c7894ffcc70b005e6310d99db8f955d32fff0f 100644 --- a/src/js/vignettes.js +++ b/src/js/vignettes.js @@ -2,11 +2,11 @@ * @param {App.Entity.SlaveState} slave * @returns {{text: string, type: string, effect: number}} */ -globalThis.GetVignette = function (slave) { +globalThis.GetVignette = function(slave) { /** @type {{text: string, type: string, effect: number}[]} */ let vignettes = []; - const { he, him, his, hers, himself, boy, He } = getPronouns(slave); + const {he, him, his, hers, himself, boy, He} = getPronouns(slave); if (slave.assignment === window.Job.WHORE || slave.assignment === window.Job.BROTHEL || slave.assignment === window.Job.MADAM) { let seed = jsRandom(1, 10); @@ -637,7 +637,7 @@ globalThis.GetVignette = function (slave) { effect: 1, }); vignettes.push({ - text: `a few partygoers were so impressed with ${his} provocative teasing that they left ${him} a sizable tip,`, + text: `a few party-goers were so impressed with ${his} provocative teasing that they left ${him} a sizable tip,`, type: "cash", effect: 1, }); @@ -2606,7 +2606,7 @@ globalThis.GetVignette = function (slave) { effect: 1, }); vignettes.push({ - text: `a few partygoers were so impressed with ${his} provocative teasing that they left ${him} a sizable tip,`, + text: `a few party-goers were so impressed with ${his} provocative teasing that they left ${him} a sizable tip,`, type: "cash", effect: 1, }); @@ -4611,7 +4611,6 @@ globalThis.GetVignette = function (slave) { type: "cash", effect: 1 }); - } } else { r.push({ diff --git a/src/js/wombJS.js b/src/js/wombJS.js index 1a1f8a0fd7ff3c0a20e75e01eb9b118ea4aad148..7b722795824c565f947f36b58e94bfad5b952c43 100644 --- a/src/js/wombJS.js +++ b/src/js/wombJS.js @@ -271,7 +271,7 @@ globalThis.WombGetVolume = function(actor) { // most legacy code from pregJS.tw function getCurData(actor, age) { let i = 0; - let min, max, ageMin, ageMax, rateMin, rateMax, one, rateOne, rate, cage, csize; + let min, max, ageMin, ageMax, rateMin, rateMax, one, rateOne, rate, cAge, cSize; let data = {}; while (actor.pregData.fetusWeek[i + 1] < age && i < actor.pregData.fetusWeek.length - 1) { @@ -285,20 +285,20 @@ globalThis.WombGetVolume = function(actor) { // most legacy code from pregJS.tw rateMin = actor.pregData.fetusRate[i]; rateMax = actor.pregData.fetusRate[i + 1]; - cage = age - ageMin; + cAge = age - ageMin; one = (max - min) / (ageMax - ageMin); rateOne = (rateMax - rateMin) / (ageMax - ageMin); - rate = rateMin + (rateOne * cage); + rate = rateMin + (rateOne * cAge); - csize = (min + (one * cage)); - // console.log("min:"+min+" max:"+max+" ageMin:"+ageMin+" ageMax:"+ageMax+" one:"+one+" rateOne:"+rateOne+" cage:"+cage+" rate:"+rate+" csize:"+csize+" final size:"+csize*rate); + cSize = (min + (one * cAge)); + // console.log("min:"+min+" max:"+max+" ageMin:"+ageMin+" ageMax:"+ageMax+" one:"+one+" rateOne:"+rateOne+" cAge:"+cAge+" rate:"+rate+" cSize:"+cSize+" final size:"+cSize*rate); - data.size = csize; + data.size = cSize; data.rate = rate; - return data; // csize * rate; + return data; // cSize * rate; // maybe not very effective code, but simple and easy to debug. May be optimized more in future. } @@ -310,24 +310,24 @@ globalThis.WombGetVolume = function(actor) { // most legacy code from pregJS.tw try { actor.womb.forEach(ft => { /* legacy block for debug only - let gestastionWeek = ft.age; + let gestationWeek = ft.age; let oldLen; let oldVol; - if (gestastionWeek <= 32) { - oldLen = (0.00006396 * Math.pow(gestastionWeek, 4)) - - (0.005501 * Math.pow(gestastionWeek, 3)) + - (0.161 * Math.pow(gestastionWeek, 2)) - - (0.76 * gestastionWeek) + + if (gestationWeek <= 32) { + oldLen = (0.00006396 * Math.pow(gestationWeek, 4)) - + (0.005501 * Math.pow(gestationWeek, 3)) + + (0.161 * Math.pow(gestationWeek, 2)) - + (0.76 * gestationWeek) + 0.208; - } else if (gestastionWeek <= 106) { - oldLen = (-0.0000004675 * Math.pow(gestastionWeek, 4)) + - (0.0001905 * Math.pow(gestastionWeek, 3)) - - (0.029 * Math.pow(gestastionWeek, 2)) + - (2.132 * gestastionWeek) - + } else if (gestationWeek <= 106) { + oldLen = (-0.0000004675 * Math.pow(gestationWeek, 4)) + + (0.0001905 * Math.pow(gestationWeek, 3)) - + (0.029 * Math.pow(gestationWeek, 2)) + + (2.132 * gestationWeek) - 16.575; } else { - oldLen = (-0.00003266 * Math.pow(gestastionWeek,2)) + - (0.076 * gestastionWeek) + + oldLen = (-0.00003266 * Math.pow(gestationWeek,2)) + + (0.076 * gestationWeek) + 43.843; } */ @@ -412,7 +412,7 @@ globalThis.FetusGetPrediction = function(actor, age) { function getCurData(actor, age) { let i = 0; - let min, max, ageMin, ageMax, rateMin, rateMax, one, rateOne, rate, cage, csize; + let min, max, ageMin, ageMax, rateMin, rateMax, one, rateOne, rate, cAge, cSize; let data = {}; while (actor.pregData.fetusWeek[i + 1] < age && i < actor.pregData.fetusWeek.length - 1) { @@ -426,20 +426,20 @@ globalThis.FetusGetPrediction = function(actor, age) { rateMin = actor.pregData.fetusRate[i]; rateMax = actor.pregData.fetusRate[i + 1]; - cage = age - ageMin; + cAge = age - ageMin; one = (max - min) / (ageMax - ageMin); rateOne = (rateMax - rateMin) / (ageMax - ageMin); - rate = rateMin + (rateOne * cage); + rate = rateMin + (rateOne * cAge); - csize = (min + (one * cage)); - // console.log("min:"+min+" max:"+max+" ageMin:"+ageMin+" ageMax:"+ageMax+" one:"+one+" rateOne:"+rateOne+" cage:"+cage+" rate:"+rate+" csize:"+csize+" final size:"+csize*rate); + cSize = (min + (one * cAge)); + // console.log("min:"+min+" max:"+max+" ageMin:"+ageMin+" ageMax:"+ageMax+" one:"+one+" rateOne:"+rateOne+" cAge:"+cAge+" rate:"+rate+" cSize:"+cSize+" final size:"+cSize*rate); - data.size = csize; + data.size = cSize; data.rate = rate; - return data; // csize * rate; + return data; // cSize * rate; // maybe not very effective code, but simple and easy to debug. May be optimized more in future. } diff --git a/src/neighbor/arcologyDiplomacy.js b/src/neighbor/arcologyDiplomacy.js index 0f0a1c1962150e599433cef0f5d0514e43a633dd..26343a9e6c546724fa8de6e81bbb11126c24e7e7 100644 --- a/src/neighbor/arcologyDiplomacy.js +++ b/src/neighbor/arcologyDiplomacy.js @@ -41,12 +41,12 @@ App.Neighbor.selectInfluenceTarget = function(arcID) { const arcology = V.arcologies[arcID]; if (influenceSources.length > 0) { let eligibleTargets = []; - const obdedient = (arcology.government === "your trustees" || arcology.government === "your agent"); + const obedient = (arcology.government === "your trustees" || arcology.government === "your agent"); for (let targetID = 0; targetID < V.arcologies.length; ++targetID) { const target = V.arcologies[targetID]; if (arcology.direction !== target.direction) { - if (!obdedient || target.direction !== 0) { + if (!obedient || target.direction !== 0) { const {shared, conflicting} = FutureSocieties.diplomaticFSes(arcID, targetID); let count = 0; count += shared.filter(notMulticulturalism).length; @@ -158,3 +158,12 @@ App.Neighbor.PassiveFSInfluence = class { return t.join(" "); } }; + +/** Get an arcology name from a given set, preferring unused ones. + * @param {string[]} nameSet + * @returns {string} + */ +App.Neighbor.getUnusedName = function(nameSet) { + const filteredSet = nameSet.filter(n => !V.arcologies.some(a => a.name === n)); + return filteredSet.length > 0 ? filteredSet.random() : nameSet.random(); +}; diff --git a/src/neighbor/neighborInteract.js b/src/neighbor/neighborInteract.js index ae251c972d706d15ef29238cdd7dd659e1548d20..3ef6a2f64f23b4f2bf62790d7f2665adbc17d7e8 100644 --- a/src/neighbor/neighborInteract.js +++ b/src/neighbor/neighborInteract.js @@ -255,7 +255,7 @@ App.Neighbor.Interact = (function() { * @param {string} itemName - the item name to check to see if the player already has this item * @param {string} category - the category to check to see if the player already has this item * @param {string} itemDisplay - a display name for a group of the item; as in, "a shipment of XXX" or "enough XXX" - * @param {function} property - adjusts the global property controlling whether this item has been acquired + * @param {function(): void} property - adjusts the global property controlling whether this item has been acquired * @param {number} [itemPrice] - the price the player should pay for the item; by default, basePrice (computed above) */ function addAcquisitionBlock(fsRequired, itemName, category, itemDisplay, property, itemPrice = basePrice) { @@ -277,8 +277,8 @@ App.Neighbor.Interact = (function() { const link = App.UI.DOM.link(`Divert an outgoing shipment of ${itemDisplay}`, (f) => { property(); cashX(forceNeg(itemPrice), "capEx"); - // replaceDetails(arcID); - cash changed, force passage transition for sidebar update - }, [], "Neighbor Interact"); + replaceDetails(arcID); + }); const div = App.UI.DOM.appendNewElement("div", container, link); App.UI.DOM.appendNewElement("span", div, `Will cost ${cashFormat(itemPrice)}`, "detail"); } @@ -299,7 +299,7 @@ App.Neighbor.Interact = (function() { addAcquisitionBlock("FSDegradationist", "chains", "clothing", "binding chains", () => { V.boughtItem.clothing.chains = 1; }); addAcquisitionBlock("FSGenderFundamentalist", "a bunny outfit", "clothing", "bunny suits", () => { V.boughtItem.clothing.bunny = 1; }); addAcquisitionBlock("FSIntellectualDependency", "a bimbo outfit", "clothing", "bimbo attire", () => { V.boughtItem.clothing.bimbo = 1; }); - addAcquisitionBlock("FSSlaveProfessionalism", "a courtesan dress", "clothing", "cortesan dresses", () => { V.boughtItem.clothing.courtesan = 1; }); + addAcquisitionBlock("FSSlaveProfessionalism", "a courtesan dress", "clothing", "courtesan dresses", () => { V.boughtItem.clothing.courtesan = 1; }); // addAcquisitionBlock("FSPetiteAdmiration", "petite dress", "clothing", "petite-sized dresses", () => { V.boughtItem.clothing.petite = 1; }); addAcquisitionBlock("FSPhysicalIdealist", "body oil", "clothing", "body oil", () => { V.boughtItem.clothing.oil = 1; }); addAcquisitionBlock("FSHedonisticDecadence", "stretch pants and a crop-top", "clothing", "stretch pants and crop-tops", () => { V.boughtItem.clothing.lazyClothes = 1; }); diff --git a/src/npc/children/childInteract.tw b/src/npc/children/childInteract.tw index 16bc93ff74cca085f3ee9dbceb14a5512cab2594..4c02a0d67b625a5124aa0d837afb902b0cad0d69 100644 --- a/src/npc/children/childInteract.tw +++ b/src/npc/children/childInteract.tw @@ -19,21 +19,21 @@ <center> <span class="hotkey"> - <<print App.UI.Hotkeys.hotkeys("prevChild")>> + <<print App.UI.Hotkeys.hotkeys("prev-child")>> </span> -<span id="prevChild"> +<span id="prev-child"> <b> <<link "Prev" "Previous Child In Line">><</link>> </b> </span> <b><u>@@.pink;$activeChild.slaveName@@</u></b> -<span id="nextChild"> +<span id="next-child"> <b> <<link "Next" "Next Child In Line">><</link>> </b> </span> <span class="hotkey"> - <<print App.UI.Hotkeys.hotkeys("nextChild")>> + <<print App.UI.Hotkeys.hotkeys("next-child")>> </span> </center> <br> @@ -69,16 +69,16 @@ FIXME: /*TODO: These will most likely need to be reworked*/ <<if $extremeUnderage && $childSex>> <br> - <span id="miniscene"><i>Or use $him here:</i></span> + <span id="mini-scene"><i>Or use $him here:</i></span> <span id="sexoption"> <<if ($activeChild.vagina > -1)>> <<if canDoVaginal($activeChild)>> <<link "Fuck $him">> - <<replace "#miniscene">><<include "FVagina">><br> <</replace>> + <<replace "#mini-scene">><<include "FVagina">><br> <</replace>> <</link>> | <<if canDoAnal($activeChild)>> <<link "Use $his holes">> - <<replace "#miniscene">><<include "FButt">><br> <</replace>> + <<replace "#mini-scene">><<include "FButt">><br> <</replace>> <</link>> | <</if>> <<else>> @@ -89,49 +89,49 @@ FIXME: <span id="analsexoption"> <<if canDoAnal($activeChild)>> <<link "Fuck $his ass">> - <<replace "#miniscene">><<include "FAnus">><br> <</replace>> + <<replace "#mini-scene">><<include "FAnus">><br> <</replace>> <</link>> | <<else>> | <i>Remove $his chastity belt if you wish to fuck $his ass</i> <</if>> </span> <<link "Use $his mouth">> - <<replace "#miniscene">><<include "FLips">><br> <</replace>> + <<replace "#mini-scene">><<include "FLips">><br> <</replace>> <</link>> | <<link "Kiss $him">> - <<replace "#miniscene">><<include "FKiss">><br> <</replace>> + <<replace "#mini-scene">><<include "FKiss">><br> <</replace>> <</link>> | <<link "Play with $his tits">> - <<replace "#miniscene">><<include "FBoobs">><br> <</replace>> + <<replace "#mini-scene">><<include "FBoobs">><br> <</replace>> <</link>> | <<link "Caress $him">> - <<replace "#miniscene">><<include "FCaress">><br> <</replace>> + <<replace "#mini-scene">><<include "FCaress">><br> <</replace>> <</link>> | <<link "Give $him a hug">> - <<replace "#miniscene">><<include "FEmbrace">><br> <</replace>> + <<replace "#mini-scene">><<include "FEmbrace">><br> <</replace>> <</link>> | <<if $cheatMode>> <<link "Pat $his head">> - <<replace "#miniscene">><<include "FPat">><br> <</replace>> + <<replace "#mini-scene">><<include "FPat">><br> <</replace>> <</link>> | <</if>> <<link "Grope $his boobs">> - <<replace "#miniscene">><<include "FondleChildBoobs">><br> <</replace>> + <<replace "#mini-scene">><<include "FondleChildBoobs">><br> <</replace>> <</link>> | <<if $activeChild.nipples == "fuckable" && $PC.dick>> <<link "Fuck $his nipples">> - <<replace "#miniscene">><<include "FNippleFuck">><br> <</replace>> + <<replace "#mini-scene">><<include "FNippleFuck">><br> <</replace>> <</link>> | <</if>> <<if $activeChild.lactation && $activeChild.boobs >= 2000 && $activeChild.belly < 60000>> <<link "Drink $his milk">> - <<replace "#miniscene">><<include "FSuckle">><br> <</replace>> + <<replace "#mini-scene">><<include "FSuckle">><br> <</replace>> <</link>> | <</if>> <span id="analgropeoption"> <<if canDoAnal($activeChild)>> <<link "Grope $his butt">> - <<replace "#miniscene">><<include "FondleChildButt">><br> <</replace>> + <<replace "#mini-scene">><<include "FondleChildButt">><br> <</replace>> <</link>> | <</if>> </span> @@ -139,10 +139,10 @@ FIXME: <<if ($activeChild.vagina > -1)>> <<if canDoVaginal($activeChild)>> <<link "Grope $his pussy">> - <<replace "#miniscene">><<include "FondleChildVagina">><br> <</replace>> + <<replace "#mini-scene">><<include "FondleChildVagina">><br> <</replace>> <</link>> | <<link "Eat $him out">> - <<replace "#miniscene">><<include "FLickPussy">><br> <</replace>> + <<replace "#mini-scene">><<include "FLickPussy">><br> <</replace>> <</link>> | <</if>> <</if>> @@ -151,11 +151,11 @@ FIXME: <<if $activeChild.dick>> <<if !$activeChild.chastityPenis>> <<link "Grope $his dick">> - <<replace "#miniscene">><<include "FondleChildDick">><br> <</replace>> + <<replace "#mini-scene">><<include "FondleChildDick">><br> <</replace>> <</link>> | <<if canPenetrate($activeChild) && $policies.sexualOpenness == 1>> <<link "Ride $his dick">> - <<replace "#miniscene">><<include "FDick">><br> <</replace>> + <<replace "#mini-scene">><<include "FDick">><br> <</replace>> <</link>> | <</if>> <<else>> @@ -164,7 +164,7 @@ FIXME: <</if>> </span> <<if (hasAnyLegs($activeChild)) && $PC.dick != 0>> - <<link "Get a footjob">><<replace "#miniscene">><<set $childSex = 1>><<include "FFeet">><br> <</replace>><</link>> | + <<link "Get a footjob">><<replace "#mini-scene">><<set $childSex = 1>><<include "FFeet">><br> <</replace>><</link>> | <</if>> /* TODO: will children be able to be inflated? */ @@ -175,7 +175,7 @@ FIXME: | <<link "Fill $his ass with water">> <<set $activeChild.inflationType = "water">> <<set $activeChild.inflationMethod = 2>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpButt">><br><</replace>> <</link>> <</if>> @@ -184,7 +184,7 @@ FIXME: | <<link "Fill $his ass with aphrodisiacs">> <<set $activeChild.inflationType = "aphrodisiac">> <<set $activeChild.inflationMethod = 2>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpButt">><br><</replace>> <</link>> <</if>> @@ -192,7 +192,7 @@ FIXME: | <<link "Fill $his ass with curatives">> <<set $activeChild.inflationType = "curative">> <<set $activeChild.inflationMethod = 2>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpButt">><br><</replace>> <</link>> <</if>> @@ -200,7 +200,7 @@ FIXME: | <<link "Fill $his ass with rectal tighteners">> <<set $activeChild.inflationType = "tightener">> <<set $activeChild.inflationMethod = 2>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpButt">><br><</replace>> <</link>> <</if>> @@ -214,13 +214,13 @@ FIXME: | <<link "Fill $his ass with milk">> <<set $activeChild.inflationType = "milk">> <<set $activeChild.inflationMethod = 2>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpButt">><br><</replace>> <</link>> | <<link "Force-feed $him milk">> <<set $activeChild.inflationType = "milk">> <<set $activeChild.inflationMethod = 1>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpFace">><br><</replace>> <</link>> <</if>> @@ -234,13 +234,13 @@ FIXME: | <<link "Fill $his ass with cum">> <<set $activeChild.inflationType = "cum">> <<set $activeChild.inflationMethod = 2>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpButt">><br><</replace>> <</link>> | <<link "Force-feed $him cum">> <<set $activeChild.inflationType = "cum">> <<set $activeChild.inflationMethod = 1>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<include "FillUpFace">><br><</replace>> <</link>> <</if>> @@ -255,7 +255,7 @@ FIXME: | <<link "Fill $his ass with urine">> <<set $activeChild.inflationType = "urine">> <<set $activeChild.inflationMethod = 2>> - <<replace "#miniscene">><<include "FillUpButt">><br><</replace>> + <<replace "#mini-scene">><<include "FillUpButt">><br><</replace>> <</link>> <</if>> <</if>> @@ -269,20 +269,20 @@ FIXME: <<set $activeChild.inflationType = "food">> <<set $activeChild.inflationMethod = 1>> <<set $activeChild.inflation = 1>> - <<replace "#miniscene">><<include "ForceFeeding">><br><</replace>> + <<replace "#mini-scene">><<include "ForceFeeding">><br><</replace>> <</link>> <<if $activeChild.pregKnown == 0>> | <<link "Force $him to consume a gallon of slave food">> <<set $activeChild.inflationType = "food">> <<set $activeChild.inflationMethod = 1>> <<set $activeChild.inflation = 2>> - <<replace "#miniscene">><<include "ForceFeeding">><br><</replace>> + <<replace "#mini-scene">><<include "ForceFeeding">><br><</replace>> <</link>> | <<link "Force two gallons of slave food into $him">> <<set $activeChild.inflationType = "food">> <<set $activeChild.inflationMethod = 1>> <<set $activeChild.inflation = 3>> - <<replace "#miniscene">><<include "ForceFeeding">><br><</replace>> + <<replace "#mini-scene">><<include "ForceFeeding">><br><</replace>> <</link>> <</if>> <</if>> @@ -302,35 +302,35 @@ FIXME: <<if $farmyardKennels > 0 && $activeCanine != 0>> <<link "Have a $activeCanine.species mount $him">> <<set $animalType = "canine">> - <<replace "#miniscene">><<include "BeastFucked">><br> <</replace>> + <<replace "#mini-scene">><<include "BeastFucked">><br> <</replace>> <</link>> | <</if>> <<if $farmyardStables > 0 && $activeHooved.species != 0>> <<link "Let a $activeHooved.species mount $him">> <<set $animalType = "hooved">> - <<replace "#miniscene">><<include "BeastFucked">><br> <</replace>> + <<replace "#mini-scene">><<include "BeastFucked">><br> <</replace>> <</link>> | <</if>> <<if $farmyardCages > 0 && $activeFeline != 0>> <<link "Have a $activeFeline.species mount $him">> <<set $animalType = "feline">> - <<replace "#miniscene">><<include "BeastFucked">><br> <</replace>> + <<replace "#mini-scene">><<include "BeastFucked">><br> <</replace>> <</link>> | <</if>> <</if>> <<if $cheatMode>> <<link "Check $his deadliness">> - <<replace "#miniscene">><<include "Deadliness">><br> <</replace>> + <<replace "#mini-scene">><<include "Deadliness">><br> <</replace>> <</link>> | <</if>> <<link "Abuse $him">> - <<replace "#miniscene">><<include "FAbuse">><</replace>> + <<replace "#mini-scene">><<include "FAbuse">><</replace>> <</link>> <<if $seeIncest == 1>> <<set _availRelatives = availableRelatives($activeChild)>> <<if _availRelatives.mother>> | <<link "Fuck $him with $his mother">> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "mother">> <<include "FRelation">><br> <</replace>> <</link>> @@ -340,7 +340,7 @@ FIXME: /* <<if _availRelatives.father>> | <<link "Fuck $him with $his father">> - <<replace "#miniscene">><<set $partner = "father">> + <<replace "#mini-scene">><<set $partner = "father">> <<include "FRelation">><br> <</replace>> <</link>> <<elseif _availRelatives.fatherName !== null>> @@ -357,13 +357,13 @@ FIXME: <<else>> <<if $activeChild.sisters == 1>> | <<link "Fuck $him with $his _sister2">> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "sister">> <<include "FRelation">><br> <</replace>> <</link>> <<else>> | <<link "Fuck $him with one of $his sisters">> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "sister">> <<include "FRelation">><br> <</replace>> <</link>> @@ -377,31 +377,31 @@ FIXME: <<setLocalPronouns $slaves[_si] 2>> <<if ($activeChild.relationship)>> | <<link `"Fuck $him with $his friend <<= SlaveFullName($slaves[_si])>>"`>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "relationship">> <<include "FRelation">><br> <</replace>> <</link>> <<elseif ($activeChild.relationship == 2)>> | <<link `"Fuck $him with $his best friend <<= SlaveFullName($slaves[_si])>>"`>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "relationship">> <<include "FRelation">><br> <</replace>> <</link>> <<elseif ($activeChild.relationship == 3)>> | <<link `"Fuck $him with $his FWB <<= SlaveFullName($slaves[_si])>>"`>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "relationship">> <<include "FRelation">><br> <</replace>> <</link>> <<elseif ($activeChild.relationship == 4)>> | <<link `"Fuck $him with $his lover <<= SlaveFullName($slaves[_si])>>"`>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "relationship">> <<include "FRelation">><br> <</replace>> <</link>> <<else>> | <<link `"Fuck $him with $his slave _wife2 <<= SlaveFullName($slaves[_si])>>"`>> - <<replace "#miniscene">> + <<replace "#mini-scene">> <<set $partner = "relationship">> <<include "FRelation">><br> <</replace>> <</link>> @@ -410,11 +410,11 @@ FIXME: <</if>> <<if ($activeChild.rivalryTarget != 0) && canWalk($activeChild)>> | <<link "Abuse $his rival with $him">> - <<replace "#miniscene">><<include "FRival">><br> <</replace>> + <<replace "#mini-scene">><<include "FRival">><br> <</replace>> <</link>> <</if>> <<if ($activeChild.fetish != "mindbroken") && (canTalk($activeChild) || hasAnyArms($activeChild))>> - | <<link "Ask $him about $his feelings">><<replace "#miniscene">><<set $childSex = 1>><<include "FFeelings">><br> <</replace>><</link>> + | <<link "Ask $him about $his feelings">><<replace "#mini-scene">><<set $childSex = 1>><<include "FFeelings">><br> <</replace>><</link>> <</if>> <<if $activeChild.devotion >= 100 && $activeChild.relationship < 0 && $activeChild.relationship > -3>> | <<link "Talk to $him about relationships" "Matchmaking">> @@ -462,7 +462,7 @@ FIXME: <</if>> /* TODO: move all wardrobe options to a wardrobe passage */ -<<if $showWardrobe>> + <br><br>__Appearance:__ <br>Clothes: <b><span id="clothes">$activeChild.clothes</span>.</b> @@ -915,7 +915,7 @@ FIXME: <</if>> <</if>> */ -<</if>> /* CLOSES WARDROBE CHECK */ +/* CLOSES WARDROBE */ <br><br>__Physical Regimen:__ <span id="drugs"> diff --git a/src/npc/children/childSummary.js b/src/npc/children/childSummary.js index 655e4bdab3e99e89183ba525936f3a950f89af1c..af022e0d9c285fb97b535ffc59d123be7534ee5e 100644 --- a/src/npc/children/childSummary.js +++ b/src/npc/children/childSummary.js @@ -2318,7 +2318,6 @@ App.Facilities.Nursery.ChildSummary = function(child) { r += `Looks ` + `${child.visualAge}` + `. `; } } else { - // Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes // that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body' // and appears, for exampChild release from incubator at age 10, Her summary would show, 'Age 0. 10 diff --git a/src/npc/children/longChildDescription.js b/src/npc/children/longChildDescription.js index 450353465b8c4f5e4969c136c4f78de75959b799..40644f4da5d3f17367f608510420d249eb484312 100644 --- a/src/npc/children/longChildDescription.js +++ b/src/npc/children/longChildDescription.js @@ -4,7 +4,6 @@ * @returns {string} */ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, eventDescription = 0} = {}) { - // declarations const arcology = V.arcologies[0], @@ -48,10 +47,10 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event if (child.accent !== 0) { if (child.accent === 1) { - accent = jsEither("a beautiful", "a distinctive", "an intriguing", "a light", "a lovely", "a mild", "a pleasant", "a rich", "a slight", "a smooth"); + accent = either("a beautiful", "a distinctive", "an intriguing", "a light", "a lovely", "a mild", "a pleasant", "a rich", "a slight", "a smooth"); r += `${He} speaks ${V.language} in ${accent} ${nationality} accent${child.rules.speech === "accent elimination" ? `, which the rules encourage ${him} to suppress` : ``}. `; } else if (child.accent === 2) { - accent = jsEither("a broad", "a harsh", "a heavy", "an intense", "a marked", "a noticeable", "a rough", "a significant", "a stressed", "a strong", "a thick"); + accent = either("a broad", "a harsh", "a heavy", "an intense", "a marked", "a noticeable", "a rough", "a significant", "a stressed", "a strong", "a thick"); r += `${He} speaks ${V.language} in ${accent} ${nationality} accent that can be hard to understand${child.rules.speech === "accent elimination" ? `, and the rules encourage ${him} to make an effort to suppress it` : ``}. `; } else { r += `${He} speaks little ${V.language}, but understands enough to be given orders. `; @@ -145,7 +144,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event } else if (child.buttplugAttachment === "fox tail") { r += `A bushy ${child.hColor} tail with a white tip protrudes from the back of the plug and dangles from ${his} rear. `; } else if (child.buttplugAttachment === "cow tail") { - r += `A slim, spotted tail with a cute tuft at its tip protudes from the back of the plug and dangles from ${his} rear. `; + r += `A slim, spotted tail with a cute tuft at its tip protrudes from the back of the plug and dangles from ${his} rear. `; } else if (child.buttplugAttachment === "cat tail") { r += `A tail protrudes from the back of the plug and springs upwards from ${his} rear. `; } @@ -164,7 +163,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event } else if (child.buttplugAttachment === "fox tail") { r += `A bushy ${child.hColor} tail with a white tip protrudes from the back of the plug and dangles from ${his} rear. `; } else if (child.buttplugAttachment === "cow tail") { - r += `A slim, spotted tail with a cute tuft at its tip protudes from the back of the plug and dangles from ${his} rear. `; + r += `A slim, spotted tail with a cute tuft at its tip protrudes from the back of the plug and dangles from ${his} rear. `; } else if (child.buttplugAttachment === "cat tail") { r += `A tail protrudes from the back of the plug and springs upwards from ${his} rear. `; } @@ -376,49 +375,49 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event skinDesc = "darker"; } - analSkinDesc = jsEither("crinkled", "puckered", "puffy"); + analSkinDesc = either("crinkled", "puckered", "puffy"); if (child.anus === 0) { r += `${He} is an <span class="lime">anal virgin;</span> ${his} asshole is fresh and tight. `; } else if (child.anus === 1) { - ass = jsEither("anal opening", "anus", "asshole", "butthole"); - r += `${His} ${ass} is ${jsEither("nice and", "very")} tight, `; + ass = either("anal opening", "anus", "asshole", "butthole"); + r += `${His} ${ass} is ${either("nice and", "very")} tight, `; if (anus > 3) { r += `but it's surrounded by a massive oval of ${analSkinDesc} ${skinDesc} skin that runs from ${his} tailbone all the way down to the ${child.vagina > -1 ? `bottom of ${his} pussy` : `base of ${his} cock`}. `; } else if (anus > 2) { - r += `but it's surrounded by an oval of ${analSkinDesc} ${skinDesc} skin that occupies ${his} entire ${jsEither("asscrack", "buttcrack")} ${ass}. `; + r += `but it's surrounded by an oval of ${analSkinDesc} ${skinDesc} skin that occupies ${his} entire ${either("asscrack", "buttcrack")} ${ass}. `; } else if (anus > 1) { r += `but it's surrounded by a big ring of ${analSkinDesc} ${skinDesc} skin. `; } else if (anus > 0) { - r += `and it's surrounded by a cute ${jsEither("pucker", "ring", "rosebud")} ${ass} of ${skinDesc} skin. `; + r += `and it's surrounded by a cute ${either("pucker", "ring", "rosebud")} ${ass} of ${skinDesc} skin. `; } else { r += `and the ${skinDesc} skin around it is stretched smooth, since it's been deflowered only recently. `; } } else if (child.anus === 2) { - ass = jsEither("anal opening", "anus", "asshole", "asspussy", "butthole"); - r += `${His} ${ass} is ${anus > 1 ? `only ` : ``}${jsEither("relaxed", "loose", "accommodating")} ${ass}, `; + ass = either("anal opening", "anus", "asshole", "asspussy", "butthole"); + r += `${His} ${ass} is ${anus > 1 ? `only ` : ``}${either("relaxed", "loose", "accommodating")} ${ass}, `; if (anus > 2) { r += `but it's surrounded by a massive oval of ${analSkinDesc} ${skinDesc} skin that runs from ${his} tailbone all the way down to the ${child.vagina > -1 ? `bottom of ${his} pussy` : `base of ${his} cock`}. `; } else if (anus > 1) { - r += `but it's surrounded by an oval of ${analSkinDesc} ${skinDesc} skin that occupies ${his} entire ${jsEither("asscrack", "buttcrack")} ${ass}. `; + r += `but it's surrounded by an oval of ${analSkinDesc} ${skinDesc} skin that occupies ${his} entire ${either("asscrack", "buttcrack")} ${ass}. `; } else if (anus > 0) { r += `and it's surrounded by a big ring of ${analSkinDesc} ${skinDesc} skin. `; } else { r += `and the ${skinDesc} skin around it is stretched smooth, suggesting it's getting used to being this way. `; } } else if (child.anus === 3) { - ass = jsEither("anal opening", "anus", "asshole", "asspussy", "butthole"); - r += `${His} ${ass} is a ${jsEither("lewd", "loose", "relaxed", "welcoming")} ${ass} slit, `; + ass = either("anal opening", "anus", "asshole", "asspussy", "butthole"); + r += `${His} ${ass} is a ${either("lewd", "loose", "relaxed", "welcoming")} ${ass} slit, `; if (anus > 1) { r += `and it's surrounded by a massive oval of ${analSkinDesc} ${skinDesc} skin that runs from ${his} tailbone all the way down to the ${child.vagina > -1 ? `bottom of ${his} pussy` : `base of ${his} cock`}. `; } else if (anus > 0) { - r += `and it's surrounded by an oval of ${analSkinDesc} ${skinDesc} skin that occupies ${his} entire ${jsEither("asscrack", "buttcrack")} ${ass}. `; + r += `and it's surrounded by an oval of ${analSkinDesc} ${skinDesc} skin that occupies ${his} entire ${either("asscrack", "buttcrack")} ${ass}. `; } else { r += `and the ${skinDesc} skin around it is stretched smooth, suggesting ${he}'s getting used to having such a cock-hungry rear fuckhole. `; } } else { - ass = jsEither("anal opening", "anal slit", "anus", "asshole", "asspussy", "butthole"); - r += `${His} ${ass} is a ${jsEither("loose", "open", "permanent", "relaxed")} ${ass} gape, `; + ass = either("anal opening", "anal slit", "anus", "asshole", "asspussy", "butthole"); + r += `${His} ${ass} is a ${either("loose", "open", "permanent", "relaxed")} ${ass} gape, `; if (anus > 0) { r += `and it's surrounded by a massive oval of ${skinDesc} skin that runs from ${his} tailbone all the way down to the ${child.vagina > -1 ? `bottom of ${his} pussy` : `base of ${his} cock`}. `; } else { @@ -547,44 +546,44 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event if (child.butt <= 1) { r += `flat and `; if (arcology.FSSlimnessEnthusiast > 20 && arcology.FSHedonisticDecadence === "unset") { - r += `${jsEither("attractive", "enticing", "fashionable")} `; + r += `${either("attractive", "enticing", "fashionable")} `; } else { - r += `${jsEither("skinny", "slim", "taut")} `; + r += `${either("skinny", "slim", "taut")} `; } r += `ass. `; } else if (child.butt <= 2) { if (arcology.FSSlimnessEnthusiast > 20 && arcology.FSHedonisticDecadence === "unset") { - r += `${jsEither("fashionable", "sleek and attractive", "small and enticing")} `; + r += `${either("fashionable", "sleek and attractive", "small and enticing")} `; } else { - r += `${jsEither("small, sleek", "small but rounded", "rounded, small")} `; + r += `${either("small, sleek", "small but rounded", "rounded, small")} `; } r += `rear end. `; } else if (child.butt <= 3) { - r += `${jsEither("big and healthy", "curved and plump", "healthy and plump")} derrière. `; + r += `${either("big and healthy", "curved and plump", "healthy and plump")} derrière. `; } else if (child.butt <= 4) { - r += `${jsEither("big bubble", "curvy and enticing", "juicy and large")} butt. `; + r += `${either("big bubble", "curvy and enticing", "juicy and large")} butt. `; } else if (child.butt <= 5) { - r += `${jsEither("huge", "juicy and huge", "massive and undeniable")} rear end. `; + r += `${either("huge", "juicy and huge", "massive and undeniable")} rear end. `; } else if (child.butt <= 6) { - r += `${jsEither("enormous", "truly massive")} posterior. `; + r += `${either("enormous", "truly massive")} posterior. `; } else if (child.butt <= 7) { - r += `${jsEither("gigantic", "titanic")} ass. `; + r += `${either("gigantic", "titanic")} ass. `; } else if (child.butt <= 10) { - r += `${jsEither("gigantic", "titanic")} ass. `; + r += `${either("gigantic", "titanic")} ass. `; if (!canWalk(child)) { r += ` It's so big it would jiggle as ${he} walked — if ${he} could walk. `; } else { r += ` It's so big it jiggles as ${he} walks. `; } } else if (child.butt <= 14) { - r += `${jsEither("cushion-like", "hall-crowding")} ass. `; + r += `${either("cushion-like", "hall-crowding")} ass. `; if (!canWalk(child)) { r += ` It's so big it would jiggle nonstop as ${he} walked — if ${he} could walk. `; } else { r += ` It's so big it jiggles nonstop as ${he} walks. `; } } else { - r += `${jsEither("bean bag sized", "room-crowding")} ass. `; + r += `${either("bean bag sized", "room-crowding")} ass. `; if (!canWalk(child)) { r += ` It's so massive it would jiggle endlessly as ${he} walked — if ${he} could walk. `; } else { @@ -838,7 +837,8 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event break; case "preg biometrics": if (child.pregSource > 0) { - daddy = findFather(child.pregSource), daddy = daddy.slaveName; + daddy = findFather(child.pregSource); + daddy = daddy.slaveName; } r += `${He} is wearing a heavy metal collar with a digital display; it currently reads: `; @@ -1351,7 +1351,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += `Since ${his} body is flooded with female hormones, ${his} cock is soft. `; if (child.devotion > 75) { r += `Despite this, ${he}'s so devoted to you that being near you has ${his} horny. ${His} limp member is tipped by a drop of precum. `; - } else if (child.drugs === "testicle enhancement" || child.drugs === "hyper testicle enhancemet") { + } else if (child.drugs === "testicle enhancement" || child.drugs === "hyper testicle enhancement") { r += `Unfortunately for the poor slave, ${he}'s also on drugs that cause overproduction of cum. Since ${his} soft dick makes it difficult for ${him} to ejaculate properly, ${he}'s almost frantic with discomfort, and ${his} dickhead is dribbling excessive precum. `; } } else if (child.dick > 6) { @@ -2220,7 +2220,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += `${He} has high tech cyber-ears that could be mistaken for headphones. `; break; case "pointy": - r += `${His} small, ${jsEither("elfin", "leaf-shaped", "pointed")} ears are quite cute and give ${him} an exotic appearance. `; + r += `${His} small, ${either("elfin", "leaf-shaped", "pointed")} ears are quite cute and give ${him} an exotic appearance. `; break; case "elven": r += `${He} has long, thin elven ears that ${jsEither(`tend to droop when ${he} is relaxed or sad`, `tend to waggle up and down when ${he} is excited`, `twitch at the slightest touch`)}. `; @@ -4599,7 +4599,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event if (((V.week - child.weekAcquired) * 7) + jsRandom(-3, 3)) { r += `slavery here. There are only a few. `; } else { - r += `slavery here: ${weeksOwned} of them. `; + r += `slavery here: ${child.weeksOwned} of them. `; } } break; @@ -4711,7 +4711,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += `An octopus is tattooed on ${his} upper chest; its tentacles reach down to envelop ${his} breasts, their tips reaching for but not quite reaching each nipple. `; break; case "scenes": - r += `${His} chest is tattooed with lewd scenes; each of ${his} breasts shows a phallus receiving a titfuck while each of ${his} collarbones shows a ${woman} deepthroating a large phallus. `; + r += `${His} chest is tattooed with lewd scenes; each of ${his} breasts shows a phallus receiving a titfuck while each of ${his} collarbones shows a woman deepthroating a large phallus. `; break; case "bovine patterns": r += `${His} chest is tattooed to look like a Holstein cow's, with ${his} udders left bare to draw attention to them. `; @@ -4778,7 +4778,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event } else if (child.dick > 0) { r += `${His} buttocks are tattooed with lewd scenes; each of ${his} buttocks shows a gelding, legs together to conceal ${his} cock and display ${his} anus, while each of ${his} thighs shows a gelding being double penetrated in ${his} gaping anus. `; } else { - r += `${His} buttocks are tattooed with lewd scenes; each of ${his} buttocks shows a ${woman} being sodomized while each of ${his} thighs shows a ${woman} being gangbanged in all ${his} holes. `; + r += `${His} buttocks are tattooed with lewd scenes; each of ${his} buttocks shows a woman being sodomized while each of ${his} thighs shows a woman being gangbanged in all ${his} holes. `; } break; case "bovine patterns": @@ -5166,7 +5166,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event if (!child.fuckdoll) { if (hasAnyProstheticEyes(child)) { - r += `${He} has ${App.Desc.eyesType(slave)}. `; + r += `${He} has ${App.Desc.eyesType(child)}. `; } if (child.eyewear === "corrective glasses" || child.eyewear === "blurring glasses" || child.eyewear === "glasses") { @@ -6375,7 +6375,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += `${He}'s <span class="green">insecure,</span> defining ${his} self worth by how much others want to fuck ${him}. `; break; case "sinful": - if (arcology.FSChattelRelionist === "unset") { + if (arcology.FSChattelReligionist === "unset") { r += `${He}'s delightfully <span class="green">sinful,</span> taking real pleasure in breaking cultural mores. `; } else { r += `${He}'s a devout Chattel Religionist, and is aggressively <span class="green">sinful</span> against old world faiths. ${He} is enthusiastic about slutty religious clothing, and excited by intentional sacrilege like openly using old world religious icons as sex toys or having orgies on altars. `; @@ -6835,7 +6835,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += `${He}'s <span class="green">insecure,</span> defining ${his} self worth by how much others want to fuck ${him}. `; break; case "sinful": - if (arcology.FSChattelRelionist === "unset") { + if (arcology.FSChattelReligionist === "unset") { r += `${He}'s delightfully <span class="green">sinful,</span> taking real pleasure in breaking cultural mores. `; } else { r += `${He}'s a devout Chattel Religionist, and is aggressively <span class="green">sinful</span> against old world faiths. ${He} is enthusiastic about slutty religious clothing, and excited by intentional sacrilege like openly using old world religious icons as sex toys or having orgies on altars. `; @@ -7206,13 +7206,13 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event if (child.relationship >= 3 && totalRelatives(child) > 0) { const lover = getSlave(child.relationshipTarget); if (jsDef(lover)) { - const relTerm = relativeTerm(child, _lover); + const relTerm = relativeTerm(child, lover); if (relTerm !== null) { r += `${He} is in an <span class="lightgreen">incestuous relationship with ${his} ${relTerm}, ${SlaveFullName(lover)}.</span> `; } } } else if (child.relationship <= -2) { - const relTerm = relativeTerm(child, $PC); + const relTerm = relativeTerm(child, V.PC); if (relTerm !== null) { r += `${He} is in an <span class="lightgreen">incestuous relationship with ${his} ${relTerm}, you.</span> `; } @@ -7223,11 +7223,11 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event if (jsDef(lcd)) { r += `${He} `; if (child.rivalry <= 1) { - r += `<span class="lightsalmon">dislikes</span> ${SlaveFullName(slaves[Lcd])}. `; + r += `<span class="lightsalmon">dislikes</span> ${SlaveFullName(slaves[lcd])}. `; } else if (child.rivalry <= 2) { - r += `is ${SlaveFullName(slaves[Lcd])}>>'s <span class="lightsalmon">rival.</span> `; + r += `is ${SlaveFullName(slaves[lcd])}>>'s <span class="lightsalmon">rival.</span> `; } else { - r += `<span class="lightsalmon">bitterly hates</span> ${SlaveFullName(slaves[Lcd])}>>. `; + r += `<span class="lightsalmon">bitterly hates</span> ${SlaveFullName(slaves[lcd])}>>. `; } } } @@ -7442,54 +7442,54 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event if (child.weight > 190) { if (arcology.FSHedonisticDecadence !== "unset") { - r += `${jsEither("perfectly curvy", "perfectly plush")}. `; + r += `${either("perfectly curvy", "perfectly plush")}. `; } else { - r += `<span class="red">${jsEither("dangerously fat", "dangerously overweight", "extremely obese")}.</span> `; + r += `<span class="red">${either("dangerously fat", "dangerously overweight", "extremely obese")}.</span> `; } } else if (child.weight > 160) { if (arcology.FSHedonisticDecadence !== "unset") { - r += `${jsEither("spectacularly curvy", "spectacularly plush")}. `; + r += `${either("spectacularly curvy", "spectacularly plush")}. `; } else { - r += `<span class="red">${jsEither("extremely fat", "extremely overweight")}.</span> `; + r += `<span class="red">${either("extremely fat", "extremely overweight")}.</span> `; } } else if (child.weight > 130) { if (arcology.FSHedonisticDecadence !== "unset") { - r += `${jsEither("amazingly curvy", "amazingly plush")}. `; + r += `${either("amazingly curvy", "amazingly plush")}. `; } else { - r += `<span class="red">${jsEither("very overweight", "obese", "very fat")}.</span> `; + r += `<span class="red">${either("very overweight", "obese", "very fat")}.</span> `; } } else if (child.weight > 95) { if (child.hips > 1) { - r += `${"extremely curvy", "extremely plush"}, but ${his} huge hips make the extra weight attractive on ${him}. `; + r += `${either("extremely curvy", "extremely plush")}, but ${his} huge hips make the extra weight attractive on ${him}. `; } else if (arcology.FSHedonisticDecadence !== "unset") { - r += `${jsEither("extremely curvy", "extremely plush")}. `; + r += `${either("extremely curvy", "extremely plush")}. `; } else { - r += `<span class="red">${jsEither("carrying a lot of extra weight", "fat", "overweight")}.</span> `; + r += `<span class="red">${either("carrying a lot of extra weight", "fat", "overweight")}.</span> `; } } else if (child.weight > 30) { if (child.hips > 1) { - r += `${jsEither("quite curvy", "very plush")}, but ${his} motherly hips make the extra weight attractive on ${him}. `; + r += `${either("quite curvy", "very plush")}, but ${his} motherly hips make the extra weight attractive on ${him}. `; } else if (arcology.FSHedonisticDecadence !== "unset") { - r += `${jsEither("quite curvy", "very plush")}. `; + r += `${either("quite curvy", "very plush")}. `; } else { - r += `<span class="red">${jsEither("carrying extra weight", "chubby")}.</span> `; + r += `<span class="red">${either("carrying extra weight", "chubby")}.</span> `; } } else if (child.weight > 10) { - r += `${jsEither("nicely plush", "pleasingly curvy")}. `; + r += `${either("nicely plush", "pleasingly curvy")}. `; } else if (child.weight >= -10) { - r += `${jsEither("a healthy weight", "an attractive weight")}. `; + r += `${either("a healthy weight", "an attractive weight")}. `; } else if (child.weight >= -30) { - r += `${jsEither("appealingly skinny", "pleasingly thin")}. `; + r += `${either("appealingly skinny", "pleasingly thin")}. `; } else if (child.weight >= -95) { if (child.hips > 1) { - r += `${jsEither("quite skinny", "very thin")}, but ${his} wide hips make the gap between ${his} thighs very noticeable. `; + r += `${either("quite skinny", "very thin")}, but ${his} wide hips make the gap between ${his} thighs very noticeable. `; } else if (child.hips < -1) { - r += `${jsEither("quite skinny", "very thin")}, but ${his} trim hips make ${him} look like a model. `; + r += `${either("quite skinny", "very thin")}, but ${his} trim hips make ${him} look like a model. `; } else { - r += `<span class="red">${"rail thin", "too skinny", "underweight"}.</span> `; + r += `<span class="red">${either("rail thin", "too skinny", "underweight")}.</span> `; } } else { - r += `<span class="red">${"dangerously skinny", "emaciated"}.</span> `; + r += `<span class="red">${either("dangerously skinny", "emaciated")}.</span> `; } if (child.hips > 2) { @@ -7499,7 +7499,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += waist(child); if (arcology.FSGenderFundamentalistLawBeauty + arcology.FSGenderFundamentalistLawBeauty > 0) { - if (arcology.FSHedonisticDecadence === "unset" && arcology.FSPhyscialIdealistStrongFat === 0) { + if (arcology.FSHedonisticDecadence === "unset" && arcology.FSPhysicalIdealistStrongFat === 0) { if (child.weight > 130) { r += `${He} is much too fat for the fashionable feminine ideal. `; } else if (child.weight > 30) { @@ -7515,7 +7515,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event } } } else if (arcology.FSSlimnessEnthusiastLaw === 1) { - if (arcology.FSHedonisticDecadence === "unset" && arcology.FSPhyscialIdealistStrongFat === 0) { + if (arcology.FSHedonisticDecadence === "unset" && arcology.FSPhysicalIdealistStrongFat === 0) { if (child.weight > 30) { r += `${He} is much too fat for the fashionable feminine ideal. `; } else if (child.weight > 10) { @@ -7648,21 +7648,21 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += `${He} has ${a}normal arm${s} with `; } - if (child.muscles > 95) { - r += `huge muscles`; - if (child.weight > 95) { - r += ` hidden beneath ${his} soft flesh`; - } - r += `. `; - } else if (child.muscles > 30) { - r += `obvious muscles`; - if (child.weight > 95) { - r += ` hidden beneath ${his} soft flesh`; - } - r += `. `; - } else if (child.muscles > 5) { - r += `toned muscles`; - if (child.weight > 30) { + if (child.muscles > 95) { + r += `huge muscles`; + if (child.weight > 95) { + r += ` hidden beneath ${his} soft flesh`; + } + r += `. `; + } else if (child.muscles > 30) { + r += `obvious muscles`; + if (child.weight > 95) { + r += ` hidden beneath ${his} soft flesh`; + } + r += `. `; + } else if (child.muscles > 5) { + r += `toned muscles`; + if (child.weight > 30) { r += ` hidden beneath ${his} soft flesh`; } r += `. `; @@ -7955,8 +7955,8 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event r += `${He} ${hasAnyArms(child) ? `massages ${his} tits uncomfortably` : `squirms under the unfamiliar weight on ${his} chest`}. The ${child.drugs === "hyper breast injections" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully stretching ${his} breasts as the mammary and adipose tissue underneath grows explosively. `; break; case "nipple enhancers": - r += `${He} ${hasAnyArms(child) ? `massages ${his} nipples uncomfortably` : `squirms in respose to the discomfort in ${his} nipples`}. The A-HGH must be having an effect, painfully causing ${his} body to expand ${his} nipples. `; - break; + r += `${He} ${hasAnyArms(child) ? `massages ${his} nipples uncomfortably` : `squirms in response to the discomfort in ${his} nipples`}. The A-HGH must be having an effect, painfully causing ${his} body to expand ${his} nipples. `; + break; case "intensive butt injections": case "hyper butt injections": r += `${He} ${hasAnyArms(child) ? `massages ${his} butt uncomfortably` : `squirms under the unfamiliar weight on ${his} backside`}. The ${child.drugs === "hyper butt injections" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully stretching ${his} buttocks as the muscular and adipose tissue underneath grows explosively. `; @@ -7984,26 +7984,26 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event } break; case "female hormone injections": - case "male hormore injections": + case "male hormone injections": r += `${He} looks very ill, likely a side effect of the extreme hormone injections. `; break; - case "appetite suppresors": + case "appetite suppressors": r += `Despite how little ${he} has been eating lately, ${his} stomach barely growls at all. `; break; case "penis atrophiers": - r += `${He} ${hasAnyArms(child) ? `massages ${his} dick uncomfortably` : `squirms in respose to the discomfort in ${his} dick`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} dick. `; + r += `${He} ${hasAnyArms(child) ? `massages ${his} dick uncomfortably` : `squirms in response to the discomfort in ${his} dick`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} dick. `; break; - case "testicle atropiers": - r += `${He} ${hasAnyArms(child) ? `massages ${his} balls uncomfortably` : `squirms in respose to the discomfort in ${his} balls`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} balls. `; + case "testicle atrophiers": + r += `${He} ${hasAnyArms(child) ? `massages ${his} balls uncomfortably` : `squirms in response to the discomfort in ${his} balls`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} balls. `; break; case "clitoris atrophiers": - r += `${He} ${hasAnyArms(child) ? `massages ${his} clit uncomfortably` : `squirms in respose to the discomfort in ${his} clit`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} clit. `; + r += `${He} ${hasAnyArms(child) ? `massages ${his} clit uncomfortably` : `squirms in response to the discomfort in ${his} clit`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} clit. `; break; case "labia atrophiers": - r += `${He} ${hasAnyArms(child) ? `massages ${his} pussy uncomfortably` : `squirms in respose to the discomfort in ${his} pussy`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} pussy. `; + r += `${He} ${hasAnyArms(child) ? `massages ${his} pussy uncomfortably` : `squirms in response to the discomfort in ${his} pussy`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} pussy. `; break; case "nipple atrophiers": - r += `${He} ${hasAnyArms(child) ? `massages ${his} nipples uncomfortably` : `squirms in respose to the discomfort in ${his} nipples`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} nipples. `; + r += `${He} ${hasAnyArms(child) ? `massages ${his} nipples uncomfortably` : `squirms in response to the discomfort in ${his} nipples`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} nipples. `; break; case "lip atrophiers": r += `${He} ${hasAnyArms(child) ? `massages ${his} lips uncomfortably` : `licks ${his} lips uncomfortably`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} lips. `; diff --git a/src/npc/databases/dSlavesDatabase.js b/src/npc/databases/dSlavesDatabase.js index 896dd033213a268050876b4ecd266495626cac76..88159dbfee683c5e0b3044f6d3598c1f90ea004c 100644 --- a/src/npc/databases/dSlavesDatabase.js +++ b/src/npc/databases/dSlavesDatabase.js @@ -375,7 +375,7 @@ App.Data.HeroSlaves.D = [ } } }, - /* corrected eye color, makeup, tweaked entertainskill, added 'arrogant' -BoneyM*/ + /* corrected eye color, makeup, tweaked entertain skill, added 'arrogant' -BoneyM*/ { ID: 900011, slaveName: "Lilly", @@ -1184,7 +1184,7 @@ App.Data.HeroSlaves.D = [ } }, /* red contacts*/ - /* Reduced weight, changed eyes to blue, corrected tattoo syntax, added flexibility in customdesc, changed skin to pale -BoneyM*/ + /* Reduced weight, changed eyes to blue, corrected tattoo syntax, added flexibility in customDesc, changed skin to pale -BoneyM*/ { ID: 900033, slaveName: "Jennifer", @@ -1512,7 +1512,7 @@ App.Data.HeroSlaves.D = [ } }, /* missing left leg, burn scar, low sex drive, fighter*/ - /* Added customdesc, fixed tattoo syntax, added combat skill, eye color and origin -BoneyM*/ + /* Added customDesc, fixed tattoo syntax, added combat skill, eye color and origin -BoneyM*/ { ID: 900040, slaveName: "Lexi", @@ -1672,7 +1672,7 @@ App.Data.HeroSlaves.D = [ tonguePiercing: 1 }, /* big clit*/ - /* Changed eyes to hazel, increased clit, added a lot of piercings, changed fetish to nympho, fixed customdesc syntax -BoneyM*/ + /* Changed eyes to hazel, increased clit, added a lot of piercings, changed fetish to nympho, fixed customDesc syntax -BoneyM*/ { ID: 900044, slaveName: "Anneliese", @@ -1713,7 +1713,7 @@ App.Data.HeroSlaves.D = [ fetishKnown: 1, custom: {desc: "$He has the air of a princess."} }, - /* Changed eyes to blue, added origin, pierced ears, fixed customdesc syntax -BoneyM*/ + /* Changed eyes to blue, added origin, pierced ears, fixed customDesc syntax -BoneyM*/ { ID: 900045, slaveName: "Riley", @@ -1757,7 +1757,7 @@ App.Data.HeroSlaves.D = [ }, }, /* compulsive masturbation*/ - /* Moved customdesc to origin, added scar to customdesc, reduced weight, added nympho, added nipple and clit piercings -BoneyM*/ + /* Moved customDesc to origin, added scar to customDesc, reduced weight, added nympho, added nipple and clit piercings -BoneyM*/ { ID: 900046, slaveName: "Victoria", @@ -1794,7 +1794,7 @@ App.Data.HeroSlaves.D = [ desc: "$He is a permanent, irrecoverable aphrodisiac addict." }, }, - /* Corrected customdesc syntax -BoneyM*/ + /* Corrected customDesc syntax -BoneyM*/ { ID: 900047, slaveName: "Aveline", @@ -1898,7 +1898,7 @@ App.Data.HeroSlaves.D = [ }, clothes: "kitty lingerie" }, - /* Fixed tattoo and customdesc syntax -BoneyM*/ + /* Fixed tattoo and customDesc syntax -BoneyM*/ { ID: 900050, slaveName: "Thorn", @@ -1944,7 +1944,7 @@ App.Data.HeroSlaves.D = [ } } }, - /* Increased health, added origin, fixed customdesc syntax -BoneyM*/ + /* Increased health, added origin, fixed customDesc syntax -BoneyM*/ { ID: 900051, slaveName: "Kinsey", @@ -2020,7 +2020,7 @@ App.Data.HeroSlaves.D = [ }, }, /* laid back*/ - /* Added origin, increased weight, pierced ears, added customdesc -BoneyM*/ + /* Added origin, increased weight, pierced ears, added customDesc -BoneyM*/ { ID: 900053, slaveName: "Klara", @@ -2057,7 +2057,7 @@ App.Data.HeroSlaves.D = [ brand: {"right buttock": "Cum slut"}, custom: {tattoo: "'bitch whore' is tattooed on $his inner left thigh."} }, - /* Fixed typo in customdesc, increased whore and entertainskill, changed eye color -BoneyM*/ + /* Fixed typo in customDesc, increased whore and entertainskill, changed eye color -BoneyM*/ { ID: 900054, slaveName: "Lucy", @@ -2203,7 +2203,7 @@ App.Data.HeroSlaves.D = [ height: 168 }, /* masochist*/ - /* Added piercings, corrected customdesc syntax, added bitchy to fit with $his smart-ass masochist personality. -BoneyM*/ + /* Added piercings, corrected customDesc syntax, added bitchy to fit with $his smart-ass masochist personality. -BoneyM*/ { ID: 900059, slaveName: "Mikayla", @@ -2244,7 +2244,7 @@ App.Data.HeroSlaves.D = [ custom: {desc: "$He is extremely claustrophobic."} }, /* claustrophobia, pride*/ - /* Fixed customdesc syntax, added pierced ears, corrected hair color, added origin and arrogant -BoneyM*/ + /* Fixed customDesc syntax, added pierced ears, corrected hair color, added origin and arrogant -BoneyM*/ { ID: 900060, slaveName: "Xendra", @@ -2299,7 +2299,7 @@ App.Data.HeroSlaves.D = [ career: "a shut-in" }, /* toned, snuff, fighter*/ - /* Increased health, added combatskill, bitchy and pierced ears, fixed tattoo and customdesc syntax, corrected skin color from 'white' to 'dark' -BoneyM*/ + /* Increased health, added combat skill, bitchy and pierced ears, fixed tattoo and customDesc syntax, corrected skin color from 'white' to 'dark' -BoneyM*/ { ID: 900061, slaveName: "Gwen", @@ -2396,7 +2396,7 @@ App.Data.HeroSlaves.D = [ }, navelPiercing: 1 }, - /* Reduced weight, increased face and faceimplant, added piercings, corrected tattoo and customdesc syntax -BoneyM*/ + /* Reduced weight, increased face and face implant, added piercings, corrected tattoo and customDesc syntax -BoneyM*/ { ID: 900063, slaveName: "Emily", @@ -2430,7 +2430,7 @@ App.Data.HeroSlaves.D = [ behavioralFlaw: "arrogant", custom: {desc: "$He has a short nose and is very intelligent."} }, - /* Added origin, reduced age, fetish was 'arrogant', changed it to quirk, fixed customdesc syntax. -BoneyM*/ + /* Added origin, reduced age, fetish was 'arrogant', changed it to quirk, fixed customDesc syntax. -BoneyM*/ { ID: 900064, slaveName: "Bitch", @@ -2469,7 +2469,7 @@ App.Data.HeroSlaves.D = [ hips: 3, markings: "beauty mark" }, - /* Fixed customdesc syntax, changed eye color, added piercings, increased waist -BoneyM*/ + /* Fixed customDesc syntax, changed eye color, added piercings, increased waist -BoneyM*/ { ID: 900065, slaveName: "Nala", @@ -2532,7 +2532,7 @@ App.Data.HeroSlaves.D = [ attrXY: 40 }, /* love*/ - /* Added origin, removed it from customdesc. Increased health.*/ + /* Added origin, removed it from customDesc. Increased health.*/ { ID: 900067, slaveName: "Koko", @@ -2569,7 +2569,7 @@ App.Data.HeroSlaves.D = [ custom: {desc: "$He is trim and fit."} }, /* genki*/ - /* Pierced ears, added origin, corrected customdesc syntax. -BoneyM*/ + /* Pierced ears, added origin, corrected customDesc syntax. -BoneyM*/ { ID: 900068, slaveName: "Jasmine", @@ -2681,7 +2681,7 @@ App.Data.HeroSlaves.D = [ } } }, - /* Increased height, reduced weight, reduced butt, fixed customdesc syntax -BoneyM*/ + /* Increased height, reduced weight, reduced butt, fixed customDesc syntax -BoneyM*/ { ID: 900071, slaveName: "No Name", @@ -2726,7 +2726,7 @@ App.Data.HeroSlaves.D = [ hips: 1 }, /* //*hypno-anal/cum*/ - /* Reduced weight, changed eyes, corrected customdesc syntax, added origin, increased rebelliousness, changed clitsetting to oral. -BoneyM*/ + /* Reduced weight, changed eyes, corrected customDesc syntax, added origin, increased rebelliousness, changed clit setting to oral. -BoneyM*/ { ID: 900072, slaveName: "Sara", @@ -2774,7 +2774,7 @@ App.Data.HeroSlaves.D = [ }, }, /* likes pain*/ - /* Corrected tattoo syntax, added origin and customdesc, increased health -BoneyM*/ + /* Corrected tattoo syntax, added origin and customDesc, increased health -BoneyM*/ { ID: 900073, slaveName: "Falcon", @@ -2811,7 +2811,7 @@ App.Data.HeroSlaves.D = [ custom: {desc: "$He has an implanted GPS tracker to find $him in case $his habit of stalking pretty girls gets the better of $him."} }, /* proactive stalker hypnosis masseuse*/ - /* Corrected birthname (was 'Jasmine'), changed eye color, added customdesc -BoneyM*/ + /* Corrected birth name (was 'Jasmine'), changed eye color, added customDesc -BoneyM*/ { ID: 900074, slaveName: "Beatrice (No. 525)", @@ -2858,7 +2858,7 @@ App.Data.HeroSlaves.D = [ }, }, /* contraception but breeder naturally, well trained*/ - /* Fetish was 'arrogant', changed it to flaw. Added origin, whore and entertainskill: { Changed eye color, corrected tattoo syntax, pierced ears, reduced weight -BoneyM*/ + /* Fetish was 'arrogant', changed it to flaw. Added origin, whore and entertain skill: { Changed eye color, corrected tattoo syntax, pierced ears, reduced weight -BoneyM*/ { ID: 900075, slaveName: "Yuuki", @@ -2896,7 +2896,7 @@ App.Data.HeroSlaves.D = [ sexualFlaw: "crude" }, /* mischievous tease*/ - /* Reduced height, added entertainskill, added bitchy, changed eyes -BoneyM*/ + /* Reduced height, added entertain skill, added bitchy, changed eyes -BoneyM*/ { ID: 900076, slaveName: "Elisa", @@ -4073,7 +4073,7 @@ App.Data.HeroSlaves.D = [ fetishKnown: 1 }, ]; -/* Removed eyecolor customdesc -BoneyM*/ +/* Removed eye color customDesc -BoneyM*/ App.Data.HeroSlaves.Dextreme = [ { ID: 900099, @@ -4442,7 +4442,7 @@ App.Data.HeroSlaves.Dextreme = [ removedLimbs: [1, 1, 1, 1], }, /* bitchy arrogant*/ - /* Added 'bitchy' quirk, reduced height and weight, added customdesc -BoneyM*/ + /* Added 'bitchy' quirk, reduced height and weight, added customDesc -BoneyM*/ { ID: 900107, slaveName: "Cunt", @@ -4608,7 +4608,7 @@ App.Data.HeroSlaves.Dextreme = [ custom: { desc: "$He is a complete mental blank; to $him, there is only the Master." }, - /* Fixed customdesc syntax, changed hair from blue -BoneyM*/ + /* Fixed customDesc syntax, changed hair from blue -BoneyM*/ }, { ID: 900110, diff --git a/src/npc/databases/ddSlavesDatabase.js b/src/npc/databases/ddSlavesDatabase.js index ae6f30bab726563420f4649ce0255dffae38ac94..edf41470770ebd2e43eac3fe79c4dfe5136b4735 100644 --- a/src/npc/databases/ddSlavesDatabase.js +++ b/src/npc/databases/ddSlavesDatabase.js @@ -1477,7 +1477,7 @@ App.Data.HeroSlaves.DDextreme = [ }, /* tsundere, grey eyes, unhappy to be herm*/ - /* Changed eye color, added customdesc and origin -BoneyM*/ + /* Changed eye color, added customDesc and origin -BoneyM*/ { ID: 800033, diff --git a/src/npc/descriptions/accent.js b/src/npc/descriptions/accent.js index 32787c8736a8840b185df3b02c042f3a536e284c..7472b41337f56cb9903d6a6dcb700db27033c822 100644 --- a/src/npc/descriptions/accent.js +++ b/src/npc/descriptions/accent.js @@ -5,7 +5,7 @@ App.Desc.accent = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + him, He } = getPronouns(slave); let accent; if (slave.accent !== 0) { diff --git a/src/npc/descriptions/belly/belly.js b/src/npc/descriptions/belly/belly.js index 8261fcd4f1ffa0539e17de31248c4b9301b5b752..c042dd0985e2a6bd107ccf5ad81daffb8bd1704d 100644 --- a/src/npc/descriptions/belly/belly.js +++ b/src/npc/descriptions/belly/belly.js @@ -509,7 +509,7 @@ App.Desc.belly = function(slave, {market, eventDescription} = {}) { r.push(`Impressively, ${he} is strong enough to keep ${his} belly from dragging along the ground as ${he} crawls.`); } } else { - r.push(`It does not stop it from completely immodilizing ${him}, however.`); + r.push(`It does not stop it from completely immobilizing ${him}, however.`); } } else if (slave.height >= 185) { r.push(`but ${his} tall frame barely keeps ${his} titanic belly off the ground; with considerable effort, of course.`); @@ -625,7 +625,7 @@ App.Desc.belly = function(slave, {market, eventDescription} = {}) { r.push(`Impressively, ${he} is strong enough to keep ${his} belly from dragging along the ground as ${he} crawls.`); } } else { - r.push(`It does not stop it from completely immodilizing ${him}, however.`); + r.push(`It does not stop it from completely immobilizing ${him}, however.`); } } else if (slave.height >= 185) { r.push(`but ${his} tall frame barely keeps ${his} titanic belly off the ground; with considerable effort, of course.`); diff --git a/src/npc/descriptions/belly/bellyImplant.js b/src/npc/descriptions/belly/bellyImplant.js index 6477ec72b6b3ccd5ae474371e39a6e4ca071a60f..c8accff6cd2cf32efdf82f4dede416f595107e62 100644 --- a/src/npc/descriptions/belly/bellyImplant.js +++ b/src/npc/descriptions/belly/bellyImplant.js @@ -8,7 +8,7 @@ App.Desc.bellyImplant = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His, girl + he, him, his, He, His, girl } = getPronouns(slave); r.push(shape()); @@ -832,7 +832,7 @@ App.Desc.bellyImplant = function(slave, {market, eventDescription} = {}) { r.push(`${slave.slaveName}'s huge implant-filled belly fills out ${his} loose dress. ${His} dress is specially tailored to be modest yet draw attention to ${his} expanded middle.`); break; case "stretch pants and a crop-top": - r.push(`${slave.slaveName}'shuge implant-filled belly takes full advantage of ${his} exposed midriff to hang freely and obscure ${his} stretch pants.`); + r.push(`${slave.slaveName}'s huge implant-filled belly takes full advantage of ${his} exposed midriff to hang freely and obscure ${his} stretch pants.`); break; case "chains": r.push(`${slave.slaveName}'s huge implant-filled belly is tightly wrapped with chains, causing it to bulge angrily.`); @@ -1790,7 +1790,7 @@ App.Desc.bellyImplant = function(slave, {market, eventDescription} = {}) { } break; case "a bimbo outfit": - r.push(`${slave.slaveName}'s thong strings dig into ${his} fat belly as it lewdly draps over ${his} miniskirt.`); + r.push(`${slave.slaveName}'s thong strings dig into ${his} fat belly as it lewdly drapes over ${his} miniskirt.`); break; case "a courtesan dress": r.push(`${slave.slaveName}'s fat belly bulges the ribs of ${his} corset, creating valleys of soft flesh.`); diff --git a/src/npc/descriptions/belly/bellyInflation.js b/src/npc/descriptions/belly/bellyInflation.js index 8d32fac17bb512d95325792cc1c14dacfc230da8..5cc1b98765f359271ddb8ab54a03f75c427b1489 100644 --- a/src/npc/descriptions/belly/bellyInflation.js +++ b/src/npc/descriptions/belly/bellyInflation.js @@ -8,7 +8,7 @@ App.Desc.bellyInflation = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); if (slave.inflation === 3) { r.push(`${His} middle is enormously distended with ${slave.inflationType},`); @@ -141,7 +141,7 @@ App.Desc.bellyInflation = function(slave, {market, eventDescription} = {}) { r.push(`${slave.slaveName}'s mini dress barely clings to ${his} hugely swollen belly.`); break; case "a long qipao": - r.push(`${slave.slaveName}'sdress barely clings to ${his} hugely swollen belly.`); + r.push(`${slave.slaveName}'s dress barely clings to ${his} hugely swollen belly.`); break; case "battlearmor": r.push(`${slave.slaveName}'s armor barely clings to ${his} hugely swollen belly.`); @@ -658,7 +658,7 @@ App.Desc.bellyInflation = function(slave, {market, eventDescription} = {}) { } break; case "a bimbo outfit": - r.push(`${slave.slaveName}'s miniskirt digs into ${his} jiggling ${slave.inflationType}-filled belly as the top half spills over its egde.`); + r.push(`${slave.slaveName}'s miniskirt digs into ${his} jiggling ${slave.inflationType}-filled belly as the top half spills over its edge.`); break; case "a courtesan dress": r.push(`${slave.slaveName}'s jiggling ${slave.inflationType}-filled belly is tightly gripped by the ribs of ${his} corset, forcing it to bulge angrily between the gaps.`); @@ -962,7 +962,7 @@ App.Desc.bellyInflation = function(slave, {market, eventDescription} = {}) { } break; case "a bimbo outfit": - r.push(`${slave.slaveName}'s thong strings dig into ${his} fat belly as it lewdly draps over ${his} miniskirt.`); + r.push(`${slave.slaveName}'s thong strings dig into ${his} fat belly as it lewdly drapes over ${his} miniskirt.`); break; case "a courtesan dress": r.push(`${slave.slaveName}'s fat belly bulges the ribs of ${his} corset, creating valleys of soft flesh.`); diff --git a/src/npc/descriptions/boobs/boobsShape.js b/src/npc/descriptions/boobs/boobsShape.js index 02baac55ff91bff5e56a220f4806f1c6bea60405..4540c8af627de1e4ffec9b6adb6eca965991f9b0 100644 --- a/src/npc/descriptions/boobs/boobsShape.js +++ b/src/npc/descriptions/boobs/boobsShape.js @@ -5,7 +5,7 @@ App.Desc.boobsShape = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); if (V.showImplantEffects === 1) { if (slave.fuckdoll > 0) { diff --git a/src/npc/descriptions/butt/anus.js b/src/npc/descriptions/butt/anus.js index c190c15f17829d894d34469870f49cde5eaf2025..15592c9a067db93278996c86a58670724b30c3cb 100644 --- a/src/npc/descriptions/butt/anus.js +++ b/src/npc/descriptions/butt/anus.js @@ -8,7 +8,7 @@ App.Desc.anus = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, his, He, His } = getPronouns(slave); let skinDesc; if (skinToneLevel(slave.skin) < 13) { diff --git a/src/npc/descriptions/butt/butt.js b/src/npc/descriptions/butt/butt.js index a9fb1d2e6d4daffbd32881fee8319cad7bd03a86..f689b0364bf21e18c23a42438f9a3f1511d8a2fa 100644 --- a/src/npc/descriptions/butt/butt.js +++ b/src/npc/descriptions/butt/butt.js @@ -8,7 +8,7 @@ App.Desc.butt = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, girl, He, His + he, him, his, girl, He, His } = getPronouns(slave); if (V.showClothing === 1 && !market) { if (V.surgeryDescription === 0) { @@ -1027,7 +1027,7 @@ App.Desc.butt = function(slave, {market, eventDescription} = {}) { if (slave.butt > 10) { r.push(`inhuman buttocks, fanning wide as it travels down the lewd masses.`); } else if (slave.butt > 6) { - r.push(`massive buttocks, giving a tantilizing view as it parts ever so slightly.`); + r.push(`massive buttocks, giving a tantalizing view as it parts ever so slightly.`); } else if (slave.butt > 3) { r.push(`buttocks, making it look larger than it already is.`); } else { @@ -1037,7 +1037,7 @@ App.Desc.butt = function(slave, {market, eventDescription} = {}) { case "a bimbo outfit": r.push(`${His} scandalously short miniskirt`); if (slave.butt > 10) { - r.push(`is impossible to pull over ${his} enormous buttocks, leaving ${his} behind entirely exposed. The only hint of ${his} thong are a pair of straps disapearing into ${his} crack.`); + r.push(`is impossible to pull over ${his} enormous buttocks, leaving ${his} behind entirely exposed. The only hint of ${his} thong are a pair of straps disappearing into ${his} crack.`); } else if (slave.butt > 6) { r.push(`is impossible to pull over ${his} huge butt, leaving ${his} behind entirely exposed as its enormity has since devoured ${his} thong.`); } else if (slave.butt > 3) { diff --git a/src/npc/descriptions/butt/buttplug.js b/src/npc/descriptions/butt/buttplug.js index e7aee4af4e51d08f3e70c4340041292962e5cd31..bc9f257d326a9239e951033719184e4b4318dfeb 100644 --- a/src/npc/descriptions/butt/buttplug.js +++ b/src/npc/descriptions/butt/buttplug.js @@ -8,7 +8,7 @@ App.Desc.buttplug = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); if (slave.assignment === "work in the dairy" && V.dairyRestraintsSetting > 1) { r.push(`${slave.slaveName}'s anus is`); @@ -613,7 +613,7 @@ App.Desc.buttplug = function(slave, {market, eventDescription} = {}) { } else if (slave.buttplugAttachment === "fox tail") { r.push(`A bushy ${slave.hColor} tail with a white tip protrudes from the back of the plug and dangles from ${his} rear.`); } else if (slave.buttplugAttachment === "cow tail") { - r.push(`A slim, spotted tail with a cute tuft at its tip protudes from the back of the plug and dangles from ${his} rear.`); + r.push(`A slim, spotted tail with a cute tuft at its tip protrudes from the back of the plug and dangles from ${his} rear.`); } else if (slave.buttplugAttachment === "cat tail") { r.push(`A tail protrudes from the back of the plug and springs upwards from ${his} rear.`); } @@ -631,7 +631,7 @@ App.Desc.buttplug = function(slave, {market, eventDescription} = {}) { } else if (slave.buttplugAttachment === "fox tail") { r.push(`A bushy ${slave.hColor} tail with a white tip protrudes from the back of the plug and dangles from ${his} rear.`); } else if (slave.buttplugAttachment === "cow tail") { - r.push(`A slim, spotted tail with a cute tuft at its tip protudes from the back of the plug and dangles from ${his} rear.`); + r.push(`A slim, spotted tail with a cute tuft at its tip protrudes from the back of the plug and dangles from ${his} rear.`); } else if (slave.buttplugAttachment === "cat tail") { r.push(`A tail protrudes from the back of the plug and springs upwards from ${his} rear.`); } diff --git a/src/npc/descriptions/career.js b/src/npc/descriptions/career.js index 7c6b877d24502d2f23f859d8f7bdffbe3d4eef0d..8a9c7826e1a0bca65b128c90610a16e644e57125 100644 --- a/src/npc/descriptions/career.js +++ b/src/npc/descriptions/career.js @@ -5,7 +5,7 @@ App.Desc.career = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He } = getPronouns(slave); const career = convertCareer(slave); diff --git a/src/npc/descriptions/crotch/crotch.js b/src/npc/descriptions/crotch/crotch.js index b613a20bb655c5643a87569ef984f5adf32d07ee..3ebc9061b71129be95b495798e10aa651384411f 100644 --- a/src/npc/descriptions/crotch/crotch.js +++ b/src/npc/descriptions/crotch/crotch.js @@ -8,7 +8,7 @@ App.Desc.crotch = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); if (V.showClothing === 1 && !market) { if (slave.assignment === "work in the dairy" && V.dairyRestraintsSetting > 1) { @@ -1394,7 +1394,7 @@ App.Desc.crotch = function(slave, {market, eventDescription} = {}) { break; case "a bimbo outfit": if (slave.dick > 7 && canAchieveErection(slave) && slave.devotion > 20 && slave.belly >= 5000) { - r.push(`${slave.slaveName}'s massive erection extends from ${his} thong, traping ${his} miniskirt against the underside of ${his}`); + r.push(`${slave.slaveName}'s massive erection extends from ${his} thong, trapping ${his} miniskirt against the underside of ${his}`); if (slave.bellyPreg > 2000) { r.push(`gravid`); } else if (slave.bellyImplant > 2000) { @@ -1404,7 +1404,7 @@ App.Desc.crotch = function(slave, {market, eventDescription} = {}) { } r.push(`belly.`); } else if ((slave.dick > 5) && canAchieveErection(slave) && (slave.devotion > 20) && (slave.belly >= 5000)) { - r.push(`${slave.slaveName}'s huge erection extends from ${his} thong, traping ${his} miniskirt against the underside of ${his}`); + r.push(`${slave.slaveName}'s huge erection extends from ${his} thong, trapping ${his} miniskirt against the underside of ${his}`); if (slave.bellyPreg > 2000) { r.push(`gravid`); } else if (slave.bellyImplant > 2000) { diff --git a/src/npc/descriptions/crotch/dick.js b/src/npc/descriptions/crotch/dick.js index 0fa49789ea631021f94a9a63100a58b483dc1de5..889d8986e0b18b0558d496ca78e3fe711e895a67 100644 --- a/src/npc/descriptions/crotch/dick.js +++ b/src/npc/descriptions/crotch/dick.js @@ -8,7 +8,7 @@ App.Desc.dick = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, girl, He, His + he, him, his, girl, He, His } = getPronouns(slave); if (slave.dick > 0) { switch (slave.dick) { diff --git a/src/npc/descriptions/crotch/dickAccessory.js b/src/npc/descriptions/crotch/dickAccessory.js index c8ba6361e403b1d189f4a39497ed909adf458f16..a6d498ea02667cd1b8456bf66c5f91043918b795 100644 --- a/src/npc/descriptions/crotch/dickAccessory.js +++ b/src/npc/descriptions/crotch/dickAccessory.js @@ -5,7 +5,7 @@ App.Desc.dickAccessory = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, His } = getPronouns(slave); if (slave.chastityPenis === 1) { r.push(`${His} cock is encased in a tight chastity cage, which is designed to be comfortable as long as ${he} remains soft.`); diff --git a/src/npc/descriptions/crotch/vagina.js b/src/npc/descriptions/crotch/vagina.js index dd9ebf30a4ba7c9341e58574bb42cb6147cf82a6..52d1e403a22accfd01a56e865e151bf03431449f 100644 --- a/src/npc/descriptions/crotch/vagina.js +++ b/src/npc/descriptions/crotch/vagina.js @@ -8,7 +8,7 @@ App.Desc.vagina = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); if (slave.dick > 0) { diff --git a/src/npc/descriptions/crotch/vaginalAccessory.js b/src/npc/descriptions/crotch/vaginalAccessory.js index 216cf5b6c0cf0a477bb35e28d57fe456c3d6a510..17f44408725c9023a12411ebc5b85c1aacb41843 100644 --- a/src/npc/descriptions/crotch/vaginalAccessory.js +++ b/src/npc/descriptions/crotch/vaginalAccessory.js @@ -5,7 +5,7 @@ App.Desc.vaginalAccessory = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, his, He, His } = getPronouns(slave); let held; if (slave.chastityVagina) { diff --git a/src/npc/descriptions/describeTattoos.js b/src/npc/descriptions/describeTattoos.js index 8680017bdb5124fa44cc28608dda44c699162543..cb2d8c2fa8de6d949eb691d46b22b57064bd5587 100644 --- a/src/npc/descriptions/describeTattoos.js +++ b/src/npc/descriptions/describeTattoos.js @@ -7,7 +7,7 @@ App.Desc.tattoo = function(slave, surface) { let r = []; /* eslint-disable no-unused-vars*/ const { - he, him, his, hers, himself, He, His, woman + he, him, his, He, His } = getPronouns(slave); /* eslint-enable */ if (V.showBodyMods !== 1) { @@ -74,7 +74,7 @@ App.Desc.tattoo = function(slave, surface) { break; } case "lips": { - /* Fuckdoll vulva and anus alone are visibile, plus enormus lips */ + /* Fuckdoll vulva and anus alone are visible, plus enormous lips */ if (slave.fuckdoll === 0 || slave.lips > 95) { if (slave.lipsTat !== 0) { switch (slave.lipsTat) { @@ -165,7 +165,7 @@ App.Desc.tattoo = function(slave, surface) { r.push(`An octopus is tattooed on ${his} upper chest; its tentacles reach down to envelop ${his} breasts, their tips reaching for but not quite reaching each nipple.`); break; case "scenes": - r.push(`${His} chest is tattooed with lewd scenes; each of ${his} breasts shows a phallus receiving a titfuck while each of ${his} collarbones shows a ${woman} deepthroating a large phallus.`); + r.push(`${His} chest is tattooed with lewd scenes; each of ${his} breasts shows a phallus receiving a titfuck while each of ${his} collarbones shows a woman deepthroating a large phallus.`); break; case "bovine patterns": r.push(`${His} chest is tattooed to look like a Holstein cow's, with ${his} udders left bare to draw attention to them.`); @@ -567,7 +567,7 @@ App.Desc.tattoo = function(slave, surface) { } else if (slave.dick > 0) { r.push(`${His} buttocks are tattooed with lewd scenes; each of ${his} buttocks shows a gelding, legs together to conceal ${his} cock and display ${his} anus, while each of ${his} thighs shows a gelding being double penetrated in ${his} gaping anus.`); } else { - r.push(`${His} buttocks are tattooed with lewd scenes; each of ${his} buttocks shows a ${woman} being sodomized while each of ${his} thighs shows a ${woman} being gangbanged in all ${his} holes.`); + r.push(`${His} buttocks are tattooed with lewd scenes; each of ${his} buttocks shows a woman being sodomized while each of ${his} thighs shows a woman being gangbanged in all ${his} holes.`); } break; case "bovine patterns": @@ -607,7 +607,7 @@ App.Desc.tattoo = function(slave, surface) { break; } case "vagina": { - /* Fuckdoll vulva and anus alone are visibile, plus enormus lips */ + /* Fuckdoll vulva and anus alone are visible, plus enormous lips */ if (slave.vaginaTat !== 0) { switch (slave.vaginaTat) { case "tribal patterns": @@ -797,7 +797,7 @@ App.Desc.tattoo = function(slave, surface) { break; } case "anus": { - /* Fuckdoll vulva and anus alone are visibile, plus enormus lips */ + /* Fuckdoll vulva and anus alone are visible, plus enormous lips */ if (slave.anusTat !== 0) { switch (slave.anusTat) { case "bleached": diff --git a/src/npc/descriptions/drugs.js b/src/npc/descriptions/drugs.js index 1f4a34e433f593dc0d8f44761f78532c9296f3ea..4609cc969ab188b4ca1559b74d0e90df1cbeb8c3 100644 --- a/src/npc/descriptions/drugs.js +++ b/src/npc/descriptions/drugs.js @@ -5,7 +5,7 @@ App.Desc.drugs = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, himself, He, His } = getPronouns(slave); let ignoredRule; if (slave.fuckdoll === 0) { diff --git a/src/npc/descriptions/ears.js b/src/npc/descriptions/ears.js index a0b298074bcda46f20be7d4c0f999eae6c40d918..c647b2055e64ed4d6e804384268c40cb90931d58 100644 --- a/src/npc/descriptions/ears.js +++ b/src/npc/descriptions/ears.js @@ -5,7 +5,7 @@ App.Desc.ears = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); // ear shape description here if (slave.earShape === "none") { diff --git a/src/npc/descriptions/face.js b/src/npc/descriptions/face.js index 6106b94c93afcb41198b5d7af56492f5a46725d9..eb3c7d6aaf64c9dc81581b372461e14a5f536b5d 100644 --- a/src/npc/descriptions/face.js +++ b/src/npc/descriptions/face.js @@ -5,7 +5,7 @@ App.Desc.face = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); r.push(`${His} <span class="pink">face is`); diff --git a/src/npc/descriptions/heels.js b/src/npc/descriptions/heels.js index 2d68c7f8d7e27924534b1f227a07c2ffd4ed35d7..dd159688cb98e2c63aadff31a2b51cae5c10f3f8 100644 --- a/src/npc/descriptions/heels.js +++ b/src/npc/descriptions/heels.js @@ -8,7 +8,7 @@ App.Desc.heels = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, He, His } = getPronouns(slave); if (slave.heels === 1 && hasAnyLegs(slave)) { r.push(`${His}`); diff --git a/src/npc/descriptions/heightImplant.js b/src/npc/descriptions/heightImplant.js index 70360ad026447b24a5f211bc09b6cb89ec49a98b..498c780ca9f91ee2ca9415430b47e7a0f20e9ce6 100644 --- a/src/npc/descriptions/heightImplant.js +++ b/src/npc/descriptions/heightImplant.js @@ -4,9 +4,7 @@ */ App.Desc.heightImplant = function(slave) { let r = []; - const { - he, him, his, hers, himself, boy, He, His - } = getPronouns(slave); + const {his} = getPronouns(slave); if (slave.heightImplant > 1) { r = limbs(); r.push(`are wrong; it's obvious that they have been artificially lengthened.`); diff --git a/src/npc/descriptions/hips.js b/src/npc/descriptions/hips.js index 3af4a1c094806ae1c31469dfce339353e6777adc..72c2209d1c16de3adf9175e9bd6e4cc15182edb6 100644 --- a/src/npc/descriptions/hips.js +++ b/src/npc/descriptions/hips.js @@ -4,9 +4,7 @@ */ App.Desc.hips = function(slave) { const r = []; - const { - he, him, his, hers, himself, boy, He, His - } = getPronouns(slave); + const {his} = getPronouns(slave); if (slave.hips < -1) { if (slave.butt > 2) { if (V.arcologies[0].FSHedonisticDecadence !== "unset") { diff --git a/src/npc/descriptions/horns.js b/src/npc/descriptions/horns.js index a8ad3d4c4f91cc80a791620ce7c581d7a8c89abe..a50f4475f4ab1c4aadd171a3b97528946a115633 100644 --- a/src/npc/descriptions/horns.js +++ b/src/npc/descriptions/horns.js @@ -5,7 +5,7 @@ App.Desc.horns = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, his, He } = getPronouns(slave); if (slave.horn === "curved succubus horns") { r.push(`${He} has`); diff --git a/src/npc/descriptions/longSlave.js b/src/npc/descriptions/longSlave.js index 5bf5b434c7fe4d1333c03ac51b50a8fcf8d4eff2..33ca73fbce8f573a27ed0bc34890604b54a7fa81 100644 --- a/src/npc/descriptions/longSlave.js +++ b/src/npc/descriptions/longSlave.js @@ -22,7 +22,7 @@ App.Desc.longSlave = function(slave = V.activeSlave, {market = 0, eventDescripti if (V.seeImages === 1 && !eventDescription && passage() !== "Slave Interact") { // Art span = document.createElement('span'); - span.id = "artFrame"; + span.id = "art-frame"; App.Events.drawEventArt(span, slave); el.appendChild(span); } diff --git a/src/npc/descriptions/mouth.js b/src/npc/descriptions/mouth.js index a61e2d37959bdd19ce33ab2a929931966d104027..b5620910631e191e2b3779797f08713492ef8749 100644 --- a/src/npc/descriptions/mouth.js +++ b/src/npc/descriptions/mouth.js @@ -5,7 +5,7 @@ App.Desc.mouth = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His, woman, girl + he, him, his, He, His, woman, girl } = getPronouns(slave); r.push(`${He} has`); diff --git a/src/npc/descriptions/name.js b/src/npc/descriptions/name.js index 7967f98bdb7c7e61e5c17950bb362ebed43ba516..7afd2ff13395d1d0d587c903580ff9bd711a245a 100644 --- a/src/npc/descriptions/name.js +++ b/src/npc/descriptions/name.js @@ -8,36 +8,36 @@ App.Desc.name = function(slave) { he, his, He } = getPronouns(slave); if (slave.slaveName !== slave.birthName || slave.slaveSurname !== slave.birthSurname) { - let nameloss = 0; + let nameLoss = 0; if (slave.fuckdoll === 0) { if (slave.slaveName !== slave.birthName && slave.slaveSurname !== slave.birthSurname) { r.push(`${SlaveFullName(slave)} is not ${his} original full name;`); if (slave.birthName === "" || slave.birthSurname === "") { r.push(`whatever it was, however, has been lost forever.`); - nameloss = 1; + nameLoss = 1; } } else if (slave.slaveName !== slave.birthName) { r.push(`${slave.slaveName} is not ${his} original given name;`); if (slave.birthName === "") { r.push(`whatever it was, however, has been lost forever.`); - nameloss = 1; + nameLoss = 1; } } else if (slave.slaveSurname !== slave.birthSurname) { if (slave.slaveSurname === 0 && slave.birthSurname === "") { r.push(`${He} once had a surname; whatever it was, however, has been lost forever.`); - nameloss = 1; + nameLoss = 1; } else if (slave.slaveSurname !== 0) { r.push(`${slave.slaveSurname} is not ${his} original surname;`); if (slave.birthSurname === "") { r.push(`whatever it was, however, has been lost forever.`); - nameloss = 1; + nameLoss = 1; } } else { - nameloss = 1; + nameLoss = 1; } } if (slave.birthName !== "" || slave.birthSurname !== "") { - if (nameloss === 1) { + if (nameLoss === 1) { r.push(`${He}`); } else { r.push(`${he}`); diff --git a/src/npc/descriptions/shoulders.js b/src/npc/descriptions/shoulders.js index 4f1dceae5929d0431be779d5d8f4ca766264f2bb..0cbbbe20bfb1a4077f06587705c7912ce90bfc76 100644 --- a/src/npc/descriptions/shoulders.js +++ b/src/npc/descriptions/shoulders.js @@ -5,7 +5,7 @@ App.Desc.shoulders = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + him, his, His } = getPronouns(slave); if (slave.fuckdoll === 0) { if (slave.shoulders < -1) { diff --git a/src/npc/descriptions/skin.js b/src/npc/descriptions/skin.js index 6bd663641ac4a9b38a164aeb6832a2d37fa1b676..ce7392890f572f7c139427a9c6894c70be8e77cb 100644 --- a/src/npc/descriptions/skin.js +++ b/src/npc/descriptions/skin.js @@ -8,7 +8,7 @@ App.Desc.skin = function(slave, {market, eventDescription} = {}) { let r = []; const { - he, him, his, hers, himself, boy, He, His + he, his, He, His } = getPronouns(slave); if (slave.fuckdoll > 0) { diff --git a/src/npc/descriptions/style/clothing.js b/src/npc/descriptions/style/clothing.js index 9fe0884e12164e9076a3f8e239822bb6da1d904e..7ba30c337f6a4b3955db28211b41735b232abc33 100644 --- a/src/npc/descriptions/style/clothing.js +++ b/src/npc/descriptions/style/clothing.js @@ -8,7 +8,7 @@ App.Desc.clothing = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He, His } = getPronouns(slave); if (V.showClothing === 1 && !market) { diff --git a/src/npc/descriptions/style/footwear.js b/src/npc/descriptions/style/footwear.js index c5a17284320457df4f35b22b52197936898684bc..2899f2ebf18a04629af176ffe29b6e3c68cdd8d6 100644 --- a/src/npc/descriptions/style/footwear.js +++ b/src/npc/descriptions/style/footwear.js @@ -5,7 +5,7 @@ App.Desc.footwear = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, He } = getPronouns(slave); if (hasAnyLegs(slave)) { switch (slave.clothes) { diff --git a/src/npc/descriptions/style/hair.js b/src/npc/descriptions/style/hair.js index 088fbeb551a3587edc6ee29afa2bc504bde16eb9..0da7d91d403eb8313743c495e5505295b6953908 100644 --- a/src/npc/descriptions/style/hair.js +++ b/src/npc/descriptions/style/hair.js @@ -5,7 +5,7 @@ App.Desc.hair = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + his, His } = getPronouns(slave); const hairLength = slave.hLength / slave.height; diff --git a/src/npc/descriptions/style/hairClothing.js b/src/npc/descriptions/style/hairClothing.js index 3d553e04c073a50e93f1739b85605fd93a8484ae..f77ef2c347b7a84b304c2fe3dc0db663188429ea 100644 --- a/src/npc/descriptions/style/hairClothing.js +++ b/src/npc/descriptions/style/hairClothing.js @@ -5,7 +5,7 @@ App.Desc.hairClothing = function(slave) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his } = getPronouns(slave); if (slave.fuckdoll === 0) { diff --git a/src/npc/descriptions/waist.js b/src/npc/descriptions/waist.js index 4e885748d63fce6f77ba6a717f1626e687da1140..37df44eb601959ea5ed83a5b4996a9eedd172910 100644 --- a/src/npc/descriptions/waist.js +++ b/src/npc/descriptions/waist.js @@ -10,7 +10,7 @@ App.Desc.waist = function(slave) { belly = bellyAdjective(slave); } const { - he, him, his, hers, himself, girl, He, His, woman + he, him, his, girl, He, His, woman } = getPronouns(slave); r.push(`${He} has`); diff --git a/src/npc/descriptions/womb/pregnancy.js b/src/npc/descriptions/womb/pregnancy.js index 8d38aefc24a75450b84864fdbf4d1238a2712097..d18ae63252b5244397325d36f3bc856a8165a0bf 100644 --- a/src/npc/descriptions/womb/pregnancy.js +++ b/src/npc/descriptions/womb/pregnancy.js @@ -8,7 +8,7 @@ App.Desc.pregnancy = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + he, him, his, himself, He, His } = getPronouns(slave); let daddy; if (slave.pregSource > 0) { diff --git a/src/npc/descriptions/womb/superfetation.js b/src/npc/descriptions/womb/superfetation.js index f0046d6d431252593344b757cdad9c2382ac8d9e..47e49d634bbb8852d0a43561823d23103c73a3c1 100644 --- a/src/npc/descriptions/womb/superfetation.js +++ b/src/npc/descriptions/womb/superfetation.js @@ -8,7 +8,7 @@ App.Desc.superfetation = function(slave, {market, eventDescription} = {}) { const r = []; const { - he, him, his, hers, himself, boy, He, His + his, His } = getPronouns(slave); let lsd; let daddy; diff --git a/src/npc/generate/generateGenetics.js b/src/npc/generate/generateGenetics.js index 8e119e198680560dd547a20b25a3da46e4c205ec..85b3c6419e7f0ab5e77c1c3906ee411089f584ac 100644 --- a/src/npc/generate/generateGenetics.js +++ b/src/npc/generate/generateGenetics.js @@ -132,7 +132,7 @@ globalThis.generateGenetics = (function() { return sourceSpermY; } - // generation chance of y-chormosome carrying sperm + // generation chance of y-chromosome carrying sperm function setSpermY(father, mother) { // Y-linked trait, so figure out where the Y chromosome is coming from and start from there return normalRandInt(getSpermY(father, mother), 5); // mutation @@ -708,8 +708,8 @@ globalThis.generateGenetics = (function() { androgyny: 0 }; let chance = 0; - let fathergenes = 0; - let genetarget = 0; + let fatherGenes = 0; + let geneTarget = 0; // during BC WombInit, the mother has been updated but the father might not have been yet. // if the father is defined but doesn't have genetic quirks, just ignore him @@ -727,11 +727,11 @@ globalThis.generateGenetics = (function() { // Sex-linked recessive: ??? // realism would be, looking at hypothetical x-carried gene that by its nature can only affect women - // Male carrier, female with condition: 100% of daughters have condition, 100% of sons carriers genetotal 3 - // Normal male, female with condition: 100% of daughters are carriers, 100% of sons are carriers genetotal 2 - // Carrier male, carrier female: 50% of daughters have condition, 50% carriers; 50% of sons carriers. genetotal 2 - // Normal male, carrier female: 50% of daughters carriers, 50% of sons carriers genetotal 1 - // Carrier male, normal female: 100% of daughters carriers, sons normal genetotal 1 + // Male carrier, female with condition: 100% of daughters have condition, 100% of sons carriers geneTotal 3 + // Normal male, female with condition: 100% of daughters are carriers, 100% of sons are carriers geneTotal 2 + // Carrier male, carrier female: 50% of daughters have condition, 50% carriers; 50% of sons carriers. geneTotal 2 + // Normal male, carrier female: 50% of daughters carriers, 50% of sons carriers geneTotal 1 + // Carrier male, normal female: 100% of daughters carriers, sons normal geneTotal 1 // Sex-linked traits (fertility-affecting, well-hung) left handled by the old method; latter made mirror image to former. @@ -933,196 +933,196 @@ globalThis.generateGenetics = (function() { // perfect face if (father !== 0) { - fathergenes = father.geneticQuirks.pFace; + fatherGenes = father.geneticQuirks.pFace; } - genetarget = Math.pow(2, mother.geneticQuirks.pFace + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.pFace + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.pFace = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.pFace = 1; } } // ugly face if (father !== 0) { - fathergenes = father.geneticQuirks.uFace; + fatherGenes = father.geneticQuirks.uFace; } - genetarget = Math.pow(2, mother.geneticQuirks.uFace + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.uFace + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.uFace = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.uFace = 1; } } // gigantism if (father !== 0) { - fathergenes = father.geneticQuirks.gigantism; + fatherGenes = father.geneticQuirks.gigantism; } - genetarget = Math.pow(2, mother.geneticQuirks.gigantism + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.gigantism + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.gigantism = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.gigantism = 1; } } // dwarfism if (father !== 0) { - fathergenes = father.geneticQuirks.dwarfism; + fatherGenes = father.geneticQuirks.dwarfism; } - genetarget = Math.pow(2, mother.geneticQuirks.dwarfism + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.dwarfism + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.dwarfism = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.dwarfism = 1; } } // albinism if (father !== 0) { - fathergenes = father.geneticQuirks.albinism; + fatherGenes = father.geneticQuirks.albinism; } - genetarget = Math.pow(2, mother.geneticQuirks.albinism + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.albinism + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.albinism = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.albinism = 1; } } // heterochromia if (father !== 0) { - fathergenes = father.geneticQuirks.heterochromia; + fatherGenes = father.geneticQuirks.heterochromia; } - genetarget = Math.pow(2, mother.geneticQuirks.heterochromia + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.heterochromia + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.heterochromia = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.heterochromia = 1; } } // rear lipedema if (father !== 0) { - fathergenes = father.geneticQuirks.rearLipedema; + fatherGenes = father.geneticQuirks.rearLipedema; } - genetarget = Math.pow(2, mother.geneticQuirks.rearLipedema + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.rearLipedema + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.rearLipedema = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.rearLipedema = 1; } } // Gigantomastia if (father !== 0) { - fathergenes = father.geneticQuirks.gigantomastia; + fatherGenes = father.geneticQuirks.gigantomastia; } - genetarget = Math.pow(2, mother.geneticQuirks.gigantomastia + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.gigantomastia + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.gigantomastia = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.gigantomastia = 1; } } // Macromastia if (father !== 0) { - fathergenes = father.geneticQuirks.macromastia; + fatherGenes = father.geneticQuirks.macromastia; } - genetarget = Math.pow(2, mother.geneticQuirks.macromastia + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.macromastia + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.macromastia = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.macromastia = 1; } } // myotonic hypertrophy if (father !== 0) { - fathergenes = father.geneticQuirks.mGain; + fatherGenes = father.geneticQuirks.mGain; } - genetarget = Math.pow(2, mother.geneticQuirks.mGain + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.mGain + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.mGain = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.mGain = 1; } } // myotonic dystrophy if (father !== 0) { - fathergenes = father.geneticQuirks.mLoss; + fatherGenes = father.geneticQuirks.mLoss; } - genetarget = Math.pow(2, mother.geneticQuirks.mLoss + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.mLoss + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.mLoss = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.mLoss = 1; } } // hyperleptinemia if (father !== 0) { - fathergenes = father.geneticQuirks.wGain; + fatherGenes = father.geneticQuirks.wGain; } - genetarget = Math.pow(2, mother.geneticQuirks.wGain + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.wGain + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.wGain = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.wGain = 1; } } // hypoleptinemia if (father !== 0) { - fathergenes = father.geneticQuirks.wLoss; + fatherGenes = father.geneticQuirks.wLoss; } - genetarget = Math.pow(2, mother.geneticQuirks.wLoss + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.wLoss + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.wLoss = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.wLoss = 1; } } // androgyny if (father !== 0) { - fathergenes = father.geneticQuirks.androgyny; + fatherGenes = father.geneticQuirks.androgyny; } - genetarget = Math.pow(2, mother.geneticQuirks.androgyny + fathergenes); - if (genetarget >= 2) { + geneTarget = Math.pow(2, mother.geneticQuirks.androgyny + fatherGenes); + if (geneTarget >= 2) { chance = jsRandom(1, 16); - if (chance <= genetarget) { + if (chance <= geneTarget) { quirks.androgyny = 2; - } else if (chance <= 3 * genetarget) { + } else if (chance <= 3 * geneTarget) { quirks.androgyny = 1; } } @@ -1141,7 +1141,7 @@ globalThis.generateGenetics = (function() { * @param {number} destination Optional * @returns {App.Entity.SlaveState|App.Entity.InfantState} */ -globalThis.generateChild = function (mother, ovum, incubator=false) { +globalThis.generateChild = function(mother, ovum, incubator=false) { let genes = ovum.genetics; // TODO: maybe just argument this? We'll see. let child = {}; @@ -1244,9 +1244,9 @@ globalThis.generateChild = function (mother, ovum, incubator=false) { child.premature = 1; } if (child.geneticQuirks.dwarfism === 2 && child.geneticQuirks.gigantism !== 2) { - child.height = Height.random(child, { limitMult: [-4, -1], spread: 0.15 }); + child.height = Height.random(child, {limitMult: [-4, -1], spread: 0.15}); } else if (child.geneticQuirks.gigantism === 2 && child.geneticQuirks.dwarfism !== 2) { - child.height = Height.random(child, { limitMult: [3, 10], spread: 0.15 }); + child.height = Height.random(child, {limitMult: [3, 10], spread: 0.15}); } child.face = genes.face; child.underArmHStyle = genes.underArmHStyle; diff --git a/src/npc/generate/generateMarketSlave.js b/src/npc/generate/generateMarketSlave.js index 048c48b543107bcf1f3fc2d2ecf7ccfddb8d4600..c214b6c8f66d42c3fbec5bcedd792ebec86f9a38 100644 --- a/src/npc/generate/generateMarketSlave.js +++ b/src/npc/generate/generateMarketSlave.js @@ -2,7 +2,7 @@ /** * @param {string} [market="kidnappers"] * @param {number} [numArcology=1] Defaults to 1 (V.arcologies[1]) since it refers to neighboring arcology, and V.arcologies[0] is the player's arcology. - * @returns {{text:string, slave:Object}} + * @returns {{text: string, slave: object}} */ globalThis.generateMarketSlave = function(market = "kidnappers", numArcology = 1) { let r = ``; @@ -818,7 +818,7 @@ globalThis.generateMarketSlave = function(market = "kidnappers", numArcology = 1 } if (V.arcologies[market].FSBodyPurist > 80) { r += `They're quite pristine, free of any genomic damage or addictions regardless of any transformations they've had. `; - // clean out any changes those filthy impure degradationsts may have made + // clean out any changes those filthy impure degradationists may have made slave.brand = {}; slave.scar = {}; slave.chem = 0; @@ -1551,7 +1551,7 @@ globalThis.generateMarketSlave = function(market = "kidnappers", numArcology = 1 } case "TUO": { SGProp.minAge = V.minimumSlaveAge; - SGProp.maxAge = Math.max(V.fertilityAge + jsRandom(0,1), V.minimumSlaveAge + jsRandom(0,3)); + SGProp.maxAge = Math.max(V.fertilityAge + jsRandom(0, 1), V.minimumSlaveAge + jsRandom(0, 3)); SGProp.disableDisability = 1; slave = GenerateNewSlave("", SGProp); slave.origin = "You bought $him from The Utopian Orphanage right after $his graduation."; @@ -1565,12 +1565,12 @@ globalThis.generateMarketSlave = function(market = "kidnappers", numArcology = 1 slave.intelligenceImplant = 30; slave.accent = 1; slave.skill.entertainment = 75; - slave.skill.combat = jsEither(0,1,1); + slave.skill.combat = jsEither(0, 1, 1); } else { slave.face = random(10, 65); slave.intelligence = Intelligence.random({limitIntelligence: [35, 75]}); slave.intelligenceImplant = 15; - slave.accent = jsEither(0,1); + slave.accent = jsEither(0, 1); slave.skill.entertainment = 45; slave.skill.combat = 0; } @@ -1579,28 +1579,28 @@ globalThis.generateMarketSlave = function(market = "kidnappers", numArcology = 1 slave.skill.oral = 15; slave.skill.anal = 15; slave.skill.whoring = 15; - slave.energy = jsRandom(40,95); + slave.energy = jsRandom(40, 95); } else { slave.skill.vaginal = 0; slave.skill.oral = 0; slave.skill.anal = 0; slave.skill.whoring = 0; - slave.energy = jsRandom(15,65); + slave.energy = jsRandom(15, 65); } slave.faceImplant = 0; - slave.weight = jsRandom(-17,17); - slave.muscles = jsRandom(0,20); - slave.lips = jsRandom(10,40); + slave.weight = jsRandom(-17, 17); + slave.muscles = jsRandom(0, 20); + slave.lips = jsRandom(10, 40); slave.lipsImplant = 0; if (slave.physicalAge > 16) { - slave.boobs = jsEither(200, jsRandom(200,400), jsRandom(200, 950)); + slave.boobs = jsEither(200, jsRandom(200, 400), jsRandom(200, 950)); } else if (slave.physicalAge <= 16 && slave.physicalAge > 13) { slave.boobs = jsEither(200, jsRandom(200, 400)); } else { slave.boobs = 200; } slave.boobsImplant = 0; - slave.butt = jsRandom(0,2); + slave.butt = jsRandom(0, 2); slave.buttImplant = 0; slave.vagina = 0; slave.anus = 0; diff --git a/src/npc/generate/generateNewSlaveJS.js b/src/npc/generate/generateNewSlaveJS.js index c7d9d31776e813fb381fe43477748761e872c9eb..5f5b28b5063e9a033fbc4c5754f761ec22e4607f 100644 --- a/src/npc/generate/generateNewSlaveJS.js +++ b/src/npc/generate/generateNewSlaveJS.js @@ -29,7 +29,7 @@ globalThis.GenerateNewSlave = (function() { /** * @returns {App.Entity.SlaveState} * @param {?string} sex "XY" or "XX", or "" or null to use default rules - * @param {Object} [Obj] + * @param {object} [Obj] * @param {number} [Obj.minAge] * @param {number} [Obj.maxAge] * @param {number} [Obj.ageOverridesPedoMode=0] 0 or 1. @@ -1798,7 +1798,7 @@ globalThis.GenerateNewSlave = (function() { })(); globalThis.generateSalonModifications = function(slave) { - /*hair dyes*/ + /* hair dyes*/ if ( (jsRandom(1, 50) === 1) || ((jsRandom(1, 20) === 1) && ["southern european", "white"].includes(slave.race)) ) { slave.hColor = jsEither(["jet black", "black", "black", "dark brown", "brown", "chestnut", "chocolate", "amber", "golden", "blonde", "blonde", "blonde", "platinum blonde", "platinum blonde", "auburn", "ginger", "copper"]); if (jsRandom(1, 10) === 1 || (["jet black", "black", "dark brown", "brown", "chestnut", "chocolate"].includes(slave.hColor) && jsRandom(1, 10) !== 1)) { @@ -1817,7 +1817,7 @@ globalThis.generateSalonModifications = function(slave) { slave.underArmHColor = slave.hColor; } - /*hair style*/ + /* hair style*/ if ( (["black", "mixed race"].includes(slave.race) && (jsRandom(1, 3) === 1)) || (jsRandom(1, 15) === 1) ) { slave.hStyle = jsEither(["dreadlocks", "cornrows", "afro"]); } else if (jsRandom(1, 5) === 1) { @@ -1848,11 +1848,11 @@ globalThis.generateSalonModifications = function(slave) { if (["Swedish"].includes(slave.nationality) || ["southern european", "latina", "indo-aryan", "middle eastern", "semitic"].includes(slave.race)) { tan_chance += 5; } - /*certain jobs being more likely to expose you to harmful solar radiation*/ + /* certain jobs being more likely to expose you to harmful solar radiation*/ if (["a beggar", "a bimbo", "a construction worker", "a courier", "a gardener", "a delivery woman", "a farm laborer", "a farmer's daughter", "a farmer", "a farmhand", "a lifeguard", "a personal trainer", "a rancher", "a shepherd", "a street performer", "a street vendor", "a student athlete", "a tour guide", "a trophy wife", "an athlete", "an exotic dancer", "homeless"].includes(slave.career)) { tan_chance += 10; } - /*certain areas expose people to more harmful solar radiation*/ + /* certain areas expose people to more harmful solar radiation*/ if (["the Middle East", "South America", "Africa", "Australia"].includes(V.continent)) { tan_chance += 5; } diff --git a/src/npc/generate/generateRelatedSlave.js b/src/npc/generate/generateRelatedSlave.js index 832945f4cc7e421e391e3cd92868d80d6353503d..96c0c5aa34c14c4a4a2b3dc43bf8545fb1402472 100644 --- a/src/npc/generate/generateRelatedSlave.js +++ b/src/npc/generate/generateRelatedSlave.js @@ -128,7 +128,7 @@ globalThis.generateRelatedSlave = (function() { */ function makeTwin(slave) { /* twins are physically identical, change only mental traits. */ - randomiseFetishFlaws(slave); + randomizeFetishFlaws(slave); } /** @@ -146,7 +146,7 @@ globalThis.generateRelatedSlave = (function() { fuzzPhysicalTraits(slave); - randomiseFetishFlaws(slave); + randomizeFetishFlaws(slave); } /** @@ -162,7 +162,7 @@ globalThis.generateRelatedSlave = (function() { fuzzPhysicalTraits(slave); - randomiseFetishFlaws(slave); + randomizeFetishFlaws(slave); } /** @@ -205,7 +205,7 @@ globalThis.generateRelatedSlave = (function() { slave.counter.birthsTotal = 0; } - randomiseFetishFlaws(slave); + randomizeFetishFlaws(slave); } /** @@ -245,7 +245,7 @@ globalThis.generateRelatedSlave = (function() { slave.counter.birthsTotal = 1; } - randomiseFetishFlaws(slave); + randomizeFetishFlaws(slave); } /** @@ -266,7 +266,7 @@ globalThis.generateRelatedSlave = (function() { * Randomize fetish and flaws * @param {App.Entity.SlaveState} slave */ - function randomiseFetishFlaws(slave) { + function randomizeFetishFlaws(slave) { slave.fetishStrength = random(0, 90); slave.fetish = either("buttslut", "cumslut", "dom", "humiliation", "masochist", "boobs", "none", "none", "none", "none", "none", "none", "pregnancy", "sadist", "submissive"); slave.behavioralFlaw = either("anorexic", "arrogant", "bitchy", "devout", "gluttonous", "hates men", "hates women", "liberated", "none", "none", "none", "odd"); @@ -418,11 +418,11 @@ globalThis.generateRelatedSlave = (function() { } /** - * Give a slave a realistic chance to activate a sexlinked genetic quirk which her opposite-sex relative was only a carrier for. + * Give a slave a realistic chance to activate a sex-linked genetic quirk which her opposite-sex relative was only a carrier for. * @param {App.Entity.SlaveState} slave - the slave to adjust * @param {string} quirk - the sex-linked quirk to test */ - function activateSexlinkedGeneticQuirk(slave, quirk) { + function activateSexLinkedGeneticQuirk(slave, quirk) { if (slave.geneticQuirks[quirk] === 1) { if (random(1, 4) > 3) { slave.geneticQuirks[quirk] = 2; @@ -431,11 +431,11 @@ globalThis.generateRelatedSlave = (function() { } /** - * Make a slave a carrier for a genetic sexlinked quirk which her opposite-sex relative had active. + * Make a slave a carrier for a genetic sex-linked quirk which her opposite-sex relative had active. * @param {App.Entity.SlaveState} slave - the slave to adjust * @param {string} quirk - the sex-linked quirk to test */ - function deactivateSexlinkedGeneticQuirk(slave, quirk) { + function deactivateSexLinkedGeneticQuirk(slave, quirk) { if (slave.geneticQuirks[quirk] === 2) { slave.geneticQuirks[quirk] = 1; } @@ -449,9 +449,9 @@ globalThis.generateRelatedSlave = (function() { slave.genes = "XX"; slave.pronoun = App.Data.Pronouns.Kind.female; - // activate/deactivate sexlinked genetic quirks - ["wellHung"].forEach((q) => deactivateSexlinkedGeneticQuirk(slave, q)); - ["fertility", "hyperFertility", "macromastia", "gigantomastia"].forEach((q) => activateSexlinkedGeneticQuirk(slave, q)); + // activate/deactivate sex-linked genetic quirks + ["wellHung"].forEach((q) => deactivateSexLinkedGeneticQuirk(slave, q)); + ["fertility", "hyperFertility", "macromastia", "gigantomastia"].forEach((q) => activateSexLinkedGeneticQuirk(slave, q)); // alter body proportions slave.hips = Math.clamp(slave.hips + 1, -2, 2); @@ -500,9 +500,9 @@ globalThis.generateRelatedSlave = (function() { slave.genes = "XY"; slave.pronoun = App.Data.Pronouns.Kind.male; - // activate/deactivate sexlinked genetic quirks - ["wellHung"].forEach((q) => activateSexlinkedGeneticQuirk(slave, q)); - ["fertility", "hyperFertility", "macromastia", "gigantomastia"].forEach((q) => deactivateSexlinkedGeneticQuirk(slave, q)); + // activate/deactivate sex-linked genetic quirks + ["wellHung"].forEach((q) => activateSexLinkedGeneticQuirk(slave, q)); + ["fertility", "hyperFertility", "macromastia", "gigantomastia"].forEach((q) => deactivateSexLinkedGeneticQuirk(slave, q)); // alter body proportions slave.hips = Math.clamp(slave.hips - 1, -2, 2); diff --git a/src/npc/generate/heroCreator.js b/src/npc/generate/heroCreator.js index c579200f0e4aa58e929643ea40c21f16b6adfd47..0da21a4a1f8171fac4ac74e3f9108496a26859d4 100644 --- a/src/npc/generate/heroCreator.js +++ b/src/npc/generate/heroCreator.js @@ -141,7 +141,11 @@ App.Utils.getHeroSlave = function(heroSlave) { /* The twins — Camille & Kennerly */ for (let k = 0; k < V.slaves.length; k++) { if (areSisters(V.slaves[k], newSlave) > 0) { - newSlave.actualAge = V.slaves[k].actualAge, newSlave.physicalAge = newSlave.actualAge, newSlave.visualAge = newSlave.actualAge, newSlave.ovaryAge = newSlave.actualAge, newSlave.birthWeek = V.slaves[k].birthWeek; + newSlave.actualAge = V.slaves[k].actualAge; + newSlave.physicalAge = newSlave.actualAge; + newSlave.visualAge = newSlave.actualAge; + newSlave.ovaryAge = newSlave.actualAge; + newSlave.birthWeek = V.slaves[k].birthWeek; } } } @@ -150,9 +154,15 @@ App.Utils.getHeroSlave = function(heroSlave) { for (let k = 0; k < V.slaves.length; k++) { if (areSisters(V.slaves[k], newSlave) > 0) { if (newSlave.birthName === "Elisa") { - newSlave.actualAge = V.slaves[k].actualAge - 1, newSlave.physicalAge = newSlave.actualAge, newSlave.visualAge = newSlave.actualAge, newSlave.ovaryAge = newSlave.actualAge; + newSlave.actualAge = V.slaves[k].actualAge - 1; + newSlave.physicalAge = newSlave.actualAge; + newSlave.visualAge = newSlave.actualAge; + newSlave.ovaryAge = newSlave.actualAge; } else if (newSlave.birthName === "Martin") { - newSlave.actualAge = V.slaves[k].actualAge + 1, newSlave.physicalAge = newSlave.actualAge, newSlave.visualAge = newSlave.actualAge, newSlave.ovaryAge = newSlave.actualAge; + newSlave.actualAge = V.slaves[k].actualAge + 1; + newSlave.physicalAge = newSlave.actualAge; + newSlave.visualAge = newSlave.actualAge; + newSlave.ovaryAge = newSlave.actualAge; } } } @@ -162,9 +172,15 @@ App.Utils.getHeroSlave = function(heroSlave) { for (let k = 0; k < V.slaves.length; k++) { if (areSisters(V.slaves[k], newSlave) > 0) { if (newSlave.birthName === "Green Grape") { - newSlave.actualAge = V.slaves[k].actualAge - 5, newSlave.physicalAge = newSlave.actualAge, newSlave.visualAge = newSlave.actualAge, newSlave.ovaryAge = newSlave.actualAge; + newSlave.actualAge = V.slaves[k].actualAge - 5; + newSlave.physicalAge = newSlave.actualAge; + newSlave.visualAge = newSlave.actualAge; + newSlave.ovaryAge = newSlave.actualAge; } else if (newSlave.birthName === "Purple Grape") { - newSlave.actualAge = V.slaves[k].actualAge + 5, newSlave.physicalAge = newSlave.actualAge, newSlave.visualAge = newSlave.actualAge, newSlave.ovaryAge = newSlave.actualAge; + newSlave.actualAge = V.slaves[k].actualAge + 5; + newSlave.physicalAge = newSlave.actualAge; + newSlave.visualAge = newSlave.actualAge; + newSlave.ovaryAge = newSlave.actualAge; } } } diff --git a/src/npc/generate/lawCompliance.js b/src/npc/generate/lawCompliance.js index c5801fe3cbff6a4baaf7587776eac97192fd161c..414e476f5bde3b72c88954d9f3848cd27b45d2ad 100644 --- a/src/npc/generate/lawCompliance.js +++ b/src/npc/generate/lawCompliance.js @@ -7,7 +7,7 @@ App.Desc.lawCompliance = function(slave, market = 0) { let r = []; const fearList = []; const { - he, him, his, hers, himself, boy, He, His, girl + he, him, his, himself, He, His, girl } = getPronouns(slave); if (V.arcologies[0].FSSlimnessEnthusiastSMR === 1) { diff --git a/src/npc/infants/infantInteract.tw b/src/npc/infants/infantInteract.tw index a19f07c1122dc68ee43f585f3415963063df13b6..8f77e8fd46e06e259d15fd34cd9730bca359477f 100644 --- a/src/npc/infants/infantInteract.tw +++ b/src/npc/infants/infantInteract.tw @@ -13,13 +13,13 @@ <center> @@.cyan;[â†,Q] @@ -<span id="prevChild"> +<span id="prev-child"> <b> <<link "Prev" "Previous Child In Line">><</link>> </b> </span> <span class='slave-name'>$activeChild.slaveName</span> -<span id="nextChild"> +<span id="next-child"> <b> <<link "Next" "Next Child In Line">><</link>> </b> diff --git a/src/npc/infants/infantSummary.js b/src/npc/infants/infantSummary.js index c3dda62a3060ffcacbcf2cb0669dde5432b8dbe8..9e1cb4dd19244367f1691c2d09038bcefe541d38 100644 --- a/src/npc/infants/infantSummary.js +++ b/src/npc/infants/infantSummary.js @@ -58,11 +58,11 @@ App.Facilities.Nursery.InfantSummary = function(child) { // function health() { - // if (abbreviate.health === 1) { - // return shortHealth(); - // } else if (abbreviate.health === 2) { - // return longHealth(); - // } + // if (abbreviate.health === 1) { + // return shortHealth(); + // } else if (abbreviate.health === 2) { + // return longHealth(); + // } // } function description() { @@ -1599,7 +1599,7 @@ App.Facilities.Nursery.InfantSummary = function(child) { function shortExtendedFamily() { const - { daughter, sister } = getPronouns(child); + {daughter, sister} = getPronouns(child); let handled = 0, @@ -1721,7 +1721,7 @@ App.Facilities.Nursery.InfantSummary = function(child) { function longExtendedFamily() { const - { daughter, sister } = getPronouns(child); + {daughter, sister} = getPronouns(child); let handled = 0, @@ -1861,7 +1861,7 @@ App.Facilities.Nursery.InfantSummary = function(child) { if (child.rivalry !== 0) { r += ` `; - const _ssj = V.slaves.findIndex(function (s) { + const _ssj = V.slaves.findIndex(function(s) { return s.ID === child.rivalryTarget; }); if (_ssj !== -1) { diff --git a/src/npc/infants/longInfantDescription.js b/src/npc/infants/longInfantDescription.js index f229127e0f32766e46b08971527029cf21eb5136..4a26e56713bde3bff45ff1561e36a46c50b973df 100644 --- a/src/npc/infants/longInfantDescription.js +++ b/src/npc/infants/longInfantDescription.js @@ -20,7 +20,7 @@ App.Facilities.Nursery.LongInfantDescription = function(child, {market = 0, even const { - he, him, his, He, His + he, his, He } = getPronouns(child); if (child.father === -1 && child.mother === -1) { diff --git a/src/npc/interaction/fAbuse.tw b/src/npc/interaction/fAbuse.tw index b764505c3566b13972d92eec0f0da9a12080b9c6..ec85b8c0c260a0f53e8d53977c386211bbfd0e7a 100644 --- a/src/npc/interaction/fAbuse.tw +++ b/src/npc/interaction/fAbuse.tw @@ -19,7 +19,7 @@ <</if>> <</if>> -<<set _asspain = 0>> +<<set _assPain = 0>> <<if !hasAnyLegs(getSlave($AS))>> You set $his helpless form down for abuse. Brutalizing $him is almost childishly easy; $his <<if hasAnyArms(getSlave($AS))>>leg<<else>>limb<</if>>less torso leaves $him at your mercy. @@ -381,7 +381,7 @@ from your victim. <<elseif (getSlave($AS).chastityVagina) && canDoAnal(getSlave($AS))>> The bitch's wearing a chastity belt, so $he isn't surprised when you shove <<if ($PC.dick == 0)>>the strap-on<<else>>your dick<</if>> up $his butt. What surprises $him is when you slide a finger or two in alongside your dick to stretch $him to the point of pain. <<= VCheck.Anal()>> - <<set _asspain = 1>> + <<set _assPain = 1>> <<elseif (getSlave($AS).vagina == 0)>> The bitch's still a virgin and you don't mean to take that now, but you torture $him with the threat of raping $his virgin pussy for a while before settling for $his gagging throat. <<set getSlave($AS).counter.oral++, $oralTotal++>> @@ -403,15 +403,15 @@ from your victim. <<elseif (getSlave($AS).anus == 1)>> The bitch's butt is tight, so you ram <<if ($PC.dick == 0)>>the strap-on<<else>>your dick<</if>> into $him without lubricant and sodomize $him as hard as you can without damaging your property.<<if ($PC.vagina != -1) && ($PC.dick != 0)>> Fortunately for $him, this gets you so wet that some of your pussyjuice makes it down onto your shaft and serves as improvised lube.<</if>> $His asshole spasms with the pain of the rape. You cum explosively. <<= VCheck.Anal()>> - <<set _asspain = 1>> + <<set _assPain = 1>> <<elseif (getSlave($AS).dick > 0) && (getSlave($AS).scrotum > 0)>> You ram <<if ($PC.dick == 0)>>the strap-on<<else>>your dick<</if>> into $his sissy butt without lubricant. As $he flinches you announce that $he'll be taking part in giving $himself anal pain. $He humps into you lamely, so you administer a truly agonizing slap to $his balls<<if ($PC.dick == 0)>><<else>> that makes $his anal ring stiffen deliciously around your dick<</if>>. To avoid further punishment $he fucks $himself against you almost hard enough to hurt $himself.<<if ($PC.vagina != -1) && ($PC.dick != 0)>> Fortunately for $him, this gets you so wet that some of your pussyjuice makes it down onto your shaft and serves as improvised lube.<</if>> You orgasm explosively. <<= VCheck.Anal()>> - <<set _asspain = 1>> + <<set _assPain = 1>> <<elseif (getSlave($AS).dick > 0)>> You ram <<if ($PC.dick == 0)>>the strap-on<<else>>your dick<</if>> into $his gelded butt without lubricant and sodomize $him as hard as you can without damaging your property.<<if $PC.vagina != -1>> Fortunately for $him, this gets you so wet that some of your pussyjuice makes it down onto your shaft and serves as improvised lube.<</if>> $He's such a slut that $he shows signs of enjoyment, but you put a stop to that whenever it happens by slapping and flicking $his cock. You cum explosively. <<= VCheck.Anal()>> - <<set _asspain = 1>> + <<set _assPain = 1>> <<else>> $He's got no special physical targets for abuse, so you just rape $him hard and fast, raining stinging slaps down on $him as you do. $He cries and whimpers; you finish. <<= VCheck.Both()>> @@ -426,7 +426,7 @@ from your victim. <<if (getSlave($AS).ID !== $BodyguardID)>> <<if getSlave($AS).minorInjury == 0>> - <<if _asspain == 1>> + <<if _assPain == 1>> The anal rape leaves $him with a sore butthole. <<elseif random(1,100) > 50>> <<set getSlave($AS).minorInjury = either("black eye", "bruise", "split lip")>> diff --git a/src/npc/interaction/fFeet.tw b/src/npc/interaction/fFeet.tw index ed12652f7c9999442742ac852b8b960841a1965e..90681b275bbc1c92e89352d92ba3ecb423608c0c 100644 --- a/src/npc/interaction/fFeet.tw +++ b/src/npc/interaction/fFeet.tw @@ -72,66 +72,66 @@ <</if>> <<if getSlave($AS).boobs >= 30000>> - <<set _boobsa = "skip">> + <<set _boobsA = "skip">> <<set _boobs = "room filling">> <<elseif getSlave($AS).boobs >= 20000>> - <<set _boobsa = "beanbag sized">> + <<set _boobsA = "beanbag sized">> <<elseif getSlave($AS).boobs >= 8500>> - <<set _boobsa = "obscenely massive">> + <<set _boobsA = "obscenely massive">> <<elseif getSlave($AS).boobs >= 8000>> - <<set _boobsa = "Z-cup">> + <<set _boobsA = "Z-cup">> <<elseif getSlave($AS).boobs >= 7500>> - <<set _boobsa = "Y-cup">> + <<set _boobsA = "Y-cup">> <<elseif getSlave($AS).boobs >= 7000>> - <<set _boobsa = "X-cup">> + <<set _boobsA = "X-cup">> <<elseif getSlave($AS).boobs >= 6500>> - <<set _boobsa = "V-cup">> + <<set _boobsA = "V-cup">> <<elseif getSlave($AS).boobs >= 5500>> - <<set _boobsa = "U-cup">> + <<set _boobsA = "U-cup">> <<elseif getSlave($AS).boobs >= 5100>> - <<set _boobsa = "T-cup">> + <<set _boobsA = "T-cup">> <<elseif getSlave($AS).boobs >= 4700>> - <<set _boobsa = "S-cup">> + <<set _boobsA = "S-cup">> <<elseif getSlave($AS).boobs >= 4300>> - <<set _boobsa = "R-cup">> + <<set _boobsA = "R-cup">> <<elseif getSlave($AS).boobs >= 3950>> - <<set _boobsa = "Q-cup">> + <<set _boobsA = "Q-cup">> <<elseif getSlave($AS).boobs >= 3600>> - <<set _boobsa = "P-cup">> + <<set _boobsA = "P-cup">> <<elseif getSlave($AS).boobs >= 3250>> - <<set _boobsa = "O-cup">> + <<set _boobsA = "O-cup">> <<elseif getSlave($AS).boobs >= 2900>> - <<set _boobsa = "N-cup">> + <<set _boobsA = "N-cup">> <<elseif getSlave($AS).boobs >= 2600>> - <<set _boobsa = "M-cup">> + <<set _boobsA = "M-cup">> <<elseif getSlave($AS).boobs >= 2300>> - <<set _boobsa = "L-cup">> + <<set _boobsA = "L-cup">> <<elseif getSlave($AS).boobs >= 2050>> - <<set _boobsa = "K-cup">> + <<set _boobsA = "K-cup">> <<elseif getSlave($AS).boobs >= 1800>> - <<set _boobsa = "J-cup">> + <<set _boobsA = "J-cup">> <<elseif getSlave($AS).boobs >= 1600>> - <<set _boobsa = "I-cup">> + <<set _boobsA = "I-cup">> <<elseif getSlave($AS).boobs >= 1400>> - <<set _boobsa = "H-cup">> + <<set _boobsA = "H-cup">> <<elseif getSlave($AS).boobs >= 1200>> - <<set _boobsa = "G-cup">> + <<set _boobsA = "G-cup">> <<elseif getSlave($AS).boobs >= 1000>> - <<set _boobsa = "F-cup">> + <<set _boobsA = "F-cup">> <<elseif getSlave($AS).boobs >= 800>> - <<set _boobsa = "DD-cup">> + <<set _boobsA = "DD-cup">> <<elseif getSlave($AS).boobs >= 650>> - <<set _boobsa = "D-cup">> + <<set _boobsA = "D-cup">> <<elseif getSlave($AS).boobs >= 400>> - <<set _boobsa = "C-cup">> + <<set _boobsA = "C-cup">> <<elseif getSlave($AS).boobs >= 300>> - <<set _boobsa = "B-cup">> + <<set _boobsA = "B-cup">> <<else>> - <<set _boobsa = "skip">> + <<set _boobsA = "skip">> <<set _boobs = "flat">> <</if>> -<<if _boobsa != "skip">> - <<set _boobs = _boobsa + " " + getSlave($AS).boobShape>> +<<if _boobsA != "skip">> + <<set _boobs = _boobsA + " " + getSlave($AS).boobShape>> <</if>> <<if getSlave($AS).balls == 1>> diff --git a/src/npc/interaction/fKiss.tw b/src/npc/interaction/fKiss.tw index 0cd7acad44532fea6b209e12eaafb8192af83302..edc876e662acc773e0b48726b12fb5e84dd435d2 100644 --- a/src/npc/interaction/fKiss.tw +++ b/src/npc/interaction/fKiss.tw @@ -199,7 +199,7 @@ Then, you gently raise $his <<if getSlave($AS).face > 95>>heartrendingly beautif "I love you, <<Master>>," $he <<say>>s dreamily. <</if>> <<elseif (getSlave($AS).devotion > 50) && (getSlave($AS).fetish == "dom") && (getSlave($AS).fetishKnown == 1) && (getSlave($AS).fetishStrength > 60)>> - $He giggles into you and kisses you back with vigor, $his head pressing insistently forward. The two of you make out rather aggressively<<if (getSlave($AS).teeth == "pointy")>>, $his sharp teeth drawing a bit of blood from your lips and tongue<<elseif (getSlave($AS).teeth == "fangs")>>, $his fangs drawing a bit of blood from your lips and togue<<elseif (getSlave($AS).teeth == "fang")>>, $his pointy fang drawing a bit of blood from your lips and togue<</if>>. $He takes $his tendency towards sexual dominance right up to the edge of insubordination, $his active tongue only retreating when yours presses against it. When you finally shove $him away, $he's breathing hard through $his grin. + $He giggles into you and kisses you back with vigor, $his head pressing insistently forward. The two of you make out rather aggressively<<if (getSlave($AS).teeth == "pointy")>>, $his sharp teeth drawing a bit of blood from your lips and tongue<<elseif (getSlave($AS).teeth == "fangs")>>, $his fangs drawing a bit of blood from your lips and tongue<<elseif (getSlave($AS).teeth == "fang")>>, $his pointy fang drawing a bit of blood from your lips and tongue<</if>>. $He takes $his tendency towards sexual dominance right up to the edge of insubordination, $his active tongue only retreating when yours presses against it. When you finally shove $him away, $he's breathing hard through $his grin. <<if (getSlave($AS).accent >= 3)>> $He does $his best to communicate excitement with $his <<if canSee(getSlave($AS))>><<= App.Desc.eyesColor(getSlave($AS))>><<else>>facial expressions<</if>>, since $he does not speak $language well enough to express $himself. <<elseif !hasAnyArms(getSlave($AS)) && (!canTalk(getSlave($AS)))>> diff --git a/src/npc/interaction/fSlaveFeed.tw b/src/npc/interaction/fSlaveFeed.tw index 96d58f158b4403e5b0f928795bf2895b9684a53d..541a18147ed11db6f1d32574e3125d10bf66e515 100644 --- a/src/npc/interaction/fSlaveFeed.tw +++ b/src/npc/interaction/fSlaveFeed.tw @@ -5,7 +5,7 @@ <<setLocalPronouns $activeSlave>> <<setLocalPronouns $milkTap 2>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/npc/interaction/fSlaveSlaveVagConsummate.tw b/src/npc/interaction/fSlaveSlaveVagConsummate.tw index b6d8636bc430e874ebd1cfee196aa592d9ce6864..90556062224ba7cfa0903ced843810ae0a822df3 100644 --- a/src/npc/interaction/fSlaveSlaveVagConsummate.tw +++ b/src/npc/interaction/fSlaveSlaveVagConsummate.tw @@ -9,25 +9,25 @@ <<set $slaverapistx.counter.penetrative++, $penetrativeTotal++>> <<if $slaverapistx.dick == 1>> - <<set _dicksize = "pathetic">> + <<set _dickSize = "pathetic">> <<elseif ($slaverapistx.dick == 2)>> - <<set _dicksize = "tiny">> + <<set _dickSize = "tiny">> <<elseif ($slaverapistx.dick == 3)>> - <<set _dicksize = "average">> + <<set _dickSize = "average">> <<elseif ($slaverapistx.dick == 4)>> - <<set _dicksize = "big">> + <<set _dickSize = "big">> <<elseif ($slaverapistx.dick == 5)>> - <<set _dicksize = "huge">> + <<set _dickSize = "huge">> <<elseif ($slaverapistx.dick == 6)>> - <<set _dicksize = "gigantic">> + <<set _dickSize = "gigantic">> <<elseif ($slaverapistx.dick == 7)>> - <<set _dicksize = "titanic">> + <<set _dickSize = "titanic">> <<elseif ($slaverapistx.dick == 8)>> - <<set _dicksize = "absurd">> + <<set _dickSize = "absurd">> <<elseif ($slaverapistx.dick == 9)>> - <<set _dicksize = "inhuman">> + <<set _dickSize = "inhuman">> <<else>> - <<set _dicksize = "obscene">> + <<set _dickSize = "obscene">> <</if>> <<if areRelated(getSlave($AS), $slaverapistx)>> @@ -37,26 +37,26 @@ You take a look at the slave you selected. <<if ($slaverapistx.fetish == "dom") && ($slaverapistx.fetishStrength > 20) && ($slaverapistx.devotion >= -20)>> - Since $slaverapistx.slaveName loves to dominate others it's not hard to get _his2 <<if $slaverapistx.dick > 0>>_dicksize dick<<else>>massive clit<</if>> ready. + Since $slaverapistx.slaveName loves to dominate others it's not hard to get _his2 <<if $slaverapistx.dick > 0>>_dickSize dick<<else>>massive clit<</if>> ready. <<if ($slaverapistx.attrXX > 65)>> With _his2 love of pussy, _he2 becomes aroused indecently fast. <<else>> - _His2 <<if $slaverapistx.dick > 0>>_dicksize cock<<else>>massive clit<</if>> quickly swells to a throbbing erection at the prospect of forcing _himself2 on another slave. + _His2 <<if $slaverapistx.dick > 0>>_dickSize cock<<else>>massive clit<</if>> quickly swells to a throbbing erection at the prospect of forcing _himself2 on another slave. <</if>> <<elseif ($slaverapistx.fetish == "sadist") && ($slaverapistx.fetishStrength > 20) && ($slaverapistx.devotion >= -20)>> - With the prospect of torturing another slave <<if $slaverapistx.dick > 0>>_his2 _dicksize cock swells to a throbbing erection in seconds<<else>>_his2 huge clit becomes fully engorged in seconds<</if>>. + With the prospect of torturing another slave <<if $slaverapistx.dick > 0>>_his2 _dickSize cock swells to a throbbing erection in seconds<<else>>_his2 huge clit becomes fully engorged in seconds<</if>>. <<elseif ($slaverapistx.fetish == "pregnancy") && ($slaverapistx.fetishStrength > 20) && ($slaverapistx.devotion >= -20) && $slaverapistx.dick > 0>> - With the prospect of raping another slave bareback, _his2 _dicksize cock swells to a throbbing erection in seconds. + With the prospect of raping another slave bareback, _his2 _dickSize cock swells to a throbbing erection in seconds. <<elseif ($slaverapistx.attrXX > 65) && ($slaverapistx.devotion >= -20)>> - Since $slaverapistx.slaveName likes sticking _his2 <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> in girls, _he2 doesn't take much convincing. + Since $slaverapistx.slaveName likes sticking _his2 <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> in girls, _he2 doesn't take much convincing. <<elseif ($slaverapistx.devotion > 50)>> Since $slaverapistx.slaveName is devoted to you, _he2'll eagerly fuck anything you tell _him2 to fuck. <<elseif ($slaverapistx.devotion > 20)>> Since $slaverapistx.slaveName is obedient, _he2'll fuck anything you tell _him2 to fuck. <<elseif ($slaverapistx.devotion >= -20)>> - Since $slaverapistx.slaveName does not resist your will, _he2 should comply reasonably well. _He2 has to work to get _his2 <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> hard despite _his2 doubts, visibly disturbed that you are ordering _him2 to fuck someone for your entertainment. + Since $slaverapistx.slaveName does not resist your will, _he2 should comply reasonably well. _He2 has to work to get _his2 <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> hard despite _his2 doubts, visibly disturbed that you are ordering _him2 to fuck someone for your entertainment. <<else>> - Since $slaverapistx.slaveName is unlikely to comply willingly, you simply restrain _him2 and administer a massive dose of vasodilators, directly where they will do the most good. $slaverapistx.slaveName writhes with the pain of the injection, which is compounded as _his2 <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> quickly reaches an agonizingly full erection. + Since $slaverapistx.slaveName is unlikely to comply willingly, you simply restrain _him2 and administer a massive dose of vasodilators, directly where they will do the most good. $slaverapistx.slaveName writhes with the pain of the injection, which is compounded as _his2 <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> quickly reaches an agonizingly full erection. <</if>> <<if _isIncest == 1>> @@ -113,9 +113,9 @@ Next, you see to <<= getSlave($AS).slaveName>>. <</if>> <<if (getSlave($AS).sexualQuirk == "perverted") || (getSlave($AS).sexualQuirk == "sinful")>> <<if (getSlave($AS).energy > 60)>> - whose <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> is standing firm above $him. $He seems indecently aroused, flushed and shivering in anticipation. + whose <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> is standing firm above $him. $He seems indecently aroused, flushed and shivering in anticipation. <<else>> - but despite $his conflicted feelings $his growing arousal is clear as $he <<if canSee(getSlave($AS))>>stares at<<else>>imagines<</if>> the <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> that's soon going inside $him. + but despite $his conflicted feelings $his growing arousal is clear as $he <<if canSee(getSlave($AS))>>stares at<<else>>imagines<</if>> the <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> that's soon going inside $him. <</if>> <<if _incestMood == "Top">> <<set _incestMood = "Both">> @@ -131,7 +131,7 @@ Next, you see to <<= getSlave($AS).slaveName>>. <<else>> slave _wife2's <</if>> - <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> that will be penetrating $him. + <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> that will be penetrating $him. <<if _incestMood == "Top">> <<set _incestMood = "Both">> <<else>> @@ -139,16 +139,16 @@ Next, you see to <<= getSlave($AS).slaveName>>. <</if>> <<else>> <<if getSlave($AS).devotion > 95>> - and $his deep acceptance of $his status as a slave has $him staring <<if canSee(getSlave($AS))>>at<<else>>blindly towards<</if>> the <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> above $him with a lusty smile. + and $his deep acceptance of $his status as a slave has $him staring <<if canSee(getSlave($AS))>>at<<else>>blindly towards<</if>> the <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> above $him with a lusty smile. <<if _incestMood == "Top">> <<set _incestMood = "Both">> <<else>> <<set _incestMood = "Bottom">> <</if>> <<elseif getSlave($AS).devotion > 60>> - and if $he focuses, $he can forget the <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> standing erect in front of $him belongs to someone related to $him. + and if $he focuses, $he can forget the <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> standing erect in front of $him belongs to someone related to $him. <<else>> - and is understandably disturbed, <<if canSee(getSlave($AS))>>eyes glued to the <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> throbbing before $him.<<elseif canHear(getSlave($AS))>>listening to the heavy breathing of $his relative whose <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> will be entering $him soon.<<else>>imagining how the <<if $slaverapistx.dick > 0>>_dicksize penis<<else>>massive clit<</if>> of $his relative will feel inside $him<</if>> + and is understandably disturbed, <<if canSee(getSlave($AS))>>eyes glued to the <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> throbbing before $him.<<elseif canHear(getSlave($AS))>>listening to the heavy breathing of $his relative whose <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> will be entering $him soon.<<else>>imagining how the <<if $slaverapistx.dick > 0>>_dickSize penis<<else>>massive clit<</if>> of $his relative will feel inside $him<</if>> <</if>> <</if>> <</if>> @@ -161,7 +161,7 @@ Next, you see to <<= getSlave($AS).slaveName>>. <<elseif (getSlave($AS).fetish == "submissive") && (getSlave($AS).fetishStrength > 60) && (getSlave($AS).fetishKnown == 1)>> $He smiles as $he lays back and presents $his pussy to $slaverapistx.slaveName. $He openly enjoys submitting $himself for others to make use of. <<elseif (getSlave($AS).devotion > 20) && (getSlave($AS).vagina == 0) >> - $He accepts your orders without comment and presents $his virgin pussy to $slaverapistx.slaveName. $He gasps in shock when $he feels the <<if $slaverapistx.dick > 0>>_dicksize dick<<else>>massive clit<</if>> enter $him. @@.hotpink;$He is broken to slavery@@ by this application of $his body, which naturally @@.lime;will break in $his pussy.@@ + $He accepts your orders without comment and presents $his virgin pussy to $slaverapistx.slaveName. $He gasps in shock when $he feels the <<if $slaverapistx.dick > 0>>_dickSize dick<<else>>massive clit<</if>> enter $him. @@.hotpink;$He is broken to slavery@@ by this application of $his body, which naturally @@.lime;will break in $his pussy.@@ <<set getSlave($AS).vagina = 1>> <<set getSlave($AS).devotion += 10>> <<elseif (getSlave($AS).devotion >= -20) && (getSlave($AS).vagina == 0)>> @@ -198,10 +198,10 @@ Next, you see to <<= getSlave($AS).slaveName>>. <br><br> <<if (getSlave($AS).devotion < -20) && ($slaverapistx.devotion < -20)>> - Since you have two restrained slaves, it's up to you to do all the work. <<= getSlave($AS).slaveName>> is tied up on the bed with $his pussy available, so you maneuver $slaverapistx.slaveName's <<if $slaverapistx.dick > 0>>_dicksize dick<<else>>strap-on<</if>> into place. The two slaves make no further moves until you deal $slaverapistx.slaveName a terrific swat across the ass and promise to give _him2 more of the same until _he2 gets going. $slaverapistx.slaveName starts moving very slowly, barely prodding. After watching them mechanically go at it for a while, you use your leg to suddenly push _him2 deep into <<= getSlave($AS).slaveName>>, fully hilting _him2 in one motion. You occasionally prod them with an electrical jolt to keep them going at a faster pace. Both slaves resent what you made them do for you and fear you'll make them do it again. + Since you have two restrained slaves, it's up to you to do all the work. <<= getSlave($AS).slaveName>> is tied up on the bed with $his pussy available, so you maneuver $slaverapistx.slaveName's <<if $slaverapistx.dick > 0>>_dickSize dick<<else>>strap-on<</if>> into place. The two slaves make no further moves until you deal $slaverapistx.slaveName a terrific swat across the ass and promise to give _him2 more of the same until _he2 gets going. $slaverapistx.slaveName starts moving very slowly, barely prodding. After watching them mechanically go at it for a while, you use your leg to suddenly push _him2 deep into <<= getSlave($AS).slaveName>>, fully hilting _him2 in one motion. You occasionally prod them with an electrical jolt to keep them going at a faster pace. Both slaves resent what you made them do for you and fear you'll make them do it again. <<elseif ($slaverapistx.devotion < -20)>> - Since your dick slave is restrained, you order <<= getSlave($AS).slaveName>> to present $himself on the bed, and then maneuver $slaverapistx.slaveName's <<if $slaverapistx.dick > 0>>_dicksize dick<<else>>strap-on<</if>> into place. <<= getSlave($AS).slaveName>> does $his best to hump $himself against the unwilling cock until you deal $slaverapistx.slaveName a terrific swat across the ass and promise to give _him2 more of the same until _he2 gets going. _He2 is still unenthusiastic, so you have _him2 lie down and have <<= getSlave($AS).slaveName>> ride $himself to orgasm. _He2 resents what you made _him2 do and fears you'll force _him2 to do it again. Though <<= getSlave($AS).slaveName>> accepts the situation, $he looks into $slaverapistx.slaveName's eyes with obvious apology. + Since your dick slave is restrained, you order <<= getSlave($AS).slaveName>> to present $himself on the bed, and then maneuver $slaverapistx.slaveName's <<if $slaverapistx.dick > 0>>_dickSize dick<<else>>strap-on<</if>> into place. <<= getSlave($AS).slaveName>> does $his best to hump $himself against the unwilling cock until you deal $slaverapistx.slaveName a terrific swat across the ass and promise to give _him2 more of the same until _he2 gets going. _He2 is still unenthusiastic, so you have _him2 lie down and have <<= getSlave($AS).slaveName>> ride $himself to orgasm. _He2 resents what you made _him2 do and fears you'll force _him2 to do it again. Though <<= getSlave($AS).slaveName>> accepts the situation, $he looks into $slaverapistx.slaveName's eyes with obvious apology. <<elseif ($slaverapistx.fetish == "dom") && ($slaverapistx.fetishStrength > 20) && ($slaverapistx.devotion > 20)>> <<= getSlave($AS).slaveName>> is tied and placed on the bed with $his pussy defenseless and available, and then you tell the randy $slaverapistx.slaveName that it's all _hers2. The slave life has so affected $slaverapistx.slaveName that _he2 is quite eager to rape another slave for _his2 pleasure. _He2 penetrates _him2 immediately, fondling, pinching and licking while pistoning away, fully enjoying _his2 dominant role, edging _his2 poor toy again and again and making _him2 beg for release. diff --git a/src/npc/interaction/passage/fSlaveSlaveDickConsummate.tw b/src/npc/interaction/passage/fSlaveSlaveDickConsummate.tw index c9dbd551b220a78077b0969d36033d9d9214c057..555d3eac3263df3a981cc9d4441cdd021d2493b8 100644 --- a/src/npc/interaction/passage/fSlaveSlaveDickConsummate.tw +++ b/src/npc/interaction/passage/fSlaveSlaveDickConsummate.tw @@ -7,23 +7,23 @@ <<if getSlave($AS).dick>> <<if getSlave($AS).dick == 1>> - <<set _dicksize = "tiny">> + <<set _dickSize = "tiny">> <<elseif (getSlave($AS).dick == 2)>> - <<set _dicksize = "tiny">> + <<set _dickSize = "tiny">> <<elseif (getSlave($AS).dick == 3)>> - <<set _dicksize = "average">> + <<set _dickSize = "average">> <<elseif (getSlave($AS).dick == 4)>> - <<set _dicksize = "big">> + <<set _dickSize = "big">> <<elseif (getSlave($AS).dick == 5)>> - <<set _dicksize = "huge">> + <<set _dickSize = "huge">> <<elseif (getSlave($AS).dick == 6)>> - <<set _dicksize = "gigantic">> + <<set _dickSize = "gigantic">> <<elseif (getSlave($AS).dick == 7)>> - <<set _dicksize = "titanic">> + <<set _dickSize = "titanic">> <<elseif (getSlave($AS).dick == 8)>> - <<set _dicksize = "absurd">> + <<set _dickSize = "absurd">> <<elseif (getSlave($AS).dick >= 9)>> - <<set _dicksize = "inhuman">> + <<set _dickSize = "inhuman">> <</if>> <</if>> @@ -57,21 +57,21 @@ You take a look at the bound cock toy. <<elseif tooBigBalls(getSlave($AS))>> $His huge balls might get a bit in the way in this position. <<elseif tooFatSlave(getSlave($AS))>> - $His huge gut threatens to envelope $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>>. + $His huge gut threatens to envelope $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>>. <</if>> <<if (getSlave($AS).fetish == "mindbroken") && (getSlave($AS).career != "a dairy cow") && (getSlave($AS).career != "a breeding bull")>> <<if getSlave($AS).energy > 40>> <<= getSlave($AS).slaveName>> is broken mentally, but has a serviceable libido. After a bit of stimulation $he's good to go without any further reaction on $his own. <<else>> - <<= getSlave($AS).slaveName>> is broken mentally, and $his low libido prevents $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize penis<</if>> from becoming erect. A massive dose of vasodilators fixes this, and you think you see $his face twitch with the pain, but there is no further reaction. + <<= getSlave($AS).slaveName>> is broken mentally, and $his low libido prevents $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize penis<</if>> from becoming erect. A massive dose of vasodilators fixes this, and you think you see $his face twitch with the pain, but there is no further reaction. <</if>> <<elseif (getSlave($AS).fetish == "mindbroken") && (getSlave($AS).career == "a dairy cow")>> <<if getSlave($AS).energy > 40>> - <<= getSlave($AS).slaveName>>, as a good cow with a good libido, takes only a little fondling before $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize penis<</if>> becomes erect. When you let go, $he gives a needy moo with a sad expression to ask you to keep going. + <<= getSlave($AS).slaveName>>, as a good cow with a good libido, takes only a little fondling before $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize penis<</if>> becomes erect. When you let go, $he gives a needy moo with a sad expression to ask you to keep going. <<else>> - <<= getSlave($AS).slaveName>> may be a cow, but $his low libido keeps $his mostly soft despite plenty of fondling. You inject $him with vasodilators so $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> becomes erect, and $he moos in discomfort and struggles against $his restraints. - <<set _bottomdrugged = 1>> + <<= getSlave($AS).slaveName>> may be a cow, but $his low libido keeps $his mostly soft despite plenty of fondling. You inject $him with vasodilators so $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> becomes erect, and $he moos in discomfort and struggles against $his restraints. + <<set _bottomDrugged = 1>> <</if>> <<elseif (getSlave($AS).fetish == "mindbroken") && (getSlave($AS).career == "a breeding bull")>> <<= getSlave($AS).slaveName>>, as a good bull, was already erect while being tied down. It seems $he knows what's going to happen to $him soon. Maybe someone at the Cattle Ranch has been sampling their bulls? @@ -80,42 +80,42 @@ You take a look at the bound cock toy. <<if getSlave($AS).energy > 40>> <<if (getSlave($AS).fetishKnown == 1)>> <<if (getSlave($AS).fetish == "submissive")>> - <<= getSlave($AS).slaveName>> is a known sub, and seconds after $he is ordered to lie down to be restrained $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> is erect. $He knows $he's going to get used, and can't hide $his excitement. + <<= getSlave($AS).slaveName>> is a known sub, and seconds after $he is ordered to lie down to be restrained $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> is erect. $He knows $he's going to get used, and can't hide $his excitement. <<elseif (getSlave($AS).fetish == "dom")>> - <<= getSlave($AS).slaveName>> is a known dom, and needs some stimulation before $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> becomes hard. Despite knowing $he's going to be used, $he can't hide $his curiosity to experience what the other side feels. + <<= getSlave($AS).slaveName>> is a known dom, and needs some stimulation before $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> becomes hard. Despite knowing $he's going to be used, $he can't hide $his curiosity to experience what the other side feels. <<elseif (getSlave($AS).fetish == "masochist")>> - <<= getSlave($AS).slaveName>> almost gets off on being tied down tight, sporting a <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize erection<</if>> once you have finished. $His nipples are firm as well, and $he struggles against $his restraints to feel them dig into $him tighter. + <<= getSlave($AS).slaveName>> almost gets off on being tied down tight, sporting a <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize erection<</if>> once you have finished. $His nipples are firm as well, and $he struggles against $his restraints to feel them dig into $him tighter. <<elseif (getSlave($AS).fetish == "sadist")>> - <<= getSlave($AS).slaveName>> is a sadist, and finds $himself in the exact opposite position $he'd want to be in to get off. It's obvious $he's not going to get aroused soon, so you inject $him with vasodilators so $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> becomes erect and hope $he at least learns something from being on the receiving end for once. - <<set _bottomdrugged = 1>> + <<= getSlave($AS).slaveName>> is a sadist, and finds $himself in the exact opposite position $he'd want to be in to get off. It's obvious $he's not going to get aroused soon, so you inject $him with vasodilators so $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> becomes erect and hope $he at least learns something from being on the receiving end for once. + <<set _bottomDrugged = 1>> <<elseif (getSlave($AS).fetish == "humiliation")>> - <<= getSlave($AS).slaveName>> gets off on humiliation, and after being ordered to lay naked on a bed to be tied down, becomes flushed with arousal with $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> throbbing in anticipation at being used like a toy. + <<= getSlave($AS).slaveName>> gets off on humiliation, and after being ordered to lay naked on a bed to be tied down, becomes flushed with arousal with $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> throbbing in anticipation at being used like a toy. <<elseif (getSlave($AS).fetish == "pregnancy") && ($arcologies[0].FSRepopulationFocus != "unset") && canPenetrate(getSlave($AS))>> - <<= getSlave($AS).slaveName>> gets off thinking about pregnancy, and in your arcology most women are pregnant or fertile. $He knows someone's pussy will be around $his _dicksize cock soon, and is clearly lost in $his fantasies as $his cock swells to a throbbing erection. + <<= getSlave($AS).slaveName>> gets off thinking about pregnancy, and in your arcology most women are pregnant or fertile. $He knows someone's pussy will be around $his _dickSize cock soon, and is clearly lost in $his fantasies as $his cock swells to a throbbing erection. <</if>> <<elseif (getSlave($AS).attrXX > 65)>> - <<= getSlave($AS).slaveName>> has a good sex drive and likes pussy, even before $he's fully bound $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> is throbbing in anticipation. + <<= getSlave($AS).slaveName>> has a good sex drive and likes pussy, even before $he's fully bound $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> is throbbing in anticipation. <<else>> - Despite $his adequate sex drive, since <<= getSlave($AS).slaveName>> isn't turned on by the prospect of pussy, $he takes some manual stimulation before $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> stands erect. + Despite $his adequate sex drive, since <<= getSlave($AS).slaveName>> isn't turned on by the prospect of pussy, $he takes some manual stimulation before $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> stands erect. <</if>> <<else>> <<if (getSlave($AS).attrXX > 65)>> - <<= getSlave($AS).slaveName>> isn't known for $his high libido, but since $he likes pussy all it takes is some teasing to get $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> erect and ready. + <<= getSlave($AS).slaveName>> isn't known for $his high libido, but since $he likes pussy all it takes is some teasing to get $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> erect and ready. <<else>> - <<= getSlave($AS).slaveName>> doesn't have a high libido, and also isn't attracted to female slaves. A dose of vasodilators injected at the base of $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> causes $him to quickly reach painful readiness, and the unnatural pain makes $him strain at $his bonds. - <<set _bottomdrugged = 1>> + <<= getSlave($AS).slaveName>> doesn't have a high libido, and also isn't attracted to female slaves. A dose of vasodilators injected at the base of $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> causes $him to quickly reach painful readiness, and the unnatural pain makes $him strain at $his bonds. + <<set _bottomDrugged = 1>> <</if>> <</if>> <<else>> <<if getSlave($AS).energy > 60>> <<if (getSlave($AS).attrXX > 65)>> - Although <<= getSlave($AS).slaveName>> does not like being a slave, $his high libido and love for pussy have $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize erection<</if>> ready for sex despite $his negative feelings. + Although <<= getSlave($AS).slaveName>> does not like being a slave, $his high libido and love for pussy have $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize erection<</if>> ready for sex despite $his negative feelings. <<else>> - <<= getSlave($AS).slaveName>> does not like being a slave, and isn't attracted to women, but with $his high libido all it takes is simple teasing for $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> to be ready for sex. + <<= getSlave($AS).slaveName>> does not like being a slave, and isn't attracted to women, but with $his high libido all it takes is simple teasing for $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> to be ready for sex. <</if>> <<else>> - <<= getSlave($AS).slaveName>> does not like being a slave, and without a high sex drive $he is able to resist stimulation and stay soft. A quick dose of vasodilators changes that, and $he moans in pain and struggles against $his bonds in vain as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> becomes painfully hard. - <<set _bottomdrugged = 1>> + <<= getSlave($AS).slaveName>> does not like being a slave, and without a high sex drive $he is able to resist stimulation and stay soft. A quick dose of vasodilators changes that, and $he moans in pain and struggles against $his bonds in vain as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> becomes painfully hard. + <<set _bottomDrugged = 1>> <</if>> <</if>> <</if>> @@ -161,7 +161,7 @@ You call $slaverapistx.slaveName into the room. <<else>> <<= getSlave($AS).slaveName>> <<if canSee(getSlave($AS))>>sees<<elseif canHear(getSlave($AS))>>hears<<else>>dimly acknowledges<</if>> the newcomer, and with $his simple mind <</if>> - $he only knows that they have a pussy and $his <<if (getSlave($AS).clit >= 4)>>swollen clit<<else>>_dicksize penis<</if>> is erect. Naturally, $he seems quite eager to put them together. + $he only knows that they have a pussy and $his <<if (getSlave($AS).clit >= 4)>>swollen clit<<else>>_dickSize penis<</if>> is erect. Naturally, $he seems quite eager to put them together. <<set _incestMood = "Bottom">> <<else>> <<if _isIncest == 1>> @@ -186,16 +186,16 @@ You call $slaverapistx.slaveName into the room. <<else>> <<if getSlave($AS).devotion > 95>> <<set _incestMood = "Bottom">> - but $his deep acceptance of slavery means $he is eager to please you, <<if (getSlave($AS).clit >= 4)>>leaving $his massive clit flushed<<else>>making $his _dicksize cock drip precum<</if>>. + but $his deep acceptance of slavery means $he is eager to please you, <<if (getSlave($AS).clit >= 4)>>leaving $his massive clit flushed<<else>>making $his _dickSize cock drip precum<</if>>. <<elseif getSlave($AS).devotion > 60>> and is clearly struggling between keeping $himself hard and acknowledging the incest. A small dose of vasodilators and $his impressive desire to please you should keep $his <<if (getSlave($AS).clit >= 4)>>clit<<else>>penis<</if>> up for $slaverapistx.slaveName. <<set _incestMood = "BottomFragile">> <<else>> - <<if ndef _bottomdrugged>> - and once it becomes clear to $him that $slaverapistx.slaveName will be the one mounting $him, $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize penis<</if>> shrinks away. A direct injection of vasodilators changes that, bringing $him back to readiness to $his horror. - <<set _bottomdrugged = 1>> + <<if ndef _bottomDrugged>> + and once it becomes clear to $him that $slaverapistx.slaveName will be the one mounting $him, $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize penis<</if>> shrinks away. A direct injection of vasodilators changes that, bringing $him back to readiness to $his horror. + <<set _bottomDrugged = 1>> <<else>> - and to $his own horror the drugs $he was injected with keep $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize penis<</if>> ready and waiting. + and to $his own horror the drugs $he was injected with keep $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize penis<</if>> ready and waiting. <</if>> <</if>> <</if>> @@ -213,12 +213,12 @@ You call $slaverapistx.slaveName into the room. Since both slaves are essentially vegetables, this is shaping up to be a rather contrived sexual demonstration. The parts are all there, but the actors aren't going to contribute much to the show. <</if>> <<elseif $slaverapistx.fetish == "mindbroken" && ($slaverapistx.career == "a dairy cow")>> - $slaverapistx.slaveName sees the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize penis<</if>> ready and waiting, and catches on to why _he2's here quickly. _He2 takes it into _his2 mouth before you stop _him2 and tap _his2 pussy, and after a few seconds of thinking _he2 straddles <<= getSlave($AS).slaveName>>'s hips with a moo. + $slaverapistx.slaveName sees the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize penis<</if>> ready and waiting, and catches on to why _he2's here quickly. _He2 takes it into _his2 mouth before you stop _him2 and tap _his2 pussy, and after a few seconds of thinking _he2 straddles <<= getSlave($AS).slaveName>>'s hips with a moo. <<if _isIncest == 1>> Naturally, since _he2 thinks _he2's a cow, incest means nothing to _him2. <</if>> <<elseif $slaverapistx.fetish == "mindbroken" && ($slaverapistx.career == "a breeding bull")>> - $slaverapistx.slaveName sees the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize penis<</if>> ready and waiting, but isn't quite sure what to do with it. _He2's been brought up to use _his2 dick when thinking, after all. It takes a few minutes to get _him2 to straddle <<= getSlave($AS).slaveName>>'s hips with the intent to get _his2 pussy penetrated. + $slaverapistx.slaveName sees the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize penis<</if>> ready and waiting, but isn't quite sure what to do with it. _He2's been brought up to use _his2 dick when thinking, after all. It takes a few minutes to get _him2 to straddle <<= getSlave($AS).slaveName>>'s hips with the intent to get _his2 pussy penetrated. <<if _isIncest == 1>> Naturally, since _he2 thinks _he2's a breeding bull, incest means nothing to _him2. <</if>> @@ -264,9 +264,9 @@ You call $slaverapistx.slaveName into the room. <<else>> and can't hide the look of horror that crosses _his2 face. You assure _him2 this is what _he2 needs to do. <<if _incestMood == "Bottom">> - To _his2 growing disgust, _he2 can tell <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>erect clit<<else>>_dicksize erection<</if>> shows off genuine arousal despite their blood relation. + To _his2 growing disgust, _he2 can tell <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>erect clit<<else>>_dickSize erection<</if>> shows off genuine arousal despite their blood relation. <<else>> - _He2 might find solace in the fact that the owner of the <<if (getSlave($AS).clit >= 4)>>erect clit<<else>>_dicksize erection<</if>> on display doesn't seem thrilled as well. + _He2 might find solace in the fact that the owner of the <<if (getSlave($AS).clit >= 4)>>erect clit<<else>>_dickSize erection<</if>> on display doesn't seem thrilled as well. <</if>> <</if>> <</if>> @@ -275,13 +275,13 @@ You call $slaverapistx.slaveName into the room. <<if _incestMood == "Top" || _incestMood == "Both" || ndef(_isIncest)>> <<if ($slaverapistx.fetishKnown == 1)>> <<if ($slaverapistx.fetish == "submissive")>> - $slaverapistx.slaveName usually prefers to be underneath someone with a <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> like that, which is obvious in _his2 expressions. Knowing _he2's riding it due to someone's orders is just about the only detail that plays to _his2 fetish. + $slaverapistx.slaveName usually prefers to be underneath someone with a <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> like that, which is obvious in _his2 expressions. Knowing _he2's riding it due to someone's orders is just about the only detail that plays to _his2 fetish. <<elseif ($slaverapistx.fetish == "dom")>> - $slaverapistx.slaveName can't hide _his2 domineering smile at the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>> tied up and presented to _him2. Being on top and controlling everything is what gets _him2 off, and you just gave _him2 a nice human dildo to dominate. + $slaverapistx.slaveName can't hide _his2 domineering smile at the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>> tied up and presented to _him2. Being on top and controlling everything is what gets _him2 off, and you just gave _him2 a nice human dildo to dominate. <<elseif ($slaverapistx.fetish == "masochist")>> - $slaverapistx.slaveName usually prefers to be the one being abused, which is clear from _his2 disappointed reaction as _he2 considers the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize erection<</if>> tied before _him2. Maybe _he2 can delude _himself2 into thinking this is a denial play for _himself2 and enjoy the human dildo, or maybe not. + $slaverapistx.slaveName usually prefers to be the one being abused, which is clear from _his2 disappointed reaction as _he2 considers the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize erection<</if>> tied before _him2. Maybe _he2 can delude _himself2 into thinking this is a denial play for _himself2 and enjoy the human dildo, or maybe not. <<elseif ($slaverapistx.fetish == "sadist")>> - $slaverapistx.slaveName is a sadist, and seeing a human dildo tied town for _him2 to abuse and enjoy has _him2 almost panting in arousal. The ecstatic look of devotion _he2 flashes you makes it clear _he2's going to enjoy _himself2, regardless of how the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize cock<</if>>'s owner feels. + $slaverapistx.slaveName is a sadist, and seeing a human dildo tied town for _him2 to abuse and enjoy has _him2 almost panting in arousal. The ecstatic look of devotion _he2 flashes you makes it clear _he2's going to enjoy _himself2, regardless of how the <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize cock<</if>>'s owner feels. <<elseif ($slaverapistx.fetish == "humiliation")>> $slaverapistx.slaveName usually gets off on humiliation, and you know _he2 wishes the roles were reversed here. Despite that, having _his2 <<= WrittenMaster($slaverapistx)>> order _him2 to get _himself2 off with the human dildo beneath _him2 is quite thrilling, sexually. <</if>> @@ -296,7 +296,7 @@ You call $slaverapistx.slaveName into the room. Since you have two restrained slaves, it's up to you to do all the work. Since <<= getSlave($AS).slaveName>> is already lying on the bed, you maneuver $slaverapistx.slaveName's pussy into place. The two slaves make no further moves until you deal $slaverapistx.slaveName a terrific swat across the ass and promise to give _him2 more of the same until _he2 gets going. $slaverapistx.slaveName starts lowering _himself2 very slowly, pulling back every time <<= getSlave($AS).slaveName>>'s dick prods _his2 womanhood. After watching the sad display for a while, you grab _him2 by the hips and slam _him2 down onto <<= getSlave($AS).slaveName>>, hilting _him2 in one, scream-inducing move. <<if ($slaverapistx.vagina == 0)>> /* losing virginity */ <<if ($slaverapistx.devotion > 20)>> - $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ + $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.devotion += 10>> <<elseif ($slaverapistx.devotion >= -20)>> $slaverapistx.slaveName is clearly unhappy at the idea of losing _his2 pearl of great price to <<= getSlave($AS).slaveName>>; this probably isn't what _he2 imagined _his2 first real sex would be like. _He2 fears _he2 might get pregnant. Nevertheless, @@.hotpink;$he is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;breaks in _his2 pussy.@@ @@ -307,15 +307,15 @@ You call $slaverapistx.slaveName into the room. <</if>> <<if $slaverapistx.mother == getSlave($AS).ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. <</if>> <<elseif getSlave($AS).mother == $slaverapistx.ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his mother's vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his mother's vagina. <</if>> <</if>> <</if>> /* closes losing virginity */ @@ -325,7 +325,7 @@ You call $slaverapistx.slaveName into the room. Since your dick slave is restrained, you order $slaverapistx.slaveName to kneel on the bed on top of <<= getSlave($AS).slaveName>>, and then maneuver _his2 pussy into place. <<= getSlave($AS).slaveName>> is uncooperative, so you prod and slap $him until $he starts to thrust $his cock into $slaverapistx.slaveName with urgency. <<if ($slaverapistx.vagina == 0)>> /* losing virginity */ <<if ($slaverapistx.devotion > 20)>> - $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ + $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.devotion += 10>> <<elseif ($slaverapistx.devotion >= -20)>> $slaverapistx.slaveName is clearly unhappy at the idea of losing _his2 pearl of great price to <<= getSlave($AS).slaveName>>; this probably isn't what _he2 imagined _his2 first real sex would be like. _He2 fears _h2e might get pregnant. Nevertheless, @@.hotpink;$he is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;breaks in _his2 pussy.@@ @@ -336,24 +336,24 @@ You call $slaverapistx.slaveName into the room. <</if>> <<if $slaverapistx.mother == getSlave($AS).ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. <</if>> <<elseif getSlave($AS).mother == $slaverapistx.ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his mother's vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his mother's vagina. <</if>> <</if>> <</if>> /* closes losing virginity */ It doesn't take long for <<= getSlave($AS).slaveName>> to orgasm. $He resents what you made $him do and fears you as a result. <<elseif ($slaverapistx.fetish == "dom") && ($slaverapistx.fetishStrength > 20) && ($slaverapistx.devotion > 20)>> - You tell the randy $slaverapistx.slaveName that <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> is all _hers2. The slave life has so affected $slaverapistx.slaveName that _he2 is quite eager to rape another slave for _his2 pleasure. + You tell the randy $slaverapistx.slaveName that <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> is all _hers2. The slave life has so affected $slaverapistx.slaveName that _he2 is quite eager to rape another slave for _his2 pleasure. <<if $slaverapistx.vagina == 0>> - Without further instruction, $slaverapistx.slaveName lowers _his2 virgin pussy onto <<= getSlave($AS).slaveName>> waiting <<if (getSlave($AS).clit >= 4)>>clit-dick<<else>>_dicksize dick<</if>>, impaling _himself2 slowly and teasing _his2 bound victim. This act @@.lime;breaks in _his2 pussy.@@ + Without further instruction, $slaverapistx.slaveName lowers _his2 virgin pussy onto <<= getSlave($AS).slaveName>> waiting <<if (getSlave($AS).clit >= 4)>>clit-dick<<else>>_dickSize dick<</if>>, impaling _himself2 slowly and teasing _his2 bound victim. This act @@.lime;breaks in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.fetishStrength += 1>> <</if>> _He2 begins playing with _him2 immediately, fondling, pinching and licking while bouncing on the meaty shaft. Occasionally _he2 stops, denying <<= getSlave($AS).slaveName>> release and teasing $him, fully enjoying _his2 dominant role. @@ -366,10 +366,10 @@ You call $slaverapistx.slaveName into the room. <</if>> <<elseif ($slaverapistx.fetish == "sadist") && ($slaverapistx.fetishStrength > 20) && (getSlave($AS).devotion < -20)>> - You tell the grinning $slaverapistx.slaveName that <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> is all _hers2. The slave life has so affected $slaverapistx.slaveName that _he2 is quite eager to hurt and rape another slave for _his2 pleasure. + You tell the grinning $slaverapistx.slaveName that <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> is all _hers2. The slave life has so affected $slaverapistx.slaveName that _he2 is quite eager to hurt and rape another slave for _his2 pleasure. <<if ($slaverapistx.vagina == 0)>> /* losing virginity */ <<if ($slaverapistx.devotion > 20)>> - $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ + $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.devotion += 10>> <<elseif ($slaverapistx.devotion >= -20)>> $slaverapistx.slaveName is clearly unhappy at the idea of losing _his2 pearl of great price to <<= getSlave($AS).slaveName>>; this probably isn't what _he2 imagined _his2 first real sex would be like. _He2 fears _he2 might get pregnant. Nevertheless, @@.hotpink;$he is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;breaks in _his2 pussy.@@ @@ -380,15 +380,15 @@ You call $slaverapistx.slaveName into the room. <</if>> <<if $slaverapistx.mother == getSlave($AS).ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. <</if>> <<elseif getSlave($AS).mother == $slaverapistx.ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his mother's vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his mother's vagina. <</if>> <</if>> <</if>> /* closes losing virginity */ @@ -397,10 +397,10 @@ You call $slaverapistx.slaveName into the room. <<set getSlave($AS).counter.penetrative += 3, $penetrativeTotal += 3, $slaverapistx.counter.vaginal += 3, $vaginalTotal += 3>> <<elseif ($slaverapistx.energy > 95) && ($slaverapistx.devotion > 20)>> - You tell the randy $slaverapistx.slaveName that <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> is all $hers. The slave life has so affected $slaverapistx.slaveName that _he2 is quite eager to rape another slave, just for the perverted novelty of the act. + You tell the randy $slaverapistx.slaveName that <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> is all $hers. The slave life has so affected $slaverapistx.slaveName that _he2 is quite eager to rape another slave, just for the perverted novelty of the act. <<if ($slaverapistx.vagina == 0)>> /* losing virginity */ <<if ($slaverapistx.devotion > 20)>> - $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ + $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.devotion += 10>> <<elseif ($slaverapistx.devotion >= -20)>> $slaverapistx.slaveName is clearly unhappy at the idea of losing _his2 pearl of great price to <<= getSlave($AS).slaveName>>; this probably isn't what _he2 imagined _his2 first real sex would be like. _He2 fears _he2 might get pregnant. Nevertheless, @@.hotpink;$he is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;breaks in _his2 pussy.@@ @@ -411,15 +411,15 @@ You call $slaverapistx.slaveName into the room. <</if>> <<if $slaverapistx.mother == getSlave($AS).ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. <</if>> <<elseif getSlave($AS).mother == $slaverapistx.ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his mother's vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his mother's vagina. <</if>> <</if>> <</if>> /* closes losing virginity */ @@ -430,7 +430,7 @@ You call $slaverapistx.slaveName into the room. You toss <<= getSlave($AS).slaveName>> onto the bed and tell $slaverapistx.slaveName to get on with it. <<if ($slaverapistx.vagina == 0)>> /* losing virginity */ <<if ($slaverapistx.devotion > 20)>> - $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ + $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.devotion += 10>> <<elseif ($slaverapistx.devotion >= -20)>> $slaverapistx.slaveName is clearly unhappy at the idea of losing _his2 pearl of great price to <<= getSlave($AS).slaveName>>; this probably isn't what _he2 imagined _his2 first real sex would be like. _He2 fears _he2 might get pregnant. Nevertheless, @@.hotpink;_he2 is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;breaks in _his2 pussy.@@ @@ -441,15 +441,15 @@ You call $slaverapistx.slaveName into the room. <</if>> <<if $slaverapistx.mother == getSlave($AS).ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. <</if>> <<elseif getSlave($AS).mother == $slaverapistx.ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his mother's vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his mother's vagina. <</if>> <</if>> <</if>> /* closes losing virginity */ @@ -459,7 +459,7 @@ You call $slaverapistx.slaveName into the room. You order <<= getSlave($AS).slaveName>> and $slaverapistx.slaveName to get on with it. <<if ($slaverapistx.vagina == 0)>> /* losing virginity */ <<if ($slaverapistx.devotion > 20)>> - $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ + $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.devotion += 10>> <<elseif ($slaverapistx.devotion >= -20)>> $slaverapistx.slaveName is clearly unhappy at the idea of losing _his2 pearl of great price to <<= getSlave($AS).slaveName>>; this probably isn't what _he2 imagined _his2 first real sex would be like. _He2 fears _he2 might get pregnant. Nevertheless, @@.hotpink;$he is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;breaks in _his2 pussy.@@ @@ -470,25 +470,25 @@ You call $slaverapistx.slaveName into the room. <</if>> <<if $slaverapistx.mother == getSlave($AS).ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. <</if>> <<elseif getSlave($AS).mother == $slaverapistx.ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his mother's vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his mother's vagina. <</if>> <</if>> <</if>> /* closes losing virginity */ - They fuck mechanically at first, gazing with roiling emotions into each others' eyes. Eventually, they begin to enjoy the intimacy of the act, finding the shared pleasure between them comforting. They finish and resume life as slaves, the light of this intimacy diminishing, softening with <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> and dripping away with the contents of $slaverapistx.slaveName's cum-filled pussy. You notice $slaverapistx.slaveName's looking a little more longingly at <<= getSlave($AS).slaveName>>. + They fuck mechanically at first, gazing with roiling emotions into each others' eyes. Eventually, they begin to enjoy the intimacy of the act, finding the shared pleasure between them comforting. They finish and resume life as slaves, the light of this intimacy diminishing, softening with <<= getSlave($AS).slaveName>>'s <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> and dripping away with the contents of $slaverapistx.slaveName's cum-filled pussy. You notice $slaverapistx.slaveName's looking a little more longingly at <<= getSlave($AS).slaveName>>. <<else>> The two slaves turn eagerly to the business of sex. <<if ($slaverapistx.vagina == 0)>> /* losing virginity */ <<if ($slaverapistx.devotion > 20)>> - $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ + $slaverapistx.slaveName accepts your orders without comment and lowers _his2 virgin pussy on <<= getSlave($AS).slaveName>>'s ready <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>>. @@.hotpink;$slaverapistx.slaveName is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;will break in _his2 pussy.@@ <<set $slaverapistx.vagina = 1, $slaverapistx.devotion += 10>> <<elseif ($slaverapistx.devotion >= -20)>> $slaverapistx.slaveName is clearly unhappy at the idea of losing _his2 pearl of great price to <<= getSlave($AS).slaveName>>; this probably isn't what _he2 imagined _his2 first real sex would be like. _He2 fears _he2 might get pregnant. Nevertheless, @@.hotpink;$he is further broken to slavery@@ by this application of _his2 body, which naturally @@.lime;breaks in _his2 pussy.@@ @@ -499,15 +499,15 @@ You call $slaverapistx.slaveName into the room. <</if>> <<if $slaverapistx.mother == getSlave($AS).ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his <<print relativeTerm(getSlave($AS), $slaverapistx)>>'s vagina. <</if>> <<elseif getSlave($AS).mother == $slaverapistx.ID>> <<if (getSlave($AS).counter.penetrative == 0)>> - <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> for the first time. + <<= getSlave($AS).slaveName>> gasps and $his eyes widen as $he feels the tender folds of a pussy — and none other than $his mother's — embracing $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> for the first time. <<else>> - <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dicksize dick<</if>> disappears into $his mother's vagina. + <<= getSlave($AS).slaveName>>'s breath quickens as $his <<if (getSlave($AS).clit >= 4)>>massive clit<<else>>_dickSize dick<</if>> disappears into $his mother's vagina. <</if>> <</if>> <</if>> /* closes losing virginity */ diff --git a/src/npc/newSlaveIncestSex.tw b/src/npc/newSlaveIncestSex.tw index a4f489ff0be037eef808a189786fef322aa03e7c..8b8975164e1bf22f6744894b0e1fdb0116a883ea 100644 --- a/src/npc/newSlaveIncestSex.tw +++ b/src/npc/newSlaveIncestSex.tw @@ -1,11 +1,8 @@ :: newSlaveIncestSex [nobr] -<br><br> - - <<set _clothesTemp = $relative.clothes, $relative.clothes = "no clothing">> <<set _clothesTemp2 = $relative2.clothes, $relative2.clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -33,22 +30,22 @@ /* two sisters / brothers: identify by age, in the case of same age twins check their birthWeek */ <<if $relative.actualAge == $relative2.actualAge>> <<if $relative.birthWeek >= $relative2.birthWeek>> - <<set _onelong = "older "+_one >> - <<set _otherlong = "younger "+_other >> + <<set _oneLong = "older "+_one >> + <<set _otherLong = "younger "+_other >> <<elseif $relative.birthWeek < $relative2.birthWeek>> - <<set _onelong = "younger "+_one >> - <<set _otherlong = "older "+_other >> + <<set _oneLong = "younger "+_one >> + <<set _otherLong = "older "+_other >> <</if>> <<elseif $relative.actualAge > $relative2.actualAge>> - <<set _onelong = "older "+_one >> - <<set _otherlong = "younger "+_other >> + <<set _oneLong = "older "+_one >> + <<set _otherLong = "younger "+_other >> <<elseif $relative.actualAge < $relative2.actualAge>> - <<set _onelong = "younger "+_one >> - <<set _otherlong = "older "+_other >> + <<set _oneLong = "younger "+_one >> + <<set _otherLong = "older "+_other >> <</if>> <<else>> - <<set _onelong = _one>> - <<set _otherlong = _other>> + <<set _oneLong = _one>> + <<set _otherLong = _other>> <</if>> /* prepare some text passages based on options */ @@ -73,15 +70,21 @@ <<set _genitals = _genitals.join(" and ") >> <</if>> -<<if $debugMode >> -RELATIVE SLAVE (FIRST): <br> -_one ($relative.relation) <br> -$relative.physicalAge <br> -_oneshe / _oneher <br> -RELATIVE2 SLAVE (SECOND): <br> -_other ($relative2.relation) <br> -$relative2.physicalAge <br> -_othershe / _otherher <br> +<<if $debugMode>> + <p id="debug-relatives"> + <<link "Debug info">> + <<replace "#debug-relatives">> + <h3>1st relative slave</h3> + <div>_one (relationship: <<= $relative.relationship>>, ID: <<= $relative.ID>>, relationshipTarget: $relative.relationshipTarget)</div> + <div>Age: $relative.physicalAge</div> + <div>Pronouns: $he / $her</div> + <h3>2nd relative slave</h3> + <div>_other (relationship: <<= $relative2.relationship>>, ID: <<= $relative2.ID>>, relationshipTarget: $relative2.relationshipTarget)</div> + <div>Age: $relative2.physicalAge</div> + <div>Pronouns: _she2 / _her2</div> + <</replace>> + <</link>> + </p> <</if>> <span id="result"> @@ -90,13 +93,13 @@ _othershe / _otherher <br> Now that you own them, you want to see proof of their love for each other. You order the <<if _one == "twin">>twins<<elseif _one == _other>><<= $sister>>s<<else>>_one and _other<</if>> to perform mutual oral sex in front of you. Hesitantly, they assume the 69 position on your couch. They have either never done this in front of a stranger or have never had sex this way before. You remind them that they are sex slaves now. They need to follow all orders, including sexual ones, so this is a relatively gentle start. <br><br> -<<if _one == "twin">>One _one<<else>>The _onelong<</if>> shows more boldness as $he lowers $his head towards $his _otherlong's privates. +<<if _one == "twin">>One _one<<else>>The _oneLong<</if>> shows more boldness as $he lowers $his head towards $his _otherLong's privates. <<if $relative2.dick == 0 >> - Carefully, $he spreads $his _other's labia. Then $he continues to give $his _other's exposed pussy a few experimental licks. At first, $his efforts seem to be futile, but after a while the _otherlong's clit becomes engorged and _his2 juices start flowing. + Carefully, $he spreads $his _other's labia. Then $he continues to give $his _other's exposed pussy a few experimental licks. At first, $his efforts seem to be futile, but after a while the _otherLong's clit becomes engorged and _his2 juices start flowing. <<else>> - Uncertain, $he grabs $his <<if _other == "twin">>_other<<else>>_otherlong<</if>>'s penis. Then $he puts $his _other's flaccid member into $his mouth and gives it an experimental suck. At first, $his efforts seem to be futile, but after a while the _otherlong sports a nice, hard erection. + Uncertain, $he grabs $his <<if _other == "twin">>_other<<else>>_otherLong<</if>>'s penis. Then $he puts $his _other's flaccid member into $his mouth and gives it an experimental suck. At first, $his efforts seem to be futile, but after a while the _otherLong sports a nice, hard erection. <</if>> -As the _other's arousal grows, _he2 becomes more eager to please _his2 _onelong, too. Going down on _his2's lover's genitals, _he2 starts to mimic $his ministrations. +As the _other's arousal grows, _he2 becomes more eager to please _his2 _oneLong, too. Going down on _his2's lover's genitals, _he2 starts to mimic $his ministrations. <<if ($relative.dick == 0) != ($relative2.dick == 0) >> Of course, _he2 has to adapt _his2 actions <<if $relative.dick == 0 >>from the feelings on _his2 dick to the pussy pressed against _his2 lips.<<else>>from the feelings at _his2 pussy to the dick in _his2 mouth.<</if>> <</if>> diff --git a/src/npc/slaveStats.tw b/src/npc/slaveStats.tw index efc6b9785b4fc7e913e790702fd28e1d8f17d102..5a72a97d45fd8a4176b6b9be3496d31023916688 100644 --- a/src/npc/slaveStats.tw +++ b/src/npc/slaveStats.tw @@ -71,17 +71,17 @@ Income: <<= num($activeSlave.lifetimeRepIncome)>> Expenses: <<= num($activeSlave.lastWeeksRepExpenses)>>, Income: <<= num($activeSlave.lastWeeksRepIncome)>> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Skills')" id="tab Skills">Skills</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Mental')" id="tab Mental">Mental</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Body')" id="tab Body">Body</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Porn')" id="tab Porn">Porn</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Impants_Piercings_Tattoos')" id="tab Impants_Piercings_Tattoos">Impants, piercings & Tattoos</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Family')" id="tab Family">Family</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Misc')" id="tab Misc">Misc</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Skills')" id="tab Skills">Skills</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Mental')" id="tab Mental">Mental</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Body')" id="tab Body">Body</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Porn')" id="tab Porn">Porn</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Implants_Piercings_Tattoos')" id="tab Implants_Piercings_Tattoos">Implants, piercings & tattoos</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Family')" id="tab Family">Family</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Misc')" id="tab Misc">Misc</button> </div> -<div id="Skills" class="tabcontent"> +<div id="Skills" class="tab-content"> <div class="content"> Vaginal: $activeSlave.skill.vaginal, <br>Oral: $activeSlave.skill.oral, @@ -113,7 +113,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> </div> </div> -<div id="Mental" class="tabcontent"> +<div id="Mental" class="tab-content"> <div class="content"> Intelligence: $activeSlave.intelligence <br>Attraction: @@ -143,7 +143,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> </div> </div> -<div id="Body" class="tabcontent"> +<div id="Body" class="tab-content"> <div class="content"> Health: $activeSlave.health.health, Condition: $activeSlave.health.condition, @@ -261,7 +261,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> Implant Type: $activeSlave.boobsImplantType, Implant Volume: $activeSlave.boobsImplant <br>Milk: $activeSlave.boobsMilk, - Qunantity: $activeSlave.counter.milk + Quantity: $activeSlave.counter.milk <br>Shape: $activeSlave.boobShape <br>nipples: $activeSlave.nipples, Accessory: $activeSlave.nipplesAccessory @@ -338,7 +338,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> </div> </div> -<div id="Porn" class="tabcontent"> +<div id="Porn" class="tab-content"> <div class="content"> Focus: $activeSlave.porn.focus, Feed: $activeSlave.porn.feed @@ -396,7 +396,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> </div> </div> -<div id="Impants_Piercings_Tattoos" class="tabcontent"> +<div id="Implants_Piercings_Tattoos" class="tab-content"> <div class="content"> <h2>Implants</h2> @@ -449,7 +449,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> </div> </div> -<div id="Family" class="tabcontent"> +<div id="Family" class="tab-content"> <div class="content"> Genes: $activeSlave.genes <br><br>BirthName: $activeSlave.birthName, @@ -500,7 +500,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> <br>Androgyny: $activeSlave.geneticQuirks.androgyny <br><br> - <h2>Pregmancy</h2> + <h2>Pregnancy</h2> <br>Week: $activeSlave.pregWeek, isPreg: $activeSlave.preg, Source: $activeSlave.pregSource, @@ -511,7 +511,7 @@ Income: <<= num($activeSlave.lastWeeksRepIncome)>> </div> </div> -<div id="Misc" class="tabcontent"> +<div id="Misc" class="tab-content"> <div class="content"> <br>Deadliness <<print Deadliness($activeSlave)>> <br>Count: Penetrative: $activeSlave.counter.penetrative, diff --git a/src/npc/startingGirls/startingGirls.js b/src/npc/startingGirls/startingGirls.js index fa81259cd06d5bc5038446ac9cb02c86e32edf40..4b2fc1661db4e1bb90b978adc54bcfedccdc938a 100644 --- a/src/npc/startingGirls/startingGirls.js +++ b/src/npc/startingGirls/startingGirls.js @@ -264,7 +264,7 @@ App.StartingGirls.career = function(slave) { } select.onchange = () => { slave.career = select.options[select.selectedIndex].value; - jQuery("#careerTextbox").empty().append( + jQuery("#career-textbox").empty().append( App.UI.DOM.makeTextBox( slave.career, v => { diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw index 82121fac20af10ccbbad50e218629dc284d63627..766d6a7c7af0cf131eff78c2f5eb62e20f907d5f 100644 --- a/src/npc/startingGirls/startingGirls.tw +++ b/src/npc/startingGirls/startingGirls.tw @@ -364,23 +364,23 @@ <h2>You are customizing this slave:</h2> <<includeDOM App.Desc.longSlave(V.activeSlave, {market: "generic"})>> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Overview')" id="tab Overview">Overview</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Physical')" id="tab Physical">Physical</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Mental')" id="tab Mental">Mental</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Skills')" id="tab Skills">Skills</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Family', App.StartingGirls.uncommittedFamilyTree(V.activeSlave))" id="tab Family">Family</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Customization')" id="tab Customization">Customization</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Overview')" id="tab Overview">Overview</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Physical')" id="tab Physical">Physical</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Mental')" id="tab Mental">Mental</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Skills')" id="tab Skills">Skills</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Family', App.StartingGirls.uncommittedFamilyTree(V.activeSlave))" id="tab Family">Family</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Customization')" id="tab Customization">Customization</button> <<if $cash >= _slaveCost>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'assignRemove')" id="tab assignRemove">Finalize</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'assignRemove')" id="tab assignRemove">Finalize</button> <<else>> - <button class="tablinks, show-warning" onclick="App.UI.tabbar.openTab(event, 'assignRemove')" id="tab assignRemove">Finalize</button> + <button class="tab-links, show-warning" onclick="App.UI.tabbar.openTab(event, 'assignRemove')" id="tab assignRemove">Finalize</button> <</if>> </div> <<setLocalPronouns $activeSlave>> -<div id="Overview" class="tabcontent"> +<div id="Overview" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -423,7 +423,7 @@ .addValue("Slave", -1, () => V.activeSlave.indentureRestrictions = 0) .addRange(52, 0, ">=", "Indentured Servant")>> <<if $activeSlave.indenture > -1>> - <<run _options.addOption("Remaining weeeks", "indenture", $activeSlave).showTextBox()>> + <<run _options.addOption("Remaining weeks", "indenture", $activeSlave).showTextBox()>> <<run _options.addOption("Indenture restrictions", "indentureRestrictions", $activeSlave) .addValueList([["None", 0], ["Protective", 1], ["Restrictive", 2]])>> @@ -514,7 +514,7 @@ </div> </div> -<div id="Physical" class="tabcontent"> +<div id="Physical" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -881,7 +881,7 @@ </div> </div> -<div id="Mental" class="tabcontent"> +<div id="Mental" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -975,7 +975,7 @@ </div> </div> -<div id="Skills" class="tabcontent"> +<div id="Skills" class="tab-content"> <div class="content"> <<set _options = new App.UI.OptionsGroup()>> @@ -1047,20 +1047,20 @@ </div> </div> -<div id="Family" class="tabcontent"> +<div id="Family" class="tab-content"> <div class="content"> <<editFamily>> </div> </div> -<div id="Customization" class="tabcontent"> +<div id="Customization" class="tab-content"> <div class="content"> ''Birth name:'' <<textbox "$activeSlave.birthName" $activeSlave.birthName "Starting Girls">> | ''Slave name:'' <<textbox "$activeSlave.slaveName" $activeSlave.slaveName "Starting Girls">> <br>''Birth surname:'' <<textbox "$activeSlave.birthSurname" $activeSlave.birthSurname "Starting Girls">> | ''Slave surname:'' <<textbox "$activeSlave.slaveSurname" $activeSlave.slaveSurname "Starting Girls">> - <br>''Career:'' <span id="careerTextbox"><<textbox "$activeSlave.career" $activeSlave.career "Starting Girls">></span> + <br>''Career:'' <span id="career-textbox"><<textbox "$activeSlave.career" $activeSlave.career "Starting Girls">></span> <span id="careers"></span> <script>jQuery('#careers').empty().append(App.StartingGirls.career(V.activeSlave));</script> <br>''Hair color:'' <<textbox "$activeSlave.origHColor" $activeSlave.origHColor "Starting Girls">> //This will also set eyebrow, pubic, and underarm hair color.// @@ -1168,7 +1168,7 @@ </div> </div> -<div id="assignRemove" class="tabcontent"> +<div id="assignRemove" class="tab-content"> <div class="content"> <<if $cash >= _slaveCost>> diff --git a/src/personalAssistant/assistantAppearance.tw b/src/personalAssistant/assistantAppearance.tw index a30c52a6dba9203754b66a43ece4754bb961863e..41bcb2cb013421e667f4ff04b1c043a6b6b4ff7a 100644 --- a/src/personalAssistant/assistantAppearance.tw +++ b/src/personalAssistant/assistantAppearance.tw @@ -1032,7 +1032,7 @@ _HeA's a cute little <<if $arcologies[0].FSSupremacist != "unset" && $assistant. <<case "supremacist">> slime. _HeA keeps trying to shape _hisA goo into a beautiful $arcologies[0].FSSupremacistRace _girlA, but _heA hasn't quite perfected the finer details yet. <<case "subjugationist">> - slime. _HeA keeps trying to shape _hisA goo into a pretty face, but keeps ending up with overexaggerated $arcologies[0].FSSubjugationistRace features instead. + slime. _HeA keeps trying to shape _hisA goo into a pretty face, but keeps ending up with over-exaggerated $arcologies[0].FSSubjugationistRace features instead. <<case "roman revivalist">> slime with a _girlA's stola sinking into _hisA head. <<case "egyptian revivalist">> diff --git a/src/personalAssistant/assistantAppearancePackTwo.tw b/src/personalAssistant/assistantAppearancePackTwo.tw index dee3b4e2fef88639956ab72b03973ec1affd8473..862190b4999d250a3727d23436fbbcacaa0667a0 100644 --- a/src/personalAssistant/assistantAppearancePackTwo.tw +++ b/src/personalAssistant/assistantAppearancePackTwo.tw @@ -1,6 +1,6 @@ :: Assistant Appearance Pack Two [nobr] -<span id="artFrame"> +<span id="art-frame"> <<if $seeImages == 1>><<= assistantArt(3)>><</if>> </span> @@ -17,28 +17,28 @@ After several minutes, _heA snaps back to life, with no mention about what exact <span ID="app"> __Personal assistant appearances:__ <br> <<link "Angel">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA installs the angel appearance. _HeA spreads _hisA wings and checks out _hisA new body, "Thanks, <<= properTitle()>>, but could I have a robe or something? I'm indecent!" _HeA blushes red. "You can always customize me from the arcology management menu," _heA adds. <<set $assistant.appearance = "angel">> <</replace>> <</link>> <br> <<link "Cherub">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA installs the cherub appearance. _HeA returns to _hisA youthful figure and sprouts _hisA wings. "This is awesome, little embarrassing though..." _HeA says, covering _hisA shame. "You can always customize me from the arcology management menu," _heA adds. <<set $assistant.appearance = "cherub">> <</replace>> <</link>> <br> <<link "Imp">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA installs the imp appearance. _HeA returns to _hisA youthful figure and sprouts _hisA wings. "This is awesome! So, wanna fool around? Maybe go torment some slaves?" _HeA says, pulling out a pitchfork. "You can always customize me from the arcology management menu," _heA adds. <<set $assistant.appearance = "imp">> <</replace>> <</link>> <br> <<link "Succubus">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA installs the succubus appearance. _HeA promptly takes your breath away. "Thank you, <<= properTitle()>>. Now how shall I show you my appreciation..." _HisA avatar trails off while spreading _hisA legs and flashing you _hisA lovely pussy. "You can always customize me from the arcology management menu," _heA adds, with a hint of disapproval. <<set $assistant.appearance = "succubus">> @@ -46,7 +46,7 @@ __Personal assistant appearances:__ <</link>> <<if $seeDicks != 0>> <br> <<link "Incubus">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA installs the incubus appearance. _HeA becomes rather masculine, sporting a soft cock nearly as long as _hisA thigh. "Thank you, <<= properTitle()>>. This is going to be fun. Would you like a taste?" _HeA steadily becomes erect, a bead of precum forming at its tip. "You can always customize me from the arcology management menu," _heA adds, with a hint of disapproval. <<set $assistant.appearance = "incubus">> @@ -54,21 +54,21 @@ __Personal assistant appearances:__ <</link>> <</if>> <br> <<link "witch">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA installs the novice witch appearance. _HeA wraps a tightly clinging robe around _hisA voluptuous body and dons a wide-brimmed hat. "You can always customize me from the arcology management menu," _heA adds, pulling a book of lewd spells out. <<set $assistant.appearance = "witch">> <</replace>> <</link>> <<link "_">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA installs the bugged appearance. _HisA body twists and contorts into an abomination of flesh and bone. It is honestly unsettling to look at. The thing morphs its body into a familiar female shape, though it is still off. Especially _hisA eyes; they seem soulless. "You can always customize me from the arcology management menu," _heA adds, in an ill pronounced mimicry of your voice. <<set $assistant.appearance = "ERROR_1606_APPEARANCE_FILE_CORRUPT">> <</replace>> <</link>> <br><<link "Your current appearance will do">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#app">> At your order, _heA maintains the $assistant.appearance appearance as _hisA avatar. "Yes, <<= properTitle()>>," _heA confirms, and adds "if you reconsider, I can be customized from the arcology management menu." <</replace>> diff --git a/src/personalAssistant/assistantEvents.tw b/src/personalAssistant/assistantEvents.tw index 9fca4c3f34a582af92a343738b1014320c8f0743..7ee78ba743f941b85450c2a6f1d0159a43805733 100644 --- a/src/personalAssistant/assistantEvents.tw +++ b/src/personalAssistant/assistantEvents.tw @@ -4,7 +4,7 @@ <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> -<span id="artFrame"> +<span id="art-frame"> <<if $seeImages == 1>><<= assistantArt(3)>><</if>> </span> @@ -1044,9 +1044,9 @@ <<elseif $arcologies[0].FSChineseRevivalist != "unset">> casts a spell to make _himselfA appear Chinese; _heA succeeds in swapping the material of _hisA robes to a fine silk. <<elseif $arcologies[0].FSSupremacist != "unset">> - casts a spell to look more $arcologies[0].FSSupremacistRace; _heA does too good of a job, ending up looking like an overexaggerated $arcologies[0].FSSupremacistRace stereotype. + casts a spell to look more $arcologies[0].FSSupremacistRace; _heA does too good of a job, ending up looking like an over-exaggerated $arcologies[0].FSSupremacistRace stereotype. <<elseif $arcologies[0].FSSubjugationist != "unset">> - casts a spell to look more $arcologies[0].FSSubjugationistRace; _heA does too good of a job and ends up looking like an overexaggerated $arcologies[0].FSSubjugationistRace stereotype. + casts a spell to look more $arcologies[0].FSSubjugationistRace; _heA does too good of a job and ends up looking like an over-exaggerated $arcologies[0].FSSubjugationistRace stereotype. <</if>> <<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">> <<if $arcologies[0].FSPaternalist != "unset">> @@ -1471,14 +1471,14 @@ __Personal assistant appearances:__ <br> <<link "Schoolgirl">> <<set $assistant.appearance = "schoolgirl">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the school<<= _girlA>> appearance. _HeA goes back to bouncing up and down excitedly, exclaiming, "Yeah! Thanks, <<= properTitle()>>, you're the best!" _HisA avatar's bouncing makes it obvious _heA's modeled without a bra under _hisA blouse. "You can always customize me from the arcology management menu," _heA adds. <</replace>> <</link>> <br> <<link "Fairy">> <<set $assistant.appearance = "fairy">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the fairy appearance. _HeA shrinks back down and sprouts _hisA wings. "Aww yeah, this is gonna be the best! Thanks, <<if $PC.title != 0>>Big Bro<<else>>Big Sis<</if>>!" _HisA avatar dances around ecstatically with _hisA nude, slim form in plain view. "You can always customize me from the arcology management menu," _heA adds. <</replace>> @@ -1486,7 +1486,7 @@ <<if $seePreg != 0>> <br> <<link "Pregnant Fairy">> <<set $assistant.appearance = "pregnant fairy">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the pregnant fairy appearance. _HeA shrinks back down and sprouts _hisA wings. _HisA belly quickly swells with new life. "Aww yeah, this is gonna be the best! Thanks, <<if $PC.title != 0>>Big Bro<<else>>Big Sis<</if>>!" _HisA avatar spins around ecstatically, admiring _hisA fresh nude, pregnant form in plain view. "You can always customize me from the arcology management menu," _heA adds. <</replace>> @@ -1494,7 +1494,7 @@ <</if>> <br> <<link "Businesswoman">> <<set $assistant.appearance = "businesswoman">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the business<<= _womanA>> appearance. _HeA straightens _hisA suit jacket primly, which only serves to emphasize _hisA generous bosom. "Thank you, <<= properTitle()>>. I like being businesslike, and not at all a whore." _HisA avatar pulls out a tablet and makes ready to get back to helping you. "You can always customize me from the arcology management menu," _heA adds. <</replace>> @@ -1502,7 +1502,7 @@ <<if $seePreg != 0>> <br> <<link "Goddess">> <<set $assistant.appearance = "goddess">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the goddess appearance. _HeA fixes a wreath of flowers into _hisA hair, _hisA golden locks and gravid belly the only things keeping _hisA womanhood concealed. "Thank you, <<= properTitle()>>. This is wondrous." _HeA squeezes a drop of milk from one heavy breast and smiles. "You can always customize me from the arcology management menu," _heA adds. <</replace>> @@ -1510,7 +1510,7 @@ <<if $seeHyperPreg == 1>> <br> <<link "Hyper-Goddess">> <<set $assistant.appearance = "hypergoddess">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the hyper goddess appearance. _HeA fixes a wreath of flowers into _hisA golden locks as _hisA belly rapidly bloats to its limit before bulging and squirming ominously. _HisA breasts quickly follow suit. "Thank you, <<= properTitle()>>. This is wondrous." _HeA massages _hisA squirming pregnancy and smiles. "You can always customize me from the arcology management menuUUUUAH," _heA is interrupted by a large contraction and a baby's head beginning to part _hisA nether lips. <</replace>> @@ -1520,7 +1520,7 @@ <<if $minimumSlaveAge < 13 >> <br> <<link "Loli">> <<set $assistant.appearance = "loli">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the lolita appearance. _HeA quickly begins losing height as the years peel off _himA, _hisA bust and hips quickly following suit. When finished _heA appears roughly eight years old. "Thank you, <<= properTitle()>>. This is neat." _HeA twirls around and giggles. "You can always customize me from the arcology management menu," _heA adds cutely. <</replace>> @@ -1529,7 +1529,7 @@ <<if $minimumSlaveAge < 13 && $fertilityAge < 13 && $seePreg != 0>> <br> <<link "Pregnant Loli">> <<set $assistant.appearance = "preggololi">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the modified lolita appearance. _HeA quickly begins losing height as the years peel off _himA, _hisA bust and hips quickly following suit. When finished _heA appears roughly eight years old. "Thank you, <<= properTitle()>>. This is neat." _HeA twirls around and giggles before groaning and clutching _hisA stomach. A flood of white liquid flows from _hisA loins as _hisA belly begins rapidly swelling. _HeA falls onto _hisA backside holding _hisA full term belly and says, exhausted, "You can always customize me from the arcology management menu." <</replace>> @@ -1537,7 +1537,7 @@ <</if>> <br> <<link "Amazon">> <<set $assistant.appearance = "amazon">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the amazon appearance. _HeA vanishes entirely, before simulating a fall from above to crash aggressively onto the screen. "Thanks, <<= properTitle()>>. Feels good to be this good." _HisA avatar jumps up and down, gauging _hisA strength, making _hisA bone jewelry rattle. "You can always customize me from the arcology management menu," _heA adds. <</replace>> @@ -1545,14 +1545,14 @@ <<if $seeDicks != 0>> <br> <<link "Shemale">> <<set $assistant.appearance = "shemale">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the shemale appearance. _HeA spins to show off _hisA new body, and starts to play with _hisA dick experimentally. "Like, thank you, <<= properTitle()>>. I wonder, can I generate avatars of the slaves? I would love to fuck an ass right now." _HeA looks meditative, pursing _hisA dick sucking lips. "Oh, and you can always customize me from the arcology management menu," _heA adds. <</replace>> <</link>> <br> <<link "Monstergirl">> <<set $assistant.appearance = "monstergirl">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA installs the monster<<= _girlA>> appearance. _HeA begins to experiment with _hisA tentacle hair, waving a tentacle in front of _hisA face and watching it until _hisA eyes cross. "Thank you, <<= properTitle()>>. This is pretty awesome." _HeA licks _hisA lips, revealing that _heA has a forked tongue behind _hisA fangs. "You can always customize me from the arcology management menu," _heA adds. <</replace>> @@ -1560,14 +1560,14 @@ <</if>> <br><<link "The standard appearance will do">> <<set $assistant.appearance = "normal">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA maintains the symbol as _hisA avatar. "Yes, <<= properTitle()>>," _heA confirms, and adds "if you reconsider, I can be customized from the arcology management menu." <</replace>> <</link>> <br><<link "Go back to the standard personality">> <<set $assistant.personality = 0>> <<setAssistantPronouns>> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> You tell $assistant.name to reduce _hisA lewdness by ninety percent. _HeA reverts to _hisA genderless, emotionless affect. <</replace>> @@ -1634,21 +1634,21 @@ <<elseif $arcologies[0].FSSubjugationist != "unset">> <<set $assistant.fsAppearance = "subjugationist">> <</if>> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA enthusiastically explores _hisA new body, perfecting its appearance. "Thank you, <<= properTitle()>>. This was fun. As always, you can customize me from the arcology management menu," _heA states. "Oh! And if you choose to drive society in another direction, I'll have a new appearance ready for your enjoyment at once," _heA hastily adds. <</replace>> <</link>> <br><<link "Your usual appearance will do">> <<set $assistant.fsAppearance = "default">> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> At your order, _heA returns to _hisA usual avatar. "Yes, <<= properTitle()>>," _heA confirms, and adds "if you reconsider, I can be customized from the arcology management menu." <</replace>> <</link>> <br><<link "Go back to the standard personality">> <<set $assistant.personality = 0>> <<setAssistantPronouns>> - <<if $seeImages == 1>><<replace "#artFrame">><<= assistantArt(3)>><</replace>><</if>> + <<if $seeImages == 1>><<replace "#art-frame">><<= assistantArt(3)>><</replace>><</if>> <<replace "#result">> You tell $assistant.name to reduce _hisA lewdness by ninety percent. _HeA reverts to _hisA genderless, emotionless affect. <</replace>> diff --git a/src/personalAssistant/assistantOptions.tw b/src/personalAssistant/assistantOptions.tw index d7a2fa55d62b81f8af9f49f6710b39e46968a640..3b5819c7501942ec492ab8de5de8231182dad503 100644 --- a/src/personalAssistant/assistantOptions.tw +++ b/src/personalAssistant/assistantOptions.tw @@ -28,17 +28,17 @@ Seated at your desk, you glance at the visual representation of <br><br> <<run App.UI.tabbar.handlePreSelectedTab($tabChoice.Assistant)>> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'upgrades')" id="tab upgrades">Computer Core Upgrades</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'upgrades')" id="tab upgrades">Computer Core Upgrades</button> <<if $week >= 11>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'settings')" id="tab settings">Settings</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'settings')" id="tab settings">Settings</button> <<if $assistant.personality != 0>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'appearance')" id="tab appearance">Appearance</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'appearance')" id="tab appearance">Appearance</button> <</if>> <</if>> </div> -<div id="upgrades" class="tabcontent"> +<div id="upgrades" class="tab-content"> <div class="content"> <<if $assistant.power == 0>> The first upgrade needed is a switch to a holographic memory core to store the immense quantity of data $assistant.name gathers. @@ -58,7 +58,7 @@ Seated at your desk, you glance at the visual representation of </div> </div> -<div id="settings" class="tabcontent"> +<div id="settings" class="tab-content"> <div class="content"> <h3>Behavior:</h3> <<if $assistant.personality == 0>> @@ -112,7 +112,7 @@ Seated at your desk, you glance at the visual representation of </div> </div> -<div id="appearance" class="tabcontent"> +<div id="appearance" class="tab-content"> <div class="content"> _HeA is currently using the ''$assistant.appearance'' avatar, which <<set _seed = []>> <<if $policies.publicPA == 1>> diff --git a/src/personalAssistant/assistantVariableDocumentation.txt b/src/personalAssistant/assistantVariableDocumentation.txt index f89ff563792844b4bac0d3e78ceb45affcb46ba6..5c7635058e9f4cefa11704e50eb837a2a62125e3 100644 --- a/src/personalAssistant/assistantVariableDocumentation.txt +++ b/src/personalAssistant/assistantVariableDocumentation.txt @@ -20,7 +20,7 @@ The assistant's appearance, is a string. Extra1: First additional set of appearance choices. -If defined the choices are avalibe. +If defined the choices are available. Extra2: @@ -56,7 +56,7 @@ Relationship status between the assistant and the market assistant, is a string. limit: -The ammount of credits the market assistant is allowed to use. 10,000,000 maxium. +The amount of credits the market assistant is allowed to use. 10,000,000 maximum. aggressiveness: diff --git a/src/player/js/PlayerState.js b/src/player/js/PlayerState.js index fe3b61163ee21ecd9c20c22885b90b8f8fec363c..88a608b32a409571951358b8b5836ce823c513f2 100644 --- a/src/player/js/PlayerState.js +++ b/src/player/js/PlayerState.js @@ -485,7 +485,7 @@ App.Entity.PlayerState = class PlayerState { this.tailShape = "none"; /** tail color */ this.tailColor = "none"; - /** yout original hair color, defaults to your initial hair color. */ + /** your original hair color, defaults to your initial hair color. */ this.origHColor = "blonde"; /** hair color */ this.hColor = "blonde"; @@ -724,7 +724,7 @@ App.Entity.PlayerState = class PlayerState { this.lactation = 0; /** how many more weeks until lactation dries up * - * usually 2 as interactions and lact. implant reset it to 2 */ + * usually 2 as interactions and lactation implant reset it to 2 */ this.lactationDuration = 0; /** * odds of inducing lactation @@ -2022,7 +2022,7 @@ App.Entity.PlayerState = class PlayerState { */ /** - * @callback slaveTestCallback + * @callback playerTestCallback * @param {App.Entity.PlayerState} PC * @returns {boolean} */ diff --git a/src/pregmod/FCTV/FCTV.css b/src/pregmod/FCTV/FCTV.css index b3fe90b9bd4e98f1c8aaca5814661d41de258901..246efe55940bfb3bb14c119d5f46b315e420a59c 100644 --- a/src/pregmod/FCTV/FCTV.css +++ b/src/pregmod/FCTV/FCTV.css @@ -2,7 +2,7 @@ display: float; } -.FctvRemote { +.fctv-remote { text-align: center; justify-items: center; display: grid; @@ -10,12 +10,12 @@ width:min-content; padding-right:20px; } -.FctvRemote-numbers { +.fctv-remote-numbers { display: grid; grid-gap: 3px; grid-template-columns: repeat(3, min-content); justify-items:center; } -.FctvRemote-button { +.fctv-remote-button { margin-top: 10px; } \ No newline at end of file diff --git a/src/pregmod/FCTV/FCTV.js b/src/pregmod/FCTV/FCTV.js index 2469b35872fc79c7cd0bc7b88a0af93c0b252210..adae035f6bb82e81a321012e4b90ed23846698a2 100644 --- a/src/pregmod/FCTV/FCTV.js +++ b/src/pregmod/FCTV/FCTV.js @@ -100,14 +100,14 @@ globalThis.FctvDisplay = function({usedRemote = 0, seeAll = 0, selectedChannel = if (V.cheatMode > 0 || V.debugMode > 0 || V.FCTV.remote) { // Create "Use remote" link. Hide once clicked. span = document.createElement("span"); - span.id = "useRemote"; + span.id = "use-remote"; span.append( App.UI.DOM.link( "Use your remote", () => { usedRemote = 1; jQuery("#remote").empty().append(createRemote()); - jQuery("#useRemote").empty(); + jQuery("#use-remote").empty(); } ) ); @@ -155,14 +155,14 @@ globalThis.FctvDisplay = function({usedRemote = 0, seeAll = 0, selectedChannel = } p.append(displayShow()); frag.append(p); - return jQuery("#FctvWatch").empty().append(frag); + return jQuery("#fctv-watch").empty().append(frag); /** Creates a remote control for FCTV * @returns {HTMLParagraphElement} */ function createRemote() { const p = document.createElement("p"); - p.classList.add("FctvRemote"); + p.classList.add("fctv-remote"); let div; let span; const buttons = []; @@ -205,7 +205,7 @@ globalThis.FctvDisplay = function({usedRemote = 0, seeAll = 0, selectedChannel = buttons.splice(4, 0, App.UI.DOM.makeElement("span", "4")); // 4 is no longer a real channel, so put in a dummy button. 404, channel not found. div = document.createElement("div"); - div.classList.add("FctvRemote-numbers", /* "FctvRemote-button" */); + div.classList.add("fctv-remote-numbers", /* "fctv-remote-button" */); for (const button of buttons) { div.append(button); } @@ -219,7 +219,7 @@ globalThis.FctvDisplay = function({usedRemote = 0, seeAll = 0, selectedChannel = watch({usedRemote: 0, seeAll: seeAll, selectedChannel: selectedChannel}); } ), - ["FctvRemote-button"] + ["fctv-remote-button"] ); if (V.cheatMode > 0 || V.debugMode > 0) { App.UI.DOM.appendNewElement( @@ -236,7 +236,7 @@ globalThis.FctvDisplay = function({usedRemote = 0, seeAll = 0, selectedChannel = watch({usedRemote: usedRemote, seeAll: seeAll, selectedChannel: selectedChannel}); } ), - ["FctvRemote-button"] + ["fctv-remote-button"] ); } return p; diff --git a/src/pregmod/FCTV/FCTVshows.js b/src/pregmod/FCTV/FCTVshows.js index e539f3faf8b0711727b15d334e7e19c98074315e..3cd8b7e80a64fdbc610296c405e6ba71ae64a7b4 100644 --- a/src/pregmod/FCTV/FCTVshows.js +++ b/src/pregmod/FCTV/FCTVshows.js @@ -2105,12 +2105,7 @@ App.Data.FCTV.channels = { } else { r.push(`you`); } - if (V.usedRemote === 1) { - r.push(`tune to`); - } else { - r.push(`begin watching`); - } - r.push(`the <i>Age of Slavery</i> channel. With so many new types of arcologies emerging, it's sometimes difficult to tell if you are watching events unfolding on a set or in a real arcology with a historical society.</p>`); + r.push(`begin watching the <i>Age of Slavery</i> channel. With so many new types of arcologies emerging, it's sometimes difficult to tell if you are watching events unfolding on a set or in a real arcology with a historical society.</p>`); return r.join(" "); }, episode: [ diff --git a/src/pregmod/FCTV/seFCTVremote.tw b/src/pregmod/FCTV/seFCTVremote.tw index 43f205996d1ddccca8cb6b02b2d3cc737f4c5905..a321adba2bbfb6d01cac02c17914b868ba35b838 100644 --- a/src/pregmod/FCTV/seFCTVremote.tw +++ b/src/pregmod/FCTV/seFCTVremote.tw @@ -29,7 +29,7 @@ <<run setHealth(_slave, jsRandom(60, 80))>> <<if _slave.weight > 130>> <<set _slave.weight -= 100>> - <<set _slave.waist = random(-10,50)>> + <<set _slave.waist = jsRandom(-10,50)>> <</if>> <<if _slave.dick > 0>> <<set _slave.boobs = 0>> @@ -44,7 +44,7 @@ <<setPlayerPronouns>> <<setAssistantPronouns>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages > 0>> <<if $imageChoice == 1>> diff --git a/src/pregmod/FCTV/seFCTVwatch.tw b/src/pregmod/FCTV/seFCTVwatch.tw index 8523162a859e7ef3eff05116dbecd9e02e760470..22270f787424fb2af3f3f0b364e07f6fd3d86efe 100644 --- a/src/pregmod/FCTV/seFCTVwatch.tw +++ b/src/pregmod/FCTV/seFCTVwatch.tw @@ -2,7 +2,7 @@ <<set $nextButton = "Continue", $nextLink = "Scheduled Event", $returnTo = "Scheduled Event", $encyclopedia = "FCTV">> -<p id="FctvWatch"></p> +<p id="fctv-watch"></p> <script> FctvDisplay(); </script> diff --git a/src/pregmod/analyzePregnancy.tw b/src/pregmod/analyzePregnancy.tw index e181f59ad04c845e0972aa176dda1852e4acaaa2..16a1a15edee1e4e20ca6505440258e16a6da6984 100644 --- a/src/pregmod/analyzePregnancy.tw +++ b/src/pregmod/analyzePregnancy.tw @@ -383,5 +383,5 @@ <<elseif getSlave($activeSlave.ID).preg == -2>> /*special states*/ $His infertility is due to sterilization; $his ovaries could still work. <<elseif getSlave($activeSlave.ID).preg == -1>> /*special states*/ - Contreceptive agents detected in subject. + Contraceptive agents detected in subject. <</if>> diff --git a/src/pregmod/basenationalitiesControls.tw b/src/pregmod/basenationalitiesControls.tw index 5a28b3895d209e116d64a6e3e08dee4c489842e3..db31d717d44317bde8a815bd28e0deb7b3476eac 100644 --- a/src/pregmod/basenationalitiesControls.tw +++ b/src/pregmod/basenationalitiesControls.tw @@ -15,13 +15,13 @@ <br> /* Generates cloned array of $nationalities, removing duplicates and then sorting */ -<<set $nationalitiescheck = Object.assign({}, $nationalities)>> +<<set $nationalitiesCheck = Object.assign({}, $nationalities)>> -/* Prints distribution of $nationalities, using $nationalitiescheck to render array */ +/* Prints distribution of $nationalities, using $nationalitiesCheck to render array */ <<set _percentPerPoint = 100.0 / hashSum($nationalities)>> -<<set _len = Object.keys($nationalitiescheck).length>> +<<set _len = Object.keys($nationalitiesCheck).length>> <<set _j = 0>> -<<for _nation, _i range $nationalitiescheck>> +<<for _nation, _i range $nationalitiesCheck>> _nation @@.orange;<<= ($nationalities[_nation] * _percentPerPoint).toFixed(2)>>%@@ <<set _j++>> <<if _j < _len>> | <</if>> @@ -84,7 +84,7 @@ Filter by Region: <<replace '#PopControl'>><<include 'Basenationalities Controls'>><</replace>> <</link>>@@ ">> - <<if def $nationalitiescheck[_nation]>> + <<if def $nationalitiesCheck[_nation]>> <<print " @@.minusButton;<<link '–'>> <<set $nationalities[setup.baseNationalities["+_i+"]] -= 1>> @@ -141,7 +141,7 @@ Filter by Region: <<replace '#PopControl'>><<include 'Basenationalities Controls'>><</replace>> <</link>>@@ ">> - <<if def $nationalitiescheck[_nation]>> + <<if def $nationalitiesCheck[_nation]>> <<print " @@.minusButton;<<link '–'>> <<set $nationalities[_keys["+_i+"]] -= 1>> diff --git a/src/pregmod/rePregInventor.tw b/src/pregmod/rePregInventor.tw index da9a74821595fcacb38c3111cb64e8aac977c864..8c0a5f5fa18322a0ab9302516856cbbd2341546c 100644 --- a/src/pregmod/rePregInventor.tw +++ b/src/pregmod/rePregInventor.tw @@ -6,7 +6,7 @@ <<setAssistantPronouns>> <<setLocalPronouns $activeSlave>> <<run Enunciate($activeSlave)>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/pregmod/reTheSirenStrikesBack.tw b/src/pregmod/reTheSirenStrikesBack.tw index 5f6d156ea4ebf1fa4728a3ac54afc966e02a8f55..c24337547c7ba457a6f9479a49d7f5ee5ab7ccb0 100644 --- a/src/pregmod/reTheSirenStrikesBack.tw +++ b/src/pregmod/reTheSirenStrikesBack.tw @@ -42,7 +42,7 @@ <<run Enunciate($activeSlave)>> <<setSpokenLocalPronouns $activeSlave _ssb>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -91,7 +91,7 @@ Several weeks have passed since you gained the musical prodigy and you couldn't <<run healthDamage($activeSlave, 20)>> <<set _ssb.devotion += 2>> <<set _ssb.trust += 2>> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -131,7 +131,7 @@ Several weeks have passed since you gained the musical prodigy and you couldn't <span id="result"> <<link "Enslave _him2">> <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -151,7 +151,7 @@ Several weeks have passed since you gained the musical prodigy and you couldn't <br><<link "Enslave _him2 and punish _him2 for their actions">> <<set $activeSlave.clothes = "no clothing">> <<run healthDamage($activeSlave, 20)>> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/pregmod/theBlackMarket.tw b/src/pregmod/theBlackMarket.tw index aa035b107c3c5f868e4dc07aa9e4b6b1c93340b5..184bc3f4f5b434042ab6efcc03f14e29f4ba17e2 100644 --- a/src/pregmod/theBlackMarket.tw +++ b/src/pregmod/theBlackMarket.tw @@ -199,9 +199,9 @@ He gestures to a door in the back of the stall. "The good shit's back there<<if <<set _match = "I'm not sure this is a good match for your arcology's current society at this moment, but I'm sure you could have fun with it.">> <</if>> <<if ($pedo_mode)>> - <<set _toydolls = "If you like sexy little toy dolls, I mean biological ''@@.coral;lolis@@'' or ''@@.coral;shotas@@'' for life, then this is the one for you. I picked it up from an exotics dealer, who picked it up from some old world government research center.", _norefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your younger slaves will stay that way forever, and your older ones will slowly begin to regress towards that nice mid-childhood state. If you want to build yourself a cadre of ''@@.coral;preteen@@'' delights for yourself or your customers, then buy now!">> + <<set _toyDolls = "If you like sexy little toy dolls, I mean biological ''@@.coral;lolis@@'' or ''@@.coral;shotas@@'' for life, then this is the one for you. I picked it up from an exotics dealer, who picked it up from some old world government research center.", _noRefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your younger slaves will stay that way forever, and your older ones will slowly begin to regress towards that nice mid-childhood state. If you want to build yourself a cadre of ''@@.coral;preteen@@'' delights for yourself or your customers, then buy now!">> <<else>> - <<set _toydolls = "This might be a little too shady or perverted for you. But, if you want your slaves to last longer, you know, look younger for longer, well this treatment can help. However it comes at a price, this treatment will eventually turn your slave girls younger and younger looking, until the point you might not want to use them as sex slaves because they'll appear as teenagers or even younger. I'm serious, your slaves treated with this treatment will eventually look like children! They won't be, really, but this is no fountain of perpetual youth, and to be fair, maybe none of this will be up your alley. If that's the case, I guess you could just sell them once they get too young looking, and possibly for a higher price than if they looked older. It's, at best, for possibly more discerning or eclectic tastes then you might have. I picked it up from an exotics dealer, who picked it up from some old world government research center.", _norefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your treated slaves will stay and become younger looking forever, and your older ones will slowly begin to regress towards a disturbingly young mid-childhood state. All those caveats aside, if this sounds like something you'd want, then buy now!">> + <<set _toyDolls = "This might be a little too shady or perverted for you. But, if you want your slaves to last longer, you know, look younger for longer, well this treatment can help. However it comes at a price, this treatment will eventually turn your slave girls younger and younger looking, until the point you might not want to use them as sex slaves because they'll appear as teenagers or even younger. I'm serious, your slaves treated with this treatment will eventually look like children! They won't be, really, but this is no fountain of perpetual youth, and to be fair, maybe none of this will be up your alley. If that's the case, I guess you could just sell them once they get too young looking, and possibly for a higher price than if they looked older. It's, at best, for possibly more discerning or eclectic tastes then you might have. I picked it up from an exotics dealer, who picked it up from some old world government research center.", _noRefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your treated slaves will stay and become younger looking forever, and your older ones will slowly begin to regress towards a disturbingly young mid-childhood state. All those caveats aside, if this sounds like something you'd want, then buy now!">> <</if>> <<if $geneticMappingUpgrade == 0>> You lack the facilities required for such a treatment to be effective on specific individuals. @@ -210,10 +210,10 @@ He gestures to a door in the back of the stall. "The good shit's back there<<if <<else>> <<if $arcologies[0].childhoodFertilityInducedNCSResearch == 0>> <<if $cash >= 135000>> - "_toydolls _match _norefunds"<br> + "_toyDolls _match _noRefunds"<br> [[Purchase childhood fertility induced NCS|The Black Market][cashX(-135000, "capEx"), $arcologies[0].childhoodFertilityInducedNCSResearch = 1, _dump = $merchantFSWares.delete("childFertilityInducedSyndromeX")]] //@@.yellowgreen;<<print cashFormat(135000)>>.@@//<br> <<else>> - "_toydolls _match _norefunds Or, you know, come back with money."<br> + "_toyDolls _match _noRefunds Or, you know, come back with money."<br> You cannot afford the asking price of @@.red;<<print cashFormat(135000)>>@@ for the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br> <</if>> He notices your interest and lets you read the information <<= App.Encyclopedia.Dialog.linkSC("Childhood Fertility Induced NCS", "Childhood Fertility Induced NCS")>>. diff --git a/src/pregmod/widgets/pregmodBirthWidgets.tw b/src/pregmod/widgets/pregmodBirthWidgets.tw index f0e412c573a94a5ac2712721c96944e6b9bbb8c3..dce4922f9bf3baf0beafe60a0315a201d412e015 100644 --- a/src/pregmod/widgets/pregmodBirthWidgets.tw +++ b/src/pregmod/widgets/pregmodBirthWidgets.tw @@ -84,7 +84,7 @@ <</if>> <<else>> <<if (random(1,20) > $suddenBirth)>> - $He is taken by _tempSub.slaveName to a private room so that _he2 may <<if canSee(_tempSub)>>watch<<else>>be present<</if>>. Reluctantly, $he begins to push out <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of _tempSub.slaveName's <<if _tempSub.fetish == "pregnancy">>hungry gaze<<else>>amused gaze<</if>><<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>>, but is quicly overwhelmed by the pleasure from $his orgmasmic birth<</if>>. $His child is promptly taken and _tempSub.slaveName eagerly descends upon $his exhausted and still very gravid body. + $He is taken by _tempSub.slaveName to a private room so that _he2 may <<if canSee(_tempSub)>>watch<<else>>be present<</if>>. Reluctantly, $he begins to push out <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of _tempSub.slaveName's <<if _tempSub.fetish == "pregnancy">>hungry gaze<<else>>amused gaze<</if>><<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>>, but is quickly overwhelmed by the pleasure from $his orgasmic birth<</if>>. $His child is promptly taken and _tempSub.slaveName eagerly descends upon $his exhausted and still very gravid body. <<set $humiliation = 1>> <<else>> While servicing _tempSub.slaveName, $slaves[$i].slaveName's water breaks, causing $him to immediately try to break off. $His dom eagerly watches _his2 gravid sub's ordeal. @@ -651,7 +651,7 @@ <</if>> <<if !canWalk($slaves[$i])>> <<if (random(1,20) > $suddenBirth)>> - Having been notified in the weeks leading up to $his <<if $slaves[$i].counter.birthsTotal == 0>>first<<else>>regular<</if>> birth, $he is helped to the front of the class and stripped; $he is being used as a learning aid in this lesson. Blushing strongly, $he begins working on birthing <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> However $he quicly forgets about the audience as orgasms, one after another, hit $him.<</if>> $His child is promptly taken and, following a cleaning and fresh change of clothes, $he is helped back to $his seat. $He can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on $his genitals<<else>>overhear some of the lewd comments about $his still very gravid figure<</if>>. + Having been notified in the weeks leading up to $his <<if $slaves[$i].counter.birthsTotal == 0>>first<<else>>regular<</if>> birth, $he is helped to the front of the class and stripped; $he is being used as a learning aid in this lesson. Blushing strongly, $he begins working on birthing <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> However $he quickly forgets about the audience as orgasms, one after another, hit $him.<</if>> $His child is promptly taken and, following a cleaning and fresh change of clothes, $he is helped back to $his seat. $He can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on $his genitals<<else>>overhear some of the lewd comments about $his still very gravid figure<</if>>. <<set $humiliation = 1>> <<else>> During a lesson in $schoolroomName, $slaves[$i].slaveName's water breaks. Since $he can't leave the lesson, $he tries $his best to hold back the upcoming birth of <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He fails to manage and a particularly strong contraction elicits a moan noticeable enough to draw all the students' attention. @@ -661,7 +661,7 @@ <</if>> <<else>> <<if (random(1,20) > $suddenBirth)>> - Having been notified in the weeks leading up to $his <<if $slaves[$i].counter.birthsTotal == 0>>first<<else>>regular<</if>> birth, $he heads to the front of the class and strips; $he is being used as a learning aid in this lesson. Blushing strongly, $he begins working on birthing <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> However $he quicly forgets about the audience as orgasms, one after another, hit $him.<</if>> $His child is promptly taken and, following a cleaning and fresh change of clothes, $he returns to $his seat. $He can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on $his genitals<<else>>overhear some of the lewd comments about $his still very gravid figure<</if>>. + Having been notified in the weeks leading up to $his <<if $slaves[$i].counter.birthsTotal == 0>>first<<else>>regular<</if>> birth, $he heads to the front of the class and strips; $he is being used as a learning aid in this lesson. Blushing strongly, $he begins working on birthing <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> However $he quickly forgets about the audience as orgasms, one after another, hit $him.<</if>> $His child is promptly taken and, following a cleaning and fresh change of clothes, $he returns to $his seat. $He can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on $his genitals<<else>>overhear some of the lewd comments about $his still very gravid figure<</if>>. <<set $humiliation = 1>> <<else>> During a lesson in $schoolroomName, $slaves[$i].slaveName's water breaks. Since $he can't leave the lesson, $he tries $his best to hold back the upcoming birth of <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He fails to manage and a particularly strong contraction elicits a moan noticeable enough to draw all the students' attention. @@ -673,7 +673,7 @@ <<case "take classes">> <<if (random(1,20) > $suddenBirth)>> - Or $he would have, had $assistant.name allowed it. Since $he can't leave the lesson, $he tries $his best to hold back the upcoming birth, not without your assistant noticing. As punishment for poor planning, especially since this will be a weekly occurrence in $his life, $his birth will be turned into a live broadcast. Blushing strongly, $he begins working on birthing <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, trying $his best to hide $his shame.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> However $he quicly forgets about the audience as orgasms, one after another, hit $him.<</if>> Exhausted from the birth, $he is permitted a short break as $his child is collected to clean $himself up before the lesson is continued. + Or $he would have, had $assistant.name allowed it. Since $he can't leave the lesson, $he tries $his best to hold back the upcoming birth, not without your assistant noticing. As punishment for poor planning, especially since this will be a weekly occurrence in $his life, $his birth will be turned into a live broadcast. Blushing strongly, $he begins working on birthing <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, trying $his best to hide $his shame.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> However $he quickly forgets about the audience as orgasms, one after another, hit $him.<</if>> Exhausted from the birth, $he is permitted a short break as $his child is collected to clean $himself up before the lesson is continued. <<set $humiliation = 1>> <<else>> During a lesson under $assistant.name, $slaves[$i].slaveName's water breaks. Since $he can't leave the lesson, $he tries $his best to hold back the upcoming birth, not without your assistant noticing. As punishment for poor planning, especially since this will be a weekly occurrence in $his life, $he is forbidden from leaving. Additionally, $his birth will be turned into a live broadcast. @@ -1180,7 +1180,7 @@ While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].counter.birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Unable to walk without assistance, $he finds $himself stranded in the middle of all the dining slaves. <<set $humiliation = 1>> <<ClothingBirth>> - $He gathers $his child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter. + $He gathers $his child and waits to be rescued from the vicious mockery, fully aware of all the jeering and laughter. <<else>> $slaves[$i].slaveName is awoken from $his rest by a moist sensation followed by a contraction. $He rolls over and clutches $his gravid belly as another contraction wracks $his body. <<ClothingBirth>> @@ -1811,7 +1811,7 @@ While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth another of $his brood. Unable to move, $he finds $himself stranded in the middle of all the dining slaves. <<set $humiliation = 1>> <<ClothingBirth>> - $He gathers $his child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter. + $He gathers $his child and waits to be rescued from the vicious mockery, fully aware of all the jeering and laughter. <</if>> <</if>> <<else>> @@ -1855,7 +1855,7 @@ While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth another of $his brood. Unable to move, $he finds $himself stranded in the middle of all the dining slaves. <<set $humiliation = 1>> <<ClothingBirth>> - $He gathers $his child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter. + $He gathers $his child and waits to be rescued from the vicious mockery, fully aware of all the jeering and laughter. <</if>> <</if>> <<else>> diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw index 13aed8a89a93a9205821a774d507eb82f54106ce..6e7579159651b62bba788cce67ca3f32cbb2b923 100644 --- a/src/uncategorized/PESS.tw +++ b/src/uncategorized/PESS.tw @@ -64,7 +64,7 @@ <<case "tired collectrix" "tired milkmaid" "loving concubine" "bodyguard bedtime" "headgirl dickgirl">> <<set $activeSlave.clothes = "no clothing">> <</switch>> -<span id="artFrame"> +<span id="art-frame"> <<if $RESSevent == "headgirl dickgirl">> /* 000-250-006 */ <<if $seeImages == 1>> @@ -501,7 +501,7 @@ $He sees you examining at $him, and looks back at you submissively, too tired to <<link "Spend a night as equals">> <<replace "#result">> <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "a mini dress">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -538,7 +538,7 @@ $He sees you examining at $him, and looks back at you submissively, too tired to <br><<link "Victimize something together">> <<set _clothesTemp2 = $slaves[$j].clothes, $slaves[$j].clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/PETS.tw b/src/uncategorized/PETS.tw index b9c8deabe86ff69f86549bd1041ad47954b84fb8..14ac0796e51bce5ceb24ab500bb69987c6b81296 100644 --- a/src/uncategorized/PETS.tw +++ b/src/uncategorized/PETS.tw @@ -67,7 +67,7 @@ /*Not sure we can do better for "stewardess beating": has _him2 bent over with _his2 buttocks bare, and is administering a punishing spanking.*/ <<set $subSlave.clothes = "no clothing">> <</switch>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/REFS.tw b/src/uncategorized/REFS.tw index e67f990d3fa6ecc688275b1765bc13cc4c787d14..d3b1dc3f8daccbd680278fd6b7fd20eb957257da 100644 --- a/src/uncategorized/REFS.tw +++ b/src/uncategorized/REFS.tw @@ -210,7 +210,7 @@ <<default>> <</switch>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -299,7 +299,7 @@ <<if $cash >= 2000>> <br><<link "Take the poor slave $girl into your custody">> <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -336,7 +336,7 @@ <<if $cash >= 2000>> <br><<link "Take the pampered slave $girl into your custody">> <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -511,7 +511,7 @@ <span id="result2"> <<link "Enslave $him afterwards">> <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -562,7 +562,7 @@ <br><br> <span id="result2"> <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw index 217ffb489b191d7cf6efd07d1a17ffef76330b13..aa1033cf81860978cd6a7dc6ea0dc831687405d7 100644 --- a/src/uncategorized/RESS.tw +++ b/src/uncategorized/RESS.tw @@ -100,7 +100,7 @@ <<set _meanGirl.clothes = either("a mini dress", "a t-shirt and jeans", "conservative clothing", "sport shorts and a t-shirt")>> <<set _newSlaves.push(_meanGirl)>> <</for>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -121,7 +121,7 @@ /* 000-250-006 */ </span> <<elseif $RESSevent == "PA flirting">> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -134,7 +134,7 @@ /* 000-250-006 */ </span> <<else>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -9554,7 +9554,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<set $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.trust -= 4, $activeSlave.devotion += 4>> <<run surgeryDamage($activeSlave, 5)>> <</replace>> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -15405,7 +15405,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<set _newSlaves[0].clothes = "no clothing">> <<set _newSlaves[1].clothes = "no clothing">> <<set _newSlaves[2].clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -16407,7 +16407,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<if isFertile($activeSlave)>> <br><<link "Give $him an afternoon off for some quality time with a local Frat House">> <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -16569,7 +16569,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <<if isFertile($activeSlave)>> <br><<link "Give $him an afternoon off for some quality time with a local retirement community">> <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -17355,7 +17355,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <</replace>> <</link>> <br><<link "Show $him how much you like $his usual outfit">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -17546,7 +17546,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <</link>> <br><<link "Put $him in a string bikini">> <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "a string bikini">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -17591,7 +17591,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h <</link>> <br><<link "Force uncomfortable straps on $him">> <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "uncomfortable straps">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw index e3391e5b081e454b75aefc80affffe6a1b02e35f..77307798a00b214c62259f42937796cbdab6989e 100644 --- a/src/uncategorized/RETS.tw +++ b/src/uncategorized/RETS.tw @@ -164,7 +164,7 @@ <<case "sadistic description">> <<set $subSlave.clothes = "no clothing">> <</switch>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -1073,7 +1073,7 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<link "Give them a night off together">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -1101,7 +1101,7 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> <<set _clothesTemp2 = $subSlave.clothes, $subSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -1134,7 +1134,7 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "conservative clothing">> <<set _clothesTemp2 = $subSlave.clothes, $subSlave.clothes = "conservative clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -1498,7 +1498,7 @@ $he adds impishly. <<if canHear($subSlave)>>Hearing this<<else>>Realizing your p <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> <<set _clothesTemp2 = $subSlave.clothes, $subSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/REresistantmotherdaughter.tw b/src/uncategorized/REresistantmotherdaughter.tw index cae57cad2d7501879b15a6f6c01e9ba2f58ed21d..557052ba1acf7f29a21180e976a8ec7128866410 100644 --- a/src/uncategorized/REresistantmotherdaughter.tw +++ b/src/uncategorized/REresistantmotherdaughter.tw @@ -9,7 +9,7 @@ <<set _clothesTemp = $slaves[$i].clothes, $slaves[$i].clothes = "no clothing">> <<set _clothesTemp2 = $slaves[$j].clothes, $slaves[$j].clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw index da0422f75afb403937a3d4eb2a1268cd0f715804..8bc8eac2c9aa86045ef0d580e1fc986fc86653c9 100644 --- a/src/uncategorized/arcadeReport.tw +++ b/src/uncategorized/arcadeReport.tw @@ -1,6 +1,6 @@ :: Arcade Report [nobr] -<span id="arcadeStats"> +<span id="arcade-stats"> </span> <<set _slaves = App.Utils.sortedEmployees(App.Entity.facilities.arcade)>> @@ -292,7 +292,7 @@ <!-- Statistics output --> <<includeDOM App.Facilities.Arcade.Stats(false)>> <<timed 50ms>> - <<replace #arcadeStats>> + <<replace #arcade-stats>> <<includeDOM App.Facilities.Arcade.Stats(true)>> <</replace>> <</timed>> diff --git a/src/uncategorized/arcmgmt.tw b/src/uncategorized/arcmgmt.tw index a59c70dea34fdb45e898445e107a0c8ee3c28881..ae9c666248304641e22fa7dd5d6a7b3edfee8032 100644 --- a/src/uncategorized/arcmgmt.tw +++ b/src/uncategorized/arcmgmt.tw @@ -731,7 +731,7 @@ $menialBioreactors -= _expirationBR>> /*Bad weather switch*/ <<if $weatherToday.severity > 3>> - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> <<if $docks < 4 && $railway < 4>> <<set _weatherFreeze = 1>> <<set $weatherAwareness = 1>> @@ -746,7 +746,7 @@ $menialBioreactors -= _expirationBR>> <<set _weatherFreeze = 0>> <</if>> <<elseif $weatherToday.severity > 2>> - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> <<if $docks < 3 && $railway < 3>> <<set _weatherFreeze = 1>> <br>//The terrible weather is @@.red;preventing people from entering or leaving@@ your arcology. Improving your transport infrastructure will prevent this from happening.// @@ -788,7 +788,7 @@ $menialBioreactors -= _expirationBR>> /*Bunch of visitor stuff*/ <<if _weatherFreeze == 0>> <<set _FSScore = _FSScore / $FSCreditCount>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <<if $docks > 0>> <<set _transportHub = 0.7 + $docks / 10 + $airport / 10>> <<elseif $railway > 0>> @@ -799,7 +799,7 @@ $menialBioreactors -= _expirationBR>> <<else>> <<set _transportHub = 1>> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <<set _crime = (100 - $SecExp.core.crimeLow) / 100 + 0.2>> <<else>> <<set _crime = 0.8>> @@ -1144,10 +1144,9 @@ _SCD = Math.trunc(($upperClass * (2 + _slaveDemandU)) + ($topClass * (12 + _slav <</if>> /*ends _weatherFreeze*/ -<<if $secExpEnabled == 1>> - <<set $ASlaves = $NPCSlaves + $menials + $fuckdolls + $menialBioreactors + $secMenials + App.SecExp.Manpower.employedSlave>> -<<else>> - <<set $ASlaves = $NPCSlaves + $menials + $fuckdolls + $menialBioreactors>> +<<set $ASlaves = $NPCSlaves + $menials + $fuckdolls + $menialBioreactors>> +<<if $secExpEnabled > 0>> + <<set $ASlaves += $secMenials + App.SecExp.Manpower.employedSlave>> <</if>> <<set $ACitizens = $lowerClass + $middleClass + $upperClass + $topClass, _percACitizens = Math.trunc(($ACitizens / ($ACitizens + $ASlaves)) * 1000) / 10, @@ -1243,7 +1242,7 @@ _percTopClass = Math.trunc(($topClass / ($ACitizens + $ASlaves)) * 1000) / 10>> <<set _rentMultiplier *= 0.95>> Food vendors are offered subsidized rent and operating expenses to set up shop in your arcology. <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <<if $SecExp.edicts.alternativeRents == 1>> /*A silly policy*/ Your citizens are allowed to pay their rents in slaves rather than cash and a few financially challenged individuals make use of this. <<set _rentMultiplier *= 0.95>> @@ -1381,7 +1380,7 @@ You own Your unimpressive reputation relative to $arcologies[0].name's prosperity @@.yellow;slows business growth.@@ <<set _AWeekGrowth-->> <</if>> - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> <<if $SecExp.core.trade <= 20>> <<set _AWeekGrowth += 1>> <<elseif $SecExp.core.trade <= 40>> @@ -1394,7 +1393,7 @@ You own <<set _AWeekGrowth += 5>> <</if>> - <<if $smilingManFate == 0>> + <<if $SecExp.smilingMan.progress === 10>> The ex-criminal known to the world as The Smiling Man puts her impressive skills to work, improving the financial situation of the arcology with ease. <<set _AWeekGrowth++>> <</if>> @@ -1531,7 +1530,7 @@ You own Growth was subsidized as planned. <<set _AWeekGrowth++>> <</if>> - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> <<if $SecExp.core.authority > 18000>> Your authority is so high it discourages new business, slowing down the economic growth of the arcology. <<set _AWeekGrowth-->> @@ -1554,13 +1553,17 @@ You own The authenticity department prepares extremely accurate, but false financial reports, misleading many of your competitors, allowing your arcology more space to grow undisturbed. <<set _AWeekGrowth++>> <</if>> - <<if $globalCrisisWeeks > 0>> - The great global crisis ignited by The Smiling Man plan is a great weight on the shoulders of everyone, causing great harm to the prosperity of the arcology. - <<set _AWeekGrowth -= random(2,4)>> - <<set $globalCrisisWeeks-->> - <<elseif $smilingManProgress >= 3>> - With the global economy recovering from the great crisis unleashed by the Smiling Man, there is plenty of room to grow. Your arcology's prosperity benefits from this greatly. - <<set _AWeekGrowth++>> + <<if $SecExp.smilingMan.progress >= 2>> + <<if def $SecExp.smilingMan.globalCrisisWeeks && $SecExp.smilingMan.globalCrisisWeeks > 0>> + The great global crisis ignited by The Smiling Man plan is a great weight on the shoulders of everyone, causing great harm to the prosperity of the arcology. + <<set _AWeekGrowth -= random(2,4), $SecExp.smilingMan.globalCrisisWeeks-->> + <<elseif $SecExp.smilingMan.progress >= 3>> + With the global economy recovering from the great crisis unleashed by the Smiling Man, there is plenty of room to grow. Your arcology's prosperity benefits from this greatly. + <<set _AWeekGrowth++>> + <</if>> + <<if def $SecExp.smilingMan.globalCrisisWeeks && $SecExp.smilingMan.globalCrisisWeeks === 0>> + <<run delete $SecExp.smilingMan.globalCrisisWeeks>> + <</if>> <</if>> <<if $garrison.reactorTime > 0>> The damage to the reactor caused by the last rebellion is extensive. Businesses and private citizens struggle to operate with the unreliable and limited energy production offered by the auxiliary generators. @@ -1584,7 +1587,7 @@ You own <</if>> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <br> <br> <<include "tradeReport">> diff --git a/src/uncategorized/bodyModification.js b/src/uncategorized/bodyModification.js index 3a00623f38bdaa97e9fee39fce970b57c90f8fc1..08e7c5fed7033bc29ddc9bad1d198a3444ee5d56 100644 --- a/src/uncategorized/bodyModification.js +++ b/src/uncategorized/bodyModification.js @@ -228,7 +228,7 @@ App.Medicine.Modification.Select.brand = function(slave, cheat = false) { } } el.append(p); - return jQuery('#brandSelection').empty().append(el); + return jQuery('#brand-selection').empty().append(el); function symbolBlock(brandList) { const div = document.createElement('div'); diff --git a/src/uncategorized/bodyModification.tw b/src/uncategorized/bodyModification.tw index 244162c389f61bccfb6ca392f6c8631d21e369d3..4635f08762285bbf4fd2df7fc8a7c4675af87b91 100644 --- a/src/uncategorized/bodyModification.tw +++ b/src/uncategorized/bodyModification.tw @@ -649,7 +649,7 @@ /* Branding */ <h2>Branding</h2> -<span id="brandSelection"></span> +<span id="brand-selection"></span> <script> App.Medicine.Modification.Select.brand(getSlave(V.AS)) </script> diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw index ee1ca79f3a1fa8c940b0c7f6b380a2c6364c981d..6caa232123ee1d8624040f1bc3ca5010bc1586b5 100644 --- a/src/uncategorized/brothelReport.tw +++ b/src/uncategorized/brothelReport.tw @@ -1,6 +1,6 @@ :: Brothel Report [nobr] -<span id="brothelstats"> +<span id="brothel-stats"> </span> <<set _slaves = App.Utils.sortedEmployees(App.Entity.facilities.brothel)>> @@ -345,7 +345,7 @@ <!-- Statistics output --> <<includeDOM App.Facilities.Brothel.Stats(false)>> <<timed 50ms>> - <<replace #brothelstats>> + <<replace #brothel-stats>> <<includeDOM App.Facilities.Brothel.Stats(true)>> <</replace>> <</timed>> diff --git a/src/uncategorized/club.tw b/src/uncategorized/club.tw index 264823944969fed4d2d79a07ca60dd334a292111..e486cb76f31e48767cfb96fce1442efc062c13cd 100644 --- a/src/uncategorized/club.tw +++ b/src/uncategorized/club.tw @@ -243,7 +243,7 @@ <div> <<if $clubUpgradePDAs == 1>> - $clubNameCaps has been wired for unobtrusive personal data assistants to let your sluts pass tips about enslaveable people to your recruiter. + $clubNameCaps has been wired for unobtrusive personal data assistants to let your sluts pass tips about enslavable people to your recruiter. <<else>> <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology*$HackingSkillMultiplier)>> The rooms are standard. diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw index f001183f31f8263213dfac903fbf3e4a88da448f..8e70c1dfb320e94ba17a4bb8ff19fc291d7e2548 100644 --- a/src/uncategorized/clubReport.tw +++ b/src/uncategorized/clubReport.tw @@ -1,6 +1,6 @@ :: Club Report [nobr] -<span id="clubstats"></span> +<span id="club-stats"></span> <<set _slaves = App.Utils.sortedEmployees(App.Entity.facilities.club)>> <<set _DL = _slaves.length, _SL = $slaves.length, $clubBonuses = 0, $legendaryEntertainerID = 0, _FLsFetish = 0>> @@ -246,7 +246,7 @@ <!-- Statistics output --> <<includeDOM App.Facilities.Club.Stats(false)>> <<timed 50ms>> - <<replace #clubstats>> + <<replace #club-stats>> <<includeDOM App.Facilities.Club.Stats(true)>> <</replace>> <</timed>> diff --git a/src/uncategorized/costsBudget.js b/src/uncategorized/costsBudget.js index 61f0d60c16ae2506fa59fe39c96934c847337a04..ad38b1d9fc1cf6a3257533cc1f1f237857e30d52 100644 --- a/src/uncategorized/costsBudget.js +++ b/src/uncategorized/costsBudget.js @@ -40,7 +40,7 @@ App.UI.Budget.Cost = function() { generateRowCategory("Confinement", "slaveAssignmentConfinement") ]); // Other - generateRowCategory("Chosing Own Assignment", "slaveAssignmentChoice"); + generateRowCategory("Choosing Own Assignment", "slaveAssignmentChoice"); // LEADERSHIP ROLES @@ -153,9 +153,9 @@ App.UI.Budget.Cost = function() { // PROSTHETIC LAB addToggle(generateRowGroup("Prosthetic Lab", "PROSTHETICLAB"), [ generateRowCategory("Prosthetic Lab Operation", "lab"), - generateRowCategory("Prostethic Lab Research", "labResearch"), - generateRowCategory("Prostethic Lab Scientists", "labScientists"), - generateRowCategory("Prostethic Lab Menials", "labMenials") + generateRowCategory("Prosthetic Lab Research", "labResearch"), + generateRowCategory("Prosthetic Lab Scientists", "labScientists"), + generateRowCategory("Prosthetic Lab Menials", "labMenials") ]); // SCHOOLROOM @@ -245,7 +245,7 @@ App.UI.Budget.Cost = function() { generateRowCategory("Your medical expenses", "PCmedical"), generateRowCategory("Citizen Orphanage", "citizenOrphanage"), generateRowCategory("Private Orphanage", "privateOrphanage"), - generateRowCategory("Stock dividents", "stocks"), + generateRowCategory("Stock dividends", "stocks"), generateRowCategory("Stock trading", "stocksTraded") ]); diff --git a/src/uncategorized/costsReport.tw b/src/uncategorized/costsReport.tw index b6713c52e23bb97c5078f66a94be2d473bfc2e9e..4ee38131c205c9e814b889936fd9e0b361ae8003 100644 --- a/src/uncategorized/costsReport.tw +++ b/src/uncategorized/costsReport.tw @@ -12,7 +12,7 @@ <</for>> /* -EVERYTHING BELOW THIS LINE IS IGNORED BY THE GAME AND IS FOR REFERANCE/ARCHIVE PURPOSES ONLY +EVERYTHING BELOW THIS LINE IS IGNORED BY THE GAME AND IS FOR REFERENCE/ARCHIVE PURPOSES ONLY <<set _arcologyCosts = 0>> <<set _total = 0>> diff --git a/src/uncategorized/customSlave.tw b/src/uncategorized/customSlave.tw index 8c4d8069d159393bcd729aa1913d18ef354c8bfa..178b7e16d8e6dceea8bf8d9c952c3367198dd201 100644 --- a/src/uncategorized/customSlave.tw +++ b/src/uncategorized/customSlave.tw @@ -1030,7 +1030,7 @@ Skin tone: <span id = "skin"> <br> -<span id = "whoreskills"> +<span id = "whore-skills"> <<if $customSlave.skill.whore <= 10>>Unskilled at prostitution and entertainment. <<elseif $customSlave.skill.whore <= 15>>Basic skills at prostitution and entertainment. <<else>>Skilled at prostitution and entertainment. @@ -1053,7 +1053,7 @@ Skin tone: <span id = "skin"> <br> -<span id = "combatskills"> +<span id = "combat-skills"> <<if $customSlave.skill.combat == 0>>Unskilled at combat. <<else>>Skilled at combat. <</if>> diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw index 15515b63295c42d61374e81ff5c91281a6307a02..d8e3db36fe100ceca528f63e2703ffb894f77a93 100644 --- a/src/uncategorized/dairyReport.tw +++ b/src/uncategorized/dairyReport.tw @@ -1,12 +1,12 @@ :: Dairy Report [nobr] -<span id="dairystats"> +<span id="dairy-stats"> </span> <<set _MMWorkout = 0>> <<set _BF = App.Data.misc.bioreactorFluids>> <<set _slaves = App.Utils.sortedEmployees(App.Entity.facilities.dairy)>> -<<set _DL = _slaves.length, _SL = $slaves.length, $bioreactorPerfectedID = 0, $legendaryBallsID = 0, $legendaryCowID = 0, $milkmaidDevotionBonus = 1, $milkmaidHealthBonus = 0, $milkmaidTrustBonus = 1, $milkmaidDevotionThreshold = 45, $milkmaidTrustThreshold = 35, _anusesStretched = 0, _birthers = 0, _births = 0, _cumWeek = 0, _femCumWeek = 0, _FLsFetish = 0, _milkWeek = 0, _balltacular = 0, _boobtacular = 0, _careerForgotten = 0, _chemMinor = 0, _chemSevere = 0, _desterilized = 0, _hatefilled = 0, _horrified = 0, _intelligenceLost = 0, _mindbroken = 0, _profits = 0, _skillsLost = 0, _stupidified = 0, _vaginasStretched = 0, _cmSlave = 0, _dsSlave = 0, _hfSlave = 0, _hrSlave = 0, _slSlave = 0, _cfSlave = 0, _stSlave = 0, _btSlave = 0>> +<<set _DL = _slaves.length, _SL = $slaves.length, $bioreactorPerfectedID = 0, $legendaryBallsID = 0, $legendaryCowID = 0, $milkmaidDevotionBonus = 1, $milkmaidHealthBonus = 0, $milkmaidTrustBonus = 1, $milkmaidDevotionThreshold = 45, $milkmaidTrustThreshold = 35, _anusesStretched = 0, _birthers = 0, _births = 0, _cumWeek = 0, _femCumWeek = 0, _FLsFetish = 0, _milkWeek = 0, _balltacular = 0, _boobtacular = 0, _careerForgotten = 0, _chemMinor = 0, _chemSevere = 0, _desterilized = 0, _hateFilled = 0, _horrified = 0, _intelligenceLost = 0, _mindbroken = 0, _profits = 0, _skillsLost = 0, _stupidified = 0, _vaginasStretched = 0, _cmSlave = 0, _dsSlave = 0, _hfSlave = 0, _hrSlave = 0, _slSlave = 0, _cfSlave = 0, _stSlave = 0, _btSlave = 0>> <!-- Statistics gathering --> <<set $facility = $facility || {}, $facility.dairy = initFacilityStatistics($facility.dairy)>> @@ -79,7 +79,7 @@ <<if _slave.belly >= 5000>> <<set _MMWorkout += 2>> <</if>> - <<elseif !canWalk(_slave)>> /* smaller bonus if they are fat as cows and need assistanace with moving */ + <<elseif !canWalk(_slave)>> /* smaller bonus if they are fat as cows and need assistance with moving */ <<if _slave.weight >= 70>> <<set _MMWorkout += 1>> <</if>> @@ -749,7 +749,7 @@ <<if (_slave.devotion > -75)>> <<set _slave.devotion -= 10>> <<if (_slave.devotion < -65)>> - <<set _hatefilled++>> + <<set _hateFilled++>> <<set _hfSlave = _slave>> <</if>> <<elseif (_slave.trust > -75)>> @@ -810,7 +810,7 @@ <<if (_slave.devotion > -75)>> <<set _slave.devotion -= 5>> <<if (_slave.devotion < -70)>> - <<set _hatefilled++>> + <<set _hateFilled++>> <<set _hfSlave = _slave>> <</if>> <<elseif (_slave.trust > -75)>> @@ -988,9 +988,9 @@ <<setLocalPronouns _dsSlave>> One cow had minor health issues preventing $his fertile womb from conceiving; they have been resolved and $he has been impregnated. <</if>> -<<if _hatefilled > 1>> - _hatefilled cows stopped struggling so much when fucked by the machines; it seems they have sunk into a fugue. -<<elseif _hatefilled > 0>> +<<if _hateFilled > 1>> + _hateFilled cows stopped struggling so much when fucked by the machines; it seems they have sunk into a fugue. +<<elseif _hateFilled > 0>> <<setLocalPronouns _hfSlave>> One cow stopped struggling so much when fucked by the machines; it seems $he has sunk into a fugue. <</if>> @@ -1195,7 +1195,7 @@ $dairyNameCaps produced <<print _milkWeek+_outputMilk>> liters of milk<<if _cumW <!-- Statistics output --> <<includeDOM App.Facilities.Dairy.Stats(false)>> <<timed 50ms>> - <<replace #dairystats>> + <<replace #dairy-stats>> <<includeDOM App.Facilities.Dairy.Stats(true)>> <</replace>> <</timed>> diff --git a/src/uncategorized/economics.tw b/src/uncategorized/economics.tw index 848af19499abf87c5411c8f2feddd2509b39d5fb..6921cffd81da539eaab87b6382dd5bba4d0c3b20 100644 --- a/src/uncategorized/economics.tw +++ b/src/uncategorized/economics.tw @@ -31,7 +31,7 @@ <<include "Corporation Developments">> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <br> <<include "authorityReport">> <<include "securityReport">> @@ -48,40 +48,40 @@ <<else>> <body> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Arcologies')" id="defaultOpen">Arcologies</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Management')">Arcology Management</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Arcologies')" id="defaultOpen">Arcologies</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Management')">Arcology Management</button> <<if $FSAnnounced > 0>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Societies')">Society Development</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Societies')">Society Development</button> <</if>> <<if $corp.Incorporated == 1>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Corporation')">Corporation Developments</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Corporation')">Corporation Developments</button> <</if>> - <<if $secExpEnabled == 1>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Authority')">Authority</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'securityReport')">Security</button> + <<if $secExpEnabled > 0>> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Authority')">Authority</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'securityReport')">Security</button> <</if>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Reputation')">Reputation</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Business')">Personal Business</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Reputation')">Reputation</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Business')">Personal Business</button> <<if $PC.boobs >= 1000 || $PC.pregKnown == 1 || $playerAging != 0>> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Personal')">Personal Notes</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Personal')">Personal Notes</button> <</if>> </div> -<div id="Arcologies" class="tabcontent"> +<div id="Arcologies" class="tab-content"> <div class="content"> <<include "Neighbors Development">> </div> </div> -<div id="Management" class="tabcontent"> +<div id="Management" class="tab-content"> <div class="content"> <<include "Arcology Management">> </div> </div> <<if $FSAnnounced > 0>> - <div id="Societies" class="tabcontent"> + <div id="Societies" class="tab-content"> <div class="content"> <<include "FS Developments">> </div> @@ -89,7 +89,7 @@ <</if>> <<if $corp.Incorporated == 1>> - <div id="Corporation" class="tabcontent"> + <div id="Corporation" class="tab-content"> <div class="content"> <<include "Corporation Developments">> </div> @@ -97,33 +97,33 @@ <</if>> <<if $secExpEnabled > 0>> - <div id="Authority" class="tabcontent"> + <div id="Authority" class="tab-content"> <div class="content"> <<include "authorityReport">> </div> </div> - <div id="securityReport" class="tabcontent"> + <div id="securityReport" class="tab-content"> <div class="content"> <<include "securityReport">> </div> </div> <</if>> -<div id="Reputation" class="tabcontent"> +<div id="Reputation" class="tab-content"> <div class="content"> <<include "Reputation">> </div> </div> -<div id="Business" class="tabcontent"> +<div id="Business" class="tab-content"> <div class="content"> <<include "Personal Business">> </div> </div> <<if $PC.boobs >= 1000 || $PC.pregKnown == 1 || $playerAging != 0>> - <div id="Personal" class="tabcontent"> + <div id="Personal" class="tab-content"> <div class="content"> <<include "Personal Notes">> </div> diff --git a/src/uncategorized/fsDevelopments.tw b/src/uncategorized/fsDevelopments.tw index b677953eac82ff06f5f919aac5236da06d0e0509..968480e655b5178e55d1239ab3ffe4820c1f0a8e 100644 --- a/src/uncategorized/fsDevelopments.tw +++ b/src/uncategorized/fsDevelopments.tw @@ -73,7 +73,7 @@ <</if>> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <<if $SecExp.buildings.propHub.active > 0 && $SecExp.buildings.propHub.campaign >= 1 && $SecExp.buildings.propHub.focus == "social engineering">> Your propaganda campaign helps further your societal engineering efforts. <<if $SecExp.buildings.propHub.recruiterOffice == 0 || $RecruiterID == 0>> @@ -169,7 +169,7 @@ <<run FutureSocieties.applyBroadProgress(0, _broadProgress)>> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <<if $SecExp.edicts.slaveWatch == 1>> The Slave Mistreatment Watch helps many slaves, easing your citizens into the paternalist ideals it represents. <<= FutureSocieties.Change("Paternalist", 2)>> diff --git a/src/uncategorized/genericPlotEvents.tw b/src/uncategorized/genericPlotEvents.tw index dc75545c66f7cf0ea215b6eb77e1dd6bbff5ee58..988eb571bd72107c6ca163325b006f6b9894037b 100644 --- a/src/uncategorized/genericPlotEvents.tw +++ b/src/uncategorized/genericPlotEvents.tw @@ -1163,7 +1163,7 @@ A screen opposite your desk springs to life, <<if $assistant.personality == 0>>s <<set $activeSlave.behavioralFlaw = "arrogant">> <<set $activeSlave.sexualFlaw = "idealistic">> <<setLocalPronouns $activeSlave>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -1221,7 +1221,7 @@ A screen opposite your desk springs to life, <<if $assistant.personality == 0>>s <<set $activeSlave.behavioralFlaw = "anorexic">> <<set $activeSlave.sexualFlaw = "idealistic">> <<setLocalPronouns $activeSlave>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -1272,7 +1272,7 @@ A screen opposite your desk springs to life, <<if $assistant.personality == 0>>s <<set $activeSlave.behavioralFlaw = "bitchy">> <<set $activeSlave.sexualFlaw = "hates anal">> <<setLocalPronouns $activeSlave>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -1330,7 +1330,7 @@ A screen opposite your desk springs to life, <<if $assistant.personality == 0>>s <<set $activeSlave.sexualFlaw = "none">> <<set $activeSlave.behavioralFlaw = "odd">> <<setLocalPronouns $activeSlave>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/industrialDairyAssignmentScene.tw b/src/uncategorized/industrialDairyAssignmentScene.tw index f11092ded5895057c367edd4fa235544afd3bf37..055c0d705629e2744495c2438113a76160d5f557 100644 --- a/src/uncategorized/industrialDairyAssignmentScene.tw +++ b/src/uncategorized/industrialDairyAssignmentScene.tw @@ -4,7 +4,7 @@ <<setLocalPronouns $activeSlave>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/manageArcology.tw b/src/uncategorized/manageArcology.tw index 9a50bee0d2bd6655f69d86b29f1a1f02a937fde5..2a62ac0b99de5e8de26250ea3729654ac68be83f 100644 --- a/src/uncategorized/manageArcology.tw +++ b/src/uncategorized/manageArcology.tw @@ -113,7 +113,7 @@ You have not installed an FCTV receiver. Installing this receiver yourself will cost <<print cashFormat(_noSub)>>. - You can have your citizens pay for the fiberoptic upgrades, reducing the cost to <<print cashFormat(_lightSub)>>. + You can have your citizens pay for the fiber optic upgrades, reducing the cost to <<print cashFormat(_lightSub)>>. You can also have them heavily subsidize installation, they will be upset about it, but it will only cost <<print cashFormat(_heavySub)>>. <<link "No subsidy" "Manage Arcology">> @@ -175,13 +175,13 @@ <</if>> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <h2>Security</h2> <p> <div> <<if $SecExp.buildings.propHub.active == 0>> - [[Set up the propaganda Hub|Manage Arcology][cashX(forceNeg(Math.trunc((5000*$upgradeMultiplierArcology*$HackingSkillMultiplier))), "capEx"), $SecExp.buildings.propHub.active = 1, $PC.skill.engineering += 1, $PC.skill.hacking += 1, App.SecExp.Check.general()]] + [[Set up the propaganda Hub|Manage Arcology][cashX(forceNeg(Math.trunc((5000*$upgradeMultiplierArcology*$HackingSkillMultiplier))), "capEx"), $SecExp.buildings.propHub.active = 1, $PC.skill.engineering += 1, $PC.skill.hacking += 1, App.SecExp.generalBC()]] <span class="detail"> Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology*$HackingSkillMultiplier)))>>. <div class="indent">Building specialized in the management of authority.</div> @@ -205,7 +205,7 @@ <div> <<if $SecExp.buildings.barracks.active == 0>> - [[Set up the barracks|Manage Arcology][cashX(forceNeg(Math.trunc(5000*$upgradeMultiplierArcology)), "capEx"), $SecExp.buildings.barracks.active = 1, $PC.skill.engineering += 1, App.SecExp.Check.general()]] + [[Set up the barracks|Manage Arcology][cashX(forceNeg(Math.trunc(5000*$upgradeMultiplierArcology)), "capEx"), $SecExp.buildings.barracks.active = 1, $PC.skill.engineering += 1, App.SecExp.generalBC()]] <span class="detail"> Costs <<print cashFormat(Math.trunc(5000*$upgradeMultiplierArcology))>> <div class="indent">Building specialized in the management of armed forces.</div> @@ -530,7 +530,7 @@ </p> <</if>> -<<if $secExpEnabled == 1 && $SecExp.settings.battle.enabled == 1>> +<<if $secExpEnabled > 0 && $SecExp.settings.battle.enabled == 1>> <p> <<if $SF.Toggle === 0||$SF.Active === 0>> Your army counts <<print num(App.SecExp.Manpower.employedOverall)>> total soldiers. diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw index e1c11a958be72e0729dde7661739f39814c881cf..d8ff46b2b6f82bfa8ce24240514fa5c1b8d8ebcc 100644 --- a/src/uncategorized/neighborsDevelopment.tw +++ b/src/uncategorized/neighborsDevelopment.tw @@ -307,7 +307,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if random(0,100) >= _Catchchance-(10*$arcologies[0].CyberEconomic)>> <<set $arcologies[0].prosperity -= $arcologies[0].CyberEconomic*3, _redHanded = 1>> <<run repX(forceNeg(random(100,200)), "war")>> - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> <<set $SecExp.core.authority -= random(100,500)*$arcologies[0].CyberEconomic, $SecExp.core.crimeLow += random(10,25)>> <</if>> <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity, 1, $AProsperityCap)>> @@ -316,7 +316,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<run cashX(_WarSpoils, "war")>> <<if _redHanded == 1>> A successful trace back to your arcology has exposed your actions, @@.red;damaging your reputation@@ and @@.red;scaring away potential investors.@@ - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> To add insult to injury, @@.red;your authority has been weakened@@ and your actions have painted your arcology as a @@.red;haven for crime.@@ <</if>> <</if>> @@ -349,7 +349,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if random(0,100) >= _Catchchance-(10*$arcologies[0].CyberReputation)>> <<set $arcologies[0].prosperity -= $arcologies[0].CyberReputation*3, _redHanded = 1>> <<run repX(forceNeg(random(100,200)), "war")>> - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> <<set $SecExp.core.authority -= random(100,500)*$arcologies[0].CyberReputation, $SecExp.core.crimeLow += random(10,25)>> <</if>> <<set $arcologies[0].prosperity = Math.clamp($arcologies[0].prosperity, 1, 300)>> @@ -357,7 +357,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh You target $arcologies[$i].name's leadership for @@.yellow;character assassination@@ in an attempt to destabilize the arcology. <<if _redHanded == 1>> A successful trace back to your arcology has exposed your actions, @@.red;damaging your reputation@@ and @@.red;scaring away potential investors.@@ - <<if $secExpEnabled == 1>> + <<if $secExpEnabled > 0>> To add insult to injury, @@.red;your authority has been weakened@@ and your actions have painted your arcology as a @@.red;haven for crime.@@ <</if>> <</if>> @@ -426,29 +426,29 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh Racial Supremacy for $arcologies[$i].FSSupremacistRace people has reached stability and acceptance there. The arcology has been renamed <<switch $arcologies[$i].FSSupremacistRace>> <<case "white">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistWhite.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistWhite)>> <<case "asian">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistAsian.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistAsian)>> <<case "latina">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistLatina.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistLatina)>> <<case "middle eastern">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistMiddleEastern.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistMiddleEastern)>> <<case "black">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistBlack.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistBlack)>> <<case "indo-aryan">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistIndoAryan.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistIndoAryan)>> <<case "pacific islander">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistPacificIslander.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistPacificIslander)>> <<case "malay">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistMalay.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistMalay)>> <<case "amerindian">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistAmerindian.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistAmerindian)>> <<case "southern european">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistSouthernEuropean.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistSouthernEuropean)>> <<case "semitic">> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistSemitic.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistSemitic)>> <<default>> - <<set $arcologies[$i].name = setup.ArcologyNamesSupremacistMixedRace.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSupremacistMixedRace)>> <</switch>> '' $arcologies[$i].name'' to mark the occasion. <</if>> @@ -476,29 +476,29 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh Racial Subjugationism of $arcologies[$i].FSSubjugationistRace people has reached stability and acceptance there. The arcology has been renamed <<switch $arcologies[$i].FSSubjugationistRace>> <<case "white">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistWhite.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistWhite)>> <<case "asian">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistAsian.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistAsian)>> <<case "latina">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistLatina.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistLatina)>> <<case "middle eastern">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistMiddleEastern.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistMiddleEastern)>> <<case "black">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistBlack.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistBlack)>> <<case "indo-aryan">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistIndoAryan.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistIndoAryan)>> <<case "pacific islander">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistPacificIslander.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistPacificIslander)>> <<case "malay">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistMalay.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistMalay)>> <<case "amerindian">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistAmerindian.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistAmerindian)>> <<case "southern european">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistSouthernEuropean.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistSouthernEuropean)>> <<case "semitic">> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistSemitic.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistSemitic)>> <<default>> - <<set $arcologies[$i].name = setup.ArcologyNamesSubjugationistMixedRace.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSubjugationistMixedRace)>> <</switch>> '' $arcologies[$i].name'' to mark the occasion. <</if>> @@ -524,7 +524,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSRepopulationFocus >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Repopulationism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name to setup.ArcologyNamesRepopulationist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesRepopulationist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSRepopulationFocus < 0>> @@ -556,7 +556,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> <<set $arcologies[$i].FSRestartResearch = 1>> Eugenics has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesEugenics.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesEugenics)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSRestart < 0>> @@ -590,7 +590,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> <<set $arcologies[$i].FSGenderRadicalistResearch = 1>> Gender Radicalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesGenderRadicalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesGenderRadicalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSGenderRadicalist < 0>> @@ -627,7 +627,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSGenderFundamentalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Gender Fundamentalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesGenderFundamentalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesGenderFundamentalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSGenderFundamentalist < 0>> @@ -652,7 +652,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSPaternalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Paternalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesPaternalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesPaternalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSPaternalist < 0>> @@ -684,7 +684,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSDegradationist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Degradationism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesDegradationist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesDegradationist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSDegradationist < 0>> @@ -718,7 +718,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSIntellectualDependency >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Intellectual Dependency has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesIntellectualDependency.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesIntellectualDependency)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSIntellectualDependency < 0>> @@ -746,7 +746,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> <<set $arcologies[$i].FSSlaveProfessionalismResearch = 1>> Slave Professionalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesSlaveProfessionalism.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSlaveProfessionalism)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSSlaveProfessionalism < 0>> @@ -789,7 +789,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSBodyPurist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Body Purism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesBodyPurist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesBodyPurist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSBodyPurist < 0>> @@ -815,7 +815,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> <<set $arcologies[$i].FSTransformationFetishistResearch = 1>> Transformation Fetishism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesTransformationFetishist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesTransformationFetishist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSTransformationFetishist < 0>> @@ -845,11 +845,11 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Youth Preferentialism has reached stability and acceptance there. The arcology has been renamed <<if $pedo_mode == 1 || $minimumSlaveAge < 6>> - <<set $arcologies[$i].name = setup.ArcologyNamesYouthPreferentialistLow.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesYouthPreferentialistLow)>> <<elseif $minimumSlaveAge < 14>> <<set $arcologies[$i].name = either(setup.ArcologyNamesYouthPreferentialist, setup.ArcologyNamesYouthPreferentialistLow)>> <<else>> - <<set $arcologies[$i].name = setup.ArcologyNamesYouthPreferentialist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesYouthPreferentialist)>> <</if>> '' $arcologies[$i].name'' to mark the occasion. <<set $arcologies[$i].FSYouthPreferentialistResearch = 1>> @@ -874,7 +874,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSMaturityPreferentialist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Maturity Preferentialism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesMaturityPreferentialist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesMaturityPreferentialist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSMaturityPreferentialist < 0>> @@ -899,7 +899,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSPetiteAdmiration >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Petite Admiration has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesPetiteAdmiration.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesPetiteAdmiration)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSPetiteAdmiration < 0>> @@ -926,7 +926,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSStatuesqueGlorification >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Statuesque Glorification has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesStatuesqueGlorification.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesStatuesqueGlorification)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSStatuesqueGlorification < 0>> @@ -955,7 +955,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSSlimnessEnthusiast >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Slimness Enthusiasm has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesSlimnessEnthusiast.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesSlimnessEnthusiast)>> '' $arcologies[$i].name'' to mark the occasion. <<set $arcologies[$i].FSSlimnessEnthusiastResearch = 1>> <</if>> @@ -982,7 +982,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> <<set $arcologies[$i].FSAssetExpansionistResearch = 1>> Asset Expansionism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesAssetExpansionist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesAssetExpansionist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSAssetExpansionist < 0>> @@ -1015,7 +1015,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSPastoralist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Pastoralism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesPastoralist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesPastoralist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSPastoralist < 0>> @@ -1042,7 +1042,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSCummunism >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Cummunism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesCummunism.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesCummunism)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSCummunism < 0>> @@ -1075,7 +1075,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSPhysicalIdealist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Physical Idealism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesPhysicalIdealist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesPhysicalIdealist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSPhysicalIdealist < 0>> @@ -1107,7 +1107,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> <<set $arcologies[$i].FSHedonisticDecadenceResearch = 1>> Decadent Hedonism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesHedonisticDecadence.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesHedonisticDecadence)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSHedonisticDecadence < 0>> @@ -1136,7 +1136,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSIncestFetishist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Incest Fetishism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesIncestFetishist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesIncestFetishist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSIncestFetishist < 0>> @@ -1161,7 +1161,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSChattelReligionist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Chattel Religionism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesChattelReligionist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesChattelReligionist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSChattelReligionist < 0>> @@ -1190,7 +1190,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSRomanRevivalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Roman Revivalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesRomanRevivalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesRomanRevivalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSRomanRevivalist < 0>> @@ -1213,7 +1213,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSAztecRevivalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Aztec Revivalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesAztecRevivalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesAztecRevivalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSAztecRevivalist < 0>> @@ -1236,7 +1236,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSEgyptianRevivalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Egyptian Revivalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesEgyptianRevivalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesEgyptianRevivalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSEgyptianRevivalist < 0>> @@ -1259,7 +1259,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSEdoRevivalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Edo Revivalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesEdoRevivalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesEdoRevivalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSEdoRevivalist < 0>> @@ -1282,7 +1282,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSArabianRevivalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Arabian Revivalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesArabianRevivalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesArabianRevivalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSArabianRevivalist < 0>> @@ -1309,7 +1309,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<if $arcologies[$i].FSChineseRevivalist >= $FSLockinLevel>> <<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>> Chinese Revivalism has reached stability and acceptance there. The arcology has been renamed - <<set $arcologies[$i].name = setup.ArcologyNamesChineseRevivalist.random()>> + <<set $arcologies[$i].name = App.Neighbor.getUnusedName(setup.ArcologyNamesChineseRevivalist)>> '' $arcologies[$i].name'' to mark the occasion. <</if>> <<elseif $arcologies[$i].FSChineseRevivalist < 0>> diff --git a/src/uncategorized/nonRandomEvent.tw b/src/uncategorized/nonRandomEvent.tw index 573fa262fc2a85d246ed8c94b5b329bfb6864258..a99b773fdf86ff040f72a29147229371c2c5836b 100644 --- a/src/uncategorized/nonRandomEvent.tw +++ b/src/uncategorized/nonRandomEvent.tw @@ -171,13 +171,7 @@ <<goto "P slave medic">> <<elseif ($eventResults.pit == 1) && ($BodyguardID != 0)>> <<goto "PE pit fight">> -<<elseif $rivalOwner == 0 && $smilingManProgress == 0 && _effectiveWeek >= 74 && $secExpEnabled == 1>> - <<goto "secExpSmilingMan">> -<<elseif $rivalOwner == 0 && $smilingManProgress == 1 && _effectiveWeek >= 77 && $secExpEnabled == 1>> - <<goto "secExpSmilingMan">> -<<elseif $rivalOwner == 0 && $smilingManProgress == 2 && _effectiveWeek >= 82 && $secExpEnabled == 1>> - <<goto "secExpSmilingMan">> -<<elseif $rivalOwner == 0 && $smilingManProgress == 3 && $secExpEnabled == 1>> +<<elseif $rivalOwner == 0 && $secExpEnabled > 0 && between($SecExp.smilingMan.progress, 0, 3)>> <<goto "secExpSmilingMan">> <<elseif ($rivalOwner == 0) && ($seeFCNN == 1) && ($FCNNstation == 0) && ($week > 95) && ($cash > 200000) && ($rep > 7500)>> <<goto "SE FCNN Station">> diff --git a/src/uncategorized/pBombing.tw b/src/uncategorized/pBombing.tw index 4b2ee2408738518c0b286d657b25451773a906a7..326c587dd7b3c2a454b8e913340f86dc2b207d19 100644 --- a/src/uncategorized/pBombing.tw +++ b/src/uncategorized/pBombing.tw @@ -5,7 +5,7 @@ <<if _S.Bodyguard>> <<setLocalPronouns _S.Bodyguard>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/pFSAnnouncement.tw b/src/uncategorized/pFSAnnouncement.tw index 9c69c593011701100c627e3d3a4862e7d3867eeb..6212bec9ace4f67d8add784b98b2178ad80c2bc8 100644 --- a/src/uncategorized/pFSAnnouncement.tw +++ b/src/uncategorized/pFSAnnouncement.tw @@ -6,7 +6,7 @@ <<set $FSGotRepCredits = 1>> <<setAssistantPronouns>> -<span id="artFrame"> +<span id="art-frame"> <<if $seeImages == 1>><<= assistantArt(3)>><</if>> </span> diff --git a/src/uncategorized/pHostageAcquisition.tw b/src/uncategorized/pHostageAcquisition.tw index fd794612e3ed58381634c2683ccf46948b4ce80b..583635f0ffa1d2225e987bf27c830015b7e8480b 100644 --- a/src/uncategorized/pHostageAcquisition.tw +++ b/src/uncategorized/pHostageAcquisition.tw @@ -15,7 +15,7 @@ <<setSpokenLocalPronouns getSlave($AS) $hostageWife>> <</if>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/pRivalryHostage.tw b/src/uncategorized/pRivalryHostage.tw index f02aee2379fdba2b360534a35323f64808c5b77c..e94b8d581e099f434e603736639edeb3a395f4c4 100644 --- a/src/uncategorized/pRivalryHostage.tw +++ b/src/uncategorized/pRivalryHostage.tw @@ -232,7 +232,7 @@ <<setLocalPronouns $hostageWife 2>> <</switch>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/pSlaveMedic.tw b/src/uncategorized/pSlaveMedic.tw index 54bccde7d9a969542fd670bd7f6817a3ea36ecda..736f4f573cb775c97271ff91db61455537739df3 100644 --- a/src/uncategorized/pSlaveMedic.tw +++ b/src/uncategorized/pSlaveMedic.tw @@ -78,7 +78,7 @@ <<set $activeSlave.counter.publicUse += 13>> <</if>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/peCombatTraining.tw b/src/uncategorized/peCombatTraining.tw index b8d5bc9452148237f8beda5767b3db64bc7cd2a4..e6578d7056733757bb7d8fe040cca22095d2ee69 100644 --- a/src/uncategorized/peCombatTraining.tw +++ b/src/uncategorized/peCombatTraining.tw @@ -5,7 +5,7 @@ <<set $activeSlave = _S.Bodyguard>> <<setLocalPronouns $activeSlave>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/peConcubineInterview.tw b/src/uncategorized/peConcubineInterview.tw index bb85625c4f900354a789e191213f3bdb003e3f6e..23b44f846a29ddc4fd6b9319b2d5504779d7bfef 100644 --- a/src/uncategorized/peConcubineInterview.tw +++ b/src/uncategorized/peConcubineInterview.tw @@ -12,7 +12,7 @@ <<setPlayerPronouns>> <<setSpokenPlayerPronouns $activeSlave>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/peHeadgirlConcubine.tw b/src/uncategorized/peHeadgirlConcubine.tw index 4bc9ea2986100693642d89d3082ce0ca8ee42450..1d46b22dc1af5f57f2019eab71a1abd4722953c4 100644 --- a/src/uncategorized/peHeadgirlConcubine.tw +++ b/src/uncategorized/peHeadgirlConcubine.tw @@ -8,7 +8,7 @@ <<set _bellyCon = bellyAdjective(_S.Concubine)>> <<setAssistantPronouns>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/peLonelyBodyguard.tw b/src/uncategorized/peLonelyBodyguard.tw index bccd428a8b32e8adf289d122e9ee45c06a15b608..c9709685643bbc8c91c107ae52b235379f08287e 100644 --- a/src/uncategorized/peLonelyBodyguard.tw +++ b/src/uncategorized/peLonelyBodyguard.tw @@ -13,7 +13,7 @@ <<setLocalPronouns $activeSlave>> <<setLocalPronouns $slaves[$j] 2>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/pePitFight.tw b/src/uncategorized/pePitFight.tw index 6c5dfb6693625bbf9881d9bcc1f122dec17a4969..cf39af04ca2b970d651b710999d12afa7c2b9717 100644 --- a/src/uncategorized/pePitFight.tw +++ b/src/uncategorized/pePitFight.tw @@ -9,7 +9,7 @@ <<set $eventResults.pit = 0>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> <<if $seeImages == 1>> diff --git a/src/uncategorized/pePitFightInvite.tw b/src/uncategorized/pePitFightInvite.tw index c526a82b1f0f7906fba30e5c141103212f37c1ac..0ea1fc396dfe452fd17c0363f79fd88041171054 100644 --- a/src/uncategorized/pePitFightInvite.tw +++ b/src/uncategorized/pePitFightInvite.tw @@ -5,7 +5,7 @@ <<set $eventResults.pit = 0>> <<setLocalPronouns _S.Bodyguard>> -<span id="artFrame"> +<span id="art-frame"> </span> <p>Gladiatorial combat between slaves has not yet reached the level of social acceptability it once enjoyed in Rome, but it's growing in popularity. For now, most fights are discreet affairs limited to select guests. Displaying a slave bodyguard is an excellent way to get yourself invited to participate, and $assistant.name has just passed on an invitation to a private fight next week, should you be willing to hazard a bodyguard.</p> @@ -16,8 +16,8 @@ <span id="result"> <<link "Enter your bodyguard as a gladiatrix">> - <<replace "#artFrame">> - <span id="artFrame"> + <<replace "#art-frame">> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/persBusiness.tw b/src/uncategorized/persBusiness.tw index 1411455f684e12a7f576e5445f0cfb015d0d1fc8..5c12c5d2a10572af99f35aff7f05db387ccdae23 100644 --- a/src/uncategorized/persBusiness.tw +++ b/src/uncategorized/persBusiness.tw @@ -667,7 +667,7 @@ This week your services to the highest bidder earned you @@.yellowgreen;<<print cashFormat(_windfall)>>.@@ <<if random(0,100) >= _Catchtchance>> However, since the source of the attack was traced back to your arcology, your - <<if $secExpEnabled == 1>> <<set _X = 1>> + <<if $secExpEnabled > 0>> <<set _X = 1>> @@.red;authority,@@ <<set $SecExp.core.authority -= random(100,500)>> @@.red;crime rate@@ <<set $SecExp.core.crimeLow += random(10,25)>> and <</if>> @@.red;reputation@@ <<run repX(forceNeg(random(50,500)), "event")>> @@ -726,8 +726,8 @@ <</if>> <</if>> -<<if $secExpEnabled == 1>> - <<if $smilingManFate == 0 && random(1,100) >= 85>> +<<if $secExpEnabled > 0>> + <<if $SecExp.smilingMan.progress === 10 && random(1,100) >= 85>> This week one of the offside adventures of The Smiling Man produced a copious amount of money, of which @@.yellowgreen;you receive your share.@@ <<run cashX(random(10,20) * 1000, "personalBusiness")>> <</if>> diff --git a/src/uncategorized/reAWOL.tw b/src/uncategorized/reAWOL.tw index bd60363f81a7b6d73ae2b9256ba9d6e34ed72788..e9df601411f8f6f5b4fb25149bb73c82950e88b5 100644 --- a/src/uncategorized/reAWOL.tw +++ b/src/uncategorized/reAWOL.tw @@ -42,7 +42,7 @@ <<setLocalPronouns $activeSlave>> <<setAssistantPronouns>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -86,7 +86,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <br> <<link "Let your mercenaries handle $him">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -114,7 +114,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <span id="SFresult"> <<link "You want $him dead">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<set $activeSlave.trust = 100>> @@ -139,7 +139,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <<link "You want $him alive">> <<replace "#SFresult">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<set $activeSlave.clothes = "chains">> @@ -156,10 +156,10 @@ Your window of opportunity to act is closing. If you have plans for punishing th <</replace>> It doesn't take long for a squad of $SF.Lower to track $him down. Soon you have the troublesome turncoat before you in chains. <br><br> - <span id="aliveResult"> + <span id="alive-result"> <<link "Enslave $him">> - <<replace "#aliveResult">> + <<replace "#alive-result">> Despite the trouble $he has caused you, you manage to complete the legalities and biometric scanning quickly and without incident. Of course, this is in large part due to the fact that the would-be mutineer is of course restrained. Based on the accounts of $his captors and the numerous injuries evident amongst them, $he is likely to be violent when $he is finally released. <br> <<include "New Slave Intro">> @@ -169,7 +169,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <br> <<link "Flog $him in public then exile $him from the arcology">> - <<replace "#aliveResult">> + <<replace "#alive-result">> An example must be made. There is a binding contract between you and your $mercenariesTitle, and this $woman attempted to undermine it for $his own selfish profit. The protesting bitch is stripped and flogged on the promenade before being escorted bleeding from the arcology. The public @@.green;approves of this harshness.@@ In addition @@.green;Arcology prosperity improves,@@ a result of showing your citizens that you are willing and able to deal with such matters in-house. <<set $arcologies[0].prosperity += 2>> <<run repX(5000, "event", $activeSlave)>> @@ -179,7 +179,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <</replace>> <</link>> - </span> /* closes aliveResult */ + </span> /* closes alive-result */ <</replace>> /* SFresult */ <</link>> /* want $him alive */ @@ -197,10 +197,10 @@ Your window of opportunity to act is closing. If you have plans for punishing th <<replace "#result">> You take a tablet and draft a bounty notice for the mutinous mercenary. When you have the majority of the pertinent details committed to text, all that remains is to decide the fate of your quarry. <br><br> - <span id="bountyResult"> + <span id="bounty-result"> <<link "You want $him dead">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -209,7 +209,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <</if>> /* 000-250-006 */ <</replace>> - <<replace "#bountyResult">> + <<replace "#bounty-result">> Despite the trouble $he has caused you, the culmination of this mercenary's wanton flight from the rest of the $mercenariesTitle is decidedly an anti-climax. The last you hear of $him is in the footnote of one of your daily reports, with some minute yet suitably gory pictures as an accompaniment. When the stolen weapons are returned to their rightful place in your arcology, the unfortunate matter is concluded once and for all. @@.green;Your reputation improves,@@ a result of the fear of crossing you that your unpleasantness has inspired. <<run repX(5000, "event", $activeSlave)>> <<run cashX(-5000, "capEx")>> @@ -219,7 +219,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <br> <<link "You want $him alive">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<set $activeSlave.clothes = "chains">> @@ -234,13 +234,13 @@ Your window of opportunity to act is closing. If you have plans for punishing th <</if>> /* 000-250-006 */ <</replace>> - <<replace "#bountyResult">> + <<replace "#bounty-result">> It doesn't take long for some hired guns, motivated by the bounty, to track $him down. Soon you have the troublesome turncoat before you in chains. <br><br> - <span id="aliveResult"> + <span id="alive-result"> <<link "Enslave $him">> - <<replace "#aliveResult">> + <<replace "#alive-result">> Despite the trouble $he has caused you, you manage to complete the legalities and biometric scanning quickly and without incident. Of course, this is in large part due to the fact that the would-be mutineer is of course restrained. Based on the accounts of $his captors and the numerous injuries evident amongst them, $he is likely to be violent when $he is finally released. <br> <<include "New Slave Intro">> @@ -251,18 +251,18 @@ Your window of opportunity to act is closing. If you have plans for punishing th <br> <<link "Flog $him in public then exile $him from the arcology">> - <<replace "#aliveResult">> + <<replace "#alive-result">> An example must be made. There is a binding contract between you and your $mercenariesTitle, and this $woman attempted to undermine it for $his own selfish profit. The protesting bitch is stripped and flogged on the promenade before being escorted bleeding from the arcology. The public @@.green;approves of this harshness.@@ <<run repX(5000, "event", $activeSlave)>> <<run cashX(-5000, "event", $activeSlave)>> <</replace>> <</link>> - </span> /* closes aliveResult */ - <</replace>> /* bountyResult */ + </span> /* closes alive-result */ + <</replace>> /* bounty-result */ <</link>> /* want $him alive */ - </span> /* closes bountyResult */ + </span> /* closes bounty-result */ <</replace>> /* result */ <</link>> // It will cost <<print cashFormat(5000)>> to put out a bounty on $him.// <</if>> /* cash >= 5000 */ diff --git a/src/uncategorized/reAnalPunishment.tw b/src/uncategorized/reAnalPunishment.tw index 36aff4000c744ec3b85af74f2360c5d77349420e..1a5900b5e0f1ae5d2e1798104012b2d83f09c24c 100644 --- a/src/uncategorized/reAnalPunishment.tw +++ b/src/uncategorized/reAnalPunishment.tw @@ -10,7 +10,7 @@ <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> <<set _clothesTemp2 = _S.HeadGirl.clothes, _S.HeadGirl.clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reCitizenHookup.tw b/src/uncategorized/reCitizenHookup.tw index 978e1071a042ac7e5e4b23de2450971179f5ebda..2c22eb3374ee2621aee130a180f3580fb23c767c 100644 --- a/src/uncategorized/reCitizenHookup.tw +++ b/src/uncategorized/reCitizenHookup.tw @@ -79,7 +79,7 @@ <<set _FS = "none">> <</if>> -At night, the best living areas in the arcology offer a constant mélange of selective entertainments. There's a perpetual social scrum of who is to be invited to what going on, and you occupy a preeminent place atop it, mostly aloof from the struggles of your citizens for recognition and influence. You're invited to almost everything, since everyone who lives here knows the value of being in favor with the owner of the arcology. Invitations to your parties, of course, are some of the most valuable social currency in the arcology and one of $assistant.name's most important duties is to help you manage them without wasting your valuable time. It's not actually necessary for you to attend your own parties, since almost everyone will be glad to be seen in the entertainment area of the penthouse whether or not the propriet<<if $PC.title == 1>>or<<else>>ress<</if>> is actually present. +At night, the best living areas in the arcology offer a constant mélange of selective entertainments. There's a perpetual social scrum of who is to be invited to what going on, and you occupy a preeminent place atop it, mostly aloof from the struggles of your citizens for recognition and influence. You're invited to almost everything, since everyone who lives here knows the value of being in favor with the owner of the arcology. Invitations to your parties, of course, are some of the most valuable social currency in the arcology and one of $assistant.name's most important duties is to help you manage them without wasting your valuable time. It's not actually necessary for you to attend your own parties, since almost everyone will be glad to be seen in the entertainment area of the penthouse whether or not the <<if $PC.title == 1>>proprietor<<else>>proprietress<</if>> is actually present. <br><br> But tonight, you've put in an appearance. Your citizens are drinking your <<if $arcologies[0].FSPastoralist != "unset">>milk<<elseif $arcologies[0].FSRestart != "unset">>finest alcohol<<else>>alcohol<</if>> and eating your food, though of course they helped pay for it through their rent. They're performing a complex dance of social dominance, and it all radiates around you, with complex unspoken rules of collective approval governing which citizens cycle past you for a word, and for how long. During a low point in the ebb and flow, <<switch _FS>> diff --git a/src/uncategorized/reDevotedMotherDaughter.tw b/src/uncategorized/reDevotedMotherDaughter.tw index d06df4e1e72e6db6b4ba85df1154173a3d00116a..9d099d17a10f4962c13b7cc70736bd2908a987ee 100644 --- a/src/uncategorized/reDevotedMotherDaughter.tw +++ b/src/uncategorized/reDevotedMotherDaughter.tw @@ -9,7 +9,7 @@ <<set _clothesTemp = $slaves[$i].clothes, $slaves[$i].clothes = "no clothing">> <<set _clothesTemp2 = $slaves[$j].clothes, $slaves[$j].clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reDevotedTwins.tw b/src/uncategorized/reDevotedTwins.tw index 8e296fbd8078650c9c2c129a460d94ca3d137272..42919e7b76c06e51e6282e7afd3306938522a5ff 100644 --- a/src/uncategorized/reDevotedTwins.tw +++ b/src/uncategorized/reDevotedTwins.tw @@ -5,7 +5,7 @@ <<set $i = $slaveIndices[$alphaTwin]>> <<set $j = $slaveIndices[$betaTwin]>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reHGReplacement.tw b/src/uncategorized/reHGReplacement.tw index dc36a1781077a82e0318506c935b86a4ad520550..99744aca87e3cfa0e4049dc279593933ce877490 100644 --- a/src/uncategorized/reHGReplacement.tw +++ b/src/uncategorized/reHGReplacement.tw @@ -8,7 +8,7 @@ <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> <<set _clothesTemp2 = _S.HeadGirl.clothes>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reLegendaryBalls.tw b/src/uncategorized/reLegendaryBalls.tw index 0be83dcb1315a21f24da045a8e5901f3c1f285be..4338c32638cc357f5651a4759e93462437f322be 100644 --- a/src/uncategorized/reLegendaryBalls.tw +++ b/src/uncategorized/reLegendaryBalls.tw @@ -10,7 +10,7 @@ <<setLocalPronouns $activeSlave>> <<set $activeSlave.devotion += 4>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/reLegendaryCow.tw b/src/uncategorized/reLegendaryCow.tw index 5d8ee0f4274dd7a46c2f5457131a356b280d75a7..a5377b545cc43a25fd34e4f6eee0a919ecba84ab 100644 --- a/src/uncategorized/reLegendaryCow.tw +++ b/src/uncategorized/reLegendaryCow.tw @@ -10,7 +10,7 @@ <<setLocalPronouns $activeSlave>> <<set $activeSlave.devotion += 4>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/reLegendaryEntertainer.tw b/src/uncategorized/reLegendaryEntertainer.tw index d449cc093540fbb334fb250f3cb185e72aaba568..1430e9cd1cf0a0e118059c19814016b910c7c1ad 100644 --- a/src/uncategorized/reLegendaryEntertainer.tw +++ b/src/uncategorized/reLegendaryEntertainer.tw @@ -10,7 +10,7 @@ <<setLocalPronouns $activeSlave>> <<set $activeSlave.devotion += 4>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/reLegendaryWhore.tw b/src/uncategorized/reLegendaryWhore.tw index 65044188a1fc3386078ca6081be4c8e66be7eb39..792e9ad19fd07e987d8198cfa1c6956ed56055fd 100644 --- a/src/uncategorized/reLegendaryWhore.tw +++ b/src/uncategorized/reLegendaryWhore.tw @@ -10,7 +10,7 @@ <<setLocalPronouns $activeSlave>> <<set $activeSlave.devotion += 4>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/reMilfTourist.tw b/src/uncategorized/reMilfTourist.tw index 89a30b0184ff351a326ba457f1fc3619a71c9b14..3a902033b0c4518ed5f13d35907cee59a20b6de4 100644 --- a/src/uncategorized/reMilfTourist.tw +++ b/src/uncategorized/reMilfTourist.tw @@ -31,7 +31,7 @@ <<set $activeSlave.canRecruit = 0>> <<set $activeSlave.clothes = "nice business attire">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -152,7 +152,7 @@ <<if $cash > 20000>> <br><<link "Enslave _him2">> <<set $activeSlave.clothes = "no clothing">> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reNickname.tw b/src/uncategorized/reNickname.tw index a3d528b4c977e4ce92fa78df0d82933dea28db11..2b14dd84e0d5918ec49832e24804959d96b67128 100644 --- a/src/uncategorized/reNickname.tw +++ b/src/uncategorized/reNickname.tw @@ -1239,7 +1239,7 @@ <<set _notApplyDesc = "will try $his best to keep up with what's demanded of a sex slave, despite the annoyance of lacking genitals.">> <</switch>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/rePokerNight.tw b/src/uncategorized/rePokerNight.tw index 8e30381da481a1d09c793acaf6dd3fc9ac079251..21ba7d29dc61c380dc48987580ec6029cd2caaf3 100644 --- a/src/uncategorized/rePokerNight.tw +++ b/src/uncategorized/rePokerNight.tw @@ -4,7 +4,7 @@ <<setAssistantPronouns>> -<span id="artFrame"> +<span id="art-frame"> </span> Despite their persistent presence in your arcology, interaction with your mercenaries is relatively scarce. Aside from mutually exchanged nods on the street and the occasional briefing, your $mercenariesTitle enjoy a degree of autonomy. @@ -38,9 +38,9 @@ On a particularly lackadaisical evening, you find yourself alerted to a message <<replace "#result">> You instruct $assistant.name to inform your $mercenariesTitle that you will be attending their poker night, and after settling your affairs in the penthouse you head down to the barracks. Unsurprisingly the atmosphere in the barracks is casual, especially in comparison to the high stakes games commonplace in arcology high society, though your mercenaries still maintain some measure of decorum towards you as their employer. Eventually, you settle in at the table with a handful of $mercenariesTitle officers and cash in your <<print cashFormat(5000)>> into chips. All that remains is to decide your strategy for the night. <br><br> - <span id="bountyResult"> + <span id="bounty-result"> <<link "Play it safe">> - <<replace "#bountyResult">> + <<replace "#bounty-result">> <<if random(1,100) > 50>> Despite your attempts to mitigate risk and play the safest hands possible, it seems lady luck has conspired against you this evening. However, even when your last chip is spent, your mercenaries pitch you a few chips to keep you in the game for the rest of the night. You may have lost most of your ¤, but it seems you've @@.green;made some friends.@@ <<run repX(5000, "event")>> @@ -92,7 +92,7 @@ On a particularly lackadaisical evening, you find yourself alerted to a message <<set $activeSlave.custom.tattoo = "$He has a number of tattoos from a variety of mercenary companies.">> <<set $activeSlave.clothes = "a military uniform">> <<setLocalPronouns $activeSlave>> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -103,19 +103,19 @@ On a particularly lackadaisical evening, you find yourself alerted to a message <</if>> /* 000-250-006 */ <</replace>> - <<replace "#bountyResult">> + <<replace "#bounty-result">> Some aggressive play and an eye for riling up your fellow players has resulted in an immense payout, and all but one of your adversaries have folded as the situation has escalated. The only player still in contention is a wily old mercenary, the veteran of $his fair share of battles on the battlefield and at the poker table. $He's short on chips, however, and $he'll have to buy in with something else as collateral. <br><br> - <span id="aliveResult"> + <span id="alive-result"> <<set $activeSlave.clothes = "no clothing">> <<link "A year of servitude">> - <<replace "#aliveResult">> + <<replace "#alive-result">> <<if random(1,100) > 50>> For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck was not on your side. As the victor sweeps up $his spoils, the other mercenaries clap you on the back and offer their condolences for your defeat. Though you may have lost your ¤, it seems you've @@.green;made some friends.@@ <<run repX(5000, "event")>> <<run cashX(-5000, "event")>> <<else>> - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -134,7 +134,7 @@ On a particularly lackadaisical evening, you find yourself alerted to a message <</link>> <br> <<link "Dock $his wages">> - <<replace "#aliveResult">> + <<replace "#alive-result">> <<if random(1,100) > 50>> For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck was not on your side. As the victor sweeps up $his spoils, the other mercenaries clap you on the back and offer their condolences for your defeat. Though you may have lost your ¤, it seems you've @@.green;made some friends.@@ <<run repX(5000, "event")>> diff --git a/src/uncategorized/reRebels.tw b/src/uncategorized/reRebels.tw index 7f4f398b3ef801c2b5a654a272812c47c685eb69..7a375259f60005855d0a762879594a35dca0c7fe 100644 --- a/src/uncategorized/reRebels.tw +++ b/src/uncategorized/reRebels.tw @@ -10,7 +10,7 @@ <<set _clothesTemp = $slaves[_i].clothes, $slaves[_i].clothes = "no clothing">> <<set _clothesTemp2 = $slaves[_j].clothes, $slaves[_j].clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reRelationshipAdvice.tw b/src/uncategorized/reRelationshipAdvice.tw index 3a152ce5aabbfa71444fcea109a85f7fe325a232..a4b19f995d35c1528407513e4354601ad187fa6b 100644 --- a/src/uncategorized/reRelationshipAdvice.tw +++ b/src/uncategorized/reRelationshipAdvice.tw @@ -9,7 +9,7 @@ <<setLocalPronouns $subSlave 2>> <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reShelterInspection.tw b/src/uncategorized/reShelterInspection.tw index b43b73611cf03f0a117a51375280f534ce49da9c..2a13dff6198632d1ccec9efe84569beb6ffeeaa5 100644 --- a/src/uncategorized/reShelterInspection.tw +++ b/src/uncategorized/reShelterInspection.tw @@ -50,7 +50,7 @@ <<run Enunciate($activeSlave)>> <<setSpokenLocalPronouns _Inspectee $activeSlave>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reShowerPunishment.tw b/src/uncategorized/reShowerPunishment.tw index 8dfbfbc377f6ae0797762800a66340e2ab3f6be8..a52d759f5af3e4c162e608eca856c2415a7638fa 100644 --- a/src/uncategorized/reShowerPunishment.tw +++ b/src/uncategorized/reShowerPunishment.tw @@ -10,7 +10,7 @@ <<set _clothesTemp = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> <<set _clothesTemp2 = _S.HeadGirl.clothes, _S.HeadGirl.clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reSiblingRevenge.tw b/src/uncategorized/reSiblingRevenge.tw index 56b26c72ffd7d6acbd925f9759c4d22d5f0ea123..26afae3a83513ef64e620d556c1336c341cdd278 100644 --- a/src/uncategorized/reSiblingRevenge.tw +++ b/src/uncategorized/reSiblingRevenge.tw @@ -9,7 +9,7 @@ <<set _clothesTemp = $slaves[$i].clothes, $slaves[$i].clothes = "no clothing">> <<set _clothesTemp2 = $slaves[$j].clothes, $slaves[$j].clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reSlaveMarriage.tw b/src/uncategorized/reSlaveMarriage.tw index 2e305bdb97c80687ae74e479770bc7d039d94e90..c3cd995568140bd43c698663597177ecb6b9bae6 100644 --- a/src/uncategorized/reSlaveMarriage.tw +++ b/src/uncategorized/reSlaveMarriage.tw @@ -10,7 +10,7 @@ <<setLocalPronouns _brideSlave 2>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/reStaffedMorning.tw b/src/uncategorized/reStaffedMorning.tw index a46689dd6fcb96c8884cd8515801459ab1d3618f..9bbd9fde9e61cf90b823ad9bb4cf050afbbe1a26 100644 --- a/src/uncategorized/reStaffedMorning.tw +++ b/src/uncategorized/reStaffedMorning.tw @@ -14,7 +14,7 @@ <<set _clothesTemp = _bedSlaves[1].clothes, _bedSlaves[1].clothes = "no clothing">> <<set _clothesTemp2 = _bedSlaves[0].clothes, _bedSlaves[0].clothes = "no clothing">> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw index fb5f73c654bf65c8f9fcf785f5d5dfe28ccd89a3..b314d960197ea8db5ea6f3e1008b84e60b2941ec 100644 --- a/src/uncategorized/remoteSurgery.tw +++ b/src/uncategorized/remoteSurgery.tw @@ -62,16 +62,16 @@ <</if>> </div> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'hairFace')" id="tab hairFace">Hair and Face</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'upper')" id="tab upper">Upper</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'lower')" id="tab lower">Lower</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Race')" id="tab Race">Race</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Structural')" id="tab Structural">Structural</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'ExtremeSurgery')" id="tab ExtremeSurgery">Extreme Surgery</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'hairFace')" id="tab hairFace">Hair and Face</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'upper')" id="tab upper">Upper</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'lower')" id="tab lower">Lower</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Race')" id="tab Race">Race</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Structural')" id="tab Structural">Structural</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'ExtremeSurgery')" id="tab ExtremeSurgery">Extreme Surgery</button> </div> -<div id="hairFace" class="tabcontent"> +<div id="hairFace" class="tab-content"> <div class="content"> /* 000-250-006 */ <<if $seeImages == 1>> @@ -767,7 +767,7 @@ </div> </div> -<div id="upper" class="tabcontent"> +<div id="upper" class="tab-content"> <div class="content"> /* 000-250-006 */ <<if $seeImages == 1>> @@ -1214,7 +1214,7 @@ </div> </div> -<div id="lower" class="tabcontent"> +<div id="lower" class="tab-content"> <div class="content"> /* 000-250-006 */ <<if $seeImages == 1>> @@ -1740,7 +1740,7 @@ </div> </div> -<div id="Race" class="tabcontent"> +<div id="Race" class="tab-content"> <div class="content"> /* 000-250-006 */ <<if $seeImages == 1>> @@ -1800,7 +1800,7 @@ </div> </div> -<div id="Structural" class="tabcontent"> +<div id="Structural" class="tab-content"> <div class="content"> /* 000-250-006 */ <<if $seeImages == 1>> @@ -2309,7 +2309,7 @@ </div> </div> -<div id="ExtremeSurgery" class="tabcontent"> +<div id="ExtremeSurgery" class="tab-content"> <div class="content"> /* 000-250-006 */ <<if $seeImages == 1>> diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw index 63da53baf2662e01b6e75f10cbc77961a1c7061d..b3c547ad8c1adc9991055e56b168cb35a6a1ed6f 100644 --- a/src/uncategorized/reputation.tw +++ b/src/uncategorized/reputation.tw @@ -299,8 +299,8 @@ _enduringRep = $enduringRep>> <</if>> <</if>> -<<if $secExpEnabled == 1>> - <<if $smilingManFate == 1>> +<<if $secExpEnabled > 0>> + <<if $SecExp.smilingMan.progress === 20>> The grim statue of the Smiling Man outside your arcology @@.green;reminds the world of who managed to eliminate such a threat.@@ <<run repX(100, "architecture")>> <</if>> @@ -783,7 +783,7 @@ _enduringRep = $enduringRep>> <<run repX(500, "policies")>> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <<if $SecExp.buildings.propHub.fakeNews > 0>> The authenticity department produces and distributes copious amounts of plausible enough news and reports, @@.green;increasing your reputation.@@ <<run repX(10 * $SecExp.buildings.propHub.miniTruth, "policies")>> diff --git a/src/uncategorized/resSale.tw b/src/uncategorized/resSale.tw index b28f0f1e705083a17ada73e12755cfbea70d0cd6..2b7c76a01ded0eefe246ee87268f6be2e765313f 100644 --- a/src/uncategorized/resSale.tw +++ b/src/uncategorized/resSale.tw @@ -63,7 +63,7 @@ <</if>> <<setLocalPronouns $activeSlave>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<set $activeSlave.trust = 100>> diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw index 2a7432c24addb25a25c352cc40175ef7c04cee6f..0fd4e787ba0c4558020d8dc3eb0c7e25a5d84dfb 100644 --- a/src/uncategorized/saLongTermEffects.tw +++ b/src/uncategorized/saLongTermEffects.tw @@ -8031,10 +8031,10 @@ The weight of $his big boobs serves as a reminder that $he needs to get even bigger. <<elseif $arcologies[0].FSAssetExpansionist != "unset" && ($slaves[$i].behavioralFlaw == "arrogant" || $slaves[$i].behavioralQuirk == "confident")>> <<if $slaves[$i].behavioralFlaw == "arrogant">> - $His bits tits may be a little heavy for $his slight form, but $he is well aware of @@.mediumaquamarine;just how sexy@@ they make $him in your arcology. + $His big tits may be a little heavy for $his slight form, but $he is well aware of @@.mediumaquamarine;just how sexy@@ they make $him in your arcology. <<set $slaves[$i].trust += 1>> <<elseif $slaves[$i].behavioralQuirk == "confident">> - $His breasts are uncomfortably big for $his slight form, but $he this makes $him valuable to society and does $his best to deal with it. + $His breasts are uncomfortably big for $his slight form, but $he feels this makes $him valuable to society and does $his best to deal with it. <</if>> <<elseif $slaves[$i].devotion <= 50>> The weight of $his big boobs is @@.mediumorchid;uncomfortable@@ for $his slight form. diff --git a/src/uncategorized/salon.tw b/src/uncategorized/salon.tw index 2d0ef9efd71a2d4bd67968bdb7d759e3af25611a..8fade6d11b58ccc74f46962690d630131f950f57 100644 --- a/src/uncategorized/salon.tw +++ b/src/uncategorized/salon.tw @@ -17,7 +17,7 @@ </span> /* 000-250-006 */ -<span id="artFrame"> +<span id="art-frame"> <<if $seeImages == 1>> <<if $imageChoice == 1>> <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt(getSlave($AS), 3, 0)>></div> @@ -73,7 +73,7 @@ /* EARS */ <h3>Ears</h3> -<p id="salonEars"></p> +<p id="salon-ears"></p> <script> App.Medicine.Salon.ears(getSlave(V.AS)); </script> @@ -156,7 +156,7 @@ /* HAIR */ <h3>Hair</h3> -<p id="salonHair"></p> +<p id="salon-hair"></p> <script> App.Medicine.Salon.hair(getSlave(V.AS)); </script> @@ -286,7 +286,7 @@ | [[Tiger Stripes|Salon][getSlave($AS).skin = "tiger striped",cashX(forceNeg($modCost), "slaveMod", getSlave($AS))]] </div> -<p id="salonTail"></p> +<p id="salon-tail"></p> <script> App.Medicine.Salon.tail(getSlave(V.AS)); </script> diff --git a/src/uncategorized/scheduledEvent.tw b/src/uncategorized/scheduledEvent.tw index 700e70fe0edd976885be2437e66cba73a642c90b..8da5466503d8fe32a5b5db917c8f5146fa079d1f 100644 --- a/src/uncategorized/scheduledEvent.tw +++ b/src/uncategorized/scheduledEvent.tw @@ -86,7 +86,7 @@ <<set $fcnn.push("...evidence of a planned slave uprising, executed all of their arcology's several thousand...")>> <</if>> -<<if $secExpEnabled == 1>> +<<if $secExpEnabled > 0>> <<if $SecExp.settings.battle.enabled > 0>> <<include "attackGenerator">> <</if>> @@ -94,11 +94,11 @@ <<if $rivalOwner == -1>> <<goto "P rival initiation">> -<<elseif $slaveRebellion == 1 && $secExpEnabled == 1>> +<<elseif $slaveRebellion == 1 && $secExpEnabled > 0>> <<goto "rebellionOptions">> -<<elseif $citizenRebellion == 1 && $secExpEnabled == 1>> +<<elseif $citizenRebellion == 1 && $secExpEnabled > 0>> <<goto "rebellionOptions">> -<<elseif $attackThisWeek == 1 && $secExpEnabled == 1>> +<<elseif $attackThisWeek == 1 && $secExpEnabled > 0>> <<goto "attackOptions">> <<elseif $PC.labor == 1>> <<goto "SE Player Birth">> diff --git a/src/uncategorized/seCoursing.tw b/src/uncategorized/seCoursing.tw index 41de5a4964c58fbe935eb044f204166bea8c9b79..9f05039a07478ba64787180a02da05cf5ef2dda3 100644 --- a/src/uncategorized/seCoursing.tw +++ b/src/uncategorized/seCoursing.tw @@ -5,7 +5,7 @@ <<set _activeLurcher = getSlave($LurcherID)>> <<setLocalPronouns _activeLurcher>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<set _clothesTemp = _activeLurcher.clothes, _activeLurcher.clothes = "no clothing">> @@ -259,7 +259,7 @@ You lead your lurcher _activeLurcher.slaveName out on a leash, naked just like t <<set $activeSlave = clone($hare1), $origin = $origin1, $hareSpeed = $hareSpeed1>> <<include "SE coursing race">> <</replace>> - <<replace "#artFrame">> + <<replace "#art-frame">> <<set _clothesTemp = _activeLurcher.clothes, _activeLurcher.clothes = "no clothing">> <<if $activeSlave != 0>> <<set _clothesTemp2 = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> @@ -292,7 +292,7 @@ You lead your lurcher _activeLurcher.slaveName out on a leash, naked just like t <<set $hare2 = clone($hare1), $origin2 = $origin1, $hareSpeed2 = $hareSpeed1>> <<include "SE coursing race">> <</replace>> - <<replace "#artFrame">> + <<replace "#art-frame">> <<set _clothesTemp = _activeLurcher.clothes, _activeLurcher.clothes = "no clothing">> <<if $activeSlave != 0>> <<set _clothesTemp2 = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> @@ -325,7 +325,7 @@ You lead your lurcher _activeLurcher.slaveName out on a leash, naked just like t <<set $hare3 = clone($hare1), $origin3 = $origin1, $hareSpeed3 = $hareSpeed1>> <<include "SE coursing race">> <</replace>> - <<replace "#artFrame">> + <<replace "#art-frame">> <<set _clothesTemp = _activeLurcher.clothes, _activeLurcher.clothes = "no clothing">> <<if $activeSlave != 0>> <<set _clothesTemp2 = $activeSlave.clothes, $activeSlave.clothes = "no clothing">> diff --git a/src/uncategorized/seExpiration.tw b/src/uncategorized/seExpiration.tw index df473743b1d393701a3decff38957bc84caf4085..39e7e7e9b192abf2f8513c43502df5993e304b81 100644 --- a/src/uncategorized/seExpiration.tw +++ b/src/uncategorized/seExpiration.tw @@ -9,7 +9,7 @@ <<run Enunciate($activeSlave)>> <<setLocalPronouns $activeSlave>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -25,10 +25,10 @@ $activeSlave.slaveName's indentured servitude is ending this week, meaning that <<set $lowerClass += 1>> <<set _seed = 0>> -<<for _seexp = 0; _seexp < $slaves.length; _seexp++>> - <<if $slaves[_seexp].devotion <= 20>> +<<for _seeXp = 0; _seeXp < $slaves.length; _seeXp++>> + <<if $slaves[_seeXp].devotion <= 20>> <<set _seed = 1>> - <<set $slaves[_seexp].devotion -= 1>> + <<set $slaves[_seeXp].devotion -= 1>> <</if>> <</for>> <<if _seed == 1>> diff --git a/src/uncategorized/seLethalPit.tw b/src/uncategorized/seLethalPit.tw index eb2162ba57fe4e8d588cb7df4ecedeb1ca71fb19..2ba327c1459612460079ef812844341b2ec39b7d 100644 --- a/src/uncategorized/seLethalPit.tw +++ b/src/uncategorized/seLethalPit.tw @@ -25,7 +25,7 @@ <<goto "Nonrandom Event">> <</if>> <<setLocalPronouns _fighterTwo 2>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -48,7 +48,7 @@ <<case "feline">> <<set _animal = $activeFeline>> <</switch>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/seNonlethalPit.tw b/src/uncategorized/seNonlethalPit.tw index 91e4a4189ebe643f389c022e77fcb522e1965f58..f2681f855a08b4557d743058b2401abfc2c27e4b 100644 --- a/src/uncategorized/seNonlethalPit.tw +++ b/src/uncategorized/seNonlethalPit.tw @@ -18,7 +18,7 @@ <<goto "Nonrandom Event">> <</if>> <<setLocalPronouns _fighterTwo 2>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> @@ -41,7 +41,7 @@ <<case "feline">> <<set _animal = $activeFeline>> <</switch>> - <span id="artFrame"> + <span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/seRaidingAssault.tw b/src/uncategorized/seRaidingAssault.tw index 040822015dae56613eecd8df0d0d3a82c4477b8c..0d97ddc47933a1fe19e6a2cd9be5d6648f92ee1b 100644 --- a/src/uncategorized/seRaidingAssault.tw +++ b/src/uncategorized/seRaidingAssault.tw @@ -3,27 +3,27 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<set _MercCaptureL = -4,_MercCaptureU = 4>> -<<set _raidescapeL = 1,_raidescapeU = 3>> +<<set _raidEscapeL = 1,_raidEscapeU = 3>> <<if $SF.Toggle && $SF.Active >= 1>> <<if $SF.Squad.Satellite >= 1 && $SF.SatLaunched > 0>> <<set _MercCaptureL += 1,_MercCaptureU += 1>> - <<set _raidescapeL -= 1,_raidescapeU -= 1>> + <<set _raidEscapeL -= 1,_raidEscapeU -= 1>> <</if>> <<if $SF.Squad.SpacePlane >= 1>> <<set _MercCaptureL += 1,_MercCaptureU += 1>> - <<set _raidescapeL -= 1>> + <<set _raidEscapeL -= 1>> <</if>> <</if>> <<set _MercCapture = random(_MercCaptureL,_MercCaptureU)>> -<<set _raidescape = random(_raidescapeL,_raidescapeU)>> +<<set _raidEscape = random(_raidEscapeL,_raidEscapeU)>> <<setLocalPronouns $activeSlave>> <<switch $origin>> <<case "housewife">> <<if $targetEscape >= _MercCapture>> Somehow the house<<= $wife>> manages to evade your mercenaries. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> Your $mercenariesTitle pry open the door to the mansion's panic room to find that the $woman has hung $himself to escape capture. A waste. <<else>> Your $mercenariesTitle pry open the door to the mansion's panic room and pull the protesting house<<= $wife>> from its depths. @@ -33,7 +33,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "university professor">> <<if $targetEscape >= _MercCapture>> A confrontation with the University's security team allows the professors to escape capture by the $mercenariesTitle. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> Your $mercenariesTitle are met with surprising resistance by the university's professors and are forced to bid a hasty retreat before security can arrive in greater numbers. <<else>> Your $mercenariesTitle corner the professors and their department head in one of the university's many conference rooms, hauling them off to the VTOLs when the academics promptly surrender. @@ -43,7 +43,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "university student">> <<if $targetEscape >= _MercCapture>> A confrontation with the University's security team allows the students to escape capture by the $mercenariesTitle. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> Your $mercenariesTitle are met with surprising resistance by the university's students and are forced to bid a hasty retreat before security can arrive in greater numbers. <<else>> Your $mercenariesTitle corner the students in their rooms, hauling them off one by one to the VTOLs as they protest feebly. @@ -53,7 +53,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "female military officer">> <<if $targetEscape >= _MercCapture>> The officer's escort engages the $mercenariesTitle in a gunfight and in the confusion the officer manages to escape capture on foot. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> As your mercenaries gain the upper hand on the officer's escort, $he promptly puts $his service weapon to $his temple and pulls the trigger. A waste. <<else>> As your mercenaries gain the upper hand on the officer's escort, $he promptly puts $his service weapon to $his temple but hesitates. Luckily one of your $mercenariesTitle is close by and able to pluck the pistol from $his stiff fingers. The despondent officer is cuffed and taken back to the VTOL for transport. @@ -63,7 +63,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "male military officer">> <<if $targetEscape >= _MercCapture>> The officer's escort engages the $mercenariesTitle in a gunfight and in the confusion the officer manages to escape capture on foot. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> As your mercenaries gain the upper hand on the officer's escort, $he promptly puts $his service weapon to $his temple and pulls the trigger. A waste. <<else>> As your mercenaries gain the upper hand on the officer's escort, $he promptly puts $his service weapon to $his temple but hesitates. Luckily one of your $mercenariesTitle is close by and able to pluck the pistol from $his stiff fingers. The despondent officer is cuffed and taken back to the VTOL for transport. @@ -73,7 +73,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "military soldier">> <<if $targetEscape >= _MercCapture>> The young soldiers fight valiantly against the $mercenariesTitle until they are routed. Despite defeating them in the field, your $mercenariesTitle are unable to capture any of the soldiers who escape on foot. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> The young soldiers are unfaltering in their conviction and fight to their last last. When the smoke clears, the barracks is chocked with corpses for none of the soldiers are left alive to capture. <<else>> The young soldiers fight valiantly, but when the battle turns against them they decide to surrender. Their sergeant is cuffed with the remaining survivors and taken back to the VTOL for transport. @@ -83,7 +83,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "doctor">> <<if $targetEscape >= _MercCapture>> The hospital's security staff alone would prove little match for the $mercenariesTitle, but just as they are about to be overrun an uneasy coalition of rival gangster and criminals who had been committed as patients join the fray and turn the tide of battle. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> The hospital's security staff alone would prove little match for your mercenaries, but they are joined by an uneasy coalition of rival gangster and criminals who had been committed as patients. Though your $mercenariesTitle prevail, they discover to their chagrin that the doctors and their staff were slain during the wanton exchange of fire. <<else>> The security staff of the hospital is easily overpowered and surrender rapidly, allowing your $mercenariesTitle to take the doctors and their staff into custody with little fuss. @@ -93,7 +93,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "nun">> <<if $targetEscape >= _MercCapture>> As the $mercenariesTitle close in on the commune, they are spotted by a group of young nuns tending to their grounds. Before your $mercenariesTitle can close the distance, they retreat behind the walls of their community and seal the gate behind them. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> The nuns flee into their inner sanctum as your $mercenariesTitle approach and bar the doors behind them as they go. When the last barrier is pried open, your $mercenariesTitle discover the nuns have committed suicide as a group rather than be taken prisoner. <<else>> Unarmed and defenseless, the nuns are easily cowed by your $mercenariesTitle and taken away one by one to the VTOLs. The most pious $sister prays vehemently until $he is dragged out of the inner sanctum in cuffs. @@ -103,7 +103,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "journalist">> <<if $targetEscape >= _MercCapture>> Though the $mercenariesTitle easily overwhelm the single security guard posted at the firm, they are unable to do so before he triggers an alarm. Faced with the prospect of local law enforcement arriving, your $mercenariesTitle beat a hasty retreat. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> Your $mercenariesTitle are met with fierce resistance by the staff of the newspaper firm, who take the raid as an opportunity to turn their abolitionist words into violent action. Eventually, your $mercenariesTitle retreat from the building before law enforcement can arrive. <<else>> Once the lone security guard is subdued, the journalists and editors of the firm quietly accept their restraints and file out of the building and into the waiting VTOL. @@ -113,7 +113,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "local news anchor">> <<if $targetEscape >= _MercCapture>> Unfortunately for the $mercenariesTitle, the news channel appears to have been interviewing members of the local militia garrison at the time of the raid. Upon encountering more firepower than they had anticipated, your $mercenariesTitle wisely retreat from the engagement. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> Your $mercenariesTitle are able to subdue the news anchor and bid a hasty exit from the recording studio. Before they can board the waiting VTOL however, the anchor is struck in the head by a bullet fired by a man who was $his longtime fan turned stalker. It seems if he cannot have $him, neither can you. <<else>> The news anchor is subdued without issue and quietly escorted out of the recording studio and into the waiting VTOL. @@ -123,7 +123,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "classical dancer">> <<if $targetEscape >= _MercCapture>> Though they are excellent soldiers, the $mercenariesTitle are crude and uncultured. They are unable to blend into the audience and are soon discovered, giving the dance troupe the warning needed to make an escape from the theater. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> As your $mercenariesTitle close in on the stage and reveal their concealed weapons, the darling star of the dance troupe loses $his footing in shock and tumbles off the stage. The sharp crack as $he hits the ground drives the crowd and remaining members of the troupe hysterical, while your $mercenariesTitle exit the theater as chaos surges around them. <<else>> Once your $mercenariesTitle close in on the stage and reveal their concealed weapons, the dance troupe promptly surrenders. With the shocked audience looking on, each member is cuffed and escorted out the door to the waiting VTOL. @@ -133,7 +133,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "law enforcement officer">> <<if $targetEscape >= _MercCapture>> Despite the lack of staff, it seems this particular precinct has been the recipient of an alarming quantity of military grade equipment. With their overwhelming firepower, the officers are able to hold off your $mercenariesTitle until reinforcements arrive and force your troops to retreat. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> Despite being outnumbered and outgunned, the officers stand their ground to the last. The sterling officer of the law your $mercenariesTitle sought to capture is the last to fall, stifled by a hail of bullets. <<else>> Your $mercenariesTitle break through the door of the precinct with their guns drawn. The precinct is so understaffed that each officer has a number of weapons drawn on them from every angle, so its no surprise when the precinct's sterling police<<= $woman>> formally surrenders the precinct and its officers to your mercenaries. @@ -143,7 +143,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "classical musician">> <<if $targetEscape >= _MercCapture>> Though they are excellent soldiers, the $mercenariesTitle are crude and uncultured. They are unable to blend into the audience and are soon discovered, giving the orchestra the warning needed to make an escape from the concert hall. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> As your $mercenariesTitle close in on the stage and reveal their concealed weapons, the crown jewel of the orchestra loses $his footing in shock and tumbles off the stage. The sharp crack as $he hits the ground drives the crowd and remaining members of the orchestra hysterical, while your $mercenariesTitle exit the concert hall as chaos surges around them. <<else>> Once your $mercenariesTitle close in on the stage and reveal their concealed weapons, the orchestra promptly surrenders. With the shocked audience looking on, each member is cuffed and escorted out the door to the waiting VTOL. @@ -153,7 +153,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "politician">> <<if $targetEscape >= _MercCapture>> The $mercenariesTitle clash with the politician's security detail amidst a maelstrom of terrified civilians and the confrontation drags out for some time. By the time your $mercenariesTitle can advance, they discover that the politician has already been evacuated. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> With their security detail defeated and their crowd of supporters offering no protection, the politician tries to take up one of $his fallen protector's pistols to defend $himself. Unfortunately for $him and for your mercenaries, the politician has a staggeringly poor understanding of firearms and manages to shoot themselves in the face when they discharge the weapon. With the politician dead, there is little your $mercenariesTitle can do but exit the venue. <<else>> With their security detail defeated and their crowd of supporters offering no protection, the politician promptly surrenders in the hopes that they won't be harmed and is escorted to the waiting VTOL. @@ -163,7 +163,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "shut-in">> <<if $targetEscape >= _MercCapture>> The $mercenariesTitle pry open the shut-in's door to discover an empty shack. From the cooked meal still steaming on the dining room table and the remarkable absence of dust, it seems $he left only recently. Somehow the crafty <<if $activeSlave.visualAge < 13>>little <<elseif $activeSlave.visualAge <= 18>>teen <<elseif $activeSlave.visualAge <= 24>>young <<elseif $activeSlave.visualAge <= 32>><<else>>old <</if>> minx must have seen your $mercenariesTitle coming. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> When the $mercenariesTitle break down the door to the shut-in's shack, they are met with a terrible stench of dust and decay. Judging by the body hanging limply from the banisters, the shut-in took $his own life some time ago. <<else>> When your $mercenariesTitle break down the door to the shut-in's shack, they are met with a surprised and somewhat unkempt $woman staring at them. Despite $his lack of social interaction, they know better than to argue with a small army of armed $mercenariesTitle and quietly accepts being escorted back to the waiting VTOL. @@ -173,7 +173,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "procuress">> <<if $targetEscape >= _MercCapture>> The $mercenariesTitle break down the door to the halfway home to discover a throng of sniffling young women, who cling to their boots and beg for rescue. Once they have been accounted for, your $mercenariesTitle discover the procuress is nowhere to be found. It seems the wily old minx has somehow made $his escape before your $mercenariesTitle even arrived. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> When your $mercenariesTitle enter the halfway house, the impoverished women within mistake them for an international rescue mission. Before your $mercenariesTitle can say otherwise, the women go berserk with the prospect of freedom and break into the procuress' office to tear $him apart with their bare hands. <<else>> When your $mercenariesTitle enter the halfway house, the impoverished women within mistake them for an international rescue mission. Before your $mercenariesTitle can say otherwise, the women band together and drag the procuress out of $his office and restrain $him themselves. The $mercenariesTitle have to do little more than escort the grinning women to the waiting VTOLs, while they drag the protesting procuress with them. @@ -183,7 +183,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "investor">> <<if $targetEscape >= _MercCapture>> The $mercenariesTitle raid the business exposition and thoroughly search the premises, only to discover that the investor never arrived. A terrified businessman informs your $mercenariesTitle that $he cited heightened security risks as the reason for $his absence. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> When your $mercenariesTitle corner the investor in the exposition, $he seemingly mistakes them for international police intent on taking $him in for prior economic crimes. Before $he can be subdued, the investor swallows a concealed pill and crumples to the ground dead. <<else>> When your $mercenariesTitle corner the investor in the exposition, $he seemingly mistakes them for international police intent on taking $him in for prior economic crimes. $He begrudgingly surrenders and is subsequently escorted back to a waiting VTOL. @@ -193,7 +193,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "scientist">> <<if $targetEscape >= _MercCapture>> When the $mercenariesTitle make an explosive entrance into the lab with their guns drawn, the chief scientist throws a vial of some mysterious liquid in front of them. The resultant smoke is so thick and choking that your $mercenariesTitle are forced to retreat from the building, during which time the scientists make their own escape. When your $mercenariesTitle reenter the building, they find it abandoned. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> The bulk of the scientists surrender shortly after your $mercenariesTitle make an explosive entrance into their lab. Before $he can be cuffed, the chief scientist takes a swig from some mysterious beaker of liquid. From the triumphant look on $his face as $he keels over dead, your $mercenariesTitle suspect the liquid was intended to have a transformative effect rather than a suicidal one. <<else>> The bulk of the scientists surrender shortly after your $mercenariesTitle make an explosive entrance into their lab. Before $he can be cuffed, the chief scientist takes a swig from some mysterious beaker of liquid. As the triumphant look on $his face fades, it becomes clear that the liquid did not have the transformative effect that $he desired. @@ -203,7 +203,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<case "lawyer">> <<if $targetEscape >= _MercCapture>> It seems the lawyer had anticipated the possibility of conflict on the frontier on the outer rim of the old world, so the $mercenariesTitle are able to do little more than enter the building before the law firm's offices seal themselves off. Faced with the prospect of lingering in a conflict zone, your $mercenariesTitle cut their losses and retreat back to their VTOLs. - <<elseif _raidescape == 1>> + <<elseif _raidEscape == 1>> Your $mercenariesTitle capture the law firm's staff without much difficulty, but when they open the door to the lawyer's office they find $him frothing from the mouth and unresponsive. From the quantity of pill bottles evident on $his desk, it seems $he found the sole loophole to escape capture. <<else>> Your $mercenariesTitle capture the law firm's staff without much difficulty, but when they open the door to the lawyer's office they find $him frothing from the mouth and unresponsive. Despite $his attempts to drug $himself into suicide, the effects are temporary and the lawyer soon finds $himself being hauled off to a waiting VTOL with $his staff. @@ -211,7 +211,7 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<run newSlave($activeSlave)>> /* skip New Slave Intro */ <</if>> <</switch>> -<<if ($targetEscape >= _MercCapture) || (_raidescape == 1)>> +<<if ($targetEscape >= _MercCapture) || (_raidEscape == 1)>> Your $mercenariesTitle return without their final prize, but remain in high spirits given their other successes out in the field. <</if>> <<unset $targetEscape, $origin>> diff --git a/src/uncategorized/seRetirement.tw b/src/uncategorized/seRetirement.tw index aac5a08c8d2d665431110ce41feaafd5afcf0c3a..875f067619283a78478f3dbae32125e92da60388 100644 --- a/src/uncategorized/seRetirement.tw +++ b/src/uncategorized/seRetirement.tw @@ -22,7 +22,7 @@ <<elseif $policies.retirement.fate == "arcade">> /* Scene starts in normal clothing, previewing Fuckdolls doesn't seem to work. */ <</if>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> @@ -213,7 +213,7 @@ <<if _clonedSlave.relationship >= 4>> <<link "Send $his _girl2 into retirement with $him">> <<set _sr = $slaveIndices[_clonedSlave.relationshipTarget]>> /* must be reset since $activeSlave may already be removed from $slaves */ - <<replace "#artFrame">> + <<replace "#art-frame">> /* 000-250-006 */ <<if $seeImages == 1>> <div class="imageColumn"> diff --git a/src/uncategorized/seWeddingSingle.tw b/src/uncategorized/seWeddingSingle.tw index bf4a9717c15c1eac065f80454d18933d7321fe80..e6267c69a98f6bbebdea6a11f8df8119cf9f9c13 100644 --- a/src/uncategorized/seWeddingSingle.tw +++ b/src/uncategorized/seWeddingSingle.tw @@ -8,7 +8,7 @@ <<set _knees = "knee">> <</if>> -<span id="artFrame"> +<span id="art-frame"> /* 000-250-006 */ <<if $seeImages == 1>> <<if $imageChoice == 1>> diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw index b1e4f5796a89830351634b5ffd4e35321cfaa205..88216e869afe5e485fdb3d0acdae55352da5be6c 100644 --- a/src/uncategorized/slaveInteract.tw +++ b/src/uncategorized/slaveInteract.tw @@ -63,9 +63,9 @@ </div> <</if>> <span class="hotkey"> - <<print App.UI.Hotkeys.hotkeys("prevSlave")>> + <<print App.UI.Hotkeys.hotkeys("prev-slave")>> </span> - <span id="prevSlave" style="font-weight:bold"> + <span id="prev-slave" style="font-weight:bold"> <<link "Prev" "Slave Interact">><<set $activeSlave = getSlave(_slavesInLine[0])>><</link>> </span> @@ -73,26 +73,26 @@ <<= getSlave($AS).slaveName>> </span> - <span id="nextSlave" style="font-weight:bold"> + <span id="next-slave" style="font-weight:bold"> <<link "Next" "Slave Interact">><<set $activeSlave = getSlave(_slavesInLine[1])>><</link>> </span> <span class="hotkey"> - <<print App.UI.Hotkeys.hotkeys("nextSlave")>> + <<print App.UI.Hotkeys.hotkeys("next-slave")>> </span> </p> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Description'), jQuery('#LSD').empty().append(App.Desc.longSlave(getSlave(V.activeSlave.ID)))" id="tab Description">Description</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Modify')" id="tab Modify">Modify</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Work')" id="tab Work">Work</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Appearance'), App.UI.Wardrobe.refreshAll(getSlave(V.activeSlave.ID))" id="tab Appearance">Appearance</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'PhysicalRegimen')" id="tab PhysicalRegimen">Physical Regimen</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Rules')" id="tab Rules">Rules</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Financial')" id="tab Financial">Financial</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Customize'), App.UI.SlaveInteract.custom(getSlave(V.activeSlave.ID))" id="tab Customize">Customize</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'FamilyTab'), renderFamilyTree(V.slaves, V.activeSlave.ID)" id="tab FamilyTab">Family</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Description'), jQuery('#LSD').empty().append(App.Desc.longSlave(getSlave(V.activeSlave.ID)))" id="tab Description">Description</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Modify')" id="tab Modify">Modify</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Work')" id="tab Work">Work</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Appearance'), App.UI.Wardrobe.refreshAll(getSlave(V.activeSlave.ID))" id="tab Appearance">Appearance</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'PhysicalRegimen')" id="tab PhysicalRegimen">Physical Regimen</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Rules')" id="tab Rules">Rules</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Financial')" id="tab Financial">Financial</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'Customize'), App.UI.SlaveInteract.custom(getSlave(V.activeSlave.ID))" id="tab Customize">Customize</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'FamilyTab'), renderFamilyTree(V.slaves, V.activeSlave.ID)" id="tab FamilyTab">Family</button> </div> -<div id="artFrame"> +<div id="art-frame"> <<if $seeImages == 1>> <<if $imageChoice == 1>> <div class="imageRef lrgVector"><div class="mask"> </div><<= SlaveArt(getSlave($AS), 3, 0)>></div> @@ -102,7 +102,7 @@ <</if>> </div> -<div id="Description" class="tabcontent"> +<div id="Description" class="tab-content"> <div class="content"> <<if $seeDetails == 1>> <div style="font-style:italic"> @@ -132,7 +132,7 @@ </div> </div> -<div id="Modify" class="tabcontent"> +<div id="Modify" class="tab-content"> <div class="content"> <p id="modifySection"></p> <script> @@ -142,7 +142,7 @@ </div> -<div id="Work" class="tabcontent"> +<div id="Work" class="tab-content"> <div class="content"> <p id="work"></p> <script> @@ -151,7 +151,7 @@ </div> </div> -<div id="Appearance" class="tabcontent"> +<div id="Appearance" class="tab-content"> <div class="content"> <p> <span id="clothes"></span> @@ -211,7 +211,7 @@ </div> </div> -<div id="PhysicalRegimen" class="tabcontent"> +<div id="PhysicalRegimen" class="tab-content"> <div class="content"> <p> <span id="drugs"></span> @@ -223,7 +223,7 @@ <span id="aphrodisiacs"></span> <script>App.UI.SlaveInteract.aphrodisiacs(getSlave(V.activeSlave.ID))</script> - <span id="fertilityblock"></span> + <span id="fertility-block"></span> <script>App.UI.SlaveInteract.fertility(getSlave(V.activeSlave.ID))</script> <span id="incubator"></span> @@ -257,14 +257,14 @@ </div> </div> -<div id="Rules" class="tabcontent"> +<div id="Rules" class="tab-content"> <div class="content"> <span id="rules"></span> <script>App.UI.SlaveInteract.rules(getSlave(V.activeSlave.ID))</script> </div> </div> -<div id="Financial" class="tabcontent"> +<div id="Financial" class="tab-content"> <div class="content"> <<if $studio == 1>> @@ -361,7 +361,7 @@ </div> </div> -<div id="Customize" class="tabcontent"> +<div id="Customize" class="tab-content"> <div class="content"> <span id="custom"></span> <script>App.UI.SlaveInteract.custom(getSlave(V.activeSlave.ID))</script> @@ -370,7 +370,7 @@ </div> </div> -<div id="FamilyTab" class="tabcontent"> +<div id="FamilyTab" class="tab-content"> <div class="content"> <p id="family"> <div id="familyTree"></div> diff --git a/src/uncategorized/underperformingSlaves.tw b/src/uncategorized/underperformingSlaves.tw index 5fc39bb79b88343d17662c48e4678fa42608a6a9..9effeb9039ae836da1afa4d677afdadf8162a377 100644 --- a/src/uncategorized/underperformingSlaves.tw +++ b/src/uncategorized/underperformingSlaves.tw @@ -20,18 +20,18 @@ </div> </p> <<run App.UI.tabbar.handlePreSelectedTab($tabChoice.Options)>> -<div class="tabbar"> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'highSale')" id="tab highSale">Worth much but earning little</button> - <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'expensive')" id="tab expensive">Costing vs earning</button> +<div class="tab-bar"> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'highSale')" id="tab highSale">Worth much but earning little</button> + <button class="tab-links" onclick="App.UI.tabbar.openTab(event, 'expensive')" id="tab expensive">Costing vs earning</button> </div> -<div id="highSale" class="tabcontent"> +<div id="highSale" class="tab-content"> <div class="content"> <<includeDOM App.Underperformers.highSale()>> </div> </div> -<div id="expensive" class="tabcontent"> +<div id="expensive" class="tab-content"> <div class="content"> <<includeDOM App.Underperformers.expensive()>> </div> diff --git a/src/uncategorized/universalRules.tw b/src/uncategorized/universalRules.tw index d07f4819b2d5cadcb4a1d9142ef8f90a28f9958c..74924fc2876e6ccfe7e8f3530bb3093c3bef1003 100644 --- a/src/uncategorized/universalRules.tw +++ b/src/uncategorized/universalRules.tw @@ -470,7 +470,7 @@ Slave nicknames are <<elseif $FSNamePref == 5>> New slaves are currently being named according to feudal Japanese Custom. <<elseif $FSNamePref == 6>> - New slaves are currently being named according to Degradationalist Custom. + New slaves are currently being named according to Degradationist Custom. <<elseif $FSNamePref == 7>> New slaves are currently being named according to Paternalist Custom. <<elseif $FSNamePref == 8>> diff --git a/src/utility/birthWidgets.tw b/src/utility/birthWidgets.tw index d28ab9b1a09aa9811404ba729cd81d66cbe72d04..be11452a5f16089e0d39ac7bf35236f7d2dd2703 100644 --- a/src/utility/birthWidgets.tw +++ b/src/utility/birthWidgets.tw @@ -25,7 +25,7 @@ <</if>> <<else>> <<if $clinic != 0>> - $He is lead to $clinicName since $he is likely to face complications with childbirth. $He is helped from $his clothes and into a comfortable hospital bed to relax until $he is ready. $He makes $himself comfortable and begins working on birthing $his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>, fully aware of $his watching helpers.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> $His body is so sensitive that even difficult birth is an intensly pleasurable experience for $him.<</if>> <<if $birthDamage > 10>><<set $csec = 1>><<run App.Medicine.Modification.addScar($slaves[$i], "belly", "c-section")>>After several hours of intense labor, $he is transferred to the surgery wing. Following an emergency c-section, $he is returned to the recovery wing to rest<<else>>After several hours,<<if $slaves[$i].geneticQuirks.uterineHypersensitivity != 1>> and a touch of morphine,<</if>> $he has successfully given birth<</if>>. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he is left under observation to make sure $he recovers. + $He is lead to $clinicName since $he is likely to face complications with childbirth. $He is helped from $his clothes and into a comfortable hospital bed to relax until $he is ready. $He makes $himself comfortable and begins working on birthing $his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>, fully aware of $his watching helpers.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> $His body is so sensitive that even difficult birth is an intensely pleasurable experience for $him.<</if>> <<if $birthDamage > 10>><<set $csec = 1>><<run App.Medicine.Modification.addScar($slaves[$i], "belly", "c-section")>>After several hours of intense labor, $he is transferred to the surgery wing. Following an emergency c-section, $he is returned to the recovery wing to rest<<else>>After several hours,<<if $slaves[$i].geneticQuirks.uterineHypersensitivity != 1>> and a touch of morphine,<</if>> $he has successfully given birth<</if>>. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he is left under observation to make sure $he recovers. <<else>> <<set $csec = 1>> <<run App.Medicine.Modification.addScar($slaves[$i], "belly", "c-section")>> @@ -406,7 +406,7 @@ <<if $birthDamage > 5>> <<set $csec = 1>> <<if $clinic != 0>> - $He is carried to $clinicName, since $he is likely to face complications with childbirth. $He is stripped from $his clothes and set up in a comfortable hospital bed to relax until $he is ready. $He wiggles $himself into a comfortable spot and begins working on birthing $his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>, fully aware of $his watching helpers.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> $His body is so sensitive that even difficult birth is an intensly pleasurable experience for $him.<</if>> <<if $birthDamage > 10>><<set $csec = 1>><<run App.Medicine.Modification.addScar($slaves[$i], "belly", "c-section")>>After several hours of intense labor, $he is transferred to the surgery wing. Following an emergency c-section, $he is returned to the recovery wing to rest<<else>>After several hours,<<if $slaves[$i].geneticQuirks.uterineHypersensitivity != 1>> and a touch of morphine,<</if>> $he has successfully given birth<</if>>. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he is left under observation to make sure $he recovers. + $He is carried to $clinicName, since $he is likely to face complications with childbirth. $He is stripped from $his clothes and set up in a comfortable hospital bed to relax until $he is ready. $He wiggles $himself into a comfortable spot and begins working on birthing $his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>, fully aware of $his watching helpers.<<if $slaves[$i].geneticQuirks.uterineHypersensitivity == 2>> $His body is so sensitive that even difficult birth is an intensely pleasurable experience for $him.<</if>> <<if $birthDamage > 10>><<set $csec = 1>><<run App.Medicine.Modification.addScar($slaves[$i], "belly", "c-section")>>After several hours of intense labor, $he is transferred to the surgery wing. Following an emergency c-section, $he is returned to the recovery wing to rest<<else>>After several hours,<<if $slaves[$i].geneticQuirks.uterineHypersensitivity != 1>> and a touch of morphine,<</if>> $he has successfully given birth<</if>>. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he is left under observation to make sure $he recovers. <<else>> <<set $csec = 1>> <<run App.Medicine.Modification.addScar($slaves[$i], "belly", "c-section")>> @@ -1099,7 +1099,7 @@ $He thanks $his charges for their less than helpful efforts and collects $his child<<if $slaves[$i].pregType > 1>>ren<</if>> for removal. Upon returning, $he strips down and enters the pool, desperate for a break. <<case "be the Matron">> - While tending to the infants in $nurseryName, $slaves[$i].slaveName's water breaks. The nannies quickly come to $his aid as the contractions get closer and closer together. They crowd around and watch, their curiousity getting the better of them. + While tending to the infants in $nurseryName, $slaves[$i].slaveName's water breaks. The nannies quickly come to $his aid as the contractions get closer and closer together. They crowd around and watch, their curiosity getting the better of them. <<set $humiliation = 1>> <<ClothingBirth>> $He thanks $his assistants for their less than helpful efforts and collects $his child<<if $slaves[$i].pregType > 1>>ren<</if>> for removal. diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw index 916ad89f03ad80700b12ecf790a2443d11e26195..c8b4198ca34174e87068c71198e19b0eb872dd48 100644 --- a/src/utility/slaveCreationWidgets.tw +++ b/src/utility/slaveCreationWidgets.tw @@ -402,7 +402,7 @@ Call as <<CustomSlaveWhoreSkills>> %/ <<widget "CustomSlaveWhoreSkills">> - <<replace #whoreskills>> + <<replace #whore-skills>> <<if $customSlave.skill.whore <= 10>>Unskilled at prostitution and entertainment. <<elseif $customSlave.skill.whore <= 35>>Basic prostitution and entertainment skills. <<else>>Skilled at prostitution and entertainment. @@ -414,7 +414,7 @@ Call as <<CustomSlaveCombatSkills>> %/ <<widget "CustomSlaveCombatSkills">> - <<replace #combatskills>> + <<replace #combat-skills>> <<if $customSlave.skill.combat == 0>>Unskilled at combat. <<else>>Skilled at combat. <</if>> diff --git a/src/zz1-last/setupEventHandlers.js b/src/zz1-last/setupEventHandlers.js index e4735ec5407b95b7d1f6c13c831ed13214c1396e..50c38e6745700721c3e994f1347766c92f237907 100644 --- a/src/zz1-last/setupEventHandlers.js +++ b/src/zz1-last/setupEventHandlers.js @@ -12,7 +12,8 @@ $(document).one(':passagestart', function() { $(document).on(':passagestart', function() { Object.defineProperty(State.temporary, "S", { - get: () => S + get: () => S, + enumerable: true }); }); diff --git a/themes/light/main.css b/themes/light/main.css new file mode 100644 index 0000000000000000000000000000000000000000..0e05e085faf9561d8d707ec5c949256593b852ad --- /dev/null +++ b/themes/light/main.css @@ -0,0 +1,3 @@ +.lrgRender > div.mask, .lrgVector > div.mask { + background: linear-gradient(90deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.8) 60%, rgba(255, 255, 255, 0)); +}