mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-18 10:33:30 +01:00
Initial version, from TG
Ports Poison Pen from TG: https://github.com/tgstation/tgstation/pull/23778 Adds a HoP/Cargotech/QM-only traitor pen that can be used on paper to poison it. Picking up poisoned paper without gloves transfers the poison through your skin, into your bloodstream. Subsequent people to pick it up are not affected. The poison is 15 units of the nerve agent, sarin. This is enough to kill you in a couple of minutes. It is quite obvious. The pen looks like a normal pen, costs 5 TC, and has 3 uses. It cannot be used as a direct weapon. It has to be applied to paper to be effective. 🆑 Kyep rscadd: Added Poison Pen, a stealthy way of applying a contact-based poison to paper. Available to Syndicate HoPs, QMs, and Cargo Techs. /🆑
This commit is contained in:
@@ -31,6 +31,8 @@
|
||||
var/offset_y[0] //usage by the photocopier
|
||||
var/rigged = 0
|
||||
var/spam_flag = 0
|
||||
var/contact_poison // Reagent ID to transfer on contact
|
||||
var/contact_poison_volume = 0
|
||||
|
||||
var/const/deffont = "Verdana"
|
||||
var/const/signfont = "Times New Roman"
|
||||
@@ -278,6 +280,8 @@
|
||||
info += t // Oh, he wants to edit to the end of the file, let him.
|
||||
updateinfolinks()
|
||||
|
||||
i.on_write(src,usr)
|
||||
|
||||
show_content(usr, forceshow = 1, infolinks = 1)
|
||||
|
||||
update_icon()
|
||||
@@ -653,3 +657,12 @@
|
||||
/obj/item/weapon/paper/evilfax/proc/evilpaper_selfdestruct()
|
||||
visible_message("<span class='danger'>[src] spontaneously catches fire, and burns up!</span>")
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/paper/pickup(user)
|
||||
if(contact_poison && ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/obj/item/clothing/gloves/G = H.gloves
|
||||
if(!istype(G) || G.transfer_prints)
|
||||
H.reagents.add_reagent(contact_poison, contact_poison_volume)
|
||||
contact_poison = null
|
||||
..()
|
||||
@@ -182,3 +182,21 @@
|
||||
else
|
||||
icon_state = initial(icon_state) //looks like a normal pen when off.
|
||||
item_state = initial(item_state)
|
||||
|
||||
/obj/item/proc/on_write(obj/item/weapon/paper/P, mob/user)
|
||||
return
|
||||
|
||||
/obj/item/weapon/pen/poison
|
||||
var/uses_left = 3
|
||||
|
||||
/obj/item/weapon/pen/poison/on_write(obj/item/weapon/paper/P, mob/user)
|
||||
if(P.contact_poison_volume)
|
||||
to_chat(user, "<span class='warning'>[P] is already coated.</span>")
|
||||
else if(uses_left)
|
||||
uses_left--
|
||||
P.contact_poison = "sarin"
|
||||
P.contact_poison_volume = 15
|
||||
add_logs(user, P, "used poison pen on")
|
||||
to_chat(user, "<span class='warning'>You apply the poison to [P].</span>")
|
||||
else
|
||||
to_chat(user, "<span class='warning'>[src] clicks. It seems to be depleted.</span>")
|
||||
Reference in New Issue
Block a user