mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-21 03:55:05 +01:00
Adds Sound Environments: Reverb and Echo (#15378)
This commit is contained in:
@@ -70,3 +70,47 @@
|
||||
'sound/hallucinations/growl3.ogg', 'sound/hallucinations/im_here1.ogg', 'sound/hallucinations/im_here2.ogg', 'sound/hallucinations/i_see_you1.ogg', 'sound/hallucinations/i_see_you2.ogg',\
|
||||
'sound/hallucinations/look_up1.ogg', 'sound/hallucinations/look_up2.ogg', 'sound/hallucinations/over_here1.ogg', 'sound/hallucinations/over_here2.ogg', 'sound/hallucinations/over_here3.ogg',\
|
||||
'sound/hallucinations/turn_around1.ogg', 'sound/hallucinations/turn_around2.ogg', 'sound/hallucinations/veryfar_noise.ogg', 'sound/hallucinations/wail.ogg')
|
||||
|
||||
//default byond sound environments
|
||||
#define SOUND_ENVIRONMENT_NONE -1
|
||||
#define SOUND_ENVIRONMENT_GENERIC 0
|
||||
#define SOUND_ENVIRONMENT_PADDED_CELL 1
|
||||
#define SOUND_ENVIRONMENT_ROOM 2
|
||||
#define SOUND_ENVIRONMENT_BATHROOM 3
|
||||
#define SOUND_ENVIRONMENT_LIVINGROOM 4
|
||||
#define SOUND_ENVIRONMENT_STONEROOM 5
|
||||
#define SOUND_ENVIRONMENT_AUDITORIUM 6
|
||||
#define SOUND_ENVIRONMENT_CONCERT_HALL 7
|
||||
#define SOUND_ENVIRONMENT_CAVE 8
|
||||
#define SOUND_ENVIRONMENT_ARENA 9
|
||||
#define SOUND_ENVIRONMENT_HANGAR 10
|
||||
#define SOUND_ENVIRONMENT_CARPETED_HALLWAY 11
|
||||
#define SOUND_ENVIRONMENT_HALLWAY 12
|
||||
#define SOUND_ENVIRONMENT_STONE_CORRIDOR 13
|
||||
#define SOUND_ENVIRONMENT_ALLEY 14
|
||||
#define SOUND_ENVIRONMENT_FOREST 15
|
||||
#define SOUND_ENVIRONMENT_CITY 16
|
||||
#define SOUND_ENVIRONMENT_MOUNTAINS 17
|
||||
#define SOUND_ENVIRONMENT_QUARRY 18
|
||||
#define SOUND_ENVIRONMENT_PLAIN 19
|
||||
#define SOUND_ENVIRONMENT_PARKING_LOT 20
|
||||
#define SOUND_ENVIRONMENT_SEWER_PIPE 21
|
||||
#define SOUND_ENVIRONMENT_UNDERWATER 22
|
||||
#define SOUND_ENVIRONMENT_DRUGGED 23
|
||||
#define SOUND_ENVIRONMENT_DIZZY 24
|
||||
#define SOUND_ENVIRONMENT_PSYCHOTIC 25
|
||||
//If we ever make custom ones add them here
|
||||
|
||||
//"sound areas": easy way of keeping different types of areas consistent.
|
||||
#define SOUND_AREA_STANDARD_STATION SOUND_ENVIRONMENT_PARKING_LOT
|
||||
#define SOUND_AREA_LARGE_ENCLOSED SOUND_ENVIRONMENT_QUARRY
|
||||
#define SOUND_AREA_SMALL_ENCLOSED SOUND_ENVIRONMENT_BATHROOM
|
||||
#define SOUND_AREA_TUNNEL_ENCLOSED SOUND_ENVIRONMENT_STONEROOM
|
||||
#define SOUND_AREA_LARGE_SOFTFLOOR SOUND_ENVIRONMENT_CARPETED_HALLWAY
|
||||
#define SOUND_AREA_MEDIUM_SOFTFLOOR SOUND_ENVIRONMENT_LIVINGROOM
|
||||
#define SOUND_AREA_SMALL_SOFTFLOOR SOUND_ENVIRONMENT_ROOM
|
||||
#define SOUND_AREA_ASTEROID SOUND_ENVIRONMENT_CAVE
|
||||
#define SOUND_AREA_SPACE SOUND_ENVIRONMENT_UNDERWATER
|
||||
#define SOUND_AREA_LAVALAND SOUND_ENVIRONMENT_MOUNTAINS
|
||||
#define SOUND_AREA_ICEMOON SOUND_ENVIRONMENT_CAVE
|
||||
#define SOUND_AREA_WOODFLOOR SOUND_ENVIRONMENT_CITY
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
H.dna.species.stamina_mod *= 0.1
|
||||
add_attack_logs(owner, owner, "gained blood-drunk stun immunity", ATKLOG_ALL)
|
||||
owner.add_stun_absorption("blooddrunk", INFINITY, 4)
|
||||
owner.playsound_local(get_turf(owner), 'sound/effects/singlebeat.ogg', 40, 1)
|
||||
owner.playsound_local(get_turf(owner), 'sound/effects/singlebeat.ogg', 40, TRUE, use_reverb = FALSE)
|
||||
|
||||
/datum/status_effect/blooddrunk/on_remove()
|
||||
if(ishuman(owner))
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
name = "AI Monitored Area"
|
||||
var/list/motioncameras = list()
|
||||
var/list/motionTargets = list()
|
||||
sound_environment = SOUND_ENVIRONMENT_ROOM
|
||||
|
||||
/area/ai_monitored/Initialize(mapload)
|
||||
. = ..()
|
||||
|
||||
@@ -67,6 +67,8 @@
|
||||
var/moving = FALSE
|
||||
/// "Haunted" areas such as the morgue and chapel are easier to boo. Because flavor.
|
||||
var/is_haunted = FALSE
|
||||
///Used to decide what kind of reverb the area makes sound have
|
||||
var/sound_environment = SOUND_ENVIRONMENT_NONE
|
||||
|
||||
/area/Initialize(mapload)
|
||||
GLOB.all_areas += src
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
outdoors = TRUE
|
||||
ambientsounds = MINING_SOUNDS
|
||||
flags = NONE
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/mine/dangerous/explored/golem
|
||||
name = "Small Asteroid"
|
||||
@@ -90,6 +91,7 @@
|
||||
/area/lavaland
|
||||
icon_state = "mining"
|
||||
has_gravity = TRUE
|
||||
sound_environment = SOUND_AREA_LAVALAND
|
||||
|
||||
/area/lavaland/surface
|
||||
name = "Lavaland"
|
||||
|
||||
@@ -42,6 +42,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
valid_territory = FALSE
|
||||
outdoors = TRUE
|
||||
ambientsounds = SPACE_SOUNDS
|
||||
sound_environment = SOUND_AREA_SPACE
|
||||
|
||||
/area/space/nearstation
|
||||
icon_state = "space_near"
|
||||
@@ -66,6 +67,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
valid_territory = FALSE
|
||||
dynamic_lighting = DYNAMIC_LIGHTING_FORCED
|
||||
parallax_movedir = NORTH
|
||||
sound_environment = SOUND_ENVIRONMENT_ROOM
|
||||
|
||||
/area/shuttle/arrival
|
||||
name = "\improper Arrival Shuttle"
|
||||
@@ -477,6 +479,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
valid_territory = FALSE
|
||||
dynamic_lighting = DYNAMIC_LIGHTING_FORCED
|
||||
ambientsounds = MINING_SOUNDS
|
||||
sound_environment = SOUND_AREA_ASTEROID
|
||||
|
||||
/area/asteroid/cave // -- TLE
|
||||
name = "\improper Asteroid - Underground"
|
||||
@@ -594,6 +597,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/maintenance
|
||||
ambientsounds = MAINTENANCE_SOUNDS
|
||||
valid_territory = FALSE
|
||||
sound_environment = SOUND_AREA_TUNNEL_ENCLOSED
|
||||
|
||||
/area/maintenance/atmos_control
|
||||
name = "Atmospherics Maintenance"
|
||||
@@ -696,6 +700,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
|
||||
/area/hallway
|
||||
valid_territory = FALSE //too many areas with similar/same names, also not very interesting summon spots
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/hallway/primary/fore
|
||||
name = "\improper Fore Primary Hallway"
|
||||
@@ -762,14 +767,17 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "\improper Bridge"
|
||||
icon_state = "bridge"
|
||||
ambientsounds = list('sound/ambience/signal.ogg')
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/bridge/meeting_room
|
||||
name = "\improper Heads of Staff Meeting Room"
|
||||
icon_state = "meeting"
|
||||
sound_environment = SOUND_AREA_MEDIUM_SOFTFLOOR
|
||||
|
||||
/area/crew_quarters/captain
|
||||
name = "\improper Captain's Office"
|
||||
icon_state = "captain"
|
||||
sound_environment = SOUND_AREA_WOODFLOOR
|
||||
|
||||
/area/crew_quarters/captain/bedroom
|
||||
name = "\improper Captain's Bedroom"
|
||||
@@ -826,10 +834,12 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/comms
|
||||
name = "\improper Communications Relay"
|
||||
icon_state = "tcomsatcham"
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/server
|
||||
name = "\improper Messaging Server Room"
|
||||
icon_state = "server"
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/ntrep
|
||||
name = "\improper Nanotrasen Representative's Office"
|
||||
@@ -848,10 +858,12 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters
|
||||
name = "\improper Dormitories"
|
||||
icon_state = "Sleep"
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/crew_quarters/toilet
|
||||
name = "\improper Dormitory Toilets"
|
||||
icon_state = "toilet"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
/area/crew_quarters/sleep
|
||||
name = "\improper Dormitories"
|
||||
@@ -905,6 +917,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters/bar
|
||||
name = "\improper Bar"
|
||||
icon_state = "bar"
|
||||
sound_environment = SOUND_AREA_WOODFLOOR
|
||||
|
||||
/area/crew_quarters/bar/atrium
|
||||
name = "Atrium"
|
||||
@@ -913,6 +926,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters/theatre
|
||||
name = "\improper Theatre"
|
||||
icon_state = "Theatre"
|
||||
sound_environment = SOUND_AREA_WOODFLOOR
|
||||
|
||||
/area/crew_quarters/mrchangs
|
||||
name = "\improper Mr Chang's"
|
||||
@@ -921,6 +935,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/library
|
||||
name = "\improper Library"
|
||||
icon_state = "library"
|
||||
sound_environment = SOUND_AREA_LARGE_SOFTFLOOR
|
||||
|
||||
/area/library/abandoned
|
||||
name = "\improper Abandoned Library"
|
||||
@@ -930,6 +945,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
icon_state = "chapel"
|
||||
ambientsounds = HOLY_SOUNDS
|
||||
is_haunted = TRUE
|
||||
sound_environment = SOUND_AREA_LARGE_ENCLOSED
|
||||
|
||||
/area/chapel/main
|
||||
name = "\improper Chapel"
|
||||
@@ -945,10 +961,12 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/lawoffice
|
||||
name = "\improper Law Office"
|
||||
icon_state = "law"
|
||||
sound_environment = SOUND_AREA_SMALL_SOFTFLOOR
|
||||
|
||||
/area/magistrateoffice
|
||||
name = "\improper Magistrate's Office"
|
||||
icon_state = "magistrate"
|
||||
sound_environment = SOUND_AREA_SMALL_SOFTFLOOR
|
||||
|
||||
/area/clownoffice
|
||||
name = "\improper Clown's Office"
|
||||
@@ -974,6 +992,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "\improper Holodeck"
|
||||
icon_state = "Holodeck"
|
||||
dynamic_lighting = DYNAMIC_LIGHTING_DISABLED
|
||||
sound_environment = SOUND_ENVIRONMENT_PADDED_CELL
|
||||
|
||||
/area/holodeck/alphadeck
|
||||
name = "\improper Holodeck Alpha"
|
||||
@@ -1068,6 +1087,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
//Engineering
|
||||
/area/engine
|
||||
ambientsounds = ENGINEERING_SOUNDS
|
||||
sound_environment = SOUND_AREA_LARGE_ENCLOSED
|
||||
|
||||
/area/engine/engine_smes
|
||||
name = "\improper Engineering SMES"
|
||||
@@ -1082,10 +1102,12 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/engine/break_room
|
||||
name = "\improper Engineering Foyer"
|
||||
icon_state = "engine"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
/area/engine/equipmentstorage
|
||||
name = "\improper Engineering Equipment Storage"
|
||||
icon_state = "storage"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
/area/engine/hardsuitstorage
|
||||
name = "\improper Engineering Hardsuit Storage"
|
||||
@@ -1114,6 +1136,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/engine/supermatter
|
||||
name = "\improper Supermatter Engine"
|
||||
icon_state = "engine"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
//Solars
|
||||
|
||||
@@ -1122,6 +1145,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
valid_territory = FALSE
|
||||
dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT
|
||||
ambientsounds = ENGINEERING_SOUNDS
|
||||
sound_environment = SOUND_AREA_SPACE
|
||||
|
||||
/area/solar/auxport
|
||||
name = "\improper Fore Port Solar Array"
|
||||
@@ -1194,6 +1218,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "\improper Gateway"
|
||||
icon_state = "teleporter"
|
||||
ambientsounds = ENGINEERING_SOUNDS
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/AIsattele
|
||||
name = "\improper Abandoned Teleporter"
|
||||
@@ -1213,6 +1238,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
|
||||
/area/medical
|
||||
ambientsounds = MEDICAL_SOUNDS
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/medical/medbay
|
||||
name = "\improper Medbay"
|
||||
@@ -1247,6 +1273,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/medical/patients_rooms
|
||||
name = "\improper Patient's Rooms"
|
||||
icon_state = "patients"
|
||||
sound_environment = SOUND_AREA_SMALL_SOFTFLOOR
|
||||
|
||||
/area/medical/ward
|
||||
name = "\improper Medbay Patient Ward"
|
||||
@@ -1301,6 +1328,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
icon_state = "morgue"
|
||||
ambientsounds = SPOOKY_SOUNDS
|
||||
is_haunted = TRUE
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
/area/medical/chemistry
|
||||
name = "\improper Chemistry"
|
||||
@@ -1350,6 +1378,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
|
||||
/area/security
|
||||
ambientsounds = HIGHSEC_SOUNDS
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/security/main
|
||||
name = "\improper Security Office"
|
||||
@@ -1432,6 +1461,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/security/courtroomdandp
|
||||
name = "\improper Courtroom Defense and Prosecution"
|
||||
icon_state = "seccourt"
|
||||
sound_environment = SOUND_AREA_LARGE_ENCLOSED
|
||||
|
||||
/area/security/interrogationobs
|
||||
name = "\improper Interrogation Observation"
|
||||
@@ -1459,6 +1489,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/security/warden
|
||||
name = "\improper Warden's Office"
|
||||
icon_state = "Warden"
|
||||
sound_environment = SOUND_AREA_SMALL_SOFTFLOOR
|
||||
|
||||
/area/security/armoury
|
||||
name = "\improper Armory"
|
||||
@@ -1536,12 +1567,14 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/quartermaster
|
||||
name = "\improper Quartermasters"
|
||||
icon_state = "quart"
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
///////////WORK IN PROGRESS//////////
|
||||
|
||||
/area/quartermaster/sorting
|
||||
name = "\improper Delivery Office"
|
||||
icon_state = "quartstorage"
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
////////////WORK IN PROGRESS//////////
|
||||
|
||||
@@ -1552,6 +1585,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/quartermaster/storage
|
||||
name = "\improper Cargo Bay"
|
||||
icon_state = "quartstorage"
|
||||
sound_environment = SOUND_AREA_LARGE_ENCLOSED
|
||||
|
||||
/area/quartermaster/qm
|
||||
name = "\improper Quartermaster's Office"
|
||||
@@ -1572,17 +1606,23 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/janitor
|
||||
name = "\improper Custodial Closet"
|
||||
icon_state = "janitor"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
/area/hydroponics
|
||||
name = "\improper Hydroponics"
|
||||
icon_state = "hydro"
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/hydroponics/abandoned_garden
|
||||
name = "\improper Abandoned Garden"
|
||||
icon_state = "hydro"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
//Toxins
|
||||
|
||||
/area/toxins
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/toxins/lab
|
||||
name = "\improper Research and Development"
|
||||
icon_state = "toxlab"
|
||||
@@ -1650,6 +1690,8 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
icon_state = "toxmisc"
|
||||
|
||||
//Storage
|
||||
/area/storage
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/storage/tools
|
||||
name = "Auxiliary Tool Storage"
|
||||
@@ -1837,6 +1879,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "\improper Construction Area"
|
||||
icon_state = "yellow"
|
||||
ambientsounds = ENGINEERING_SOUNDS
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/mining_construction
|
||||
name = "Auxillary Base Construction"
|
||||
@@ -1925,6 +1968,8 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
|
||||
|
||||
//AI
|
||||
/area/ai_monitored
|
||||
sound_environment = SOUND_AREA_STANDARD_STATION
|
||||
|
||||
/area/ai_monitored/storage/eva
|
||||
name = "EVA Storage"
|
||||
@@ -1945,10 +1990,12 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/turret_protected/ai_upload
|
||||
name = "\improper AI Upload Chamber"
|
||||
icon_state = "ai_upload"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
/area/turret_protected/ai_upload_foyer
|
||||
name = "AI Upload Access"
|
||||
icon_state = "ai_foyer"
|
||||
sound_environment = SOUND_AREA_SMALL_ENCLOSED
|
||||
|
||||
/area/turret_protected/ai
|
||||
name = "\improper AI Chamber"
|
||||
@@ -1957,6 +2004,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/turret_protected/aisat
|
||||
name = "\improper AI Satellite"
|
||||
icon_state = "ai"
|
||||
sound_environment = SOUND_ENVIRONMENT_ROOM
|
||||
|
||||
/area/aisat
|
||||
name = "\improper AI Satellite Exterior"
|
||||
@@ -1973,6 +2021,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/turret_protected/aisat_interior
|
||||
name = "\improper AI Satellite Antechamber"
|
||||
icon_state = "ai"
|
||||
sound_environment = SOUND_AREA_LARGE_ENCLOSED
|
||||
|
||||
|
||||
//Misc
|
||||
@@ -2033,6 +2082,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/tcommsat/computer
|
||||
name = "\improper Telecoms Control Room"
|
||||
icon_state = "tcomsatcomp"
|
||||
sound_environment = SOUND_AREA_MEDIUM_SOFTFLOOR
|
||||
|
||||
/area/tcommsat/server
|
||||
name = "\improper Telecoms Server Room"
|
||||
@@ -2052,6 +2102,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
icon_state = "away"
|
||||
report_alerts = FALSE
|
||||
ambientsounds = AWAY_MISSION_SOUNDS
|
||||
sound_environment = SOUND_ENVIRONMENT_ROOM
|
||||
|
||||
/area/awaymission/example
|
||||
name = "\improper Strange Station"
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
AM.upgrade(A)
|
||||
possible_modules -= AM
|
||||
to_chat(A, AM.unlock_text)
|
||||
A.playsound_local(A, AM.unlock_sound, 50, 0)
|
||||
A.playsound_local(A, AM.unlock_sound, 50, FALSE, use_reverb = FALSE)
|
||||
else
|
||||
if(AM.power_type)
|
||||
if(!action) //Unlocking for the first time
|
||||
@@ -183,7 +183,7 @@
|
||||
if(AM.unlock_text)
|
||||
to_chat(A, AM.unlock_text)
|
||||
if(AM.unlock_sound)
|
||||
A.playsound_local(A, AM.unlock_sound, 50, 0)
|
||||
A.playsound_local(A, AM.unlock_sound, 50, FALSE, use_reverb = FALSE)
|
||||
else //Adding uses to an existing module
|
||||
action.uses += initial(action.uses)
|
||||
action.desc = "[initial(action.desc)] It has [action.uses] use\s remaining."
|
||||
@@ -394,7 +394,7 @@
|
||||
RCD.detonate_pulse()
|
||||
|
||||
to_chat(owner, "<span class='danger'>RCD detonation pulse emitted.</span>")
|
||||
owner.playsound_local(owner, 'sound/machines/twobeep.ogg', 50, 0)
|
||||
owner.playsound_local(owner, 'sound/machines/twobeep.ogg', 50, FALSE, use_reverb = FALSE)
|
||||
|
||||
//Unlock Mech Domination: Unlocks the ability to dominate mechs. Big shocker, right?
|
||||
/datum/AI_Module/large/mecha_domination
|
||||
@@ -433,7 +433,7 @@
|
||||
continue
|
||||
F.emagged = TRUE
|
||||
to_chat(owner, "<span class='notice'>All thermal sensors on the station have been disabled. Fire alerts will no longer be recognized.</span>")
|
||||
owner.playsound_local(owner, 'sound/machines/terminal_off.ogg', 50, 0)
|
||||
owner.playsound_local(owner, 'sound/machines/terminal_off.ogg', 50, FALSE, use_reverb = FALSE)
|
||||
|
||||
//Air Alarm Safety Override: Unlocks the ability to enable flooding on all air alarms.
|
||||
/datum/AI_Module/large/break_air_alarms
|
||||
@@ -458,7 +458,7 @@
|
||||
continue
|
||||
AA.emagged = TRUE
|
||||
to_chat(owner, "<span class='notice'>All air alarm safeties on the station have been overriden. Air alarms may now use the Flood environmental mode.")
|
||||
owner.playsound_local(owner, 'sound/machines/terminal_off.ogg', 50, 0)
|
||||
owner.playsound_local(owner, 'sound/machines/terminal_off.ogg', 50, FALSE, use_reverb = FALSE)
|
||||
|
||||
|
||||
//Overload Machine: Allows the AI to overload a machine, detonating it after a delay. Two uses per purchase.
|
||||
@@ -504,7 +504,7 @@
|
||||
to_chat(ranged_ability_user, "<span class='warning'>You can only overload machines!</span>")
|
||||
return
|
||||
|
||||
ranged_ability_user.playsound_local(ranged_ability_user, "sparks", 50, 0)
|
||||
ranged_ability_user.playsound_local(ranged_ability_user, "sparks", 50, FALSE, use_reverb = FALSE)
|
||||
attached_action.adjust_uses(-1)
|
||||
if(attached_action && attached_action.uses)
|
||||
attached_action.desc = "[initial(attached_action.desc)] It has [attached_action.uses] use\s remaining."
|
||||
@@ -559,7 +559,7 @@
|
||||
to_chat(ranged_ability_user, "<span class='warning'>That machine can't be overridden!</span>")
|
||||
return
|
||||
|
||||
ranged_ability_user.playsound_local(ranged_ability_user, 'sound/misc/interference.ogg', 50, 0)
|
||||
ranged_ability_user.playsound_local(ranged_ability_user, 'sound/misc/interference.ogg', 50, FALSE, use_reverb = FALSE)
|
||||
attached_action.adjust_uses(-1)
|
||||
if(attached_action && attached_action.uses)
|
||||
attached_action.desc = "[initial(attached_action.desc)] It has [attached_action.uses] use\s remaining."
|
||||
@@ -673,7 +673,7 @@
|
||||
else
|
||||
apc.overload++
|
||||
to_chat(owner, "<span class='notice'>Overcurrent applied to the powernet.</span>")
|
||||
owner.playsound_local(owner, "sparks", 50, 0)
|
||||
owner.playsound_local(owner, "sparks", 50, FALSE, use_reverb = FALSE)
|
||||
adjust_uses(-1)
|
||||
if(src && uses) //Not sure if not having src here would cause a runtime, so it's here to be safe
|
||||
desc = "[initial(desc)] It has [uses] use\s remaining."
|
||||
@@ -714,7 +714,7 @@
|
||||
fixed_cameras++
|
||||
uses-- //Not adjust_uses() so it doesn't automatically delete or show a message
|
||||
to_chat(owner, "<span class='notice'>Diagnostic complete! Cameras reactivated: <b>[fixed_cameras]</b>. Reactivations remaining: <b>[uses]</b>.</span>")
|
||||
owner.playsound_local(owner, 'sound/items/wirecutter.ogg', 50, 0)
|
||||
owner.playsound_local(owner, 'sound/items/wirecutter.ogg', 50, FALSE, use_reverb = FALSE)
|
||||
adjust_uses(0, TRUE) //Checks the uses remaining
|
||||
if(src && uses) //Not sure if not having src here would cause a runtime, so it's here to be safe
|
||||
desc = "[initial(desc)] It has [uses] use\s remaining."
|
||||
|
||||
@@ -467,7 +467,7 @@
|
||||
if(!M.client || M.client.prefs.sound & SOUND_DISCO)
|
||||
if(!(M in rangers))
|
||||
rangers[M] = TRUE
|
||||
M.playsound_local(get_turf(M), null, 100, channel = CHANNEL_JUKEBOX, S = song_played)
|
||||
M.playsound_local(get_turf(M), null, 100, channel = CHANNEL_JUKEBOX, S = song_played, use_reverb = FALSE)
|
||||
for(var/mob/L in rangers)
|
||||
if(get_dist(src, L) > 10)
|
||||
rangers -= L
|
||||
|
||||
+41
-3
@@ -1,4 +1,29 @@
|
||||
/proc/playsound(atom/source, soundin, vol as num, vary, extrarange as num, falloff, frequency = null, channel = 0, pressure_affected = TRUE, ignore_walls = TRUE)
|
||||
|
||||
///Default override for echo
|
||||
/sound
|
||||
echo = list(
|
||||
0, // Direct
|
||||
0, // DirectHF
|
||||
-10000, // Room, -10000 means no low frequency sound reverb
|
||||
-10000, // RoomHF, -10000 means no high frequency sound reverb
|
||||
0, // Obstruction
|
||||
0, // ObstructionLFRatio
|
||||
0, // Occlusion
|
||||
0.25, // OcclusionLFRatio
|
||||
1.5, // OcclusionRoomRatio
|
||||
1.0, // OcclusionDirectRatio
|
||||
0, // Exclusion
|
||||
1.0, // ExclusionLFRatio
|
||||
0, // OutsideVolumeHF
|
||||
0, // DopplerFactor
|
||||
0, // RolloffFactor
|
||||
0, // RoomRolloffFactor
|
||||
1.0, // AirAbsorptionFactor
|
||||
0, // Flags (1 = Auto Direct, 2 = Auto Room, 4 = Auto RoomHF)
|
||||
)
|
||||
environment = SOUND_ENVIRONMENT_NONE //Default to none so sounds without overrides dont get reverb
|
||||
|
||||
/proc/playsound(atom/source, soundin, vol as num, vary, extrarange as num, falloff, frequency = null, channel = 0, pressure_affected = TRUE, ignore_walls = TRUE, use_reverb = TRUE)
|
||||
if(isarea(source))
|
||||
error("[source] is an area and is trying to make the sound: [soundin]")
|
||||
return
|
||||
@@ -32,9 +57,9 @@
|
||||
var/distance = get_dist(M, turf_source)
|
||||
|
||||
if(distance <= maxdistance)
|
||||
M.playsound_local(turf_source, soundin, vol, vary, frequency, falloff, channel, pressure_affected, S)
|
||||
M.playsound_local(turf_source, soundin, vol, vary, frequency, falloff, channel, pressure_affected, S, 1, use_reverb)
|
||||
|
||||
/mob/proc/playsound_local(turf/turf_source, soundin, vol as num, vary, frequency, falloff, channel = 0, pressure_affected = TRUE, sound/S, distance_multiplier = 1)
|
||||
/mob/proc/playsound_local(turf/turf_source, soundin, vol as num, vary, frequency, falloff, channel = 0, pressure_affected = TRUE, sound/S, distance_multiplier = 1, use_reverb = TRUE)
|
||||
if(!client || !can_hear())
|
||||
return
|
||||
|
||||
@@ -90,6 +115,19 @@
|
||||
S.y = 1
|
||||
S.falloff = (falloff ? falloff : FALLOFF_SOUNDS)
|
||||
|
||||
// Sounds can't have their own environment. A sound's environment will be:
|
||||
// 1. the mob's
|
||||
// 2. the area's (defaults to SOUND_ENVRIONMENT_NONE)
|
||||
if(sound_environment_override != SOUND_ENVIRONMENT_NONE)
|
||||
S.environment = sound_environment_override
|
||||
else
|
||||
var/area/A = get_area(src)
|
||||
S.environment = A.sound_environment
|
||||
|
||||
if(use_reverb && S.environment != SOUND_ENVIRONMENT_NONE) //We have reverb, reset our echo setting
|
||||
S.echo[3] = 0 //Room setting, 0 means normal reverb
|
||||
S.echo[4] = 0 //RoomHF setting, 0 means normal reverb.
|
||||
|
||||
SEND_SOUND(src, S)
|
||||
|
||||
/proc/sound_to_playing_players(soundin, volume = 100, vary = FALSE, frequency = 0, falloff = FALSE, channel = 0, pressure_affected = FALSE, sound/S)
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
/datum/contractor_hub/proc/first_login(mob/user)
|
||||
if(!is_user_authorized(user))
|
||||
return
|
||||
user.playsound_local(user, 'sound/effects/contractstartup.ogg', 30, FALSE)
|
||||
user.playsound_local(user, 'sound/effects/contractstartup.ogg', 30, FALSE, use_reverb = FALSE)
|
||||
generate_contracts()
|
||||
SStgui.update_uis(src)
|
||||
|
||||
|
||||
@@ -39,4 +39,4 @@
|
||||
to_chat(M, "<span class='notice'>[bicon(src)] Incoming encrypted transmission from your handlers. Message as follows:</span><br />"\
|
||||
+ "<span class='boldnotice'>[text]</span>")
|
||||
if(sndfile)
|
||||
M.playsound_local(get_turf(M), sndfile, 30, FALSE)
|
||||
M.playsound_local(get_turf(M), sndfile, 30, FALSE, use_reverb = FALSE)
|
||||
|
||||
@@ -272,13 +272,13 @@
|
||||
switch(traitor_kind)
|
||||
if(TRAITOR_AI)
|
||||
add_law_zero()
|
||||
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/malf.ogg', 100, FALSE, pressure_affected = FALSE)
|
||||
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/malf.ogg', 100, FALSE, pressure_affected = FALSE, use_reverb = FALSE)
|
||||
var/mob/living/silicon/ai/A = owner.current
|
||||
A.show_laws()
|
||||
if(TRAITOR_HUMAN)
|
||||
if(should_equip)
|
||||
equip_traitor()
|
||||
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/tatoralert.ogg', 100, FALSE, pressure_affected = FALSE)
|
||||
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/tatoralert.ogg', 100, FALSE, pressure_affected = FALSE, use_reverb = FALSE)
|
||||
|
||||
|
||||
/datum/antagonist/traitor/proc/give_codewords()
|
||||
|
||||
@@ -340,8 +340,10 @@
|
||||
|
||||
if(slurring && drunk)
|
||||
throw_alert("drunk", /obj/screen/alert/drunk)
|
||||
sound_environment_override = SOUND_ENVIRONMENT_PSYCHOTIC
|
||||
else
|
||||
clear_alert("drunk")
|
||||
sound_environment_override = SOUND_ENVIRONMENT_NONE
|
||||
|
||||
/mob/living/AdjustSlur(amount, bound_lower = 0, bound_upper = INFINITY)
|
||||
var/new_value = directional_bounded_sum(slurring, amount, bound_lower, bound_upper)
|
||||
|
||||
@@ -20,9 +20,11 @@
|
||||
if(druggy)
|
||||
overlay_fullscreen("high", /obj/screen/fullscreen/high)
|
||||
throw_alert("high", /obj/screen/alert/high)
|
||||
sound_environment_override = SOUND_ENVIRONMENT_DRUGGED
|
||||
else
|
||||
clear_fullscreen("high")
|
||||
clear_alert("high")
|
||||
sound_environment_override = SOUND_ENVIRONMENT_NONE
|
||||
|
||||
/mob/living/update_nearsighted_effects()
|
||||
if(HAS_TRAIT(src, TRAIT_NEARSIGHT))
|
||||
|
||||
@@ -115,6 +115,8 @@
|
||||
var/has_enabled_antagHUD = 0 // Whether antagHUD was ever enabled. Not a true boolean - sometimes it is set to 2, because reasons.
|
||||
var/antagHUD = FALSE // Whether AntagHUD is active right now
|
||||
var/can_change_intents = 1 //all mobs can change intents by default.
|
||||
///Override for sound_environments. If this is set the user will always hear a specific type of reverb (Instead of the area defined reverb)
|
||||
var/sound_environment_override = SOUND_ENVIRONMENT_NONE
|
||||
|
||||
//Generic list for proc holders. Only way I can see to enable certain verbs/procs. Should be modified if needed.
|
||||
var/proc_holder_list[] = list()
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
there_can_be_many = TRUE
|
||||
dynamic_lighting = DYNAMIC_LIGHTING_FORCED
|
||||
ambientsounds = RUINS_SOUNDS
|
||||
sound_environment = SOUND_ENVIRONMENT_STONEROOM
|
||||
|
||||
/area/ruin/unpowered
|
||||
always_unpowered = FALSE
|
||||
|
||||
Reference in New Issue
Block a user