diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index a314d216d5f..4e861c93678 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -195,6 +195,7 @@ FINGERPRINT CARD return "There are no fingerprints on this card." return +/* /obj/item/weapon/f_card/attack_hand(mob/user as mob) if ((user.r_hand == src || user.l_hand == src)) @@ -215,6 +216,7 @@ FINGERPRINT CARD else ..() return +*/ /obj/item/weapon/f_card/attackby(obj/item/weapon/W as obj, mob/user as mob) ..() @@ -253,10 +255,10 @@ FINGERPRINT CARD ..() if (!istype(usr, /mob/living/silicon)) - if (src.fingerprints) + if (fingerprints) if (src.amount > 1) var/obj/item/weapon/f_card/F = new /obj/item/weapon/f_card(get_turf(src)) F.amount = --src.amount - src.amount = 1 - src.icon_state = "fingerprint1" + amount = 1 + icon_state = "fingerprint1" return \ No newline at end of file diff --git a/code/modules/detectivework/detective_work.dm b/code/modules/detectivework/detective_work.dm index a5222c2bb70..195b6c858e4 100644 --- a/code/modules/detectivework/detective_work.dm +++ b/code/modules/detectivework/detective_work.dm @@ -199,7 +199,6 @@ obj/machinery/computer/forensic_scanning M.drop_item() I.loc = src process_card() - usr << "You insert the card, and it is destroyed by the machinery in the process of comparing prints." else usr << "\red Invalid Object Rejected." if("database") @@ -647,7 +646,9 @@ obj/machinery/computer/forensic_scanning return proc/process_card() //Same as above, but for fingerprint cards - if(card.fingerprints && !(card.amount > 1)) + if(card.fingerprints && !(card.amount > 1) && islist(card.fingerprints) && files && files.len) + usr << "You insert the card, and it is destroyed by the machinery in the process of comparing prints." + var/found = 0 for(var/k = 1, k <= card.fingerprints.len, k++) var/list/test_prints = params2list(card.fingerprints[k]) var/print = test_prints[num2text(1)] @@ -659,6 +660,10 @@ obj/machinery/computer/forensic_scanning test_list[1] = "1=" + print + "&2=" + print files[i] = test_list break + if(found) + usr << "The machinery finds can completes a match." + else + usr << "No match found." del(card) else usr << "\red ERROR: No prints/too many cards."