From 14ac797deba78294816d77852199e4f37b609755 Mon Sep 17 00:00:00 2001 From: SkyMarshal Date: Mon, 19 Dec 2011 22:12:04 -0700 Subject: [PATCH] Should finialize the improved Security Console --- code/defines/obj/clothing/gloves.dm | 8 +- code/defines/obj/computer.dm | 4 +- code/game/jobs/job/security.dm | 5 +- code/game/machinery/computer/security.dm | 74 +++++++------------ code/game/objects/closets/secure/security.dm | 2 + config/admins.txt | 2 +- icons/obj/clothing/gloves.dmi | Bin 3616 -> 3798 bytes 7 files changed, 41 insertions(+), 54 deletions(-) diff --git a/code/defines/obj/clothing/gloves.dm b/code/defines/obj/clothing/gloves.dm index 294d56063ce..55315576777 100644 --- a/code/defines/obj/clothing/gloves.dm +++ b/code/defines/obj/clothing/gloves.dm @@ -140,11 +140,13 @@ color="orange" /obj/item/clothing/gloves/red - name = "Red Gloves" - desc = "A pair of gloves, they don't look special in any way." + desc = "Heavily padded heavy-duty red gloves." + name = "red gloves" icon_state = "red" item_state = "redgloves" - color = "red" + siemens_coefficient = 0.30 + + protective_temperature = 1100 /obj/item/clothing/gloves/rainbow name = "Rainbow Gloves" diff --git a/code/defines/obj/computer.dm b/code/defines/obj/computer.dm index 7826070c1a8..a92bf91a02e 100644 --- a/code/defines/obj/computer.dm +++ b/code/defines/obj/computer.dm @@ -191,8 +191,8 @@ var/temp = null var/printing = null var/can_change_id = 0 - var/PerpGen = list(1) - var/PerpSec = list(1) + var/Perp[50][2] //If you have more than 50 results, you're not on Bay12. + var/tempname = null /obj/machinery/computer/secure_data/detective_computer diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index 80a20725b2f..f9463337cc6 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -17,7 +17,7 @@ H.equip_if_possible(new /obj/item/device/pda/heads/hos(H), H.slot_belt) // H.equip_if_possible(new /obj/item/clothing/suit/armor/hos(H), H.slot_wear_suit) //We're Bay12, not Goon. We don't need armor 24/7 - H.equip_if_possible(new /obj/item/clothing/gloves/black(H), H.slot_gloves) + H.equip_if_possible(new /obj/item/clothing/gloves/red(H), H.slot_gloves) H.equip_if_possible(new /obj/item/clothing/head/helmet/HoS(H), H.slot_head) H.equip_if_possible(new /obj/item/clothing/glasses/sunglasses/sechud(H), H.slot_glasses) H.equip_if_possible(new /obj/item/weapon/handcuffs(H), H.slot_in_backpack) @@ -47,7 +47,7 @@ H.equip_if_possible(new /obj/item/device/pda/security(H), H.slot_belt) H.equip_if_possible(new /obj/item/clothing/suit/armor/vest(H), H.slot_wear_suit) H.equip_if_possible(new /obj/item/clothing/head/helmet/warden(H), H.slot_head) - H.equip_if_possible(new /obj/item/clothing/gloves/black(H), H.slot_gloves) + H.equip_if_possible(new /obj/item/clothing/gloves/red(H), H.slot_gloves) H.equip_if_possible(new /obj/item/clothing/glasses/sunglasses/sechud(H), H.slot_glasses) H.equip_if_possible(new /obj/item/weapon/handcuffs(H), H.slot_in_backpack) H.equip_if_possible(new /obj/item/device/flash(H), H.slot_l_store) @@ -114,6 +114,7 @@ H.equip_if_possible(new /obj/item/clothing/suit/armor/vest(H), H.slot_wear_suit) H.equip_if_possible(new /obj/item/clothing/head/helmet(H), H.slot_head) H.equip_if_possible(new /obj/item/weapon/handcuffs(H), H.slot_in_backpack) + H.equip_if_possible(new /obj/item/clothing/gloves/red(H), H.slot_gloves) H.equip_if_possible(new /obj/item/weapon/handcuffs(H), H.slot_s_store) H.equip_if_possible(new /obj/item/device/flash(H), H.slot_l_store) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 8155b11009c..62b04203d2d 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -20,8 +20,7 @@ dat += {"

"} dat += text("Search Records
", src) - dat += text("Search Fingerprints
", src) - dat += text("New Record
", src) + dat += text("New Record
", src) dat += {"

