diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 92b37a3ab2b..4503a684244 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1083,6 +1083,8 @@ var/turf/temp_turf = get_turf(h) if((temp_turf.z != 1 && temp_turf.z != 5) || h.stat!=CONSCIOUS) //Not on mining or the station. Or dead continue + if(M_PSY_RESIST in h.mutations) + continue creatures += h var/mob/target = input ("Who do you want to project your mind to ?") as mob in creatures diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 461fd67cc02..31382acf786 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1439,8 +1439,22 @@ else var/isRemoteObserve = 0 if((mRemote in mutations) && remoteview_target) - if(remoteview_target.stat==CONSCIOUS) - isRemoteObserve = 1 + isRemoteObserve = 1 + // Is he unconscious or dead? + if(remoteview_target.stat!=CONSCIOUS) + src << "\red Your psy-connection grows too faint to maintain!" + isRemoteObserve = 0 + + // Does he have psy resist? + if(M_PSY_RESIST in remoteview_target.mutations) + src << "\red Your mind is shut out!" + isRemoteObserve = 0 + + // Not on the station or mining? + var/turf/temp_turf = get_turf(remoteview_target) + if((temp_turf.z != 1 && temp_turf.z != 5) || remoteview_target.stat!=CONSCIOUS) + src << "\red Your psy-connection grows too faint to maintain!" + isRemoteObserve = 0 if(!isRemoteObserve && client && !client.adminobs) remoteview_target = null reset_view(null)