diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm
index 04a8b9b2c5..7f7bdbca03 100644
--- a/code/game/objects/items/weapons/cigs_lighters.dm
+++ b/code/game/objects/items/weapons/cigs_lighters.dm
@@ -471,6 +471,17 @@ CIGARETTE PACKETS ARE IN FANCY.DM
item_state = "cobpipe"
chem_volume = 35
+/obj/item/clothing/mask/smokable/pipe/bonepipe
+ name = "Europan bone pipe"
+ desc = "A smoking pipe made out of the bones of the Europan bone whale."
+ description_fluff = "While most commonly associated with bone charms, bones from various sea creatures on Europa are used in a \
+ variety of goods, such as this smoking pipe. While smoking in submarines is often an uncommon occurrence, due to a lack of \
+ available air or space, these pipes are a common sight in the many stations of Europa. Higher-quality pipes typically have \
+ scenes etched into their bones, and can tell the story of their owner's time on Europa."
+ icon_state = "bonepipe"
+ item_state = "bonepipe"
+ chem_volume = 30
+
///////////////
//CUSTOM CIGS//
///////////////
diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm
index 18d0ef948f..387102efbd 100644
--- a/code/game/objects/items/weapons/storage/boxes.dm
+++ b/code/game/objects/items/weapons/storage/boxes.dm
@@ -115,6 +115,18 @@
icon_state = "sterile"
starts_with = list(/obj/item/clothing/mask/surgical = 7)
+/obj/item/weapon/storage/box/masks/white
+ name = "box of sterile masks"
+ desc = "This box contains masks of sterility."
+ icon_state = "sterile"
+ starts_with = list(/obj/item/clothing/mask/surgical/white = 7)
+
+/obj/item/weapon/storage/box/masks/dust
+ name = "box of dust masks"
+ desc = "This box contains dust masks. Breathe easy."
+ icon_state = "sterile"
+ starts_with = list(/obj/item/clothing/mask/surgical/dust = 7)
+
/obj/item/weapon/storage/box/syringes
name = "box of syringes"
desc = "A box full of syringes."
diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories.dm b/code/modules/client/preference_setup/loadout/loadout_accessories.dm
index 5a8728cf5b..33ac34128a 100644
--- a/code/modules/client/preference_setup/loadout/loadout_accessories.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_accessories.dm
@@ -98,6 +98,18 @@
ties[initial(tie_type.name)] = tie_type
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(ties))
+/datum/gear/accessory/bowtie
+ display_name = "bowtie selection"
+ path = /obj/item/clothing/accessory/bowtie
+ cost = 1
+
+/datum/gear/accessory/bowtie/New()
+ ..()
+ var/list/bowties = list()
+ for(var/obj/item/clothing/accessory/bowtie_type as anything in typesof(/obj/item/clothing/accessory/bowtie))
+ bowties[initial(bowtie_type.name)] = bowtie_type
+ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(bowties))
+
/datum/gear/accessory/scarf
display_name = "scarf selection"
path = /obj/item/clothing/accessory/scarf
@@ -319,3 +331,24 @@
var/obj/item/clothing/accessory/pridepin_type = pridepin
pridepins[initial(pridepin_type.name)] = pridepin_type
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(pridepins))
+<<<<<<< HEAD
+=======
+
+/datum/gear/accessory/badge
+ display_name = "sheriff badge (Security)"
+ path = /obj/item/clothing/accessory/badge/holo/sheriff
+ allowed_roles = list("Security Officer","Detective","Head of Security","Warden")
+
+/datum/gear/accessory/corpbadge
+ display_name = "investigator holobadge (IAA)"
+ path = /obj/item/clothing/accessory/badge/holo/investigator
+ allowed_roles = list("Internal affairs agent")
+
+/datum/gear/accessory/pressbadge
+ display_name = "corporate press pass"
+ path = /obj/item/clothing/accessory/badge/press
+
+/datum/gear/accessory/pressbadge
+ display_name = "freelance press pass"
+ path = /obj/item/clothing/accessory/badge/press/independent
+>>>>>>> 5d24d5b2c3... Merge pull request #12631 from GhostActual/aurora-port-1
diff --git a/code/modules/client/preference_setup/loadout/loadout_mask.dm b/code/modules/client/preference_setup/loadout/loadout_mask.dm
index a313f3023d..af33ec7787 100644
--- a/code/modules/client/preference_setup/loadout/loadout_mask.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_mask.dm
@@ -22,6 +22,19 @@
path = /obj/item/clothing/mask/surgical
cost = 2
+/datum/gear/mask/sterile/white
+ display_name = "white sterile mask"
+ path = /obj/item/clothing/mask/surgical/white
+ cost = 2
+
+/datum/gear/mask/sterile/white/dust
+ display_name = "dust mask"
+ path = /obj/item/clothing/mask/surgical/dust
+
+/datum/gear/mask/sterile/white/cloth
+ display_name = "cloth face mask"
+ path = /obj/item/clothing/mask/surgical/cloth
+
/datum/gear/mask/plaguedoctor
display_name = "plague doctor's mask"
path = /obj/item/clothing/mask/gas/plaguedoctor
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
index 44715c2576..1ea6bdebfb 100644
--- a/code/modules/clothing/head/jobs.dm
+++ b/code/modules/clothing/head/jobs.dm
@@ -5,6 +5,13 @@
desc = "It's a hat used by chefs to keep hair out of your food. Judging by the food in the mess, they don't work."
icon_state = "chefhat"
+/obj/item/clothing/head/hairnet
+ name = "hairnet"
+ desc = "A hairnet used to keep the hair out of the way and out of the food."
+ sprite_sheets = list(
+ SPECIES_TAJARAN = 'icons/inventory/head/mob_tajaran.dmi'
+ )
+
//Captain
/obj/item/clothing/head/caphat
name = "site manager's hat"
diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm
index 5971e072e8..f40deb8f6b 100644
--- a/code/modules/clothing/masks/miscellaneous.dm
+++ b/code/modules/clothing/masks/miscellaneous.dm
@@ -63,6 +63,24 @@
adjust_mask(usr)
+/obj/item/clothing/mask/surgical/white
+ icon_state = "sterilew"
+ item_state_slots = list(slot_r_hand_str = "sterilew", slot_l_hand_str = "sterilew")
+
+/obj/item/clothing/mask/surgical/dust
+ name = "dust mask"
+ desc = "A dust mask designed to protect the wearer against construction and/or custodial particulate."
+ icon_state = "dust"
+ item_state_slots = list(slot_r_hand_str = "dust", slot_l_hand_str = "dust")
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 30, rad = 0)
+
+/obj/item/clothing/mask/surgical/cloth
+ name = "cloth mask"
+ desc = "A cloth mask designed to protect the wearer against allergens, illnesses, and social interaction."
+ icon_state = "cloth"
+ item_state_slots = list(slot_r_hand_str = "cloth", slot_l_hand_str = "cloth")
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 20, rad = 0)
+
/obj/item/clothing/mask/fakemoustache
name = "fake moustache"
desc = "Warning: moustache is fake."
diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm
index ec9ed3221e..88caaa83b9 100644
--- a/code/modules/clothing/under/accessories/accessory.dm
+++ b/code/modules/clothing/under/accessories/accessory.dm
@@ -157,6 +157,20 @@
desc = "A neosilk clip-on tie. This one is disgusting."
icon_state = "horribletie"
+/obj/item/clothing/accessory/bowtie
+ name = "red bow tie"
+ desc = "Snazzy!"
+ icon_state = "redbowtie"
+ slot = ACCESSORY_SLOT_TIE
+
+/obj/item/clothing/accessory/bowtie/black
+ name = "black bow tie"
+ icon_state = "blackbowtie"
+
+/obj/item/clothing/accessory/bowtie/white
+ name = "white bow tie"
+ icon_state = "whitebowtie"
+
/obj/item/clothing/accessory/stethoscope
name = "stethoscope"
desc = "An outdated medical apparatus for listening to the sounds of the human body. It also makes you look like you know what you're doing."
diff --git a/code/modules/clothing/under/accessories/badges.dm b/code/modules/clothing/under/accessories/badges.dm
index 75e8dc8e4d..a9839f0249 100644
--- a/code/modules/clothing/under/accessories/badges.dm
+++ b/code/modules/clothing/under/accessories/badges.dm
@@ -6,19 +6,14 @@
/obj/item/clothing/accessory/badge
name = "detective's badge"
- desc = "Security Department detective's badge, made from gold."
- icon_state = "badge"
+ desc = "A corporate security badge, made from gold and set on false leather."
+ icon_state = "marshalbadge"
slot_flags = SLOT_BELT | SLOT_TIE
slot = ACCESSORY_SLOT_MEDAL
var/stored_name
var/badge_string = "Corporate Security"
-/obj/item/clothing/accessory/badge/old
- name = "faded badge"
- desc = "A faded badge, backed with leather. It bears the emblem of the Forensic division."
- icon_state = "badge_round"
-
/obj/item/clothing/accessory/badge/proc/set_name(var/new_name)
stored_name = new_name
name = "[initial(name)] ([stored_name])"
@@ -26,7 +21,6 @@
/obj/item/clothing/accessory/badge/proc/set_desc(var/mob/living/carbon/human/H)
/obj/item/clothing/accessory/badge/attack_self(mob/user as mob)
-
if(!stored_name)
to_chat(user, "You polish your old badge fondly, shining up the surface.")
set_name(user.real_name)
@@ -42,26 +36,45 @@
if(isliving(user))
user.visible_message("[user] invades [M]'s personal space, thrusting [src] into their face insistently.","You invade [M]'s personal space, thrusting [src] into their face insistently.")
user.do_attack_animation(M)
- user.setClickCooldown(DEFAULT_QUICK_COOLDOWN) //to prevent spam
+ user.setClickCooldown(DEFAULT_QUICK_COOLDOWN) //NO SPAM
-// Sheriff Badge (toy)
-/obj/item/clothing/accessory/badge/sheriff
- name = "sheriff badge"
- desc = "This town ain't big enough for the two of us, pardner."
- icon_state = "sheriff"
- item_state = "goldbadge"
+// General Badges
+/obj/item/clothing/accessory/badge/old
+ name = "faded badge"
+ desc = "A faded badge, backed with leather."
+ icon_state = "badge_round"
-/obj/item/clothing/accessory/badge/sheriff/attack_self(mob/user as mob)
- user.visible_message("[user] shows their sheriff badge. There's a new sheriff in town!",\
- "You flash the sheriff badge to everyone around you!")
+/obj/item/clothing/accessory/badge/idbadge/nt
+ name = "\improper NT ID badge"
+ desc = "A descriptive identification badge with the holder's credentials. This one has red marks with the NanoTrasen logo on it."
+ icon_state = "ntbadge"
+ badge_string = null
-/obj/item/clothing/accessory/badge/sheriff/attack(mob/living/carbon/human/M, mob/living/user)
- if(isliving(user))
- user.visible_message("[user] invades [M]'s personal space, the sheriff badge into their face!.","You invade [M]'s personal space, thrusting the sheriff badge into their face insistently.")
- user.do_attack_animation(M)
- user.setClickCooldown(DEFAULT_QUICK_COOLDOWN) //to prevent spam
+/obj/item/clothing/accessory/badge/press
+ name = "corporate press pass"
+ desc = "A corporate reporter's pass, emblazoned with the NanoTrasen logo."
+ icon_state = "pressbadge"
+ item_state = "pbadge"
+ badge_string = "Corporate Reporter"
+ w_class = ITEMSIZE_TINY
-//.Holobadges.
+ drop_sound = 'sound/items/drop/rubber.ogg'
+ pickup_sound = 'sound/items/pickup/rubber.ogg'
+
+/obj/item/clothing/accessory/badge/press/independent
+ name = "press pass"
+ desc = "A freelance journalist's pass."
+ icon_state = "pressbadge-i"
+ badge_string = "Freelance Journalist"
+
+/obj/item/clothing/accessory/badge/press/plastic
+ name = "plastic press pass"
+ desc = "A journalist's 'pass' shaped, for whatever reason, like a security badge. It is made of plastic."
+ icon_state = "pbadge"
+ badge_string = "Sicurity Journelist"
+ w_class = ITEMSIZE_SMALL
+
+// Holobadges
/obj/item/clothing/accessory/badge/holo
name = "holobadge"
desc = "This glowing blue badge marks the holder as THE LAW."
@@ -110,10 +123,17 @@
name = "holobadge box"
desc = "A box claiming to contain holobadges."
starts_with = list(
- /obj/item/clothing/accessory/badge/holo = 4,
+ /obj/item/clothing/accessory/badge/holo/officer = 2,
+ /obj/item/clothing/accessory/badge/holo = 2,
/obj/item/clothing/accessory/badge/holo/cord = 2
)
+/obj/item/clothing/accessory/badge/holo/officer
+ name = "officer's badge"
+ desc = "A bronze corporate security badge. Stamped with the words 'Security Officer.'"
+ icon_state = "bronzebadge"
+ slot_flags = SLOT_TIE | SLOT_BELT
+
/obj/item/clothing/accessory/badge/holo/warden
name = "warden's holobadge"
desc = "A silver corporate security badge. Stamped with the words 'Warden.'"
@@ -122,7 +142,7 @@
/obj/item/clothing/accessory/badge/holo/hos
name = "head of security's holobadge"
- desc = "An immaculately polished gold security badge. Labeled 'Head of Security.'"
+ desc = "An immaculately polished gold security badge. Stamped with the words 'Head of Security.'"
icon_state = "goldbadge"
slot_flags = SLOT_TIE | SLOT_BELT
@@ -132,20 +152,48 @@
icon_state = "marshalbadge"
slot_flags = SLOT_TIE | SLOT_BELT
+/obj/item/clothing/accessory/badge/holo/investigator
+ name = "\improper investigator holobadge"
+ desc = "This badge marks the holder as an investigative agent."
+ icon_state = "invbadge"
+ badge_string = "Corporate Investigator"
+ slot_flags = SLOT_TIE | SLOT_BELT
+
+/obj/item/clothing/accessory/badge/holo/sheriff
+ name = "sheriff badge"
+ desc = "A star-shaped brass badge denoting who the law is around these parts."
+ icon_state = "sheriff"
+ slot_flags = SLOT_TIE | SLOT_BELT
+
/obj/item/weapon/storage/box/holobadge/hos
name = "holobadge box"
desc = "A box claiming to contain holobadges."
starts_with = list(
- /obj/item/clothing/accessory/badge/holo = 2,
+ /obj/item/clothing/accessory/badge/holo/officer = 2,
/obj/item/clothing/accessory/badge/holo/warden = 1,
/obj/item/clothing/accessory/badge/holo/detective = 2,
/obj/item/clothing/accessory/badge/holo/hos = 1,
/obj/item/clothing/accessory/badge/holo/cord = 1
-
)
-// Synthmorph bag / Corporation badges. Primarily used on the robobag, but can be worn. Default is NT.
+// Sheriff Badge (toy)
+/obj/item/clothing/accessory/badge/sheriff
+ name = "sheriff badge"
+ desc = "This town ain't big enough for the two of us, pardner."
+ icon_state = "sheriff_toy"
+ item_state = "sheriff_toy"
+/obj/item/clothing/accessory/badge/sheriff/attack_self(mob/user as mob)
+ user.visible_message("[user] shows their sheriff badge. There's a new sheriff in town!",\
+ "You flash the sheriff badge to everyone around you!")
+
+/obj/item/clothing/accessory/badge/sheriff/attack(mob/living/carbon/human/M, mob/living/user)
+ if(isliving(user))
+ user.visible_message("[user] invades [M]'s personal space, the sheriff badge into their face!.","You invade [M]'s personal space, thrusting the sheriff badge into their face insistently.")
+ user.do_attack_animation(M)
+ user.setClickCooldown(DEFAULT_QUICK_COOLDOWN) //NO SPAM
+
+// Synthmorph bag / Corporation badges. Primarily used on the robobag, but can be worn. Default is NT.
/obj/item/clothing/accessory/badge/corporate_tag
name = "NanoTrasen Badge"
desc = "A plain metallic plate that might denote the wearer as a member of NanoTrasen."
diff --git a/code/modules/clothing/under/accessories/holster.dm b/code/modules/clothing/under/accessories/holster.dm
index b3a33e5d4b..08dd897578 100644
--- a/code/modules/clothing/under/accessories/holster.dm
+++ b/code/modules/clothing/under/accessories/holster.dm
@@ -151,6 +151,9 @@
desc = "A worn-out handgun holster. Perfect for concealed carry"
icon_state = "holster"
+/obj/item/clothing/accessory/holster/armpit/black
+ icon_state = "holster_b"
+
/obj/item/clothing/accessory/holster/waist
name = "waist holster"
desc = "A handgun holster. Made of expensive leather."
@@ -158,15 +161,26 @@
overlay_state = "holster_low"
concealed_holster = 0
+/obj/item/clothing/accessory/holster/waist/black
+ icon_state = "holster_b_low"
+
/obj/item/clothing/accessory/holster/hip
name = "hip holster"
- desc = "A handgun holster slung low on the hip, draw pardner!"
+ desc = "No one dared to ask his business, no one dared to make a slip. The stranger there among them had a big iron on his hip."
icon_state = "holster_hip"
concealed_holster = 0
+/obj/item/clothing/accessory/holster/hip/black
+ desc = "A handgun holster slung low on the hip, draw pardner!"
+ icon_state = "holster_b_hip"
+
/obj/item/clothing/accessory/holster/leg
name = "leg holster"
- desc = "A tacticool handgun holster. Worn on the upper leg."
+ desc = "A drop leg holster made of a durable synthetic leather."
icon_state = "holster_leg"
overlay_state = "holster_leg"
concealed_holster = 0
+
+/obj/item/clothing/accessory/holster/leg/black
+ desc = "A tacticool handgun holster. Worn on the upper leg."
+ icon_state = "holster_b_leg"
\ No newline at end of file
diff --git a/code/modules/economy/vending_machines.dm b/code/modules/economy/vending_machines.dm
index b6481bd4f2..7f3a1f9865 100644
--- a/code/modules/economy/vending_machines.dm
+++ b/code/modules/economy/vending_machines.dm
@@ -1254,6 +1254,7 @@
/obj/item/clothing/suit/chef = 5,
/obj/item/clothing/suit/chef/classic = 5,
/obj/item/clothing/head/chefhat = 5,
+ /obj/item/clothing/head/hairnet = 5,
/obj/item/clothing/under/waiter = 5,
/obj/item/clothing/under/sundress = 1
)
diff --git a/icons/inventory/face/item.dmi b/icons/inventory/face/item.dmi
index fb8c950859..d1ea8a3fe9 100644
Binary files a/icons/inventory/face/item.dmi and b/icons/inventory/face/item.dmi differ
diff --git a/icons/inventory/face/mob.dmi b/icons/inventory/face/mob.dmi
index 83095f8a10..89a210f844 100644
Binary files a/icons/inventory/face/mob.dmi and b/icons/inventory/face/mob.dmi differ
diff --git a/icons/inventory/head/item.dmi b/icons/inventory/head/item.dmi
index 76b8118409..c1528bbe20 100644
Binary files a/icons/inventory/head/item.dmi and b/icons/inventory/head/item.dmi differ
diff --git a/icons/inventory/head/mob_tajaran.dmi b/icons/inventory/head/mob_tajaran.dmi
index 3527c445b7..857a158696 100644
Binary files a/icons/inventory/head/mob_tajaran.dmi and b/icons/inventory/head/mob_tajaran.dmi differ
diff --git a/icons/mob/items/lefthand_masks.dmi b/icons/mob/items/lefthand_masks.dmi
index f35288c06f..619a03e69c 100644
Binary files a/icons/mob/items/lefthand_masks.dmi and b/icons/mob/items/lefthand_masks.dmi differ
diff --git a/icons/mob/items/righthand_hats.dmi b/icons/mob/items/righthand_hats.dmi
index 8bf6d4155d..aaaa0d80d9 100644
Binary files a/icons/mob/items/righthand_hats.dmi and b/icons/mob/items/righthand_hats.dmi differ
diff --git a/icons/mob/items/righthand_masks.dmi b/icons/mob/items/righthand_masks.dmi
index 30fe71f2d2..d82419217a 100644
Binary files a/icons/mob/items/righthand_masks.dmi and b/icons/mob/items/righthand_masks.dmi differ
diff --git a/icons/obj/boxes.dmi b/icons/obj/boxes.dmi
index dad29a40a2..4eb1af7569 100644
Binary files a/icons/obj/boxes.dmi and b/icons/obj/boxes.dmi differ