@@ -40,7 +39,7 @@ for(var/datum/data/record/R in data_core.general) var/crimstat = "" for(var/datum/data/record/E in data_core.security) - if ((E.fields["name"] == R.fields["name"] || E.fields["id"] == R.fields["id"])) + if ((E.fields["name"] == R.fields["name"] && E.fields["id"] == R.fields["id"])) crimstat = E.fields["criminal"] var/background switch(crimstat) @@ -86,13 +85,14 @@ dat += text("New Security Record

", src) dat += text("\nDelete Record (ALL)

\nPrint Record
\nBack
", src, src, src) if(4.0) - if(!(istype(PerpSec[1],/datum/data/record/))) + if(!(istype(Perp[1][1],/datum/data/record/))) dat += text("ERROR. String could not be located.

Back", src) else dat += {"
- - + "} + dat += text("", tempname) + dat += {"
Search Results:
Search Results for '[]':
@@ -103,11 +103,14 @@ "} - for(var/i=1, i<=PerpGen.len, i++) + for(var/i=1, i<=Perp.len, i++) + if(!(istype(Perp[i][1],/datum/data/record/))) + continue var/crimstat = "" - var/datum/data/record/R = PerpGen[i] - var/datum/data/record/E = PerpSec[i] - crimstat = E.fields["criminal"] + var/datum/data/record/R = Perp[i][1] + if(istype(Perp[i][2],/datum/data/record/)) + var/datum/data/record/E = Perp[i][2] + crimstat = E.fields["criminal"] var/background switch(crimstat) if("*Arrest*") @@ -195,18 +198,22 @@ What a mess.*/ var/t1 = input("Search String: (Partial Name or ID or Fingerprints)", "Secure. records", null, null) as text if ((!( t1 ) || usr.stat || !( authenticated ) || usr.restrained() || !in_range(src, usr))) return - PerpGen.len = 1 - PerpSec.len = 1 + Perp = new/list(50,2) t1 = lowertext(t1) + var/perp_num = 1 for(var/datum/data/record/R in data_core.general) + var/temptext = R.fields["name"] + " " + R.fields["id"] + " " + R.fields["fingerprint"] + if(findtext(temptext,t1)) + Perp[perp_num][1] = R + perp_num++ + for(var/i = 1, i<=perp_num, i++) + if(!(istype(Perp[i][1],/datum/data/record/))) + continue for(var/datum/data/record/E in data_core.security) - if ((E.fields["name"] == R.fields["name"] || E.fields["id"] == R.fields["id"])) - var/temptext = E.fields["name"] + " " + E.fields["id"] + " " + R.fields["fingerprint"] - if(findtext(temptext,t1)) - PerpGen[PerpGen.len] = E - PerpSec[PerpSec.len] = R - PerpGen.len += 1 - PerpSec.len += 1 + var/datum/data/record/R = Perp[i][1] + if ((E.fields["name"] == R.fields["name"] && E.fields["id"] == R.fields["id"])) + Perp[i][2] = E + tempname = t1 screen = 4 if("Record Maintenance") @@ -227,7 +234,7 @@ What a mess.*/ active2 = S screen = 3 - if ("Search Fingerprints") +/* if ("Search Fingerprints") var/t1 = input("Search String: (Fingerprint)", "Secure. records", null, null) as text if ((!( t1 ) || usr.stat || !( authenticated ) || usr.restrained() || (!in_range(src, usr)) && (!istype(usr, /mob/living/silicon)))) return @@ -243,7 +250,7 @@ What a mess.*/ for(var/datum/data/record/E in data_core.security) if ((E.fields["name"] == active1.fields["name"] || E.fields["id"] == active1.fields["id"])) active2 = E - screen = 3 + screen = 3 */ if ("Print Record") if (!( printing )) @@ -336,31 +343,6 @@ What a mess.*/ active1 = G active2 = null - if("New Record (Complete)") - var/datum/data/record/G = new /datum/data/record() - G.fields["name"] = "New Record" - G.fields["id"] = text("[]", add_zero(num2hex(rand(1, 1.6777215E7)), 6)) - G.fields["rank"] = "Unassigned" - G.fields["sex"] = "Male" - G.fields["age"] = "Unknown" - G.fields["fingerprint"] = "Unknown" - G.fields["p_stat"] = "Active" - G.fields["m_stat"] = "Stable" - data_core.general += G - active1 = G - var/datum/data/record/R = new /datum/data/record() - R.fields["name"] = active1.fields["name"] - R.fields["id"] = active1.fields["id"] - R.name = text("Security Record #[]", R.fields["id"]) - R.fields["criminal"] = "None" - R.fields["mi_crim"] = "None" - R.fields["mi_crim_d"] = "No minor crime convictions." - R.fields["ma_crim"] = "None" - R.fields["ma_crim_d"] = "No major crime convictions." - R.fields["notes"] = "No notes." - data_core.security += R - active2 = R - //FIELD FUNCTIONS if ("Edit Field") var/a1 = active1 diff --git a/code/game/objects/closets/secure/security.dm b/code/game/objects/closets/secure/security.dm index 0d209639f82..0f88397d045 100644 --- a/code/game/objects/closets/secure/security.dm +++ b/code/game/objects/closets/secure/security.dm @@ -78,6 +78,7 @@ new /obj/item/clothing/suit/armor/vest(src) new /obj/item/clothing/suit/storage/gearharness(src) new /obj/item/clothing/head/helmet/warden(src) + new /obj/item/clothing/gloves/red(src) new /obj/item/device/radio/headset/headset_sec(src) new /obj/item/weapon/storage/flashbang_kit(src) new /obj/item/weapon/storage/belt/security(src) @@ -99,6 +100,7 @@ new /obj/item/clothing/suit/armor/vest(src) new /obj/item/clothing/suit/storage/gearharness(src) new /obj/item/clothing/head/helmet(src) + new /obj/item/clothing/gloves/red(src) new /obj/item/device/radio/headset/headset_sec(src) new /obj/item/weapon/storage/belt/security(src) new /obj/item/weapon/flashbang(src) diff --git a/config/admins.txt b/config/admins.txt index d1915b81575..2bc78a67b3c 100644 --- a/config/admins.txt +++ b/config/admins.txt @@ -5,7 +5,7 @@ cajoes - Game Admin cib - Game Master compactninja - Game Master hawk_v3 - Game Admin -skymarshal - Game Master +headswe - Game Master iaryni - Game Master masterofapples - Game Admin megacaesar - Game Admin diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi index abead579d61741037b4daf81900adb618717463f..9ae49fadf1fd9cfb3d207e2fc1203a34fb2641b8 100644 GIT binary patch delta 3217 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 TKCOBDjR5KE8eXqL*hc&h_1Pk9 delta 3017 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
Fingerprints Criminal Status