anchor.diff:  
   	for(var/slime_body in owner.mind.slime_bodies)
   		var/mob/living/carbon/human/body = slime_body
  -		if(!body || !istype(body) || !body.dna || !body.dna.species || body.dna.species.id != "slime" || body.stat == DEAD || qdeleted(body))
  +		if(!istype(body) || !body.dna || !body.dna.species || body.dna.species.id != "slime" || body.stat == DEAD || qdeleted(body))
   			owner.mind.slime_bodies -= body
   			continue
  -		temp_body_list += body
  -
  -	if(!owner.mind.slime_bodies.len) //THEY ARE ALL DEAD
  +		if((body != owner) && (body.stat == CONSCIOUS)) //Only swap into conscious bodies that are not the ones we're in
  +			temp_body_list += body
  +
  +	if(owner.mind.slime_bodies.len == 1) //if our current body is our only one it means the rest are dead
   		owner << "<span class='warning'>Something is wrong, you cannot sense your other bodies!</span>"
   		Remove(owner)
   		return
   
  -	//HE'S STILL ALIVE
  +	if(!temp_body_list.len)
  +		owner << "<span class='warning'>You can sense your bodies, but they are unconscious. Swapping into them could be fatal.</span>"
  +		return
  +
   	var/body_name = input(owner, "Select the body you want to move into", "List of active bodies") as null|anything in temp_body_list
   
   	if(!body_name)
  
positive.code: 		if(S.volume < 100)
  			if(H.nutrition >= NUTRITION_LEVEL_STARVING)
  				H.reagents.add_reagent("slimejelly", 0.5)
  				H.nutrition -= 5
  			else if(prob(5))
  				H << "<span class='danger'>You feel drained!</span>"
  		if(S.volume < 10)
  
negative.code: 
  	var/mob/living/carbon/human/selected_body = body_name
  
  	if(selected_body.stat == UNCONSCIOUS || owner.stat == UNCONSCIOUS) //sanity check
  		owner << "<span class='warning'>The user or the target body have become unconscious during selection.</span>"
  		return
  
  	owner.mind.transfer_to(selected_body)
  