diff --git a/code/_helpers/text.dm b/code/_helpers/text.dm index 3357116d30..725335f267 100644 --- a/code/_helpers/text.dm +++ b/code/_helpers/text.dm @@ -343,16 +343,17 @@ //The icon var could be local in the proc, but it's a waste of resources // to always create it and then throw it out. /var/icon/text_tag_icons = 'icons/chattags.dmi' -/var/list/text_tag_cache = list() +GLOBAL_LIST_EMPTY(text_tag_cache) + /proc/create_text_tag(var/tagname, var/tagdesc = tagname, var/client/C = null) if(!(C && C.prefs?.read_preference(/datum/preference/toggle/chat_tags))) return tagdesc - if(!text_tag_cache[tagname]) - var/icon/tag = icon(text_tag_icons, tagname) - text_tag_cache[tagname] = tag + if(!GLOB.text_tag_cache[tagname]) + var/datum/asset/spritesheet/chatassets = get_asset_datum(/datum/asset/spritesheet/chat) + GLOB.text_tag_cache[tagname] = chatassets.icon_tag(tagname) if(!C.tgui_panel.is_ready() || C.tgui_panel.oldchat) return "[tagdesc]" - return icon2html(text_tag_cache[tagname], C, extra_classes = "text_tag") + return GLOB.text_tag_cache[tagname] /proc/create_text_tag_old(var/tagname, var/tagdesc = tagname, var/client/C = null) if(!(C && C.prefs?.read_preference(/datum/preference/toggle/chat_tags))) diff --git a/code/modules/asset_cache/assets/chat.dm b/code/modules/asset_cache/assets/chat.dm index 0853ea542c..cbaf4ac35b 100644 --- a/code/modules/asset_cache/assets/chat.dm +++ b/code/modules/asset_cache/assets/chat.dm @@ -2,5 +2,4 @@ name = "chat" /datum/asset/spritesheet/chat/create_spritesheets() - //honk - //This function has to be overridden otherwise it will generate runtimes + InsertAll("", text_tag_icons) // OOC, LOOC ect icons