From f064da7f5029317deb55e02b0189361168980aa6 Mon Sep 17 00:00:00 2001 From: SkyMarshal Date: Sun, 11 Nov 2012 14:42:59 -0700 Subject: [PATCH] Some fixes to Detective Work. --- code/modules/DetectiveWork/detective_work.dm | 22 ++++++++++---------- code/modules/DetectiveWork/scanner.dm | 8 +++---- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/code/modules/DetectiveWork/detective_work.dm b/code/modules/DetectiveWork/detective_work.dm index 2dc409beb6f..77b9e6207a1 100644 --- a/code/modules/DetectiveWork/detective_work.dm +++ b/code/modules/DetectiveWork/detective_work.dm @@ -258,10 +258,10 @@ obj/machinery/computer/forensic_scanning if("databaseprint") //Printing from the "files" database. if(files) var/obj/item/weapon/paper/P = new(loc) - P.name = "\improper Database File (Dossier [files.Find(href_list["identifier"])])" + var/list/dossier = files[href_list["identifier"]] + P.name = "\improper Database File ([dossier[2]])" P.overlays += "paper_words" P.info = "Criminal Evidence Database

" - var/list/dossier = files[href_list["identifier"]] P.info += "Consolidated data points: [dossier[2]]
" var/print_string = "Fingerprints: Print not complete!
" if(stringpercent(dossier[1]) <= FINGERPRINT_COMPLETE) @@ -512,10 +512,10 @@ obj/machinery/computer/forensic_scanning prints[print] = atom_fingerprints[print] else var/list/templist[4] - templist[1] = atom_suit_fibers - templist[2] = atom_blood_DNA + templist[1] = atom_suit_fibers ? atom_suit_fibers.Copy() : null + templist[2] = atom_blood_DNA ? atom_blood_DNA.Copy() : null templist[3] = atom_name - templist[4] = atom_fingerprints + templist[4] = atom_fingerprints ? atom_fingerprints.Copy() : null misc[atom_reference] = templist //Store it! //Has prints. if(atom_fingerprints) @@ -559,17 +559,17 @@ obj/machinery/computer/forensic_scanning //It's not in there! We gotta add it. update_fingerprints(main_print, atom_fingerprints[main_print]) var/list/data_point[4] - data_point[1] = atom_fingerprints - data_point[2] = atom_suit_fibers - data_point[3] = atom_blood_DNA + data_point[1] = atom_fingerprints ? atom_fingerprints.Copy() : null + data_point[2] = atom_suit_fibers ? atom_suit_fibers.Copy() : null + data_point[3] = atom_blood_DNA ? atom_blood_DNA.Copy() : null data_point[4] = atom_name data_entry[atom_reference] = data_point continue //No print at all! New data entry, go! var/list/data_point[4] - data_point[1] = atom_fingerprints - data_point[2] = atom_suit_fibers - data_point[3] = atom_blood_DNA + data_point[1] = atom_fingerprints ? atom_fingerprints.Copy() : null + data_point[2] = atom_suit_fibers ? atom_suit_fibers.Copy() : null + data_point[3] = atom_blood_DNA ? atom_blood_DNA.Copy() : null data_point[4] = atom_name var/list/new_file[2] new_file[1] = atom_fingerprints[main_print] diff --git a/code/modules/DetectiveWork/scanner.dm b/code/modules/DetectiveWork/scanner.dm index 09eb646a448..76c803ff7be 100644 --- a/code/modules/DetectiveWork/scanner.dm +++ b/code/modules/DetectiveWork/scanner.dm @@ -135,7 +135,7 @@ return proc/add_data(atom/A as mob|obj|turf|area) - //I love hashtables. + //I love associative lists. var/list/data_entry = stored["\ref [A]"] if(islist(data_entry)) //Yay, it was already stored! //Merge the fingerprints. @@ -164,9 +164,9 @@ blood[main_blood] = A.blood_DNA[blood] return 1 var/list/sum_list[4] //Pack it back up! - sum_list[1] = A.fingerprints - sum_list[2] = A.suit_fibers - sum_list[3] = A.blood_DNA + sum_list[1] = A.fingerprints ? A.fingerprints.Copy() : null + sum_list[2] = A.suit_fibers ? A.suit_fibers.Copy() : null + sum_list[3] = A.blood_DNA ? A.blood_DNA.Copy() : null sum_list[4] = "\The [A] in \the [get_area(A)]" stored["\ref [A]"] = sum_list return 0 \ No newline at end of file