[MIRROR] Adds pen clicking, changes most pen typechecks into writing implement checks (#28356)

* Adds pen clicking, changes most pen typechecks into writing implement checks (#84186)

## About The Pull Request

Fixes #84170
Adds pen clicking and changes some of edagger and pendriver code to use
it instead.
Also replaces most pen typechecks to writing implement checks where it
makes sense, so now you can rename things with everything you can write
with (crayons)

![3d6NwcATNp](https://github.com/tgstation/tgstation/assets/44720187/f6b3ba2f-f3de-4e40-827f-2bad153a92f4)

Twisting pen caps (for traitor uplinks) has been moved to ctrl + click
instead.

* Adds pen clicking, changes most pen typechecks into writing implement checks

---------

Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
This commit is contained in:
SkyratBot
2024-06-25 16:19:05 +05:30
committed by GitHub
co-authored by SmArtKar
parent 29e5ad2871
commit 81f3db19f8
31 changed files with 84 additions and 49 deletions
@@ -36,7 +36,7 @@
return ..()
/obj/item/implantcase/attackby(obj/item/used_item, mob/living/user, params)
if(istype(used_item, /obj/item/pen))
if(IS_WRITING_UTENSIL(used_item))
if(!user.can_write(used_item))
return
var/new_name = tgui_input_text(user, "What would you like the label to be?", name, max_length = MAX_NAME_LEN)
@@ -45,7 +45,7 @@
to_chat(user, span_warning("[src] fails to implant [target]."))
/obj/item/implanter/attackby(obj/item/I, mob/living/user, params)
if(!istype(I, /obj/item/pen))
if(IS_WRITING_UTENSIL(I))
return ..()
if(!user.can_write(I))
return