[Manual Port] manually ports icon forge from Virgo (#9731)

This commit is contained in:
Kashargul
2024-12-30 14:20:44 +01:00
committed by GitHub
parent e80521439c
commit 3771982275
24 changed files with 835 additions and 159 deletions

View File

@@ -8,4 +8,6 @@
/datum/config_entry/flag/cache_assets
/datum/config_entry/flag/smart_cache_assets
/datum/config_entry/flag/save_spritesheets

View File

@@ -7,6 +7,7 @@ SUBSYSTEM_DEF(asset_loading)
flags = SS_NO_INIT
runlevels = RUNLEVEL_LOBBY|RUNLEVELS_DEFAULT
var/list/datum/asset/generate_queue = list()
var/last_queue_len = 0
/datum/controller/subsystem/asset_loading/fire(resumed)
while(length(generate_queue))
@@ -16,7 +17,12 @@ SUBSYSTEM_DEF(asset_loading)
if(MC_TICK_CHECK)
return
last_queue_len = length(generate_queue)
generate_queue.len--
// We just emptied the queue
if(last_queue_len && !length(generate_queue))
// Clean up cached icons, freeing memory.
rustg_iconforge_cleanup()
/datum/controller/subsystem/asset_loading/proc/queue_asset(datum/asset/queue)
#ifdef DO_NOT_DEFER_ASSETS