diff --git a/code/modules/mob/living/carbon/human/emote_vr.dm b/code/modules/mob/living/carbon/human/emote_vr.dm index 6a3e65b880..352729c5da 100644 --- a/code/modules/mob/living/carbon/human/emote_vr.dm +++ b/code/modules/mob/living/carbon/human/emote_vr.dm @@ -247,7 +247,7 @@ set desc = "Switch tail layer on top." tail_alt = !tail_alt update_tail_showing() - + /mob/living/carbon/human/verb/hide_wings_vr() set name = "Show/Hide wings" set category = "IC" @@ -260,4 +260,3 @@ else message = "hides their wings." visible_message("[src] [message]") - diff --git a/code/modules/mob/living/carbon/human/human_powers_vr.dm b/code/modules/mob/living/carbon/human/human_powers_vr.dm index 1d1954ac33..d21fbfeb05 100644 --- a/code/modules/mob/living/carbon/human/human_powers_vr.dm +++ b/code/modules/mob/living/carbon/human/human_powers_vr.dm @@ -13,4 +13,25 @@ to_chat(src, "Reagents purged!") return TRUE - + +/mob/living/carbon/human/verb/toggle_eyes_layer() + set name = "Switch Eyes/Monitor Layer" + set desc = "Toggle rendering of eyes/monitor above markings." + set category = "IC" + + if(stat) + to_chat(src, "You must be awake and standing to perform this action!") + return + var/obj/item/organ/external/head/vr/H = organs_by_name[BP_HEAD] + if(!H) + to_chat(src, "You don't seem to have a head!") + return + + H.eyes_over_markings = !H.eyes_over_markings + update_icons_body() + + var/datum/robolimb/robohead = all_robolimbs[H.model] + if(robohead.monitor_styles && robohead.monitor_icon) + to_chat(src, "You reconfigure the rendering order of your facial display.") + + return TRUE diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index 1fda536c93..86e71c4fc2 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -61,6 +61,8 @@ var/global/list/limb_icon_cache = list() if(!iscarbon(owner) || !owner.species) return + var/icon/eyecon //VOREStation Edit -- holds eye icon to render over markings later. + //Eye color/icon var/should_have_eyes = owner.should_have_organ(O_EYES) var/has_eye_color = owner.species.appearance_flags & HAS_EYE_COLOR @@ -79,8 +81,14 @@ var/global/list/limb_icon_cache = list() //We have weird other-sorts of eyes (as we're not supposed to have eye organ, but we have HAS_EYE_COLOR species) else eyes_icon.Blend(rgb(owner.r_eyes, owner.g_eyes, owner.b_eyes), ICON_ADD) - add_overlay(eyes_icon) - mob_icon.Blend(eyes_icon, ICON_OVERLAY) + + //VOREStation edit -- allow rendering of eyes over markings. + if(eyes_over_markings) + eyecon = eyes_icon + else + add_overlay(eyes_icon) + mob_icon.Blend(eyes_icon, ICON_OVERLAY) + icon_cache_key += "[eye_icon]" //Lip color/icon if(owner.lip_style && (species && (species.appearance_flags & HAS_LIPS))) @@ -97,6 +105,11 @@ var/global/list/limb_icon_cache = list() mob_icon.Blend(mark_s, ICON_OVERLAY) //So when it's on your body, it has icons icon_cache_key += "[M][markings[M]["color"]]" + if(eyes_over_markings && eyecon) //VOREStation edit -- toggle to render eyes above markings. + add_overlay(eyecon) + mob_icon.Blend(eyecon, ICON_OVERLAY) + icon_cache_key += "[eye_icon]" + add_overlay(get_hair_icon()) return mob_icon diff --git a/code/modules/organs/robolimbs_vr.dm b/code/modules/organs/robolimbs_vr.dm index 219950c7fa..2ed4d60fcd 100644 --- a/code/modules/organs/robolimbs_vr.dm +++ b/code/modules/organs/robolimbs_vr.dm @@ -6,6 +6,7 @@ //CitRP Port var/const/cyberbeast_monitor_styles = "blank=cyber_blank;\ default=cyber_default;\ + eyes=eyes;\ static=cyber_static;\ alert=cyber_alert;\ happy=cyber_happ;\ @@ -64,7 +65,6 @@ var/const/cyberbeast_monitor_styles = "blank=cyber_blank;\ icon = 'icons/obj/items_vr.dmi' icon_state = "verkdisk" - // tucker0666 : Frost /datum/robolimb/zenghu_frost company = "Zeng-Hu (Custom)" diff --git a/code/modules/organs/subtypes/standard.dm b/code/modules/organs/subtypes/standard.dm index 1ebd92106c..1c4fb5ee27 100644 --- a/code/modules/organs/subtypes/standard.dm +++ b/code/modules/organs/subtypes/standard.dm @@ -269,6 +269,7 @@ var/eye_icon = "eyes_s" force = 3 throwforce = 7 + var/eyes_over_markings = FALSE //VOREStation edit var/eye_icon_location = 'icons/mob/human_face.dmi' diff --git a/code/modules/vore/appearance/sprite_accessories_vr.dm b/code/modules/vore/appearance/sprite_accessories_vr.dm index b2ffb19e82..d301244d80 100644 --- a/code/modules/vore/appearance/sprite_accessories_vr.dm +++ b/code/modules/vore/appearance/sprite_accessories_vr.dm @@ -1998,7 +1998,7 @@ do_colouration = 1 color_blend_mode = ICON_MULTIPLY -/datum/sprite_accessory/tail/xenotail_fullcolour +/datum/sprite_accessory/tail/xenotailalt_fullcolour name = "xenomorph tail alt. (fully colourable)" desc = "" icon_state = "xenotailalt_fullcolour" diff --git a/icons/mob/monitor_icons_vr.dmi b/icons/mob/monitor_icons_vr.dmi index 9e48c64a4a..7b291cbcff 100644 Binary files a/icons/mob/monitor_icons_vr.dmi and b/icons/mob/monitor_icons_vr.dmi differ