diff --git a/code/modules/detectivework/scanning_console.dm b/code/modules/detectivework/scanning_console.dm
index 9e32c58390..5ff719548c 100644
--- a/code/modules/detectivework/scanning_console.dm
+++ b/code/modules/detectivework/scanning_console.dm
@@ -59,17 +59,23 @@
fresh.fields["label"] = old.fields["label"]
files[fresh.uid] = fresh
+ //updating partial prints on other things
+ var/list/fprints = fresh.fields["fprints"]
+ if(fprints.len)
+ for(var/id in files)
+ var/datum/data/record/forensic/rec = files[id]
+ if(rec.update_prints(fprints))
+ files[id] = rec
+
/obj/machinery/computer/forensic_scanning/proc/process_card(var/obj/item/weapon/f_card/card)
if(card.fingerprints)
usr << "\The [src] sucks in \the [card] and whirrs, scanning it."
var/found = 0
for(var/id in files)
var/datum/data/record/forensic/rec = files[id]
- var/list/prints = rec.fields["fprints"]
- for(var/master_print in card.fingerprints)
- if(prints[master_print])
- prints[master_print] = master_print
- found = 1
+ found = rec.update_prints(card.fingerprints)
+ if (found)
+ files[id] = rec
if(found)
usr << "Complete match found."
else
@@ -189,7 +195,7 @@
dat += "
NO RECORD SELECTED"
else
dat += get_printable_data(current)
- dat += "Labels: "
+ dat += "
Labels: "
dat += "[current.fields["label"] ? current.fields["label"] : "None"]
"
dat += "Print record
"
@@ -302,4 +308,4 @@
ping("Scan complete.")
var/datum/data/record/forensic/fresh = new(scanning)
add_record(fresh)
- updateUsrDialog()
\ No newline at end of file
+ updateUsrDialog()