diff --git a/_maps/map_files/ALV Belryth/ALV Belryth.dmm b/_maps/map_files/ALV Belryth/ALV Belryth.dmm
index d3011d15d25..c44fbdbf7ee 100644
--- a/_maps/map_files/ALV Belryth/ALV Belryth.dmm
+++ b/_maps/map_files/ALV Belryth/ALV Belryth.dmm
@@ -724,7 +724,7 @@
/obj/effect/turf_decal/delivery,
/obj/machinery/door/firehead,
/obj/machinery/door/bulkhead/command{
- name = "Chief Medical Officer's Quarters"
+ name = "Head Physician's Office"
},
/obj/effect/mapping_helpers/bulkhead/access/all/medical/cmo,
/obj/structure/cable,
@@ -900,7 +900,7 @@
/area/station/maintenance/department/crew_quarters/dorms)
"avi" = (
/obj/machinery/door/bulkhead/command{
- name = "Captain's Quarters";
+ name = "Shipmaster's Quarters";
dir = 8
},
/obj/effect/mapping_helpers/bulkhead/access/all/command/captain,
@@ -3870,7 +3870,7 @@
/area/station/engineering/gravity_generator)
"bNt" = (
/obj/machinery/door/bulkhead/command{
- name = "Head of Personnel's Office"
+ name = "Executive Officer's Office"
},
/obj/effect/mapping_helpers/bulkhead/access/all/command/hop,
/obj/machinery/door/firehead,
@@ -4654,6 +4654,11 @@
dir = 8
},
/obj/effect/mapping_helpers/paint_wall/security,
+/obj/machinery/door/poddoor/shutters{
+ id = "hosshutter";
+ name = "Privacy Shutters";
+ dir = 4
+ },
/turf/open/floor/plating,
/area/station/security/office)
"chw" = (
@@ -6674,7 +6679,7 @@
/obj/effect/mapping_helpers/bulkhead/access/all/supply/qm,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/door/bulkhead/command{
- name = "Quartermaster's Office";
+ name = "Logistics Manager's Office";
dir = 4
},
/obj/structure/cable,
@@ -11787,15 +11792,6 @@
/obj/effect/mapping_helpers/broken_floor,
/turf/open/floor/iron/dark/textured,
/area/station/cargo/lobby)
-"fpM" = (
-/obj/machinery/door/poddoor/shutters{
- id = "evashutters";
- name = "E.V.A. Storage Shutters"
- },
-/obj/machinery/door/firehead,
-/obj/machinery/light/floor,
-/turf/open/floor/iron/dark,
-/area/station/ai_monitored/command/storage/eva)
"fpS" = (
/obj/effect/mapping_helpers/paint_wall/security,
/turf/closed/wall/r_wall,
@@ -14122,8 +14118,8 @@
/turf/open/floor/plating,
/area/station/maintenance/department/crew_quarters/dorms)
"gmF" = (
-/obj/machinery/door/bulkhead/command{
- name = "Head of Security's Quarters"
+/obj/machinery/door/bulkhead/command/head_of_security{
+ name = "Colonel's Quarters"
},
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
@@ -15239,6 +15235,16 @@
/obj/effect/turf_decal/siding/green/corner,
/turf/open/floor/iron/textured,
/area/station/service/hydroponics)
+"gPq" = (
+/obj/effect/turf_decal/delivery/engi,
+/obj/machinery/door/firehead,
+/obj/effect/mapping_helpers/bulkhead/access/all/engineering/ce,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/door/bulkhead/command/chief_engineer{
+ name = "Lead Technician's Office"
+ },
+/turf/open/floor/iron/dark/textured,
+/area/station/command/heads_quarters/ce)
"gPu" = (
/obj/effect/turf_decal/siding/wood,
/obj/machinery/holopad,
@@ -16042,7 +16048,7 @@
"hjp" = (
/obj/machinery/door/firehead,
/obj/machinery/door/bulkhead/command{
- name = "Captain's Office"
+ name = "Shipmaster's Office"
},
/obj/effect/mapping_helpers/bulkhead/access/all/command/captain,
/obj/structure/cable,
@@ -21233,12 +21239,12 @@
/turf/open/floor/iron/smooth,
/area/station/security/desk)
"jgk" = (
-/obj/machinery/door/bulkhead/security{
- name = "Secure Armoury"
- },
/obj/effect/mapping_helpers/bulkhead/access/all/security/armory,
/obj/machinery/door/firehead,
/obj/effect/turf_decal/delivery,
+/obj/machinery/door/bulkhead/command/head_of_security{
+ name = "Secure Armoury"
+ },
/turf/open/floor/iron/dark/textured,
/area/station/ai_monitored/security/armory)
"jgA" = (
@@ -22551,6 +22557,19 @@
/obj/effect/mapping_helpers/paint_wall/security,
/turf/closed/wall/r_wall,
/area/station/security/office)
+"jFz" = (
+/obj/effect/turf_decal/delivery/engi,
+/obj/machinery/door/firehead,
+/obj/effect/mapping_helpers/bulkhead/access/all/engineering/ce,
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/cable,
+/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
+/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
+/obj/machinery/door/bulkhead/command/chief_engineer{
+ name = "Chief Engineer's Office"
+ },
+/turf/open/floor/iron/dark/textured,
+/area/station/command/heads_quarters/ce)
"jFD" = (
/obj/effect/turf_decal/stripes/orange/corner,
/obj/structure/extinguisher_cabinet/directional/south,
@@ -27938,8 +27957,8 @@
/turf/open/floor/iron/dark/textured,
/area/station/engineering/gravity_generator)
"mcC" = (
-/obj/machinery/door/bulkhead/command{
- name = "Head of Security's Quarters"
+/obj/machinery/door/bulkhead/command/head_of_security{
+ name = "Colonel's Quarters"
},
/turf/open/floor/carpet/royalblack,
/area/station/command/heads_quarters/hos)
@@ -30228,9 +30247,9 @@
/turf/open/floor/carpet/green,
/area/station/security/detectives_office)
"mVs" = (
-/obj/machinery/door/bulkhead/security{
- name = "Armoury";
- dir = 4
+/obj/machinery/door/bulkhead/command/head_of_security{
+ dir = 4;
+ name = "Armoury"
},
/obj/effect/mapping_helpers/bulkhead/access/all/security/armory,
/obj/effect/turf_decal/delivery,
@@ -31455,7 +31474,7 @@
dir = 8
},
/obj/machinery/door/bulkhead/command{
- name = "Chief Medical Officer's Quarters";
+ name = "Head Physician's Quarters";
dir = 4
},
/obj/effect/mapping_helpers/bulkhead/access/all/medical/cmo,
@@ -31529,7 +31548,7 @@
/obj/effect/turf_decal/delivery,
/obj/machinery/door/firehead,
/obj/machinery/door/bulkhead/command{
- name = "Chief Medical Officer's Quarters"
+ name = "Head Physician's Office"
},
/obj/effect/mapping_helpers/bulkhead/access/all/medical/cmo,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
@@ -33043,6 +33062,14 @@
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/turf/open/floor/iron/textured,
/area/station/service/hydroponics)
+"ohK" = (
+/obj/effect/turf_decal/delivery/engi,
+/obj/machinery/door/firehead,
+/obj/machinery/door/bulkhead/command/chief_engineer{
+ name = "Chief Engineer's Quarters"
+ },
+/turf/open/floor/iron/dark/textured,
+/area/station/command/heads_quarters/ce)
"ohM" = (
/obj/effect/turf_decal/stripes/orange/line{
dir = 8
@@ -36025,7 +36052,7 @@
/obj/effect/turf_decal/delivery,
/obj/machinery/door/firehead,
/obj/machinery/door/bulkhead/command{
- name = "Quartermaster's Quarters"
+ name = "Logistics Manager's Quarters"
},
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
@@ -38578,6 +38605,11 @@
"qqH" = (
/obj/effect/turf_decal/box,
/obj/machinery/suit_storage_unit/hardsuit/hos,
+/obj/machinery/button/door/directional/west{
+ id = "hosshutter";
+ name = "Privacy Shutter Toggle";
+ pixel_y = 6
+ },
/turf/open/floor/iron/dark/textured,
/area/station/command/heads_quarters/hos)
"qqW" = (
@@ -40727,12 +40759,13 @@
"rkn" = (
/obj/effect/mapping_helpers/bulkhead/access/all/security/hos,
/obj/effect/turf_decal/delivery,
-/obj/machinery/door/bulkhead/command/glass{
- dir = 4
- },
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
+/obj/machinery/door/bulkhead/command/head_of_security{
+ dir = 4;
+ name = "Colonel's Office"
+ },
/turf/open/floor/iron/dark/textured,
/area/station/security/office)
"rkw" = (
@@ -45437,13 +45470,15 @@
/turf/open/floor/iron/dark/textured,
/area/station/maintenance/department/medical/central)
"tla" = (
-/obj/machinery/door/bulkhead/maintenance,
/obj/machinery/door/firehead,
/obj/machinery/atmospherics/pipe/smart/manifold4w/orange/hidden,
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/disposalpipe/segment,
+/obj/machinery/door/bulkhead/command{
+ name = "Maintenance Access"
+ },
/turf/open/floor/plating,
/area/station/maintenance/department/command)
"tls" = (
@@ -47513,24 +47548,6 @@
},
/turf/open/floor/iron/white/small,
/area/station/pathfinders/storage)
-"ucn" = (
-/obj/structure/curtain/cloth/fancy/mechanical/start_closed{
- desc = "A set of curtains serving as a fancy theater backdrop. They can only be opened by a button.";
- id = "theater_curtains";
- name = "Theater Curtains"
- },
-/obj/machinery/light/floor,
-/obj/machinery/door/firehead{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/orange/line{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/orange/line{
- dir = 4
- },
-/turf/open/floor/iron/dark/textured,
-/area/station/service/theater)
"ucs" = (
/obj/effect/turf_decal/trimline/red/filled/line,
/obj/effect/turf_decal/stripes/line,
@@ -51014,7 +51031,7 @@
/turf/open/floor/plating,
/area/station/maintenance/department/medical/upper)
"vAT" = (
-/obj/machinery/door/bulkhead/security{
+/obj/machinery/door/bulkhead/command/head_of_security{
name = "Armoury"
},
/obj/effect/mapping_helpers/bulkhead/access/all/security/armory,
@@ -54943,6 +54960,28 @@
},
/turf/open/floor/iron/textured,
/area/station/cargo/sorting)
+"xiC" = (
+/obj/effect/turf_decal/delivery/engi,
+/obj/machinery/door/firehead{
+ dir = 8
+ },
+/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
+/obj/machinery/door/bulkhead/command/chief_engineer{
+ dir = 4;
+ name = "Chief Engineer's Quarters"
+ },
+/turf/open/floor/iron/dark/textured,
+/area/station/command/heads_quarters/ce)
+"xiG" = (
+/obj/effect/turf_decal/stripes/engi/line{
+ dir = 5
+ },
+/obj/effect/mapping_helpers/broken_floor,
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/cable,
+/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
+/turf/open/floor/plating,
+/area/station/engineering/atmos/storage)
"xiL" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/small/maintenance/directional/east,
@@ -55132,7 +55171,7 @@
/area/station/command/internal_affairs_office)
"xmN" = (
/obj/machinery/door/bulkhead/command{
- name = "Head of Personnel's Quarters";
+ name = "Executive Officer's Quarters";
dir = 4
},
/obj/machinery/door/firehead{
@@ -151035,11 +151074,11 @@ bFv
ycj
dny
djB
-ucn
cHc
cHc
cHc
-ucn
+cHc
+cHc
djB
pDE
iTx
@@ -226591,7 +226630,7 @@ ihb
gHl
nTb
vrh
-fpM
+hRz
pVk
uSZ
qxp
diff --git a/code/__DEFINES/span.dm b/code/__DEFINES/span.dm
index cd200ba84ed..8a0c7e3c433 100644
--- a/code/__DEFINES/span.dm
+++ b/code/__DEFINES/span.dm
@@ -99,6 +99,7 @@
#define span_rose(str) ("" + str + "")
#define span_sans(str) ("" + str + "")
#define span_pathradio(str) ("" + str + "")
+#define span_scent(str) ("" + str + "")
#define span_secradio(str) ("" + str + "")
#define span_servradio(str) ("" + str + "")
#define span_singing(str) ("" + str + "")
diff --git a/code/datums/elements/smell.dm b/code/datums/elements/smell.dm
index 021c15facbd..0334a9b41f6 100644
--- a/code/datums/elements/smell.dm
+++ b/code/datums/elements/smell.dm
@@ -42,7 +42,7 @@
if(issilicon(user))
to_chat(user, span_notice("Your sensors pick up the presence of [scent] in the air."))
else
- to_chat(user, span_notice("The [descriptor] of [scent] fills the air."))
+ to_chat(user, span_scent("The [descriptor] of [scent] fills the air."))
user.last_smell_intensity = intensity
COOLDOWN_START(user, smell_time, cooldown)
@@ -57,7 +57,7 @@
if(issilicon(user))
to_chat(user, span_notice("Your sensors detect trace amounts of [scent] in the air."))
else
- to_chat(user, span_subtle("The subtle [descriptor] of [scent] tickles your nose..."))
+ to_chat(user, span_scent("The subtle [descriptor] of [scent] tickles your nose..."))
user.last_smell_intensity = intensity
COOLDOWN_START(user, smell_time, cooldown)
@@ -87,7 +87,7 @@
if(issilicon(user))
to_chat(user, span_warning("ALERT! Your sensors pick up an overwhelming concentration of [scent]."))
else
- to_chat(user, span_warning("The overwhelming [descriptor] of [scent] assaults your senses. You stifle a gag."))
+ to_chat(user, span_boldwarning("The overwhelming [descriptor] of [scent] assaults your senses. You stifle a gag."))
user.last_smell_intensity = intensity
COOLDOWN_START(user, smell_time, cooldown)
diff --git a/code/game/area/areas/station.dm b/code/game/area/areas/station.dm
index f389564173a..46025d37233 100644
--- a/code/game/area/areas/station.dm
+++ b/code/game/area/areas/station.dm
@@ -465,29 +465,29 @@
icon_state = "heads_quarters"
/area/station/command/heads_quarters/captain
- name = "\improper Captain's Office"
+ name = "\improper Shipmaster's Office"
icon_state = "captain"
sound_environment = SOUND_AREA_WOODFLOOR
/area/station/command/heads_quarters/captain/private
- name = "\improper Captain's Quarters"
+ name = "\improper Shipmaster's Quarters"
icon_state = "captain_private"
sound_environment = SOUND_AREA_WOODFLOOR
/area/station/command/heads_quarters/ce
- name = "\improper Chief Engineer's Office"
+ name = "\improper Lead Technician's Office"
icon_state = "ce_office"
/area/station/command/heads_quarters/cmo
- name = "\improper Chief Medical Officer's Office"
+ name = "\improper Head Physician's Office"
icon_state = "cmo_office"
/area/station/command/heads_quarters/hop
- name = "\improper Head of Personnel's Office"
+ name = "\improper Executive Officer's Office"
icon_state = "hop_office"
/area/station/command/heads_quarters/hos
- name = "\improper Head of Security's Office"
+ name = "\improper Colonel's Office"
icon_state = "hos_office"
/area/station/command/heads_quarters/rd
@@ -495,7 +495,7 @@
icon_state = "rd_office"
/area/station/command/heads_quarters/qm
- name = "\improper Quartermaster's Office"
+ name = "\improper Logistics Manager's Office"
icon_state = "qm_office"
/area/station/command/heads_quarters/pl
diff --git a/code/game/machinery/doors/bulkhead_types.dm b/code/game/machinery/doors/bulkhead_types.dm
index d5a394e5db2..4e6a23d1a98 100644
--- a/code/game/machinery/doors/bulkhead_types.dm
+++ b/code/game/machinery/doors/bulkhead_types.dm
@@ -14,11 +14,17 @@
bulkhead_paint = "#F6F6F6"
stripe_paint = "#BB8425"
+/obj/machinery/door/bulkhead/command/head_of_security
+ assemblytype = /obj/structure/door_assembly/door_assembly_com/hos
+ normal_integrity = 450
+ bulkhead_paint = "#F6F6F6"
+ stripe_paint = "#912e25"
+
/obj/machinery/door/bulkhead/security
assemblytype = /obj/structure/door_assembly/door_assembly_sec
normal_integrity = 450
- bulkhead_paint = "#9F2828"
- stripe_paint = "#D27428"
+ bulkhead_paint = "#912e25"
+ stripe_paint = "#1E2425"
/obj/machinery/door/bulkhead/engineering
assemblytype = /obj/structure/door_assembly/door_assembly_eng
@@ -124,6 +130,11 @@
glass = TRUE
normal_integrity = 400
+/obj/machinery/door/bulkhead/command/head_of_security/glass
+ opacity = FALSE
+ glass = TRUE
+ normal_integrity = 400
+
/obj/machinery/door/bulkhead/engineering/glass
opacity = FALSE
glass = TRUE
diff --git a/code/game/objects/effects/decals/turfdecal/markings.dm b/code/game/objects/effects/decals/turfdecal/markings.dm
index 4fd022077b9..16a5ef3723e 100644
--- a/code/game/objects/effects/decals/turfdecal/markings.dm
+++ b/code/game/objects/effects/decals/turfdecal/markings.dm
@@ -238,7 +238,7 @@
icon_state = "siding_end"
/obj/effect/turf_decal/siding/red
- color = "#DE3A3A"
+ color = "#912e25"
/obj/effect/turf_decal/siding/red/corner
icon_state = "siding_corner"
diff --git a/code/game/objects/effects/spawners/random/trash.dm b/code/game/objects/effects/spawners/random/trash.dm
index c12e9ffa934..eee79b53cc7 100644
--- a/code/game/objects/effects/spawners/random/trash.dm
+++ b/code/game/objects/effects/spawners/random/trash.dm
@@ -69,7 +69,7 @@
name = "botanical waste spawner"
icon_state = "peel"
loot = list(
- /obj/item/grown/bananapeel = 6,
+ /obj/item/grown/bananapeel = 1,
/obj/item/grown/corncob = 3,
/obj/item/food/grown/bungopit = 1,
)
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index cfcee750dcb..b6e739161f1 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -13,9 +13,10 @@
slot_flags = ITEM_SLOT_BELT
custom_materials = list(/datum/material/iron=50, /datum/material/glass=20)
actions_types = list(/datum/action/item_action/toggle_light)
+ light_color = "#ffd595"
light_system = MOVABLE_LIGHT_DIRECTIONAL
- light_range = 4
- light_power = 1
+ light_range = 3
+ light_power = 0.75
light_on = FALSE
pickup_sound = 'sound/items/handling/device_pickup.ogg'
drop_sound = 'sound/items/handling/device_drop.ogg'
@@ -224,6 +225,7 @@
force = 9 // Not as good as a stun baton.
light_range = 5 // A little better than the standard flashlight.
hitsound = 'sound/weapons/genhit1.ogg'
+ light_color = "#ffe6cd"
// the desk lamps are a bit special
/obj/item/flashlight/lamp
diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm
index c34af4e783d..22071b4a465 100644
--- a/code/game/objects/items/devices/radio/intercom.dm
+++ b/code/game/objects/items/devices/radio/intercom.dm
@@ -1,5 +1,5 @@
/obj/item/radio/intercom
- name = "station intercom"
+ name = "intercom"
desc = "Talk through this."
icon_state = "intercom"
anchored = TRUE
@@ -13,7 +13,7 @@
/obj/item/radio/intercom/prison
name = "prison intercom"
- desc = "A station intercom. It looks like it has been modified to not broadcast."
+ desc = "A intercom. It looks like it has been modified to not broadcast."
prison_radio = TRUE
/obj/item/radio/intercom/Initialize(mapload, ndir, building)
diff --git a/code/game/objects/structures/door_assembly_types.dm b/code/game/objects/structures/door_assembly_types.dm
index 34dc7d429a5..caf678c9733 100644
--- a/code/game/objects/structures/door_assembly_types.dm
+++ b/code/game/objects/structures/door_assembly_types.dm
@@ -15,6 +15,12 @@
glass_type = /obj/machinery/door/bulkhead/command/chief_engineer/glass
airlock_type = /obj/machinery/door/bulkhead/command/chief_engineer
+/obj/structure/door_assembly/door_assembly_com/hos
+ name = "Head of Security airlock assembly"
+ base_name = "Head of Security airlock"
+ glass_type = /obj/machinery/door/bulkhead/command/head_of_security/glass
+ airlock_type = /obj/machinery/door/bulkhead/command/head_of_security
+
/obj/structure/door_assembly/door_assembly_sec
name = "security airlock assembly"
base_name = "security airlock"
diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm
index 6d7bcbc58e0..0564c765596 100644
--- a/code/modules/clothing/head/hardhat.dm
+++ b/code/modules/clothing/head/hardhat.dm
@@ -9,9 +9,10 @@
clothing_flags = SNUG_FIT | PLASMAMAN_HELMET_EXEMPT
resistance_flags = FIRE_PROOF
+ light_color = "#ffd595"
light_system = MOVABLE_LIGHT_DIRECTIONAL
- light_range = 4
- light_power = 0.8
+ light_range = 3
+ light_power = 0.75
light_on = FALSE
dog_fashion = /datum/dog_fashion/head
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
index 83fb9af6343..a3e49fcbf26 100644
--- a/code/modules/clothing/head/jobs.dm
+++ b/code/modules/clothing/head/jobs.dm
@@ -160,6 +160,14 @@
greyscale_config_worn = /datum/greyscale_config/beret_badge/worn
greyscale_colors = "#39393f#FFCE5B"
+/obj/item/clothing/head/hos/beret_white
+ name = "head of security's white beret"
+ desc = "A robust beret for the Head of Security, for looking stylish while not sacrificing protection."
+ icon_state = "beret_badge"
+ greyscale_config = /datum/greyscale_config/beret_badge
+ greyscale_config_worn = /datum/greyscale_config/beret_badge/worn
+ greyscale_colors = "#FFFFFF#A52F29"
+
/obj/item/clothing/head/hos/beret/navyhos
name = "head of security's formal beret"
desc = "A special beret with the Head of Security's insignia emblazoned on it. A symbol of excellence, a badge of courage, a mark of distinction."
diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm
index ca8c041b239..2631f37c24b 100644
--- a/code/modules/clothing/spacesuits/hardsuit.dm
+++ b/code/modules/clothing/spacesuits/hardsuit.dm
@@ -7,9 +7,10 @@
icon_state = "hardsuit0-engineering"
max_integrity = 300
armor = list(MELEE = 10, BULLET = 5, LASER = 10, ENERGY = 15, BOMB = 10, BIO = 100, FIRE = 50, ACID = 75, WOUND = 5)
+ light_color = "#ffd595"
light_system = MOVABLE_LIGHT_DIRECTIONAL
- light_range = 4
- light_power = 1
+ light_range = 3
+ light_power = 0.75
light_on = FALSE
var/basestate = "hardsuit"
var/on = FALSE
diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm
index e4b1b3e0cfc..a4df4300d5e 100644
--- a/code/modules/clothing/under/jobs/security.dm
+++ b/code/modules/clothing/under/jobs/security.dm
@@ -19,13 +19,19 @@
/obj/item/clothing/under/rank/security/officer
name = "security uniform"
- desc = "A tactical security jumpsuit for officers complete with Nanotrasen belt buckle."
+ desc = "A tactical security jumpsuit for officers complete with Artea belt buckle."
icon_state = "rsecurity"
inhand_icon_state = "r_suit"
+/obj/item/clothing/under/rank/security/officer/white
+ name = "security uniform"
+ desc = "A tactical security jumpsuit for officers complete with Artea belt buckle."
+ icon_state = "rsecurity_white"
+ inhand_icon_state = "w_suit"
+
/obj/item/clothing/under/rank/security/officer/grey
name = "grey security jumpsuit"
- desc = "A tactical relic of years past before Nanotrasen decided it was cheaper to dye the suits red instead of washing out the blood."
+ desc = "A tactical relic of years past before Artea decided it was cheaper to dye the suits red instead of washing out the blood."
icon_state = "security"
inhand_icon_state = "gy_suit"
@@ -64,19 +70,19 @@
/obj/item/clothing/under/rank/security/warden
name = "security suit"
- desc = "A formal security suit for officers complete with Nanotrasen belt buckle."
+ desc = "A formal security suit for officers complete with Artea belt buckle."
icon_state = "rwarden"
inhand_icon_state = "r_suit"
/obj/item/clothing/under/rank/security/warden/grey
name = "grey security suit"
- desc = "A formal relic of years past before Nanotrasen decided it was cheaper to dye the suits red instead of washing out the blood."
+ desc = "A formal relic of years past before Artea decided it was cheaper to dye the suits red instead of washing out the blood."
icon_state = "warden"
inhand_icon_state = "gy_suit"
/obj/item/clothing/under/rank/security/warden/skirt
name = "warden's suitskirt"
- desc = "A formal security suitskirt for officers complete with Nanotrasen belt buckle."
+ desc = "A formal security suitskirt for officers complete with Artea belt buckle."
icon_state = "rwarden_skirt"
inhand_icon_state = "r_suit"
body_parts_covered = CHEST|GROIN|ARMS
@@ -175,6 +181,13 @@
alt_covers_chest = TRUE
supports_variations_flags = CLOTHING_DIGITIGRADE_VARIATION_NO_NEW_ICON
+/obj/item/clothing/under/rank/security/head_of_security/alt_white
+ name = "head of security's white turtleneck"
+ desc = "A stylish alternative to the normal head of security jumpsuit, complete with tactical pants."
+ icon_state = "hosalt_white"
+ inhand_icon_state = "bl_suit"
+ alt_covers_chest = TRUE
+
/obj/item/clothing/under/rank/security/head_of_security/parade
name = "head of security's parade uniform"
desc = "A male head of security's luxury-wear, for special occasions."
@@ -210,7 +223,7 @@
/obj/item/clothing/under/rank/prisoner
name = "prison jumpsuit"
- desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
+ desc = "It's standardised Artea prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
icon_state = "jumpsuit"
icon_preview = 'icons/obj/previews.dmi'
icon_state_preview = "prisonsuit"
@@ -226,7 +239,7 @@
/obj/item/clothing/under/rank/prisoner/skirt
name = "prison jumpskirt"
- desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
+ desc = "It's standardised Artea prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
icon_state = "jumpskirt"
icon_preview = 'icons/obj/previews.dmi'
icon_state_preview = "prisonskirt"
diff --git a/code/modules/jobs/job_types/head_of_security.dm b/code/modules/jobs/job_types/head_of_security.dm
index 17b824053d5..5fcc8bbc6c3 100644
--- a/code/modules/jobs/job_types/head_of_security.dm
+++ b/code/modules/jobs/job_types/head_of_security.dm
@@ -44,15 +44,14 @@
/datum/job/head_of_security/get_captaincy_announcement(mob/living/captain)
return "Due to staffing shortages, newly promoted Acting Captain [captain.real_name] on deck!"
-
/datum/outfit/job/hos
name = "Head of Security"
jobtype = /datum/job/head_of_security
id = /obj/item/card/id/advanced/silver
id_trim = /datum/id_trim/job/head_of_security
- uniform = /obj/item/clothing/under/rank/security/head_of_security
- suit = /obj/item/clothing/suit/armor/hos/trenchcoat
+ uniform = /obj/item/clothing/under/rank/security/head_of_security/alt_white
+ suit = /obj/item/clothing/suit/armor/vest
suit_store = /obj/item/gun/energy/e_gun
backpack_contents = list(
/obj/item/evidencebag = 1,
@@ -61,7 +60,7 @@
ears = /obj/item/radio/headset/heads/hos/alt
glasses = /obj/item/clothing/glasses/hud/security/sunglasses
gloves = /obj/item/clothing/gloves/color/black
- head = /obj/item/clothing/head/hos/beret
+ head = /obj/item/clothing/head/hos/beret_white
shoes = /obj/item/clothing/shoes/jackboots/sec
l_pocket = /obj/item/restraints/handcuffs
r_pocket = /obj/item/assembly/flash/handheld
diff --git a/code/modules/jobs/job_types/security_officer.dm b/code/modules/jobs/job_types/security_officer.dm
index 961df401c43..9c880a87a83 100644
--- a/code/modules/jobs/job_types/security_officer.dm
+++ b/code/modules/jobs/job_types/security_officer.dm
@@ -86,7 +86,7 @@
jobtype = /datum/job/security_officer
id_trim = /datum/id_trim/job/security_officer
- uniform = /obj/item/clothing/under/rank/security/officer
+ uniform = /obj/item/clothing/under/rank/security/officer/white
suit = /obj/item/clothing/suit/armor/vest/alt/sec
suit_store = /obj/item/gun/energy/disabler
backpack_contents = list(
diff --git a/code/modules/mapping/mapping_helpers.dm b/code/modules/mapping/mapping_helpers.dm
index e1570b7982a..ff5f0a9c942 100644
--- a/code/modules/mapping/mapping_helpers.dm
+++ b/code/modules/mapping/mapping_helpers.dm
@@ -747,7 +747,7 @@ INITIALIZE_IMMEDIATE(/obj/effect/mapping_helpers/no_lava)
/obj/effect/mapping_helpers/paint_wall/security
name = "Security Wall Paint"
- stripe_paint = "#9F2828"
+ stripe_paint = "#912e25"
icon_state = "paint_security"
/obj/effect/mapping_helpers/paint_wall/medical
diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm
index 520e0aa0327..b093d32a884 100644
--- a/code/modules/modular_computers/computers/item/computer.dm
+++ b/code/modules/modular_computers/computers/item/computer.dm
@@ -67,7 +67,7 @@
/// How far the computer's light can reach, is not editable by players.
var/comp_light_luminosity = 3
/// The built-in light's color, editable by players.
- var/comp_light_color = "#FFFFFF"
+ var/comp_light_color = "#ffd595"
///The last recorded amount of power used.
var/last_power_usage = 0
diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm
index 243b65d8427..ec632b47bfa 100644
--- a/code/modules/projectiles/guns/ballistic.dm
+++ b/code/modules/projectiles/guns/ballistic.dm
@@ -119,7 +119,7 @@
///What is the cap on our misfire probability? Do not set this to 100.
var/misfire_probability_cap = 25
/// How much recoil the gun has.
- recoil = 1
+ recoil = 0.65
/obj/item/gun/ballistic/Initialize(mapload)
. = ..()
diff --git a/code/modules/projectiles/guns/ballistic/automatic.dm b/code/modules/projectiles/guns/ballistic/automatic.dm
index f09ea4fa014..7d35c6a7701 100644
--- a/code/modules/projectiles/guns/ballistic/automatic.dm
+++ b/code/modules/projectiles/guns/ballistic/automatic.dm
@@ -274,6 +274,7 @@
rack_sound = 'sound/weapons/gun/l6/l6_rack.ogg'
suppressed_sound = 'sound/weapons/gun/general/heavy_shot_suppressed.ogg'
var/cover_open = FALSE
+ recoil = 1
/obj/item/gun/ballistic/automatic/l6_saw/unrestricted
pin = /obj/item/firing_pin
diff --git a/code/modules/projectiles/guns/ballistic/pistol.dm b/code/modules/projectiles/guns/ballistic/pistol.dm
index b66146571ea..a26bb48eae5 100644
--- a/code/modules/projectiles/guns/ballistic/pistol.dm
+++ b/code/modules/projectiles/guns/ballistic/pistol.dm
@@ -23,6 +23,7 @@
bolt_wording = "slide"
suppressor_x_offset = 10
suppressor_y_offset = -1
+ recoil = 0.45
/obj/item/gun/ballistic/automatic/pistol/no_mag
spawnwithmagazine = FALSE
diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm
index 10ad3700a96..eb50643e3b7 100644
--- a/code/modules/projectiles/guns/energy.dm
+++ b/code/modules/projectiles/guns/energy.dm
@@ -34,7 +34,7 @@
///set to true so the gun is given an empty cell
var/dead_cell = FALSE
/// How much recoil the gun has.
- recoil = 0.2
+ recoil = 0.15
/obj/item/gun/energy/fire_sounds()
var/obj/item/ammo_casing/energy/shot = ammo_type[select]
diff --git a/icons/mob/clothing/head.dmi b/icons/mob/clothing/head.dmi
index 5556edbd7ef..7dcaf79e9c7 100644
Binary files a/icons/mob/clothing/head.dmi and b/icons/mob/clothing/head.dmi differ
diff --git a/icons/mob/clothing/suits/armor.dmi b/icons/mob/clothing/suits/armor.dmi
index 0656fbe3236..9585229519e 100644
Binary files a/icons/mob/clothing/suits/armor.dmi and b/icons/mob/clothing/suits/armor.dmi differ
diff --git a/icons/mob/clothing/under/security.dmi b/icons/mob/clothing/under/security.dmi
index a4a9a224bca..f752d86b344 100644
Binary files a/icons/mob/clothing/under/security.dmi and b/icons/mob/clothing/under/security.dmi differ
diff --git a/icons/obj/clothing/suits/armor.dmi b/icons/obj/clothing/suits/armor.dmi
index fcb731f1fb0..32ec28691e1 100644
Binary files a/icons/obj/clothing/suits/armor.dmi and b/icons/obj/clothing/suits/armor.dmi differ
diff --git a/icons/obj/clothing/under/security.dmi b/icons/obj/clothing/under/security.dmi
index cb702f023da..fd95c821fb9 100644
Binary files a/icons/obj/clothing/under/security.dmi and b/icons/obj/clothing/under/security.dmi differ
diff --git a/tgui/packages/tgui-panel/assets/chatbg.png b/tgui/packages/tgui-panel/assets/chatbg.png
new file mode 100644
index 00000000000..d7e062156c7
Binary files /dev/null and b/tgui/packages/tgui-panel/assets/chatbg.png differ
diff --git a/tgui/packages/tgui-panel/assets/examinebg.png b/tgui/packages/tgui-panel/assets/examinebg.png
new file mode 100644
index 00000000000..0add46e2b29
Binary files /dev/null and b/tgui/packages/tgui-panel/assets/examinebg.png differ
diff --git a/tgui/packages/tgui-panel/settings/constants.js b/tgui/packages/tgui-panel/settings/constants.js
index 90a3bc948c9..c9a9e51bf3f 100644
--- a/tgui/packages/tgui-panel/settings/constants.js
+++ b/tgui/packages/tgui-panel/settings/constants.js
@@ -32,8 +32,7 @@ export const FONTS = [
];
export const THEME_DARK = 'dark';
-export const THEME_LIGHT = 'light';
export const DEFAULT_THEME = THEME_DARK;
-export const THEMES = [THEME_LIGHT, THEME_DARK];
+export const THEMES = [THEME_DARK];
diff --git a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss
index d53f9f7896a..7cdb6330ad1 100644
--- a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss
+++ b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss
@@ -394,47 +394,54 @@ em {
}
.alert {
- color: #d82020;
+ color: #dd3535;
}
.userdanger {
- color: #c51e1e;
+ color: #dd3535;
+ text-shadow: 0 0 0.3em #ff0000;
font-weight: bold;
- font-size: 185%;
+ font-size: 125%;
}
.bolddanger {
- color: #c51e1e;
+ color: #dd3535;
+ text-shadow: 0 0 0.3em #ff0000;
font-weight: bold;
}
.danger {
- color: #c51e1e;
+ color: #dd3535;
+ text-shadow: 0 0 0.3em #ff0000;
}
.warning {
- color: #c51e1e;
+ color: #dd3535;
+ text-shadow: 0 0 0.3em #ff0000;
font-style: italic;
+ font-size: 80%;
}
.alertwarning {
- color: #ff0000;
+ color: #dd3535;
font-weight: bold;
}
.boldwarning {
- color: #c51e1e;
+ color: #dd3535;
font-style: italic;
font-weight: bold;
+ text-shadow: 0 0 0.3em #ff0000;
+ font-size: 80%;
}
.announce {
- color: #c51e1e;
+ color: #dd3535;
font-weight: bold;
}
.boldannounce {
- color: #c51e1e;
+ color: #dd3535;
font-weight: bold;
}
@@ -453,37 +460,38 @@ em {
}
.info {
- color: #9ab0ff;
+ color: #cecece;
}
.notice {
- color: #6685f5;
+ color: #cecece;
+ font-style: italic;
}
.tinynotice {
- color: #6685f5;
+ color: #cecece;
font-size: 85%;
}
.tinynoticeital {
- color: #6685f5;
+ color: #cecece;
font-style: italic;
font-size: 85%;
}
.smallnotice {
- color: #6685f5;
+ color: #cecece;
font-size: 90%;
}
.smallnoticeital {
- color: #6685f5;
+ color: #cecece;
font-style: italic;
font-size: 90%;
}
.boldnotice {
- color: #6685f5;
+ color: #cecece;
font-weight: bold;
}
@@ -892,9 +900,14 @@ em {
.examine_block {
background: #1b1c1e;
- border: 1px solid #a4bad6;
+ border: 1px solid #cecece;
margin: 0.5em;
padding: 0.5em 0.75em;
+ background-image: url('../assets/examinebg.png');
+ background-size: 100%;
+ background-attachment: fixed;
+ background-repeat: repeat;
+ box-shadow: #1b1c1e 0 0 0.5em;
}
.tooltip {
@@ -1074,7 +1087,13 @@ $border-width-px: $border-width * 1px;
}
.examine {
- color: #4343ca;
+ color: #cecece;
font-size: 75%;
font-style: italic;
}
+
+.scent {
+ color: #cecece;
+ font-size: 80%;
+ font-style: italic;
+}
diff --git a/tgui/packages/tgui-panel/styles/goon/chat-light.scss b/tgui/packages/tgui-panel/styles/goon/chat-light.scss
index 0141a493ad5..5de84f8e095 100644
--- a/tgui/packages/tgui-panel/styles/goon/chat-light.scss
+++ b/tgui/packages/tgui-panel/styles/goon/chat-light.scss
@@ -1107,7 +1107,7 @@ $border-width-px: $border-width * 1px;
}
.examine {
- color: #000099;
+ color: #272727;
font-size: 75%;
font-style: italic;
}
diff --git a/tgui/packages/tgui-panel/styles/main.scss b/tgui/packages/tgui-panel/styles/main.scss
index 8114dcc6c6b..70d7c4387f0 100644
--- a/tgui/packages/tgui-panel/styles/main.scss
+++ b/tgui/packages/tgui-panel/styles/main.scss
@@ -58,3 +58,11 @@
// Goonchat styles
@include meta.load-css('./goon/chat-dark.scss');
+
+// OS13 background
+.Layout__content {
+ background-image: url('../assets/chatbg.png');
+ background-size: 100%;
+ background-attachment: fixed;
+ background-repeat: repeat;
+}
diff --git a/tgui/packages/tgui-panel/themes.js b/tgui/packages/tgui-panel/themes.js
index 60ef484280f..214e2e3f863 100644
--- a/tgui/packages/tgui-panel/themes.js
+++ b/tgui/packages/tgui-panel/themes.js
@@ -4,7 +4,7 @@
* @license MIT
*/
-import { THEME_DARK, THEME_LIGHT } from './settings/constants';
+import { THEME_DARK } from './settings/constants';
const COLOR_DARK_BG = '#202020';
const COLOR_DARK_BG_DARKER = '#171717';
@@ -31,58 +31,6 @@ export const setClientTheme = (name) => {
Byond.command(`.output statbrowser:set_theme ${name}`);
}, 1500);
- if (name === THEME_LIGHT) {
- return Byond.winset({
- // Main windows
- 'infowindow.background-color': 'none',
- 'infowindow.text-color': '#000000',
- 'info.background-color': 'none',
- 'info.text-color': '#000000',
- 'browseroutput.background-color': 'none',
- 'browseroutput.text-color': '#000000',
- 'outputwindow.background-color': 'none',
- 'outputwindow.text-color': '#000000',
- 'mainwindow.background-color': 'none',
- 'split.background-color': 'none',
- // Buttons
- 'changelog.background-color': 'none',
- 'changelog.text-color': '#000000',
- 'rules.background-color': 'none',
- 'rules.text-color': '#000000',
- 'wiki.background-color': 'none',
- 'wiki.text-color': '#000000',
- 'forum.background-color': 'none',
- 'forum.text-color': '#000000',
- 'github.background-color': 'none',
- 'github.text-color': '#000000',
- 'report-issue.background-color': 'none',
- 'report-issue.text-color': '#000000',
- // Status and verb tabs
- 'output.background-color': 'none',
- 'output.text-color': '#000000',
- 'statwindow.background-color': 'none',
- 'statwindow.text-color': '#000000',
- 'stat.background-color': '#FFFFFF',
- 'stat.tab-background-color': 'none',
- 'stat.text-color': '#000000',
- 'stat.tab-text-color': '#000000',
- 'stat.prefix-color': '#000000',
- 'stat.suffix-color': '#000000',
- // Say, OOC, me Buttons etc.
- 'saybutton.background-color': 'none',
- 'saybutton.text-color': '#000000',
- 'oocbutton.background-color': 'none',
- 'oocbutton.text-color': '#000000',
- 'mebutton.background-color': 'none',
- 'mebutton.text-color': '#000000',
- 'asset_cache_browser.background-color': 'none',
- 'asset_cache_browser.text-color': '#000000',
- 'tooltip.background-color': 'none',
- 'tooltip.text-color': '#000000',
- 'input.background-color': '#FFFFFF',
- 'input.text-color': '#000000',
- });
- }
if (name === THEME_DARK) {
Byond.winset({
// Main windows