Various Clip-On Radio Fixes (#19224)

Fixes Clip-On Radios layering under head items when on ear slots. Also
fixed the flipped sprites being one pixel closer to the centre, due to
asymmetry.
This commit is contained in:
Sparky
2024-05-31 20:13:34 +00:00
committed by GitHub
parent d294808d0e
commit 7dedc58faf
4 changed files with 71 additions and 46 deletions
@@ -790,9 +790,18 @@ There are several things that need to be remembered:
else if(l_ear.item_icons && (slot_l_ear_str in l_ear.item_icons))
mob_icon = l_ear.item_icons[slot_l_ear_str]
overlays_raw[L_EAR_LAYER] = l_ear.get_mob_overlay(src, mob_icon, mob_state, slot_l_ear_str)
var/layer = L_EAR_LAYER
var/layer_alt = L_EAR_LAYER_ALT
var/obj/item/device/radio/headset/wrist/W = l_ear
if(istype(W) && W.mob_wear_layer == WRISTS_LAYER_OVER)
layer = L_EAR_LAYER_ALT
layer_alt = L_EAR_LAYER
overlays_raw[layer] = l_ear.get_mob_overlay(src, mob_icon, mob_state, slot_l_ear_str)
overlays_raw[layer_alt] = null
else
overlays_raw[L_EAR_LAYER] = null
overlays_raw[L_EAR_LAYER_ALT] = null
if(update_icons)
update_icon()
@@ -822,10 +831,18 @@ There are several things that need to be remembered:
else if(r_ear.item_icons && (slot_r_ear_str in r_ear.item_icons))
mob_icon = r_ear.item_icons[slot_r_ear_str]
overlays_raw[R_EAR_LAYER] = r_ear.get_mob_overlay(src, mob_icon, mob_state, slot_r_ear_str)
var/layer = R_EAR_LAYER
var/layer_alt = R_EAR_LAYER_ALT
var/obj/item/device/radio/headset/wrist/W = r_ear
if(istype(W) && W.mob_wear_layer == WRISTS_LAYER_OVER)
layer = R_EAR_LAYER_ALT
layer_alt = R_EAR_LAYER
overlays_raw[layer] = r_ear.get_mob_overlay(src, mob_icon, mob_state, slot_r_ear_str)
overlays_raw[layer_alt] = null
else
overlays_raw[R_EAR_LAYER] = null
overlays_raw[R_EAR_LAYER_ALT] = null
if(update_icons)
update_icon()