diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index 1f69a92d3f8..2c8e2e1fd1b 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -463,7 +463,13 @@ text = replacetext(text, "\[signfont\]", "") text = replacetext(text, "\[/signfont\]", "") if(sign) - text = replacetext(text, "\[sign\]", "[user ? user.real_name : "Anonymous"]") + if(istype(P, /obj/item/pen/chameleon)) // if we are using chameleon pen use fake name from the pen + var/obj/item/pen/chameleon/chameleon_pen = P + add_attack_logs(user, "paper", "Has signed paper as [chameleon_pen.forge_name]") + // small tip for a player if the left forge_name empty + text = replacetext(text, "\[sign\]", "[chameleon_pen.forge_name ? chameleon_pen.forge_name : "No name was provided"]") + else + text = replacetext(text, "\[sign\]", "[user ? user.real_name : "Anonymous"]") if(fields) text = replacetext(text, "\[field\]", "") if(format) diff --git a/code/datums/uplink_items/uplink_general.dm b/code/datums/uplink_items/uplink_general.dm index 18a1484f669..956fa75b400 100644 --- a/code/datums/uplink_items/uplink_general.dm +++ b/code/datums/uplink_items/uplink_general.dm @@ -494,13 +494,14 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) /datum/uplink_item/stealthy_tools category = "Stealth and Camouflage Items" -/datum/uplink_item/stealthy_tools/chameleon_stamp - name = "Chameleon Stamp" - desc = "A stamp that can be activated to imitate an official Nanotrasen Stamp. The disguised stamp will work exactly like the real stamp and will allow you to forge false documents to gain access or equipment; \ - it can also be used in a washing machine to forge clothing." - reference = "CHST" - item = /obj/item/stamp/chameleon - cost = 1 +/datum/uplink_item/stealthy_tools/forgers_kit + name = "Forger's Kit" + desc = "A set consisting of a stamp and a special pen. The stamp can be activated to imitate an official Nanotrasen Stamp, \ + allowing you to forge false documents for access or equipment, and can also be used in a washing machine to create counterfeit clothing. \ + The included pen lets you create fake signatures, further enhancing your forgery capabilities." + reference = "FGK" + item = /obj/item/storage/box/syndie_kit/forgers_kit + cost = 10 surplus = 35 /datum/uplink_item/stealthy_tools/chameleonflag diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index c20b7ffcd2a..9ef1d21384e 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -570,3 +570,10 @@ /obj/item/storage/box/syndie_kit/decoy/populate_contents() for(var/i in 1 to 5) new /obj/item/grenade/firecracker/decoy(src) + +/obj/item/storage/box/syndie_kit/forgers_kit + name = "\improper Forger's kit" + +/obj/item/storage/box/syndie_kit/forgers_kit/populate_contents() + new /obj/item/stamp/chameleon(src) + new /obj/item/pen/chameleon(src) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index d617653ab1c..0f1f530f16e 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -39,6 +39,7 @@ var/contact_poison // Reagent ID to transfer on contact var/contact_poison_volume = 0 var/contact_poison_poisoner = null + /// Width of the window that opens var/paper_width = 600 /// Height of the window that opens @@ -702,7 +703,7 @@ name = "mission briefing" info = {"

Mission Details:



- Greetings, agent. You have been assigned to a newly constructed listening post hidden in Nanotrasen-controlled space. + Greetings, agent. You have been assigned to a newly constructed listening post hidden in Nanotrasen-controlled space. You are to monitor transmissions from the Nanotrasen space stations in the system, as well as those from potentially significant ships passing through the system.

Urgent reports are to be relayed immeditely to your handler, otherwise, condense significant happenings into packets to be sent out at scheduled intervals, to minimise the chances your transmissions being detected. @@ -755,7 +756,7 @@

* A terror spider outbreak was reported on the NSS Cerebron. Early discovery and an unusual lack of coordiation on the part of the spiders allowed the outbreak to be rapidly contained.

- * The NSS Farragus's communications are flooded with garbled reports about "Ei Nath" - + * The NSS Farragus's communications are flooded with garbled reports about "Ei Nath" - piecing together fragments of communications suggests that this "Ei Nath" is a highly dangerous individual whose mere pressence causes great fear among Nanotrasen personnel. Attempt recruitment?"} /obj/item/paper/listening_post_report_6 diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index 664dc667eeb..0021507a6f1 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -338,3 +338,17 @@ P.contact_poison_poisoner = user.name add_attack_logs(user, P, "Poison pen'ed") to_chat(user, "You apply the poison to [P].") + +// MARK: CHAMELEON PEN +/obj/item/pen/chameleon + var/forge_name + +/obj/item/pen/chameleon/attack_self(mob/living/user) + if(!iscarbon(user)) + return + + if(!Adjacent(user) || user.incapacitated()) + return + + forge_name = tgui_input_text(user, "Enter the name of the person whose signature you want to forge", "Forge name", max_length = MAX_NAME_LEN) +