From 757410d487925da9b2a519297e594331ae616160 Mon Sep 17 00:00:00 2001 From: "johnsonmt88@gmail.com" Date: Mon, 15 Oct 2012 01:28:06 +0000 Subject: [PATCH] Closets now pick up all items on the tile they're created on, the same as crates. This makes it easier for mappers to put things in lockers without making new locker types or var-editing them. Moved snowflake telecomm ambient sound code that only half worked into the switch that's designed to handle it. Committing for Aranclanos: - Toggle ambience should now properly work. Fixes issue 992. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4880 316c924e-a436-60f5-8080-3fe189b3f50e --- code/game/area/areas.dm | 14 +++++++++++--- .../objects/structures/crates_lockers/closets.dm | 8 ++++++++ .../objects/structures/crates_lockers/crates.dm | 7 ------- code/game/sound.dm | 10 ++++++---- 4 files changed, 25 insertions(+), 14 deletions(-) diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index 53f76cdde6b..e75e9cc04e5 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -284,14 +284,22 @@ if ("Mine") sound = pick('sound/ambience/ambimine.ogg') musVolume = 25 + + if("Telecoms Teleporter") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + if("Telecoms Central Compartment") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + if("Telecoms Satellite") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + if("Telecoms Foyer") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + if("Telecommunications Satellite West Wing") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + if("Telecommunications Satellite East Wing") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + if("Telecoms Control Room") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + if("Telecommunications Satellite Lounge") sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') + else sound = pick('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') - if(findtext(src.name, "Telecommunications")) - sound = pick('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') if (prob(35)) - if(A && A:client && !A:client:played) + if(A && A:client && !A:client:played && !A:client:no_ambi) A << sound(sound, repeat = 0, wait = 0, volume = musVolume, channel = 1) A:client:played = 1 spawn(600) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 96fd8c8a518..428702f45bb 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -15,6 +15,14 @@ var/storage_capacity = 20 //This is so that someone can't pack hundreds of items in a locker/crate //then open it in a populated area to crash clients. +/obj/structure/closet/New() + ..() + spawn(1) + if(!opened) // if closed, any item at the crate's loc is put in the contents + for(var/obj/item/I in src.loc) + if(I.density || I.anchored || I == src) continue + I.loc = src + /obj/structure/closet/alter_health() return get_turf(src) diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index c09bae884c0..bd337661b2d 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -197,13 +197,6 @@ // new /obj/item/weapon/pestspray(src) // new /obj/item/weapon/pestspray(src) -/obj/structure/closet/crate/New() - ..() - spawn(1) - if(!opened) // if closed, any item at the crate's loc is put in the contents - for(var/obj/item/I in src.loc) - if(I.density || I.anchored || I == src) continue - I.loc = src /obj/structure/closet/crate/secure/New() ..() diff --git a/code/game/sound.dm b/code/game/sound.dm index fb1ea171160..35d80594ac8 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -78,12 +78,14 @@ client/verb/Toggle_Soundscape() //All new ambience should be added here so it works with this verb until someone better at things comes up with a fix that isn't awful set category = "Special Verbs" set name = "Toggle Ambience" + usr:client:no_ambi = !usr:client:no_ambi + if(usr:client:no_ambi) - usr << sound(pick('sound/ambience/shipambience.ogg','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','sound/ambience/ambicha1.ogg','sound/ambience/ambicha2.ogg','sound/ambience/ambicha3.ogg','sound/ambience/ambicha4.ogg','sound/ambience/ambimalf.ogg','sound/ambience/ambispace.ogg','sound/ambience/ambimine.ogg','sound/ambience/title2.ogg'), repeat = 0, wait = 0, volume = 0, channel = 2) - else - usr << sound(pick('sound/ambience/shipambience.ogg','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','sound/ambience/ambicha1.ogg','sound/ambience/ambicha2.ogg','sound/ambience/ambicha3.ogg','sound/ambience/ambicha4.ogg','sound/ambience/ambimalf.ogg','sound/ambience/ambispace.ogg','sound/ambience/ambimine.ogg','sound/ambience/title2.ogg'), repeat = 1, wait = 0, volume = 35, channel = 2) - usr << "Toggled ambience sound." + usr << sound(null, repeat = 0, wait = 0, volume = 0, channel = 1) + usr << sound(null, repeat = 0, wait = 0, volume = 0, channel = 2) + + usr << "Toggled ambient sound [usr:client:no_ambi?"off":"on"]." return