mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 21:12:24 +01:00
area blurbs system (#17741)
* blurb * verb and changes * alterations * changes * comment * more comments and ghost show area blurb verb * adjustments * suggested changes + additions * reviewed changes * newline * Update sccv_horizon_areas.dm remove flags var * Update command.dm remove flags var here too
This commit is contained in:
@@ -64,6 +64,11 @@
|
||||
var/station_area = FALSE
|
||||
var/centcomm_area = FALSE
|
||||
|
||||
/// A text-based description of the area, can be used for sounds, notable things in the room, etc.
|
||||
var/area_blurb
|
||||
/// This list of ckeys is here to make sure we don't state our descriptive blurb to a person more than once.
|
||||
var/list/blurbed_stated_to = list()
|
||||
|
||||
// Don't move this to Initialize(). Things in here need to run before SSatoms does.
|
||||
/area/New()
|
||||
// DMMS hook - Required for areas to work properly.
|
||||
@@ -312,6 +317,7 @@ var/list/mob/living/forced_ambiance_list = new
|
||||
// Stop playing music.
|
||||
else
|
||||
stop_music(L)
|
||||
do_area_blurb(L)
|
||||
|
||||
// Play Ambience
|
||||
/area/proc/play_ambience(var/mob/living/L)
|
||||
@@ -466,6 +472,43 @@ var/list/mob/living/forced_ambiance_list = new
|
||||
for(var/obj/machinery/M in T)
|
||||
M.shuttle_move(T)
|
||||
|
||||
/**
|
||||
* 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, SPAN_NOTICE("No blurb set for this area."))
|
||||
return
|
||||
|
||||
if(!(target_mob.ckey in blurbed_stated_to) || override)
|
||||
blurbed_stated_to |= target_mob.ckey
|
||||
to_chat(target_mob, SPAN_NOTICE("[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/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
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
################################
|
||||
# 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
|
||||
# wip (For works in progress)
|
||||
# tweak
|
||||
# soundadd
|
||||
# sounddel
|
||||
# rscadd (general adding of nice things)
|
||||
# rscdel (general deleting of nice things)
|
||||
# imageadd
|
||||
# imagedel
|
||||
# maptweak
|
||||
# spellcheck (typo fixes)
|
||||
# experiment
|
||||
# balance
|
||||
# admin
|
||||
# backend
|
||||
# security
|
||||
# refactor
|
||||
#################################
|
||||
|
||||
# Your name.
|
||||
author: greenjoe12345
|
||||
|
||||
# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
|
||||
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
|
||||
changes:
|
||||
- rscadd: "Adds a system for adding blurbs to areas, little bits of flavor text that that play as you enter for the first time."
|
||||
@@ -6,6 +6,7 @@
|
||||
no_light_control = 1
|
||||
station_area = 1
|
||||
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 wafts notably through the air."
|
||||
|
||||
/area/bridge/minibar
|
||||
name = "Command Break Room"
|
||||
@@ -41,6 +42,7 @@
|
||||
icon_state = "bridge"
|
||||
ambience = list()
|
||||
sound_env = MEDIUM_SOFTFLOOR
|
||||
area_blurb = "A place for behind-closed-doors meetings to get things done, or argue for hours in..."
|
||||
|
||||
/area/bridge/selfdestruct
|
||||
name = "Command - Station Authentication Terminal Safe"
|
||||
@@ -48,6 +50,7 @@
|
||||
|
||||
/area/bridge/controlroom // Horizon.
|
||||
name = "Command - Control Room"
|
||||
area_blurb = "The full expanse of space lies beyond a thick pane of glass, all that protects you from a cold death. The computers all hum with various displays and holographic signs, overwhelming if you were not used 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_flags = AREA_FLAG_RAD_SHIELDED
|
||||
|
||||
/area/crew_quarters/captain
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
sound_env = LARGE_ENCLOSED
|
||||
no_light_control = 1
|
||||
ambience = list(AMBIENCE_ENGINEERING, AMBIENCE_ATMOS)
|
||||
area_blurb = "Many tanks are here, providing life support systems for the vessel."
|
||||
|
||||
/area/engineering/atmos/monitoring
|
||||
name = "Engineering - Atmospherics Monitoring Room"
|
||||
@@ -94,6 +95,7 @@
|
||||
name = "Engineering - Break Room"
|
||||
icon_state = "engineering_break"
|
||||
sound_env = MEDIUM_SOFTFLOOR
|
||||
area_blurb = "The smells of coffee and motor oil linger in the air."
|
||||
|
||||
/area/engineering/engine_eva
|
||||
name = "Engineering - Engine EVA"
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
turf_initializer = new /datum/turf_initializer/maintenance()
|
||||
ambience = AMBIENCE_MAINTENANCE
|
||||
station_area = 1
|
||||
area_blurb = "Dark, tight, and filled with barely filtered air. This place feels alien compared to the interior of the ship, a place where one could get lost or badly hurt. Around you hisses compressed air through pipes, a buzz of electrical charge through wires, and rumbles of the hull settling through damp maintenance corridors."
|
||||
|
||||
/area/maintenance/civ
|
||||
name = "Civilian Maintenance"
|
||||
@@ -253,6 +254,7 @@
|
||||
icon_state = "substation"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
ambience = AMBIENCE_SUBSTATION
|
||||
area_blurb = "Clearly a substation, designed to downgrade voltage to departments in case of electrical hazards, and to act as an emergency battery in case of engine failure. Unlike the maintenance corridors, these stations are far less dusty."
|
||||
|
||||
/area/maintenance/substation/engineering // Engineering
|
||||
name = "Engineering Substation"
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
lightswitch = TRUE
|
||||
icon_state = "medbay"
|
||||
ambience = list('sound/ambience/signal.ogg')
|
||||
area_blurb = "The smells of a hospital waft through the air: strong sterilizing agents, various medicines, and sterile gloves. It's not a pleasant smell, but one you could grow to ignore."
|
||||
|
||||
/area/medical/medbay2
|
||||
name = "Medbay Hallway - Starboard"
|
||||
@@ -52,6 +53,7 @@
|
||||
/area/medical/psych
|
||||
name = "Medical - Psych Room"
|
||||
icon_state = "medbay3"
|
||||
area_blurb = "With wooden floors and carpets, this room has a warmer feeling compared to the sterility of the rest of the medical wing."
|
||||
|
||||
/area/medical/upperlevel
|
||||
name = "Medical - Upper-Level Hallway"
|
||||
@@ -124,6 +126,7 @@
|
||||
name = "Medical - Long-term Morgue"
|
||||
icon_state = "morgue"
|
||||
ambience = AMBIENCE_GHOSTLY
|
||||
area_blurb = "Morgue trays sit within this room to hold the deceased until their postmortem wishes can be attended to."
|
||||
|
||||
/area/medical/pharmacy
|
||||
name = "Medical - Pharmacy"
|
||||
@@ -179,6 +182,7 @@
|
||||
/area/medical/icu
|
||||
name = "Medical - Intensive Care Unit"
|
||||
icon_state = "cryo"
|
||||
area_blurb = "The sounds of life support equipment can be heard within the room."
|
||||
|
||||
/area/medical/triage
|
||||
name = "Medical - Triage Room"
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
/area/tcommsat/chamber
|
||||
name = "Telecoms Central Compartment"
|
||||
icon_state = "tcomsatcham"
|
||||
area_blurb = "Countless machines sit here, an unfathomably complicated network that runs every radio and computer connection. The air lacks any notable scent, so filtered of dust or pollutants before being allowed into the sensitive machinery."
|
||||
|
||||
/area/turret_protected/tcomsat
|
||||
name = "Telecoms Exterior"
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
icon = 'maps/away/away_site/blueriver/blueriver.dmi'
|
||||
ambience = list('sound/effects/wind/spooky0.ogg','sound/effects/wind/spooky1.ogg')
|
||||
sound_env = ASTEROID
|
||||
area_blurb = "A strange, glowing blue river can be seen flowing through the cave. In it you can see yourself touching it, becoming one with it. As you see that image, smells of the past, of pleasant memories waft through the air. For just a flicker of a second you consider it before common sense kicks in. This is unnatural, this is wrong. Touching that is a horrible idea."
|
||||
|
||||
/area/bluespaceriver/ground
|
||||
name = "\improper Arctic Planet Surface"
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
/area/point_verdant/coast
|
||||
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/point_verdant/reservoir
|
||||
name = "Point Verdant - Reservoir"
|
||||
@@ -23,6 +24,7 @@
|
||||
/area/point_verdant/sewer
|
||||
name = "Point Verdant - Sewers"
|
||||
sound_env = 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."
|
||||
|
||||
//All walls and interior stuff uses this area, otherwise rain will appear over walls. suboptimal!
|
||||
/area/point_verdant/interior
|
||||
@@ -46,6 +48,7 @@
|
||||
|
||||
/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/point_verdant/interior/police
|
||||
name = "Point Verdant - Police Department"
|
||||
@@ -62,6 +65,7 @@
|
||||
|
||||
/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 mould."
|
||||
|
||||
/area/point_verdant/interior/pharmacy
|
||||
name = "Point Verdant - Pharmacy"
|
||||
@@ -81,6 +85,7 @@
|
||||
|
||||
/area/point_verdant/interior/tunnels
|
||||
name = "Point Verdant - Tunnels"
|
||||
area_blurb = "Sounds echo impressively through these tunnels."
|
||||
|
||||
/area/point_verdant/interior/shallow//For open-walled areas, like awnings and balconies
|
||||
sound_env = CITY
|
||||
@@ -90,6 +95,7 @@
|
||||
/area/point_verdant/outdoors
|
||||
name = "Point Verdant - Outdoors"
|
||||
ambience = AMBIENCE_KONYANG_RAIN
|
||||
area_blurb = "The sounds and smells of Point Verdant bombard you from all directions. Skyscrapers tower up further into the city. Rain batters down on your body, encouraging you to seek shelter." //alter this if a dynamic weather system is added, so its isn't always raining.
|
||||
|
||||
/area/point_verdant/outdoors/Initialize()
|
||||
. = ..()
|
||||
|
||||
@@ -59,6 +59,7 @@
|
||||
|
||||
/area/medical/ward/isolation
|
||||
name = "Medical - Isolation Ward"
|
||||
area_blurb = "This seldom-used ward somehow smells sterile and musty at the same time."
|
||||
|
||||
/area/medical/emergency_storage
|
||||
name = "Medical - Lower Deck Emergency Storage"
|
||||
@@ -74,6 +75,7 @@
|
||||
|
||||
/area/medical/smoking
|
||||
name = "Medical - Smoking Lounge"
|
||||
area_blurb = "The smell of cigarette smoke lingers within this room."
|
||||
|
||||
/area/medical/washroom
|
||||
name = "Medical - Washroom"
|
||||
@@ -118,6 +120,7 @@
|
||||
|
||||
/area/hangar/intrepid
|
||||
name = "Intrepid Hangar"
|
||||
area_blurb = "A big, open room, often housing the Horizon's largest shuttle, the Intrepid."
|
||||
|
||||
/area/hangar/intrepid/interstitial
|
||||
name = "Intrepid Hangar Access"
|
||||
@@ -155,10 +158,12 @@
|
||||
name = "Operations Equipment Storage"
|
||||
icon_state = "dark160"
|
||||
sound_env = LARGE_ENCLOSED
|
||||
area_blurb = "Scuff marks scar the floor from the movement of many crates and stored goods."
|
||||
|
||||
/area/operations/lower/machinist
|
||||
name = "Machinist Workshop"
|
||||
icon_state = "machinist_workshop"
|
||||
area_blurb = "The scents of oil and machine lubricant fill the air in this workshop."
|
||||
|
||||
/area/operations/lobby
|
||||
name = "Operations Lobby"
|
||||
@@ -665,6 +670,7 @@
|
||||
name = "Horizon - Deck 3 Cafeteria"
|
||||
icon_state = "cafeteria"
|
||||
holomap_color = HOLOMAP_AREACOLOR_CIVILIAN
|
||||
area_blurb = "The smell of coffee wafts over from the cafe. Patience the tree stands proudly in the centre of the atrium."
|
||||
|
||||
// Custodial
|
||||
/area/horizon/custodial
|
||||
@@ -674,11 +680,13 @@
|
||||
sound_env = LARGE_ENCLOSED
|
||||
ambience = list(AMBIENCE_FOREBODING, AMBIENCE_ENGINEERING)
|
||||
holomap_color = HOLOMAP_AREACOLOR_CIVILIAN
|
||||
area_blurb = "A strong, concentrated smell of many cleaning supplies sits within this room."
|
||||
|
||||
/area/horizon/custodial/disposals
|
||||
name = "Horizon - Disposals and Recycling"
|
||||
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/horizon/custodial/auxiliary
|
||||
name = "Horizon - Auxiliary Custodial Closet"
|
||||
@@ -821,6 +829,7 @@
|
||||
icon_state = "zta"
|
||||
sound_env = LARGE_ENCLOSED
|
||||
ambience = AMBIENCE_SINGULARITY
|
||||
area_blurb = "A gargantuan machine dominates the room, covered in components and moving parts. Its name is befitting of its size."
|
||||
area_flags = AREA_FLAG_HIDE_FROM_HOLOMAP
|
||||
|
||||
// Longbow
|
||||
|
||||
Reference in New Issue
Block a user