Generalizes whitelist/species lists for datacore/preferences/new player code. Removes vox whitelist check from raid spawn.

This commit is contained in:
Zuhayr
2013-08-07 01:16:38 -07:00
parent e9a1272d34
commit b5d89b8929
6 changed files with 53 additions and 105 deletions
@@ -18,7 +18,7 @@
/mob/living/carbon/human/tajaran/New()
h_style = "Tajaran Ears"
set_species("Tajara")
set_species("Tajaran")
..()
/mob/living/carbon/human/unathi/New()
+14 -21
View File
@@ -347,28 +347,21 @@
var/mob/living/carbon/human/new_character = new(loc)
new_character.lastarea = get_area(loc)
if(client.prefs.species == "Tajaran") //This is like the worst, but it works, so meh. - Erthilo
if(is_alien_whitelisted(src, "Tajaran") || !config.usealienwhitelist)
new_character.set_species("Tajara")
new_character.add_language("Siik'mas")
if(client.prefs.species == "Unathi")
if(is_alien_whitelisted(src, "Soghun") || !config.usealienwhitelist)
new_character.set_species("Unathi")
new_character.add_language("Sinta'unathi")
if(client.prefs.species == "Skrell")
if(is_alien_whitelisted(src, "Skrell") || !config.usealienwhitelist)
new_character.set_species("Skrell")
new_character.add_language("Skrellian")
var/datum/species/chosen_species
if(client.prefs.species)
chosen_species = all_species[client.prefs.species]
if(chosen_species)
if(is_alien_whitelisted(src, client.prefs.species) || !config.usealienwhitelist || !(chosen_species.flags & WHITELISTED))
new_character.set_species(client.prefs.species)
if(chosen_species.language)
new_character.add_language(chosen_species.language)
if(client.prefs.language == "Tajaran")
if(is_alien_whitelisted(src, "Language_Tajaran") || !config.usealienwhitelist)
new_character.add_language("Siik'mas")
if(client.prefs.language == "Unathi")
if(is_alien_whitelisted(src, "Language_Soghun") || !config.usealienwhitelist)
new_character.add_language("Sinta'unathi")
if(client.prefs.language == "Skrell")
if(is_alien_whitelisted(src, "Language_Skrell") || !config.usealienwhitelist)
new_character.add_language("Skrellian")
var/datum/language/chosen_language
if(client.prefs.language)
chosen_language = all_languages[client.prefs.language]
if(chosen_language)
if(is_alien_whitelisted(src, client.prefs.language) || !config.usealienwhitelist)
new_character.add_language(client.prefs.language)
if(ticker.random_players)
new_character.gender = pick(MALE, FEMALE)
@@ -137,19 +137,13 @@ datum/preferences
if(gender == FEMALE) g = "f"
var/icon/icobase
switch(species)
if("Tajaran")
icobase = 'icons/mob/human_races/r_tajaran.dmi'
if("Unathi")
icobase = 'icons/mob/human_races/r_lizard.dmi'
if("Skrell")
icobase = 'icons/mob/human_races/r_skrell.dmi'
var/datum/species/current_species = all_species[species]
if("Vox")
icobase = 'icons/mob/human_races/r_vox.dmi'
if(current_species)
icobase = current_species.icobase
else
icobase = 'icons/mob/human_races/r_human.dmi'
else
icobase = 'icons/mob/human_races/r_human.dmi'
preview_icon = new /icon(icobase, "torso_[g]")
preview_icon.Blend(new /icon(icobase, "groin_[g]"), ICON_OVERLAY)
preview_icon.Blend(new /icon(icobase, "head_[g]"), ICON_OVERLAY)
@@ -169,16 +163,13 @@ datum/preferences
preview_icon.Blend(temp, ICON_OVERLAY)
// Skin tone
if(species == "Human")
if(current_species && (current_species.flags & HAS_SKIN_TONE))
if (s_tone >= 0)
preview_icon.Blend(rgb(s_tone, s_tone, s_tone), ICON_ADD)
else
preview_icon.Blend(rgb(-s_tone, -s_tone, -s_tone), ICON_SUBTRACT)
var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = "eyes_s")
if(species=="Vox")
eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = "vox_eyes_s")
var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = current_species ? current_species.eyes : "eyes_s")
eyes_s.Blend(rgb(r_eyes, g_eyes, b_eyes), ICON_ADD)
var/datum/sprite_accessory/hair_style = hair_styles_list[h_style]