Fix Pass 1

Issue: Facing north means the tail is overlayed by just about everything
but the body.
This commit is contained in:
KasparoVy
2016-01-08 16:33:57 -05:00
parent 6ad459e52c
commit 0c0f505d82
3 changed files with 46 additions and 41 deletions
@@ -106,33 +106,35 @@ Please contact me on #coderbus IRC. ~Carn x
//Human Overlays Indexes/////////
#define MUTANTRACE_LAYER 1
#define MARKINGS_LAYER 2
#define MUTATIONS_LAYER 3
#define DAMAGE_LAYER 4
#define UNIFORM_LAYER 5
#define ID_LAYER 6
#define SHOES_LAYER 7
#define GLOVES_LAYER 8
#define EARS_LAYER 9
#define SUIT_LAYER 10
#define GLASSES_LAYER 11
#define BELT_LAYER 12 //Possible make this an overlay of somethign required to wear a belt?
#define TAIL_LAYER 13 //bs12 specific. this hack is probably gonna come back to haunt me
#define SUIT_STORE_LAYER 14
#define BACK_LAYER 15
#define HAIR_LAYER 16 //TODO: make part of head layer?
#define HEAD_ACCESSORY_LAYER 17
#define FHAIR_LAYER 18
#define FACEMASK_LAYER 19
#define HEAD_LAYER 20
#define COLLAR_LAYER 21
#define HANDCUFF_LAYER 22
#define LEGCUFF_LAYER 23
#define L_HAND_LAYER 24
#define R_HAND_LAYER 25
#define TARGETED_LAYER 26 //BS12: Layer for the target overlay from weapon targeting system
#define FIRE_LAYER 27 //If you're on fire
#define TOTAL_LAYERS 27
#define TAIL_LAYER 2 //bs12 specific. this hack is probably gonna come back to haunt me
#define LIMBS_LAYER 3
#define MARKINGS_LAYER 4 //2
#define MUTATIONS_LAYER 5 //3
#define DAMAGE_LAYER 6 //4
#define UNIFORM_LAYER 7 //5
#define ID_LAYER 8 //6
#define SHOES_LAYER 9 //7
#define GLOVES_LAYER 10 //8
#define EARS_LAYER 11 //9
#define SUIT_LAYER 12 //10
#define GLASSES_LAYER 13 //11
#define BELT_LAYER 14 //12 //Possible make this an overlay of somethign required to wear a belt?
//#define TAIL_LAYER 13 //bs12 specific. this hack is probably gonna come back to haunt me
#define SUIT_STORE_LAYER 15 //14
#define BACK_LAYER 16 //15
#define HAIR_LAYER 17 //16 //TODO: make part of head layer?
#define HEAD_ACCESSORY_LAYER 18 //17
#define FHAIR_LAYER 19 //18
#define FACEMASK_LAYER 20 //19
#define HEAD_LAYER 21 //20
#define COLLAR_LAYER 22 //21
#define HANDCUFF_LAYER 23 //22
#define LEGCUFF_LAYER 24 //23
#define L_HAND_LAYER 25 //24
#define R_HAND_LAYER 26 //25
#define TARGETED_LAYER 27 //26 //BS12: Layer for the target overlay from weapon targeting system
#define FIRE_LAYER 28 //27 //If you're on fire
#define TOTAL_LAYERS 28 //27
@@ -296,6 +298,7 @@ var/global/list/damage_icon_parts = list()
if(!(part.icon_position & RIGHT))
temp2.Insert(new/icon(temp,dir=WEST),dir=WEST)
base_icon.Blend(temp2, ICON_OVERLAY)
overlays_standing[LIMBS_LAYER] = image(base_icon)
if(part.icon_position & LEFT)
temp2.Insert(new/icon(temp,dir=EAST),dir=EAST)
if(part.icon_position & RIGHT)
@@ -1114,11 +1117,13 @@ var/global/list/damage_icon_parts = list()
//Human Overlays Indexes/////////
#undef MUTANTRACE_LAYER
#undef TAIL_LAYER
#undef LIMBS_LAYER
#undef MARKINGS_LAYER
#undef MUTATIONS_LAYER
#undef DAMAGE_LAYER
#undef UNIFORM_LAYER
#undef TAIL_LAYER
//#undef TAIL_LAYER
#undef ID_LAYER
#undef SHOES_LAYER
#undef GLOVES_LAYER
@@ -211,16 +211,6 @@ datum/preferences
preview_icon.Blend(new /icon(icobase, "groin_[g]"), ICON_OVERLAY)
preview_icon.Blend(new /icon(icobase, "head_[g]"), ICON_OVERLAY)
for(var/name in list("r_arm","r_hand","r_leg","r_foot","l_leg","l_foot","l_arm","l_hand"))
if(organ_data[name] == "amputated") continue
if(organ_data[name] == "cyborg")
var/datum/robolimb/R
if(rlimb_data[name]) R = all_robolimbs[rlimb_data[name]]
if(!R) R = basic_robolimb
preview_icon.Blend(icon(R.icon, "[name]"), ICON_OVERLAY) // This doesn't check gendered_icon. Not an issue while only limbs can be robotic.
continue
preview_icon.Blend(new /icon(icobase, "[name]"), ICON_OVERLAY)
//Tail
if(current_species && (current_species.bodyflags & HAS_TAIL))
var/tail_icon
@@ -237,6 +227,16 @@ datum/preferences
var/icon/temp = new /icon("icon" = tail_icon, "icon_state" = tail_icon_state)
preview_icon.Blend(temp, ICON_OVERLAY)
for(var/name in list("r_arm","r_hand","r_leg","r_foot","l_leg","l_foot","l_arm","l_hand"))
if(organ_data[name] == "amputated") continue
if(organ_data[name] == "cyborg")
var/datum/robolimb/R
if(rlimb_data[name]) R = all_robolimbs[rlimb_data[name]]
if(!R) R = basic_robolimb
preview_icon.Blend(icon(R.icon, "[name]"), ICON_OVERLAY) // This doesn't check gendered_icon. Not an issue while only limbs can be robotic.
continue
preview_icon.Blend(new /icon(icobase, "[name]"), ICON_OVERLAY)
// Skin color
if(current_species && (current_species.bodyflags & HAS_SKIN_COLOR))
preview_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD)