From 1099a4e3785800929845e68194b5452a52254940 Mon Sep 17 00:00:00 2001 From: Kashargul <144968721+Kashargul@users.noreply.github.com> Date: Sat, 9 Nov 2024 22:06:34 +0100 Subject: [PATCH 1/3] we don't have a proper init order --- code/controllers/subsystems/assets.dm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/code/controllers/subsystems/assets.dm b/code/controllers/subsystems/assets.dm index d34d05ff55..83f5ae7f30 100644 --- a/code/controllers/subsystems/assets.dm +++ b/code/controllers/subsystems/assets.dm @@ -1,3 +1,7 @@ +/datum/configuration/load() + . = ..() + SSassets.OnConfigLoad() + SUBSYSTEM_DEF(assets) name = "Assets" init_order = INIT_ORDER_ASSETS @@ -23,7 +27,6 @@ SUBSYSTEM_DEF(assets) /datum/controller/subsystem/assets/Initialize() - OnConfigLoad() for(var/type in typesof(/datum/asset)) var/datum/asset/A = type From 70c6bde9bd7e3efaa93d87eb356dc508fcbf0bd5 Mon Sep 17 00:00:00 2001 From: Kashargul <144968721+Kashargul@users.noreply.github.com> Date: Sat, 9 Nov 2024 22:17:07 +0100 Subject: [PATCH 2/3] chat assets --- code/_helpers/text.dm | 11 ++++++----- code/controllers/subsystems/assets.dm | 5 +---- code/modules/asset_cache/assets/chat.dm | 3 +-- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/code/_helpers/text.dm b/code/_helpers/text.dm index 520b98d39a..27e99a37a4 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/controllers/subsystems/assets.dm b/code/controllers/subsystems/assets.dm index 83f5ae7f30..d34d05ff55 100644 --- a/code/controllers/subsystems/assets.dm +++ b/code/controllers/subsystems/assets.dm @@ -1,7 +1,3 @@ -/datum/configuration/load() - . = ..() - SSassets.OnConfigLoad() - SUBSYSTEM_DEF(assets) name = "Assets" init_order = INIT_ORDER_ASSETS @@ -27,6 +23,7 @@ SUBSYSTEM_DEF(assets) /datum/controller/subsystem/assets/Initialize() + OnConfigLoad() for(var/type in typesof(/datum/asset)) var/datum/asset/A = type diff --git a/code/modules/asset_cache/assets/chat.dm b/code/modules/asset_cache/assets/chat.dm index 0853ea542c..82d33e381b 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) //Chomp - OOC, LOOC ect icons From 13773b5f8002c3898fc0b6b71c4dbfda592495aa Mon Sep 17 00:00:00 2001 From: Kashargul <144968721+Kashargul@users.noreply.github.com> Date: Sun, 10 Nov 2024 13:38:23 +0100 Subject: [PATCH 3/3] . --- code/modules/asset_cache/assets/chat.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/asset_cache/assets/chat.dm b/code/modules/asset_cache/assets/chat.dm index 82d33e381b..cbaf4ac35b 100644 --- a/code/modules/asset_cache/assets/chat.dm +++ b/code/modules/asset_cache/assets/chat.dm @@ -2,4 +2,4 @@ name = "chat" /datum/asset/spritesheet/chat/create_spritesheets() - InsertAll("", text_tag_icons) //Chomp - OOC, LOOC ect icons + InsertAll("", text_tag_icons) // OOC, LOOC ect icons