Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fountain pen #3727

Merged
merged 14 commits into from
Jul 4, 2023
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"
harryob marked this conversation as resolved.
Show resolved Hide resolved
icon_state = "fountain_pen"
item_state = "fountain_pen"
matter = list("metal" = 20, "gold" = 10)
var/list/colour_list = list("red", "blue", "green", "yellow", "purple", "pink", "brown", "black", "orange") // Can add more colors as required
Hopekz marked this conversation as resolved.
Show resolved Hide resolved
var/current_colour_index = 1
harryob marked this conversation as resolved.
Show resolved Hide resolved

/obj/item/tool/pen/fountain/attack_self(mob/living/carbon/human/user)
harryob marked this conversation as resolved.
Show resolved Hide resolved
if(on)
current_colour_index = (current_colour_index % length(colour_list)) + 1
pen_colour = colour_list[current_colour_index]
to_chat(user, SPAN_WARNING("You twist the pen and change the ink color to [pen_colour]."))
Hopekz marked this conversation as resolved.
Show resolved Hide resolved
if(clicky)
playsound(user.loc, "sound/items/pen_click_on.ogg", 100, 1, 5)
Hopekz marked this conversation as resolved.
Show resolved Hide resolved
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 @@ -217,6 +218,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 @@ -341,6 +343,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 @@ -451,6 +454,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 @@ -518,6 +522,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 @@ -551,6 +556,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 @@ -590,6 +596,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.