diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index 76ec29ff8a1..92cc16a129c 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -292,17 +292,26 @@ /datum/species/unathi spawn_flags = SPECIES_CAN_JOIN //Species_can_join is the only spawn flag all the races get, so that none of them will be whitelist only if whitelist is enabled. + icobase = 'icons/mob/human_races/r_lizard_vr.dmi' + deform = 'icons/mob/human_races/r_def_lizard_vr.dmi' + tail_animation = 'icons/mob/species/unathi/tail_vr.dmi' + color_mult = 1 min_age = 18 /datum/species/tajaran spawn_flags = SPECIES_CAN_JOIN icobase = 'icons/mob/human_races/r_tajaran_vr.dmi' deform = 'icons/mob/human_races/r_def_tajaran_vr.dmi' + tail_animation = 'icons/mob/species/tajaran/tail_vr.dmi' + color_mult = 1 min_age = 18 gluttonous = 0 //Moving this here so I don't have to fix this conflict every time polaris glances at station.dm /datum/species/skrell spawn_flags = SPECIES_CAN_JOIN + icobase = 'icons/mob/human_races/r_skrell_vr.dmi' + deform = 'icons/mob/human_races/r_def_skrell_vr.dmi' + color_mult = 1 min_age = 18 /datum/species/diona @@ -312,6 +321,9 @@ /datum/species/teshari mob_size = MOB_MEDIUM spawn_flags = SPECIES_CAN_JOIN + icobase = 'icons/mob/human_races/r_seromi_vr.dmi' + deform = 'icons/mob/human_races/r_seromi_vr.dmi' + color_mult = 1 min_age = 18 push_flags = ~HEAVY //Allows them to use micro step code. swap_flags = ~HEAVY diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 50606d417f7..6c38376ec2c 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -378,7 +378,7 @@ var/global/list/damage_icon_parts = list() if(facial_hair_style && facial_hair_style.species_allowed && (src.species.get_bodytype(src) in facial_hair_style.species_allowed)) var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s") if(facial_hair_style.do_colouration) - facial_s.Blend(rgb(r_facial, g_facial, b_facial), ICON_ADD) + facial_s.Blend(rgb(r_facial, g_facial, b_facial), ICON_MULTIPLY) //VOREStation edit face_standing.Blend(facial_s, ICON_OVERLAY) @@ -387,7 +387,7 @@ var/global/list/damage_icon_parts = list() if(hair_style && (src.species.get_bodytype(src) in hair_style.species_allowed)) var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s") if(hair_style.do_colouration) - hair_s.Blend(rgb(r_hair, g_hair, b_hair), ICON_ADD) + hair_s.Blend(rgb(r_hair, g_hair, b_hair), ICON_MULTIPLY) //VOREStation edit face_standing.Blend(hair_s, ICON_OVERLAY) @@ -1077,7 +1077,7 @@ var/global/list/damage_icon_parts = list() var/use_species_tail = species.get_tail_hair(src) if(use_species_tail) var/icon/hair_icon = icon('icons/effects/species.dmi', "[species.get_tail(src)]_[use_species_tail]") - hair_icon.Blend(rgb(r_hair, g_hair, b_hair), ICON_ADD) + hair_icon.Blend(rgb(r_hair, g_hair, b_hair), ICON_MULTIPLY) //VOREStation Edit tail_icon.Blend(hair_icon, ICON_OVERLAY) tail_icon_cache[icon_key] = tail_icon diff --git a/code/modules/mob/new_player/sprite_accessories_vr.dm b/code/modules/mob/new_player/sprite_accessories_vr.dm index ca181258452..604b0b729db 100644 --- a/code/modules/mob/new_player/sprite_accessories_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_vr.dm @@ -6,6 +6,8 @@ /datum/sprite_accessory/hair + icon = 'icons/mob/Human_face_or_vr.dmi' + var/color_blend_mode = ICON_MULTIPLY species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala") //This lets all races use the default hairstyles. citheronia @@ -213,98 +215,98 @@ name = "Kajam" icon = 'icons/mob/human_face_vr.dmi' icon_state = "kajam" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_keid name = "Keid" icon = 'icons/mob/human_face_vr.dmi' icon_state = "keid" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_adhara name = "Adhara" icon = 'icons/mob/human_face_vr.dmi' icon_state = "adhara" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_kleeia name = "Kleeia" icon = 'icons/mob/human_face_vr.dmi' icon_state = "kleeia" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_mizar name = "Mizar" icon = 'icons/mob/human_face_vr.dmi' icon_state = "mizar" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_apollo name = "Apollo" icon = 'icons/mob/human_face_vr.dmi' icon_state = "apollo" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_belle name = "Belle" icon = 'icons/mob/human_face_vr.dmi' icon_state = "belle" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_bun name = "Bun" icon = 'icons/mob/human_face_vr.dmi' icon_state = "bun" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_jagged name = "Jagged" icon = 'icons/mob/human_face_vr.dmi' icon_state = "jagged" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_curl name = "Curl" icon = 'icons/mob/human_face_vr.dmi' icon_state = "curl" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_hawk name = "Hawk" icon = 'icons/mob/human_face_vr.dmi' icon_state = "hawk" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_anita name = "Anita" icon = 'icons/mob/human_face_vr.dmi' icon_state = "anita" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_short name = "Short" icon = 'icons/mob/human_face_vr.dmi' icon_state = "short" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER vulp_hair_spike name = "Spike" icon = 'icons/mob/human_face_vr.dmi' icon_state = "spike" - species_allowed = list("Vulpkanin", "Xenochimera") + species_allowed = list("Vulpkanin", "Xenochimera", "Tajara", "Sergal", "Flatland Zorren", "Highlander Zorren") gender = NEUTER //xeno stuffs @@ -344,6 +346,8 @@ gender = NEUTER /datum/sprite_accessory/facial_hair + icon = 'icons/mob/Human_face_or_vr.dmi' + var/color_blend_mode = ICON_MULTIPLY species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala") //This lets all races use the facial hair styles. @@ -410,12 +414,6 @@ species_allowed = list("Vulpkanin") gender = NEUTER - vulpkanin - name = "Default Vulpkanin skin" - icon_state = "default" - icon = 'icons/mob/human_races/r_vulpkanin.dmi' - species_allowed = list("Vulpkanin") - //Special hairstyles /datum/sprite_accessory/ears/inkling name = "colorable mature inkling hair" diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index 02916c7d7df..a66811ee260 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -83,7 +83,7 @@ var/global/list/limb_icon_cache = list() if(facial_hair_style && facial_hair_style.species_allowed && (species.get_bodytype(owner) in facial_hair_style.species_allowed)) var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s") if(facial_hair_style.do_colouration) - facial_s.Blend(rgb(owner.r_facial, owner.g_facial, owner.b_facial), ICON_ADD) + facial_s.Blend(rgb(owner.r_facial, owner.g_facial, owner.b_facial), ICON_MULTIPLY) // VOREStation edit overlays |= facial_s if(owner.h_style && !(owner.head && (owner.head.flags_inv & BLOCKHEADHAIR))) @@ -91,7 +91,7 @@ var/global/list/limb_icon_cache = list() if(hair_style && (species.get_bodytype(owner) in hair_style.species_allowed)) var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s") if(hair_style.do_colouration && islist(h_col) && h_col.len >= 3) - hair_s.Blend(rgb(h_col[1], h_col[2], h_col[3]), ICON_ADD) + hair_s.Blend(rgb(h_col[1], h_col[2], h_col[3]), ICON_MULTIPLY) // VOREStation edit overlays |= hair_s return mob_icon @@ -141,7 +141,7 @@ var/global/list/limb_icon_cache = list() var/cache_key = "[body_hair]-[icon_name]-[h_col[1]][h_col[2]][h_col[3]]" if(!limb_icon_cache[cache_key]) var/icon/I = icon(species.get_icobase(owner), "[icon_name]_[body_hair]") - I.Blend(rgb(h_col[1],h_col[2],h_col[3]), ICON_ADD) + I.Blend(rgb(h_col[1],h_col[2],h_col[3]), ICON_MULTIPLY) //VOREStation edit limb_icon_cache[cache_key] = I mob_icon.Blend(limb_icon_cache[cache_key], ICON_OVERLAY) @@ -161,7 +161,7 @@ var/global/list/limb_icon_cache = list() var/cache_key = "[body_hair]-[icon_name]-[h_col[1]][h_col[2]][h_col[3]]" if(!limb_icon_cache[cache_key]) var/icon/I = icon(species.get_icobase(owner), "[icon_name]_[body_hair]") - I.Blend(rgb(h_col[1],h_col[2],h_col[3]), ICON_ADD) + I.Blend(rgb(h_col[1],h_col[2],h_col[3]), ICON_MULTIPLY) //VOREStation edit limb_icon_cache[cache_key] = I mob_icon.Blend(limb_icon_cache[cache_key], ICON_OVERLAY) // VOREStation edit ends here @@ -175,7 +175,7 @@ var/global/list/limb_icon_cache = list() if(nonsolid) applying.MapColors("#4D4D4D","#969696","#1C1C1C", "#000000") if(species && species.get_bodytype(owner) != "Human") - applying.SetIntensity(1.5) // Unathi, Taj and Skrell have -very- dark base icons. + applying.SetIntensity(1) // Unathi, Taj and Skrell have -very- dark base icons. VOREStation edit fixes this and brings the number back to 1 else applying.SetIntensity(1) //VOREStation edit to make Prometheans not look like shit with mob coloring. diff --git a/code/modules/organs/subtypes/standard_vr.dm b/code/modules/organs/subtypes/standard_vr.dm index a0573fed0ce..57e205466bd 100644 --- a/code/modules/organs/subtypes/standard_vr.dm +++ b/code/modules/organs/subtypes/standard_vr.dm @@ -44,7 +44,7 @@ if(hair_style && (species.get_bodytype(owner) in hair_style.species_allowed)) var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s") if(hair_style.do_colouration && islist(h_col) && h_col.len >= 3) - hair_s.Blend(rgb(h_col[1], h_col[2], h_col[3]), ICON_ADD) + hair_s.Blend(rgb(h_col[1], h_col[2], h_col[3]), ICON_MULTIPLY) overlays |= hair_s return mob_icon diff --git a/icons/effects/species.dmi b/icons/effects/species.dmi index fbd952d3333..6f1b8d21885 100644 Binary files a/icons/effects/species.dmi and b/icons/effects/species.dmi differ diff --git a/icons/effects/species_tails_vr.dmi b/icons/effects/species_tails_vr.dmi index 9e863c3a13b..4cb25cb8ce4 100644 Binary files a/icons/effects/species_tails_vr.dmi and b/icons/effects/species_tails_vr.dmi differ diff --git a/icons/mob/human_face_or_vr.dmi b/icons/mob/human_face_or_vr.dmi new file mode 100644 index 00000000000..50570ab385a Binary files /dev/null and b/icons/mob/human_face_or_vr.dmi differ diff --git a/icons/mob/human_face_vr.dmi b/icons/mob/human_face_vr.dmi index b9d9c8597b0..f23530433d9 100644 Binary files a/icons/mob/human_face_vr.dmi and b/icons/mob/human_face_vr.dmi differ diff --git a/icons/mob/human_races/cyberlimbs/DSISergal/dsi_sergal.dmi b/icons/mob/human_races/cyberlimbs/DSISergal/dsi_sergal.dmi index 706f53c3ee0..40691ecdfcf 100644 Binary files a/icons/mob/human_races/cyberlimbs/DSISergal/dsi_sergal.dmi and b/icons/mob/human_races/cyberlimbs/DSISergal/dsi_sergal.dmi differ diff --git a/icons/mob/human_races/r_def_lizard_vr.dmi b/icons/mob/human_races/r_def_lizard_vr.dmi new file mode 100644 index 00000000000..3ebace3090f Binary files /dev/null and b/icons/mob/human_races/r_def_lizard_vr.dmi differ diff --git a/icons/mob/human_races/r_def_skrell_vr.dmi b/icons/mob/human_races/r_def_skrell_vr.dmi new file mode 100644 index 00000000000..3e6a40f3aeb Binary files /dev/null and b/icons/mob/human_races/r_def_skrell_vr.dmi differ diff --git a/icons/mob/human_races/r_def_tajaran_vr.dmi b/icons/mob/human_races/r_def_tajaran_vr.dmi index d14f0619a29..64b1a2d30d1 100644 Binary files a/icons/mob/human_races/r_def_tajaran_vr.dmi and b/icons/mob/human_races/r_def_tajaran_vr.dmi differ diff --git a/icons/mob/human_races/r_lizard_vr.dmi b/icons/mob/human_races/r_lizard_vr.dmi new file mode 100644 index 00000000000..e3e78badf29 Binary files /dev/null and b/icons/mob/human_races/r_lizard_vr.dmi differ diff --git a/icons/mob/human_races/r_seromi_vr.dmi b/icons/mob/human_races/r_seromi_vr.dmi new file mode 100644 index 00000000000..dd32a47bec9 Binary files /dev/null and b/icons/mob/human_races/r_seromi_vr.dmi differ diff --git a/icons/mob/human_races/r_skrell_vr.dmi b/icons/mob/human_races/r_skrell_vr.dmi new file mode 100644 index 00000000000..ef6688b026a Binary files /dev/null and b/icons/mob/human_races/r_skrell_vr.dmi differ diff --git a/icons/mob/human_races/r_tajaran_vr.dmi b/icons/mob/human_races/r_tajaran_vr.dmi index 6eb7693134d..724350146f5 100644 Binary files a/icons/mob/human_races/r_tajaran_vr.dmi and b/icons/mob/human_races/r_tajaran_vr.dmi differ diff --git a/icons/mob/species/tajaran/tail_vr.dmi b/icons/mob/species/tajaran/tail_vr.dmi new file mode 100644 index 00000000000..260a0b9d9ed Binary files /dev/null and b/icons/mob/species/tajaran/tail_vr.dmi differ diff --git a/icons/mob/species/unathi/tail_vr.dmi b/icons/mob/species/unathi/tail_vr.dmi new file mode 100644 index 00000000000..33dec92c309 Binary files /dev/null and b/icons/mob/species/unathi/tail_vr.dmi differ