Moves area blurbs permanently to status pane (#21797)

As title. Less annoying chat spam.
This commit is contained in:
Batrachophreno
2026-02-04 12:01:30 -05:00
committed by GitHub
parent 883aa972c1
commit d712dbfab9
13 changed files with 119 additions and 115 deletions
-45
View File
@@ -6,9 +6,6 @@
#define VOLUME_AMBIENT_HUM 18
#define VOLUME_MUSIC 30
/// This list of names is here to make sure we don't state the area blurb to a mob more than once.
GLOBAL_LIST_INIT(area_blurb_stated_to, list())
/area
var/global/global_uid = 0
var/uid
@@ -103,8 +100,6 @@ GLOBAL_LIST_INIT(area_blurb_stated_to, list())
/// A text-based description of the area, can be used for sounds, notable things in the room, etc.
var/area_blurb
/// Used to filter description showing across subareas.
var/area_blurb_category
var/tmp/is_outside = OUTSIDE_NO
@@ -126,8 +121,6 @@ GLOBAL_LIST_INIT(area_blurb_stated_to, list())
GLOB.areas += src
// Atmos code needs this, so we need to make sure this is done by the time they initialize.
uid = ++global_uid
if(isnull(area_blurb_category))
area_blurb_category = type
. = ..()
/area/Initialize(mapload)
@@ -409,7 +402,6 @@ GLOBAL_LIST_INIT(area_blurb_stated_to, list())
// Stop playing music.
else
stop_music(L)
do_area_blurb(L)
/* END aurora snowflake code */
@@ -571,43 +563,6 @@ GLOBAL_LIST_INIT(area_blurb_stated_to, list())
return pick(turfs)
else return null
/**
* Displays an area blurb on a mob's screen.
*
* Areas with blurbs set [/area/var/area_blurb] will display their blurb. Otherwise no blurb will be shown. Contains checks to avoid duplicate blurbs, pass the `override` variable to bypass this. If passed when an area has no blurb, will show a generic "no blurb" message.
*
* * `target_mob` - The mob to show an area blurb.
* * `override` - Pass `TRUE` to override duplicate checks, for usage with verbs, etc.
*/
/area/proc/do_area_blurb(mob/living/target_mob, override)
if(isnull(area_blurb))
if(override)
to_chat(target_mob, EXAMINE_BLOCK_GREY("There's nothing particularly noteworthy about this area."))
return
if(!(target_mob.ckey in GLOB.area_blurb_stated_to[area_blurb_category]) || override)
LAZYADD(GLOB.area_blurb_stated_to[area_blurb_category], target_mob.ckey)
to_chat(target_mob, EXAMINE_BLOCK_GREY(area_blurb))
/// A verb to view an area's blurb on demand. Overrides the check for if you have seen the blurb before so you can always see it when used.
/mob/living/verb/show_area_blurb()
set name = "Show Area Blurb"
set category = "IC"
if(!incapacitated(INCAPACITATION_KNOCKOUT))
var/area/blurb_verb = get_area(src)
if(blurb_verb)
blurb_verb.do_area_blurb(src, TRUE)
/// A ghost version of the view area blurb verb so you can view it while observing.
/mob/abstract/ghost/observer/verb/ghost_show_area_blurb()
set name = "Show Area Blurb"
set category = "IC"
var/area/blurb_verb = get_area(src)
if(blurb_verb)
blurb_verb.do_area_blurb(src, TRUE)
#undef VOLUME_AMBIENCE
#undef VOLUME_AMBIENT_HUM
#undef VOLUME_MUSIC
+38 -21
View File
@@ -9,11 +9,14 @@
var/pronouns = NEUTER
var/species_items_equipped // used so species that need special items (autoinhalers for vaurca/RMT for offworlders) don't get them twice when they shouldn't.
/// Used so species that need special items (autoinhalers for vaurca/RMT for offworlders) don't get them twice when they shouldn't.
var/species_items_equipped
var/list/hud_list[11]
var/embedded_flag //To check if we've need to roll for damage on movement while an item is imbedded in us.
var/obj/item/rig/wearing_rig // This is very not good, but it's much much better than calling get_rig() every update_canmove() call.
/// To check if we've need to roll for damage on movement while an item is imbedded in us.
var/embedded_flag
/// This is very not good, but it's much much better than calling get_rig() every update_canmove() call.
var/obj/item/rig/wearing_rig
/// Pref holder for the speech bubble style.
var/speech_bubble_type
@@ -215,6 +218,22 @@
/mob/living/carbon/human/get_status_tab_items()
. = ..()
/// This needs to be updated to use signals.
var/holding_gps = FALSE
if(istype(src.get_active_hand(), /obj/item/gps) || istype(src.get_inactive_hand(), /obj/item/gps))
holding_gps = TRUE
var/area/A = get_area(src)
var/area_name
if(holding_gps)
area_name = get_area_display_name(A)
. += "[area_name]"
. += ""
if(A.area_blurb)
. += "[A.area_blurb]"
. += ""
. += "Intent: [a_intent]"
. += "Move Mode: [m_intent]"
if(is_diona() && DS)
@@ -420,8 +439,7 @@
mob_win.set_content(dat)
mob_win.open()
// called when something steps onto a human
// this handles vehicles
/// Called when something steps onto a human. This handles vehicles
/mob/living/carbon/human/on_entered(datum/source, atom/movable/arrived, atom/old_loc, list/atom/old_locs)
..()
@@ -429,7 +447,7 @@
var/obj/vehicle/V = arrived
V.RunOver(src)
// Get rank from ID, ID inside PDA, PDA, ID in wallet, etc.
/// Get rank from ID, ID inside PDA, PDA, ID in wallet, etc.
/mob/living/carbon/human/proc/get_authentification_rank(var/if_no_id = "No id", var/if_no_job = "No job")
var/obj/item/card/id/id = GetIdCard()
if(!istype(id))
@@ -437,8 +455,7 @@
else
return id.rank ? id.rank : if_no_job
//gets assignment from ID or ID inside PDA or PDA itself
//Useful when player do something with computers
/// Gets assignment from ID or ID inside PDA or PDA itself. Useful when player does something with computers.
/mob/living/carbon/human/proc/get_assignment(var/if_no_id = "No ID", var/if_no_job = "No Job")
var/obj/item/card/id/I = GetIdCard()
if(istype(I))
@@ -446,8 +463,7 @@
else
return if_no_id
//gets name from ID or ID inside PDA or PDA itself
//Useful when player do something with computers
/// Gets name from ID or ID inside PDA or PDA itself. Useful when player does something with computers.
/mob/living/carbon/human/proc/get_authentification_name(var/if_no_id = "Unknown")
var/obj/item/card/id/I = GetIdCard()
if(istype(I))
@@ -455,7 +471,7 @@
else
return if_no_id
//repurposed proc. Now it combines get_id_name() and get_face_name() to determine a mob's name variable. Made into a seperate proc as it'll be useful elsewhere
/// Repurposed proc. Now it combines get_id_name() and get_face_name() to determine a mob's name variable.
/mob/living/carbon/human/proc/get_visible_name()
if( wear_mask && (wear_mask.flags_inv&HIDEFACE) ) //Wearing a mask which hides our face, use id-name if possible
return get_id_name("Unknown")
@@ -467,15 +483,14 @@
return "[face_name] (as [id_name])"
return face_name
//Returns "Unknown" if facially disfigured and real_name if not. Useful for setting name when polyacided or when updating a human's name variable
/// Returns "Unknown" if facially disfigured and real_name if not. Useful for setting name when polyacided or when updating a human's name variable
/mob/living/carbon/human/proc/get_face_name()
var/obj/item/organ/external/head = get_organ(BP_HEAD)
if(!head || head.disfigured || head.is_stump() || !real_name || (mutations & HUSK)) //disfigured. use id-name if possible
return "Unknown"
return real_name
//gets name from ID or PDA itself, ID inside PDA doesn't matter
//Useful when player is being seen by other mobs
/// Gets name from ID or PDA itself, ID inside PDA doesn't matter. Useful when player is being seen by other mobs
/mob/living/carbon/human/proc/get_id_name(var/if_no_id = "Unknown")
. = if_no_id
var/obj/item/card/id/I = GetIdCard()
@@ -483,7 +498,7 @@
return I.registered_name
return
//gets ID card object from special clothes slot or null.
/// Gets ID card object from special clothes slot or null.
/mob/living/carbon/human/proc/get_idcard()
if(wear_id)
return wear_id.GetID()
@@ -867,8 +882,8 @@
..()
return
///eyecheck()
///Returns a number between -1 to 2
/// Returns a number between -1 to 2
/mob/living/carbon/human/get_flash_protection(ignore_inherent = FALSE)
//Ling
@@ -900,8 +915,10 @@
if(prob(20))
to_chat(src, SPAN_NOTICE("Something bright flashes in the corner of your vision!"))
//Used by various things that knock people out by applying blunt trauma to the head.
//Checks that the species has a BP_HEAD (brain containing organ) and that hit_zone refers to it.
/**
* Used by various things that knock people out by applying blunt trauma to the head.
* Checks that the species has a BP_HEAD (brain containing organ) and that hit_zone refers to it.
*/
/mob/living/carbon/human/proc/headcheck(var/target_zone, var/brain_tag = BP_BRAIN)
if(!species.has_organ[brain_tag])
return 0
@@ -1089,7 +1106,7 @@
sleep(350) //wait 35 seconds before next volley
lastpuke = FALSE
// A damaged stomach can put blood in your vomit.
/// A damaged stomach can put blood in your vomit.
/mob/living/carbon/human/handle_additional_vomit_reagents(obj/effect/decal/cleanable/vomit/vomit)
..()
if(should_have_organ(BP_STOMACH))
@@ -1358,7 +1375,7 @@
var/obj/item/organ/internal/lungs/L = internal_organs_by_name[species_organ]
return L && L.rescued
//returns 1 if made bloody, returns 0 otherwise
/// Returns 1 if made bloody, returns 0 otherwise
/mob/living/carbon/human/add_blood(mob/living/carbon/C as mob)
if (!..())
return FALSE
+22 -11
View File
@@ -3,13 +3,14 @@
gender = NEUTER
voice_name = "Synthesized Voice"
accent = ACCENT_TTS
var/list/speech_synthesizer_langs = list() //which languages can be vocalized by the speech synthesizer
/// Which languages can be vocalized by the speech synthesizer
var/list/speech_synthesizer_langs = list()
var/speak_statement = "states"
var/speak_exclamation = "declares"
var/speak_query = "queries"
// Description
var/pose //Yes, now AIs can pose too.
var/pose
// Bad Guy Stuff
var/syndicate = FALSE
@@ -18,8 +19,10 @@
var/datum/ai_laws/laws
var/law_channel = DEFAULT_LAW_CHANNEL
var/list/additional_law_channels = list("State" = "")
var/list/stating_laws = list() // Channels laws are currently being stated on
var/obj/item/radio/common_radio // Used to determine default channels
/// Channels laws are currently being stated on
var/list/stating_laws = list()
/// Used to determine default channels
var/obj/item/radio/common_radio
// Hud Stuff
var/list/hud_list[10]
@@ -45,7 +48,7 @@
var/obj/item/card/id/id_card
var/id_card_type = /obj/item/card/id/synthetic
// ACCENT_ALL_IPC with the added consideration that this selection can be used by the ship AI itself, and should not look bad for the SCC. No dregs, Himeans, Trinarists, etc.
/// ACCENT_ALL_IPC with the added consideration that this selection can be used by the ship AI itself, and should not look bad for the SCC. No dregs, Himeans, Trinarists, etc.
var/list/possible_accents = list(ACCENT_CETI, ACCENT_TTS, ACCENT_XANU, ACCENT_COC, ACCENT_ELYRA, ACCENT_ERIDANI, ACCENT_SOL, ACCENT_SILVERSUN_EXPATRIATE, ACCENT_SILVERSUN_ORIGINAL,
ACCENT_PHONG, ACCENT_MARTIAN, ACCENT_KONYAN, ACCENT_LUNA, ACCENT_GIBSON_OVAN, ACCENT_GIBSON_UNDIR, ACCENT_VYSOKA, ACCENT_VENUS, ACCENT_VENUSJIN, ACCENT_JUPITER, ACCENT_CALLISTO,
ACCENT_EUROPA, ACCENT_EARTH, ACCENT_ASSUNZIONE, ACCENT_VISEGRAD, ACCENT_SANCOLETTE, ACCENT_VALKYRIE, ACCENT_MICTLAN, ACCENT_PERSEPOLIS, ACCENT_MEDINA, ACCENT_NEWSUEZ, ACCENT_AEMAQ, ACCENT_DAMASCUS)
@@ -160,34 +163,42 @@
if(bot.connected_ai == ai)
return TRUE
return FALSE
// This is a pure virtual function, it should be overwritten by all subclasses
/// This is a pure virtual function, it should be overwritten by all subclasses
/mob/living/silicon/proc/show_malf_ai()
return FALSE
// this function displays the shuttles ETA in the status panel if the shuttle has been called
/// This function displays the shuttles ETA in the status panel if the shuttle has been called
/mob/living/silicon/proc/show_emergency_shuttle_eta()
if(GLOB.evacuation_controller)
var/eta_status = GLOB.evacuation_controller.get_status_panel_eta()
if(eta_status)
stat(null, eta_status)
// This adds the basic clock, shuttle recall timer, and malf_ai info to all silicon lifeforms
/// This adds the basic clock, shuttle recall timer, and malf_ai info to all silicon lifeforms
/mob/living/silicon/get_status_tab_items()
. = ..()
var/area/A = get_area(src)
var/area_name = get_area_display_name(A)
. += "[area_name]"
. += ""
if(A.area_blurb)
. += "[A.area_blurb]"
. += ""
if(!stat)
. += "System Integrity: [round((health/maxHealth)*100)]%"
else
. += "System Integrity: NON-FUNCTIONAL"
show_malf_ai()
//can't inject synths
/// can't inject synths
/mob/living/silicon/can_inject(mob/user, error_msg)
if(error_msg)
to_chat(user, SPAN_ALERT("The armored plating is too tough."))
return 0
//Silicon mob language procs
// Silicon mob language procs
/mob/living/silicon/can_speak(datum/language/speaking)
return universal_speak || (speaking in src.speech_synthesizer_langs) //need speech synthesizer support to vocalize a language
+59
View File
@@ -0,0 +1,59 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# - (fixes bugs)
# wip
# - (work in progress)
# qol
# - (quality of life)
# soundadd
# - (adds a sound)
# sounddel
# - (removes a sound)
# rscadd
# - (adds a feature)
# rscdel
# - (removes a feature)
# imageadd
# - (adds an image or sprite)
# imagedel
# - (removes an image or sprite)
# spellcheck
# - (fixes spelling or grammar)
# experiment
# - (experimental change)
# balance
# - (balance changes)
# code_imp
# - (misc internal code change)
# refactor
# - (refactors code)
# config
# - (makes a change to the config files)
# admin
# - (makes changes to administrator tools)
# server
# - (miscellaneous changes to server)
#################################
# Your name.
author: Batrachophrenoboocosmomachia
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit.
# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog.
changes:
- qol: "Moves area blurbs entirely from chat window to status tab."
- code_imp: "Updates comments in affected files to use dmdocs."
@@ -19,25 +19,21 @@
/area/cult_base/hallways_north
name = "Hallways North"
icon_state = "hallC"
area_blurb_category = "cult_base_hallway"
area_blurb = "A faint scent of copper or metal is present here."
/area/cult_base/hallways_south
name = "Hallways South"
icon_state = "hallC"
area_blurb_category = "cult_base_hallway"
area_blurb = "A faint scent of copper or metal is present here."
/area/cult_base/hallways_east
name = "Hallways East"
icon_state = "hallC"
area_blurb_category = "cult_base_hallway"
area_blurb = "A faint scent of copper or metal is present here."
/area/cult_base/hallways_west
name = "Hallways West"
icon_state = "hallC"
area_blurb_category = "cult_base_hallway"
area_blurb = "A faint scent of copper or metal is present here."
// ---- living
@@ -24,7 +24,6 @@
name = "Point Verdant - Waterside"
ambience = AMBIENCE_KONYANG_WATER
area_blurb = "The crashing sounds of waves on the shore punctuates the air. The vast ocean spreads out as far as the eye can see, looking almost flat."
area_blurb_category = "verdant_shore"
lighting = TRUE
/area/point_verdant/reservoir
@@ -37,7 +36,6 @@
name = "Point Verdant - Sewers"
sound_environment = SOUND_ENVIRONMENT_SEWER_PIPE
area_blurb = "Tainted water flows through these dark and grimy sewers, it smells utterly horrible down here. It's best not to think what you are breathing in, or touching."
area_blurb_category = "verdant_sewers"
//All walls and interior stuff uses this area, otherwise rain will appear over walls. suboptimal!
/area/point_verdant/interior
name = "Point Verdant - Indoors"
@@ -66,7 +64,6 @@
/area/point_verdant/interior/arcade
name = "Point Verdant - Arcade"
area_blurb = "The deafening avalanche of arcade machines begging for your attention fill the air, all promising fantastic gaming experiences for fun and prizes."
area_blurb_category = "verdant_arcade"
/area/point_verdant/interior/minimart
name = "Point Verdant - Convenience Store"
@@ -93,7 +90,6 @@
/area/point_verdant/interior/decrepit
name = "Point Verdant - Decrepit Apartments"
area_blurb = "A damp smell lingers in the air inside these dusty apartments, it might be wise to keep an eye out for mold."
area_blurb_category = "verdant_decrepit_apartment"
/area/point_verdant/interior/pharmacy
name = "Point Verdant - Pharmacy"
@@ -126,7 +122,6 @@
/area/point_verdant/interior/tunnels
name = "Point Verdant - Tunnels"
area_blurb = "Sounds echo impressively through these tunnels."
area_blurb_category = "verdant_tunnels"
/area/point_verdant/interior/shallow//For open-walled areas, like awnings and balconies
sound_environment = SOUND_ENVIRONMENT_CITY
@@ -134,7 +129,6 @@
/area/point_verdant/outdoors
name = "Point Verdant - Outdoors"
area_blurb = "The sounds and smells of Point Verdant bombard you from all directions. Skyscrapers tower up further into the city."
area_blurb_category = "verdant_outdoors"
lighting = TRUE
/area/point_verdant/water
-3
View File
@@ -113,7 +113,6 @@
station_area = TRUE
holomap_color = HOLOMAP_AREACOLOR_COMMAND
area_blurb = "The sound here seems to carry more than others, every click of a shoe or clearing of a throat amplified. The smell of ink, written and printed, wafts notably through the air."
area_blurb_category = "command"
/// ENGINEERING_AREAS
/area/engineering
@@ -130,7 +129,6 @@
no_light_control = 1
ambience = list(AMBIENCE_ENGINEERING, AMBIENCE_ATMOS)
area_blurb = "Many volume tanks filled with gas reside here, some providing vital gases for the vessel's life support systems."
area_blurb_category = "atmos"
/area/engineering/gravity_gen
name = "Engineering - Gravity Generator"
@@ -144,7 +142,6 @@
turf_initializer = new /datum/turf_initializer/maintenance()
ambience = AMBIENCE_MAINTENANCE
area_blurb = "Scarcely lit, cramped, and filled with stale, dusty air. Around you hisses compressed air through the pipes, a buzz of electrical charge through the wires, and muffled rumbles of the hull settling. This place may feel alien compared to the interior of the ship and is a place where one could get lost or badly hurt, but some may find the isolation comforting."
area_blurb_category = "maint"
/area/maintenance/maintcentral
name = "Bridge Maintenance"
@@ -70,7 +70,6 @@
no_light_control = 1
area_blurb = "The sound here seems to carry more than others, every click of a shoe or clearing of a throat amplified. \
The smell of ink, written and printed, wafts notably through the air."
area_blurb_category = "command"
horizon_deck = 3
/area/horizon/command/bridge/bridge_crew
@@ -101,7 +100,6 @@
ambience = list()
sound_environment = SOUND_AREA_MEDIUM_SOFTFLOOR
area_blurb = "A place for behind-closed-doors meetings to get things done (or to argue for hours)."
area_blurb_category = "command_meeting"
area_flags = AREA_FLAG_RAD_SHIELDED
/area/horizon/command/bridge/cciaroom
@@ -109,7 +107,6 @@
icon_state = "hr"
sound_environment = SOUND_AREA_MEDIUM_SOFTFLOOR
area_blurb = "You might feel dread when you enter this meeting room."
area_blurb_category = "hr_meeting"
area_flags = AREA_FLAG_RAD_SHIELDED
/area/horizon/command/bridge/cciaroom/lounge
@@ -117,7 +114,6 @@
icon_state = "hrlounge"
sound_environment = SOUND_AREA_SMALL_SOFTFLOOR
area_blurb = "A place that may worsen any anxiety surrounding meetings with your bosses' bosses."
area_blurb_category = "hr_lounge"
area_flags = AREA_FLAG_RAD_SHIELDED
/area/horizon/command/bridge/selfdestruct
@@ -129,7 +125,6 @@
/area/horizon/command/bridge/controlroom
name = "Bridge Control Room"
area_blurb = "The full expanse of space lies beyond a thick pane of reinforced glass, all that protects you from a cold and painful death. The computers hum, showing various displays and holographic signs. The sight would be overwhelming to one unused to such an environment. Even at full power, the sensors fail to map even a fraction of the dots of light making up the cosmic filament."
area_blurb_category = "bridge"
area_flags = AREA_FLAG_RAD_SHIELDED
//Teleporter
@@ -138,4 +133,3 @@
icon_state = "teleporter"
horizon_deck = 1
area_blurb = "The air in here always feels charged with the subdued crackle of electricity, tasting faintly of ozone."
area_blurb_category = "teleporter"
@@ -35,7 +35,6 @@
icon_state = "engineering_break"
sound_environment = SOUND_AREA_MEDIUM_SOFTFLOOR
area_blurb = "The intermixed odors of coffee and oil lingers in the air."
area_blurb_category = "engi_breakroom"
horizon_deck = 3
/area/horizon/engineering/locker_room
@@ -49,7 +48,6 @@
horizon_deck = 1
area_flags = AREA_FLAG_RAD_SHIELDED
area_blurb = "The air in here tastes like copper, sour sugar, and smoke; none of the angles seem right. That probably means everything is working."
area_blurb_category = "engi_breakroom"
/area/horizon/engineering/lobby
name = "Lobby"
@@ -117,7 +115,6 @@
ambience = list(AMBIENCE_ENGINEERING, AMBIENCE_ATMOS)
area_blurb = "Many volume tanks filled with gas reside here, some providing vital gases for the vessel's life support systems. \
Through the aft windows, exterior stowage tanks filled mostly with hazardous or volatile gases loom patiently."
area_blurb_category = "atmos"
horizon_deck = 1
subdepartment = SUBLOC_ATMOS
@@ -6,7 +6,6 @@
sound_environment = SOUND_AREA_TUNNEL_ENCLOSED
turf_initializer = new /datum/turf_initializer/maintenance()
area_blurb = "Scarcely lit, cramped, and filled with stale, dusty air. Around you hisses compressed air through the pipes, a buzz of electrical charge through the wires, and muffled rumbles of the hull settling. This place may feel alien compared to the interior of the ship and is a place where one could get lost or badly hurt, but some may find the isolation comforting."
area_blurb_category = "maint"
ambience = AMBIENCE_MAINTENANCE
department = LOC_MAINTENANCE
@@ -246,7 +245,6 @@
sound_environment = SOUND_AREA_SMALL_ENCLOSED
ambience = AMBIENCE_SUBSTATION
area_blurb = "The hum of the substation's machinery fills the room, holding equipment made to transform voltage and manage power supply to various rooms, and to act as an emergency battery. In comparison to the maintenance tunnels, these stations are far less dusty."
area_blurb_category = "substation"
/// Engineering (Main)
/area/horizon/maintenance/substation/engineering
@@ -3,7 +3,6 @@
station_area = TRUE
holomap_color = HOLOMAP_AREACOLOR_MEDICAL
area_blurb = "Various smells waft through the sick bay: disinfectants, various medicines, sterile gloves, and gauze. It's not a pleasant smell, but one you could grow to ignore."
area_blurb_category = "mecical"
department = LOC_MEDICAL
/area/horizon/medical/paramedic
@@ -24,7 +23,6 @@
icon_state = "medbay3"
area_flags = AREA_FLAG_RAD_SHIELDED
area_blurb = "Featuring wood floors and soft carpets, this room has a warmer feeling compared to the sterility of the rest of the medical department."
area_blurb_category = "psych"
horizon_deck = 2
lightswitch = FALSE
@@ -83,7 +81,6 @@
/area/horizon/medical/ward/isolation
name = "Isolation Ward"
area_blurb = "This seldom-used ward somehow smells sterile and musty at the same time."
area_blurb_category = "medical_isolation"
horizon_deck = 3
/area/horizon/medical/morgue
@@ -91,7 +88,6 @@
icon_state = "morgue"
ambience = AMBIENCE_GHOSTLY
area_blurb = "Morgue trays sit within this room, ready to hold the deceased until their postmortem wishes can be attended to."
area_blurb_category = "morgue"
horizon_deck = 1
/area/horizon/medical/equipment
@@ -102,7 +98,6 @@
/area/horizon/medical/smoking
name = "Smoking Lounge"
area_blurb = "The smell of cigarette smoke lingers within this room."
area_blurb_category = "medical_smoking"
horizon_deck = 3
/area/horizon/medical/washroom
@@ -12,7 +12,6 @@
icon_state = "dark160"
sound_environment = SOUND_AREA_LARGE_ENCLOSED
area_blurb = "Scuff marks scar the floor from the movement of many crates and stored goods."
area_blurb_category = "ops_warehouse"
horizon_deck = 1
/area/horizon/operations/package_conveyors
@@ -90,7 +89,6 @@
/area/horizon/hangar/intrepid
name = "Primary Hangar"
area_blurb = "A big, open room, home to the SCCV Horizon's largest shuttle, the Intrepid."
area_blurb_category = "hanger"
/area/horizon/hangar/intrepid/interstitial
name = "Intrepid Hangar Access"
@@ -99,19 +97,16 @@
name = "Starboard Auxiliary Hangar"
holomap_color = HOLOMAP_AREACOLOR_OPERATIONS
area_blurb = "A big, open room, home to the SCCV Horizon's mining shuttle, the Spark."
area_blurb_category = "hanger"
/area/horizon/hangar/auxiliary
name = "Port Auxiliary Hangar"
area_blurb = "A big, open room, home to two of the SCCV Horizon's shuttles, the Quark and the Canary."
area_blurb_category = "hanger"
/// OPERATIONS_AREAS - MACHINIST_AREAS
/area/horizon/operations/machinist
name = "Machinist Workshop"
icon_state = "machinist_workshop"
area_blurb = "The scents of oil and mechanical lubricants fill the air in this workshop."
area_blurb_category = "robotics"
subdepartment = SUBLOC_MACHINING
horizon_deck = 2
@@ -119,7 +114,6 @@
name = "Machinist Surgical Bay"
icon_state = "machinist_workshop"
area_blurb = "Back in the workshop's surgical bay, the sharp-edged odor of sterilized equipment predominates."
area_blurb_category = "robotics"
horizon_deck = 2
/// OPERATIONS_AREAS - MINING_AREAS
@@ -73,7 +73,6 @@
name = "Cafe"
icon_state = "cafeteria"
area_blurb = "The smell of coffee wafts over from the cafe. Patience, the tree, stands proudly in the centre of the atrium."
area_blurb_category = "d3_cafe"
horizon_deck = 3
// Custodial areas
@@ -84,7 +83,6 @@
sound_environment = SOUND_AREA_LARGE_ENCLOSED
ambience = list(AMBIENCE_FOREBODING, AMBIENCE_ENGINEERING)
area_blurb = "A strong, concentrated smell of many cleaning supplies linger within this room."
area_blurb_category = "janitor"
horizon_deck = 1
area_flags = AREA_FLAG_PREVENT_PERSISTENT_TRASH
@@ -93,7 +91,6 @@
icon_state = "disposal"
ambience = list(AMBIENCE_ENGINEERING, AMBIENCE_ATMOS) // Industrial sounds.
area_blurb = "A large trash compactor takes up much of the room, ready to crush the ship's rubbish."
area_blurb_category = "trash_compactor"
/area/horizon/service/custodial/disposals/deck_1
name = "Disposals and Recycling"