diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm
index 12b5328e579..70afb38bd0d 100644
--- a/code/game/jobs/job/job.dm
+++ b/code/game/jobs/job/job.dm
@@ -156,17 +156,19 @@
/datum/outfit/job/post_equip(mob/living/carbon/human/H)
var/obj/item/weapon/card/id/C = H.wear_id
- var/datum/job/J = SSjob.GetJob(H.job) // Not sure the best idea
- C.access = J.get_access()
- C.registered_name = H.real_name
- C.assignment = H.job
- C.update_label()
- H.sec_hud_set_ID()
+ if(istype(C))
+ var/datum/job/J = SSjob.GetJob(H.job) // Not sure the best idea
+ C.access = J.get_access()
+ C.registered_name = H.real_name
+ C.assignment = H.job
+ C.update_label()
+ H.sec_hud_set_ID()
var/obj/item/device/pda/PDA = H.get_item_by_slot(pda_slot)
- PDA.owner = H.real_name
- PDA.ownjob = H.job
- PDA.update_label()
+ if(istype(PDA))
+ PDA.owner = H.real_name
+ PDA.ownjob = H.job
+ PDA.update_label()
/datum/outfit/job/proc/announce_head(var/mob/living/carbon/human/H, var/channels) //tells the given channel that the given mob is the new department head. See communications.dm for valid channels.
spawn(4) //to allow some initialization
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index a307e6407a1..2f4d81de3a2 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -56,8 +56,7 @@ var/list/preferences_datums = list()
var/list/custom_names = list("clown", "mime", "ai", "cyborg", "religion", "deity")
//Mob preview
- var/icon/preview_icon_front = null
- var/icon/preview_icon_side = null
+ var/icon/preview_icon = null
//Jobs, uses bitflags
var/job_civilian_high = 0
@@ -113,8 +112,7 @@ var/list/preferences_datums = list()
/datum/preferences/proc/ShowChoices(mob/user)
if(!user || !user.client) return
update_preview_icon()
- user << browse_rsc(preview_icon_front, "previewicon.png")
- user << browse_rsc(preview_icon_side, "previewicon2.png")
+ user << browse_rsc(preview_icon, "previewicon.png")
var/dat = "
"
dat += "Character Settings "
@@ -168,7 +166,7 @@ var/list/preferences_datums = list()
dat += ""
- dat += ""
+ dat += ""
dat += " | "
diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm
index 8cebce6b253..13c537e6bb7 100644
--- a/code/modules/mob/new_player/preferences_setup.dm
+++ b/code/modules/mob/new_player/preferences_setup.dm
@@ -20,407 +20,62 @@
features = random_features()
age = rand(AGE_MIN,AGE_MAX)
-/datum/preferences/proc/update_preview_icon() //seriously. This is horrendous.
- del(preview_icon_front)
- del(preview_icon_side)
- var/icon/preview_icon = null
-
- if(job_engsec_high) //cyborg/AI check, put first to avoid so much unneeded blending
+/datum/preferences/proc/update_preview_icon()
+ // Silicons only need a very basic preview since there is no customization for them.
+ if(job_engsec_high)
switch(job_engsec_high)
if(AI)
- preview_icon = new /icon('icons/mob/AI.dmi', "AI")
-
+ preview_icon = icon('icons/mob/AI.dmi', "AI", SOUTH)
+ preview_icon.Scale(64, 64)
+ return
if(CYBORG)
- preview_icon = new /icon('icons/mob/robots.dmi', "robot")
+ preview_icon = icon('icons/mob/robots.dmi', "robot", SOUTH)
+ preview_icon.Scale(64, 64)
+ return
- if(preview_icon) //We're busting out!
- preview_icon_front = new(preview_icon, dir = SOUTH)
- preview_icon_side = new(preview_icon, dir = WEST)
+ // Set up the dummy for its photoshoot
+ var/mob/living/carbon/human/dummy/mannequin = new()
+ mannequin.status_flags |= GODMODE // Why not?
+ copy_to(mannequin)
- del(preview_icon)
- return
+ // Determine what job is marked as 'High' priority, and dress them up as such.
+ var/datum/job/previewJob
+ var/highRankFlag = job_civilian_high | job_medsci_high | job_engsec_high
- var/g = "m"
- if(gender == FEMALE) g = "f"
+ if(job_civilian_low & ASSISTANT)
+ previewJob = SSjob.GetJob("Assistant")
+ else if(highRankFlag)
+ var/highDeptFlag
+ if(job_civilian_high)
+ highDeptFlag = CIVILIAN
+ else if(job_medsci_high)
+ highDeptFlag = MEDSCI
+ else if(job_engsec_high)
+ highDeptFlag = ENGSEC
- if(pref_species.id == "human" || !config.mutant_races)
- preview_icon = new /icon('icons/mob/human.dmi', "[skin_tone]_[g]_s")
- else
- preview_icon = new /icon('icons/mob/human.dmi', "[pref_species.id]_[g]_s")
- preview_icon.Blend("#[features["mcolor"]]", ICON_MULTIPLY)
+ for(var/datum/job/job in SSjob.occupations)
+ if(job.flag == highRankFlag && job.department_flag == highDeptFlag)
+ previewJob = job
+ break
- var/datum/sprite_accessory/S
- var/icon/eyes_s = new/icon()
- if(EYECOLOR in pref_species.specflags)
- eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = "[pref_species.eyes]_s")
- eyes_s.Blend("#[eye_color]", ICON_MULTIPLY)
+ if(previewJob)
+ mannequin.job = previewJob.title
+ previewJob.equip(mannequin)
- S = hair_styles_list[hair_style]
- if(S && (HAIR in pref_species.specflags))
- var/icon/hair_s = new/icon("icon" = S.icon, "icon_state" = "[S.icon_state]_s")
- hair_s.Blend("#[hair_color]", ICON_MULTIPLY)
- eyes_s.Blend(hair_s, ICON_OVERLAY)
+ preview_icon = icon('icons/effects/effects.dmi', "nothing")
+ preview_icon.Scale(48+32, 16+32)
- S = facial_hair_styles_list[facial_hair_style]
- if(S && (FACEHAIR in pref_species.specflags))
- var/icon/facial_s = new/icon("icon" = S.icon, "icon_state" = "[S.icon_state]_s")
- facial_s.Blend("#[facial_hair_color]", ICON_MULTIPLY)
- eyes_s.Blend(facial_s, ICON_OVERLAY)
+ mannequin.dir = NORTH
+ var/icon/stamp = getFlatIcon(mannequin)
+ preview_icon.Blend(stamp, ICON_OVERLAY, 25, 17)
- var/list/relevent_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER)
- var/icon_state_string = "[pref_species.id]_"
+ mannequin.dir = WEST
+ stamp = getFlatIcon(mannequin)
+ preview_icon.Blend(stamp, ICON_OVERLAY, 1, 9)
- if(pref_species.sexes)
- icon_state_string += "[g]_s"
- else
- icon_state_string += "_s"
+ mannequin.dir = SOUTH
+ stamp = getFlatIcon(mannequin)
+ preview_icon.Blend(stamp, ICON_OVERLAY, 49, 1)
- for(var/layer in relevent_layers)
- for(var/bodypart in pref_species.mutant_bodyparts)
- switch(bodypart)
- if("tail_lizard")
- S = tails_list_lizard[features["tail_lizard"]]
- if("tail_human")
- S = tails_list_human[features["tail_human"]]
- if("spines")
- S = spines_list[features["spines"]]
- if("snout")
- S = snouts_list[features["snout"]]
- if("frills")
- S = frills_list[features["frills"]]
- if("horns")
- S = horns_list[features["horns"]]
- if("ears")
- S = ears_list[features["ears"]]
- if("body_markings")
- S = body_markings_list[features["body_markings"]]
-
- if(!S || S.icon_state == "none")
- continue
-
- //A little rename so we don't have to use tail_lizard or tail_human when naming the sprites.
- if(bodypart == "tail_lizard" || bodypart == "tail_human")
- bodypart = "tail"
-
- if(S.hasinner)
- preview_icon.Blend(new/icon("icon" = 'icons/mob/mutant_bodyparts.dmi', "icon_state" = "[pref_species.id]_m_[bodypart]inner_[S.icon_state]_[layer]"), ICON_OVERLAY)
-
- var/icon_string
-
- if(S.gender_specific)
- icon_string = "[pref_species.id]_[g]_[bodypart]_[S.icon_state]_[layer]"
- else
- icon_string = "[pref_species.id]_m_[bodypart]_[S.icon_state]_[layer]"
- var/icon/part = new/icon("icon" = 'icons/mob/mutant_bodyparts.dmi', "icon_state" = icon_string)
-
- switch(S.color_src)
- if(MUTCOLORS)
- part.Blend("#[features["mcolor"]]", ICON_MULTIPLY)
- if(HAIR)
- if(hair_color == "mutcolor")
- part.Blend("#[features["mcolor"]]", ICON_MULTIPLY)
- else
- part.Blend("#[hair_color]", ICON_MULTIPLY)
- if(FACEHAIR)
- part.Blend("#[facial_hair_color]", ICON_MULTIPLY)
- if(EYECOLOR)
- part.Blend("#[eye_color]", ICON_MULTIPLY)
-
- preview_icon.Blend(part, ICON_OVERLAY)
-
- if(underwear)
- S = underwear_list[underwear]
- if(S)
- preview_icon.Blend(new /icon(S.icon, "[S.icon_state]_s"), ICON_OVERLAY)
-
- if(undershirt)
- S = undershirt_list[undershirt]
- if(S)
- preview_icon.Blend(new /icon(S.icon, "[S.icon_state]_s"), ICON_OVERLAY)
-
- if(socks)
- S = socks_list[socks]
- if(S)
- preview_icon.Blend(new /icon(S.icon, "[S.icon_state]_s"), ICON_OVERLAY)
-
- var/icon/clothes_s = null
- 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('icons/mob/uniform.dmi', "grey_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- else if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
-
- else if(job_civilian_high)//I hate how this looks, but there's no reason to go through this switch if it's empty
- switch(job_civilian_high)
- if(HOP)
- clothes_s = new /icon('icons/mob/uniform.dmi', "hop_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/head.dmi', "hopcap"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- else if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(BARTENDER)
- clothes_s = new /icon('icons/mob/uniform.dmi', "barman_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "armor"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- else if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(BOTANIST)
- clothes_s = new /icon('icons/mob/uniform.dmi', "hydroponics_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/hands.dmi', "ggloves"), ICON_UNDERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "apron"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- else if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(COOK)
- clothes_s = new /icon('icons/mob/uniform.dmi', "chef_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/head.dmi', "chef"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "chef"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(JANITOR)
- clothes_s = new /icon('icons/mob/uniform.dmi', "janitor_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(LIBRARIAN)
- clothes_s = new /icon('icons/mob/uniform.dmi', "red_suit_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(QUARTERMASTER)
- clothes_s = new /icon('icons/mob/uniform.dmi', "qm_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/eyes.dmi', "sun"), ICON_UNDERLAY)
- clothes_s.Blend(new /icon('icons/mob/inhands/items_lefthand.dmi', "clipboard"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(CARGOTECH)
- clothes_s = new /icon('icons/mob/uniform.dmi', "cargo_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(MINER)
- clothes_s = new /icon('icons/mob/uniform.dmi', "miner_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "engiepack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-eng"), ICON_OVERLAY)
- if(LAWYER)
- clothes_s = new /icon('icons/mob/uniform.dmi', "bluesuit_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "laceups"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "suitjacket_blue"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/inhands/items_lefthand.dmi', "briefcase"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(CHAPLAIN)
- clothes_s = new /icon('icons/mob/uniform.dmi', "chapblack_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/inhands/items_lefthand.dmi', "bible"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(CLOWN)
- clothes_s = new /icon('icons/mob/uniform.dmi', "clown_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "clown"), ICON_OVERLAY)
- 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('icons/mob/uniform.dmi', "mime_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- 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)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "suspenders"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "mimepack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
-
- else if(job_medsci_high)
- switch(job_medsci_high)
- if(RD)
- clothes_s = new /icon('icons/mob/uniform.dmi', "director_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/inhands/items_lefthand.dmi', "clipboard"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(SCIENTIST)
- clothes_s = new /icon('icons/mob/uniform.dmi', "toxinswhite_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_tox"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(CHEMIST)
- clothes_s = new /icon('icons/mob/uniform.dmi', "chemistrywhite_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_chem"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(CMO)
- clothes_s = new /icon('icons/mob/uniform.dmi', "cmo_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_cmo"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/inhands/items_lefthand.dmi', "firstaid"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "medicalpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-med"), ICON_OVERLAY)
- if(DOCTOR)
- clothes_s = new /icon('icons/mob/uniform.dmi', "medical_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/inhands/items_lefthand.dmi', "firstaid"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "medicalpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-med"), ICON_OVERLAY)
- if(GENETICIST)
- clothes_s = new /icon('icons/mob/uniform.dmi', "geneticswhite_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_gen"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(VIROLOGIST)
- clothes_s = new /icon('icons/mob/uniform.dmi', "virologywhite_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/mask.dmi', "sterile"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_vir"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "medicalpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-med"), ICON_OVERLAY)
- if(ROBOTICIST)
- clothes_s = new /icon('icons/mob/uniform.dmi', "robotics_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/inhands/items_lefthand.dmi', "toolbox_blue"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
-
- else if(job_engsec_high)
- switch(job_engsec_high)
- if(CAPTAIN)
- clothes_s = new /icon('icons/mob/uniform.dmi', "captain_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/head.dmi', "captain"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/eyes.dmi', "sun"), ICON_UNDERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "capcarapace"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "captainpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-cap"), ICON_OVERLAY)
- if(HOS)
- clothes_s = new /icon('icons/mob/uniform.dmi', "hos_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "jackboots"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY)
- clothes_s.Blend(new /icon('icons/mob/head.dmi', "hosberetblack"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/eyes.dmi', "sunhud"), ICON_UNDERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "hostrench"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "securitypack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-sec"), ICON_OVERLAY)
- if(WARDEN)
- clothes_s = new /icon('icons/mob/uniform.dmi', "warden_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "jackboots"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/hands.dmi', "bgloves"), ICON_UNDERLAY)
- clothes_s.Blend(new /icon('icons/mob/head.dmi', "policehelm"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/eyes.dmi', "sunhud"), ICON_UNDERLAY)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "warden_jacket"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "securitypack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-sec"), ICON_OVERLAY)
- if(DETECTIVE)
- clothes_s = new /icon('icons/mob/uniform.dmi', "detective_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_OVERLAY)
- 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)
- clothes_s.Blend(new /icon('icons/mob/suit.dmi', "detective"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
- if(OFFICER)
- clothes_s = new /icon('icons/mob/uniform.dmi', "security_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "jackboots"), ICON_OVERLAY)
- 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)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "securitypack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-sec"), ICON_OVERLAY)
- if(CHIEF)
- clothes_s = new /icon('icons/mob/uniform.dmi', "chief_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_OVERLAY)
- 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)
- clothes_s.Blend(new /icon('icons/mob/head.dmi', "hardhat0_white"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "engiepack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-eng"), ICON_OVERLAY)
- if(ENGINEER)
- clothes_s = new /icon('icons/mob/uniform.dmi', "engine_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "workboots"), ICON_OVERLAY)
- 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)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "engiepack"), ICON_OVERLAY)
- if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-eng"), ICON_OVERLAY)
- if(ATMOSTECH)
- clothes_s = new /icon('icons/mob/uniform.dmi', "atmos_s")
- clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_OVERLAY)
- clothes_s.Blend(new /icon('icons/mob/belt.dmi', "utility"), ICON_OVERLAY)
- if(backbag == 1)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
- else if(backbag == 2)
- clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-norm"), ICON_OVERLAY)
-
- preview_icon.Blend(eyes_s, ICON_OVERLAY)
- if(clothes_s)
- preview_icon.Blend(clothes_s, ICON_OVERLAY)
- preview_icon_front = new(preview_icon, dir = SOUTH)
- preview_icon_side = new(preview_icon, dir = WEST)
-
- del(preview_icon)
- del(eyes_s)
- del(clothes_s)
\ No newline at end of file
+ preview_icon.Scale(preview_icon.Width() * 2, preview_icon.Height() * 2) // Scaling here to prevent blurring in the browser.
+ qdel(mannequin)