Skip to content

Commit

Permalink
Fountain pen (#3727)
Browse files Browse the repository at this point in the history
Adds a Luxurious fountain pen to the game. Currently spawns on the right
ear of high ranking command staff as well as the corporate liaison.

What makes this pen special besides looking fancy?

![dreamseeker_ayCdkAmUBg](https://github.com/cmss13-devs/cmss13/assets/24533979/a5e3638f-2544-4bbd-a9da-6a4ffeca9f02)

![dreamseeker_bdX1Mp6lOy](https://github.com/cmss13-devs/cmss13/assets/24533979/28bbae7d-d364-42af-8a9c-7dce80f56840)

New colors to write with included with this amazon pen!! I think this
will enable deeper RP of having something be signed with an X color
meaning it was signed by command staff (or someone posing as command).


To-do that I haven't done yet because I haven't found the code and if I
don't do this before it is merged I'll just make a new PR for it so
don't let it block a merge:

- [x] Add a mob sprite to add these on to people's helmets so that a
marine can look fancy and decorated by receiving a pen. Sprites exist
for this just haven't implemented it yet.

:cl: Hopek, Gul Dreggrod
add: Adds a Luxurious fountain pen to the game. Currently spawns on the
right ear of high ranking command staff. Sprited by Gul Dreggrod.
/:cl:
  • Loading branch information
Hopekz committed Jul 4, 2023
1 parent c7075bd commit b5507f5
Show file tree
Hide file tree
Showing 9 changed files with 38 additions and 1 deletion.
19 changes: 19 additions & 0 deletions code/game/objects/items/tools/misc_tools.dm
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,25 @@
desc = "It's an invisible pen marker."
pen_colour = "white"

/obj/item/tool/pen/fountain
desc = "A luxurious fountain pen, embossed with gold accents. Its intricate mechanics allow the user to switch between various ink colors with a simple twist."
name = "fountain pen"
icon_state = "fountain_pen"
item_state = "fountain_pen"
matter = list("metal" = 20, "gold" = 10)
var/static/list/colour_list = list("red", "blue", "green", "yellow", "purple", "pink", "brown", "black", "orange") // Can add more colors as required
var/current_colour_index = 1

/obj/item/tool/pen/fountain/attack_self(mob/living/carbon/human/user)
if(on)
current_colour_index = (current_colour_index % length(colour_list)) + 1
pen_colour = colour_list[current_colour_index]
balloon_alert(user,"you twist the pen and change the ink color to [pen_colour].")
if(clicky)
playsound(user.loc, 'sound/items/pen_click_on.ogg', 100, 1, 5)
update_pen_state()
else
..()

/obj/item/tool/pen/attack(mob/M as mob, mob/user as mob)
if(!ismob(M))
Expand Down
5 changes: 5 additions & 0 deletions code/modules/client/preferences_gear.dm
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,11 @@ var/global/list/gear_datums_by_name = list()
display_name = "Pen, red"
path = /obj/item/tool/pen/red

/datum/gear/paperwork/pen_fountain
display_name = "Pen, fountain"
path = /obj/item/tool/pen/fountain
cost = 3

/datum/gear/paperwork/paper
display_name = "Sheet of paper"
path = /obj/item/paper
Expand Down
4 changes: 3 additions & 1 deletion code/modules/clothing/head/head.dm
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,9 @@
/obj/item/prop/helmetgarb/lucky_feather = "lucky_feather",
/obj/item/prop/helmetgarb/lucky_feather/blue = "lucky_feather_blue",
/obj/item/prop/helmetgarb/lucky_feather/purple = "lucky_feather_purple",
/obj/item/prop/helmetgarb/lucky_feather/yellow = "lucky_feather_yellow")
/obj/item/prop/helmetgarb/lucky_feather/yellow = "lucky_feather_yellow",
/obj/item/tool/pen/fountain = "fountainpen",
)
var/storage_slots = 1
var/storage_slots_reserved_for_garb = 1
var/storage_max_w_class = SIZE_TINY
Expand Down
1 change: 1 addition & 0 deletions code/modules/clothing/head/helmet.dm
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,7 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(
/obj/item/prop/helmetgarb/riot_shield = "helmet_riot_shield",
/obj/item/attachable/flashlight = HELMET_GARB_RELAY_ICON_STATE,
/obj/item/prop/helmetgarb/chaplain_patch = "chaplain_patch",
/obj/item/tool/pen/fountain = "fountainpen",

// MEDICAL
/obj/item/stack/medical/bruise_pack ="brutepack (bandages)",
Expand Down
1 change: 1 addition & 0 deletions code/modules/gear_presets/uscm_medical.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
back_item = /obj/item/storage/backpack/marine

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/cmo(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chief_medical_officer(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/latex(new_human), WEAR_HANDS)
Expand Down
2 changes: 2 additions & 0 deletions code/modules/gear_presets/uscm_police.dm
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@
back_item = /obj/item/storage/backpack/security

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/cmpcom(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/warrant(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine(new_human), WEAR_HANDS)
Expand All @@ -184,6 +185,7 @@
new_human.equip_to_slot_or_del(new /obj/item/device/taperecorder(new_human), WEAR_L_STORE)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/general/large(new_human), WEAR_R_STORE)


//*****************************************************************************************************/

/datum/equipment_preset/uscm_ship/uscm_police/riot_mp
Expand Down
7 changes: 7 additions & 0 deletions code/modules/gear_presets/uscm_ship.dm
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@
//back_item = /obj/item/storage/backpack

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mcl(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new back_item(new_human), WEAR_BACK)
Expand Down Expand Up @@ -218,6 +219,7 @@
back_item = /obj/item/storage/backpack/marine/tech

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/ce(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/ce(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/yellow(new_human), WEAR_HANDS)
Expand Down Expand Up @@ -342,6 +344,7 @@
back_item = /obj/item/storage/backpack/industrial

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/ro(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/ro_suit(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/yellow(new_human), WEAR_HANDS)
Expand Down Expand Up @@ -452,6 +455,7 @@
sidearmpath = /obj/item/storage/belt/gun/m4a3/vp78

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mcom/cdrcom(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/bridge(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/service(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/dress/commander(new_human), WEAR_FEET)
Expand Down Expand Up @@ -519,6 +523,7 @@
back_item = /obj/item/storage/backpack/marine

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mcom/cdrcom(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/exec(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/service(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/dress(new_human), WEAR_FEET)
Expand Down Expand Up @@ -552,6 +557,7 @@
back_item = /obj/item/storage/backpack/marine

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mcom(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/bridge(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/dress(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m4a3/mod88(new_human), WEAR_WAIST)
Expand Down Expand Up @@ -591,6 +597,7 @@
new_human.equip_to_slot_or_del(new back_item(new_human), WEAR_BACK)

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mcom/cdrcom(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/tool/pen/fountain(new_human), WEAR_R_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/bridge(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m44/custom(new_human), WEAR_WAIST)
Expand Down
Binary file modified icons/mob/humans/onmob/helmet_garb.dmi
Binary file not shown.
Binary file modified icons/obj/items/paper.dmi
Binary file not shown.

0 comments on commit b5507f5

Please sign in to comment.