if(istype(src,/obj)) world.log << "obj created"
light = new /light (null)
light.calibrate()
if(istype(src,/obj)) world.log << "hit target 1"
..()
if(istype(src,/obj)) world.log << "hit target 2"
spawn(1)
if(istype(src,/obj)) world.log << "hit target 3"
for(var/atom/A in range(50))
A.light.calibrate_projection()
if(istype(src,/obj)) world.log << "calibrating [A]..."
The above is a troubled code snippet. On my map, I have 10 squares x 10 squares of turfs and an obj in the top half. When I run the proc that triggers the snippet above, this is the output I get:
obj created
hit target 1
hit target 2
hit target 3
I don't get any calibrating messages! I promise you that there are atoms in range(50). Is there any reason that they shouldn't be registering? Now, the bizzaire thing is that you get the calibrating messages if you replace all the type checks to /mob instead of /obj. Bizzaire!
-AbyssDragon