diff --git a/code/modules/mob/freelook/chunk.dm b/code/modules/mob/freelook/chunk.dm index 000b25c3cae..659e200861b 100644 --- a/code/modules/mob/freelook/chunk.dm +++ b/code/modules/mob/freelook/chunk.dm @@ -89,7 +89,7 @@ for(var/turf in visAdded) var/turf/t = turf - if(t.obfuscations[obfuscation.type]) + if(LAZYACCESS(t.obfuscations, obfuscation.type)) obscured -= t.obfuscations[obfuscation.type] for(var/eye in seenby) var/mob/eye/m = eye @@ -101,19 +101,20 @@ for(var/turf in visRemoved) var/turf/t = turf if(obscuredTurfs[t]) - if(!t.obfuscations[obfuscation.type]) + if(!LAZYACCESS(t.obfuscations, obfuscation.type)) + LAZYINITLIST(t.obfuscations) var/image/obfuscation_static = image(obfuscation.icon, t, obfuscation.icon_state, OBFUSCATION_LAYER) obfuscation_static.plane = 0 t.obfuscations[obfuscation.type] = obfuscation_static - obscured += t.obfuscations[obfuscation.type] + obscured += LAZYACCESS(t.obfuscations, obfuscation.type) for(var/eye in seenby) var/mob/eye/m = eye if(!m || !m.owner) seenby -= m continue if(m.owner.client) - m.owner.client.images += t.obfuscations[obfuscation.type] + m.owner.client.images += LAZYACCESS(t.obfuscations, obfuscation.type) /datum/chunk/proc/acquireVisibleTurfs(var/list/visible) @@ -130,7 +131,7 @@ src.z = z var/turf/center = locate(x + 8, y + 8, z) - + for(var/turf/t in RANGE_TURFS(10, center)) if(t.x >= x && t.y >= y && t.x < x + 16 && t.y < y + 16) turfs[t] = t @@ -144,12 +145,12 @@ for(var/turf in obscuredTurfs) var/turf/t = turf - LAZYINITLIST(t.obfuscations) - if(!t.obfuscations[obfuscation.type]) + if(!LAZYACCESS(t.obfuscations, obfuscation.type)) + LAZYINITLIST(t.obfuscations) var/image/obfuscation_static = image(obfuscation.icon, t, obfuscation.icon_state, OBFUSCATION_LAYER) obfuscation_static.plane = 0 t.obfuscations[obfuscation.type] = obfuscation_static - obscured += t.obfuscations[obfuscation.type] + obscured += LAZYACCESS(t.obfuscations, obfuscation.type) #undef UPDATE_BUFFER