Merge pull request #31987 from Cyberboss/InlineCO

May as well shave some yaks
This commit is contained in:
oranges
2017-10-26 23:03:52 +13:00
committed by CitadelStationBot
parent 630b332848
commit c3dbb8925b
2 changed files with 21 additions and 15 deletions
@@ -26,13 +26,32 @@ PROCESSING_SUBSYSTEM_DEF(overlays)
overlay_icon_cache = SSoverlays.overlay_icon_cache
processing = SSoverlays.processing
#define COMPILE_OVERLAYS(A)\
var/list/oo = A.our_overlays;\
var/list/po = A.priority_overlays;\
if(LAZYLEN(po)){\
if(LAZYLEN(oo)){\
A.overlays = oo + po;\
}\
else{\
A.overlays = po;\
}\
}\
else if(LAZYLEN(oo)){\
A.overlays = oo;\
}\
else{\
A.overlays.Cut();\
}\
A.flags_1 &= ~OVERLAY_QUEUED_1
/datum/controller/subsystem/processing/overlays/fire(resumed = FALSE, mc_check = TRUE)
var/list/processing = src.processing
while(processing.len)
var/atom/thing = processing[processing.len]
processing.len--
if(thing)
thing.compile_overlays()
COMPILE_OVERLAYS(thing)
if(mc_check)
if(MC_TICK_CHECK)
break
@@ -44,19 +63,6 @@ PROCESSING_SUBSYSTEM_DEF(overlays)
testing("Flushing [processing.len] overlays")
fire(mc_check = FALSE) //pair this thread up with the MC to get extra compile time
/atom/proc/compile_overlays()
var/list/oo = our_overlays
var/list/po = priority_overlays
if(LAZYLEN(po) && LAZYLEN(oo))
overlays = oo + po
else if(LAZYLEN(oo))
overlays = oo
else if(LAZYLEN(po))
overlays = po
else
overlays.Cut()
flags_1 &= ~OVERLAY_QUEUED_1
/proc/iconstate2appearance(icon, iconstate)
var/static/image/stringbro = new()
var/list/icon_states_cache = SSoverlays.overlay_icon_state_caches