diff --git a/code/defines/procs/gamehelpers.dm b/code/defines/procs/gamehelpers.dm index 8e0c9940277..4f043aaa959 100644 --- a/code/defines/procs/gamehelpers.dm +++ b/code/defines/procs/gamehelpers.dm @@ -192,4 +192,13 @@ proc/check_can_reach(atom/user, atom/target) if(!in_range(user,target)) return 0 - return CanReachThrough(get_turf(user), get_turf(target), target) \ No newline at end of file + return CanReachThrough(get_turf(user), get_turf(target), target) + +//cael - not sure if there's an equivalent proc, but if there is i couldn't find it +//searches to see if M contains O somewhere +proc/is_carrying(var/M as mob, var/O as obj) + while(!istype(O,/area)) + if(O:loc == M) + return 1 + O = O:loc + return 0 \ No newline at end of file diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 3db104bc119..365ddd21e78 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -198,7 +198,7 @@ return var/obj/mecha/Mech = M.loc spawn() //this helps prevent clickspam fest. - if (Mech) + if (Mech && !(is_carrying(M,object)) ) //cael - make sure you cant drill shit in your invent Mech.click_action(object,M) else return ..() diff --git a/code/game/objects/devices/scanners.dm b/code/game/objects/devices/scanners.dm index 4cd9c6a796c..085910a4517 100644 --- a/code/game/objects/devices/scanners.dm +++ b/code/game/objects/devices/scanners.dm @@ -117,7 +117,7 @@ MASS SPECTROMETER src.amount-- var/obj/item/weapon/f_card/F = new /obj/item/weapon/f_card( user.loc ) F.amount = 1 - F.fingerprints += md5(M.dna.uni_identity) + F.add_fingerprint(M) F.icon_state = "fingerprint1" F.name = text("FPrintC- '[M.name]'")