* Replaces /image with /mutable_appearance, where appropriate * Update miscellaneous.dm * Delete miscellaneous.dm.rej * Delete pet.dm.rej * Update pet.dm * Update species.dm * Update miscellaneous.dm * Update species.dm * Update miscellaneous.dm * Delete species.dm.rej * Update species.dm pretty sure I got all the indentation correct THIS time, ffs * Update species.dm * Update species.dm fucking tabs man, fucking tabs.
59 lines
2.0 KiB
Plaintext
59 lines
2.0 KiB
Plaintext
/mob/living/carbon/true_devil/doUnEquip(obj/item/I, force)
|
|
if(..())
|
|
update_inv_hands()
|
|
return 1
|
|
return 0
|
|
|
|
/mob/living/carbon/true_devil/update_inv_hands()
|
|
//TODO LORDPIDEY: Figure out how to make the hands line up properly. the l/r_hand_overlay should use the down sprite when facing down, left, or right, and the up sprite when facing up.
|
|
remove_overlay(DEVIL_HANDS_LAYER)
|
|
var/list/hands_overlays = list()
|
|
var/obj/item/l_hand = get_item_for_held_index(1) //hardcoded 2-hands only, for now.
|
|
var/obj/item/r_hand = get_item_for_held_index(2)
|
|
|
|
if(r_hand)
|
|
|
|
var/r_state = r_hand.item_state
|
|
if(!r_state)
|
|
r_state = r_hand.icon_state
|
|
|
|
var/mutable_appearance/r_hand_overlay = r_hand.build_worn_icon(state = r_state, default_layer = DEVIL_HANDS_LAYER, default_icon_file = r_hand.righthand_file, isinhands = TRUE)
|
|
|
|
hands_overlays += r_hand_overlay
|
|
|
|
if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD)
|
|
r_hand.layer = ABOVE_HUD_LAYER
|
|
r_hand.plane = ABOVE_HUD_PLANE
|
|
r_hand.screen_loc = ui_hand_position(get_held_index_of_item(r_hand))
|
|
client.screen |= r_hand
|
|
|
|
if(l_hand)
|
|
|
|
var/l_state = l_hand.item_state
|
|
if(!l_state)
|
|
l_state = l_hand.icon_state
|
|
|
|
var/mutable_appearance/l_hand_overlay = l_hand.build_worn_icon(state = l_state, default_layer = DEVIL_HANDS_LAYER, default_icon_file = l_hand.lefthand_file, isinhands = TRUE)
|
|
|
|
hands_overlays += l_hand_overlay
|
|
|
|
if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD)
|
|
l_hand.layer = ABOVE_HUD_LAYER
|
|
l_hand.plane = ABOVE_HUD_PLANE
|
|
l_hand.screen_loc = ui_hand_position(get_held_index_of_item(l_hand))
|
|
client.screen |= l_hand
|
|
if(hands_overlays.len)
|
|
devil_overlays[DEVIL_HANDS_LAYER] = hands_overlays
|
|
apply_overlay(DEVIL_HANDS_LAYER)
|
|
|
|
/mob/living/carbon/true_devil/remove_overlay(cache_index)
|
|
var/I = devil_overlays[cache_index]
|
|
if(I)
|
|
cut_overlay(I)
|
|
devil_overlays[cache_index] = null
|
|
|
|
|
|
/mob/living/carbon/true_devil/apply_overlay(cache_index)
|
|
if((. = devil_overlays[cache_index]))
|
|
add_overlay(.)
|