/obj/item/documents name = "secret documents" desc = "\"Top Secret\" documents." icon = 'icons/obj/bureaucracy.dmi' icon_state = "docs_generic" inhand_icon_state = "paper" throwforce = 0 w_class = WEIGHT_CLASS_TINY throw_range = 1 throw_speed = 1 layer = MOB_LAYER pressure_resistance = 2 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/item/documents/nanotrasen desc = "\"Top Secret\" Nanotrasen documents, filled with complex diagrams and lists of names, dates and coordinates." icon_state = "docs_verified" /obj/item/documents/syndicate desc = "\"Top Secret\" documents detailing sensitive Syndicate operational intelligence." /obj/item/documents/syndicate/red name = "red secret documents" desc = "\"Top Secret\" documents detailing sensitive Syndicate operational intelligence. These documents are verified with a red wax seal." icon_state = "docs_red" /obj/item/documents/syndicate/blue name = "blue secret documents" desc = "\"Top Secret\" documents detailing sensitive Syndicate operational intelligence. These documents are verified with a blue wax seal." icon_state = "docs_blue" /obj/item/documents/syndicate/mining desc = "\"Top Secret\" documents detailing Syndicate plasma mining operations." /obj/item/documents/photocopy desc = "A copy of some top-secret documents. Nobody will notice they aren't the originals... right?" var/forgedseal = 0 var/copy_type = null /obj/item/documents/photocopy/New(loc, obj/item/documents/copy=null) ..() if(copy) copy_type = copy.type if(istype(copy, /obj/item/documents/photocopy)) // Copy Of A Copy Of A Copy var/obj/item/documents/photocopy/C = copy copy_type = C.copy_type /obj/item/documents/photocopy/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/toy/crayon/red) || istype(O, /obj/item/toy/crayon/blue)) if (forgedseal) to_chat(user, "You have already forged a seal on [src]!") else var/obj/item/toy/crayon/C = O name = "[C.crayon_color] secret documents" icon_state = "docs_[C.crayon_color]" forgedseal = C.crayon_color to_chat(user, "You forge the official seal with a [C.crayon_color] crayon. No one will notice... right?") update_appearance() /obj/item/inspector name = "\improper N-spect scanner" desc = "Central Command-issued inspection device. Performs inspections according to Nanotrasen protocols when activated, then \ prints an encrypted report regarding the maintenance of the station. Hard to replace." icon = 'icons/obj/device.dmi' icon_state = "inspector" worn_icon_state = "salestagger" inhand_icon_state = "electronic" throwforce = 0 w_class = WEIGHT_CLASS_TINY throw_range = 1 throw_speed = 1 /obj/item/inspector/attack_self(mob/user) . = ..() if(do_after(user, 5 SECONDS, target = user, progress=TRUE)) print_report() ///Prints out a report for bounty purposes, and plays a short audio blip. /obj/item/inspector/proc/print_report() // Create our report var/obj/item/paper/report/slip = new(get_turf(src)) slip.generate_report(get_area(src)) playsound(src, 'sound/machines/high_tech_confirm.ogg', 50, FALSE) /obj/item/paper/report name = "encrypted station inspection" desc = "Contains no information about the station's current status." icon = 'icons/obj/bureaucracy.dmi' icon_state = "slip" ///What area the inspector scanned when the report was made. Used to verify the security bounty. var/area/scanned_area show_written_words = FALSE /obj/item/paper/report/proc/generate_report(area/scan_area) scanned_area = scan_area icon_state = "slipfull" desc = "Contains detailed information about the station's current status." var/list/characters = list() characters += GLOB.alphabet characters += GLOB.alphabet_upper characters += GLOB.numerals info = random_string(rand(180,220), characters) info += "[prob(50) ? "=" : "=="]" //Based64 encoding /obj/item/paper/report/examine(mob/user) . = ..() if(scanned_area?.name) . += "\The [src] contains data on [scanned_area.name]." else if(scanned_area) . += "\The [src] contains data on a vague area on station, you should throw it away." else if(info) icon_state = "slipfull" . += "Wait a minute, this isn't an encrypted inspection report! You should throw it away." else . += "Wait a minute, this thing's blank! You should throw it away."