From 59def2920299bd617db4a97adbfbd0c2f546f4d4 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sun, 4 Mar 2018 21:58:12 -0500 Subject: [PATCH 01/15] U_I Phase 0.5: Organize and comment --- .../mob/living/carbon/human/update_icons.dm | 1178 +++++++++-------- 1 file changed, 643 insertions(+), 535 deletions(-) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 85eae14cee..dca005c57f 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -521,6 +521,8 @@ var/global/list/damage_icon_parts = list() //Reset our eyes overlays_standing[EYES_LAYER] = null + //TODO: Probably redo this. I know I wrote it, but... + //This is ONLY for glowing eyes for now. Boring flat eyes are done by the head's own proc. if(!species.has_glowing_eyes) if(update_icons) update_icons_layers() @@ -552,7 +554,7 @@ var/global/list/damage_icon_parts = list() var/image/eyes_image = image(eyes_icon) eyes_image.plane = PLANE_LIGHTING_ABOVE - overlays_standing[EYES_LAYER] = eyes_image + overlays_standing[EYES_LAYER] = eyes_image if(update_icons) update_icons_layers() @@ -560,47 +562,35 @@ var/global/list/damage_icon_parts = list() if(QDESTROYING(src)) return + overlays_standing[MUTATIONS_LAYER] = null + + if(!LAZYLEN(mutations)) + if(update_icons) update_icons_layers() + return //No mutations, no icons. + + //TODO: THIS PROC??? var/fat if(FAT in mutations) fat = "fat" - var/image/standing = image("icon" = 'icons/effects/genetics.dmi') - var/add_image = 0 - var/g = "m" - if(gender == FEMALE) g = "f" - // DNA2 - Drawing underlays. + var/image/standing = image(icon = 'icons/effects/genetics.dmi') + var/g = gender == FEMALE ? "f" : "m" + for(var/datum/dna/gene/gene in dna_genes) if(!gene.block) continue if(gene.is_active(src)) - var/underlay=gene.OnDrawUnderlays(src,g,fat) + var/underlay = gene.OnDrawUnderlays(src,g,fat) if(underlay) standing.underlays += underlay - add_image = 1 + for(var/mut in mutations) - switch(mut) - /* - if(HULK) - if(fat) - standing.underlays += "hulk_[fat]_s" - else - standing.underlays += "hulk_[g]_s" - add_image = 1 - if(COLD_RESISTANCE) - standing.underlays += "fire[fat]_s" - add_image = 1 - if(TK) - standing.underlays += "telekinesishead[fat]_s" - add_image = 1 - */ - if(LASER) - standing.overlays += "lasereyes_s" - add_image = 1 - if(add_image) - overlays_standing[MUTATIONS_LAYER] = standing - else - overlays_standing[MUTATIONS_LAYER] = null - if(update_icons) update_icons_layers() + if(LASER) + standing.overlays += "lasereyes_s" //TODO + + overlays_standing[MUTATIONS_LAYER] = standing + + if(update_icons) update_icons_layers() /* --------------------------------------- */ //For legacy support. @@ -647,61 +637,71 @@ var/global/list/damage_icon_parts = list() if(QDESTROYING(src)) return - if( (w_uniform && istype(w_uniform, /obj/item/clothing/under)) && !(wear_suit && istype(wear_suit, /obj/item/clothing/suit/space) && wear_suit.flags_inv & HIDEJUMPSUIT && !istype(wear_suit, /obj/item/clothing/suit/space/rig) )) - w_uniform.screen_loc = ui_iclothing + overlays_standing[UNIFORM_LAYER] = null - //determine the icon to use - var/icon/under_icon - if(w_uniform.icon_override) - under_icon = w_uniform.icon_override - else if(w_uniform.sprite_sheets && w_uniform.sprite_sheets[species.get_bodytype(src)]) - under_icon = w_uniform.sprite_sheets[species.get_bodytype(src)] - else if(w_uniform.item_icons && w_uniform.item_icons[slot_w_uniform_str]) - under_icon = w_uniform.item_icons[slot_w_uniform_str] - else - under_icon = INV_W_UNIFORM_DEF_ICON + if(!(w_uniform && istype(w_uniform, /obj/item/clothing/under))) + if(update_icons) update_icons_layers() + return //Not wearing a uniform (dumb check) + + if(wear_suit && istype(wear_suit, /obj/item/clothing/suit/space) && (wear_suit.flags_inv & HIDEJUMPSUIT) && !istype(wear_suit, /obj/item/clothing/suit/space/rig)) + if(update_icons) update_icons_layers() + return //Wearing a suit that prevents uniform rendering - //determine state to use - var/under_state - if(w_uniform.item_state_slots && w_uniform.item_state_slots[slot_w_uniform_str]) - under_state = w_uniform.item_state_slots[slot_w_uniform_str] - else if(w_uniform.item_state) - under_state = w_uniform.item_state - else - under_state = w_uniform.icon_state + //Align this item on the inventory screen TODO: Move this elsewhere + w_uniform.screen_loc = ui_iclothing - //need to append _s to the icon state for legacy compatibility - var/image/standing = image(icon = under_icon, icon_state = "[under_state]_s") - - if(w_uniform.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = w_uniform.addblends) - if(w_uniform.color) - base.Blend(w_uniform.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = w_uniform.color - - //apply blood overlay - if(w_uniform.blood_DNA) - var/image/bloodsies = image(icon = species.get_blood_mask(src), icon_state = "uniformblood") - bloodsies.color = w_uniform.blood_color - standing.overlays += bloodsies - - //accessories - var/obj/item/clothing/under/under = w_uniform - if(under.accessories.len) - for(var/obj/item/clothing/accessory/A in under.accessories) - standing.overlays |= A.get_mob_overlay() - - overlays_standing[UNIFORM_LAYER] = standing + //Pick an icon file + var/icon/under_icon + if(w_uniform.icon_override) + under_icon = w_uniform.icon_override + else if(w_uniform.sprite_sheets && w_uniform.sprite_sheets[species.get_bodytype(src)]) + under_icon = w_uniform.sprite_sheets[species.get_bodytype(src)] + else if(w_uniform.item_icons && w_uniform.item_icons[slot_w_uniform_str]) + under_icon = w_uniform.item_icons[slot_w_uniform_str] else - overlays_standing[UNIFORM_LAYER] = null + under_icon = INV_W_UNIFORM_DEF_ICON - //hiding/revealing shoes if necessary - update_inv_shoes(1) + //Pick an icon state + var/under_state + if(w_uniform.item_state_slots && w_uniform.item_state_slots[slot_w_uniform_str]) + under_state = w_uniform.item_state_slots[slot_w_uniform_str] + else if(w_uniform.item_state) + under_state = w_uniform.item_state + else + under_state = w_uniform.icon_state + //SNOWFLAKE: Append _s for no apparent reason at all + var/image/standing = image(icon = under_icon, icon_state = "[under_state]_s") + + //Addblends is something some accessories use when they want to ICON_ADD blends onto the uniform + if(w_uniform.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = w_uniform.addblends) + if(w_uniform.color) + base.Blend(w_uniform.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = w_uniform.color + + //Blood overlay for uniform blood splatter + if(w_uniform.blood_DNA) + var/image/bloodsies = image(icon = species.get_blood_mask(src), icon_state = "uniformblood") + bloodsies.color = w_uniform.blood_color + standing.overlays += bloodsies + + //Accessories drawn directly onto the uniform + var/obj/item/clothing/under/under = w_uniform + if(under.accessories.len) + for(var/obj/item/clothing/accessory/A in under.accessories) + standing.overlays |= A.get_mob_overlay() + + overlays_standing[UNIFORM_LAYER] = standing + + //Shoes can be affected by uniform being drawn onto them + update_inv_shoes(FALSE) + + //TODO: Remove this if(update_icons) update_icons_layers() @@ -709,35 +709,52 @@ var/global/list/damage_icon_parts = list() if(QDESTROYING(src)) return - if(wear_id) - wear_id.screen_loc = ui_id //TODO - if(w_uniform && w_uniform:displays_id) - var/image/standing - if(wear_id.icon_override) - standing = image("icon" = wear_id.icon_override, "icon_state" = "[icon_state]") - else if(wear_id.sprite_sheets && wear_id.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = wear_id.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[icon_state]") - else - standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "id") - overlays_standing[ID_LAYER] = standing - else - overlays_standing[ID_LAYER] = null - else - overlays_standing[ID_LAYER] = null + overlays_standing[ID_LAYER] = null + if(!wear_id) + if(update_icons) update_icons_layers() + return //Not wearing an ID + + //Align this item on the inventory screen TODO: Move this elsewhere + wear_id.screen_loc = ui_id + + //Only draw the ID on the mob if the uniform allows for it TODO: bad colon check + if(w_uniform && w_uniform:displays_id) + var/image/standing + if(wear_id.icon_override) + standing = image("icon" = wear_id.icon_override, "icon_state" = "[icon_state]") + else if(wear_id.sprite_sheets && wear_id.sprite_sheets[species.get_bodytype(src)]) + standing = image("icon" = wear_id.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[icon_state]") + else + standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "id") + overlays_standing[ID_LAYER] = standing + + //Set the bits to update the ID hud since they put something in this slot (or removed it) + //TODO: Move elsewhere, update icons is not the place. BITSET(hud_updateflag, ID_HUD) BITSET(hud_updateflag, WANTED_HUD) - if(update_icons) update_icons_layers() + //TODO: Remove this + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_gloves(var/update_icons=1) if(QDESTROYING(src)) return + overlays_standing[GLOVES_LAYER] = null + + if(!gloves && !blood_DNA) + if(update_icons) update_icons_layers() + return //No gloves, no bloody hands, no reason to be here. + + //Draw gloves if they have gloves if(gloves) + gloves.screen_loc = ui_gloves //TODO + var/t_state = gloves.item_state if(!t_state) t_state = gloves.icon_state + //Garbled mess of picking an icon and state at the same time var/image/standing if(gloves.icon_override) standing = image("icon" = gloves.icon_override, "icon_state" = "[t_state]") @@ -746,11 +763,13 @@ var/global/list/damage_icon_parts = list() else standing = image("icon" = 'icons/mob/hands.dmi', "icon_state" = "[t_state]") + //Bloodying them if necessary TODO this is basically identical to the elif blood_DNA below if(gloves.blood_DNA) var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "bloodyhands") bloodsies.color = gloves.blood_color standing.overlays += bloodsies - gloves.screen_loc = ui_gloves + + //Accessory things for gloves that use ADD blend if(gloves.addblends) var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = gloves.addblends) @@ -761,113 +780,136 @@ var/global/list/damage_icon_parts = list() else standing.color = gloves.color overlays_standing[GLOVES_LAYER] = standing - else - if(blood_DNA) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "bloodyhands") - bloodsies.color = hand_blood_color - overlays_standing[GLOVES_LAYER] = bloodsies - else - overlays_standing[GLOVES_LAYER] = null - if(update_icons) update_icons_layers() - + + else if(blood_DNA) + var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "bloodyhands") + bloodsies.color = hand_blood_color + overlays_standing[GLOVES_LAYER] = bloodsies + + if(update_icons) + update_icons_layers() /mob/living/carbon/human/update_inv_glasses(var/update_icons=1) if(QDESTROYING(src)) return - if(glasses) - var/image/standing - if(glasses.icon_override) - standing = image("icon" = glasses.icon_override, "icon_state" = "[glasses.icon_state]") - else if(glasses.sprite_sheets && glasses.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = glasses.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[glasses.icon_state]") - else - standing = image("icon" = 'icons/mob/eyes.dmi', "icon_state" = "[glasses.icon_state]") - if(glasses.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = glasses.addblends) - if(glasses.color) - base.Blend(glasses.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = glasses.color - overlays_standing[GLASSES_LAYER] = standing + overlays_standing[GLASSES_LAYER] = null + if(!glasses) + if(update_icons) update_icons_layers() + return //Not wearing glasses, no need to update anything. + + //Garbled mess of picking an icon and iconstate at the same time + var/image/standing + if(glasses.icon_override) + standing = image("icon" = glasses.icon_override, "icon_state" = "[glasses.icon_state]") + else if(glasses.sprite_sheets && glasses.sprite_sheets[species.get_bodytype(src)]) + standing = image("icon" = glasses.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[glasses.icon_state]") else - overlays_standing[GLASSES_LAYER] = null - if(update_icons) update_icons_layers() + standing = image("icon" = 'icons/mob/eyes.dmi', "icon_state" = "[glasses.icon_state]") + + //Thing for glasses ADD blend accessories (probably never used) + if(glasses.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = glasses.addblends) + if(glasses.color) + base.Blend(glasses.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = glasses.color + overlays_standing[GLASSES_LAYER] = standing + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_ears(var/update_icons=1) if(QDESTROYING(src)) return overlays_standing[EARS_LAYER] = null - if( (head && (head.flags_inv & (BLOCKHAIR | BLOCKHEADHAIR))) || (wear_mask && (wear_mask.flags_inv & (BLOCKHAIR | BLOCKHEADHAIR)))) - if(update_icons) update_icons_layers() - return - if(l_ear || r_ear) - // Blank image upon which to layer left & right overlays. - var/image/both = image("icon" = 'icons/effects/effects.dmi', "icon_state" = "nothing") + if((head && head.flags_inv & (BLOCKHAIR | BLOCKHEADHAIR)) || (wear_mask && wear_mask.flags_inv & (BLOCKHAIR | BLOCKHEADHAIR))) + if(update_icons) update_icons_layers() + return //Ears are blocked (by hair being blocked, overloaded) - if(l_ear) - var/image/standing - var/t_type = l_ear.icon_state - if(l_ear.icon_override) - t_type = "[t_type]_l" - standing = image("icon" = l_ear.icon_override, "icon_state" = "[t_type]") - else if(l_ear.sprite_sheets && l_ear.sprite_sheets[species.get_bodytype(src)]) - t_type = "[t_type]_l" - standing = image("icon" = l_ear.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[t_type]") - else - standing = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]") - if(l_ear.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = l_ear.addblends) - if(l_ear.color) - base.Blend(l_ear.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = l_ear.color - both.overlays += standing + if(!l_ear && !r_ear) + if(update_icons) update_icons_layers() + return //Why bother, if no ear sprites + + // Blank image upon which to layer left & right overlays. + var/image/both = image("icon" = 'icons/effects/effects.dmi', "icon_state" = "nothing") - if(r_ear) - var/image/standing - var/t_type = r_ear.icon_state - if(r_ear.icon_override) - t_type = "[t_type]_r" - standing = image("icon" = r_ear.icon_override, "icon_state" = "[t_type]") - else if(r_ear.sprite_sheets && r_ear.sprite_sheets[species.get_bodytype(src)]) - t_type = "[t_type]_r" - standing = image("icon" = r_ear.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[t_type]") - else - standing = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]") - if(r_ear.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = r_ear.addblends) - if(r_ear.color) - base.Blend(r_ear.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = r_ear.color - both.overlays += standing + if(l_ear) + var/image/standing + var/t_type = l_ear.icon_state + + //Jumbled mess of deciding an icon and iconstate at the same time + if(l_ear.icon_override) + t_type = "[t_type]_l" + standing = image("icon" = l_ear.icon_override, "icon_state" = "[t_type]") + else if(l_ear.sprite_sheets && l_ear.sprite_sheets[species.get_bodytype(src)]) + t_type = "[t_type]_l" + standing = image("icon" = l_ear.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[t_type]") + else + standing = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]") + + //Addblends system for ear accessories (literally nothing uses this, probably??) + if(l_ear.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = l_ear.addblends) + if(l_ear.color) + base.Blend(l_ear.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = l_ear.color + both.overlays += standing + + if(r_ear) + var/image/standing + var/t_type = r_ear.icon_state + + //Jumbled mess of deciding an icon and iconstate at the same time + if(r_ear.icon_override) + t_type = "[t_type]_r" + standing = image("icon" = r_ear.icon_override, "icon_state" = "[t_type]") + else if(r_ear.sprite_sheets && r_ear.sprite_sheets[species.get_bodytype(src)]) + t_type = "[t_type]_r" + standing = image("icon" = r_ear.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[t_type]") + else + standing = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]") + + //Addblends system for ear accessories (literally nothing uses this, probably??) + if(r_ear.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = r_ear.addblends) + if(r_ear.color) + base.Blend(r_ear.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = r_ear.color + both.overlays += standing overlays_standing[EARS_LAYER] = both - else - overlays_standing[EARS_LAYER] = null - if(update_icons) update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_shoes(var/update_icons=1) if(QDESTROYING(src)) return - if(shoes && !((wear_suit && wear_suit.flags_inv & HIDESHOES) || (w_uniform && w_uniform.flags_inv & HIDESHOES))) + overlays_standing[SHOES_LAYER] = null + overlays_standing[SHOES_LAYER_ALT] = null //Dumb alternate layer for shoes being under the uniform. + if((!shoes && !feet_blood_DNA) || (wear_suit && wear_suit.flags_inv & HIDESHOES) || (w_uniform && w_uniform.flags_inv & HIDESHOES)) + if(update_icons) update_icons_layers() + return //Either nothing to draw, or it'd be hidden. + + if(shoes) var/image/standing + + //Jumbled mess of deciding icon and iconstate at the same time if(shoes.icon_override) standing = image("icon" = shoes.icon_override, "icon_state" = "[shoes.icon_state]") else if(shoes.sprite_sheets && shoes.sprite_sheets[species.get_bodytype(src)]) @@ -875,21 +917,20 @@ var/global/list/damage_icon_parts = list() else standing = image("icon" = 'icons/mob/feet.dmi', "icon_state" = "[shoes.icon_state]") + //Allow for shoe layer toggle nonsense var/shoe_layer = SHOES_LAYER if(istype(shoes, /obj/item/clothing/shoes)) var/obj/item/clothing/shoes/ushoes = shoes if(ushoes.shoes_under_pants == 1) - overlays_standing[SHOES_LAYER] = null shoe_layer = SHOES_LAYER_ALT - else - overlays_standing[SHOES_LAYER_ALT] = null - shoe_layer = SHOES_LAYER + //Damn near identical to feet_blood_DNA section, TODO if(shoes.blood_DNA) var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "shoeblood") bloodsies.color = shoes.blood_color standing.overlays += bloodsies + //Probably never used: for ICON_ADD accessories on shoes if(shoes.addblends) var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = shoes.addblends) @@ -899,303 +940,340 @@ var/global/list/damage_icon_parts = list() standing = image(base) else standing.color = shoes.color + + //NB: Uses a var from above rather than a define overlays_standing[shoe_layer] = standing - else - if(feet_blood_DNA) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "shoeblood") - bloodsies.color = feet_blood_color - overlays_standing[SHOES_LAYER] = bloodsies - else - overlays_standing[SHOES_LAYER] = null - overlays_standing[SHOES_LAYER_ALT] = null - if(update_icons) update_icons_layers() + //Bloody feet, but not wearing shoes + else if(feet_blood_DNA) + var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "shoeblood") + bloodsies.color = feet_blood_color + overlays_standing[SHOES_LAYER] = bloodsies + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_s_store(var/update_icons=1) if(QDESTROYING(src)) return - if(s_store) - var/t_state = s_store.item_state - if(!t_state) t_state = s_store.icon_state - overlays_standing[SUIT_STORE_LAYER] = image("icon" = species.suit_storage_icon, "icon_state" = "[t_state]") - s_store.screen_loc = ui_sstore1 //TODO - else - overlays_standing[SUIT_STORE_LAYER] = null - if(update_icons) update_icons_layers() + overlays_standing[SUIT_STORE_LAYER] = null + if(!s_store) + if(update_icons) update_icons_layers() + return //Why bother, nothing there. + + s_store.screen_loc = ui_sstore1 //TODO + + //Basically has no variety in slot icon choices at all. WHY SPECIES ONLY?? + var/t_state = s_store.item_state + if(!t_state) t_state = s_store.icon_state + overlays_standing[SUIT_STORE_LAYER] = image("icon" = species.suit_storage_icon, "icon_state" = "[t_state]") + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_head(var/update_icons=1) if(QDESTROYING(src)) return - if(head) - head.screen_loc = ui_head //TODO + overlays_standing[HEAD_LAYER] = null + + if(!head) + if(update_icons) update_icons_layers() + return //No head item, why bother. + + head.screen_loc = ui_head //TODO - //Determine the icon to use - var/t_icon - if(head.icon_override) - t_icon = head.icon_override - else if(head.sprite_sheets && head.sprite_sheets[species.get_bodytype(src)]) - t_icon = head.sprite_sheets[species.get_bodytype(src)] - - else if(head.item_icons && (slot_head_str in head.item_icons)) - t_icon = head.item_icons[slot_head_str] - else - t_icon = INV_HEAD_DEF_ICON - - //Determine the state to use - var/t_state - if(istype(head, /obj/item/weapon/paper)) - /* I don't like this, but bandaid to fix half the hats in the game - being completely broken without re-breaking paper hats */ - t_state = "paper" - else - if(head.item_state_slots && head.item_state_slots[slot_head_str]) - t_state = head.item_state_slots[slot_head_str] - else if(head.item_state) - t_state = head.item_state - else - t_state = head.icon_state - - //Create the image - var/image/standing = image(icon = t_icon, icon_state = t_state) - - if(head.blood_DNA) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "helmetblood") - bloodsies.color = head.blood_color - standing.overlays += bloodsies - - if(istype(head,/obj/item/clothing/head)) - var/obj/item/clothing/head/hat = head - var/cache_key = "[hat.light_overlay]_[species.get_bodytype(src)]" - if(hat.on && light_overlay_cache[cache_key]) - standing.overlays |= light_overlay_cache[cache_key] - - if(head.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = head.addblends) - if(head.color) - base.Blend(head.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = head.color - - // Accessories - copied from uniform, BOILERPLATE because fuck this system. - var/obj/item/clothing/head/hat = head - if(istype(hat) && hat.accessories.len) - for(var/obj/item/clothing/accessory/A in hat.accessories) - standing.overlays |= A.get_mob_overlay() - - overlays_standing[HEAD_LAYER] = standing + //Determine the icon to use + var/t_icon + if(head.icon_override) + t_icon = head.icon_override + else if(head.sprite_sheets && head.sprite_sheets[species.get_bodytype(src)]) + t_icon = head.sprite_sheets[species.get_bodytype(src)] + else if(head.item_icons && (slot_head_str in head.item_icons)) + t_icon = head.item_icons[slot_head_str] else - overlays_standing[HEAD_LAYER] = null - if(update_icons) update_icons_layers() + t_icon = INV_HEAD_DEF_ICON + + //Determine the state to use + var/t_state + if(istype(head, /obj/item/weapon/paper)) + /* I don't like this, but bandaid to fix half the hats in the game + being completely broken without re-breaking paper hats */ + t_state = "paper" + else + if(head.item_state_slots && head.item_state_slots[slot_head_str]) + t_state = head.item_state_slots[slot_head_str] + else if(head.item_state) + t_state = head.item_state + else + t_state = head.icon_state + + //Create the image + var/image/standing = image(icon = t_icon, icon_state = t_state) + + //Apparently unlike hands or feet, THIS time we can only have blood on our helmet not our head + if(head.blood_DNA) + var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "helmetblood") + bloodsies.color = head.blood_color + standing.overlays += bloodsies + + //We really need light overlay caches? It's probably a single icon. Let the helmet hold it? + if(istype(head,/obj/item/clothing/head)) + var/obj/item/clothing/head/hat = head + var/cache_key = "[hat.light_overlay]_[species.get_bodytype(src)]" + if(hat.on && light_overlay_cache[cache_key]) + standing.overlays |= light_overlay_cache[cache_key] + + //For accessories that require ICON_ADD blending (again, why) + if(head.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = head.addblends) + if(head.color) + base.Blend(head.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = head.color + + //Accessories, again, again, again. + var/obj/item/clothing/head/hat = head + if(istype(hat) && hat.accessories.len) + for(var/obj/item/clothing/accessory/A in hat.accessories) + standing.overlays |= A.get_mob_overlay() + + overlays_standing[HEAD_LAYER] = standing + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_belt(var/update_icons=1) if(QDESTROYING(src)) return - if(belt) - belt.screen_loc = ui_belt //TODO - var/t_state = belt.item_state - if(!t_state) t_state = belt.icon_state - var/image/standing = image("icon_state" = "[t_state]") + overlays_standing[BELT_LAYER] = null + overlays_standing[BELT_LAYER_ALT] = null - if(belt.icon_override) - standing.icon = belt.icon_override - else if(belt.sprite_sheets && belt.sprite_sheets[species.get_bodytype(src)]) - standing.icon = belt.sprite_sheets[species.get_bodytype(src)] - else - standing.icon = 'icons/mob/belt.dmi' + if(!belt) + if(update_icons) update_icons_layers() + return //No belt, why bother. - var/belt_layer = BELT_LAYER - if(istype(belt, /obj/item/weapon/storage/belt)) - var/obj/item/weapon/storage/belt/ubelt = belt - if(ubelt.show_above_suit) - overlays_standing[BELT_LAYER] = null - belt_layer = BELT_LAYER_ALT - else - overlays_standing[BELT_LAYER_ALT] = null - if(belt.contents.len) - for(var/obj/item/i in belt.contents) - var/i_state = i.item_state - if(!i_state) i_state = i.icon_state - standing.overlays += image("icon" = 'icons/mob/belt.dmi', "icon_state" = "[i_state]") + belt.screen_loc = ui_belt //TODO - Distant screaming. + + var/t_state = belt.item_state + if(!t_state) t_state = belt.icon_state + var/image/standing = image("icon_state" = "[t_state]") - if(belt.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = belt.addblends) - if(belt.color) - base.Blend(belt.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = belt.color - - overlays_standing[belt_layer] = standing + //Mess of determining icon + if(belt.icon_override) + standing.icon = belt.icon_override + else if(belt.sprite_sheets && belt.sprite_sheets[species.get_bodytype(src)]) + standing.icon = belt.sprite_sheets[species.get_bodytype(src)] else - overlays_standing[BELT_LAYER] = null - overlays_standing[BELT_LAYER_ALT] = null - if(update_icons) update_icons_layers() + standing.icon = 'icons/mob/belt.dmi' + //Toggle for belt layering with uniform + var/belt_layer = BELT_LAYER + if(istype(belt, /obj/item/weapon/storage/belt)) + var/obj/item/weapon/storage/belt/ubelt = belt + if(ubelt.show_above_suit) + belt_layer = BELT_LAYER_ALT + + //Some belts have sprites to show icons + if(belt.contents.len) + for(var/obj/item/i in belt.contents) + var/i_state = i.item_state + if(!i_state) i_state = i.icon_state + standing.overlays += image("icon" = 'icons/mob/belt.dmi', "icon_state" = "[i_state]") + + //Yet Another Addblends - For accessories with ICON_ADD requirements + if(belt.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = belt.addblends) + if(belt.color) + base.Blend(belt.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = belt.color + + //NB: This uses a var from above rather than a define + overlays_standing[belt_layer] = standing + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_wear_suit(var/update_icons=1) if(QDESTROYING(src)) return - if( wear_suit && istype(wear_suit, /obj/item/) ) - wear_suit.screen_loc = ui_oclothing + overlays_standing[SUIT_LAYER] = null - var/image/standing + if(!wear_suit) + if(update_icons) update_icons_layers() + return //No point, no suit. - var/t_icon = INV_SUIT_DEF_ICON - if(wear_suit.icon_override) - t_icon = wear_suit.icon_override - else if(wear_suit.sprite_sheets && wear_suit.sprite_sheets[species.get_bodytype(src)]) - t_icon = wear_suit.sprite_sheets[species.name] - else if(wear_suit.item_icons && wear_suit.item_icons[slot_wear_suit_str]) - t_icon = wear_suit.item_icons[slot_wear_suit_str] + wear_suit.screen_loc = ui_oclothing //TODO - standing = image("icon" = t_icon, "icon_state" = "[wear_suit.icon_state]") + var/image/standing - if(wear_suit.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = wear_suit.addblends) - if(wear_suit.color) - base.Blend(wear_suit.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = wear_suit.color + //Garbled mess of icon determination + var/t_icon = INV_SUIT_DEF_ICON + if(wear_suit.icon_override) + t_icon = wear_suit.icon_override + else if(wear_suit.sprite_sheets && wear_suit.sprite_sheets[species.get_bodytype(src)]) + t_icon = wear_suit.sprite_sheets[species.name] + else if(wear_suit.item_icons && wear_suit.item_icons[slot_wear_suit_str]) + t_icon = wear_suit.item_icons[slot_wear_suit_str] - if( istype(wear_suit, /obj/item/clothing/suit/straight_jacket) ) - drop_from_inventory(handcuffed) - drop_l_hand() - drop_r_hand() - - if(wear_suit.blood_DNA) - var/obj/item/clothing/suit/S = wear_suit - if(istype(S)) //You can put non-suits in your suit slot (diona nymphs etc). - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "[S.blood_overlay_type]blood") - bloodsies.color = wear_suit.blood_color - standing.overlays += bloodsies - - // Accessories - copied from uniform, BOILERPLATE because fuck this system. - var/obj/item/clothing/suit/suit = wear_suit - if(istype(suit) && suit.accessories.len) - for(var/obj/item/clothing/accessory/A in suit.accessories) - standing.overlays |= A.get_mob_overlay() - - overlays_standing[SUIT_LAYER] = standing + standing = image("icon" = t_icon, "icon_state" = "[wear_suit.icon_state]") + //Another addblends system, like all the others, for accessories with ICON_ADD requirements + if(wear_suit.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = wear_suit.addblends) + if(wear_suit.color) + base.Blend(wear_suit.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) else - overlays_standing[SUIT_LAYER] = null + standing.color = wear_suit.color - //Hide/show other layers if necessary + //REALLY? REAAAAAAALLY???? UPDATE ICONS??? TODO + if( istype(wear_suit, /obj/item/clothing/suit/straight_jacket) ) + drop_from_inventory(handcuffed) + drop_l_hand() + drop_r_hand() + + //Blood on suit sprites + if(wear_suit.blood_DNA) + var/obj/item/clothing/suit/S = wear_suit + if(istype(S)) //You can put non-suits in your suit slot (diona nymphs etc). //Pretty sure nymphs don't go in suit slot. Or, they shouldn't. + var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "[S.blood_overlay_type]blood") + bloodsies.color = wear_suit.blood_color + standing.overlays += bloodsies + + //Accessories for suits (are there even any) + var/obj/item/clothing/suit/suit = wear_suit + if(istype(suit) && suit.accessories.len) + for(var/obj/item/clothing/accessory/A in suit.accessories) + standing.overlays |= A.get_mob_overlay() + + overlays_standing[SUIT_LAYER] = standing + + //Hide/show other layers if necessary (AAAAA) TODO update_collar(0) update_inv_w_uniform(0) update_inv_shoes(0) update_tail_showing(0) - if(update_icons) update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_pockets(var/update_icons=1) if(QDESTROYING(src)) return + //Wow, this can probably go away, huh. if(l_store) l_store.screen_loc = ui_storage1 //TODO if(r_store) r_store.screen_loc = ui_storage2 //TODO if(update_icons) update_icons_layers() - /mob/living/carbon/human/update_inv_wear_mask(var/update_icons=1) if(QDESTROYING(src)) return - if( wear_mask && ( istype(wear_mask, /obj/item/clothing/mask) || istype(wear_mask, /obj/item/clothing/accessory) || istype(wear_mask, /obj/item/weapon/grenade) ) && !(head && head.flags_inv & HIDEMASK)) - wear_mask.screen_loc = ui_mask //TODO + overlays_standing[FACEMASK_LAYER] = null - var/image/standing - if(wear_mask.icon_override) - standing = image("icon" = wear_mask.icon_override, "icon_state" = "[wear_mask.icon_state]") - else if(wear_mask.sprite_sheets && wear_mask.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = wear_mask.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[wear_mask.icon_state]") - else - standing = image("icon" = 'icons/mob/mask.dmi', "icon_state" = "[wear_mask.icon_state]") - if(wear_mask.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = wear_mask.addblends) - if(wear_mask.color) - base.Blend(wear_mask.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = wear_mask.color + if(!wear_mask || (head && head.flags_inv & HIDEMASK)) + if(update_icons) update_icons_layers() + return //Why bother, nothing in mask slot. - if( !istype(wear_mask, /obj/item/clothing/mask/smokable/cigarette) && wear_mask.blood_DNA ) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "maskblood") - bloodsies.color = wear_mask.blood_color - standing.overlays += bloodsies - overlays_standing[FACEMASK_LAYER] = standing + wear_mask.screen_loc = ui_mask //TODO + + var/image/standing + + //Find an icon and iconstate at the same time which is gross + if(wear_mask.icon_override) + standing = image("icon" = wear_mask.icon_override, "icon_state" = "[wear_mask.icon_state]") + else if(wear_mask.sprite_sheets && wear_mask.sprite_sheets[species.get_bodytype(src)]) + standing = image("icon" = wear_mask.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[wear_mask.icon_state]") else - overlays_standing[FACEMASK_LAYER] = null - if(update_icons) update_icons_layers() + standing = image("icon" = 'icons/mob/mask.dmi', "icon_state" = "[wear_mask.icon_state]") + + //Yet Another... you get the idea. For accessories that use ICON_ADD + if(wear_mask.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = wear_mask.addblends) + if(wear_mask.color) + base.Blend(wear_mask.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = wear_mask.color + //Apply blood, but only if it's not a cigarette (we could totally make that work for cigs too though with AND blending) TODO + if( !istype(wear_mask, /obj/item/clothing/mask/smokable/cigarette) && wear_mask.blood_DNA ) + var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "maskblood") + bloodsies.color = wear_mask.blood_color + standing.overlays += bloodsies + + overlays_standing[FACEMASK_LAYER] = standing + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_back(var/update_icons=1) if(QDESTROYING(src)) return - if(back) - back.screen_loc = ui_back //TODO + overlays_standing[BACK_LAYER] = null - //determine the icon to use - var/icon/overlay_icon - if(back.icon_override) - overlay_icon = back.icon_override - else if(istype(back, /obj/item/weapon/rig)) - //If this is a rig and a mob_icon is set, it will take species into account in the rig update_icon() proc. - var/obj/item/weapon/rig/rig = back - overlay_icon = rig.mob_icon - else if(back.sprite_sheets && back.sprite_sheets[species.get_bodytype(src)]) - overlay_icon = back.sprite_sheets[species.get_bodytype(src)] - else if(back.item_icons && (slot_back_str in back.item_icons)) - overlay_icon = back.item_icons[slot_back_str] - else - overlay_icon = INV_BACK_DEF_ICON + if(!back) + if(update_icons) update_icons_layers() + return + + back.screen_loc = ui_back //TODO - //determine state to use - var/overlay_state - if(back.item_state_slots && back.item_state_slots[slot_back_str]) - overlay_state = back.item_state_slots[slot_back_str] - else if(back.item_state) - overlay_state = back.item_state - else - overlay_state = back.icon_state - - //apply color - var/image/standing = image(icon = overlay_icon, icon_state = overlay_state) - if(back.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = back.addblends) - if(back.color) - base.Blend(back.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = back.color - - //create the image - overlays_standing[BACK_LAYER] = standing + //Select an icon to use + var/icon/overlay_icon + if(back.icon_override) + overlay_icon = back.icon_override + else if(istype(back, /obj/item/weapon/rig)) + //SNOWFLAKE: If this is a rig and a mob_icon is set, it will take species into account in the rig update_icon() proc. + var/obj/item/weapon/rig/rig = back + overlay_icon = rig.mob_icon + else if(back.sprite_sheets && back.sprite_sheets[species.get_bodytype(src)]) + overlay_icon = back.sprite_sheets[species.get_bodytype(src)] + else if(back.item_icons && (slot_back_str in back.item_icons)) + overlay_icon = back.item_icons[slot_back_str] else - overlays_standing[BACK_LAYER] = null + overlay_icon = INV_BACK_DEF_ICON - if(update_icons) - update_icons_layers() + //Select a state to use + var/overlay_state + if(back.item_state_slots && back.item_state_slots[slot_back_str]) + overlay_state = back.item_state_slots[slot_back_str] + else if(back.item_state) + overlay_state = back.item_state + else + overlay_state = back.icon_state + //Get an image + var/image/standing = image(icon = overlay_icon, icon_state = overlay_state) + + //Another addblends, for things using ICON_ADD + if(back.addblends) + var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) + var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = back.addblends) + if(back.color) + base.Blend(back.color, ICON_MULTIPLY) + base.Blend(addblend_icon, ICON_ADD) + standing = image(base) + else + standing.color = back.color + + overlays_standing[BACK_LAYER] = standing + + if(update_icons) update_icons_layers() + +//TODO: Carbon procs in my human update_icons?? /mob/living/carbon/human/update_hud() //TODO: do away with this if possible if(QDESTROYING(src)) return @@ -1215,125 +1293,143 @@ var/global/list/damage_icon_parts = list() if(QDESTROYING(src)) return - if(handcuffed) - drop_r_hand() - drop_l_hand() - stop_pulling() //TODO: should be handled elsewhere - - var/image/standing - if(handcuffed.icon_override) - standing = image("icon" = handcuffed.icon_override, "icon_state" = "handcuff1") - else if(handcuffed.sprite_sheets && handcuffed.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = handcuffed.sprite_sheets[species.get_bodytype(src)], "icon_state" = "handcuff1") - else - standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "handcuff1") - overlays_standing[HANDCUFF_LAYER] = standing - - else - overlays_standing[HANDCUFF_LAYER] = null - + overlays_standing[HANDCUFF_LAYER] = null update_hud_handcuffed() - if(update_icons) update_icons_layers() + + if(!handcuffed) + if(update_icons) update_icons_layers() + return //Not cuffed, why bother + + drop_r_hand() + drop_l_hand() + stop_pulling() //TODO: should be handled elsewhere + + //Get icon, iconstate at the same time + var/image/standing + if(handcuffed.icon_override) + standing = image("icon" = handcuffed.icon_override, "icon_state" = "handcuff1") + else if(handcuffed.sprite_sheets && handcuffed.sprite_sheets[species.get_bodytype(src)]) + standing = image("icon" = handcuffed.sprite_sheets[species.get_bodytype(src)], "icon_state" = "handcuff1") + else + standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "handcuff1") + + overlays_standing[HANDCUFF_LAYER] = standing + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_legcuffed(var/update_icons=1) if(QDESTROYING(src)) return - if(legcuffed) + overlays_standing[LEGCUFF_LAYER] = null - var/image/standing - if(legcuffed.icon_override) - standing = image("icon" = legcuffed.icon_override, "icon_state" = "legcuff1") - else if(legcuffed.sprite_sheets && legcuffed.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = legcuffed.sprite_sheets[species.get_bodytype(src)], "icon_state" = "legcuff1") - else - standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "legcuff1") - overlays_standing[LEGCUFF_LAYER] = standing - - if(src.m_intent != "walk") - src.m_intent = "walk" - if(src.hud_used && src.hud_used.move_intent) - src.hud_used.move_intent.icon_state = "walking" + if(!legcuffed) + if(update_icons) update_icons_layers() + return //Not legcuffed, why bother. + //Get icon, iconstate at same time (bleh) + var/image/standing + if(legcuffed.icon_override) + standing = image("icon" = legcuffed.icon_override, "icon_state" = "legcuff1") + else if(legcuffed.sprite_sheets && legcuffed.sprite_sheets[species.get_bodytype(src)]) + standing = image("icon" = legcuffed.sprite_sheets[species.get_bodytype(src)], "icon_state" = "legcuff1") else - overlays_standing[LEGCUFF_LAYER] = null - if(update_icons) update_icons_layers() + standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "legcuff1") + //TODO: Not in my update_icons + if(m_intent != "walk") + m_intent = "walk" + if(hud_used && src.hud_used.move_intent) + hud_used.move_intent.icon_state = "walking" + + overlays_standing[LEGCUFF_LAYER] = standing + + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_r_hand(var/update_icons=1) if(QDESTROYING(src)) return - if(r_hand) - r_hand.screen_loc = ui_rhand //TODO + overlays_standing[R_HAND_LAYER] = null - //determine icon state to use - var/t_state - if(r_hand.item_state_slots && r_hand.item_state_slots[slot_r_hand_str]) - t_state = r_hand.item_state_slots[slot_r_hand_str] - else if(r_hand.item_state) - t_state = r_hand.item_state - else - t_state = r_hand.icon_state + if(!r_hand) + if(update_icons) update_icons_layers() + return //No hand, no bother. - //determine icon to use - var/icon/t_icon - if(r_hand.item_icons && (slot_r_hand_str in r_hand.item_icons)) - t_icon = r_hand.item_icons[slot_r_hand_str] - else if(r_hand.icon_override) - t_state += "_r" - t_icon = r_hand.icon_override - else - t_icon = INV_R_HAND_DEF_ICON + r_hand.screen_loc = ui_rhand //TODO - //apply color - var/image/standing = image(icon = t_icon, icon_state = t_state) - standing.color = r_hand.color + var/t_state + var/icon/t_icon - overlays_standing[R_HAND_LAYER] = standing - - if (handcuffed) drop_r_hand() //this should be moved out of icon code + //Select an icon to use + if(r_hand.item_icons && (slot_r_hand_str in r_hand.item_icons)) + t_icon = r_hand.item_icons[slot_r_hand_str] + else if(r_hand.icon_override) + t_state += "_r" //SNOWFLAKE + t_icon = r_hand.icon_override else - overlays_standing[R_HAND_LAYER] = null + t_icon = INV_R_HAND_DEF_ICON + + //Select a state to use + + if(r_hand.item_state_slots && r_hand.item_state_slots[slot_r_hand_str]) + t_state = r_hand.item_state_slots[slot_r_hand_str] + else if(r_hand.item_state) + t_state = r_hand.item_state + else + t_state = r_hand.icon_state + + //Apply color + var/image/standing = image(icon = t_icon, icon_state = t_state) + standing.color = r_hand.color + + if(handcuffed) + drop_r_hand() //TODO: EXCUSE ME + + overlays_standing[R_HAND_LAYER] = standing if(update_icons) update_icons_layers() - /mob/living/carbon/human/update_inv_l_hand(var/update_icons=1) if(QDESTROYING(src)) return - if(l_hand) - l_hand.screen_loc = ui_lhand //TODO + overlays_standing[L_HAND_LAYER] = null - //determine icon state to use - var/t_state - if(l_hand.item_state_slots && l_hand.item_state_slots[slot_l_hand_str]) - t_state = l_hand.item_state_slots[slot_l_hand_str] - else if(l_hand.item_state) - t_state = l_hand.item_state - else - t_state = l_hand.icon_state + if(!l_hand) + if(update_icons) update_icons_layers() + return //No hand, no bother. - //determine icon to use - var/icon/t_icon - if(l_hand.item_icons && (slot_l_hand_str in l_hand.item_icons)) - t_icon = l_hand.item_icons[slot_l_hand_str] - else if(l_hand.icon_override) - t_state += "_l" - t_icon = l_hand.icon_override - else - t_icon = INV_L_HAND_DEF_ICON + l_hand.screen_loc = ui_lhand //TODO - //apply color - var/image/standing = image(icon = t_icon, icon_state = t_state) - standing.color = l_hand.color + var/icon/t_icon + var/t_state - overlays_standing[L_HAND_LAYER] = standing - - if (handcuffed) drop_l_hand() //This probably should not be here + //Select an icon to use + if(l_hand.item_icons && (slot_l_hand_str in l_hand.item_icons)) + t_icon = l_hand.item_icons[slot_l_hand_str] + else if(l_hand.icon_override) + t_state += "_l" + t_icon = l_hand.icon_override else - overlays_standing[L_HAND_LAYER] = null + t_icon = INV_L_HAND_DEF_ICON + + //Select a state to use + if(l_hand.item_state_slots && l_hand.item_state_slots[slot_l_hand_str]) + t_state = l_hand.item_state_slots[slot_l_hand_str] + else if(l_hand.item_state) + t_state = l_hand.item_state + else + t_state = l_hand.icon_state + + //Apply color + var/image/standing = image(icon = t_icon, icon_state = t_state) + standing.color = l_hand.color + + if(handcuffed) + drop_l_hand() //TODO: AAAAAAAAAAa + + overlays_standing[L_HAND_LAYER] = standing if(update_icons) update_icons_layers() @@ -1345,14 +1441,15 @@ var/global/list/damage_icon_parts = list() var/species_tail = species.get_tail(src) + //This one is actually not that bad I guess. if(species_tail && !(wear_suit && wear_suit.flags_inv & HIDETAIL)) var/icon/tail_s = get_tail_icon() overlays_standing[TAIL_LAYER] = image(tail_s, icon_state = "[species_tail]_s") animate_tail_reset(0) - if(update_icons) - update_icons_layers() + if(update_icons) update_icons_layers() +//TODO: Is this the appropriate place for this, and not on species...? /mob/living/carbon/human/proc/get_tail_icon() var/icon_key = "[species.get_race_key(src)][r_skin][g_skin][b_skin][r_hair][g_hair][b_hair]" var/icon/tail_icon = tail_icon_cache[icon_key] @@ -1372,7 +1469,6 @@ var/global/list/damage_icon_parts = list() return tail_icon - /mob/living/carbon/human/proc/set_tail_state(var/t_state) var/image/tail_overlay = overlays_standing[TAIL_LAYER] @@ -1383,6 +1479,7 @@ var/global/list/damage_icon_parts = list() //Not really once, since BYOND can't do that. //Update this if the ability to flick() images or make looping animation start at the first frame is ever added. +//You can sort of flick images now with flick_overlay -Aro /mob/living/carbon/human/proc/animate_tail_once(var/update_icons=1) if(QDESTROYING(src)) return @@ -1400,8 +1497,7 @@ var/global/list/damage_icon_parts = list() if(overlays_standing[TAIL_LAYER] == tail_overlay && tail_overlay.icon_state == t_state) animate_tail_stop() - if(update_icons) - update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/proc/animate_tail_start(var/update_icons=1) if(QDESTROYING(src)) @@ -1409,8 +1505,7 @@ var/global/list/damage_icon_parts = list() set_tail_state("[species.get_tail(src)]_slow[rand(0,9)]") - if(update_icons) - update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/proc/animate_tail_fast(var/update_icons=1) if(QDESTROYING(src)) @@ -1418,8 +1513,7 @@ var/global/list/damage_icon_parts = list() set_tail_state("[species.get_tail(src)]_loop[rand(0,9)]") - if(update_icons) - update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/proc/animate_tail_reset(var/update_icons=1) if(QDESTROYING(src)) @@ -1430,8 +1524,7 @@ var/global/list/damage_icon_parts = list() else set_tail_state("[species.get_tail(src)]_static") - if(update_icons) - update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/proc/animate_tail_stop(var/update_icons=1) if(QDESTROYING(src)) @@ -1439,104 +1532,119 @@ var/global/list/damage_icon_parts = list() set_tail_state("[species.get_tail(src)]_static") - if(update_icons) - update_icons_layers() - + if(update_icons) update_icons_layers() //Adds a collar overlay above the helmet layer if the suit has one // Suit needs an identically named sprite in icons/mob/collar.dmi +//TODO: Is this used, ever? It was never set to clear this icon. /mob/living/carbon/human/proc/update_collar(var/update_icons=1) if(QDESTROYING(src)) return - var/icon/C = new('icons/mob/collar.dmi') - var/image/standing = null + overlays_standing[COLLAR_LAYER] = null + if(!wear_suit) + if(update_icons) update_icons_layers() + return //No suit to have a collar - if(wear_suit) - if(wear_suit.icon_state in C.IconStates()) - standing = image("icon" = C, "icon_state" = "[wear_suit.icon_state]") + //Init icon out here so we can scan iconstates for collar TODO: This is dumb, just have a blank state to catch it. + var/icon/C = icon('icons/mob/collar.dmi') + var/image/standing + if(wear_suit.icon_state in C.IconStates()) + standing = image(icon = C, icon_state = wear_suit.icon_state) overlays_standing[COLLAR_LAYER] = standing - if(update_icons) update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_modifier_visuals(var/update_icons=1) if(QDESTROYING(src)) return overlays_standing[MODIFIER_EFFECTS_LAYER] = null + + if(!LAZYLEN(modifiers)) + if(update_icons) update_icons_layers() + return //No modifiers, no effects. + var/image/effects = new() for(var/datum/modifier/M in modifiers) if(M.mob_overlay_state) - var/image/I = image("icon" = 'icons/mob/modifier_effects.dmi', "icon_state" = M.mob_overlay_state) - effects.overlays += I + var/image/I = image(icon = 'icons/mob/modifier_effects.dmi', icon_state = M.mob_overlay_state) + effects.overlays += I //TODO, this compositing is annoying. overlays_standing[MODIFIER_EFFECTS_LAYER] = effects - if(update_icons) - update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_fire(var/update_icons=1) if(QDESTROYING(src)) return overlays_standing[FIRE_LAYER] = null + if(on_fire) - overlays_standing[FIRE_LAYER] = image("icon"='icons/mob/OnFire.dmi', "icon_state" = get_fire_icon_state()) + overlays_standing[FIRE_LAYER] = image(icon = 'icons/mob/OnFire.dmi', icon_state = get_fire_icon_state()) - if(update_icons) update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_water(var/update_icons=1) if(QDESTROYING(src)) return overlays_standing[WATER_LAYER] = null - var/depth = check_submerged() - if(depth) - if(!lying) - overlays_standing[WATER_LAYER] = image("icon" = 'icons/mob/submerged.dmi', "icon_state" = "human_swimming_[depth]") - // Lying sideways with the overlay looked strange. Another overlay will be needed in the future. - if(update_icons) - update_icons_layers() + var/depth = check_submerged() + if(depth && !lying) + overlays_standing[WATER_LAYER] = image(icon = 'icons/mob/submerged.dmi', icon_state = "human_swimming_[depth]") //TODO: Improve + + if(update_icons) update_icons_layers() /mob/living/carbon/human/proc/update_surgery(var/update_icons=1) if(QDESTROYING(src)) return overlays_standing[SURGERY_LEVEL] = null + var/image/total = new for(var/obj/item/organ/external/E in organs) if(E.open) - var/image/I = image("icon"='icons/mob/surgery.dmi', "icon_state"="[E.icon_name][round(E.open)]", "layer"=-SURGERY_LEVEL) - total.overlays += I + var/image/I = image(icon = 'icons/mob/surgery.dmi', icon_state = "[E.icon_name][round(E.open)]", layer = -SURGERY_LEVEL) + total.overlays += I //TODO: This compositing is annoying + overlays_standing[SURGERY_LEVEL] = total - if(update_icons) update_icons_layers() + + if(update_icons) update_icons_layers() //Human Overlays Indexes///////// #undef MUTATIONS_LAYER +#undef SKIN_LAYER #undef DAMAGE_LAYER #undef SURGERY_LEVEL +#undef UNDERWEAR_LAYER +#undef SHOES_LAYER_ALT #undef UNIFORM_LAYER #undef ID_LAYER #undef SHOES_LAYER #undef GLOVES_LAYER -#undef EARS_LAYER +#undef BELT_LAYER #undef SUIT_LAYER #undef TAIL_LAYER #undef GLASSES_LAYER -#undef FACEMASK_LAYER -#undef BELT_LAYER +#undef BELT_LAYER_ALT #undef SUIT_STORE_LAYER #undef BACK_LAYER #undef HAIR_LAYER +#undef EARS_LAYER +#undef EYES_LAYER +#undef FACEMASK_LAYER #undef HEAD_LAYER #undef COLLAR_LAYER #undef HANDCUFF_LAYER #undef LEGCUFF_LAYER #undef L_HAND_LAYER #undef R_HAND_LAYER -#undef TARGETED_LAYER +#undef MODIFIER_EFFECTS_LAYER #undef FIRE_LAYER #undef WATER_LAYER +#undef TARGETED_LAYER #undef TOTAL_LAYERS \ No newline at end of file From aa9ec191182640416bc0cd401fff70796c47ec7d Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Tue, 6 Mar 2018 18:05:23 -0500 Subject: [PATCH 02/15] U_I Phase 1.0: First consolidation pass --- code/__defines/mobs.dm | 19 +- code/_helpers/icons.dm | 1 + code/datums/underwear/underwear.dm | 4 +- code/game/objects/items.dm | 115 +++- .../objects/items/devices/radio/headset.dm | 12 + .../objects/items/weapons/cigs_lighters.dm | 1 + code/game/objects/items/weapons/handcuffs.dm | 12 + .../items/weapons/id cards/station_ids.dm | 6 + .../objects/items/weapons/storage/belt.dm | 10 + code/modules/clothing/clothing.dm | 7 + code/modules/clothing/clothing_icons.dm | 34 + code/modules/clothing/spacesuits/rig/rig.dm | 6 + .../mob/living/carbon/human/update_icons.dm | 628 +++--------------- code/modules/mob/mob_helpers.dm | 1 + code/modules/paperwork/paper.dm | 4 + icons/mob/mob.dmi | Bin 201586 -> 200157 bytes polaris.dme | 1 + 17 files changed, 325 insertions(+), 536 deletions(-) create mode 100644 code/modules/clothing/clothing_icons.dm diff --git a/code/__defines/mobs.dm b/code/__defines/mobs.dm index 6b162504b9..ef5b5838be 100644 --- a/code/__defines/mobs.dm +++ b/code/__defines/mobs.dm @@ -98,9 +98,17 @@ #define INV_R_HAND_DEF_ICON 'icons/mob/items/righthand.dmi' #define INV_W_UNIFORM_DEF_ICON 'icons/mob/uniform.dmi' #define INV_ACCESSORIES_DEF_ICON 'icons/mob/ties.dmi' -#define INV_SUIT_DEF_ICON 'icons/mob/ties.dmi' +#define INV_TIE_DEF_ICON 'icons/mob/ties.dmi' #define INV_SUIT_DEF_ICON 'icons/mob/suit.dmi' -#define MAX_SUPPLIED_LAW_NUMBER 50 +#define INV_WEAR_ID_DEF_ICON 'icons/mob/mob.dmi' +#define INV_GLOVES_DEF_ICON 'icons/mob/hands.dmi' +#define INV_EYES_DEF_ICON 'icons/mob/eyes.dmi' +#define INV_EARS_DEF_ICON 'icons/mob/ears.dmi' +#define INV_FEET_DEF_ICON 'icons/mob/feet.dmi' +#define INV_BELT_DEF_ICON 'icons/mob/belt.dmi' +#define INV_MASK_DEF_ICON 'icons/mob/mask.dmi' +#define INV_HCUFF_DEF_ICON 'icons/mob/mob.dmi' +#define INV_LCUFF_DEF_ICON 'icons/mob/mob.dmi' // Character's economic class #define CLASS_UPPER "Wealthy" @@ -255,4 +263,9 @@ #define VIS_MESONS 20 -#define VIS_COUNT 20 //Must be highest number from above. \ No newline at end of file +#define VIS_COUNT 20 //Must be highest number from above. + +//Some mob icon layering defines +#define BODY_LAYER -100 +#define BACKPLANE_LAYER -101 +#define HUD_LAYER -105 diff --git a/code/_helpers/icons.dm b/code/_helpers/icons.dm index 64460aa889..fea7745416 100644 --- a/code/_helpers/icons.dm +++ b/code/_helpers/icons.dm @@ -886,6 +886,7 @@ proc/sort_atoms_by_layer(var/list/atoms) /proc/gen_hud_image(var/file, var/person, var/state, var/plane) var/image/img = image(file, person, state) img.plane = plane //Thanks Byond. + img.layer = HUD_LAYER img.appearance_flags = APPEARANCE_UI|KEEP_APART return img diff --git a/code/datums/underwear/underwear.dm b/code/datums/underwear/underwear.dm index bac96bf55c..f418f3e8d1 100644 --- a/code/datums/underwear/underwear.dm +++ b/code/datums/underwear/underwear.dm @@ -63,11 +63,11 @@ datum/category_group/underwear/dd_SortValue() /datum/category_item/underwear/proc/is_default(var/gender) return is_default -/datum/category_item/underwear/proc/generate_image(var/list/metadata) +/datum/category_item/underwear/proc/generate_image(var/list/metadata, var/layer = FLOAT_LAYER) if(!icon_state) return - var/image/I = image(icon = icon, icon_state = icon_state) + var/image/I = image(icon = icon, icon_state = icon_state, layer = layer) for(var/datum/gear_tweak/gt in tweaks) gt.tweak_item(I, metadata && metadata["[gt]"] ? metadata["[gt]"] : gt.get_default()) return I \ No newline at end of file diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 2e8429edd3..9a13dbbc1d 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -84,6 +84,9 @@ var/reach = 1 // Length of tiles it can reach, 1 is adjacent. var/addblends // Icon overlay for ADD highlights when applicable. + var/icon/default_worn_icon //Default on-mob icon + var/worn_layer //Default on-mob layer + /obj/item/New() ..() if(embed_chance < 0) @@ -678,4 +681,114 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. // My best guess as to why this is here would be that it does so little. Still, keep it under all the procs, for sanity's sake. /obj/item/device - icon = 'icons/obj/device.dmi' \ No newline at end of file + icon = 'icons/obj/device.dmi' + +//Worn icon generation for on-mob sprites +/obj/item/proc/make_worn_icon(var/body_type,var/slot_name,var/inhands,var/default_icon,var/default_layer = 0) + //Get the required information about the base icon + var/icon/icon2use = get_worn_icon_file(body_type = body_type, slot_name = slot_name, default_icon = default_icon) + var/state2use = get_worn_icon_state(slot_name = slot_name) + var/layer2use = get_worn_layer(default_layer = default_layer) + + //Snowflakey inhand icons in a specific slot + if(inhands && icon2use == icon_override) + switch(slot_name) + if(slot_r_hand_str) + state2use += "_r" + if(slot_l_hand_str) + state2use += "_l" + + testing("[src] (\ref[src]) - Worn Icon:[icon2use], Worn State:[state2use], Worn Layer:[layer2use]") + + //Generate the base onmob icon + var/icon/standing_icon = icon(icon = icon2use, icon_state = state2use) + + apply_custom(standing_icon) //Pre-image overridable proc to customize the thing + apply_addblends(icon2use,standing_icon) //Some items have ICON_ADD blend shaders + + var/image/standing = image(standing_icon) + standing.alpha = alpha + standing.color = color + standing.layer = layer2use + + //Apply any special features + apply_blood(standing) //Some items show blood when bloodied + apply_accessories(standing) //Some items sport accessories like webbing + + //Return our icon + return standing + +//Returns the icon object that should be used for the worn icon +/obj/item/proc/get_worn_icon_file(var/body_type,var/slot_name,var/default_icon) + + //1: icon_override var + if(icon_override) + return icon_override + + //2: species-specific sprite sheets + var/sheet = sprite_sheets[body_type] + if(sheet) + return sheet + + //3: slot-specific sprite sheets + sheet = item_icons[slot_name] + if(sheet) + return sheet + + //4: item's default icon + if(default_worn_icon) + return default_worn_icon + + //5: provided default_icon + if(default_icon) + return default_icon + + //6: give up + return + +//Returns the state that should be used for the worn icon +/obj/item/proc/get_worn_icon_state(var/slot_name) + + //1: slot-specific sprite sheets + var/state = item_state_slots[slot_name] + if(state) + return state + + //2: item_state variable + if(item_state) + return item_state + + //3: icon_state variable + if(icon_state) + return icon_state + +//Returns the layer that should be used for the worn icon (as a FLOAT_LAYER layer, so negative) +/obj/item/proc/get_worn_layer(var/default_layer) + + //1: worn_layer variable + if(!isnull(worn_layer)) //Can be zero, so... + return -100+worn_layer + + //2: your default + return -100+default_layer + +//Apply the addblend blends onto the icon +/obj/item/proc/apply_addblends(var/source_icon, var/icon/standing_icon) + + //If we have addblends, blend them onto the provided icon + if(addblends && standing_icon && source_icon) + var/addblend_icon = icon("icon" = source_icon, "icon_state" = addblends) + standing_icon.Blend(addblend_icon, ICON_ADD) + +//STUB +/obj/item/proc/apply_custom(var/icon/standing_icon) + return standing_icon + +//STUB +/obj/item/proc/apply_blood(var/image/standing) + return standing + +//STUB +/obj/item/proc/apply_accessories(var/image/standing) + return standing + diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 01b52affc5..53e21f8533 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -3,6 +3,7 @@ desc = "An updated, modular intercom that fits over the head. Takes encryption keys" var/radio_desc = "" icon_state = "headset" + item_state = null //To remove the radio's state matter = list(DEFAULT_WALL_MATERIAL = 75) subspace_transmission = 1 canhear_range = 0 // can't hear headsets from very far away @@ -63,6 +64,17 @@ return ..(freq, level) return -1 +/obj/item/device/radio/headset/get_worn_icon_state(var/slot_name) + var/append = "" + if(icon_override) + switch(slot_name) + if(slot_l_ear_str) + append = "_l" + if(slot_r_ear_str) + append = "_r" + + return "[..()][append]" + /obj/item/device/radio/headset/syndicate origin_tech = list(TECH_ILLEGAL = 3) syndie = 1 diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 729ef1d066..c39c7e0067 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -89,6 +89,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/weldermes = "USER lights NAME with FLAME" var/ignitermes = "USER lights NAME with FLAME" var/brand + blood_sprite_state = null //Can't bloody these /obj/item/clothing/mask/smokable/New() ..() diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index ea838cce0b..e5f8043d43 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -20,6 +20,12 @@ var/use_time = 30 sprite_sheets = list("Teshari" = 'icons/mob/species/seromi/handcuffs.dmi') +/obj/item/weapon/handcuffs/get_worn_icon_state(var/slot_name) + if(slot_name == slot_handcuffed_str) + return "handcuff1" //Simple + + return ..() + /obj/item/weapon/handcuffs/attack(var/mob/living/carbon/C, var/mob/living/user) if(!user.IsAdvancedToolUser()) @@ -210,6 +216,12 @@ var/last_chew = 0 breakouttime = 30 cuff_sound = 'sound/weapons/towelwipe.ogg' //Is there anything this sound can't do? +/obj/item/weapon/handcuffs/legcuffs/get_worn_icon_state(var/slot_name) + if(slot_name == slot_legcuffed_str) + return "legcuff1" + + return ..() + /obj/item/weapon/handcuffs/legcuffs/bola/can_place(var/mob/target, var/mob/user) if(user) //A ranged legcuff, until proper implementation as items it remains a projectile-only thing. return 1 diff --git a/code/game/objects/items/weapons/id cards/station_ids.dm b/code/game/objects/items/weapons/id cards/station_ids.dm index f4b6d68f1e..8335c42b1c 100644 --- a/code/game/objects/items/weapons/id cards/station_ids.dm +++ b/code/game/objects/items/weapons/id cards/station_ids.dm @@ -112,6 +112,12 @@ usr << "The fingerprint hash on the card is [fingerprint_hash]." return +/obj/item/weapon/card/id/get_worn_icon_state(var/slot_name) + if(slot_name == slot_wear_id_str) + return "id" //Legacy, just how it is. There's only one sprite. + + return ..() + /obj/item/weapon/card/id/initialize() . = ..() var/datum/job/J = job_master.GetJob(rank) diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 23fccf51ac..a39d7cd659 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -22,6 +22,16 @@ show_above_suit = !show_above_suit update_icon() +//Some belts have sprites to show icons +/obj/item/weapon/storage/make_worn_icon(var/body_type,var/slot_name,var/inhands,var/default_icon,var/default_layer = 0) + var/image/standing = ..() + if(contents.len) + for(var/obj/item/i in contents) + var/i_state = i.item_state + if(!i_state) i_state = i.icon_state + standing.add_overlay(image(icon = INV_BELT_DEF_ICON, icon_state = i_state)) + return standing + /obj/item/weapon/storage/update_icon() if (ismob(src.loc)) var/mob/M = src.loc diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index d8932599ce..9ecca168da 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -22,6 +22,7 @@ */ var/list/sprite_sheets_refit = null var/ear_protection = 0 + var/blood_sprite_state //Updates the icons of the mob wearing the clothing item, if any. /obj/item/clothing/proc/update_clothing_icon() @@ -197,6 +198,7 @@ w_class = ITEMSIZE_SMALL icon = 'icons/obj/clothing/gloves.dmi' siemens_coefficient = 0.9 + blood_sprite_state = "bloodyhands" var/wired = 0 var/obj/item/weapon/cell/cell = 0 var/fingerprint_chance = 0 //How likely the glove is to let fingerprints through @@ -318,6 +320,7 @@ body_parts_covered = HEAD slot_flags = SLOT_HEAD w_class = ITEMSIZE_SMALL + blood_sprite_state = "helmetblood" var/light_overlay = "helmet_light" var/light_applied @@ -427,6 +430,7 @@ body_parts_covered = HEAD slot_flags = SLOT_MASK body_parts_covered = FACE|EYES + blood_sprite_state = "maskblood" sprite_sheets = list( "Teshari" = 'icons/mob/species/seromi/masks.dmi', "Vox" = 'icons/mob/species/vox/masks.dmi', @@ -460,6 +464,7 @@ siemens_coefficient = 0.9 body_parts_covered = FEET slot_flags = SLOT_FEET + blood_sprite_state = "shoeblood" var/can_hold_knife = 0 var/obj/item/holding @@ -574,6 +579,7 @@ w_class = ITEMSIZE_NORMAL preserve_item = 1 + sprite_sheets = list( "Teshari" = 'icons/mob/species/seromi/suit.dmi', "Vox" = 'icons/mob/species/vox/suit.dmi' @@ -602,6 +608,7 @@ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) w_class = ITEMSIZE_NORMAL show_messages = 1 + blood_sprite_state = "uniformblood" var/has_sensor = 1 //For the crew computer 2 = unable to change mode var/sensor_mode = 0 diff --git a/code/modules/clothing/clothing_icons.dm b/code/modules/clothing/clothing_icons.dm new file mode 100644 index 0000000000..46370472de --- /dev/null +++ b/code/modules/clothing/clothing_icons.dm @@ -0,0 +1,34 @@ +/obj/item/clothing/apply_accessories(var/image/standing) + if(LAZYLEN(accessories)) + for(var/obj/item/clothing/accessory/A in accessories) + standing.add_overlay(A.get_mob_overlay()) + +/obj/item/clothing/apply_blood(var/image/standing) + if(blood_DNA && blood_sprite_state && ishuman(loc)) + var/mob/living/carbon/human/H = loc + var/image/bloodsies = image(icon = H.species.get_blood_mask(H), icon_state = blood_sprite_state) + bloodsies.color = blood_color + standing.add_overlay(bloodsies) + +//UNIFORM: Always appends "_s" to iconstate, stupidly. +/obj/item/clothing/under/get_worn_icon_state(var/slot_name) + var/state2use = ..() + state2use += "_s" + return state2use + +//HELMET: May have a lighting overlay +/obj/item/clothing/head/make_worn_icon(var/body_type,var/slot_name,var/inhands,var/default_icon,var/default_layer = 0) + var/image/standing = ..() + if(on) + var/cache_key = "[light_overlay]_[body_type]" + if(standing && light_overlay_cache[cache_key]) + standing.add_overlay(light_overlay_cache[cache_key]) + return standing + +//SUIT: Blood state is slightly different +/obj/item/clothing/suit/apply_blood(var/image/standing) + if(blood_DNA && blood_sprite_state && ishuman(loc)) + var/mob/living/carbon/human/H = loc + var/image/bloodsies = image(icon = H.species.get_blood_mask(H), icon_state = "[blood_overlay_type]blood") + bloodsies.color = blood_color + standing.add_overlay(bloodsies) diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index 75d8943b81..4476eae691 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -179,6 +179,12 @@ spark_system = null return ..() +/obj/item/weapon/rig/get_worn_icon_file(var/body_type,var/slot_name,var/default_icon) + if(slot_name == slot_back_str) + return icon_override || mob_icon //That's just all this does. + + return ..() + /obj/item/weapon/rig/proc/suit_is_deployed() if(!istype(wearer) || src.loc != wearer || wearer.back != src) return 0 diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index dca005c57f..0f82c9a143 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -8,6 +8,16 @@ var/global/list/human_icon_cache = list() var/global/list/tail_icon_cache = list() //key is [species.race_key][r_skin][g_skin][b_skin] var/global/list/light_overlay_cache = list() +/mob/living/carbon/human/proc/apply_overlay(cache_index) + if((. = overlays_standing[cache_index])) + add_overlay(.) + +/mob/living/carbon/human/proc/remove_overlay(cache_index) + var/I = overlays_standing[cache_index] + if(I) + cut_overlay(I) + overlays_standing[cache_index] = null + /////////////////////// //UPDATE_ICONS SYSTEM// /////////////////////// @@ -89,38 +99,37 @@ Please contact me on #coderbus IRC. ~Carn x */ //Human Overlays Indexes///////// -#define MUTATIONS_LAYER 1 -#define SKIN_LAYER 2 -#define DAMAGE_LAYER 3 -#define SURGERY_LEVEL 4 //bs12 specific. -#define UNDERWEAR_LAYER 5 -#define SHOES_LAYER_ALT 6 -#define UNIFORM_LAYER 7 -#define ID_LAYER 8 -#define SHOES_LAYER 9 -#define GLOVES_LAYER 10 -#define BELT_LAYER 11 -#define SUIT_LAYER 12 -#define TAIL_LAYER 13 //bs12 specific. //In a perfect world the parts of the tail that show between legs would be on a new layer. Until then, sprite's been tweaked -#define GLASSES_LAYER 14 -#define BELT_LAYER_ALT 15 -#define SUIT_STORE_LAYER 16 -#define BACK_LAYER 17 -#define HAIR_LAYER 18 //TODO: make part of head layer? -#define EARS_LAYER 19 -#define EYES_LAYER 20 -#define FACEMASK_LAYER 21 -#define HEAD_LAYER 22 -#define COLLAR_LAYER 23 -#define HANDCUFF_LAYER 24 -#define LEGCUFF_LAYER 25 -#define L_HAND_LAYER 26 -#define R_HAND_LAYER 27 -#define MODIFIER_EFFECTS_LAYER 28 -#define FIRE_LAYER 29 //If you're on fire -#define WATER_LAYER 30 //If you're submerged in water. -#define TARGETED_LAYER 31 //BS12: Layer for the target overlay from weapon targeting system -#define TOTAL_LAYERS 31 +#define MUTATIONS_LAYER 1 //Mutations like fat, and lasereyes +#define SKIN_LAYER 2 //Skin things added by a call on species +#define DAMAGE_LAYER 3 //Injury overlay sprites like open wounds +#define SURGERY_LEVEL 4 //Overlays for open surgical sites +#define UNDERWEAR_LAYER 5 //Underwear/bras/etc +#define SHOES_LAYER_ALT 6 //Shoe-slot item (when set to be under uniform via verb) +#define UNIFORM_LAYER 7 //Uniform-slot item +#define ID_LAYER 8 //ID-slot item +#define SHOES_LAYER 9 //Shoe-slot item +#define GLOVES_LAYER 10 //Glove-slot item +#define BELT_LAYER 11 //Belt-slot item +#define SUIT_LAYER 12 //Suit-slot item +#define TAIL_LAYER 13 //Some species have tails to render +#define GLASSES_LAYER 14 //Eye-slot item +#define BELT_LAYER_ALT 15 //Belt-slot item (when set to be above suit via verb) +#define SUIT_STORE_LAYER 16 //Suit storage-slot item +#define BACK_LAYER 17 //Back-slot item +#define HAIR_LAYER 18 //The human's hair +#define EARS_LAYER 19 //Both ear-slot items (combined image) +#define EYES_LAYER 20 //Mob's eyes (used for glowing eyes) +#define FACEMASK_LAYER 21 //Mask-slot item +#define HEAD_LAYER 22 //Head-slot item +#define HANDCUFF_LAYER 23 //Handcuffs, if the human is handcuffed, in a secret inv slot +#define LEGCUFF_LAYER 24 //Same as handcuffs, for legcuffs +#define L_HAND_LAYER 25 //Left-hand item +#define R_HAND_LAYER 26 //Right-hand item +#define MODIFIER_EFFECTS_LAYER 27 //Effects drawn by modifiers +#define FIRE_LAYER 28 //'Mob on fire' overlay layer +#define WATER_LAYER 29 //'Mob submerged' overlay layer +#define TARGETED_LAYER 30 //'Aimed at' overlay layer +#define TOTAL_LAYERS 30//<---- KEEP THIS UPDATED, should always equal the highest number here, used to initialize a list. ////////////////////////////////// /mob/living/carbon/human @@ -144,13 +153,13 @@ Please contact me on #coderbus IRC. ~Carn x var/mutable_appearance/ma_compiled = new(src) //1: HUDs because these are hidden behind a backplane. See update_icons_huds() - ma_compiled.overlays = list_huds //The first one can set instead of add + ma_compiled.underlays = list_huds //The first one can set instead of add //2: The body itself, all the organs and whatnot - ma_compiled.overlays += list_body + //ma_compiled.overlays += list_body //Trying flat icon setting for now //3: The 'layers' list (overlays_standing), from the defines above - ma_compiled.overlays += list_layers + ma_compiled.overlays = list_layers //4: Apply transforms based on situation update_transform(ma_compiled) @@ -285,7 +294,7 @@ var/global/list/damage_icon_parts = list() var/icon/standing = new /icon(species.damage_overlays, "00") - var/image/standing_image = new /image("icon" = standing) + var/image/standing_image = new /image("icon" = standing,layer = BODY_LAYER+DAMAGE_LAYER) // blend the individual damage states with our icons for(var/obj/item/organ/external/O in organs) @@ -434,7 +443,10 @@ var/global/list/damage_icon_parts = list() //END CACHED ICON GENERATION. stand_icon.Blend(base_icon,ICON_OVERLAY) - list_body += stand_icon //A little silly, almost pointless to use a list for this, but can come back later and make this proc itself better + //var/image/standing = image(stand_icon) + //standing.layer = BODY_LAYER + //list_body += standing //A little silly, almost pointless to use a list for this, but can come back later and make this proc itself better + icon = stand_icon if(update_icons) update_icons() @@ -445,8 +457,12 @@ var/global/list/damage_icon_parts = list() /mob/living/carbon/human/proc/update_skin(var/update_icons=1) if(QDESTROYING(src)) return - - overlays_standing[SKIN_LAYER] = species.update_skin(src) + + var/image/skin = species.update_skin(src) + if(skin) + skin.layer = BODY_LAYER+SKIN_LAYER + overlays_standing[SKIN_LAYER] = skin + if(update_icons) update_icons_layers() //UNDERWEAR OVERLAY @@ -462,7 +478,8 @@ var/global/list/damage_icon_parts = list() if(hide_underwear[category]) continue var/datum/category_item/underwear/UWI = all_underwear[category] - overlays_standing[UNDERWEAR_LAYER] += UWI.generate_image(all_underwear_metadata[category]) + var/image/wear = UWI.generate_image(all_underwear_metadata[category], layer = BODY_LAYER+UNDERWEAR_LAYER) + overlays_standing[UNDERWEAR_LAYER] += wear if(update_icons) update_icons_layers() @@ -511,7 +528,7 @@ var/global/list/damage_icon_parts = list() if(head_organ.nonsolid) face_standing += rgb(,,,120) - overlays_standing[HAIR_LAYER] = image(face_standing) + overlays_standing[HAIR_LAYER] = image(face_standing, layer = BODY_LAYER+HAIR_LAYER) if(update_icons) update_icons_layers() /mob/living/carbon/human/update_eyes(var/update_icons=1) @@ -573,7 +590,7 @@ var/global/list/damage_icon_parts = list() if(FAT in mutations) fat = "fat" - var/image/standing = image(icon = 'icons/effects/genetics.dmi') + var/image/standing = image(icon = 'icons/effects/genetics.dmi', layer = BODY_LAYER+MUTATIONS_LAYER) var/g = gender == FEMALE ? "f" : "m" for(var/datum/dna/gene/gene in dna_genes) @@ -650,60 +667,14 @@ var/global/list/damage_icon_parts = list() //Align this item on the inventory screen TODO: Move this elsewhere w_uniform.screen_loc = ui_iclothing - //Pick an icon file - var/icon/under_icon - if(w_uniform.icon_override) - under_icon = w_uniform.icon_override - else if(w_uniform.sprite_sheets && w_uniform.sprite_sheets[species.get_bodytype(src)]) - under_icon = w_uniform.sprite_sheets[species.get_bodytype(src)] - else if(w_uniform.item_icons && w_uniform.item_icons[slot_w_uniform_str]) - under_icon = w_uniform.item_icons[slot_w_uniform_str] - else - under_icon = INV_W_UNIFORM_DEF_ICON - - //Pick an icon state - var/under_state - if(w_uniform.item_state_slots && w_uniform.item_state_slots[slot_w_uniform_str]) - under_state = w_uniform.item_state_slots[slot_w_uniform_str] - else if(w_uniform.item_state) - under_state = w_uniform.item_state - else - under_state = w_uniform.icon_state - - //SNOWFLAKE: Append _s for no apparent reason at all - var/image/standing = image(icon = under_icon, icon_state = "[under_state]_s") - - //Addblends is something some accessories use when they want to ICON_ADD blends onto the uniform - if(w_uniform.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = w_uniform.addblends) - if(w_uniform.color) - base.Blend(w_uniform.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = w_uniform.color - - //Blood overlay for uniform blood splatter - if(w_uniform.blood_DNA) - var/image/bloodsies = image(icon = species.get_blood_mask(src), icon_state = "uniformblood") - bloodsies.color = w_uniform.blood_color - standing.overlays += bloodsies - - //Accessories drawn directly onto the uniform - var/obj/item/clothing/under/under = w_uniform - if(under.accessories.len) - for(var/obj/item/clothing/accessory/A in under.accessories) - standing.overlays |= A.get_mob_overlay() - - overlays_standing[UNIFORM_LAYER] = standing + //Build a uniform sprite + overlays_standing[UNIFORM_LAYER] = w_uniform.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_w_uniform_str, default_icon = INV_W_UNIFORM_DEF_ICON, default_layer = UNIFORM_LAYER) //Shoes can be affected by uniform being drawn onto them update_inv_shoes(FALSE) //TODO: Remove this - if(update_icons) - update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_wear_id(var/update_icons=1) if(QDESTROYING(src)) @@ -718,16 +689,11 @@ var/global/list/damage_icon_parts = list() //Align this item on the inventory screen TODO: Move this elsewhere wear_id.screen_loc = ui_id - //Only draw the ID on the mob if the uniform allows for it TODO: bad colon check - if(w_uniform && w_uniform:displays_id) - var/image/standing - if(wear_id.icon_override) - standing = image("icon" = wear_id.icon_override, "icon_state" = "[icon_state]") - else if(wear_id.sprite_sheets && wear_id.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = wear_id.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[icon_state]") - else - standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "id") - overlays_standing[ID_LAYER] = standing + //Only draw the ID on the mob if the uniform allows for it + if(w_uniform && istype(w_uniform, /obj/item/clothing/under)) + var/obj/item/clothing/under/U = w_uniform + if(U.displays_id) + overlays_standing[ID_LAYER] = wear_id.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_wear_id_str, default_icon = INV_WEAR_ID_DEF_ICON, default_layer = ID_LAYER) //Set the bits to update the ID hud since they put something in this slot (or removed it) //TODO: Move elsewhere, update icons is not the place. @@ -751,37 +717,9 @@ var/global/list/damage_icon_parts = list() if(gloves) gloves.screen_loc = ui_gloves //TODO - var/t_state = gloves.item_state - if(!t_state) t_state = gloves.icon_state - - //Garbled mess of picking an icon and state at the same time - var/image/standing - if(gloves.icon_override) - standing = image("icon" = gloves.icon_override, "icon_state" = "[t_state]") - else if(gloves.sprite_sheets && gloves.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = gloves.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[t_state]") - else - standing = image("icon" = 'icons/mob/hands.dmi', "icon_state" = "[t_state]") - - //Bloodying them if necessary TODO this is basically identical to the elif blood_DNA below - if(gloves.blood_DNA) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "bloodyhands") - bloodsies.color = gloves.blood_color - standing.overlays += bloodsies - - //Accessory things for gloves that use ADD blend - if(gloves.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = gloves.addblends) - if(gloves.color) - base.Blend(gloves.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = gloves.color - overlays_standing[GLOVES_LAYER] = standing + overlays_standing[GLOVES_LAYER] = gloves.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_gloves_str, default_icon = INV_GLOVES_DEF_ICON, default_layer = GLOVES_LAYER) - else if(blood_DNA) + else if(blood_DNA) //TODO: Make this proc generic var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "bloodyhands") bloodsies.color = hand_blood_color overlays_standing[GLOVES_LAYER] = bloodsies @@ -799,26 +737,7 @@ var/global/list/damage_icon_parts = list() if(update_icons) update_icons_layers() return //Not wearing glasses, no need to update anything. - //Garbled mess of picking an icon and iconstate at the same time - var/image/standing - if(glasses.icon_override) - standing = image("icon" = glasses.icon_override, "icon_state" = "[glasses.icon_state]") - else if(glasses.sprite_sheets && glasses.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = glasses.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[glasses.icon_state]") - else - standing = image("icon" = 'icons/mob/eyes.dmi', "icon_state" = "[glasses.icon_state]") - - //Thing for glasses ADD blend accessories (probably never used) - if(glasses.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = glasses.addblends) - if(glasses.color) - base.Blend(glasses.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = glasses.color - overlays_standing[GLASSES_LAYER] = standing + overlays_standing[GLASSES_LAYER] = glasses.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_gloves_str, default_icon = INV_EYES_DEF_ICON, default_layer = GLASSES_LAYER) if(update_icons) update_icons_layers() @@ -837,61 +756,17 @@ var/global/list/damage_icon_parts = list() return //Why bother, if no ear sprites // Blank image upon which to layer left & right overlays. - var/image/both = image("icon" = 'icons/effects/effects.dmi', "icon_state" = "nothing") + var/image/both = image(icon = 'icons/effects/effects.dmi', icon_state = "nothing", layer = BODY_LAYER+EARS_LAYER) if(l_ear) - var/image/standing - var/t_type = l_ear.icon_state - - //Jumbled mess of deciding an icon and iconstate at the same time - if(l_ear.icon_override) - t_type = "[t_type]_l" - standing = image("icon" = l_ear.icon_override, "icon_state" = "[t_type]") - else if(l_ear.sprite_sheets && l_ear.sprite_sheets[species.get_bodytype(src)]) - t_type = "[t_type]_l" - standing = image("icon" = l_ear.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[t_type]") - else - standing = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]") - - //Addblends system for ear accessories (literally nothing uses this, probably??) - if(l_ear.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = l_ear.addblends) - if(l_ear.color) - base.Blend(l_ear.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = l_ear.color - both.overlays += standing + var/image/standing = l_ear.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_l_ear_str, default_icon = INV_EARS_DEF_ICON, default_layer = EARS_LAYER) + both.add_overlay(standing) if(r_ear) - var/image/standing - var/t_type = r_ear.icon_state - - //Jumbled mess of deciding an icon and iconstate at the same time - if(r_ear.icon_override) - t_type = "[t_type]_r" - standing = image("icon" = r_ear.icon_override, "icon_state" = "[t_type]") - else if(r_ear.sprite_sheets && r_ear.sprite_sheets[species.get_bodytype(src)]) - t_type = "[t_type]_r" - standing = image("icon" = r_ear.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[t_type]") - else - standing = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]") - - //Addblends system for ear accessories (literally nothing uses this, probably??) - if(r_ear.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = r_ear.addblends) - if(r_ear.color) - base.Blend(r_ear.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = r_ear.color - both.overlays += standing + var/image/standing = r_ear.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_r_ear_str, default_icon = INV_EARS_DEF_ICON, default_layer = EARS_LAYER) + both.add_overlay(standing) - overlays_standing[EARS_LAYER] = both + overlays_standing[EARS_LAYER] = both if(update_icons) update_icons_layers() @@ -907,16 +782,6 @@ var/global/list/damage_icon_parts = list() return //Either nothing to draw, or it'd be hidden. if(shoes) - var/image/standing - - //Jumbled mess of deciding icon and iconstate at the same time - if(shoes.icon_override) - standing = image("icon" = shoes.icon_override, "icon_state" = "[shoes.icon_state]") - else if(shoes.sprite_sheets && shoes.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = shoes.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[shoes.icon_state]") - else - standing = image("icon" = 'icons/mob/feet.dmi', "icon_state" = "[shoes.icon_state]") - //Allow for shoe layer toggle nonsense var/shoe_layer = SHOES_LAYER if(istype(shoes, /obj/item/clothing/shoes)) @@ -924,27 +789,10 @@ var/global/list/damage_icon_parts = list() if(ushoes.shoes_under_pants == 1) shoe_layer = SHOES_LAYER_ALT - //Damn near identical to feet_blood_DNA section, TODO - if(shoes.blood_DNA) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "shoeblood") - bloodsies.color = shoes.blood_color - standing.overlays += bloodsies + //NB: the use of a var for the layer on this one + overlays_standing[shoe_layer] = shoes.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_shoes_str, default_icon = INV_FEET_DEF_ICON, default_layer = shoe_layer) - //Probably never used: for ICON_ADD accessories on shoes - if(shoes.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = shoes.addblends) - if(shoes.color) - base.Blend(shoes.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = shoes.color - - //NB: Uses a var from above rather than a define - overlays_standing[shoe_layer] = standing - - //Bloody feet, but not wearing shoes + //Bloody feet, but not wearing shoes TODO else if(feet_blood_DNA) var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "shoeblood") bloodsies.color = feet_blood_color @@ -964,12 +812,14 @@ var/global/list/damage_icon_parts = list() s_store.screen_loc = ui_sstore1 //TODO + //TODO, this is unlike the rest of the things //Basically has no variety in slot icon choices at all. WHY SPECIES ONLY?? var/t_state = s_store.item_state - if(!t_state) t_state = s_store.icon_state - overlays_standing[SUIT_STORE_LAYER] = image("icon" = species.suit_storage_icon, "icon_state" = "[t_state]") + if(!t_state) + t_state = s_store.icon_state + overlays_standing[SUIT_STORE_LAYER] = image(icon = species.suit_storage_icon, icon_state = t_state, layer = BODY_LAYER+SUIT_STORE_LAYER) - if(update_icons) update_icons_layers() + if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_head(var/update_icons=1) if(QDESTROYING(src)) @@ -978,71 +828,12 @@ var/global/list/damage_icon_parts = list() overlays_standing[HEAD_LAYER] = null if(!head) - if(update_icons) update_icons_layers() + if(update_icons) update_icons_layers() return //No head item, why bother. - + head.screen_loc = ui_head //TODO - //Determine the icon to use - var/t_icon - if(head.icon_override) - t_icon = head.icon_override - else if(head.sprite_sheets && head.sprite_sheets[species.get_bodytype(src)]) - t_icon = head.sprite_sheets[species.get_bodytype(src)] - - else if(head.item_icons && (slot_head_str in head.item_icons)) - t_icon = head.item_icons[slot_head_str] - else - t_icon = INV_HEAD_DEF_ICON - - //Determine the state to use - var/t_state - if(istype(head, /obj/item/weapon/paper)) - /* I don't like this, but bandaid to fix half the hats in the game - being completely broken without re-breaking paper hats */ - t_state = "paper" - else - if(head.item_state_slots && head.item_state_slots[slot_head_str]) - t_state = head.item_state_slots[slot_head_str] - else if(head.item_state) - t_state = head.item_state - else - t_state = head.icon_state - - //Create the image - var/image/standing = image(icon = t_icon, icon_state = t_state) - - //Apparently unlike hands or feet, THIS time we can only have blood on our helmet not our head - if(head.blood_DNA) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "helmetblood") - bloodsies.color = head.blood_color - standing.overlays += bloodsies - - //We really need light overlay caches? It's probably a single icon. Let the helmet hold it? - if(istype(head,/obj/item/clothing/head)) - var/obj/item/clothing/head/hat = head - var/cache_key = "[hat.light_overlay]_[species.get_bodytype(src)]" - if(hat.on && light_overlay_cache[cache_key]) - standing.overlays |= light_overlay_cache[cache_key] - - //For accessories that require ICON_ADD blending (again, why) - if(head.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = head.addblends) - if(head.color) - base.Blend(head.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = head.color - - //Accessories, again, again, again. - var/obj/item/clothing/head/hat = head - if(istype(hat) && hat.accessories.len) - for(var/obj/item/clothing/accessory/A in hat.accessories) - standing.overlays |= A.get_mob_overlay() - - overlays_standing[HEAD_LAYER] = standing + overlays_standing[HEAD_LAYER] = head.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_head_str, default_icon = INV_HEAD_DEF_ICON, default_layer = HEAD_LAYER) if(update_icons) update_icons_layers() @@ -1051,7 +842,7 @@ var/global/list/damage_icon_parts = list() return overlays_standing[BELT_LAYER] = null - overlays_standing[BELT_LAYER_ALT] = null + overlays_standing[BELT_LAYER_ALT] = null //Because you can toggle belt layer with a verb if(!belt) if(update_icons) update_icons_layers() @@ -1059,18 +850,6 @@ var/global/list/damage_icon_parts = list() belt.screen_loc = ui_belt //TODO - Distant screaming. - var/t_state = belt.item_state - if(!t_state) t_state = belt.icon_state - var/image/standing = image("icon_state" = "[t_state]") - - //Mess of determining icon - if(belt.icon_override) - standing.icon = belt.icon_override - else if(belt.sprite_sheets && belt.sprite_sheets[species.get_bodytype(src)]) - standing.icon = belt.sprite_sheets[species.get_bodytype(src)] - else - standing.icon = 'icons/mob/belt.dmi' - //Toggle for belt layering with uniform var/belt_layer = BELT_LAYER if(istype(belt, /obj/item/weapon/storage/belt)) @@ -1078,26 +857,8 @@ var/global/list/damage_icon_parts = list() if(ubelt.show_above_suit) belt_layer = BELT_LAYER_ALT - //Some belts have sprites to show icons - if(belt.contents.len) - for(var/obj/item/i in belt.contents) - var/i_state = i.item_state - if(!i_state) i_state = i.icon_state - standing.overlays += image("icon" = 'icons/mob/belt.dmi', "icon_state" = "[i_state]") - - //Yet Another Addblends - For accessories with ICON_ADD requirements - if(belt.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = belt.addblends) - if(belt.color) - base.Blend(belt.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = belt.color - - //NB: This uses a var from above rather than a define - overlays_standing[belt_layer] = standing + //NB: this uses a var from above + overlays_standing[belt_layer] = belt.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_belt_str, default_icon = INV_BELT_DEF_ICON, default_layer = belt_layer) if(update_icons) update_icons_layers() @@ -1113,29 +874,7 @@ var/global/list/damage_icon_parts = list() wear_suit.screen_loc = ui_oclothing //TODO - var/image/standing - - //Garbled mess of icon determination - var/t_icon = INV_SUIT_DEF_ICON - if(wear_suit.icon_override) - t_icon = wear_suit.icon_override - else if(wear_suit.sprite_sheets && wear_suit.sprite_sheets[species.get_bodytype(src)]) - t_icon = wear_suit.sprite_sheets[species.name] - else if(wear_suit.item_icons && wear_suit.item_icons[slot_wear_suit_str]) - t_icon = wear_suit.item_icons[slot_wear_suit_str] - - standing = image("icon" = t_icon, "icon_state" = "[wear_suit.icon_state]") - - //Another addblends system, like all the others, for accessories with ICON_ADD requirements - if(wear_suit.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = wear_suit.addblends) - if(wear_suit.color) - base.Blend(wear_suit.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = wear_suit.color + overlays_standing[SUIT_LAYER] = wear_suit.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_wear_suit_str, default_icon = INV_SUIT_DEF_ICON, default_layer = SUIT_LAYER) //REALLY? REAAAAAAALLY???? UPDATE ICONS??? TODO if( istype(wear_suit, /obj/item/clothing/suit/straight_jacket) ) @@ -1143,24 +882,7 @@ var/global/list/damage_icon_parts = list() drop_l_hand() drop_r_hand() - //Blood on suit sprites - if(wear_suit.blood_DNA) - var/obj/item/clothing/suit/S = wear_suit - if(istype(S)) //You can put non-suits in your suit slot (diona nymphs etc). //Pretty sure nymphs don't go in suit slot. Or, they shouldn't. - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "[S.blood_overlay_type]blood") - bloodsies.color = wear_suit.blood_color - standing.overlays += bloodsies - - //Accessories for suits (are there even any) - var/obj/item/clothing/suit/suit = wear_suit - if(istype(suit) && suit.accessories.len) - for(var/obj/item/clothing/accessory/A in suit.accessories) - standing.overlays |= A.get_mob_overlay() - - overlays_standing[SUIT_LAYER] = standing - //Hide/show other layers if necessary (AAAAA) TODO - update_collar(0) update_inv_w_uniform(0) update_inv_shoes(0) update_tail_showing(0) @@ -1187,35 +909,8 @@ var/global/list/damage_icon_parts = list() return //Why bother, nothing in mask slot. wear_mask.screen_loc = ui_mask //TODO - - var/image/standing - //Find an icon and iconstate at the same time which is gross - if(wear_mask.icon_override) - standing = image("icon" = wear_mask.icon_override, "icon_state" = "[wear_mask.icon_state]") - else if(wear_mask.sprite_sheets && wear_mask.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = wear_mask.sprite_sheets[species.get_bodytype(src)], "icon_state" = "[wear_mask.icon_state]") - else - standing = image("icon" = 'icons/mob/mask.dmi', "icon_state" = "[wear_mask.icon_state]") - - //Yet Another... you get the idea. For accessories that use ICON_ADD - if(wear_mask.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = wear_mask.addblends) - if(wear_mask.color) - base.Blend(wear_mask.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = wear_mask.color - - //Apply blood, but only if it's not a cigarette (we could totally make that work for cigs too though with AND blending) TODO - if( !istype(wear_mask, /obj/item/clothing/mask/smokable/cigarette) && wear_mask.blood_DNA ) - var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "maskblood") - bloodsies.color = wear_mask.blood_color - standing.overlays += bloodsies - - overlays_standing[FACEMASK_LAYER] = standing + overlays_standing[FACEMASK_LAYER] = wear_mask.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_wear_mask_str, default_icon = INV_MASK_DEF_ICON, default_layer = FACEMASK_LAYER) if(update_icons) update_icons_layers() @@ -1228,48 +923,10 @@ var/global/list/damage_icon_parts = list() if(!back) if(update_icons) update_icons_layers() return - + back.screen_loc = ui_back //TODO - //Select an icon to use - var/icon/overlay_icon - if(back.icon_override) - overlay_icon = back.icon_override - else if(istype(back, /obj/item/weapon/rig)) - //SNOWFLAKE: If this is a rig and a mob_icon is set, it will take species into account in the rig update_icon() proc. - var/obj/item/weapon/rig/rig = back - overlay_icon = rig.mob_icon - else if(back.sprite_sheets && back.sprite_sheets[species.get_bodytype(src)]) - overlay_icon = back.sprite_sheets[species.get_bodytype(src)] - else if(back.item_icons && (slot_back_str in back.item_icons)) - overlay_icon = back.item_icons[slot_back_str] - else - overlay_icon = INV_BACK_DEF_ICON - - //Select a state to use - var/overlay_state - if(back.item_state_slots && back.item_state_slots[slot_back_str]) - overlay_state = back.item_state_slots[slot_back_str] - else if(back.item_state) - overlay_state = back.item_state - else - overlay_state = back.icon_state - - //Get an image - var/image/standing = image(icon = overlay_icon, icon_state = overlay_state) - - //Another addblends, for things using ICON_ADD - if(back.addblends) - var/icon/base = new/icon("icon" = standing.icon, "icon_state" = standing.icon_state) - var/addblend_icon = new/icon("icon" = standing.icon, "icon_state" = back.addblends) - if(back.color) - base.Blend(back.color, ICON_MULTIPLY) - base.Blend(addblend_icon, ICON_ADD) - standing = image(base) - else - standing.color = back.color - - overlays_standing[BACK_LAYER] = standing + overlays_standing[BACK_LAYER] = back.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_back_str, default_icon = INV_BACK_DEF_ICON, default_layer = BACK_LAYER) if(update_icons) update_icons_layers() @@ -1304,16 +961,7 @@ var/global/list/damage_icon_parts = list() drop_l_hand() stop_pulling() //TODO: should be handled elsewhere - //Get icon, iconstate at the same time - var/image/standing - if(handcuffed.icon_override) - standing = image("icon" = handcuffed.icon_override, "icon_state" = "handcuff1") - else if(handcuffed.sprite_sheets && handcuffed.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = handcuffed.sprite_sheets[species.get_bodytype(src)], "icon_state" = "handcuff1") - else - standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "handcuff1") - - overlays_standing[HANDCUFF_LAYER] = standing + overlays_standing[HANDCUFF_LAYER] = handcuffed.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_handcuffed_str, default_icon = INV_HCUFF_DEF_ICON, default_layer = HANDCUFF_LAYER) if(update_icons) update_icons_layers() @@ -1327,14 +975,7 @@ var/global/list/damage_icon_parts = list() if(update_icons) update_icons_layers() return //Not legcuffed, why bother. - //Get icon, iconstate at same time (bleh) - var/image/standing - if(legcuffed.icon_override) - standing = image("icon" = legcuffed.icon_override, "icon_state" = "legcuff1") - else if(legcuffed.sprite_sheets && legcuffed.sprite_sheets[species.get_bodytype(src)]) - standing = image("icon" = legcuffed.sprite_sheets[species.get_bodytype(src)], "icon_state" = "legcuff1") - else - standing = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "legcuff1") + overlays_standing[LEGCUFF_LAYER] = handcuffed.make_worn_icon(body_type = species.get_bodytype(), slot_name = slot_legcuffed_str, default_icon = INV_LCUFF_DEF_ICON, default_layer = LEGCUFF_LAYER) //TODO: Not in my update_icons if(m_intent != "walk") @@ -1342,8 +983,6 @@ var/global/list/damage_icon_parts = list() if(hud_used && src.hud_used.move_intent) hud_used.move_intent.icon_state = "walking" - overlays_standing[LEGCUFF_LAYER] = standing - if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_r_hand(var/update_icons=1) @@ -1358,36 +997,11 @@ var/global/list/damage_icon_parts = list() r_hand.screen_loc = ui_rhand //TODO - var/t_state - var/icon/t_icon - - //Select an icon to use - if(r_hand.item_icons && (slot_r_hand_str in r_hand.item_icons)) - t_icon = r_hand.item_icons[slot_r_hand_str] - else if(r_hand.icon_override) - t_state += "_r" //SNOWFLAKE - t_icon = r_hand.icon_override - else - t_icon = INV_R_HAND_DEF_ICON - - //Select a state to use - - if(r_hand.item_state_slots && r_hand.item_state_slots[slot_r_hand_str]) - t_state = r_hand.item_state_slots[slot_r_hand_str] - else if(r_hand.item_state) - t_state = r_hand.item_state - else - t_state = r_hand.icon_state - - //Apply color - var/image/standing = image(icon = t_icon, icon_state = t_state) - standing.color = r_hand.color + overlays_standing[R_HAND_LAYER] = r_hand.make_worn_icon(body_type = species.get_bodytype(), inhands = TRUE, slot_name = slot_r_hand_str, default_icon = INV_R_HAND_DEF_ICON, default_layer = R_HAND_LAYER) if(handcuffed) drop_r_hand() //TODO: EXCUSE ME - overlays_standing[R_HAND_LAYER] = standing - if(update_icons) update_icons_layers() /mob/living/carbon/human/update_inv_l_hand(var/update_icons=1) @@ -1402,35 +1016,11 @@ var/global/list/damage_icon_parts = list() l_hand.screen_loc = ui_lhand //TODO - var/icon/t_icon - var/t_state - - //Select an icon to use - if(l_hand.item_icons && (slot_l_hand_str in l_hand.item_icons)) - t_icon = l_hand.item_icons[slot_l_hand_str] - else if(l_hand.icon_override) - t_state += "_l" - t_icon = l_hand.icon_override - else - t_icon = INV_L_HAND_DEF_ICON - - //Select a state to use - if(l_hand.item_state_slots && l_hand.item_state_slots[slot_l_hand_str]) - t_state = l_hand.item_state_slots[slot_l_hand_str] - else if(l_hand.item_state) - t_state = l_hand.item_state - else - t_state = l_hand.icon_state - - //Apply color - var/image/standing = image(icon = t_icon, icon_state = t_state) - standing.color = l_hand.color + overlays_standing[L_HAND_LAYER] = l_hand.make_worn_icon(body_type = species.get_bodytype(), inhands = TRUE, slot_name = slot_l_hand_str, default_icon = INV_L_HAND_DEF_ICON, default_layer = L_HAND_LAYER) if(handcuffed) drop_l_hand() //TODO: AAAAAAAAAAa - overlays_standing[L_HAND_LAYER] = standing - if(update_icons) update_icons_layers() /mob/living/carbon/human/proc/update_tail_showing(var/update_icons=1) @@ -1534,28 +1124,6 @@ var/global/list/damage_icon_parts = list() if(update_icons) update_icons_layers() -//Adds a collar overlay above the helmet layer if the suit has one -// Suit needs an identically named sprite in icons/mob/collar.dmi -//TODO: Is this used, ever? It was never set to clear this icon. -/mob/living/carbon/human/proc/update_collar(var/update_icons=1) - if(QDESTROYING(src)) - return - - overlays_standing[COLLAR_LAYER] = null - if(!wear_suit) - if(update_icons) update_icons_layers() - return //No suit to have a collar - - //Init icon out here so we can scan iconstates for collar TODO: This is dumb, just have a blank state to catch it. - var/icon/C = icon('icons/mob/collar.dmi') - var/image/standing - if(wear_suit.icon_state in C.IconStates()) - standing = image(icon = C, icon_state = wear_suit.icon_state) - - overlays_standing[COLLAR_LAYER] = standing - - if(update_icons) update_icons_layers() - /mob/living/carbon/human/update_modifier_visuals(var/update_icons=1) if(QDESTROYING(src)) return diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index a7b965d74f..dc7e568bd5 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -624,6 +624,7 @@ var/global/image/backplane backplane = image('icons/misc/win32.dmi') backplane.alpha = 0 backplane.plane = -100 + backplane.layer = BACKPLANE_LAYER backplane.mouse_opacity = 0 return TRUE diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 9b4eaf639e..c57f5de2c5 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -457,6 +457,10 @@ update_icon() +/obj/item/weapon/paper/get_worn_icon_state(var/slot_name) + if(slot_name == slot_head_str) + return "paper" //Gross, but required for now. + return ..() /obj/item/weapon/paper/attackby(obj/item/weapon/P as obj, mob/user as mob) ..() diff --git a/icons/mob/mob.dmi b/icons/mob/mob.dmi index 33133bda47b4efe581cb816c918a9592cbc1161c..b7a0ba8c4be60d475048d45c424d02594c6f4d15 100644 GIT binary patch literal 200157 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 Oc^D&eL()m-h<^d7@dzsb literal 201586 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≥jq{6paGAx^%e1NLLl$ae5KwzA2!Y_ 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

NXb3tA#1t(*P_&6g$Bn~;3@@?|gf`MQ+n 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