From 5dc18e45d911a0d854d95be58841e85c9eb2335e Mon Sep 17 00:00:00 2001 From: Rob Nelson Date: Wed, 14 May 2014 00:47:56 -0700 Subject: [PATCH] Moved Vox DMI to a subfolder, added species-based random-naming, fixed preview. Tested. --- code/__HELPERS/mobs.dm | 6 +- code/game/gamemodes/heist/heist.dm | 13 +-- code/game/gamemodes/vampire/vampire_powers.dm | 2 +- code/modules/admin/verbs/one_click_antag.dm | 11 +-- code/modules/client/preferences.dm | 4 +- code/modules/client/preferences_savefile.dm | 2 +- code/modules/events/heist.dm | 12 +-- code/modules/mob/living/carbon/human/human.dm | 5 ++ .../mob/living/carbon/human/update_icons.dm | 4 +- code/modules/mob/living/carbon/species.dm | 44 +++++++--- code/modules/mob/mob.dm | 3 + code/modules/mob/new_player/new_player.dm | 6 +- .../mob/new_player/preferences_setup.dm | 80 ++++++++++-------- code/names.dm | 4 +- .../species/{vox_shoes.dmi => vox/shoes.dmi} | Bin .../{vox_w_uniform.dmi => vox/uniform.dmi} | Bin 16 files changed, 100 insertions(+), 96 deletions(-) rename icons/mob/species/{vox_shoes.dmi => vox/shoes.dmi} (100%) rename icons/mob/species/{vox_w_uniform.dmi => vox/uniform.dmi} (100%) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 25d9cde9357..022bf0d1029 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -37,9 +37,9 @@ proc/random_facial_hair_style(gender, species = "Human") return f_style -proc/random_name(gender, species = "Human") - if(gender==FEMALE) return capitalize(pick(first_names_female)) + " " + capitalize(pick(last_names)) - else return capitalize(pick(first_names_male)) + " " + capitalize(pick(last_names)) +proc/random_name(gender, speciesName = "Human") + var/datum/species/S = all_species[speciesName] + return S.makeName(gender) proc/random_skin_tone() switch(pick(60;"caucasian", 15;"afroamerican", 10;"african", 10;"latino", 5;"albino")) diff --git a/code/game/gamemodes/heist/heist.dm b/code/game/gamemodes/heist/heist.dm index 29c154f71e7..ae5cd956243 100644 --- a/code/game/gamemodes/heist/heist.dm +++ b/code/game/gamemodes/heist/heist.dm @@ -88,22 +88,13 @@ VOX HEIST ROUNDTYPE raider.current.loc = raider_spawn[index] index++ - var/sounds = rand(2,8) - var/i = 0 - var/newname = "" - - while(i<=sounds) - i++ - newname += pick(list("ti","hi","ki","ya","ta","ha","ka","ya","chi","cha","kah")) var/mob/living/carbon/human/vox = raider.current - - vox.real_name = capitalize(newname) - vox.name = vox.real_name raider.name = vox.name vox.age = rand(12,20) vox.dna.mutantrace = "vox" vox.set_species("Vox") + vox.generate_name() vox.languages = list() // Removing language from chargen. vox.flavor_text = "" vox.add_language("Vox-pidgin") @@ -165,7 +156,7 @@ VOX HEIST ROUNDTYPE //-All- vox raids have these two objectives. Failing them loses the game. objs += new /datum/objective/heist/inviolate_crew objs += new /datum/objective/heist/inviolate_death */ - + if(prob(25)) raid_objectives += new /datum/objective/heist/kidnap raid_objectives += new /datum/objective/heist/loot diff --git a/code/game/gamemodes/vampire/vampire_powers.dm b/code/game/gamemodes/vampire/vampire_powers.dm index 2c593d8c985..a674ab7eabe 100644 --- a/code/game/gamemodes/vampire/vampire_powers.dm +++ b/code/game/gamemodes/vampire/vampire_powers.dm @@ -196,7 +196,7 @@ if(!M) return if(M.current.vampire_power(50, 0)) M.current.visible_message("[M.current.name] transforms!") - M.current.client.prefs.real_name = random_name(M.current.gender) + M.current.client.prefs.real_name = M.current.generate_name() //random_name(M.current.gender) M.current.client.prefs.randomize_appearance_for(M.current) M.current.regenerate_icons() M.current.remove_vampire_blood(50) diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index 3599062faf3..e9983d731b5 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -500,21 +500,12 @@ client/proc/one_click_antag() new_vox.h_style = "Short Vox Quills" new_vox.regenerate_icons() - var/sounds = rand(2,10) - var/i = 0 - var/newname = "" - - while(i<=sounds) - i++ - newname += pick(list("ti","hi","ki","ya","ta","ha","ka","ya","chi","cha","kah")) - - new_vox.real_name = capitalize(newname) - new_vox.name = new_vox.real_name new_vox.age = rand(12,20) new_vox.dna.ready_dna(new_vox) // Creates DNA. new_vox.dna.mutantrace = "vox" new_vox.set_species("Vox") // Actually makes the vox! How about that. + new_vox.generate_name() new_vox.add_language("Vox-pidgin") new_vox.mind_initialize() new_vox.mind.assigned_role = "MODE" diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 92baf9cce72..a6a8d182269 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -890,7 +890,7 @@ datum/preferences if("random") switch(href_list["preference"]) if("name") - real_name = random_name(gender) + real_name = random_name(gender,species) if("age") age = rand(AGE_MIN, AGE_MAX) if("hair") @@ -1297,7 +1297,7 @@ datum/preferences proc/copy_to(mob/living/carbon/human/character, safety = 0) if(be_random_name) - real_name = random_name(gender) + real_name = random_name(gender,species) if(config.humans_need_surnames) var/firstspace = findtext(real_name, " ") diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 836e005f53c..c21cc9f461b 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -171,7 +171,7 @@ if(isnull(species)) species = "Human" if(isnull(language)) language = "None" if(isnull(nanotrasen_relation)) nanotrasen_relation = initial(nanotrasen_relation) - if(!real_name) real_name = random_name(gender) + if(!real_name) real_name = random_name(gender,species) be_random_name = sanitize_integer(be_random_name, 0, 1, initial(be_random_name)) gender = sanitize_gender(gender) age = sanitize_integer(age, AGE_MIN, AGE_MAX, initial(age)) diff --git a/code/modules/events/heist.dm b/code/modules/events/heist.dm index 431a1613efa..c2f38447ac1 100644 --- a/code/modules/events/heist.dm +++ b/code/modules/events/heist.dm @@ -79,21 +79,11 @@ var/global/list/datum/mind/raiders = list() //Antags. raider.current.loc = raider_spawn[index] index++ - var/sounds = rand(2,8) - var/i = 0 - var/newname = "" - - while(i<=sounds) - i++ - newname += pick(list("ti","hi","ki","ya","ta","ha","ka","ya","chi","cha","kah")) - var/mob/living/carbon/human/vox = raider.current - - vox.real_name = capitalize(newname) - vox.name = vox.real_name vox.age = rand(12,20) vox.dna.mutantrace = "vox" vox.set_species("Vox") + vox.generate_name() vox.languages = list() // Removing language from chargen. vox.flavor_text = "" vox.add_language("Vox-pidgin") diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 071550b9654..32da6e3ec09 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1304,6 +1304,11 @@ mob/living/carbon/human/yank_out_object() return(visible_implants) +/mob/living/carbon/human/generate_name() + name = species.makeName(gender,src) + real_name = name + return name + /mob/living/carbon/human/proc/handle_embedded_objects() for(var/datum/organ/external/organ in src.organs) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index ad645a0ab42..9b0e525db0b 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -506,8 +506,8 @@ proc/get_damage_icon_part(damage_state, body_part) var/obj/item/I = w_uniform if(species.name in I.species_fit) //Allows clothes to display differently for multiple species - if(species.w_uniform_icons) - standing.icon = species.w_uniform_icons + if(species.uniform_icons) + standing.icon = species.uniform_icons if(w_uniform.icon_override) standing.icon = w_uniform.icon_override diff --git a/code/modules/mob/living/carbon/species.dm b/code/modules/mob/living/carbon/species.dm index 6179ed3c087..156c14229d8 100644 --- a/code/modules/mob/living/carbon/species.dm +++ b/code/modules/mob/living/carbon/species.dm @@ -47,19 +47,20 @@ var/list/abilities = list() // For species-derived or admin-given powers - var/blood_color = "#A10808" //Red. - var/flesh_color = "#FFC896" //Pink. + var/blood_color = "#A10808" // Red. + var/flesh_color = "#FFC896" // Pink. - var/w_uniform_icons = null - var/gloves_icons = null - var/glasses_icons = null - var/ears_icons - var/shoes_icons = null - var/head_icons = null - var/belt_icons = null - var/wear_suit_icons = null - var/wear_mask_icons = null - var/back_icons = null + var/uniform_icons = 'icons/mob/uniform.dmi' + var/fat_uniform_icons = 'icons/mob/uniform_fat.dmi' + var/gloves_icons = 'icons/mob/hands.dmi' + var/glasses_icons = 'icons/mob/eyes.dmi' + var/ears_icons = 'icons/mob/ears.dmi' + var/shoes_icons = 'icons/mob/feet.dmi' + var/head_icons = 'icons/mob/head.dmi' + var/belt_icons = 'icons/mob/belt.dmi' + var/wear_suit_icons = 'icons/mob/suit.dmi' + var/wear_mask_icons = 'icons/mob/mask.dmi' + var/back_icons = 'icons/mob/back.dmi' /datum/species/proc/create_organs(var/mob/living/carbon/human/H) //Handles creation of mob organs. //This is a basic humanoid limb setup. @@ -104,6 +105,11 @@ /datum/species/proc/handle_post_spawn(var/mob/living/carbon/human/H) //Handles anything not already covered by basic species assignment. return +// Used for species-specific names (Vox, etc) +/datum/species/proc/makeName(var/gender,var/mob/living/carbon/human/H=null) + if(gender==FEMALE) return capitalize(pick(first_names_female)) + " " + capitalize(pick(last_names)) + else return capitalize(pick(first_names_male)) + " " + capitalize(pick(last_names)) + /datum/species/proc/handle_death(var/mob/living/carbon/human/H) //Handles any species-specific death events (such as dionaea nymph spawns). /* if(flags & IS_SYNTHETIC) @@ -249,8 +255,8 @@ blood_color = "#2299FC" flesh_color = "#808D11" - w_uniform_icons = 'icons/mob/species/vox_w_uniform.dmi' - shoes_icons = 'icons/mob/species/vox_shoes.dmi' + uniform_icons = 'icons/mob/species/vox/uniform.dmi' + shoes_icons = 'icons/mob/species/vox/shoes.dmi' equip(var/mob/living/carbon/human/H) // Unequip existing suits and hats. @@ -282,6 +288,16 @@ if (H.internals) H.internals.icon_state = "internal1" + makeName(var/gender,var/mob/living/carbon/human/H=null) + var/sounds = rand(2,8) + var/i = 0 + var/newname = "" + + while(i<=sounds) + i++ + newname += pick(vox_name_syllables) + return capitalize(newname) + /datum/species/diona name = "Diona" icobase = 'icons/mob/human_races/r_plant.dmi' diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 88c15368c0f..9a483ee8a65 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -16,6 +16,9 @@ living_mob_list += src ..() +/mob/proc/generate_name() + return name + /mob/proc/Cell() set category = "Admin" set hidden = 1 diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 575970e8648..c0b9abf425b 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -132,7 +132,7 @@ observer.alpha = 127 if(client.prefs.be_random_name) - client.prefs.real_name = random_name(client.prefs.gender) + client.prefs.real_name = random_name(client.prefs.gender,client.prefs.species) observer.real_name = client.prefs.real_name observer.name = observer.real_name if(!client.holder && !config.antag_hud_allowed) // For new ghosts we remove the verb from even showing up if it's not allowed. @@ -391,10 +391,10 @@ Round Duration: [round(hours)]h [round(mins)]m
"} var/datum/language/chosen_language if(client.prefs.language) - chosen_language = all_languages["[client.prefs.language]"] + chosen_language = all_languages[client.prefs.language] if(chosen_language) if(is_alien_whitelisted(src, client.prefs.language) || !config.usealienwhitelist || !(chosen_language.flags & WHITELISTED)) - new_character.add_language("client.prefs.language") + new_character.add_language(client.prefs.language) if(ticker.random_players || appearance_isbanned(src)) //disabling ident bans for now new_character.gender = pick(MALE, FEMALE) client.prefs.real_name = random_name(new_character.gender) diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 343930f5a39..ad48a154130 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -202,14 +202,20 @@ datum/preferences eyes_s.Blend(facial_s, ICON_OVERLAY) var/icon/clothes_s = null - var/uniform_dmi='icons/mob/uniform.dmi' - if(disabilities&DISABILITY_FLAG_FAT) - uniform_dmi='icons/mob/uniform_fat.dmi' + + // UNIFORM DMI + var/uniform_dmi=current_species.uniform_icons + if(disabilities&DISABILITY_FLAG_FAT && current_species.fat_uniform_icons) + uniform_dmi=current_species.fat_uniform_icons + + // SHOES DMI + var/feet_dmi=current_species.shoes_icons + if(!for_observer) // Commenting this check so that, if all else fails, the preview icon is never naked. - N3X //if(job_civilian_low & ASSISTANT) //This gives the preview icon clothes depending on which job(if any) is set to 'high' clothes_s = new /icon(uniform_dmi, "grey_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") //else @@ -217,68 +223,68 @@ datum/preferences switch(job_civilian_high) if(HOP) clothes_s = new /icon(uniform_dmi, "hop_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "armor"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "helmet"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(BARTENDER) clothes_s = new /icon(uniform_dmi, "ba_suit_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "armor"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(BOTANIST) clothes_s = new /icon(uniform_dmi, "hydroponics_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "ggloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "apron"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-hyd") if(CHEF) clothes_s = new /icon(uniform_dmi, "chef_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "chef"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(JANITOR) clothes_s = new /icon(uniform_dmi, "janitor_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(LIBRARIAN) clothes_s = new /icon(uniform_dmi, "red_suit_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(QUARTERMASTER) clothes_s = new /icon(uniform_dmi, "qm_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/eyes.dmi', "sun"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/items_righthand.dmi', "clipboard"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(CARGOTECH) clothes_s = new /icon(uniform_dmi, "cargotech_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(MINER) clothes_s = new /icon(uniform_dmi, "miner_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-eng") if(LAWYER) clothes_s = new /icon(uniform_dmi, "internalaffairs_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/items_righthand.dmi', "briefcase"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(CHAPLAIN) clothes_s = new /icon(uniform_dmi, "chapblack_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(CLOWN) clothes_s = new /icon(uniform_dmi, "clown_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "clown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "clown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/mask.dmi', "clown"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/back.dmi', "clownpack"), ICON_OVERLAY) if(MIME) clothes_s = new /icon(uniform_dmi, "mime_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "lgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/mask.dmi', "mime"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "beret"), ICON_OVERLAY) @@ -289,46 +295,46 @@ datum/preferences switch(job_medsci_high) if(RD) clothes_s = new /icon(uniform_dmi, "director_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/items_righthand.dmi', "clipboard"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-tox") if(SCIENTIST) clothes_s = new /icon(uniform_dmi, "toxinswhite_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "white"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_tox_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-tox") if(CHEMIST) clothes_s = new /icon(uniform_dmi, "chemistrywhite_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "white"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_chem_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-chem") if(CMO) clothes_s = new /icon(uniform_dmi, "cmo_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/items_lefthand.dmi', "firstaid"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_cmo_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-med") if(DOCTOR) clothes_s = new /icon(uniform_dmi, "medical_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "white"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/items_lefthand.dmi', "firstaid"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-med","medicalpack") if(GENETICIST) clothes_s = new /icon(uniform_dmi, "geneticswhite_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "white"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_gen_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-gen") if(VIROLOGIST) clothes_s = new /icon(uniform_dmi, "virologywhite_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "white"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/mask.dmi', "sterile"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_vir_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-vir","medicalpack") if(ROBOTICIST) clothes_s = new /icon(uniform_dmi, "robotics_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/items_righthand.dmi', "toolbox_blue"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_open"), ICON_OVERLAY) @@ -338,7 +344,7 @@ datum/preferences switch(job_engsec_high) if(CAPTAIN) clothes_s = new /icon(uniform_dmi, "captain_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "captain"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/mask.dmi', "cigaron"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/eyes.dmi', "sun"), ICON_OVERLAY) @@ -346,21 +352,21 @@ datum/preferences clothes_s=blend_backpack(clothes_s,backbag,"satchel-cap") if(HOS) clothes_s = new /icon(uniform_dmi, "hosred_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "jackboots"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "jackboots"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "helmet"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "armor"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-sec","securitypack") if(WARDEN) clothes_s = new /icon(uniform_dmi, "warden_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "jackboots"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "jackboots"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "helmet"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "armor"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-sec","securitypack") if(DETECTIVE) clothes_s = new /icon(uniform_dmi, "detective_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/mask.dmi', "cigaron"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "detective"), ICON_OVERLAY) @@ -368,13 +374,13 @@ datum/preferences clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(OFFICER) clothes_s = new /icon(uniform_dmi, "secred_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "jackboots"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "jackboots"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "helmet"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "armor"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-sec","securitypack") if(CHIEF) clothes_s = new /icon(uniform_dmi, "chief_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/belt.dmi', "utility"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/mask.dmi', "cigaron"), ICON_OVERLAY) @@ -382,36 +388,36 @@ datum/preferences clothes_s=blend_backpack(clothes_s,backbag,"satchel-eng","engiepack") if(ENGINEER) clothes_s = new /icon(uniform_dmi, "engine_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "orange"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "orange"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/belt.dmi', "utility"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "hardhat0_yellow"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-eng","engiepack") if(ATMOSTECH) clothes_s = new /icon(uniform_dmi, "atmos_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/belt.dmi', "utility"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(ROBOTICIST) clothes_s = new /icon(uniform_dmi, "robotics_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/items_righthand.dmi', "toolbox_blue"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_open"), ICON_OVERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(AI)//Gives AI and borgs assistant-wear, so they can still customize their character clothes_s = new /icon(uniform_dmi, "grey_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(CYBORG) clothes_s = new /icon(uniform_dmi, "grey_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") // Observers get tourist outfit. else clothes_s = new /icon(uniform_dmi, "tourist_s") - clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY) + clothes_s.Blend(new /icon(feet_dmi, "black"), ICON_UNDERLAY) clothes_s=blend_backpack(clothes_s,backbag,"satchel-norm") if(disabilities & NEARSIGHTED) diff --git a/code/names.dm b/code/names.dm index ab101d76c6e..477c13bfd12 100644 --- a/code/names.dm +++ b/code/names.dm @@ -13,4 +13,6 @@ var/list/clown_names = file2list("config/names/clown.txt") var/list/verbs = file2list("config/names/verbs.txt") var/list/adjectives = file2list("config/names/adjectives.txt") //loaded on startup because of " -//would include in rsc if ' was used \ No newline at end of file +//would include in rsc if ' was used + +var/list/vox_name_syllables = list("ti","hi","ki","ya","ta","ha","ka","ya","chi","cha","kah") \ No newline at end of file diff --git a/icons/mob/species/vox_shoes.dmi b/icons/mob/species/vox/shoes.dmi similarity index 100% rename from icons/mob/species/vox_shoes.dmi rename to icons/mob/species/vox/shoes.dmi diff --git a/icons/mob/species/vox_w_uniform.dmi b/icons/mob/species/vox/uniform.dmi similarity index 100% rename from icons/mob/species/vox_w_uniform.dmi rename to icons/mob/species/vox/uniform.dmi