From 979d7851b9be5b4fec305a888fb22f7388bd7ea6 Mon Sep 17 00:00:00 2001 From: AnturK Date: Sat, 26 Dec 2015 16:37:02 +0100 Subject: [PATCH] Adds human icon helper --- code/__HELPERS/icons.dm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/code/__HELPERS/icons.dm b/code/__HELPERS/icons.dm index 649f671d82c..74a1e3bb811 100644 --- a/code/__HELPERS/icons.dm +++ b/code/__HELPERS/icons.dm @@ -915,4 +915,39 @@ The _flatIcons list is a cache for generated icon files. return 0 +var/global/list/humanoid_icon_cache = list() +//For creating consistent icons for human looking simple animals +/proc/get_flat_human_icon(var/icon_id,var/outfit,var/datum/preferences/prefs) + if(!icon_id || !humanoid_icon_cache[icon_id]) + var/mob/living/carbon/human/dummy/body = new() + + if(prefs) + prefs.copy_to(body) + if(outfit) + body.equipOutfit(outfit, TRUE) + + var/icon/out_icon = icon('icons/effects/effects.dmi', "nothing") + + body.dir = NORTH + var/icon/partial = getFlatIcon(body) + out_icon.Insert(partial,dir=NORTH) + + body.dir = SOUTH + partial = getFlatIcon(body) + out_icon.Insert(partial,dir=SOUTH) + + body.dir = WEST + partial = getFlatIcon(body) + out_icon.Insert(partial,dir=WEST) + + body.dir = EAST + partial = getFlatIcon(body) + out_icon.Insert(partial,dir=EAST) + + qdel(body) + + humanoid_icon_cache[icon_id] = out_icon + return out_icon + else + return humanoid_icon_cache[icon_id]