diff --git a/code/modules/antagonists/wizard/equipment/artefact.dm b/code/modules/antagonists/wizard/equipment/artefact.dm index 08e00ea0f4..8642484895 100644 --- a/code/modules/antagonists/wizard/equipment/artefact.dm +++ b/code/modules/antagonists/wizard/equipment/artefact.dm @@ -405,8 +405,12 @@ var/breakout = 0 while(breakout < 50) if(!T) - break + end_effect(user) + return var/turf/potential_T = find_safe_turf() + if(!potential_T) + end_effect(user) + return if(T.z != potential_T.z || abs(get_dist_euclidian(potential_T,T)) > 50 - breakout) do_teleport(user, potential_T, channel = TELEPORT_CHANNEL_MAGIC) user.canmove = 0