diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index d7b6ef50879..0375b0e1894 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -353,6 +353,12 @@ var/list/uplink_items = list() cost = 6 excludefrom = list(/datum/game_mode/nuclear) +/datum/uplink_item/stealthy_weapons/edagger + name = "Energy Dagger" + desc = "A dagger made of energy that looks and functions as a pen when off." + item = /obj/item/weapon/pen/edagger + cost = 2 + /datum/uplink_item/stealthy_weapons/foampistol name = "Toy Gun (with Stun Darts)" desc = "An innocent-looking toy pistol designed to fire foam darts. Comes loaded with riot-grade darts, to incapacitate a target." diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index 6e0f9b5e979..219449f1228 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -3,6 +3,7 @@ * Pens * Sleepy Pens * Parapens + * Edaggers */ @@ -48,13 +49,17 @@ if(!istype(M)) return - if(M.can_inject(user, 1)) - user << "You stab [M] with the pen." - if(!stealth) - M << "You feel a tiny prick!" - . = 1 + if(!force) + if(M.can_inject(user, 1)) + user << "You stab [M] with the pen." + if(!stealth) + M << "You feel a tiny prick!" + . = 1 - add_logs(user, M, "stabbed", src) + add_logs(user, M, "stabbed", src) + + else + . = ..() /* * Sleepypens @@ -77,4 +82,43 @@ reagents.add_reagent("morphine", 20) reagents.add_reagent("mutetoxin", 15) reagents.add_reagent("tirizene", 10) - ..() + ..() + +/* + * (Alan) Edaggers + */ +/obj/item/weapon/pen/edagger + origin_tech = "combat=3;syndicate=5" + attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") //these wont show up if the pen is off + var/on = 0 + +/obj/item/weapon/pen/edagger/attack_self(mob/living/user) + if(on) + on = 0 + force = initial(force) + w_class = initial(w_class) + name = initial(name) + hitsound = initial(hitsound) + embed_chance = initial(embed_chance) + throwforce = initial(throwforce) + playsound(user, 'sound/weapons/saberoff.ogg', 5, 1) + user << "[src] can now be concealed." + else + on = 1 + force = 18 + w_class = 3 + name = "energy dagger" + hitsound = 'sound/weapons/blade1.ogg' + embed_chance = 100 //rule of cool + throwforce = 35 + playsound(user, 'sound/weapons/saberon.ogg', 5, 1) + user << "[src] is now active." + update_icon() + +/obj/item/weapon/pen/edagger/update_icon() + if(on) + icon_state = "edagger" + item_state = "edagger" + else + icon_state = initial(icon_state) //looks like a normal pen when off. + item_state = initial(item_state) diff --git a/html/changelogs/Miauw-edaggers.yml b/html/changelogs/Miauw-edaggers.yml new file mode 100644 index 00000000000..2de9a6f5b65 --- /dev/null +++ b/html/changelogs/Miauw-edaggers.yml @@ -0,0 +1,7 @@ +#working traitor items are power creep +author: Miauw + +delete-after: True + +changes: + - tweak: "Edaggers actually work now and have been buffed to 18 brute and 2 TC."