anchor.diff:  				if(istype(A, /mob/living) && A:lying)
   					// If they are, apply that effect to their picture.
   					img.BecomeLying()
  -				res.Blend(img, blendMode2iconMode(A.blend_mode), 33 + A.pixel_x, 33 + A.pixel_y)
  -
  +				// Calculate where we are relative to the center of the photo
  +				var/xoff = (A.x - center.x) * 32
  +				var/yoff = (A.y - center.y) * 32
  +				res.Blend(img, blendMode2iconMode(A.blend_mode), 33 + A.pixel_x + xoff, 33 + A.pixel_y + yoff)
   
   	// Lastly, render any contained effects on top.
  -	res.Blend(getFlatIcon(the_turf.loc), blendMode2iconMode(the_turf.blend_mode),33,33)
  +	for(var/turf/the_turf in turfs)
  +		// Calculate where we are relative to the center of the photo
  +		var/xoff = (the_turf.x - center.x) * 32
  +		var/yoff = (the_turf.y - center.y) * 32
  +		res.Blend(getFlatIcon(the_turf.loc), blendMode2iconMode(the_turf.blend_mode),33 + xoff,33 + yoff)
   	return res
   
   
  
positive.code: 			if(user.client)		//To make shooting through security cameras possible
  				viewer = user.client.eye
  			if(dummy in viewers(world.view, viewer))
  				temp.Blend(get_icon(T), ICON_OVERLAY, 32 * (j-1-1), 32 - 32 * (i-1))
  			else
  				temp.Blend(black, ICON_OVERLAY, 32 * (j-1), 64 - 32 * (i-1))
  			mobs += get_mobs(T)
  			dummy.loc = null
  			dummy = null	//Alas, nameless creature	//garbage collect it instead
  
negative.code: 		y_c--
  		x_c = x_c - 3
  
  	var/icon/photoimage = get_icon(turfs, target)
  
  	var/obj/item/weapon/photo/P = new/obj/item/weapon/photo()
  	P.loc = user.loc
  	if(!user.get_inactive_hand())
  		user.put_in_inactive_hand(P)
  	var/icon/small_img = icon(photoimage)
  	var/icon/tiny_img = icon(photoimage)
  	var/icon/ic = icon('icons/obj/items.dmi',"photo")
  	small_img.Scale(8, 8)
  	ic.Blend(small_img,ICON_OVERLAY, 10, 13)
  	P.icon = ic
  	P.tiny = pc
  	P.img = photoimage
  	P.desc = mobs
  	P.pixel_x = rand(-10, 10)
  	P.pixel_y = rand(-10, 10)
  