diff --git a/code/modules/clothing/shoes/_shoes.dm b/code/modules/clothing/shoes/_shoes.dm index daaf0836e7..31ed69254b 100644 --- a/code/modules/clothing/shoes/_shoes.dm +++ b/code/modules/clothing/shoes/_shoes.dm @@ -16,8 +16,8 @@ var/equipped_before_drop = FALSE //CITADEL EDIT Enables digitigrade shoe styles - adjusted = NORMAL_STYLE - alternate_worn_icon = 'modular_citadel/icons/mob/digishoes.dmi' + var/adjusted = NORMAL_STYLE + var/mutantrace_variation = MUTANTRACE_VARIATION /obj/item/clothing/shoes/ComponentInitialize() . = ..() @@ -63,11 +63,13 @@ worn_y_dimension -= (offset * 2) user.update_inv_shoes() equipped_before_drop = TRUE + if(mutantrace_variation && ishuman(user)) var/mob/living/carbon/human/H = user if(DIGITIGRADE in H.dna.species.species_traits) adjusted = DIGITIGRADE_STYLE - H.update_inv_shoes() + else if(adjusted == DIGITIGRADE_STYLE) + adjusted = NORMAL_STYLE /obj/item/clothing/shoes/proc/restore_offsets(mob/user) equipped_before_drop = FALSE diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 5a37007271..52661fae6d 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -917,10 +917,6 @@ GLOBAL_LIST_EMPTY(roundstart_races) return FALSE if(num_legs < 2) return FALSE - if(DIGITIGRADE in species_traits) - if(!disable_warning) - to_chat(H, "The footwear around here isn't compatible with your feet!") - return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) if(SLOT_BELT) if(H.belt) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 79705764de..53c45d199f 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -274,6 +274,11 @@ There are several things that need to be remembered: if(hud_used.inventory_shown) //if the inventory is open client.screen += shoes //add it to client's screen update_observer_view(shoes,1) + if(S.adjusted == DIGITIGRADE_STYLE) + S.icon_override = 'modular_citadel/icons/mob/digishoes.dmi' + else if(S.adjusted == NORMAL_STYLE) + S.icon_override = null + overlays_standing[SHOES_LAYER] = shoes.build_worn_icon(state = shoes.icon_state, default_layer = SHOES_LAYER, default_icon_file = ((shoes.icon_override) ? shoes.icon_override : 'icons/mob/feet.dmi')) var/mutable_appearance/shoes_overlay = overlays_standing[SHOES_LAYER] if(OFFSET_SHOES in dna.species.offset_features) @@ -282,13 +287,6 @@ There are several things that need to be remembered: overlays_standing[SHOES_LAYER] = shoes_overlay apply_overlay(SHOES_LAYER) -var/obj/item/clothing/shoes/S = H.shoes - if(swap_back) - S.adjusted = NORMAL_STYLE - else - S.adjusted = DIGITIGRADE_STYLE - H.update_inv_w_uniform() - /mob/living/carbon/human/update_inv_s_store() remove_overlay(SUIT_STORE_LAYER) diff --git a/code/modules/surgery/bodyparts/helpers.dm b/code/modules/surgery/bodyparts/helpers.dm index e884895c1b..d5ee3466d4 100644 --- a/code/modules/surgery/bodyparts/helpers.dm +++ b/code/modules/surgery/bodyparts/helpers.dm @@ -301,7 +301,7 @@ if(H.shoes) var/obj/item/clothing/shoes/S = H.shoes if(swap_back) - S.adjusted = NORMAL_STYLE - else - S.adjusted = DIGITIGRADE_STYLE - H.update_inv_w_uniform() + S.adjusted = NORMAL_STYLE + else + S.adjusted = DIGITIGRADE_STYLE + H.update_inv_shoes() diff --git a/modular_citadel/icons/mob/digishoes.dmi b/modular_citadel/icons/mob/digishoes.dmi index 02c9232963..49988f88f6 100644 Binary files a/modular_citadel/icons/mob/digishoes.dmi and b/modular_citadel/icons/mob/digishoes.dmi differ