mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-24 20:47:43 +01:00
Sound environment changes. Different values for hallways, carpeted rooms, maintenance tunnels, etc. Holodeck sound environment changes with the loaded program
In low-pressure or space, sounds will be heard in sound environment 22 (underwater))
This commit is contained in:
@@ -13,6 +13,24 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
|
||||
*/
|
||||
|
||||
//Sound environment defines. Reverb preset for sounds played in this area, see sound datum reference for more.
|
||||
//Note that the environment of a sound is automatically set to 22 (underwater) for low-pressure in sound.dm
|
||||
#define STANDARD_STATION 5 //stoneroom
|
||||
#define LARGE_ENCLOSED 10 //hangar
|
||||
#define SMALL_ENCLOSED 3 //bathroom
|
||||
#define TUNNEL_ENCLOSED 8 //cave
|
||||
#define LARGE_SOFTFLOOR 11 //carpetted hallway
|
||||
#define MEDIUM_SOFTFLOOR 4 //livingroom
|
||||
#define SMALL_SOFTFLOOR 2 //room
|
||||
#define ASTEROID 8 //cave
|
||||
|
||||
//for holodeck
|
||||
#define SPACE 22 //underwater
|
||||
#define ARENA 9 //arena
|
||||
#define PLAIN 19 //plain
|
||||
#define FOREST 15 //forest
|
||||
#define AUDITORIUM 6 //auditorium
|
||||
#define CONCERT_HALL 7 //concert hall
|
||||
|
||||
|
||||
/area
|
||||
@@ -53,7 +71,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
var/air_doors_activated = 0
|
||||
var/list/ambience = list('sound/ambience/ambigen1.ogg','sound/ambience/ambigen3.ogg','sound/ambience/ambigen4.ogg','sound/ambience/ambigen5.ogg','sound/ambience/ambigen6.ogg','sound/ambience/ambigen7.ogg','sound/ambience/ambigen8.ogg','sound/ambience/ambigen9.ogg','sound/ambience/ambigen10.ogg','sound/ambience/ambigen11.ogg','sound/ambience/ambigen12.ogg','sound/ambience/ambigen14.ogg')
|
||||
var/list/forced_ambience = null
|
||||
var/sound_env = 2 //reverb preset for sounds played in this area, see sound datum reference for more
|
||||
var/sound_env = STANDARD_STATION
|
||||
/*Adding a wizard area teleport list because motherfucking lag -- Urist*/
|
||||
/*I am far too lazy to make it a proper list of areas so I'll just make it run the usual telepot routine at the start of the game*/
|
||||
var/list/teleportlocs = list()
|
||||
@@ -143,6 +161,7 @@ area/space/atmosalert()
|
||||
|
||||
/area/shuttle
|
||||
requires_power = 0
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/shuttle/arrival
|
||||
name = "\improper Arrival Shuttle"
|
||||
@@ -405,15 +424,18 @@ area/space/atmosalert()
|
||||
name = "\improper Moon"
|
||||
icon_state = "asteroid"
|
||||
requires_power = 0
|
||||
sound_env = ASTEROID
|
||||
|
||||
/area/asteroid/cave // -- TLE
|
||||
name = "\improper Moon - Underground"
|
||||
icon_state = "cave"
|
||||
requires_power = 0
|
||||
sound_env = ASTEROID
|
||||
|
||||
/area/asteroid/artifactroom
|
||||
name = "\improper Moon - Artifact"
|
||||
icon_state = "cave"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
|
||||
|
||||
@@ -438,6 +460,7 @@ area/space/atmosalert()
|
||||
name = "\improper Thunderdome"
|
||||
icon_state = "thunder"
|
||||
requires_power = 0
|
||||
sound_env = ARENA
|
||||
|
||||
/area/tdome/tdome1
|
||||
name = "\improper Thunderdome (Team 1)"
|
||||
@@ -634,6 +657,7 @@ area/space/atmosalert()
|
||||
|
||||
/area/maintenance
|
||||
flags = RAD_SHIELDED
|
||||
sound_env = TUNNEL_ENCLOSED
|
||||
|
||||
/area/maintenance/aft
|
||||
name = "Aft Maintenance"
|
||||
@@ -768,6 +792,7 @@ area/space/atmosalert()
|
||||
/area/maintenance/substation
|
||||
name = "Substation"
|
||||
icon_state = "substation"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/maintenance/substation/engineering // Probably will be connected to engineering SMES room, as wires cannot be crossed properly without them sharing powernets.
|
||||
name = "Engineering Substation"
|
||||
@@ -800,7 +825,7 @@ area/space/atmosalert()
|
||||
//Hallway
|
||||
|
||||
/area/hallway/primary/
|
||||
sound_env = 12 //hallway
|
||||
sound_env = LARGE_ENCLOSED
|
||||
|
||||
/area/hallway/primary/fore
|
||||
name = "\improper Fore Primary Hallway"
|
||||
@@ -865,10 +890,12 @@ area/space/atmosalert()
|
||||
name = "\improper Heads of Staff Meeting Room"
|
||||
icon_state = "bridge"
|
||||
music = null
|
||||
sound_env = MEDIUM_SOFTFLOOR
|
||||
|
||||
/area/crew_quarters/captain
|
||||
name = "\improper Command - Captain's Office"
|
||||
icon_state = "captain"
|
||||
sound_env = MEDIUM_SOFTFLOOR
|
||||
|
||||
/area/crew_quarters/heads/hop
|
||||
name = "\improper Command - HoP's Office"
|
||||
@@ -916,6 +943,7 @@ area/space/atmosalert()
|
||||
/area/crew_quarters/toilet
|
||||
name = "\improper Dormitory Toilets"
|
||||
icon_state = "toilet"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/crew_quarters/sleep
|
||||
name = "\improper Dormitories"
|
||||
@@ -924,10 +952,12 @@ area/space/atmosalert()
|
||||
/area/crew_quarters/sleep/engi_wash
|
||||
name = "\improper Engineering Washroom"
|
||||
icon_state = "toilet"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/crew_quarters/sleep/bedrooms
|
||||
name = "\improper Dormitory Bedroom One"
|
||||
icon_state = "Sleep"
|
||||
sound_env = SMALL_SOFTFLOOR
|
||||
|
||||
/area/crew_quarters/sleep/cryo
|
||||
name = "\improper Cryogenic Storage"
|
||||
@@ -940,6 +970,7 @@ area/space/atmosalert()
|
||||
/area/crew_quarters/sleep_male/toilet_male
|
||||
name = "\improper Male Toilets"
|
||||
icon_state = "toilet"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/crew_quarters/sleep_female
|
||||
name = "\improper Female Dorm"
|
||||
@@ -948,6 +979,7 @@ area/space/atmosalert()
|
||||
/area/crew_quarters/sleep_female/toilet_female
|
||||
name = "\improper Female Toilets"
|
||||
icon_state = "toilet"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/crew_quarters/locker
|
||||
name = "\improper Locker Room"
|
||||
@@ -956,6 +988,7 @@ area/space/atmosalert()
|
||||
/area/crew_quarters/locker/locker_toilet
|
||||
name = "\improper Locker Toilets"
|
||||
icon_state = "toilet"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/crew_quarters/fitness
|
||||
name = "\improper Fitness Room"
|
||||
@@ -972,10 +1005,12 @@ area/space/atmosalert()
|
||||
/area/crew_quarters/bar
|
||||
name = "\improper Bar"
|
||||
icon_state = "bar"
|
||||
sound_env = LARGE_SOFTFLOOR
|
||||
|
||||
/area/crew_quarters/theatre
|
||||
name = "\improper Theatre"
|
||||
icon_state = "Theatre"
|
||||
sound_env = LARGE_SOFTFLOOR
|
||||
|
||||
/area/library
|
||||
name = "\improper Library"
|
||||
@@ -985,6 +1020,7 @@ area/space/atmosalert()
|
||||
name = "\improper Chapel"
|
||||
icon_state = "chapel"
|
||||
ambience = list('sound/ambience/ambicha1.ogg','sound/ambience/ambicha2.ogg','sound/ambience/ambicha3.ogg','sound/ambience/ambicha4.ogg','sound/music/traitor.ogg')
|
||||
sound_env = LARGE_ENCLOSED
|
||||
|
||||
/area/chapel/office
|
||||
name = "\improper Chapel Office"
|
||||
@@ -1001,6 +1037,7 @@ area/space/atmosalert()
|
||||
name = "\improper Holodeck"
|
||||
icon_state = "Holodeck"
|
||||
lighting_use_dynamic = 0
|
||||
sound_env = LARGE_ENCLOSED
|
||||
|
||||
/area/holodeck/alphadeck
|
||||
name = "\improper Holodeck Alpha"
|
||||
@@ -1010,21 +1047,27 @@ area/space/atmosalert()
|
||||
|
||||
/area/holodeck/source_emptycourt
|
||||
name = "\improper Holodeck - Empty Court"
|
||||
sound_env = ARENA
|
||||
|
||||
/area/holodeck/source_boxingcourt
|
||||
name = "\improper Holodeck - Boxing Court"
|
||||
sound_env = ARENA
|
||||
|
||||
/area/holodeck/source_basketball
|
||||
name = "\improper Holodeck - Basketball Court"
|
||||
sound_env = ARENA
|
||||
|
||||
/area/holodeck/source_thunderdomecourt
|
||||
name = "\improper Holodeck - Thunderdome Court"
|
||||
sound_env = ARENA
|
||||
|
||||
/area/holodeck/source_courtroom
|
||||
name = "\improper Holodeck - Courtroom"
|
||||
sound_env = AUDITORIUM
|
||||
|
||||
/area/holodeck/source_beach
|
||||
name = "\improper Holodeck - Beach"
|
||||
sound_env = PLAIN
|
||||
|
||||
/area/holodeck/source_burntest
|
||||
name = "\improper Holodeck - Atmospheric Burn Test"
|
||||
@@ -1034,22 +1077,28 @@ area/space/atmosalert()
|
||||
|
||||
/area/holodeck/source_meetinghall
|
||||
name = "\improper Holodeck - Meeting Hall"
|
||||
sound_env = AUDITORIUM
|
||||
|
||||
/area/holodeck/source_theatre
|
||||
name = "\improper Holodeck - Theatre"
|
||||
sound_env = CONCERT_HALL
|
||||
|
||||
/area/holodeck/source_picnicarea
|
||||
name = "\improper Holodeck - Picnic Area"
|
||||
sound_env = PLAIN
|
||||
|
||||
/area/holodeck/source_snowfield
|
||||
name = "\improper Holodeck - Snow Field"
|
||||
sound_env = FOREST
|
||||
|
||||
/area/holodeck/source_desert
|
||||
name = "\improper Holodeck - Desert"
|
||||
sound_env = PLAIN
|
||||
|
||||
/area/holodeck/source_space
|
||||
name = "\improper Holodeck - Space"
|
||||
has_gravity = 0
|
||||
sound_env = SPACE
|
||||
|
||||
//Engineering
|
||||
|
||||
@@ -1061,26 +1110,32 @@ area/space/atmosalert()
|
||||
/area/engineering/atmos
|
||||
name = "\improper Atmospherics"
|
||||
icon_state = "atmos"
|
||||
sound_env = LARGE_ENCLOSED
|
||||
|
||||
/area/engineering/atmos/monitoring
|
||||
name = "\improper Atmospherics Monitoring Room"
|
||||
icon_state = "atmos_monitoring"
|
||||
sound_env = STANDARD_STATION
|
||||
|
||||
/area/engineering/atmos/storage
|
||||
name = "\improper Atmospherics Storage"
|
||||
icon_state = "atmos_storage"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/engineering/drone_fabrication
|
||||
name = "\improper Engineering Drone Fabrication"
|
||||
icon_state = "drone_fab"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/engineering/engine_smes
|
||||
name = "\improper Engineering SMES"
|
||||
icon_state = "engine_smes"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/engineering/engine_room
|
||||
name = "\improper Engine Room"
|
||||
icon_state = "engine"
|
||||
sound_env = LARGE_ENCLOSED
|
||||
|
||||
/area/engineering/engine_airlock
|
||||
name = "\improper Engine Room Airlock"
|
||||
@@ -1109,6 +1164,7 @@ area/space/atmosalert()
|
||||
/area/engineering/break_room
|
||||
name = "\improper Engineering Break Room"
|
||||
icon_state = "engineering_break"
|
||||
sound_env = MEDIUM_SOFTFLOOR
|
||||
|
||||
/area/engineering/engine_eva
|
||||
name = "\improper Engine EVA"
|
||||
@@ -1158,22 +1214,27 @@ area/space/atmosalert()
|
||||
/area/maintenance/auxsolarport
|
||||
name = "Solar Maintenance - Fore Port"
|
||||
icon_state = "SolarcontrolP"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/maintenance/starboardsolar
|
||||
name = "Solar Maintenance - Aft Starboard"
|
||||
icon_state = "SolarcontrolS"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/maintenance/portsolar
|
||||
name = "Solar Maintenance - Aft Port"
|
||||
icon_state = "SolarcontrolP"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/maintenance/auxsolarstarboard
|
||||
name = "Solar Maintenance - Fore Starboard"
|
||||
icon_state = "SolarcontrolS"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/maintenance/foresolar
|
||||
name = "Solar Maintenance - Fore"
|
||||
icon_state = "SolarcontrolA"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/assembly/chargebay
|
||||
name = "\improper Mech Bay"
|
||||
@@ -1385,6 +1446,7 @@ area/space/atmosalert()
|
||||
/area/security/detectives_office
|
||||
name = "\improper Security - Forensic Office"
|
||||
icon_state = "detective"
|
||||
sound_env = MEDIUM_SOFTFLOOR
|
||||
|
||||
/area/security/range
|
||||
name = "\improper Security - Firing Range"
|
||||
@@ -1459,6 +1521,7 @@ area/space/atmosalert()
|
||||
/area/quartermaster/storage
|
||||
name = "\improper Cargo Bay"
|
||||
icon_state = "quartstorage"
|
||||
sound_env = LARGE_ENCLOSED
|
||||
|
||||
/area/quartermaster/qm
|
||||
name = "\improper Cargo - Quartermaster's Office"
|
||||
@@ -1809,10 +1872,12 @@ area/space/atmosalert()
|
||||
name = "AI Upload Access"
|
||||
icon_state = "ai_foyer"
|
||||
ambience = list('sound/ambience/ambimalf.ogg')
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/turret_protected/ai_server_room
|
||||
name = "AI Server Room"
|
||||
icon_state = "ai_server"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/turret_protected/ai
|
||||
name = "\improper AI Chamber"
|
||||
@@ -1822,6 +1887,7 @@ area/space/atmosalert()
|
||||
/area/turret_protected/ai_cyborg_station
|
||||
name = "\improper Cyborg Station"
|
||||
icon_state = "ai_cyborg"
|
||||
sound_env = SMALL_ENCLOSED
|
||||
|
||||
/area/turret_protected/aisat
|
||||
name = "\improper AI Satellite"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
/area/mine
|
||||
icon_state = "mining"
|
||||
music = 'sound/ambience/song_game.ogg'
|
||||
sound_env = 5 //stoneroom
|
||||
sound_env = 8 //cave
|
||||
|
||||
/area/mine/explored
|
||||
name = "Mine"
|
||||
|
||||
+8
-5
@@ -50,6 +50,9 @@ var/const/FALLOFF_SOUNDS = 0.5
|
||||
else
|
||||
S.frequency = get_rand_frequency()
|
||||
|
||||
//sound volume falloff with pressure
|
||||
var/pressure_factor = 1.0
|
||||
|
||||
if(isturf(turf_source))
|
||||
// 3D sounds, the technology is here!
|
||||
var/turf/T = get_turf(src)
|
||||
@@ -59,9 +62,6 @@ var/const/FALLOFF_SOUNDS = 0.5
|
||||
|
||||
S.volume -= max(distance - world.view, 0) * 2 //multiplicative falloff to add on top of natural audio falloff.
|
||||
|
||||
//sound volume falloff with pressure
|
||||
var/pressure_factor = 1.0
|
||||
|
||||
var/datum/gas_mixture/hearer_env = T.return_air()
|
||||
var/datum/gas_mixture/source_env = turf_source.return_air()
|
||||
|
||||
@@ -90,8 +90,11 @@ var/const/FALLOFF_SOUNDS = 0.5
|
||||
S.falloff = (falloff ? falloff : FALLOFF_SOUNDS)
|
||||
|
||||
if(!is_global)
|
||||
var/area/A = get_area(src)
|
||||
S.environment = A.sound_env
|
||||
if (pressure_factor < 0.5)
|
||||
S.environment = 22 //underwater
|
||||
else
|
||||
var/area/A = get_area(src)
|
||||
S.environment = A.sound_env
|
||||
|
||||
src << S
|
||||
|
||||
|
||||
@@ -287,6 +287,8 @@
|
||||
if(M.mind)
|
||||
linkedholodeck.play_ambience(M)
|
||||
|
||||
linkedholodeck.sound_env = A.sound_env
|
||||
|
||||
spawn(30)
|
||||
for(var/obj/effect/landmark/L in linkedholodeck)
|
||||
if(L.name=="Atmospheric Test Start")
|
||||
|
||||
Reference in New Issue
Block a user