diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm index 0c01468712..7a495b95e7 100644 --- a/code/_onclick/ai.dm +++ b/code/_onclick/ai.dm @@ -23,6 +23,9 @@ return next_click = world.time + 1 + if(!can_interact_with(A)) + return + if(multicam_on) var/turf/T = get_turf(A) if(T) @@ -60,7 +63,6 @@ controlled_mech.click_action(A, src, params) //Override AI normal click behavior. return - return if(modifiers["shift"]) ShiftClickOn(A) return diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 6d225d3913..1b1eb1a805 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -288,8 +288,17 @@ /mob/living/silicon/ai/can_interact_with(atom/A) . = ..() + var/turf/ai = get_turf(src) + var/turf/target = get_turf(A) if (.) return + + if(!target) + return + + if ((ai.z != target.z) && !is_station_level(ai.z)) + return FALSE + if (istype(loc, /obj/item/aicard)) var/turf/T0 = get_turf(src) var/turf/T1 = get_turf(A)