diff --git a/js/003-data/miscData.js b/js/003-data/miscData.js index f0a3c59732cd8c016d79c1fe8b8a657b030a02c7..59cd16e3e00e4a97ac5d2591b36caf9c3aa11dc5 100644 --- a/js/003-data/miscData.js +++ b/js/003-data/miscData.js @@ -1453,264 +1453,265 @@ App.Data.misc = { royalNationalities: ["Bahraini", "Belgian", "Bhutanese", "British", "Bruneian", "Cambodian", "Danish", "Dutch", "Emirati", "Japanese", "Jordanian", "Kuwaiti", "Luxembourgian", "Malaysian", "Monégasque", "Moroccan", "Mosotho", "Norwegian", "Omani", "Qatari", "Saudi", "Spanish", "Swazi", "Swedish", "Thai", "Tongan"], + nationalitiesByRace: { + "amerindian": { + "Bolivian": 1, + "Greenlandic": 1, + "Guatemalan": 1, + "Peruvian": 1 + }, - amerindianNationalities: { - "Bolivian": 1, - "Greenlandic": 1, - "Guatemalan": 1, - "Peruvian": 1 - }, - - asianNationalities: { - "Bhutanese": 1, - "Burmese": 1, - "Cambodian": 1, - "Chinese": 1, - "Japanese": 1, - "Korean": 1, - "Laotian": 1, - "Mongolian": 1, - "Nepalese": 1, - "Singaporean": 1, - "Taiwanese": 1, - "Thai": 1, - "Tibetan": 1, - "Vietnamese": 1 - }, + "asian": { + "Bhutanese": 1, + "Burmese": 1, + "Cambodian": 1, + "Chinese": 1, + "Japanese": 1, + "Korean": 1, + "Laotian": 1, + "Mongolian": 1, + "Nepalese": 1, + "Singaporean": 1, + "Taiwanese": 1, + "Thai": 1, + "Tibetan": 1, + "Vietnamese": 1 + }, - blackNationalities: { - "American": 1, - "Angolan": 1, - "Antiguan": 1, - "Bahamian": 1, - "Barbadian": 1, - "Beninese": 1, - "Bermudian": 1, - "Bissau-Guinean": 1, - "Burkinabé": 1, - "Burundian": 1, - "Cameroonian": 1, - "Central African": 1, - "Chadian": 1, - "Comorian": 1, - "Congolese": 1, - "Curaçaoan": 1, - "Djiboutian": 1, - "Dominiquais": 1, - "Equatoguinean": 1, - "Eritrean": 1, - "Ethiopian": 1, - "Gabonese": 1, - "Gambian": 1, - "Ghanan": 1, - "Grenadian": 1, - "Guinean": 1, - "Guyanese": 1, - "Haitian": 1, - "Ivorian": 1, - "Jamaican": 1, - "Kenyan": 1, - "Kittitian": 1, - "Liberian": 1, - "Malagasy": 1, - "Malawian": 1, - "Malian": 1, - "Mauritanian": 1, - "Mosotho": 1, - "Motswana": 1, - "Mozambican": 1, - "Namibian": 1, - "Nigerian": 1, - "Nigerien": 1, - "Rwandan": 1, - "Saint Lucian": 1, - "São Toméan": 1, - "Senegalese": 1, - "Sierra Leonean": 1, - "Somali": 1, - "South African": 1, - "South Sudanese": 1, - "Surinamese": 1, - "Swazi": 1, - "Tanzanian": 1, - "Togolese": 1, - "Trinidadian": 1, - "Ugandan": 1, - "Vincentian": 1, - "Zairian": 1, - "Zambian": 1, - "Zimbabwean": 1 - }, + "black": { + "American": 1, + "Angolan": 1, + "Antiguan": 1, + "Bahamian": 1, + "Barbadian": 1, + "Beninese": 1, + "Bermudian": 1, + "Bissau-Guinean": 1, + "Burkinabé": 1, + "Burundian": 1, + "Cameroonian": 1, + "Central African": 1, + "Chadian": 1, + "Comorian": 1, + "Congolese": 1, + "Curaçaoan": 1, + "Djiboutian": 1, + "Dominiquais": 1, + "Equatoguinean": 1, + "Eritrean": 1, + "Ethiopian": 1, + "Gabonese": 1, + "Gambian": 1, + "Ghanan": 1, + "Grenadian": 1, + "Guinean": 1, + "Guyanese": 1, + "Haitian": 1, + "Ivorian": 1, + "Jamaican": 1, + "Kenyan": 1, + "Kittitian": 1, + "Liberian": 1, + "Malagasy": 1, + "Malawian": 1, + "Malian": 1, + "Mauritanian": 1, + "Mosotho": 1, + "Motswana": 1, + "Mozambican": 1, + "Namibian": 1, + "Nigerian": 1, + "Nigerien": 1, + "Rwandan": 1, + "Saint Lucian": 1, + "São Toméan": 1, + "Senegalese": 1, + "Sierra Leonean": 1, + "Somali": 1, + "South African": 1, + "South Sudanese": 1, + "Surinamese": 1, + "Swazi": 1, + "Tanzanian": 1, + "Togolese": 1, + "Trinidadian": 1, + "Ugandan": 1, + "Vincentian": 1, + "Zairian": 1, + "Zambian": 1, + "Zimbabwean": 1 + }, - indoAryanNationalities: { - "Afghan": 1, - "Azerbaijani": 1, - "Bahraini": 1, - "Bangladeshi": 1, - "Burmese": 1, - "Emirati": 1, - "Georgian": 1, - "Guyanese": 1, - "Indian": 1, - "Iranian": 1, - "Kazakh": 1, - "Kurdish": 1, - "Kyrgyz": 1, - "Maldivian": 1, - "Mauritian": 1, - "Omani": 1, - "Pakistani": 1, - "Sri Lankan": 1, - "Surinamese": 1, - "Tajik": 1, - "Trinidadian": 1, - "Turkish": 1, - "Turkmen": 1, - "Uzbek": 1 - }, + "indo-aryan": { + "Afghan": 1, + "Azerbaijani": 1, + "Bahraini": 1, + "Bangladeshi": 1, + "Burmese": 1, + "Emirati": 1, + "Georgian": 1, + "Guyanese": 1, + "Indian": 1, + "Iranian": 1, + "Kazakh": 1, + "Kurdish": 1, + "Kyrgyz": 1, + "Maldivian": 1, + "Mauritian": 1, + "Omani": 1, + "Pakistani": 1, + "Sri Lankan": 1, + "Surinamese": 1, + "Tajik": 1, + "Trinidadian": 1, + "Turkish": 1, + "Turkmen": 1, + "Uzbek": 1 + }, - latinaNationalities: { - "American": 1, - "Argentinian": 1, - "Belizean": 1, - "Bolivian": 1, - "Brazilian": 1, - "Chilean": 1, - "Colombian": 1, - "Costa Rican": 1, - "Cuban": 1, - "Dominican": 1, - "Ecuadorian": 1, - "Guatemalan": 1, - "Honduran": 1, - "Mexican": 1, - "Nicaraguan": 1, - "Panamanian": 1, - "Paraguayan": 1, - "Peruvian": 1, - "Puerto Rican": 1, - "Salvadoran": 1, - "Uruguayan": 1, - "Venezuelan": 1 - }, + "latina": { + "American": 1, + "Argentinian": 1, + "Belizean": 1, + "Bolivian": 1, + "Brazilian": 1, + "Chilean": 1, + "Colombian": 1, + "Costa Rican": 1, + "Cuban": 1, + "Dominican": 1, + "Ecuadorian": 1, + "Guatemalan": 1, + "Honduran": 1, + "Mexican": 1, + "Nicaraguan": 1, + "Panamanian": 1, + "Paraguayan": 1, + "Peruvian": 1, + "Puerto Rican": 1, + "Salvadoran": 1, + "Uruguayan": 1, + "Venezuelan": 1 + }, - malayNationalities: { - "Bruneian": 1, - "East Timorese": 1, - "Filipina": 1, - "Indonesian": 1, - "Malaysian": 1, - "Papua New Guinean": 1 - }, + "malay": { + "Bruneian": 1, + "East Timorese": 1, + "Filipina": 1, + "Indonesian": 1, + "Malaysian": 1, + "Papua New Guinean": 1 + }, - middleEasternNationalities: { - "Algerian": 1, - "Bahraini": 1, - "Egyptian": 1, - "Iraqi": 1, - "Jordanian": 1, - "Kuwaiti": 1, - "Lebanese": 1, - "Libyan": 1, - "Moroccan": 1, - "Omani": 1, - "Palestinian": 1, - "Qatari": 1, - "Sahrawi": 1, - "Saudi": 1, - "Sudanese": 1, - "Syrian": 1, - "Tunisian": 1, - "Yemeni": 1 - }, + "middle eastern": { + "Algerian": 1, + "Bahraini": 1, + "Egyptian": 1, + "Iraqi": 1, + "Jordanian": 1, + "Kuwaiti": 1, + "Lebanese": 1, + "Libyan": 1, + "Moroccan": 1, + "Omani": 1, + "Palestinian": 1, + "Qatari": 1, + "Sahrawi": 1, + "Saudi": 1, + "Sudanese": 1, + "Syrian": 1, + "Tunisian": 1, + "Yemeni": 1 + }, - mixedRaceNationalities: { - "Aruban": 1, - "Cape Verdean": 1, - "French Guianan": 1, - "São Toméan": 1, - "Seychellois": 1 - }, + "mixed race": { + "Aruban": 1, + "Cape Verdean": 1, + "French Guianan": 1, + "São Toméan": 1, + "Seychellois": 1 + }, - pacificIslanderNationalities: { - "a Cook Islander": 1, - "Fijian": 1, - "French Polynesian": 1, - "Guamanian": 1, - "I-Kiribati": 1, - "Marshallese": 1, - "Micronesian": 1, - "Nauruan": 1, - "New Caledonian": 1, - "Ni-Vanuatu": 1, - "Niuean": 1, - "Palauan": 1, - "Samoan": 1, - "a Solomon Islander": 1, - "Tongan": 1, - "Tuvaluan": 1 - }, + "pacific islander": { + "a Cook Islander": 1, + "Fijian": 1, + "French Polynesian": 1, + "Guamanian": 1, + "I-Kiribati": 1, + "Marshallese": 1, + "Micronesian": 1, + "Nauruan": 1, + "New Caledonian": 1, + "Ni-Vanuatu": 1, + "Niuean": 1, + "Palauan": 1, + "Samoan": 1, + "a Solomon Islander": 1, + "Tongan": 1, + "Tuvaluan": 1 + }, - semiticNationalities: {"Armenian": 1, "Georgian": 1, "Israeli": 1}, + "semitic": {"Armenian": 1, "Georgian": 1, "Israeli": 1}, - southernEuropeanNationalities: { - "Andorran": 1, - "Catalan": 1, - "Cypriot": 1, - "Greek": 1, - "Italian": 1, - "Maltese": 1, - "Monégasque": 1, - "Portuguese": 1, - "Sammarinese": 1, - "Spanish": 1, - "Vatican": 1 - }, + "southern european": { + "Andorran": 1, + "Catalan": 1, + "Cypriot": 1, + "Greek": 1, + "Italian": 1, + "Maltese": 1, + "Monégasque": 1, + "Portuguese": 1, + "Sammarinese": 1, + "Spanish": 1, + "Vatican": 1 + }, - whiteNationalities: { - "Albanian": 1, - "American": 1, - "Austrian": 1, - "Belarusian": 1, - "Belgian": 1, - "Bosnian": 1, - "Brazilian": 1, - "British": 1, - "Bulgarian": 1, - "Canadian": 1, - "Croatian": 1, - "Czech": 1, - "Danish": 1, - "Dutch": 1, - "Estonian": 1, - "Finnish": 1, - "French": 1, - "German": 1, - "Hungarian": 1, - "Icelandic": 1, - "Irish": 1, - "Kosovan": 1, - "Latvian": 1, - "a Liechtensteiner": 1, - "Lithuanian": 1, - "Luxembourgian": 1, - "Macedonian": 1, - "Moldovan": 1, - "Monégasque": 1, - "Montenegrin": 1, - "a New Zealander": 1, - "Norwegian": 1, - "Polish": 1, - "Romanian": 1, - "Russian": 1, - "Scottish": 1, - "Serbian": 1, - "Slovak": 1, - "Slovene": 1, - "Swedish": 1, - "Swiss": 1, - "Ukrainian": 1, - "Vatican": 1 + "white": { + "Albanian": 1, + "American": 1, + "Austrian": 1, + "Belarusian": 1, + "Belgian": 1, + "Bosnian": 1, + "Brazilian": 1, + "British": 1, + "Bulgarian": 1, + "Canadian": 1, + "Croatian": 1, + "Czech": 1, + "Danish": 1, + "Dutch": 1, + "Estonian": 1, + "Finnish": 1, + "French": 1, + "German": 1, + "Hungarian": 1, + "Icelandic": 1, + "Irish": 1, + "Kosovan": 1, + "Latvian": 1, + "a Liechtensteiner": 1, + "Lithuanian": 1, + "Luxembourgian": 1, + "Macedonian": 1, + "Moldovan": 1, + "Monégasque": 1, + "Montenegrin": 1, + "a New Zealander": 1, + "Norwegian": 1, + "Polish": 1, + "Romanian": 1, + "Russian": 1, + "Scottish": 1, + "Serbian": 1, + "Slovak": 1, + "Slovene": 1, + "Swedish": 1, + "Swiss": 1, + "Ukrainian": 1, + "Vatican": 1 + }, }, badWords: ["anus", "ass", "bitch", "boob", "butt", "cock", "crap", "cum", "cunny", "cunt", "dick", "fuck", "jizz", "junk", "piss", "prick", "pussy", "shit", "slave", "slut", "tit", "trash", "whore"], diff --git a/src/events/intro/customizeSlaveTrade.js b/src/events/intro/customizeSlaveTrade.js index d8891f6ddd0bbe70591b3bcd8c755b47d6985928..eb606d0398de1207eaabb6b8cec388bce18381ab 100644 --- a/src/events/intro/customizeSlaveTrade.js +++ b/src/events/intro/customizeSlaveTrade.js @@ -209,7 +209,7 @@ App.Intro.CustomSlaveTrade = function() { } } else { /* Filtered pop controls */ - const controlsNationality = setup[baseControlsFilter + 'Nationalities']; + const controlsNationality = setup.nationalitiesByRace[baseControlsFilter] || setup[baseControlsFilter + 'Nationalities']; const keys = Object.keys(controlsNationality); for (const nation of keys) { const li = document.createElement("LI"); diff --git a/src/npc/generate/slaveGenerationJS.js b/src/npc/generate/slaveGenerationJS.js index 69e6c88c14b5e570f370fc1fa6141cce661dd5f2..9f7e466bc3e3e445bfbb641a86646deb28a80646 100644 --- a/src/npc/generate/slaveGenerationJS.js +++ b/src/npc/generate/slaveGenerationJS.js @@ -18,9 +18,8 @@ globalThis.raceToNationality = function(slave) { } /* No success after 100 attempts, so just randomize according to race */ if (setup.raceSelector[slave.nationality] && !(slave.race in setup.raceSelector[slave.nationality]) && i === 100) { - const nationalityKey = `${slave.race.toLowerCase().replace(/[ -]/g, "")}Nationalities`; - if (nationalityKey in setup) { - slave.nationality = hashChoice(setup[nationalityKey]); + if (slave.race in setup.nationalitiesByRace) { + slave.nationality = hashChoice(setup.nationalitiesByRace[slave.race]); } else { slave.nationality = "Stateless"; }