anchor.diff:  	dupe.visible_message("<span class='notice'>[dupe] blinks and looks \
   		around.</span>",
   		"<span class='notice'>...and move this one instead.</span>")
  -
  +	if(old != M.current && dupe == M.current && isslimeperson(dupe))
  +		var/datum/species/jelly/slime/other_spec = dupe.dna.species
  +		var/datum/action/innate/swap_body/other_swap = other_spec.swap_body
  +		// theoretically the transfer_to proc is supposed to transfer the ui from the mob.
  +		// so I try to get the UI from one of the two mobs and schlump it over to the new action button
  +		var/datum/tgui/ui = SStgui.get_open_ui(old, src, "main") || SStgui.get_open_ui(dupe, src, "main")
  +		if(ui)
  +			// transfer the UI over. This code is slightly hacky but it fixes the problem
  +			// I'd use SStgui.on_transfer but that doesn't let you transfer the src_object as well s
  +			SStgui.on_close(ui) // basically removes it from lists is all this proc does.
  +			ui.user = dupe
  +			ui.src_object = other_swap
  +			SStgui.on_open(ui) // stick it back on the lists
  +			ui.process(force = TRUE)
   
   ////////////////////////////////////////////////////////Round Start Slimes///////////////////////////////////////////////////////////////////
   
  
positive.code: 		\"steps out\" of [H.p_them()].</span>",
  		"<span class='notice'>...and after a moment of disorentation, \
  		you're besides yourself!</span>")
  
  
  /datum/action/innate/swap_body
  	name = "Swap Body"
  
negative.code: /datum/action/innate/swap_body/proc/swap_to_dupe(datum/mind/M, mob/living/carbon/human/dupe)
  	if(!can_swap(dupe)) //sanity check
  		return
  	var/mob/living/carbon/human/old = M.current
  	if(M.current.stat == CONSCIOUS)
  		M.current.visible_message("<span class='notice'>[M.current] \
  			stops moving and starts staring vacantly into space.</span>",
  