From f381f58c0e102e35b85964536abb0834730b7d3d Mon Sep 17 00:00:00 2001
From: SkyratBot <59378654+SkyratBot@users.noreply.github.com>
Date: Sat, 5 Aug 2023 17:45:27 +0200
Subject: [PATCH] [MIRROR] reorganizes the human sprite folder and replaces the
human_basic sprite with an updated one [MDB IGNORE] (#22887)
* reorganizes the human sprite folder and replaces the human_basic sprite with an updated one
* Update species_clothing_paths.dm
* Update moth_bodyparts.dm
* Update _eyes.dm
* Modular updates
---------
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
---
code/__DEFINES/mobs.dm | 2 +-
.../emote_bodypart_overlay.dm | 2 +-
.../simple_bodypart_overlay.dm | 2 +-
code/datums/sprite_accessories.dm | 42 +++++++-------
.../effects/decals/cleanable/humans.dm | 6 +-
.../stacks/golem_food/golem_status_effects.dm | 2 +-
code/game/objects/structures/mannequin.dm | 2 +-
code/modules/client/preferences/clothing.dm | 16 +++---
.../preferences/species_features/basic.dm | 2 +-
.../preferences/species_features/ethereal.dm | 10 ++--
.../preferences/species_features/lizard.dm | 10 ++--
.../preferences/species_features/moth.dm | 14 ++---
.../preferences/species_features/pod.dm | 2 +-
code/modules/clothing/head/wig.dm | 2 +-
.../restaurant/customers/_customer.dm | 4 +-
code/modules/hallucination/body.dm | 2 +-
code/modules/hallucination/delusions.dm | 6 +-
code/modules/hallucination/shock.dm | 2 +-
code/modules/holodeck/mobs.dm | 2 +-
.../mob/living/basic/space_fauna/ghost.dm | 4 +-
code/modules/mob/living/carbon/human/emote.dm | 2 +-
.../mob/living/carbon/human/human_defines.dm | 2 +-
code/modules/mob/living/emote.dm | 2 +-
.../crossbreeding/_status_effects.dm | 2 +-
code/modules/surgery/bodyparts/_bodyparts.dm | 8 +--
code/modules/surgery/bodyparts/head.dm | 22 +++----
.../surgery/bodyparts/head_hair_and_lips.dm | 12 ++--
code/modules/surgery/bodyparts/parts.dm | 54 +++++++++---------
.../species_parts/ethereal_bodyparts.dm | 12 ++--
.../species_parts/lizard_bodyparts.dm | 16 +++---
.../bodyparts/species_parts/misc_bodyparts.dm | 24 ++++----
.../bodyparts/species_parts/moth_bodyparts.dm | 26 ++++-----
.../species_parts/plasmaman_bodyparts.dm | 24 ++++----
.../surgery/organs/internal/eyes/_eyes.dm | 12 ++--
icons/mob/{species => }/human/bodyparts.dmi | Bin
.../human/bodyparts_greyscale.dmi | Bin
.../mob/{species => }/human/cat_features.dmi | Bin
.../mob/{species => }/human/emote_visuals.dmi | Bin
.../mob/{species => }/human/fox_features.dmi | Bin
icons/mob/human/human.dmi | Bin 0 -> 19246 bytes
icons/mob/{species => }/human/human_face.dmi | Bin
icons/mob/{species => }/human/mannequin.dmi | Bin
.../{ => human}/species/alien/bodyparts.dmi | Bin
.../species/ethereal/bodyparts.dmi | Bin
icons/mob/{ => human}/species/golems.dmi | Bin
.../{ => human}/species/hair_gradients.dmi | Bin
.../{ => human}/species/lizard/bodyparts.dmi | Bin
.../species/lizard/lizard_misc.dmi | Bin
.../species/lizard/lizard_spines.dmi | Bin
.../species/lizard/lizard_tails.dmi | Bin
.../species/misc/bodypart_overlay_simple.dmi | Bin
.../{ => human}/species/misc/digitigrade.dmi | Bin
.../{ => human}/species/monkey/bodyparts.dmi | Bin
.../species/monkey/monkey_tail.dmi | Bin
.../{ => human}/species/monkey/uniform.dmi | Bin
.../{ => human}/species/moth/bodyparts.dmi | Bin
.../species/moth/moth_antennae.dmi | Bin
.../species/moth/moth_markings.dmi | Bin
.../{ => human}/species/moth/moth_wings.dmi | Bin
icons/mob/{ => human}/species/mush_cap.dmi | Bin
.../species/plasmaman/bodyparts.dmi | Bin
.../{ => human}/species/podperson_hair.dmi | Bin
icons/mob/{ => human}/species/wings.dmi | Bin
icons/mob/species/human/human.dmi | Bin 18225 -> 0 bytes
.../client/preferences/mutant_parts.dm | 2 +-
.../species_features/generate_side_shots.dm | 2 +-
.../new_player/sprite_accessories/tails.dm | 2 +-
.../new_player/sprite_accessories/wings.dm | 2 +-
68 files changed, 179 insertions(+), 181 deletions(-)
rename icons/mob/{species => }/human/bodyparts.dmi (100%)
rename icons/mob/{species => }/human/bodyparts_greyscale.dmi (100%)
rename icons/mob/{species => }/human/cat_features.dmi (100%)
rename icons/mob/{species => }/human/emote_visuals.dmi (100%)
rename icons/mob/{species => }/human/fox_features.dmi (100%)
create mode 100644 icons/mob/human/human.dmi
rename icons/mob/{species => }/human/human_face.dmi (100%)
rename icons/mob/{species => }/human/mannequin.dmi (100%)
rename icons/mob/{ => human}/species/alien/bodyparts.dmi (100%)
rename icons/mob/{ => human}/species/ethereal/bodyparts.dmi (100%)
rename icons/mob/{ => human}/species/golems.dmi (100%)
rename icons/mob/{ => human}/species/hair_gradients.dmi (100%)
rename icons/mob/{ => human}/species/lizard/bodyparts.dmi (100%)
rename icons/mob/{ => human}/species/lizard/lizard_misc.dmi (100%)
rename icons/mob/{ => human}/species/lizard/lizard_spines.dmi (100%)
rename icons/mob/{ => human}/species/lizard/lizard_tails.dmi (100%)
rename icons/mob/{ => human}/species/misc/bodypart_overlay_simple.dmi (100%)
rename icons/mob/{ => human}/species/misc/digitigrade.dmi (100%)
rename icons/mob/{ => human}/species/monkey/bodyparts.dmi (100%)
rename icons/mob/{ => human}/species/monkey/monkey_tail.dmi (100%)
rename icons/mob/{ => human}/species/monkey/uniform.dmi (100%)
rename icons/mob/{ => human}/species/moth/bodyparts.dmi (100%)
rename icons/mob/{ => human}/species/moth/moth_antennae.dmi (100%)
rename icons/mob/{ => human}/species/moth/moth_markings.dmi (100%)
rename icons/mob/{ => human}/species/moth/moth_wings.dmi (100%)
rename icons/mob/{ => human}/species/mush_cap.dmi (100%)
rename icons/mob/{ => human}/species/plasmaman/bodyparts.dmi (100%)
rename icons/mob/{ => human}/species/podperson_hair.dmi (100%)
rename icons/mob/{ => human}/species/wings.dmi (100%)
delete mode 100644 icons/mob/species/human/human.dmi
diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm
index 21bdd8d8075..c4aae6e3200 100644
--- a/code/__DEFINES/mobs.dm
+++ b/code/__DEFINES/mobs.dm
@@ -58,7 +58,7 @@
#define RESPIRATION_OXYGEN (1 << 0)
#define RESPIRATION_N2 (1 << 1)
#define RESPIRATION_PLASMA (1 << 2)
-#define DEFAULT_BODYPART_ICON_ORGANIC 'icons/mob/species/human/bodyparts_greyscale.dmi'
+#define DEFAULT_BODYPART_ICON_ORGANIC 'icons/mob/human/bodyparts_greyscale.dmi'
#define DEFAULT_BODYPART_ICON_ROBOTIC 'icons/mob/augmentation/augments.dmi'
#define MONKEY_BODYPART "monkey"
diff --git a/code/datums/bodypart_overlays/emote_bodypart_overlay.dm b/code/datums/bodypart_overlays/emote_bodypart_overlay.dm
index 4143efb67db..524dd176056 100644
--- a/code/datums/bodypart_overlays/emote_bodypart_overlay.dm
+++ b/code/datums/bodypart_overlays/emote_bodypart_overlay.dm
@@ -1,6 +1,6 @@
///Variant of bodypart_overlay for displaying emote overlays. See [/datum/emote/living/blush/run_emote] for an example on how to use one of these.
/datum/bodypart_overlay/simple/emote
- icon = 'icons/mob/species/human/emote_visuals.dmi'
+ icon = 'icons/mob/human/emote_visuals.dmi'
///The body zone to attach the overlay to, overlay won't be added if no bodypart can be found with this
var/attached_body_zone = BODY_ZONE_CHEST
///The feature key used to figure out what specific bodily feature we offset this to follow
diff --git a/code/datums/bodypart_overlays/simple_bodypart_overlay.dm b/code/datums/bodypart_overlays/simple_bodypart_overlay.dm
index 00df41a89e3..72fef44b2d4 100644
--- a/code/datums/bodypart_overlays/simple_bodypart_overlay.dm
+++ b/code/datums/bodypart_overlays/simple_bodypart_overlay.dm
@@ -4,7 +4,7 @@
///Icon state of the overlay
var/icon_state
///Icon of the overlay
- var/icon = 'icons/mob/species/misc/bodypart_overlay_simple.dmi'
+ var/icon = 'icons/mob/human/species/misc/bodypart_overlay_simple.dmi'
///Color we apply to our overlay (none by default)
var/draw_color
diff --git a/code/datums/sprite_accessories.dm b/code/datums/sprite_accessories.dm
index 31ad5684de8..b6efb687014 100644
--- a/code/datums/sprite_accessories.dm
+++ b/code/datums/sprite_accessories.dm
@@ -84,7 +84,7 @@
// Hair Definitions //
//////////////////////
/datum/sprite_accessory/hair
- icon = 'icons/mob/species/human/human_face.dmi' // default icon for all hairs
+ icon = 'icons/mob/human/human_face.dmi' // default icon for all hairs
// please make sure they're sorted alphabetically and, where needed, categorized
// try to capitalize the names please~
@@ -832,7 +832,7 @@
*/
/datum/sprite_accessory/gradient
- icon = 'icons/mob/species/hair_gradients.dmi'
+ icon = 'icons/mob/human/species/hair_gradients.dmi'
///whether this gradient applies to hair and/or beards. Some gradients do not work well on beards.
var/gradient_category = GRADIENT_APPLIES_TO_HAIR|GRADIENT_APPLIES_TO_FACIAL_HAIR
@@ -923,7 +923,7 @@
/////////////////////////////
/datum/sprite_accessory/facial_hair
- icon = 'icons/mob/species/human/human_face.dmi'
+ icon = 'icons/mob/human/human_face.dmi'
gender = MALE // barf (unless you're a dorf, dorfs dig chix w/ beards :P)
em_block = TRUE
@@ -1720,7 +1720,7 @@
/////////////////////////////
/datum/sprite_accessory/body_markings
- icon = 'icons/mob/species/lizard/lizard_misc.dmi'
+ icon = 'icons/mob/human/species/lizard/lizard_misc.dmi'
/datum/sprite_accessory/body_markings/none
name = "None"
@@ -1745,7 +1745,7 @@
em_block = TRUE
/datum/sprite_accessory/tails/lizard
- icon = 'icons/mob/species/lizard/lizard_tails.dmi'
+ icon = 'icons/mob/human/species/lizard/lizard_tails.dmi'
/datum/sprite_accessory/tails/lizard/smooth
name = "Smooth"
@@ -1765,18 +1765,18 @@
/datum/sprite_accessory/tails/human/cat
name = "Cat"
- icon = 'icons/mob/species/human/cat_features.dmi'
+ icon = 'icons/mob/human/cat_features.dmi'
icon_state = "default"
color_src = HAIR_COLOR
/datum/sprite_accessory/tails/monkey
name = "Monkey"
- icon = 'icons/mob/species/monkey/monkey_tail.dmi'
+ icon = 'icons/mob/human/species/monkey/monkey_tail.dmi'
icon_state = "monkey"
color_src = FALSE
/datum/sprite_accessory/pod_hair
- icon = 'icons/mob/species/podperson_hair.dmi'
+ icon = 'icons/mob/human/species/podperson_hair.dmi'
em_block = TRUE
/datum/sprite_accessory/pod_hair/ivy
@@ -1820,7 +1820,7 @@
icon_state = "hibiscus"
/datum/sprite_accessory/snouts
- icon = 'icons/mob/species/lizard/lizard_misc.dmi'
+ icon = 'icons/mob/human/species/lizard/lizard_misc.dmi'
em_block = TRUE
/datum/sprite_accessory/snouts/sharp
@@ -1840,7 +1840,7 @@
icon_state = "roundlight"
/datum/sprite_accessory/horns
- icon = 'icons/mob/species/lizard/lizard_misc.dmi'
+ icon = 'icons/mob/human/species/lizard/lizard_misc.dmi'
em_block = TRUE
/datum/sprite_accessory/horns/none
@@ -1880,7 +1880,7 @@
icon_state = "lbroken"
/datum/sprite_accessory/ears
- icon = 'icons/mob/species/human/cat_features.dmi'
+ icon = 'icons/mob/human/cat_features.dmi'
em_block = TRUE
/datum/sprite_accessory/ears/none
@@ -1894,7 +1894,7 @@
color_src = HAIR_COLOR
/datum/sprite_accessory/ears/fox
- icon = 'icons/mob/species/human/fox_features.dmi'
+ icon = 'icons/mob/human/fox_features.dmi'
name = "Fox"
icon_state = "fox"
hasinner = TRUE
@@ -1906,11 +1906,11 @@
icon_state = "none"
/datum/sprite_accessory/wings
- icon = 'icons/mob/species/wings.dmi'
+ icon = 'icons/mob/human/species/wings.dmi'
em_block = TRUE
/datum/sprite_accessory/wings_open
- icon = 'icons/mob/species/wings.dmi'
+ icon = 'icons/mob/human/species/wings.dmi'
em_block = TRUE
/datum/sprite_accessory/wings/angel
@@ -2031,7 +2031,7 @@
dimension_y = 32
/datum/sprite_accessory/frills
- icon = 'icons/mob/species/lizard/lizard_misc.dmi'
+ icon = 'icons/mob/human/species/lizard/lizard_misc.dmi'
/datum/sprite_accessory/frills/none
name = "None"
@@ -2050,11 +2050,11 @@
icon_state = "aqua"
/datum/sprite_accessory/spines
- icon = 'icons/mob/species/lizard/lizard_spines.dmi'
+ icon = 'icons/mob/human/species/lizard/lizard_spines.dmi'
em_block = TRUE
/datum/sprite_accessory/spines_animated
- icon = 'icons/mob/species/lizard/lizard_spines.dmi'
+ icon = 'icons/mob/human/species/lizard/lizard_spines.dmi'
em_block = TRUE
/datum/sprite_accessory/spines/none
@@ -2116,7 +2116,7 @@
name = DIGITIGRADE_LEGS
/datum/sprite_accessory/caps
- icon = 'icons/mob/species/mush_cap.dmi'
+ icon = 'icons/mob/human/species/mush_cap.dmi'
color_src = HAIR_COLOR
em_block = TRUE
@@ -2132,7 +2132,7 @@
/datum/sprite_accessory/moth_wings
- icon = 'icons/mob/species/moth/moth_wings.dmi'
+ icon = 'icons/mob/human/species/moth/moth_wings.dmi'
color_src = null
em_block = TRUE
@@ -2234,7 +2234,7 @@
icon_state = "moffra"
/datum/sprite_accessory/moth_antennae //Finally splitting the sprite
- icon = 'icons/mob/species/moth/moth_antennae.dmi'
+ icon = 'icons/mob/human/species/moth/moth_antennae.dmi'
color_src = null
/datum/sprite_accessory/moth_antennae/plain
@@ -2321,7 +2321,7 @@
icon_state = "moffra"
/datum/sprite_accessory/moth_markings // the markings that moths can have. finally something other than the boring tan
- icon = 'icons/mob/species/moth/moth_markings.dmi'
+ icon = 'icons/mob/human/species/moth/moth_markings.dmi'
color_src = null
/datum/sprite_accessory/moth_markings/none
diff --git a/code/game/objects/effects/decals/cleanable/humans.dm b/code/game/objects/effects/decals/cleanable/humans.dm
index df989cdb1bc..fc07a229251 100644
--- a/code/game/objects/effects/decals/cleanable/humans.dm
+++ b/code/game/objects/effects/decals/cleanable/humans.dm
@@ -314,11 +314,11 @@ GLOBAL_LIST_EMPTY(bloody_footprints_cache)
if(species == "unknown")
. += "Some feet."
else if(species == SPECIES_MONKEY)
- . += "[icon2html('icons/mob/species/human/human.dmi', user, "monkey")] Some monkey feet."
+ . += "[icon2html('icons/mob/human/human.dmi', user, "monkey")] Some monkey feet."
else if(species == SPECIES_HUMAN)
- . += "[icon2html('icons/mob/species/human/bodyparts.dmi', user, "default_human_l_leg")] Some human feet."
+ . += "[icon2html('icons/mob/human/bodyparts.dmi', user, "default_human_l_leg")] Some human feet."
else
- . += "[icon2html('icons/mob/species/human/bodyparts.dmi', user, "[species]_l_leg")] Some [species] feet."
+ . += "[icon2html('icons/mob/human/bodyparts.dmi', user, "[species]_l_leg")] Some [species] feet."
/obj/effect/decal/cleanable/blood/footprints/replace_decal(obj/effect/decal/cleanable/C)
if(blood_state != C.blood_state) //We only replace footprints of the same type as us
diff --git a/code/game/objects/items/stacks/golem_food/golem_status_effects.dm b/code/game/objects/items/stacks/golem_food/golem_status_effects.dm
index 54d6f1c39cb..5ed7fcd4682 100644
--- a/code/game/objects/items/stacks/golem_food/golem_status_effects.dm
+++ b/code/game/objects/items/stacks/golem_food/golem_status_effects.dm
@@ -99,7 +99,7 @@
/// Body part overlays applied by golem status effects
/datum/bodypart_overlay/simple/golem_overlay
- icon = 'icons/mob/species/golems.dmi'
+ icon = 'icons/mob/human/species/golems.dmi'
layers = ALL_EXTERNAL_OVERLAYS
///The bodypart that the overlay is currently applied to
var/datum/weakref/attached_bodypart
diff --git a/code/game/objects/structures/mannequin.dm b/code/game/objects/structures/mannequin.dm
index c568c0a1261..ad9588d5aa8 100644
--- a/code/game/objects/structures/mannequin.dm
+++ b/code/game/objects/structures/mannequin.dm
@@ -6,7 +6,7 @@
/obj/structure/mannequin
name = "mannequin"
desc = "Oh, so this is a dress-up game now."
- icon = 'icons/mob/species/human/mannequin.dmi'
+ icon = 'icons/mob/human/mannequin.dmi'
icon_state = "mannequin_wood_male"
density = TRUE
resistance_flags = FLAMMABLE
diff --git a/code/modules/client/preferences/clothing.dm b/code/modules/client/preferences/clothing.dm
index df71be9a6b1..fae46b31be9 100644
--- a/code/modules/client/preferences/clothing.dm
+++ b/code/modules/client/preferences/clothing.dm
@@ -2,7 +2,7 @@
var/icon/lower_half = icon('icons/blanks/32x32.dmi', "nothing")
for (var/icon in icons)
- lower_half.Blend(icon('icons/mob/species/human/bodyparts_greyscale.dmi', icon), ICON_OVERLAY)
+ lower_half.Blend(icon('icons/mob/human/bodyparts_greyscale.dmi', icon), ICON_OVERLAY)
var/list/values = list()
@@ -95,13 +95,13 @@
should_generate_icons = TRUE
/datum/preference/choiced/undershirt/init_possible_values()
- var/icon/body = icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_r_leg")
- body.Blend(icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_l_leg"), ICON_OVERLAY)
- body.Blend(icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_r_arm"), ICON_OVERLAY)
- body.Blend(icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_l_arm"), ICON_OVERLAY)
- body.Blend(icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_r_hand"), ICON_OVERLAY)
- body.Blend(icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_l_hand"), ICON_OVERLAY)
- body.Blend(icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_chest_m"), ICON_OVERLAY)
+ var/icon/body = icon('icons/mob/human/bodyparts_greyscale.dmi', "human_r_leg")
+ body.Blend(icon('icons/mob/human/bodyparts_greyscale.dmi', "human_l_leg"), ICON_OVERLAY)
+ body.Blend(icon('icons/mob/human/bodyparts_greyscale.dmi', "human_r_arm"), ICON_OVERLAY)
+ body.Blend(icon('icons/mob/human/bodyparts_greyscale.dmi', "human_l_arm"), ICON_OVERLAY)
+ body.Blend(icon('icons/mob/human/bodyparts_greyscale.dmi', "human_r_hand"), ICON_OVERLAY)
+ body.Blend(icon('icons/mob/human/bodyparts_greyscale.dmi', "human_l_hand"), ICON_OVERLAY)
+ body.Blend(icon('icons/mob/human/bodyparts_greyscale.dmi', "human_chest_m"), ICON_OVERLAY)
var/list/values = list()
diff --git a/code/modules/client/preferences/species_features/basic.dm b/code/modules/client/preferences/species_features/basic.dm
index da49610a930..5cf0fc5905f 100644
--- a/code/modules/client/preferences/species_features/basic.dm
+++ b/code/modules/client/preferences/species_features/basic.dm
@@ -1,7 +1,7 @@
/proc/generate_possible_values_for_sprite_accessories_on_head(accessories)
var/list/values = possible_values_for_sprite_accessory_list(accessories)
- var/icon/head_icon = icon('icons/mob/species/human/bodyparts_greyscale.dmi', "human_head_m")
+ var/icon/head_icon = icon('icons/mob/human/bodyparts_greyscale.dmi', "human_head_m")
head_icon.Blend(skintone2hex("caucasian1"), ICON_MULTIPLY)
for (var/name in values)
diff --git a/code/modules/client/preferences/species_features/ethereal.dm b/code/modules/client/preferences/species_features/ethereal.dm
index 56fe5089589..ba0f3d3a202 100644
--- a/code/modules/client/preferences/species_features/ethereal.dm
+++ b/code/modules/client/preferences/species_features/ethereal.dm
@@ -8,12 +8,12 @@
/datum/preference/choiced/ethereal_color/init_possible_values()
var/list/values = list()
- var/icon/ethereal_base = icon('icons/mob/species/ethereal/bodyparts.dmi', "ethereal_head")
- ethereal_base.Blend(icon('icons/mob/species/ethereal/bodyparts.dmi', "ethereal_chest"), ICON_OVERLAY)
- ethereal_base.Blend(icon('icons/mob/species/ethereal/bodyparts.dmi', "ethereal_l_arm"), ICON_OVERLAY)
- ethereal_base.Blend(icon('icons/mob/species/ethereal/bodyparts.dmi', "ethereal_r_arm"), ICON_OVERLAY)
+ var/icon/ethereal_base = icon('icons/mob/human/species/ethereal/bodyparts.dmi', "ethereal_head")
+ ethereal_base.Blend(icon('icons/mob/human/species/ethereal/bodyparts.dmi', "ethereal_chest"), ICON_OVERLAY)
+ ethereal_base.Blend(icon('icons/mob/human/species/ethereal/bodyparts.dmi', "ethereal_l_arm"), ICON_OVERLAY)
+ ethereal_base.Blend(icon('icons/mob/human/species/ethereal/bodyparts.dmi', "ethereal_r_arm"), ICON_OVERLAY)
- var/icon/eyes = icon('icons/mob/species/human/human_face.dmi', "eyes")
+ var/icon/eyes = icon('icons/mob/human/human_face.dmi', "eyes")
eyes.Blend(COLOR_BLACK, ICON_MULTIPLY)
ethereal_base.Blend(eyes, ICON_OVERLAY)
diff --git a/code/modules/client/preferences/species_features/lizard.dm b/code/modules/client/preferences/species_features/lizard.dm
index e49349a5ff3..9c0b6e36519 100644
--- a/code/modules/client/preferences/species_features/lizard.dm
+++ b/code/modules/client/preferences/species_features/lizard.dm
@@ -2,13 +2,13 @@
/proc/generate_lizard_side_shots(list/sprite_accessories, key, include_snout = TRUE)
var/list/values = list()
- var/icon/lizard = icon('icons/mob/species/lizard/bodyparts.dmi', "lizard_head", EAST)
- var/icon/eyes = icon('icons/mob/species/human/human_face.dmi', "eyes", EAST)
+ var/icon/lizard = icon('icons/mob/human/species/lizard/bodyparts.dmi', "lizard_head", EAST)
+ var/icon/eyes = icon('icons/mob/human/human_face.dmi', "eyes", EAST)
eyes.Blend(COLOR_GRAY, ICON_MULTIPLY)
lizard.Blend(eyes, ICON_OVERLAY)
if (include_snout)
- lizard.Blend(icon('icons/mob/species/lizard/lizard_misc.dmi', "m_snout_round_ADJ", EAST), ICON_OVERLAY)
+ lizard.Blend(icon('icons/mob/human/species/lizard/lizard_misc.dmi', "m_snout_round_ADJ", EAST), ICON_OVERLAY)
for (var/name in sprite_accessories)
var/datum/sprite_accessory/sprite_accessory = sprite_accessories[name]
@@ -38,7 +38,7 @@
/datum/preference/choiced/lizard_body_markings/init_possible_values()
var/list/values = list()
- var/icon/lizard = icon('icons/mob/species/lizard/bodyparts.dmi', "lizard_chest_m")
+ var/icon/lizard = icon('icons/mob/human/species/lizard/bodyparts.dmi', "lizard_chest_m")
for (var/name in GLOB.body_markings_list)
var/datum/sprite_accessory/sprite_accessory = GLOB.body_markings_list[name]
@@ -47,7 +47,7 @@
if (sprite_accessory.icon_state != "none")
var/icon/body_markings_icon = icon(
- 'icons/mob/species/lizard/lizard_misc.dmi',
+ 'icons/mob/human/species/lizard/lizard_misc.dmi',
"m_body_markings_[sprite_accessory.icon_state]_ADJ",
)
diff --git a/code/modules/client/preferences/species_features/moth.dm b/code/modules/client/preferences/species_features/moth.dm
index fac52d29bde..ba80ad56b1d 100644
--- a/code/modules/client/preferences/species_features/moth.dm
+++ b/code/modules/client/preferences/species_features/moth.dm
@@ -9,8 +9,8 @@
/datum/preference/choiced/moth_antennae/init_possible_values()
var/list/values = list()
- var/icon/moth_head = icon('icons/mob/species/moth/bodyparts.dmi', "moth_head")
- moth_head.Blend(icon('icons/mob/species/human/human_face.dmi', "motheyes"), ICON_OVERLAY)
+ var/icon/moth_head = icon('icons/mob/human/species/moth/bodyparts.dmi', "moth_head")
+ moth_head.Blend(icon('icons/mob/human/human_face.dmi', "motheyes"), ICON_OVERLAY)
for (var/antennae_name in GLOB.moth_antennae_list)
var/datum/sprite_accessory/antennae = GLOB.moth_antennae_list[antennae_name]
@@ -42,7 +42,7 @@
var/icon/moth_body = icon('icons/blanks/32x32.dmi', "nothing")
- moth_body.Blend(icon('icons/mob/species/moth/moth_wings.dmi', "m_moth_wings_plain_BEHIND"), ICON_OVERLAY)
+ moth_body.Blend(icon('icons/mob/human/species/moth/moth_wings.dmi', "m_moth_wings_plain_BEHIND"), ICON_OVERLAY)
var/list/body_parts = list(
/obj/item/bodypart/head/moth,
@@ -53,9 +53,9 @@
for (var/obj/item/bodypart/body_part in body_parts)
var/gender = (initial(body_part.is_dimorphic)) ? "_m" : ""
- moth_body.Blend(icon('icons/mob/species/moth/bodyparts.dmi', "moth_[body_part][gender]"), ICON_OVERLAY)
+ moth_body.Blend(icon('icons/mob/human/species/moth/bodyparts.dmi', "moth_[body_part][gender]"), ICON_OVERLAY)
- moth_body.Blend(icon('icons/mob/species/human/human_face.dmi', "motheyes"), ICON_OVERLAY)
+ moth_body.Blend(icon('icons/mob/human/human_face.dmi', "motheyes"), ICON_OVERLAY)
for (var/markings_name in GLOB.moth_markings_list)
var/datum/sprite_accessory/markings = GLOB.moth_markings_list[markings_name]
@@ -69,8 +69,8 @@
body_part_icon.Crop(1, 1, 32, 32)
icon_with_markings.Blend(body_part_icon, ICON_OVERLAY)
- icon_with_markings.Blend(icon('icons/mob/species/moth/moth_wings.dmi', "m_moth_wings_plain_FRONT"), ICON_OVERLAY)
- icon_with_markings.Blend(icon('icons/mob/species/moth/moth_antennae.dmi', "m_moth_antennae_plain_FRONT"), ICON_OVERLAY)
+ icon_with_markings.Blend(icon('icons/mob/human/species/moth/moth_wings.dmi', "m_moth_wings_plain_FRONT"), ICON_OVERLAY)
+ icon_with_markings.Blend(icon('icons/mob/human/species/moth/moth_antennae.dmi', "m_moth_antennae_plain_FRONT"), ICON_OVERLAY)
// Zoom in on the top of the head and the chest
icon_with_markings.Scale(64, 64)
diff --git a/code/modules/client/preferences/species_features/pod.dm b/code/modules/client/preferences/species_features/pod.dm
index 8c623836ba2..c5315d95380 100644
--- a/code/modules/client/preferences/species_features/pod.dm
+++ b/code/modules/client/preferences/species_features/pod.dm
@@ -10,7 +10,7 @@
/datum/preference/choiced/pod_hair/init_possible_values()
var/list/values = list()
- var/icon/pod_head = icon('icons/mob/species/human/bodyparts_greyscale.dmi', "pod_head_m")
+ var/icon/pod_head = icon('icons/mob/human/bodyparts_greyscale.dmi', "pod_head_m")
for (var/pod_name in GLOB.pod_hair_list)
var/datum/sprite_accessory/pod_hair = GLOB.pod_hair_list[pod_name]
diff --git a/code/modules/clothing/head/wig.dm b/code/modules/clothing/head/wig.dm
index 486dde4a891..b692c1383c5 100644
--- a/code/modules/clothing/head/wig.dm
+++ b/code/modules/clothing/head/wig.dm
@@ -1,7 +1,7 @@
/obj/item/clothing/head/wig
name = "wig"
desc = "A bunch of hair without a head attached."
- icon = 'icons/mob/species/human/human_face.dmi' // default icon for all hairs
+ icon = 'icons/mob/human/human_face.dmi' // default icon for all hairs
worn_icon = 'icons/mob/clothing/head/costume.dmi'
icon_state = "hair_vlong"
inhand_icon_state = "pwig"
diff --git a/code/modules/food_and_drinks/restaurant/customers/_customer.dm b/code/modules/food_and_drinks/restaurant/customers/_customer.dm
index 93b2470e50a..c5a7f809586 100644
--- a/code/modules/food_and_drinks/restaurant/customers/_customer.dm
+++ b/code/modules/food_and_drinks/restaurant/customers/_customer.dm
@@ -314,7 +314,7 @@
var/datum/sprite_accessory/moth_wings/wings = get_wings(customer)
- var/mutable_appearance/wings_behind = mutable_appearance(icon = 'icons/mob/species/moth/moth_wings.dmi', icon_state = "m_moth_wings_[wings.icon_state]_BEHIND")
+ var/mutable_appearance/wings_behind = mutable_appearance(icon = 'icons/mob/human/species/moth/moth_wings.dmi', icon_state = "m_moth_wings_[wings.icon_state]_BEHIND")
wings_behind.appearance_flags = RESET_COLOR
underlays += wings_behind
@@ -325,7 +325,7 @@
var/datum/sprite_accessory/moth_wings/wings = get_wings(customer)
- var/mutable_appearance/wings_front = mutable_appearance(icon = 'icons/mob/species/moth/moth_wings.dmi', icon_state = "m_moth_wings_[wings.icon_state]_FRONT")
+ var/mutable_appearance/wings_front = mutable_appearance(icon = 'icons/mob/human/species/moth/moth_wings.dmi', icon_state = "m_moth_wings_[wings.icon_state]_FRONT")
wings_front.appearance_flags = RESET_COLOR
overlays += wings_front
diff --git a/code/modules/hallucination/body.dm b/code/modules/hallucination/body.dm
index cec96f9f828..5167b63c5ee 100644
--- a/code/modules/hallucination/body.dm
+++ b/code/modules/hallucination/body.dm
@@ -58,7 +58,7 @@
/datum/hallucination/body/husk
random_hallucination_weight = 8
- body_image_file = 'icons/mob/species/human/human.dmi'
+ body_image_file = 'icons/mob/human/human.dmi'
body_image_state = "husk"
/datum/hallucination/body/husk/sideways
diff --git a/code/modules/hallucination/delusions.dm b/code/modules/hallucination/delusions.dm
index 3a5e1798823..312972f5c9a 100644
--- a/code/modules/hallucination/delusions.dm
+++ b/code/modules/hallucination/delusions.dm
@@ -141,7 +141,7 @@
delusion_name = "???"
/datum/hallucination/delusion/preset/monkey
- delusion_icon_file = 'icons/mob/species/human/human.dmi'
+ delusion_icon_file = 'icons/mob/human/human.dmi'
delusion_icon_state = "monkey"
delusion_name = "monkey"
@@ -160,12 +160,12 @@
delusion_name = "carp"
/datum/hallucination/delusion/preset/skeleton
- delusion_icon_file = 'icons/mob/species/human/human.dmi'
+ delusion_icon_file = 'icons/mob/human/human.dmi'
delusion_icon_state = "skeleton"
delusion_name = "skeleton"
/datum/hallucination/delusion/preset/zombie
- delusion_icon_file = 'icons/mob/species/human/human.dmi'
+ delusion_icon_file = 'icons/mob/human/human.dmi'
delusion_icon_state = "zombie"
delusion_name = "zombie"
diff --git a/code/modules/hallucination/shock.dm b/code/modules/hallucination/shock.dm
index 32fc17fce1d..99db2530d85 100644
--- a/code/modules/hallucination/shock.dm
+++ b/code/modules/hallucination/shock.dm
@@ -2,7 +2,7 @@
/datum/hallucination/shock
random_hallucination_weight = 1
- var/electrocution_icon = 'icons/mob/species/human/human.dmi'
+ var/electrocution_icon = 'icons/mob/human/human.dmi'
var/electrocution_icon_state = "electrocuted_base"
var/image/shock_image
var/image/electrocution_skeleton_anim
diff --git a/code/modules/holodeck/mobs.dm b/code/modules/holodeck/mobs.dm
index c683905e33e..7a7e7c22d9e 100644
--- a/code/modules/holodeck/mobs.dm
+++ b/code/modules/holodeck/mobs.dm
@@ -5,7 +5,7 @@
/mob/living/simple_animal/holodeck_monkey
name = "monkey"
desc = "A holographic creature fond of bananas."
- icon = 'icons/mob/species/human/human.dmi'
+ icon = 'icons/mob/human/human.dmi'
icon_state = "monkey"
icon_living = "monkey"
icon_dead = "monkey_dead"
diff --git a/code/modules/mob/living/basic/space_fauna/ghost.dm b/code/modules/mob/living/basic/space_fauna/ghost.dm
index 9a4f476f42b..058c2d2cd3f 100644
--- a/code/modules/mob/living/basic/space_fauna/ghost.dm
+++ b/code/modules/mob/living/basic/space_fauna/ghost.dm
@@ -72,14 +72,14 @@
if(!isnull(ghost_hairstyle) && ghost_hairstyle != "Bald") //Bald hairstyle and the Shaved facial hairstyle lack an associated sprite and will not properly generate hair, and just cause runtimes.
var/datum/sprite_accessory/hair_style = GLOB.hairstyles_list[ghost_hairstyle] //We use the hairstyle name to get the sprite accessory, which we copy the icon_state from.
- ghost_hair = mutable_appearance('icons/mob/species/human/human_face.dmi', "[hair_style.icon_state]", -HAIR_LAYER)
+ ghost_hair = mutable_appearance('icons/mob/human/human_face.dmi', "[hair_style.icon_state]", -HAIR_LAYER)
ghost_hair.alpha = 200
ghost_hair.color = ghost_hair_color
add_overlay(ghost_hair)
if(!isnull(ghost_facial_hairstyle) && ghost_facial_hairstyle != "Shaved")
var/datum/sprite_accessory/facial_hair_style = GLOB.facial_hairstyles_list[ghost_facial_hairstyle]
- ghost_facial_hair = mutable_appearance('icons/mob/species/human/human_face.dmi', "[facial_hair_style.icon_state]", -HAIR_LAYER)
+ ghost_facial_hair = mutable_appearance('icons/mob/human/human_face.dmi', "[facial_hair_style.icon_state]", -HAIR_LAYER)
ghost_facial_hair.alpha = 200
ghost_facial_hair.color = ghost_facial_hair_color
add_overlay(ghost_facial_hair)
diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm
index 6ae444ea362..de6280b0050 100644
--- a/code/modules/mob/living/carbon/human/emote.dm
+++ b/code/modules/mob/living/carbon/human/emote.dm
@@ -41,7 +41,7 @@
/datum/emote/living/carbon/human/glasses/run_emote(mob/user, params, type_override, intentional)
. = ..()
- var/image/emote_animation = image('icons/mob/species/human/emote_visuals.dmi', user, "glasses")
+ var/image/emote_animation = image('icons/mob/human/emote_visuals.dmi', user, "glasses")
flick_overlay_global(emote_animation, GLOB.clients, 1.6 SECONDS)
/datum/emote/living/carbon/human/grumble
diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm
index 56ee7dad220..2655d342e99 100644
--- a/code/modules/mob/living/carbon/human/human_defines.dm
+++ b/code/modules/mob/living/carbon/human/human_defines.dm
@@ -2,7 +2,7 @@
/mob/living/carbon/human
name = "Unknown"
real_name = "Unknown"
- icon = 'icons/mob/species/human/human.dmi'
+ icon = 'icons/mob/human/human.dmi'
icon_state = "human_basic"
appearance_flags = KEEP_TOGETHER|TILE_BOUND|PIXEL_SCALE|LONG_GLIDE
hud_possible = list(HEALTH_HUD,STATUS_HUD,ID_HUD,WANTED_HUD,IMPLOYAL_HUD,IMPCHEM_HUD,IMPTRACK_HUD,ANTAG_HUD,GLAND_HUD,SENTIENT_DISEASE_HUD,FAN_HUD,PERMIT_HUD) //SKYRAT EDIT: ADD PERMIT_HUD
diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm
index c4c0157478b..356438ed536 100644
--- a/code/modules/mob/living/emote.dm
+++ b/code/modules/mob/living/emote.dm
@@ -379,7 +379,7 @@
. = ..()
if(!ishuman(user))
return
- var/image/emote_animation = image('icons/mob/species/human/emote_visuals.dmi', user, "sigh")
+ var/image/emote_animation = image('icons/mob/human/emote_visuals.dmi', user, "sigh")
flick_overlay_global(emote_animation, GLOB.clients, 2.0 SECONDS)
/datum/emote/living/sit
diff --git a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm
index f23c2b71857..43d393cc849 100644
--- a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm
+++ b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm
@@ -383,7 +383,7 @@
duration = 300
/datum/status_effect/spookcookie/on_apply()
- var/image/I = image(icon = 'icons/mob/species/human/human.dmi', icon_state = "skeleton", layer = ABOVE_MOB_LAYER, loc = owner)
+ var/image/I = image(icon = 'icons/mob/human/human.dmi', icon_state = "skeleton", layer = ABOVE_MOB_LAYER, loc = owner)
I.override = 1
owner.add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/everyone, "spookyscary", I)
return ..()
diff --git a/code/modules/surgery/bodyparts/_bodyparts.dm b/code/modules/surgery/bodyparts/_bodyparts.dm
index 1cbaa170efa..04fb0f9093e 100644
--- a/code/modules/surgery/bodyparts/_bodyparts.dm
+++ b/code/modules/surgery/bodyparts/_bodyparts.dm
@@ -4,16 +4,16 @@
force = 3
throwforce = 3
w_class = WEIGHT_CLASS_SMALL
- icon = 'icons/mob/species/human/bodyparts.dmi'
+ icon = 'icons/mob/human/bodyparts.dmi'
icon_state = "" //Leave this blank! Bodyparts are built using overlays
/// The icon for Organic limbs using greyscale
VAR_PROTECTED/icon_greyscale = DEFAULT_BODYPART_ICON_ORGANIC
///The icon for non-greyscale limbs
- VAR_PROTECTED/icon_static = 'icons/mob/species/human/bodyparts.dmi'
+ VAR_PROTECTED/icon_static = 'icons/mob/human/bodyparts.dmi'
///The icon for husked limbs
- VAR_PROTECTED/icon_husk = 'icons/mob/species/human/bodyparts.dmi'
+ VAR_PROTECTED/icon_husk = 'icons/mob/human/bodyparts.dmi'
///The icon for invisible limbs
- VAR_PROTECTED/icon_invisible = 'icons/mob/species/human/bodyparts.dmi'
+ VAR_PROTECTED/icon_invisible = 'icons/mob/human/bodyparts.dmi'
///The type of husk for building an iconstate
var/husk_type = "humanoid"
layer = BELOW_MOB_LAYER //so it isn't hidden behind objects when on the floor
diff --git a/code/modules/surgery/bodyparts/head.dm b/code/modules/surgery/bodyparts/head.dm
index 1ab9cfb1821..0872ccbebb5 100644
--- a/code/modules/surgery/bodyparts/head.dm
+++ b/code/modules/surgery/bodyparts/head.dm
@@ -1,7 +1,7 @@
/obj/item/bodypart/head
name = BODY_ZONE_HEAD
desc = "Didn't make sense not to live for fun, your brain gets smart but your head gets dumb."
- icon = 'icons/mob/species/human/bodyparts.dmi'
+ icon = 'icons/mob/human/bodyparts.dmi'
icon_state = "default_human_head"
max_damage = 250 //SKYRAT EDIT CHANGE: max_damage = 200
body_zone = BODY_ZONE_HEAD
@@ -206,8 +206,8 @@
if(dropped)
// This is a bit of copy/paste code from eyes.dm:generate_body_overlay
if(eyes?.eye_icon_state && (head_flags & HEAD_EYESPRITES))
- var/image/eye_left = image('icons/mob/species/human/human_face.dmi', "[eyes.eye_icon_state]_l", -BODY_LAYER, SOUTH)
- var/image/eye_right = image('icons/mob/species/human/human_face.dmi', "[eyes.eye_icon_state]_r", -BODY_LAYER, SOUTH)
+ var/image/eye_left = image('icons/mob/human/human_face.dmi', "[eyes.eye_icon_state]_l", -BODY_LAYER, SOUTH)
+ var/image/eye_right = image('icons/mob/human/human_face.dmi', "[eyes.eye_icon_state]_r", -BODY_LAYER, SOUTH)
if(head_flags & HEAD_EYECOLOR)
if(eyes.eye_color_left)
eye_left.color = eyes.eye_color_left
@@ -248,7 +248,7 @@
. += eye_left
. += eye_right
else if(!eyes && (head_flags & HEAD_EYEHOLES))
- var/image/no_eyes = image('icons/mob/species/human/human_face.dmi', "eyes_missing", -BODY_LAYER, SOUTH)
+ var/image/no_eyes = image('icons/mob/human/human_face.dmi', "eyes_missing", -BODY_LAYER, SOUTH)
worn_face_offset?.apply_offset(no_eyes)
. += no_eyes
@@ -266,9 +266,9 @@
return "The head of [real_name]"
/obj/item/bodypart/head/monkey
- icon = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_static = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_husk = 'icons/mob/species/monkey/bodyparts.dmi'
+ icon = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_husk = 'icons/mob/human/species/monkey/bodyparts.dmi'
husk_type = "monkey"
icon_state = "default_monkey_head"
limb_id = SPECIES_MONKEY
@@ -279,8 +279,8 @@
head_flags = HEAD_LIPS|HEAD_DEBRAIN
/obj/item/bodypart/head/alien
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "alien_head"
limb_id = BODYPART_ID_ALIEN
is_dimorphic = FALSE
@@ -292,8 +292,8 @@
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ALIEN | BODYTYPE_ORGANIC
/obj/item/bodypart/head/larva
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "larva_head"
limb_id = BODYPART_ID_LARVA
is_dimorphic = FALSE
diff --git a/code/modules/surgery/bodyparts/head_hair_and_lips.dm b/code/modules/surgery/bodyparts/head_hair_and_lips.dm
index a93eb88f9a7..e29a2b8b657 100644
--- a/code/modules/surgery/bodyparts/head_hair_and_lips.dm
+++ b/code/modules/surgery/bodyparts/head_hair_and_lips.dm
@@ -88,7 +88,7 @@
if(!facial_hair_hidden && lip_style && (head_flags & HEAD_LIPS))
//not a sprite accessory, don't ask
//Overlay
- var/image/lip_overlay = image('icons/mob/species/human/human_face.dmi', "lips_[lip_style]", -BODY_LAYER, image_dir)
+ var/image/lip_overlay = image('icons/mob/human/human_face.dmi', "lips_[lip_style]", -BODY_LAYER, image_dir)
lip_overlay.color = lip_color
//Emissive blocker
if(blocks_emissive != EMISSIVE_BLOCK_NONE)
@@ -172,16 +172,16 @@
/// Returns an appropriate debrained overlay
/obj/item/bodypart/head/proc/get_debrain_overlay(can_rotate = TRUE)
RETURN_TYPE(/image)
- var/debrain_icon = 'icons/mob/species/human/human_face.dmi'
+ var/debrain_icon = 'icons/mob/human/human_face.dmi'
var/debrain_icon_state = "debrained"
if(bodytype & BODYTYPE_ALIEN)
- debrain_icon = 'icons/mob/species/alien/bodyparts.dmi'
+ debrain_icon = 'icons/mob/human/species/alien/bodyparts.dmi'
debrain_icon_state = "debrained_alien"
else if(bodytype & BODYTYPE_LARVA_PLACEHOLDER)
- debrain_icon = 'icons/mob/species/alien/bodyparts.dmi'
+ debrain_icon = 'icons/mob/human/species/alien/bodyparts.dmi'
debrain_icon_state = "debrained_larva"
else if(bodytype & BODYTYPE_GOLEM)
- debrain_icon = 'icons/mob/species/golems.dmi'
+ debrain_icon = 'icons/mob/human/species/golems.dmi'
debrain_icon_state = "debrained"
var/image/debrain_overlay
@@ -195,7 +195,7 @@
/// Returns an appropriate missing eyes overlay
/obj/item/bodypart/head/proc/get_eyeless_overlay(can_rotate = TRUE)
RETURN_TYPE(/image)
- var/eyeless_icon = 'icons/mob/species/human/human_face.dmi'
+ var/eyeless_icon = 'icons/mob/human/human_face.dmi'
var/eyeless_icon_state = "eyes_missing"
var/image/eyeless_overlay
diff --git a/code/modules/surgery/bodyparts/parts.dm b/code/modules/surgery/bodyparts/parts.dm
index d45ada1c36f..cbe533de54d 100644
--- a/code/modules/surgery/bodyparts/parts.dm
+++ b/code/modules/surgery/bodyparts/parts.dm
@@ -56,9 +56,9 @@
..()
/obj/item/bodypart/chest/monkey
- icon = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_static = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_husk = 'icons/mob/species/monkey/bodyparts.dmi'
+ icon = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_husk = 'icons/mob/human/species/monkey/bodyparts.dmi'
husk_type = "monkey"
top_offset = -5
icon_state = "default_monkey_chest"
@@ -71,8 +71,8 @@
dmg_overlay_type = SPECIES_MONKEY
/obj/item/bodypart/chest/alien
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "alien_chest"
limb_id = BODYPART_ID_ALIEN
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ALIEN | BODYTYPE_ORGANIC
@@ -83,8 +83,8 @@
acceptable_bodytype = BODYTYPE_HUMANOID
/obj/item/bodypart/chest/larva
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "larva_chest"
limb_id = BODYPART_ID_LARVA
is_dimorphic = FALSE
@@ -194,9 +194,9 @@
/obj/item/bodypart/arm/left/monkey
- icon = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_static = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_husk = 'icons/mob/species/monkey/bodyparts.dmi'
+ icon = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_husk = 'icons/mob/human/species/monkey/bodyparts.dmi'
husk_type = "monkey"
icon_state = "default_monkey_l_arm"
limb_id = SPECIES_MONKEY
@@ -211,8 +211,8 @@
unarmed_stun_threshold = 3
/obj/item/bodypart/arm/left/alien
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "alien_l_arm"
limb_id = BODYPART_ID_ALIEN
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ALIEN | BODYTYPE_ORGANIC
@@ -297,9 +297,9 @@
/obj/item/bodypart/arm/right/monkey
- icon = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_static = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_husk = 'icons/mob/species/monkey/bodyparts.dmi'
+ icon = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_husk = 'icons/mob/human/species/monkey/bodyparts.dmi'
husk_type = "monkey"
icon_state = "default_monkey_r_arm"
limb_id = SPECIES_MONKEY
@@ -314,8 +314,8 @@
unarmed_stun_threshold = 3
/obj/item/bodypart/arm/right/alien
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "alien_r_arm"
limb_id = BODYPART_ID_ALIEN
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ALIEN | BODYTYPE_ORGANIC
@@ -412,9 +412,9 @@
owner.set_usable_legs(owner.usable_legs + 1)
/obj/item/bodypart/leg/left/monkey
- icon = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_static = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_husk = 'icons/mob/species/monkey/bodyparts.dmi'
+ icon = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_husk = 'icons/mob/human/species/monkey/bodyparts.dmi'
husk_type = "monkey"
top_offset = -3
icon_state = "default_monkey_l_leg"
@@ -429,8 +429,8 @@
unarmed_stun_threshold = 4
/obj/item/bodypart/leg/left/alien
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "alien_l_leg"
limb_id = BODYPART_ID_ALIEN
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ALIEN | BODYTYPE_ORGANIC
@@ -506,9 +506,9 @@
owner.set_usable_legs(owner.usable_legs + 1)
/obj/item/bodypart/leg/right/monkey
- icon = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_static = 'icons/mob/species/monkey/bodyparts.dmi'
- icon_husk = 'icons/mob/species/monkey/bodyparts.dmi'
+ icon = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/monkey/bodyparts.dmi'
+ icon_husk = 'icons/mob/human/species/monkey/bodyparts.dmi'
husk_type = "monkey"
top_offset = -3
icon_state = "default_monkey_r_leg"
@@ -523,8 +523,8 @@
unarmed_stun_threshold = 4
/obj/item/bodypart/leg/right/alien
- icon = 'icons/mob/species/alien/bodyparts.dmi'
- icon_static = 'icons/mob/species/alien/bodyparts.dmi'
+ icon = 'icons/mob/human/species/alien/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/alien/bodyparts.dmi'
icon_state = "alien_r_leg"
limb_id = BODYPART_ID_ALIEN
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ALIEN | BODYTYPE_ORGANIC
diff --git a/code/modules/surgery/bodyparts/species_parts/ethereal_bodyparts.dm b/code/modules/surgery/bodyparts/species_parts/ethereal_bodyparts.dm
index ab11c69d66c..2215b388320 100644
--- a/code/modules/surgery/bodyparts/species_parts/ethereal_bodyparts.dm
+++ b/code/modules/surgery/bodyparts/species_parts/ethereal_bodyparts.dm
@@ -1,5 +1,5 @@
/obj/item/bodypart/head/ethereal
- icon_greyscale = 'icons/mob/species/ethereal/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/ethereal/bodyparts.dmi'
limb_id = SPECIES_ETHEREAL
is_dimorphic = FALSE
dmg_overlay_type = null
@@ -17,7 +17,7 @@
species_color = eth_holder.current_color
/obj/item/bodypart/chest/ethereal
- icon_greyscale = 'icons/mob/species/ethereal/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/ethereal/bodyparts.dmi'
limb_id = SPECIES_ETHEREAL
is_dimorphic = FALSE
dmg_overlay_type = null
@@ -31,7 +31,7 @@
species_color = eth_holder.current_color
/obj/item/bodypart/arm/left/ethereal
- icon_greyscale = 'icons/mob/species/ethereal/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/ethereal/bodyparts.dmi'
limb_id = SPECIES_ETHEREAL
dmg_overlay_type = null
attack_type = BURN //burn bish
@@ -48,7 +48,7 @@
species_color = eth_holder.current_color
/obj/item/bodypart/arm/right/ethereal
- icon_greyscale = 'icons/mob/species/ethereal/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/ethereal/bodyparts.dmi'
limb_id = SPECIES_ETHEREAL
dmg_overlay_type = null
attack_type = BURN // bish buzz
@@ -65,7 +65,7 @@
species_color = eth_holder.current_color
/obj/item/bodypart/leg/left/ethereal
- icon_greyscale = 'icons/mob/species/ethereal/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/ethereal/bodyparts.dmi'
limb_id = SPECIES_ETHEREAL
dmg_overlay_type = null
attack_type = BURN // bish buzz
@@ -81,7 +81,7 @@
species_color = eth_holder.current_color
/obj/item/bodypart/leg/right/ethereal
- icon_greyscale = 'icons/mob/species/ethereal/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/ethereal/bodyparts.dmi'
limb_id = SPECIES_ETHEREAL
dmg_overlay_type = null
attack_type = BURN // bish buzz
diff --git a/code/modules/surgery/bodyparts/species_parts/lizard_bodyparts.dm b/code/modules/surgery/bodyparts/species_parts/lizard_bodyparts.dm
index 5138b19aec4..b5b306aaf67 100644
--- a/code/modules/surgery/bodyparts/species_parts/lizard_bodyparts.dm
+++ b/code/modules/surgery/bodyparts/species_parts/lizard_bodyparts.dm
@@ -1,16 +1,16 @@
/obj/item/bodypart/head/lizard
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = SPECIES_LIZARD
is_dimorphic = FALSE
head_flags = HEAD_LIPS|HEAD_EYESPRITES|HEAD_EYECOLOR|HEAD_EYEHOLES|HEAD_DEBRAIN
/obj/item/bodypart/chest/lizard
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = SPECIES_LIZARD
is_dimorphic = TRUE
/obj/item/bodypart/arm/left/lizard
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = SPECIES_LIZARD
unarmed_attack_verb = "slash"
unarmed_attack_effect = ATTACK_EFFECT_CLAW
@@ -18,7 +18,7 @@
unarmed_miss_sound = 'sound/weapons/slashmiss.ogg'
/obj/item/bodypart/arm/right/lizard
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = SPECIES_LIZARD
unarmed_attack_verb = "slash"
unarmed_attack_effect = ATTACK_EFFECT_CLAW
@@ -32,16 +32,16 @@
bodypart_traits = list(TRAIT_CHUNKYFINGERS)
/obj/item/bodypart/leg/left/lizard
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = SPECIES_LIZARD
/obj/item/bodypart/leg/right/lizard
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = SPECIES_LIZARD
/* SKYRAT EDIT REMOVAL - MOVED TO MODULAR MUTANT_BODYPARTS.DM
/obj/item/bodypart/leg/left/digitigrade
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = BODYPART_ID_DIGITIGRADE
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ORGANIC | BODYTYPE_DIGITIGRADE
@@ -67,7 +67,7 @@
limb_id = SPECIES_LIZARD
/obj/item/bodypart/leg/right/digitigrade
- icon_greyscale = 'icons/mob/species/lizard/bodyparts.dmi'
+ icon_greyscale = 'icons/mob/human/species/lizard/bodyparts.dmi'
limb_id = BODYPART_ID_DIGITIGRADE
bodytype = BODYTYPE_HUMANOID | BODYTYPE_ORGANIC | BODYTYPE_DIGITIGRADE
diff --git a/code/modules/surgery/bodyparts/species_parts/misc_bodyparts.dm b/code/modules/surgery/bodyparts/species_parts/misc_bodyparts.dm
index b92c7e1b42a..e57c014c02b 100644
--- a/code/modules/surgery/bodyparts/species_parts/misc_bodyparts.dm
+++ b/code/modules/surgery/bodyparts/species_parts/misc_bodyparts.dm
@@ -411,8 +411,8 @@
//GOLEM
/obj/item/bodypart/head/golem
- icon = 'icons/mob/species/golems.dmi'
- icon_static = 'icons/mob/species/golems.dmi'
+ icon = 'icons/mob/human/species/golems.dmi'
+ icon_static = 'icons/mob/human/species/golems.dmi'
icon_state = "golem_head"
biological_state = BIO_INORGANIC
bodytype = BODYTYPE_GOLEM | BODYTYPE_ORGANIC
@@ -448,8 +448,8 @@
return ..()
/obj/item/bodypart/chest/golem
- icon = 'icons/mob/species/golems.dmi'
- icon_static = 'icons/mob/species/golems.dmi'
+ icon = 'icons/mob/human/species/golems.dmi'
+ icon_static = 'icons/mob/human/species/golems.dmi'
icon_state = "golem_chest"
biological_state = BIO_INORGANIC
acceptable_bodytype = BODYTYPE_GOLEM
@@ -469,8 +469,8 @@
return ..()
/obj/item/bodypart/arm/left/golem
- icon = 'icons/mob/species/golems.dmi'
- icon_static = 'icons/mob/species/golems.dmi'
+ icon = 'icons/mob/human/species/golems.dmi'
+ icon_static = 'icons/mob/human/species/golems.dmi'
icon_state = "golem_l_arm"
biological_state = BIO_INORGANIC
bodytype = BODYTYPE_GOLEM | BODYTYPE_ORGANIC
@@ -503,8 +503,8 @@
old_owner.RemoveComponentSource(REF(src), /datum/component/shovel_hands)
/obj/item/bodypart/arm/right/golem
- icon = 'icons/mob/species/golems.dmi'
- icon_static = 'icons/mob/species/golems.dmi'
+ icon = 'icons/mob/human/species/golems.dmi'
+ icon_static = 'icons/mob/human/species/golems.dmi'
icon_state = "golem_r_arm"
biological_state = BIO_INORGANIC
bodytype = BODYTYPE_GOLEM | BODYTYPE_ORGANIC
@@ -537,8 +537,8 @@
old_owner.RemoveComponentSource(REF(src), /datum/component/shovel_hands)
/obj/item/bodypart/leg/left/golem
- icon = 'icons/mob/species/golems.dmi'
- icon_static = 'icons/mob/species/golems.dmi'
+ icon = 'icons/mob/human/species/golems.dmi'
+ icon_static = 'icons/mob/human/species/golems.dmi'
icon_state = "golem_l_leg"
biological_state = BIO_INORGANIC
bodytype = BODYTYPE_GOLEM | BODYTYPE_ORGANIC
@@ -550,8 +550,8 @@
unarmed_stun_threshold = 11
/obj/item/bodypart/leg/right/golem
- icon = 'icons/mob/species/golems.dmi'
- icon_static = 'icons/mob/species/golems.dmi'
+ icon = 'icons/mob/human/species/golems.dmi'
+ icon_static = 'icons/mob/human/species/golems.dmi'
icon_state = "golem_r_leg"
biological_state = BIO_INORGANIC
bodytype = BODYTYPE_GOLEM | BODYTYPE_ORGANIC
diff --git a/code/modules/surgery/bodyparts/species_parts/moth_bodyparts.dm b/code/modules/surgery/bodyparts/species_parts/moth_bodyparts.dm
index 007e0ca66d4..8b091ed34b9 100644
--- a/code/modules/surgery/bodyparts/species_parts/moth_bodyparts.dm
+++ b/code/modules/surgery/bodyparts/species_parts/moth_bodyparts.dm
@@ -1,25 +1,25 @@
/* SKYRAT EDIT REMOVAL - Moved to modular_skyrat\master_files\code\modules\surgery\bodyparts\species_parts\moth_bodyparts.dm
/obj/item/bodypart/head/moth
- icon = 'icons/mob/species/moth/bodyparts.dmi'
+ icon = 'icons/mob/human/species/moth/bodyparts.dmi'
icon_state = "moth_head"
- icon_static = 'icons/mob/species/moth/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/moth/bodyparts.dmi'
limb_id = SPECIES_MOTH
is_dimorphic = FALSE
should_draw_greyscale = FALSE
head_flags = HEAD_LIPS|HEAD_EYESPRITES|HEAD_EYEHOLES|HEAD_DEBRAIN //what the fuck, moths have lips?
/obj/item/bodypart/chest/moth
- icon = 'icons/mob/species/moth/bodyparts.dmi'
+ icon = 'icons/mob/human/species/moth/bodyparts.dmi'
icon_state = "moth_chest_m"
- icon_static = 'icons/mob/species/moth/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/moth/bodyparts.dmi'
limb_id = SPECIES_MOTH
is_dimorphic = TRUE
should_draw_greyscale = FALSE
/obj/item/bodypart/arm/left/moth
- icon = 'icons/mob/species/moth/bodyparts.dmi'
+ icon = 'icons/mob/human/species/moth/bodyparts.dmi'
icon_state = "moth_l_arm"
- icon_static = 'icons/mob/species/moth/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/moth/bodyparts.dmi'
limb_id = SPECIES_MOTH
should_draw_greyscale = FALSE
unarmed_attack_verb = "slash"
@@ -28,11 +28,9 @@
unarmed_miss_sound = 'sound/weapons/slashmiss.ogg'
/obj/item/bodypart/arm/right/moth
- icon = 'icons/mob/species/moth/bodyparts.dmi'
- icon_state = "moth_l_leg"
- icon = 'icons/mob/species/moth/bodyparts.dmi'
+ icon = 'icons/mob/human/species/moth/bodyparts.dmi'
icon_state = "moth_r_arm"
- icon_static = 'icons/mob/species/moth/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/moth/bodyparts.dmi'
limb_id = SPECIES_MOTH
should_draw_greyscale = FALSE
unarmed_attack_verb = "slash"
@@ -41,16 +39,16 @@
unarmed_miss_sound = 'sound/weapons/slashmiss.ogg'
/obj/item/bodypart/leg/left/moth
- icon = 'icons/mob/species/moth/bodyparts.dmi'
+ icon = 'icons/mob/human/species/moth/bodyparts.dmi'
icon_state = "moth_l_leg"
- icon_static = 'icons/mob/species/moth/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/moth/bodyparts.dmi'
limb_id = SPECIES_MOTH
should_draw_greyscale = FALSE
/obj/item/bodypart/leg/right/moth
- icon = 'icons/mob/species/moth/bodyparts.dmi'
+ icon = 'icons/mob/human/species/moth/bodyparts.dmi'
icon_state = "moth_r_leg"
- icon_static = 'icons/mob/species/moth/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/moth/bodyparts.dmi'
limb_id = SPECIES_MOTH
should_draw_greyscale = FALSE
*/ // SKYRAT EDIT END
diff --git a/code/modules/surgery/bodyparts/species_parts/plasmaman_bodyparts.dm b/code/modules/surgery/bodyparts/species_parts/plasmaman_bodyparts.dm
index d9bbee1ea03..85eea7edba0 100644
--- a/code/modules/surgery/bodyparts/species_parts/plasmaman_bodyparts.dm
+++ b/code/modules/surgery/bodyparts/species_parts/plasmaman_bodyparts.dm
@@ -1,7 +1,7 @@
/obj/item/bodypart/head/plasmaman
- icon = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
icon_state = "plasmaman_head"
- icon_static = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
biological_state = BIO_BONE
limb_id = SPECIES_PLASMAMAN
is_dimorphic = FALSE
@@ -12,9 +12,9 @@
head_flags = HEAD_EYESPRITES
/obj/item/bodypart/chest/plasmaman
- icon = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
icon_state = "plasmaman_chest"
- icon_static = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
biological_state = BIO_BONE
limb_id = SPECIES_PLASMAMAN
is_dimorphic = FALSE
@@ -24,9 +24,9 @@
burn_modifier = 1.5 //Plasmemes are weak
/obj/item/bodypart/arm/left/plasmaman
- icon = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
icon_state = "plasmaman_l_arm"
- icon_static = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
biological_state = BIO_BONE
limb_id = SPECIES_PLASMAMAN
should_draw_greyscale = FALSE
@@ -35,9 +35,9 @@
burn_modifier = 1.5 //Plasmemes are weak
/obj/item/bodypart/arm/right/plasmaman
- icon = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
icon_state = "plasmaman_r_arm"
- icon_static = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
biological_state = BIO_BONE
limb_id = SPECIES_PLASMAMAN
should_draw_greyscale = FALSE
@@ -46,9 +46,9 @@
burn_modifier = 1.5 //Plasmemes are weak
/obj/item/bodypart/leg/left/plasmaman
- icon = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
icon_state = "plasmaman_l_leg"
- icon_static = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
biological_state = BIO_BONE
limb_id = SPECIES_PLASMAMAN
should_draw_greyscale = FALSE
@@ -57,9 +57,9 @@
burn_modifier = 1.5 //Plasmemes are weak
/obj/item/bodypart/leg/right/plasmaman
- icon = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
icon_state = "plasmaman_r_leg"
- icon_static = 'icons/mob/species/plasmaman/bodyparts.dmi'
+ icon_static = 'icons/mob/human/species/plasmaman/bodyparts.dmi'
biological_state = BIO_BONE
limb_id = SPECIES_PLASMAMAN
should_draw_greyscale = FALSE
diff --git a/code/modules/surgery/organs/internal/eyes/_eyes.dm b/code/modules/surgery/organs/internal/eyes/_eyes.dm
index 5103aa00248..a4e8a524753 100644
--- a/code/modules/surgery/organs/internal/eyes/_eyes.dm
+++ b/code/modules/surgery/organs/internal/eyes/_eyes.dm
@@ -129,10 +129,10 @@
if(isnull(eye_icon_state))
return list()
- var/eye_icon = parent.dna?.species.eyes_icon || 'icons/mob/species/human/human_face.dmi' // SKYRAT EDIT ADDITION
+ var/eye_icon = parent.dna?.species.eyes_icon || 'icons/mob/human/human_face.dmi' // SKYRAT EDIT ADDITION
- var/mutable_appearance/eye_left = mutable_appearance(eye_icon, "[eye_icon_state]_l", -eyes_layer) // SKYRAT EDIT CHANGE - Customization - ORIGINAL: var/mutable_appearance/eye_left = mutable_appearance('icons/mob/human_face.dmi', "[eye_icon_state]_l", -BODY_LAYER)
- var/mutable_appearance/eye_right = mutable_appearance(eye_icon, "[eye_icon_state]_r", -eyes_layer) // SKYRAT EDIT CHANGE - Customization - ORIGINAL: var/mutable_appearance/eye_right = mutable_appearance('icons/mob/human_face.dmi', "[eye_icon_state]_r", -BODY_LAYER)
+ var/mutable_appearance/eye_left = mutable_appearance(eye_icon, "[eye_icon_state]_l", -eyes_layer) // SKYRAT EDIT CHANGE - Customization - ORIGINAL: var/mutable_appearance/eye_left = mutable_appearance('icons/mob/human/human_face.dmi', "[eye_icon_state]_l", -BODY_LAYER)
+ var/mutable_appearance/eye_right = mutable_appearance(eye_icon, "[eye_icon_state]_r", -eyes_layer) // SKYRAT EDIT CHANGE - Customization - ORIGINAL: var/mutable_appearance/eye_right = mutable_appearance('icons/mob/human/human_face.dmi', "[eye_icon_state]_r", -BODY_LAYER)
var/list/eye_overlays = list(eye_left, eye_right) //SKYRAT EDIT ADDITION - Add all the overlays to this list instead of adding emissive blockers/eye emissives to the eye overlays' overlays
var/obscured = parent.check_obscured_slots(TRUE)
@@ -684,12 +684,12 @@
switch(eye_color_mode)
if(MATCH_LIGHT_COLOR)
- eyes_overlay = emissive_appearance('icons/mob/species/human/human_face.dmi', "eyes_glow_gs", eye_owner, layer = -BODY_LAYER, alpha = owner.alpha)
+ eyes_overlay = emissive_appearance('icons/mob/human/human_face.dmi', "eyes_glow_gs", eye_owner, layer = -BODY_LAYER, alpha = owner.alpha)
eyes_overlay.color = current_color_string
eye_owner.add_overlay(eyes_overlay)
if(USE_CUSTOM_COLOR)
- eyes_overlay_left = emissive_appearance('icons/mob/species/human/human_face.dmi', "eyes_glow_gs_left", eye_owner, layer = -BODY_LAYER, alpha = owner.alpha)
- eyes_overlay_right = emissive_appearance('icons/mob/species/human/human_face.dmi', "eyes_glow_gs_right", eye_owner, layer = -BODY_LAYER, alpha = owner.alpha)
+ eyes_overlay_left = emissive_appearance('icons/mob/human/human_face.dmi', "eyes_glow_gs_left", eye_owner, layer = -BODY_LAYER, alpha = owner.alpha)
+ eyes_overlay_right = emissive_appearance('icons/mob/human/human_face.dmi', "eyes_glow_gs_right", eye_owner, layer = -BODY_LAYER, alpha = owner.alpha)
eyes_overlay_left.color = eye_color_left
eyes_overlay_right.color = eye_color_right
eye_owner.add_overlay(eyes_overlay_left)
diff --git a/icons/mob/species/human/bodyparts.dmi b/icons/mob/human/bodyparts.dmi
similarity index 100%
rename from icons/mob/species/human/bodyparts.dmi
rename to icons/mob/human/bodyparts.dmi
diff --git a/icons/mob/species/human/bodyparts_greyscale.dmi b/icons/mob/human/bodyparts_greyscale.dmi
similarity index 100%
rename from icons/mob/species/human/bodyparts_greyscale.dmi
rename to icons/mob/human/bodyparts_greyscale.dmi
diff --git a/icons/mob/species/human/cat_features.dmi b/icons/mob/human/cat_features.dmi
similarity index 100%
rename from icons/mob/species/human/cat_features.dmi
rename to icons/mob/human/cat_features.dmi
diff --git a/icons/mob/species/human/emote_visuals.dmi b/icons/mob/human/emote_visuals.dmi
similarity index 100%
rename from icons/mob/species/human/emote_visuals.dmi
rename to icons/mob/human/emote_visuals.dmi
diff --git a/icons/mob/species/human/fox_features.dmi b/icons/mob/human/fox_features.dmi
similarity index 100%
rename from icons/mob/species/human/fox_features.dmi
rename to icons/mob/human/fox_features.dmi
diff --git a/icons/mob/human/human.dmi b/icons/mob/human/human.dmi
new file mode 100644
index 0000000000000000000000000000000000000000..7532655b5277d20381f4ff53565baa174e853b53
GIT binary patch
literal 19246
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
Hu0mjfE|H=B
literal 0
HcmV?d00001
diff --git a/icons/mob/species/human/human_face.dmi b/icons/mob/human/human_face.dmi
similarity index 100%
rename from icons/mob/species/human/human_face.dmi
rename to icons/mob/human/human_face.dmi
diff --git a/icons/mob/species/human/mannequin.dmi b/icons/mob/human/mannequin.dmi
similarity index 100%
rename from icons/mob/species/human/mannequin.dmi
rename to icons/mob/human/mannequin.dmi
diff --git a/icons/mob/species/alien/bodyparts.dmi b/icons/mob/human/species/alien/bodyparts.dmi
similarity index 100%
rename from icons/mob/species/alien/bodyparts.dmi
rename to icons/mob/human/species/alien/bodyparts.dmi
diff --git a/icons/mob/species/ethereal/bodyparts.dmi b/icons/mob/human/species/ethereal/bodyparts.dmi
similarity index 100%
rename from icons/mob/species/ethereal/bodyparts.dmi
rename to icons/mob/human/species/ethereal/bodyparts.dmi
diff --git a/icons/mob/species/golems.dmi b/icons/mob/human/species/golems.dmi
similarity index 100%
rename from icons/mob/species/golems.dmi
rename to icons/mob/human/species/golems.dmi
diff --git a/icons/mob/species/hair_gradients.dmi b/icons/mob/human/species/hair_gradients.dmi
similarity index 100%
rename from icons/mob/species/hair_gradients.dmi
rename to icons/mob/human/species/hair_gradients.dmi
diff --git a/icons/mob/species/lizard/bodyparts.dmi b/icons/mob/human/species/lizard/bodyparts.dmi
similarity index 100%
rename from icons/mob/species/lizard/bodyparts.dmi
rename to icons/mob/human/species/lizard/bodyparts.dmi
diff --git a/icons/mob/species/lizard/lizard_misc.dmi b/icons/mob/human/species/lizard/lizard_misc.dmi
similarity index 100%
rename from icons/mob/species/lizard/lizard_misc.dmi
rename to icons/mob/human/species/lizard/lizard_misc.dmi
diff --git a/icons/mob/species/lizard/lizard_spines.dmi b/icons/mob/human/species/lizard/lizard_spines.dmi
similarity index 100%
rename from icons/mob/species/lizard/lizard_spines.dmi
rename to icons/mob/human/species/lizard/lizard_spines.dmi
diff --git a/icons/mob/species/lizard/lizard_tails.dmi b/icons/mob/human/species/lizard/lizard_tails.dmi
similarity index 100%
rename from icons/mob/species/lizard/lizard_tails.dmi
rename to icons/mob/human/species/lizard/lizard_tails.dmi
diff --git a/icons/mob/species/misc/bodypart_overlay_simple.dmi b/icons/mob/human/species/misc/bodypart_overlay_simple.dmi
similarity index 100%
rename from icons/mob/species/misc/bodypart_overlay_simple.dmi
rename to icons/mob/human/species/misc/bodypart_overlay_simple.dmi
diff --git a/icons/mob/species/misc/digitigrade.dmi b/icons/mob/human/species/misc/digitigrade.dmi
similarity index 100%
rename from icons/mob/species/misc/digitigrade.dmi
rename to icons/mob/human/species/misc/digitigrade.dmi
diff --git a/icons/mob/species/monkey/bodyparts.dmi b/icons/mob/human/species/monkey/bodyparts.dmi
similarity index 100%
rename from icons/mob/species/monkey/bodyparts.dmi
rename to icons/mob/human/species/monkey/bodyparts.dmi
diff --git a/icons/mob/species/monkey/monkey_tail.dmi b/icons/mob/human/species/monkey/monkey_tail.dmi
similarity index 100%
rename from icons/mob/species/monkey/monkey_tail.dmi
rename to icons/mob/human/species/monkey/monkey_tail.dmi
diff --git a/icons/mob/species/monkey/uniform.dmi b/icons/mob/human/species/monkey/uniform.dmi
similarity index 100%
rename from icons/mob/species/monkey/uniform.dmi
rename to icons/mob/human/species/monkey/uniform.dmi
diff --git a/icons/mob/species/moth/bodyparts.dmi b/icons/mob/human/species/moth/bodyparts.dmi
similarity index 100%
rename from icons/mob/species/moth/bodyparts.dmi
rename to icons/mob/human/species/moth/bodyparts.dmi
diff --git a/icons/mob/species/moth/moth_antennae.dmi b/icons/mob/human/species/moth/moth_antennae.dmi
similarity index 100%
rename from icons/mob/species/moth/moth_antennae.dmi
rename to icons/mob/human/species/moth/moth_antennae.dmi
diff --git a/icons/mob/species/moth/moth_markings.dmi b/icons/mob/human/species/moth/moth_markings.dmi
similarity index 100%
rename from icons/mob/species/moth/moth_markings.dmi
rename to icons/mob/human/species/moth/moth_markings.dmi
diff --git a/icons/mob/species/moth/moth_wings.dmi b/icons/mob/human/species/moth/moth_wings.dmi
similarity index 100%
rename from icons/mob/species/moth/moth_wings.dmi
rename to icons/mob/human/species/moth/moth_wings.dmi
diff --git a/icons/mob/species/mush_cap.dmi b/icons/mob/human/species/mush_cap.dmi
similarity index 100%
rename from icons/mob/species/mush_cap.dmi
rename to icons/mob/human/species/mush_cap.dmi
diff --git a/icons/mob/species/plasmaman/bodyparts.dmi b/icons/mob/human/species/plasmaman/bodyparts.dmi
similarity index 100%
rename from icons/mob/species/plasmaman/bodyparts.dmi
rename to icons/mob/human/species/plasmaman/bodyparts.dmi
diff --git a/icons/mob/species/podperson_hair.dmi b/icons/mob/human/species/podperson_hair.dmi
similarity index 100%
rename from icons/mob/species/podperson_hair.dmi
rename to icons/mob/human/species/podperson_hair.dmi
diff --git a/icons/mob/species/wings.dmi b/icons/mob/human/species/wings.dmi
similarity index 100%
rename from icons/mob/species/wings.dmi
rename to icons/mob/human/species/wings.dmi
diff --git a/icons/mob/species/human/human.dmi b/icons/mob/species/human/human.dmi
deleted file mode 100644
index 7e576e90404e94eec137525e0c2aebd1e4beab3b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 18225
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
diff --git a/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm b/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm
index 1eb8c7aa682..cffc4ab6d5f 100644
--- a/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm
+++ b/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm
@@ -815,7 +815,7 @@
/datum/preference/choiced/mutant_choice/pod_hair/init_possible_values()
var/list/values = list()
- var/icon/pod_head = icon('icons/mob/species/human/bodyparts_greyscale.dmi', "pod_head_m")
+ var/icon/pod_head = icon('icons/mob/human/bodyparts_greyscale.dmi', "pod_head_m")
pod_head.Blend(COLOR_GREEN, ICON_MULTIPLY)
for (var/pod_name in GLOB.pod_hair_list)
diff --git a/modular_skyrat/master_files/code/modules/client/preferences/species_features/generate_side_shots.dm b/modular_skyrat/master_files/code/modules/client/preferences/species_features/generate_side_shots.dm
index f42ce1fca1d..49fb60a2a0d 100644
--- a/modular_skyrat/master_files/code/modules/client/preferences/species_features/generate_side_shots.dm
+++ b/modular_skyrat/master_files/code/modules/client/preferences/species_features/generate_side_shots.dm
@@ -22,7 +22,7 @@
layer = "BEHIND"
final_icon = icon(sprite_accessory.icon, "m_[key]_[sprite_accessory.icon_state]_[layer]", direction)
else
- final_icon = icon('icons/mob/species/human/bodyparts_greyscale.dmi', "lizard_chest_m", direction)
+ final_icon = icon('icons/mob/human/bodyparts_greyscale.dmi', "lizard_chest_m", direction)
final_icon.Blend(COLOR_VIBRANT_LIME)
diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm
index f0f07262a69..38b3107d643 100644
--- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm
+++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/tails.dm
@@ -56,7 +56,7 @@
/datum/sprite_accessory/tails/monkey/default
name = "Monkey"
icon_state = "monkey"
- icon = 'icons/mob/species/monkey/monkey_tail.dmi'
+ icon = 'icons/mob/human/species/monkey/monkey_tail.dmi'
recommended_species = list(SPECIES_HUMAN, SPECIES_SYNTH, SPECIES_FELINE, SPECIES_MAMMAL, SPECIES_MONKEY, SPECIES_GHOUL)
color_src = FALSE
organ_type = /obj/item/organ/external/tail/monkey
diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm
index 51979bf66ca..b7b9fa357a2 100644
--- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm
+++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/wings.dm
@@ -6,7 +6,7 @@
* Check some of the wings that make use of them for examples on how to make it look decent.
*/
/datum/sprite_accessory/wings
- icon = 'icons/mob/species/wings.dmi'
+ icon = 'icons/mob/human/species/wings.dmi'
generic = "Wings"
key = "wings"
color_src = USE_ONE_COLOR