Enables the combo blend mode for most colorable loadout gear.
-The most meaning the colorable uniforms, suits, gloves, shoes, headgear, earwear, and accessories. -Only affects mob icons for now, the inventory/floor icons still in old blend. -Sort of a framework for possible additional options to come. -Also messed around with some other stuff such as adding on-ear icons to the rest of the flower pins and bows, and made the base icons for the beanies lighter than the middle gray they were.
@@ -80,6 +80,7 @@
|
||||
var/list/sprite_sheets_obj = list()
|
||||
|
||||
var/toolspeed = 1.0 // This is a multipler on how 'fast' a tool works. e.g. setting this to 0.5 will make the tool work twice as fast.
|
||||
var/addblends // Icon overlay for ADD highlights when applicable.
|
||||
|
||||
/obj/item/New()
|
||||
..()
|
||||
|
||||
@@ -77,6 +77,7 @@
|
||||
desc = "A pair of gloves that reach past the elbow. Fancy!"
|
||||
name = "evening gloves"
|
||||
icon_state = "evening_gloves"
|
||||
addblends = "evening_gloves_a"
|
||||
|
||||
cold_protection = HANDS
|
||||
min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE
|
||||
|
||||
@@ -34,9 +34,11 @@
|
||||
|
||||
/obj/item/clothing/head/hairflower/white
|
||||
icon_state = "hairflower_white"
|
||||
addblends = "hairflower_white_a"
|
||||
|
||||
/obj/item/clothing/head/hairflower/bow
|
||||
icon_state = "bow"
|
||||
addblends = "bow_a"
|
||||
name = "hair bow"
|
||||
desc = "A ribbon tied into a bow with a clip on the back to attach to hair."
|
||||
item_state_slots = list(slot_r_hand_str = "pill", slot_l_hand_str = "pill")
|
||||
@@ -155,6 +157,7 @@
|
||||
|
||||
/obj/item/clothing/head/flatcap/grey
|
||||
icon_state = "flat_capw"
|
||||
addblends = "flat_capw_a"
|
||||
item_state_slots = list(slot_r_hand_str = "greysoft", slot_l_hand_str = "greysoft")
|
||||
|
||||
/obj/item/clothing/head/pirate
|
||||
@@ -300,6 +303,7 @@
|
||||
name = "hijab"
|
||||
desc = "A veil that is wrapped to cover the head and chest"
|
||||
icon_state = "hijab"
|
||||
addblends = "hijab_a"
|
||||
item_state_slots = list(slot_r_hand_str = "beret_white", slot_l_hand_str = "beret_white")
|
||||
body_parts_covered = 0
|
||||
flags_inv = BLOCKHAIR
|
||||
@@ -308,12 +312,14 @@
|
||||
name = "kippa"
|
||||
desc = "A small, brimless cap."
|
||||
icon_state = "kippa"
|
||||
addblends = "kippa_a"
|
||||
body_parts_covered = 0
|
||||
|
||||
/obj/item/clothing/head/turban
|
||||
name = "turban"
|
||||
desc = "A cloth used to wind around the head"
|
||||
icon_state = "turban"
|
||||
addblends = "turban_a"
|
||||
item_state_slots = list(slot_r_hand_str = "beret_white", slot_l_hand_str = "beret_white")
|
||||
body_parts_covered = 0
|
||||
flags_inv = BLOCKHEADHAIR
|
||||
@@ -322,24 +328,28 @@
|
||||
name = "taqiyah"
|
||||
desc = "A short, rounded skullcap usually worn for religious purposes."
|
||||
icon_state = "taqiyah"
|
||||
addblends = "taqiyah_a"
|
||||
item_state_slots = list(slot_r_hand_str = "taq", slot_l_hand_str = "taq")
|
||||
|
||||
/obj/item/clothing/head/beanie
|
||||
name = "beanie"
|
||||
desc = "A head-hugging brimless winter cap. This one is tight."
|
||||
icon_state = "beanie"
|
||||
addblends = "beanie_a"
|
||||
body_parts_covered = 0
|
||||
|
||||
/obj/item/clothing/head/beanie_loose
|
||||
name = "loose beanie"
|
||||
desc = "A head-hugging brimless winter cap. This one is loose."
|
||||
icon_state = "beanie_hang"
|
||||
addblends = "beanie_hang_a"
|
||||
body_parts_covered = 0
|
||||
|
||||
/obj/item/clothing/head/beretg
|
||||
name = "beret"
|
||||
desc = "A beret, an artists favorite headwear."
|
||||
icon_state = "beret_g"
|
||||
addblends = "beret_g_a"
|
||||
body_parts_covered = 0
|
||||
|
||||
/obj/item/clothing/head/sombrero
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
name = "white flats"
|
||||
desc = "Shiny white flats."
|
||||
icon_state = "flatswhite"
|
||||
addblends = "flatswhite_a"
|
||||
item_state_slots = list(slot_r_hand_str = "white", slot_l_hand_str = "white")
|
||||
|
||||
/obj/item/clothing/shoes/flats/white/color
|
||||
|
||||
@@ -124,23 +124,27 @@
|
||||
name = "flip flops"
|
||||
desc = "A pair of foam flip flops. For those not afraid to show a little ankle."
|
||||
icon_state = "thongsandal"
|
||||
addblends = "thongsandal_a"
|
||||
|
||||
/obj/item/clothing/shoes/athletic
|
||||
name = "athletic shoes"
|
||||
desc = "A pair of sleek atheletic shoes. Made by and for the sporty types."
|
||||
icon_state = "sportshoe"
|
||||
addblends = "sportshoe_a"
|
||||
item_state_slots = list(slot_r_hand_str = "sportheld", slot_l_hand_str = "sportheld")
|
||||
|
||||
/obj/item/clothing/shoes/skater
|
||||
name = "skater shoes"
|
||||
desc = "A pair of wide shoes with thick soles. Designed for skating."
|
||||
icon_state = "skatershoe"
|
||||
addblends = "skatershoe_a"
|
||||
item_state_slots = list(slot_r_hand_str = "skaterheld", slot_l_hand_str = "skaterheld")
|
||||
|
||||
/obj/item/clothing/shoes/heels
|
||||
name = "high heels"
|
||||
desc = "A pair of high-heeled shoes. Fancy!"
|
||||
icon_state = "heels"
|
||||
addblends = "heels_a"
|
||||
|
||||
/obj/item/clothing/shoes/footwraps
|
||||
name = "cloth footwraps"
|
||||
|
||||
@@ -277,6 +277,7 @@ obj/item/clothing/suit/kimono
|
||||
name = "kimono"
|
||||
desc = "A traditional Japanese kimono."
|
||||
icon_state = "kimono"
|
||||
addblends = "kimono_a"
|
||||
|
||||
/*
|
||||
* coats
|
||||
@@ -344,6 +345,7 @@ obj/item/clothing/suit/storage/toggle/peacoat
|
||||
name = "peacoat"
|
||||
desc = "A well-tailored, stylish peacoat."
|
||||
icon_state = "peacoat"
|
||||
addblends = "peacoat_a"
|
||||
item_state_slots = list(slot_r_hand_str = "peacoat", slot_l_hand_str = "peacoat")
|
||||
flags_inv = HIDEHOLSTER
|
||||
/*
|
||||
|
||||
@@ -45,6 +45,16 @@
|
||||
mob_overlay = image("icon" = sprite_sheets[wearer.species.get_bodytype(wearer)], "icon_state" = "[tmp_icon_state]")
|
||||
else
|
||||
mob_overlay = image("icon" = INV_ACCESSORIES_DEF_ICON, "icon_state" = "[tmp_icon_state]")
|
||||
if(addblends)
|
||||
var/icon/base = new/icon("icon" = mob_overlay.icon, "icon_state" = mob_overlay.icon_state)
|
||||
var/addblend_icon = new/icon("icon" = mob_overlay.icon, "icon_state" = src.addblends)
|
||||
if(color)
|
||||
base.Blend(src.color, ICON_MULTIPLY)
|
||||
base.Blend(addblend_icon, ICON_ADD)
|
||||
mob_overlay = image(base)
|
||||
else
|
||||
mob_overlay.color = src.color
|
||||
|
||||
return mob_overlay
|
||||
|
||||
//when user attached an accessory to S
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
/obj/item/clothing/accessory/armband/med/color
|
||||
name = "armband"
|
||||
desc = "A fancy armband."
|
||||
addblends = "med_a"
|
||||
|
||||
/obj/item/clothing/accessory/armband/medblue
|
||||
name = "EMT armband"
|
||||
|
||||
@@ -627,17 +627,20 @@
|
||||
name = "long dress"
|
||||
desc = "A long dress."
|
||||
icon_state = "whitedress2"
|
||||
addblends = "whitedress2_a"
|
||||
flags_inv = HIDESHOES
|
||||
|
||||
/obj/item/clothing/under/dress/white3
|
||||
name = "short dress"
|
||||
desc = "A short, plain dress."
|
||||
icon_state = "whitedress3"
|
||||
addblends = "whitedress3_a"
|
||||
|
||||
/obj/item/clothing/under/dress/white4
|
||||
name = "long flared dress"
|
||||
desc = "A long white dress that flares out at the bottom."
|
||||
icon_state = "whitedress4"
|
||||
addblends = "whitedress4_a"
|
||||
flags_inv = HIDESHOES
|
||||
|
||||
/obj/item/clothing/under/dress/darkred
|
||||
|
||||
@@ -121,6 +121,7 @@
|
||||
name = "yoga pants"
|
||||
desc = "A pair of tight-fitting yoga pants for those lazy days."
|
||||
icon_state = "yogapants"
|
||||
addblends = "yogapants_a"
|
||||
|
||||
/*
|
||||
* Baggy Pants
|
||||
|
||||
@@ -505,7 +505,16 @@ var/global/list/damage_icon_parts = list()
|
||||
|
||||
//need to append _s to the icon state for legacy compatibility
|
||||
var/image/standing = image(icon = under_icon, icon_state = "[under_state]_s")
|
||||
standing.color = w_uniform.color
|
||||
|
||||
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)
|
||||
@@ -569,7 +578,15 @@ var/global/list/damage_icon_parts = list()
|
||||
bloodsies.color = gloves.blood_color
|
||||
standing.overlays += bloodsies
|
||||
gloves.screen_loc = ui_gloves
|
||||
standing.color = gloves.color
|
||||
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
|
||||
else
|
||||
if(blood_DNA)
|
||||
@@ -590,7 +607,15 @@ var/global/list/damage_icon_parts = list()
|
||||
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]")
|
||||
standing.color = glasses.color
|
||||
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
|
||||
|
||||
else
|
||||
@@ -618,7 +643,15 @@ var/global/list/damage_icon_parts = list()
|
||||
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]")
|
||||
standing.color = l_ear.color
|
||||
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)
|
||||
@@ -632,7 +665,15 @@ var/global/list/damage_icon_parts = list()
|
||||
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]")
|
||||
standing.color = r_ear.color
|
||||
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
|
||||
@@ -666,8 +707,18 @@ var/global/list/damage_icon_parts = list()
|
||||
var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "shoeblood")
|
||||
bloodsies.color = shoes.blood_color
|
||||
standing.overlays += bloodsies
|
||||
standing.color = shoes.color
|
||||
|
||||
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
|
||||
overlays_standing[shoe_layer] = standing
|
||||
|
||||
else
|
||||
if(feet_blood_DNA)
|
||||
var/image/bloodsies = image("icon" = species.get_blood_mask(src), "icon_state" = "shoeblood")
|
||||
@@ -733,7 +784,15 @@ var/global/list/damage_icon_parts = list()
|
||||
if(hat.on && light_overlay_cache[cache_key])
|
||||
standing.overlays |= light_overlay_cache[cache_key]
|
||||
|
||||
standing.color = head.color
|
||||
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
|
||||
overlays_standing[HEAD_LAYER] = standing
|
||||
|
||||
else
|
||||
@@ -768,7 +827,15 @@ var/global/list/damage_icon_parts = list()
|
||||
if(!i_state) i_state = i.icon_state
|
||||
standing.overlays += image("icon" = 'icons/mob/belt.dmi', "icon_state" = "[i_state]")
|
||||
|
||||
standing.color = belt.color
|
||||
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
|
||||
else
|
||||
@@ -793,7 +860,16 @@ var/global/list/damage_icon_parts = list()
|
||||
t_icon = wear_suit.item_icons[slot_wear_suit_str]
|
||||
|
||||
standing = image("icon" = t_icon, "icon_state" = "[wear_suit.icon_state]")
|
||||
standing.color = wear_suit.color
|
||||
|
||||
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
|
||||
|
||||
if( istype(wear_suit, /obj/item/clothing/suit/straight_jacket) )
|
||||
drop_from_inventory(handcuffed)
|
||||
@@ -843,7 +919,15 @@ var/global/list/damage_icon_parts = list()
|
||||
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]")
|
||||
standing.color = wear_mask.color
|
||||
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( !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")
|
||||
@@ -885,7 +969,15 @@ var/global/list/damage_icon_parts = list()
|
||||
|
||||
//apply color
|
||||
var/image/standing = image(icon = overlay_icon, icon_state = overlay_state)
|
||||
standing.color = back.color
|
||||
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
|
||||
|
||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 174 KiB After Width: | Height: | Size: 179 KiB |
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 472 KiB After Width: | Height: | Size: 474 KiB |
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 364 KiB After Width: | Height: | Size: 367 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |