diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index d17b79eddc..18ca605965 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -461,7 +461,11 @@ qdel(src) /mob/proc/become_overmind(starting_points = 60) - var/mob/camera/blob/B = new /mob/camera/blob(loc, starting_points) + var/turf/T = get_turf(loc) //just to avoid messing up in lockers + var/area/A = get_area(T) + if(((A && !A.blob_allowed) || !(T.z in GLOB.station_z_levels)) && LAZYLEN(GLOB.blobstart)) + T = get_turf(pick(GLOB.blobstart)) + var/mob/camera/blob/B = new /mob/camera/blob(T, starting_points) B.key = key . = B qdel(src)