From 7bdf7969eee5fbbba35653c77e72e00ebd8a40aa Mon Sep 17 00:00:00 2001 From: dwasint <82520990+dwasint@users.noreply.github.com> Date: Wed, 13 Sep 2023 23:52:57 -0400 Subject: [PATCH 1/6] doors mixered --- code/game/machinery/doors/airlock.dm | 32 +++++++++---------- code/game/say.dm | 2 +- code/modules/mob/living/living.dm | 2 +- code/modules/mob/living/living_say.dm | 4 +-- .../modules/surgery/organs/internal/butts.dm | 8 ++--- 5 files changed, 24 insertions(+), 24 deletions(-) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 79b191d3ea49..2701f72b08a5 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -230,7 +230,7 @@ if(locked) return set_bolt(TRUE) - playsound(src,boltDown,30,FALSE,3) + playsound(src,boltDown,30,FALSE,3, mixer_channel = CHANNEL_MACHINERY) audible_message(span_hear("You hear a click from the bottom of the door."), null, 1) update_appearance() @@ -248,7 +248,7 @@ if(!locked) return set_bolt(FALSE) - playsound(src,boltUp,30,FALSE,3) + playsound(src,boltUp,30,FALSE,3, mixer_channel = CHANNEL_MACHINERY) audible_message(span_hear("You hear a click from the bottom of the door."), null, 1) update_appearance() @@ -515,7 +515,7 @@ if("deny") if(!machine_stat) update_icon(ALL, AIRLOCK_DENY) - playsound(src,doorDeni,50,FALSE,3) + playsound(src,doorDeni,50,FALSE,3, mixer_channel = CHANNEL_MACHINERY) addtimer(CALLBACK(src, TYPE_PROC_REF(/atom, update_icon), ALL, AIRLOCK_CLOSED), AIRLOCK_DENY_ANIMATION_TIME) /obj/machinery/door/airlock/examine(mob/user) @@ -712,7 +712,7 @@ if(ishuman(user) && prob(40) && density) var/mob/living/carbon/human/H = user if((HAS_TRAIT(H, TRAIT_DUMB)) && Adjacent(user)) - playsound(src, 'sound/effects/bang.ogg', 25, TRUE) + playsound(src, 'sound/effects/bang.ogg', 25, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) if(!istype(H.head, /obj/item/clothing/head/helmet)) H.visible_message(span_danger("[user] headbutts the airlock."), \ span_userdanger("You headbutt the airlock!")) @@ -938,7 +938,7 @@ to_chat(user, span_warning("[src] has already been sealed!")) return user.visible_message(span_notice("[user] begins sealing [src]."), span_notice("You begin sealing [src].")) - playsound(src, 'sound/items/jaws_pry.ogg', 30, TRUE) + playsound(src, 'sound/items/jaws_pry.ogg', 30, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) if(!do_after(user, airlockseal.seal_time, target = src)) return if(!density) @@ -950,7 +950,7 @@ if(!user.transferItemToLoc(airlockseal, src)) to_chat(user, span_warning("For some reason, you can't attach [airlockseal]!")) return - playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE) + playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) user.visible_message(span_notice("[user] finishes sealing [src]."), span_notice("You finish sealing [src].")) seal = airlockseal modify_max_integrity(max_integrity * AIRLOCK_SEAL_MULTIPLIER) @@ -978,10 +978,10 @@ if(fake.uses) if(check_access_list(fake.access)) user.visible_message("[user] starts fumbling at \the [src] with a piece of paper!", "You start swiping \the [fake] in \the [src]!") - playsound(src, 'sound/items/handling/paper_pickup.ogg', 100, TRUE) + playsound(src, 'sound/items/handling/paper_pickup.ogg', 100, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) if(do_after(user, 50, src)) if(open()) //only take a use away if the door actually opens - playsound(src, 'sound/items/poster_ripped.ogg', 100, TRUE) + playsound(src, 'sound/items/poster_ripped.ogg', 100, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) fake.used() if(fake.uses == 0) to_chat(user, "It's no good, this ID is so torn up it won't fit in another door.") @@ -1044,12 +1044,12 @@ to_chat(user, span_warning("You don't have the dexterity to remove the seal!")) return TRUE user.visible_message(span_notice("[user] begins removing the seal from [src]."), span_notice("You begin removing [src]'s pneumatic seal.")) - playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE) + playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) if(!do_after(user, airlockseal.unseal_time, target = src)) return TRUE if(!seal) return TRUE - playsound(src, 'sound/items/jaws_pry.ogg', 30, TRUE) + playsound(src, 'sound/items/jaws_pry.ogg', 30, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) airlockseal.forceMove(get_turf(user)) user.visible_message(span_notice("[user] finishes removing the seal from [src]."), span_notice("You finish removing [src]'s pneumatic seal.")) seal = null @@ -1109,7 +1109,7 @@ if(!prying_so_hard) var/time_to_open = 50 - playsound(src, 'sound/machines/airlock_alien_prying.ogg', 100, TRUE) //is it aliens or just the CE being a dick? + playsound(src, 'sound/machines/airlock_alien_prying.ogg', 100, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) //is it aliens or just the CE being a dick? prying_so_hard = TRUE if(do_after(user, time_to_open, src)) if(check_electrified && shock(user,100)) @@ -1189,7 +1189,7 @@ if(!hasPower() || wires.is_cut(WIRE_OPEN) || (obj_flags & EMAGGED)) return FALSE use_power(50) - playsound(src, doorOpen, 30, TRUE) + playsound(src, doorOpen, 30, TRUE, mixer_channel = CHANNEL_MACHINERY) return TRUE if(FORCING_DOOR_CHECKS) // Only one check. @@ -1200,7 +1200,7 @@ return TRUE if(BYPASS_DOOR_CHECKS) // No power usage, special sound, get it open. - playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE) + playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) return TRUE else @@ -1277,11 +1277,11 @@ if(obj_flags & EMAGGED) return FALSE use_power(50) - playsound(src, doorClose, 30, TRUE) + playsound(src, doorClose, 30, TRUE, mixer_channel = CHANNEL_MACHINERY) return TRUE if(BYPASS_DOOR_CHECKS) - playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE) + playsound(src, 'sound/machines/airlockforced.ogg', 30, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) return TRUE else @@ -1363,7 +1363,7 @@ var/time_to_open = 5 //half a second if(hasPower()) time_to_open = 5 SECONDS //Powered airlocks take longer to open, and are loud. - playsound(src, 'sound/machines/airlock_alien_prying.ogg', 100, TRUE) + playsound(src, 'sound/machines/airlock_alien_prying.ogg', 100, TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) if(do_after(user, time_to_open, src)) diff --git a/code/game/say.dm b/code/game/say.dm index 081f3e1817b6..2afb765f6066 100644 --- a/code/game/say.dm +++ b/code/game/say.dm @@ -43,7 +43,7 @@ GLOBAL_LIST_INIT(freqtospan, list( if(client && radio_freq) var/atom/movable/virtualspeaker/V = speaker if(isAI(V.source)) - playsound_local(get_turf(src), 'goon/sounds/radio_ai.ogg', 170, 1, 0, 0, pressure_affected = FALSE, use_reverb = FALSE) + playsound_local(get_turf(src), 'goon/sounds/radio_ai.ogg', 170, 1, 0, 0, pressure_affected = FALSE, use_reverb = FALSE, mixer_channel = CHANNEL_MOB_SOUNDS) //MONKESTATION EDIT END /** * Checks if our movable can speak the provided message, passing it through filters diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 5d3efccfde7f..34155f199a1f 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -665,7 +665,7 @@ if(HAS_TRAIT(src, TRAIT_FLOORED) && !(dir & (NORTH|SOUTH))) setDir(pick(NORTH, SOUTH)) // We are and look helpless. body_position_pixel_y_offset = PIXEL_Y_OFFSET_LYING - playsound(loc, 'goon/sounds/body_thud.ogg', ishuman(src) ? 40 : 15, 1, 0.3) + playsound(loc, 'goon/sounds/body_thud.ogg', ishuman(src) ? 40 : 15, 1, 0.3, mixer_channel = CHANNEL_MOB_SOUNDS) /// Proc to append behavior related to lying down. diff --git a/code/modules/mob/living/living_say.dm b/code/modules/mob/living/living_say.dm index 8e0061e31cc6..9430586a406b 100644 --- a/code/modules/mob/living/living_say.dm +++ b/code/modules/mob/living/living_say.dm @@ -251,7 +251,7 @@ GLOBAL_LIST_INIT(message_modes_stat_limits, list( speak_sound = voice_type2sound[voice_type]["!"] else speak_sound = voice_type2sound[voice_type][voice_type] - playsound(src, speak_sound, 300, 1, SHORT_RANGE_SOUND_EXTRARANGE-2, falloff_exponent = 0, pressure_affected = FALSE, ignore_walls = FALSE, use_reverb = FALSE) + playsound(src, speak_sound, 300, 1, SHORT_RANGE_SOUND_EXTRARANGE-2, falloff_exponent = 0, pressure_affected = FALSE, ignore_walls = FALSE, use_reverb = FALSE, mixer_channel = CHANNEL_MOB_SOUNDS) //monkestation edit end if(succumbed) @@ -267,7 +267,7 @@ GLOBAL_LIST_INIT(message_modes_stat_limits, list( if(radio_freq && can_hear()) var/atom/movable/virtualspeaker/V = speaker if(isAI(V.source)) - playsound_local(get_turf(src), 'goon/sounds/radio_ai.ogg', 170, 1, 0, 0, pressure_affected = FALSE, use_reverb = FALSE) + playsound_local(get_turf(src), 'goon/sounds/radio_ai.ogg', 170, 1, 0, 0, pressure_affected = FALSE, use_reverb = FALSE, mixer_channel = CHANNEL_MOB_SOUNDS) //monkestation edit end var/deaf_message diff --git a/monkestation/code/modules/surgery/organs/internal/butts.dm b/monkestation/code/modules/surgery/organs/internal/butts.dm index bed9fc381e20..c7747e73aa47 100644 --- a/monkestation/code/modules/surgery/organs/internal/butts.dm +++ b/monkestation/code/modules/surgery/organs/internal/butts.dm @@ -35,7 +35,7 @@ cooling_down = TRUE user.audible_message("[user] farts.") if(prob(fart_instability)) - playsound(user, "sound/machines/alarm.ogg", 100, FALSE, 50, ignore_walls=TRUE) + playsound(user, "sound/machines/alarm.ogg", 100, FALSE, 50, ignore_walls=TRUE, mixer_channel = CHANNEL_MOB_SOUNDS) minor_announce("The detonation of a nuclear posterior has been detected in your area. All crew are required to exit the blast radius.", "Nanotrasen Atomics", 0) Person.Paralyze(120) Person.electrocution_animation(120) @@ -44,7 +44,7 @@ dyn_explosion(Location, 20,10) cooling_down = FALSE else - playsound(user, pick(sound_effect), 50, TRUE) + playsound(user, pick(sound_effect), 50, TRUE, mixer_channel = CHANNEL_MOB_SOUNDS) Location.atmos_spawn_air(atmos_gas) spawn(20) cooling_down = FALSE @@ -285,7 +285,7 @@ bot_cover_flags |= BOT_COVER_EMAGGED var/turf/butt = get_turf(src) butt.atmos_spawn_air("miasma=5;TEMP=310.15") - playsound(src, pick('sound/misc/fart1.ogg', 'monkestation/sound/effects/fart2.ogg', 'monkestation/sound/effects/fart3.ogg', 'monkestation/sound/effects/fart4.ogg'), 100 ,use_reverb = TRUE) + playsound(src, pick('sound/misc/fart1.ogg', 'monkestation/sound/effects/fart2.ogg', 'monkestation/sound/effects/fart3.ogg', 'monkestation/sound/effects/fart4.ogg'), 100 ,use_reverb = TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) /mob/living/simple_animal/bot/buttbot/Hear(message, atom/movable/speaker, datum/language/message_language, raw_message, radio_freq, list/spans, list/message_mods) . = ..() @@ -303,7 +303,7 @@ cooling_down = FALSE return say(joined_text) - playsound(src, pick('sound/misc/fart1.ogg', 'monkestation/sound/effects/fart2.ogg', 'monkestation/sound/effects/fart3.ogg', 'monkestation/sound/effects/fart4.ogg'), 25 ,use_reverb = TRUE) + playsound(src, pick('sound/misc/fart1.ogg', 'monkestation/sound/effects/fart2.ogg', 'monkestation/sound/effects/fart3.ogg', 'monkestation/sound/effects/fart4.ogg'), 25 , use_reverb = TRUE, mixer_channel = CHANNEL_SOUND_EFFECTS) spawn(20) cooling_down = FALSE From e710e3c8c644a124ef8c7d0aabc565c4ac397eb7 Mon Sep 17 00:00:00 2001 From: dwasint <82520990+dwasint@users.noreply.github.com> Date: Wed, 13 Sep 2023 23:54:21 -0400 Subject: [PATCH 2/6] Update maps.txt --- config/maps.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/maps.txt b/config/maps.txt index 97cdb6cd2e76..3cf1094af8ef 100644 --- a/config/maps.txt +++ b/config/maps.txt @@ -26,7 +26,6 @@ map deltastation endmap map kilostation - votable endmap map icebox @@ -52,4 +51,5 @@ map multiz_debug endmap map oshan + votable endmap From fc8a176bb813e5936303f4613a0210bbf91b9e28 Mon Sep 17 00:00:00 2001 From: dwasint <82520990+dwasint@users.noreply.github.com> Date: Wed, 13 Sep 2023 23:58:34 -0400 Subject: [PATCH 3/6] more stuff --- .../code/datum/particle_weathers/_particle_weather.dm | 8 ++++---- monkestation/code/modules/outdoors/code/misc_procs.dm | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm b/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm index 86c2a272de76..3792365f802b 100644 --- a/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm +++ b/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm @@ -62,7 +62,7 @@ GLOBAL_LIST_EMPTY(siren_objects) color_animating = pick(affecting_value) animate_flags = ELASTIC_EASING | EASE_IN | EASE_OUT spawn(duration - rand(0, duration*10)/10) - playsound_z(SSmapping.levels_by_trait(ZTRAIT_STATION), pick(sound_effects), 50) + playsound_z(SSmapping.levels_by_trait(ZTRAIT_STATION), pick(sound_effects), 50, mixer_channel = CHANNEL_WEATHER) if(GLE_STAGE_THIRD) color_animating = SSoutdoor_effects.current_color animate_flags = CIRCULAR_EASING | EASE_IN @@ -372,7 +372,7 @@ GLOBAL_LIST_EMPTY(siren_objects) message += weather_message for(var/mob/living/carbon/human/affected_human in GLOB.alive_mob_list) if(!affected_human.stat && affected_human.client && (affected_human.z in affected_zlevels)) - affected_human.playsound_local('monkestation/code/modules/outdoors/sound/effects/radiostatic.ogg', affected_human.loc, 25, FALSE) + affected_human.playsound_local('monkestation/code/modules/outdoors/sound/effects/radiostatic.ogg', affected_human.loc, 25, FALSE, mixer_channel = CHANNEL_MACHINERY) affected_human.play_screen_text("Weather Alert:
" + message["human"], /atom/movable/screen/text/screen_text/command_order, rgb(103, 214, 146)) return FALSE @@ -423,7 +423,7 @@ GLOBAL_LIST_EMPTY(siren_objects) var/sound = 'monkestation/code/modules/outdoors/sound/effects/weather_warning.ogg' /obj/machinery/siren/proc/siren_warning(var/msg = "WARNING, bla bla bla bluh.", var/sound_ch = 'monkestation/code/modules/outdoors/sound/effects/weather_warning.ogg') - playsound(loc, sound_ch, 50, 0) + playsound(loc, sound_ch, 50, 0, mixer_channel = CHANNEL_MACHINERY) visible_message(span_danger("[src] make signal. [msg].")) /obj/machinery/siren/proc/siren_warning_start(var/msg, var/sound_ch = 'monkestation/code/modules/outdoors/sound/effects/weather_warning.ogg') @@ -438,7 +438,7 @@ GLOBAL_LIST_EMPTY(siren_objects) /obj/machinery/siren/process() if(prob(2)) - playsound(loc, sound, 80, 0) + playsound(loc, sound, 80, 0, mixer_channel = CHANNEL_MACHINERY) visible_message(span_danger("[src] make signal. [message].")) diff --git a/monkestation/code/modules/outdoors/code/misc_procs.dm b/monkestation/code/modules/outdoors/code/misc_procs.dm index 0cf99ddda65c..5d771aea247d 100644 --- a/monkestation/code/modules/outdoors/code/misc_procs.dm +++ b/monkestation/code/modules/outdoors/code/misc_procs.dm @@ -8,8 +8,8 @@ SSparticle_weather.running_weather.process_mob_effect(src, delta_time) /// Play sound for all on-map clients on a given Z-level. Good for ambient sounds. -/proc/playsound_z(z, soundin, volume = 100) +/proc/playsound_z(z, soundin, volume = 100, _mixer_channel) var/sound/S = sound(soundin) for(var/mob/M in GLOB.player_list) if(M.z in z) - M.playsound_local(get_turf(M), soundin, volume, channel = CHANNEL_Z, soundin = S) + M.playsound_local(get_turf(M), soundin, volume, channel = CHANNEL_Z, soundin = S, mixer_channel = _mixer_channel) From d41b3a2df18ccf783524cef2090d075bb8e2f387 Mon Sep 17 00:00:00 2001 From: dwasint <82520990+dwasint@users.noreply.github.com> Date: Thu, 14 Sep 2023 04:00:37 -0400 Subject: [PATCH 4/6] oshan fixes --- _maps/map_files/Mining/Oshan.dmm | 15 +- _maps/map_files/Oshan/oshan.dmm | 465 ++++++++++++------ .../code/modules/liquids/ocean_flora.dm | 2 +- .../code/modules/liquids/ocean_generator.dm | 15 +- .../ocean_content/hotspot_machines/stomper.dm | 16 +- 5 files changed, 361 insertions(+), 152 deletions(-) diff --git a/_maps/map_files/Mining/Oshan.dmm b/_maps/map_files/Mining/Oshan.dmm index de2e3b220c48..c607a27c012b 100644 --- a/_maps/map_files/Mining/Oshan.dmm +++ b/_maps/map_files/Mining/Oshan.dmm @@ -55,6 +55,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/security/prison) +"dI" = ( +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/iron, +/area/mine/production) "dR" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -258,6 +262,7 @@ /obj/item/flashlight, /obj/item/clothing/glasses/meson, /obj/effect/decal/cleanable/dirt, +/obj/item/tank/internals/oxygen, /turf/open/floor/iron, /area/station/security/prison/mess) "lH" = ( @@ -310,6 +315,7 @@ /obj/item/flashlight, /obj/item/clothing/glasses/meson, /obj/effect/decal/cleanable/dirt, +/obj/item/tank/internals/oxygen, /turf/open/floor/iron, /area/station/security/prison/mess) "nU" = ( @@ -617,6 +623,10 @@ "BF" = ( /turf/open/floor/iron/dark, /area/station/security/prison/rec) +"Cj" = ( +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/iron/dark, +/area/station/security/prison) "Cl" = ( /obj/machinery/shower/directional/north, /turf/open/floor/iron/freezer, @@ -882,6 +892,7 @@ /obj/item/clothing/glasses/meson, /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/north, +/obj/item/tank/internals/oxygen, /turf/open/floor/iron, /area/station/security/prison/mess) "OD" = ( @@ -25129,7 +25140,7 @@ hP nW nW nW -bE +dI Jq QE Hv @@ -25952,7 +25963,7 @@ qu Ew ki wY -Zo +Cj oD oD EW diff --git a/_maps/map_files/Oshan/oshan.dmm b/_maps/map_files/Oshan/oshan.dmm index e7a4742eb031..48c404acabfb 100644 --- a/_maps/map_files/Oshan/oshan.dmm +++ b/_maps/map_files/Oshan/oshan.dmm @@ -753,9 +753,7 @@ /turf/open/floor/plating, /area/station/engineering/atmos) "avq" = ( -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, +/obj/machinery/camera/directional/east, /turf/open/floor/wood, /area/station/cargo/miningoffice) "avv" = ( @@ -856,7 +854,7 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "azZ" = ( -/obj/machinery/light/very_dim/directional/north, +/obj/machinery/light/directional/north, /obj/structure/table/wood, /turf/open/floor/wood, /area/station/security/detectives_office) @@ -1129,6 +1127,11 @@ /obj/effect/base_turf_modifier/pit, /turf/open/floor/engine, /area/station/ai_monitored/turret_protected/ai) +"aJi" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/vending/autodrobe, +/turf/open/floor/iron/sepia, +/area/station/commons/fitness/recreation) "aJj" = ( /obj/structure/cable, /obj/effect/spawner/random/trash/graffiti, @@ -1683,6 +1686,11 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/engine, /area/station/science/xenobiology) +"aZD" = ( +/obj/structure/cable, +/obj/structure/sign/departments/engineering, +/turf/closed/wall/r_wall, +/area/station/engineering/break_room) "aZL" = ( /obj/machinery/light/directional/north, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -1908,7 +1916,8 @@ /area/station/security/courtroom) "bhD" = ( /obj/effect/turf_decal/tile/blue/opposingcorners, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, +/obj/machinery/vending/wallmed/directional/west, /turf/open/floor/iron/white/textured, /area/station/medical/pharmacy) "bhG" = ( @@ -2377,6 +2386,7 @@ dir = 1 }, /obj/effect/turf_decal/trimline/blue/filled/warning, +/obj/effect/mapping_helpers/airlock/access/all/science/genetics, /turf/open/floor/iron/white/textured, /area/station/medical/medbay/central) "bul" = ( @@ -2749,7 +2759,7 @@ /area/station/science/lab) "bDs" = ( /obj/machinery/light/small/directional/north, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, /obj/effect/turf_decal/tile/blue/diagonal_centre, /obj/effect/spawner/random/vending/colavend, /turf/open/floor/iron/white/diagonal, @@ -2851,6 +2861,17 @@ /obj/machinery/camera/directional/west, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) +"bFY" = ( +/obj/structure/lattice, +/obj/structure/disposalpipe/segment{ + dir = 4; + invisibility = 101 + }, +/obj/machinery/conveyor/auto{ + dir = 8 + }, +/turf/open/floor/plating/ocean, +/area/ocean/near_station_powered) "bGe" = ( /obj/structure/rack, /obj/item/circuitboard/machine/teleporter_hub{ @@ -2865,7 +2886,7 @@ /obj/machinery/computer/cloning{ dir = 4 }, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, /obj/effect/turf_decal/tile/green{ dir = 4 }, @@ -3838,6 +3859,7 @@ id = "secentranceflasher"; pixel_x = -26 }, +/obj/structure/sign/departments/security, /turf/open/floor/plating, /area/station/hallway/primary/central/fore) "cmI" = ( @@ -4080,7 +4102,7 @@ "cxy" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/very_dim/directional/east, +/obj/machinery/light/directional/east, /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 }, @@ -4297,11 +4319,6 @@ }, /turf/open/floor/iron/showroomfloor, /area/station/commons/toilet/auxiliary) -"cDJ" = ( -/obj/structure/plasticflaps, -/obj/machinery/conveyor/auto, -/turf/open/floor/iron, -/area/mine/storage/public) "cDZ" = ( /obj/structure/table/wood, /obj/machinery/keycard_auth/directional/south{ @@ -4354,7 +4371,7 @@ /turf/open/floor/plating, /area/station/maintenance/disposal) "cGg" = ( -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /turf/open/floor/iron, /area/mine/storage/public) "cGK" = ( @@ -4520,7 +4537,7 @@ pixel_y = 1; pixel_x = 17 }, -/obj/machinery/camera/motion/directional/east, +/obj/machinery/camera/directional/east, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 5 }, @@ -4542,6 +4559,7 @@ /obj/effect/turf_decal/trimline/blue/filled/warning{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/all/science/genetics, /turf/open/floor/iron/white/textured, /area/station/science/genetics) "cMp" = ( @@ -4632,8 +4650,9 @@ /turf/open/floor/wood, /area/station/service/cafeteria) "cPJ" = ( -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" +/obj/machinery/camera/directional/east, +/obj/machinery/cryopod{ + dir = 8 }, /turf/open/floor/iron, /area/mine/storage/public) @@ -4699,6 +4718,10 @@ }, /turf/open/floor/iron/dark/textured, /area/station/engineering/break_room) +"cQP" = ( +/obj/structure/sign/departments/custodian, +/turf/closed/wall, +/area/station/service/janitor) "cQR" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 1 @@ -4938,9 +4961,7 @@ "cWa" = ( /obj/structure/cable, /obj/machinery/light/directional/east, -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, +/obj/machinery/camera/directional/east, /turf/open/floor/bamboo, /area/station/commons/fitness) "cWn" = ( @@ -7387,11 +7408,6 @@ /area/station/commons/storage/primary) "esa" = ( /obj/structure/cable, -/obj/structure/bed/pod{ - desc = "An old medical bed, just waiting for replacement with something up to date."; - dir = 8; - name = "medical bed" - }, /obj/machinery/defibrillator_mount/directional/south, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 6 @@ -7399,6 +7415,7 @@ /obj/effect/turf_decal/trimline/blue/corner{ dir = 1 }, +/obj/machinery/stasis, /turf/open/floor/iron/white/textured, /area/station/medical/treatment_center) "esh" = ( @@ -7897,6 +7914,10 @@ dir = 1 }, /area/station/science/lobby) +"eGh" = ( +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/carpet/neon/simple/orange/nodots, +/area/station/cargo/miningoffice) "eGI" = ( /obj/machinery/rnd/production/protolathe/department/science, /obj/effect/turf_decal/siding/purple, @@ -8338,6 +8359,11 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark, /area/station/commons/dorms) +"eQt" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/vending/imported/yangyu, +/turf/open/floor/iron/sepia, +/area/station/commons/fitness/recreation) "eQB" = ( /obj/effect/spawner/structure/window/reinforced/plasma, /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, @@ -8701,7 +8727,7 @@ /obj/machinery/computer/records/medical{ dir = 2 }, -/obj/machinery/light/very_dim/directional/north, +/obj/machinery/light/directional/north, /turf/open/floor/iron/grimy, /area/station/security/detectives_office) "fbw" = ( @@ -8811,6 +8837,18 @@ /obj/structure/closet/firecloset/full, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"fel" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/purple/line{ + dir = 8 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/dark/textured, +/area/station/hallway/primary/central) "fep" = ( /obj/structure/extinguisher_cabinet/directional/north, /obj/structure/table/reinforced, @@ -9154,9 +9192,7 @@ /obj/machinery/reagentgrinder{ pixel_y = 4 }, -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, +/obj/machinery/camera/directional/east, /turf/open/floor/iron, /area/station/service/hydroponics) "foQ" = ( @@ -9303,7 +9339,7 @@ /turf/open/floor/plating, /area/station/cargo/storage) "fuu" = ( -/obj/machinery/light/very_dim/directional/north, +/obj/machinery/light/directional/north, /obj/structure/sign/poster/contraband/punch_shit{ pixel_y = 35 }, @@ -9584,6 +9620,16 @@ /obj/structure/cable, /turf/open/floor/engine, /area/station/maintenance/disposal/incinerator) +"fGs" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/random/trash, +/obj/machinery/conveyor/auto{ + dir = 5 + }, +/turf/open/floor/plating, +/area/station/maintenance/port/central) "fGy" = ( /turf/open/floor/iron, /area/station/engineering/main) @@ -10014,10 +10060,8 @@ /area/ocean) "fSs" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/railing{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/grass, /area/station/science/genetics) "fSR" = ( @@ -10477,7 +10521,7 @@ /area/station/science/genetics) "gfA" = ( /obj/machinery/dna_scannernew, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, /obj/machinery/light/directional/west, /obj/effect/turf_decal/tile/green/half/contrasted{ dir = 4 @@ -10945,17 +10989,17 @@ /turf/open/floor/iron, /area/mine/storage/public) "gym" = ( -/obj/machinery/medical_kiosk, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 5 }, /obj/effect/turf_decal/trimline/blue/corner{ dir = 8 }, +/obj/machinery/stasis, /turf/open/floor/iron/dark/textured, /area/station/medical/medbay/lobby) "gyp" = ( -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/central) "gyA" = ( @@ -11425,7 +11469,7 @@ /area/station/maintenance/port/central) "gNC" = ( /obj/structure/table/wood, -/obj/machinery/light/very_dim/directional/north, +/obj/machinery/light/directional/north, /obj/item/food/baguette, /obj/item/reagent_containers/cup/glass/bottle/bottleofnothing, /turf/open/floor/iron/grimy, @@ -11470,6 +11514,7 @@ /obj/machinery/flasher/directional/east{ id = "secentranceflasher" }, +/obj/structure/sign/departments/security, /turf/open/floor/plating, /area/station/hallway/primary/central/fore) "gPk" = ( @@ -11732,7 +11777,7 @@ /area/station/hallway/primary/central) "gXs" = ( /obj/machinery/duct/industrial/waste, -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/central) "gXA" = ( @@ -11743,9 +11788,8 @@ /turf/open/floor/iron/dark/textured, /area/station/hallway/secondary/entry) "gXL" = ( -/obj/structure/closet/wardrobe/black, /obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/effect/landmark/start/hangover/closet, +/obj/machinery/vending/mechcomp, /turf/open/floor/iron/sepia, /area/station/commons/fitness/recreation) "gYs" = ( @@ -12297,6 +12341,10 @@ "hpg" = ( /turf/open/floor/iron/dark/textured_large, /area/station/commons/storage/emergency/starboard) +"hpU" = ( +/obj/structure/sign/departments/exam_room, +/turf/closed/wall/r_wall, +/area/station/medical/treatment_center) "hqe" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /turf/open/floor/iron/dark, @@ -12625,6 +12673,11 @@ }, /turf/open/floor/iron/dark/textured, /area/station/hallway/primary/central) +"hyQ" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/vending/clothing, +/turf/open/floor/iron/sepia, +/area/station/commons/fitness/recreation) "hzn" = ( /obj/effect/turf_decal/trimline/red/filled/warning{ dir = 8 @@ -13346,15 +13399,13 @@ /turf/open/floor/iron/dark/textured, /area/station/hallway/primary/central) "hTY" = ( -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, +/obj/machinery/camera/directional/east, /obj/effect/turf_decal/tile/blue/diagonal_centre, /obj/effect/spawner/random/vending/colavend, /turf/open/floor/iron/white/diagonal, /area/station/medical/medbay/lobby) "hUb" = ( -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /obj/structure/table/wood, /turf/open/floor/wood, /area/station/security/detectives_office) @@ -14616,6 +14667,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/sorting) +"iKF" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/machinery/conveyor/auto{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/port/central) "iKK" = ( /obj/machinery/conveyor{ id = "garbage"; @@ -14709,6 +14769,10 @@ }, /turf/open/floor/iron/dark/herringbone, /area/station/science/server) +"iLS" = ( +/obj/structure/sign/departments/science, +/turf/closed/wall/r_wall, +/area/station/science/lobby) "iLU" = ( /obj/machinery/processor/slime, /turf/open/floor/iron, @@ -14950,6 +15014,10 @@ /obj/machinery/computer/security/wooden_tv, /turf/open/floor/wood/large, /area/station/command/bridge) +"iTH" = ( +/obj/structure/sign/departments/engineering, +/turf/closed/wall/r_wall, +/area/station/engineering/break_room) "iUi" = ( /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/wood/parquet, @@ -15676,7 +15744,7 @@ dir = 4 }, /obj/machinery/airalarm/directional/west, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, /turf/open/floor/wood/parquet, /area/station/medical/medbay/central) "jtn" = ( @@ -16023,9 +16091,7 @@ /turf/open/ballpit, /area/station/security/checkpoint/customs) "jCA" = ( -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, +/obj/machinery/camera/directional/east, /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) @@ -16050,9 +16116,7 @@ /obj/structure/rack, /obj/effect/turf_decal/tile/neutral, /obj/effect/spawner/random/clothing/costume, -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, +/obj/machinery/camera/directional/east, /turf/open/floor/iron/sepia, /area/station/commons/fitness/recreation) "jDJ" = ( @@ -16695,10 +16759,6 @@ elevator_id = "mineshaft"; dir = 4 }, -/obj/machinery/button/sea_elevator{ - pixel_y = -32; - id = "mineshaft" - }, /turf/open/floor/elevator_shaft{ dir = 8 }, @@ -16908,6 +16968,14 @@ /obj/effect/base_turf_modifier/pit, /turf/closed/wall/rust, /area/station/ai_monitored/turret_protected/ai) +"kck" = ( +/obj/item/kirbyplants/random, +/obj/machinery/button/sea_elevator{ + pixel_y = -32; + id = "mineshaft" + }, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "kcC" = ( /obj/structure/cable, /turf/closed/wall/r_wall, @@ -17012,7 +17080,7 @@ "kff" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/very_dim/directional/west, +/obj/machinery/light/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/central) "kfz" = ( @@ -17344,7 +17412,7 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/central) "knP" = ( -/obj/machinery/light/very_dim/directional/east, +/obj/machinery/light/directional/east, /turf/open/floor/wood, /area/station/security/detectives_office) "kom" = ( @@ -18691,6 +18759,11 @@ }, /turf/open/floor/iron/dark/textured, /area/station/medical/surgery/theatre) +"lbq" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/vending/cart, +/turf/open/floor/iron/sepia, +/area/station/commons/fitness/recreation) "lbA" = ( /obj/effect/turf_decal/trimline/blue/filled/warning{ dir = 6 @@ -18782,6 +18855,7 @@ name = "Secondary Research and Development Shutter" }, /obj/effect/spawner/structure/window/reinforced/plasma, +/obj/structure/sign/departments/science, /turf/open/floor/plating, /area/station/science/lobby) "lfi" = ( @@ -18841,6 +18915,17 @@ }, /turf/open/floor/iron/dark/textured, /area/station/engineering/main) +"lgB" = ( +/obj/machinery/duct/industrial/waste, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/line{ + dir = 4 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/plastic, +/area/station/hallway/primary/central) "lgG" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/unres{ @@ -18985,6 +19070,7 @@ dir = 1 }, /obj/effect/turf_decal/trimline/blue/filled/warning, +/obj/effect/mapping_helpers/airlock/access/all/science/genetics, /turf/open/floor/iron/white/textured, /area/station/medical/medbay/central) "lkB" = ( @@ -19456,7 +19542,7 @@ "lzK" = ( /obj/structure/closet/secure_closet/research_director, /obj/machinery/airalarm/directional/west, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) @@ -19582,6 +19668,10 @@ /obj/effect/turf_decal/trimline/purple/filled/warning, /turf/open/floor/iron/dark, /area/station/science/server) +"lCz" = ( +/obj/structure/sign/departments/chemistry/pharmacy, +/turf/closed/wall/r_wall, +/area/station/medical/medbay/central) "lCD" = ( /obj/structure/cable, /obj/machinery/plumbing/floor_pump/input/on/waste/directional/west, @@ -20398,9 +20488,7 @@ dir = 8 }, /mob/living/carbon/human/species/monkey, -/obj/structure/railing{ - dir = 8 - }, +/obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/grass, /area/station/science/genetics) "mdK" = ( @@ -21237,7 +21325,7 @@ "mIf" = ( /obj/structure/disposalpipe/segment, /obj/machinery/requests_console/directional/north, -/obj/machinery/camera/motion/directional/north, +/obj/machinery/camera/directional/north, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) "mIp" = ( @@ -21426,7 +21514,7 @@ "mOh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/very_dim/directional/north, +/obj/machinery/light/directional/north, /obj/effect/turf_decal/trimline/purple/filled/warning{ dir = 9 }, @@ -21571,9 +21659,7 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "mSX" = ( -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, +/obj/machinery/camera/directional/east, /turf/open/floor/wood, /area/station/commons/lounge) "mTo" = ( @@ -21969,6 +22055,13 @@ }, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) +"ndA" = ( +/obj/effect/spawner/random/trash, +/obj/machinery/conveyor/auto{ + dir = 3 + }, +/turf/open/floor/plating, +/area/station/maintenance/port/central) "ndO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -22190,7 +22283,7 @@ /turf/open/floor/engine, /area/station/cargo/miningoffice) "niw" = ( -/obj/machinery/light/very_dim/directional/west, +/obj/machinery/light/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/central) "niB" = ( @@ -22489,6 +22582,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/sign/departments/cargo, /turf/closed/wall, /area/station/construction/storage_wing) "nsb" = ( @@ -22755,6 +22849,10 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) +"nyH" = ( +/obj/structure/sign/departments/botany, +/turf/closed/wall, +/area/station/service/hydroponics) "nyQ" = ( /obj/effect/turf_decal/bot, /turf/open/floor/iron, @@ -23334,6 +23432,10 @@ /obj/effect/spawner/random/structure/grille, /turf/open/floor/plating, /area/station/maintenance/starboard/upper) +"nSA" = ( +/obj/structure/sign/departments/lawyer, +/turf/closed/wall, +/area/station/service/lawoffice) "nTa" = ( /obj/structure/cable, /obj/machinery/duct/industrial/waste, @@ -24172,7 +24274,7 @@ /area/station/maintenance/port/aft) "ord" = ( /obj/item/radio/intercom/directional/west, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 }, @@ -24329,7 +24431,7 @@ "ovu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /obj/effect/turf_decal/trimline/purple/filled/warning{ dir = 10 }, @@ -24885,7 +24987,7 @@ /area/station/engineering/atmos/hfr_room) "oQv" = ( /obj/machinery/duct/industrial/waste, -/obj/machinery/light/very_dim/directional/east, +/obj/machinery/light/directional/east, /turf/open/floor/iron, /area/station/hallway/primary/central) "oRe" = ( @@ -25123,9 +25225,7 @@ /turf/open/floor/iron/dark, /area/station/engineering/atmos) "oXQ" = ( -/obj/structure/railing{ - dir = 8 - }, +/obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/grass, /area/station/science/genetics) "oXY" = ( @@ -25155,9 +25255,7 @@ pixel_y = 2 }, /obj/machinery/airalarm/directional/west, -/obj/machinery/camera/motion/directional/west{ - c_tag = "Armory - Internal" - }, +/obj/machinery/camera/directional/west, /obj/effect/turf_decal/trimline/red/filled/line{ dir = 10 }, @@ -27520,6 +27618,21 @@ /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/qm) +"qrD" = ( +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/purple/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/purple/filled/mid_joiner{ + dir = 4 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/dark/textured_edge{ + dir = 4 + }, +/area/station/hallway/primary/central) "qrM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/trimline/blue/filled/warning, @@ -28529,6 +28642,15 @@ }, /turf/open/floor/iron/dark/textured, /area/station/engineering/main) +"qWx" = ( +/obj/structure/lattice, +/obj/structure/disposalpipe/segment{ + dir = 4; + invisibility = 101 + }, +/obj/machinery/conveyor/auto, +/turf/open/floor/plating/ocean, +/area/ocean/near_station_powered) "qWC" = ( /obj/effect/turf_decal/trimline/green/line, /obj/effect/turf_decal/trimline/green/line, @@ -28588,7 +28710,7 @@ spawn_loot_count = 2; spawn_loot_split = 1 }, -/obj/machinery/light/very_dim/directional/east, +/obj/machinery/light/directional/east, /turf/open/floor/iron/sepia, /area/station/commons/fitness/recreation) "qZv" = ( @@ -28866,7 +28988,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/obj/machinery/camera/motion/directional/west, +/obj/machinery/camera/directional/west, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, @@ -29038,6 +29160,10 @@ }, /turf/open/floor/carpet/executive, /area/station/command/bridge) +"rmf" = ( +/obj/structure/sign/departments/cargo, +/turf/closed/wall, +/area/station/construction/storage_wing) "rmm" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -29272,7 +29398,7 @@ /area/station/maintenance/disposal/incinerator) "rsO" = ( /obj/machinery/duct/industrial/waste, -/obj/machinery/light/very_dim/directional/west, +/obj/machinery/light/directional/west, /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 }, @@ -29478,6 +29604,16 @@ /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron/dark, /area/station/service/cafeteria) +"rzA" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/line{ + dir = 8 + }, +/obj/machinery/stasis, +/turf/open/floor/iron/white/textured, +/area/station/medical/treatment_center) "rzM" = ( /obj/effect/spawner/random/vending/snackvend, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -29852,6 +29988,7 @@ /obj/effect/turf_decal/trimline/blue/filled/warning{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/all/science/genetics, /turf/open/floor/iron/white/textured, /area/station/science/genetics) "rJn" = ( @@ -30055,6 +30192,10 @@ dir = 4 }, /area/station/service/chapel) +"rOJ" = ( +/obj/machinery/computer/cryopod/directional/south, +/turf/open/floor/iron, +/area/mine/storage/public) "rOK" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -31687,6 +31828,7 @@ dir = 4; invisibility = 101 }, +/obj/structure/sign/departments/medbay/alt, /turf/open/floor/plating, /area/station/hallway/primary/central) "sTc" = ( @@ -32985,7 +33127,7 @@ /turf/open/floor/iron/dark/textured, /area/station/security/office) "tJY" = ( -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /turf/open/floor/iron/sepia, /area/station/commons/fitness/recreation) "tKh" = ( @@ -33907,6 +34049,11 @@ /obj/machinery/vending/wardrobe/sec_wardrobe, /turf/open/floor/iron, /area/station/security/checkpoint/science) +"ukf" = ( +/obj/effect/spawner/structure/window, +/obj/structure/sign/departments/holy, +/turf/open/floor/plating, +/area/station/service/chapel) "ukF" = ( /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/west, @@ -34040,6 +34187,7 @@ "uox" = ( /obj/effect/spawner/structure/window, /obj/structure/cable, +/obj/structure/sign/departments/medbay/alt, /turf/open/floor/plating, /area/station/medical/medbay/lobby) "uoJ" = ( @@ -34573,6 +34721,7 @@ /obj/effect/mapping_helpers/airlock/access/all/science/genetics, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/all/medical/general, /turf/open/floor/iron/white/textured, /area/station/science/genetics) "uGB" = ( @@ -34828,6 +34977,22 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/atmos/hfr_room) +"uOM" = ( +/obj/machinery/duct/industrial/waste, +/obj/effect/turf_decal/trimline/purple/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/purple/filled/mid_joiner{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/iron/dark/textured_edge{ + dir = 8 + }, +/area/station/hallway/primary/central) "uOT" = ( /obj/structure/chair/sofa/right{ dir = 4; @@ -35210,7 +35375,9 @@ /turf/open/floor/iron/white/textured_large, /area/station/science/robotics/lab) "uYW" = ( -/obj/machinery/conveyor/auto, +/obj/machinery/cryopod{ + dir = 8 + }, /turf/open/floor/iron, /area/mine/storage/public) "uZa" = ( @@ -35234,6 +35401,7 @@ dir = 9 }, /obj/effect/turf_decal/trimline/blue/corner, +/obj/machinery/medical_kiosk, /turf/open/floor/iron/dark/textured, /area/station/medical/medbay/lobby) "vaN" = ( @@ -36177,7 +36345,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/junction/flip, -/obj/structure/extinguisher_cabinet/directional/west, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, @@ -36924,7 +37091,7 @@ dir = 4; invisibility = 101 }, -/obj/machinery/light/very_dim/directional/north, +/obj/machinery/light/directional/north, /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 }, @@ -37202,6 +37369,12 @@ dir = 4 }, /area/station/service/chapel) +"wlA" = ( +/obj/machinery/conveyor/auto{ + dir = 3 + }, +/turf/open/floor/plating, +/area/station/maintenance/port/central) "wlU" = ( /obj/machinery/duct/industrial/waste, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -37744,7 +37917,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /turf/open/floor/iron, /area/mine/storage/public) "wCH" = ( @@ -38738,10 +38911,8 @@ /turf/open/floor/circuit, /area/station/tcommsat/server) "xix" = ( -/obj/machinery/camera/motion/directional/east{ - c_tag = "E.V.A. Storage" - }, -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/camera/directional/east, +/obj/machinery/light/directional/south, /turf/open/floor/iron, /area/mine/storage/public) "xiB" = ( @@ -38923,6 +39094,7 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, +/obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron/white/textured, /area/station/medical/medbay/central) "xpc" = ( @@ -39925,7 +40097,7 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/central) "xRl" = ( -/obj/machinery/light/very_dim/directional/south, +/obj/machinery/light/directional/south, /turf/open/floor/iron/grimy, /area/station/security/detectives_office) "xRq" = ( @@ -40520,6 +40692,7 @@ dir = 1 }, /obj/effect/turf_decal/trimline/yellow/line, +/obj/machinery/light/directional/north, /turf/open/floor/plastic, /area/station/hallway/primary/central) "yjV" = ( @@ -56669,7 +56842,7 @@ wXC wXC vrw vrw -vrw +nyH jBn gpW vrw @@ -57481,7 +57654,7 @@ jwO vNp jja qLh -qOf +rmf yba aOq icx @@ -58216,7 +58389,7 @@ wDZ qbR vrw vrw -vrw +nyH xUv vrw wRT @@ -58452,10 +58625,10 @@ pHV nDl lQt oas -gXL -gXL -gXL -gXL +hyQ +aJi +lbq +eQt gXL oas xwm @@ -58973,7 +59146,7 @@ auY uCB vqB xwm -gLN +cQP ubt gLN lGH @@ -60244,7 +60417,7 @@ uzV wlx gIZ nVx -yke +ukf qbR pHV iul @@ -61075,8 +61248,8 @@ kXk iSl qRY btg -fZG -fZG +eGh +eGh pEa wsx twN @@ -63080,10 +63253,10 @@ xji tRB cGg pkw -bfN +fGs +aFY aFY aFY -csW ske meJ meJ @@ -63376,7 +63549,7 @@ aah meJ meJ rvq -rvq +vHZ fCx fCx fCx @@ -63849,7 +64022,7 @@ nDl pkw adv bJU -adv +rOJ pkw wXG ske @@ -64104,10 +64277,10 @@ qbR wDZ nDl ahh -adv +uYW cPJ uYW -cDJ +pkw wXG ske meJ @@ -64645,7 +64818,7 @@ mIK liB eYv nDK -nDK +kck qRY meJ meJ @@ -65378,7 +65551,7 @@ rNm cvj sAx eJv -eJv +lCz vjG meC tXC @@ -66207,8 +66380,8 @@ meJ rvq rvq rvq -rvq -rvq +naN +vHZ sRh byf tKt @@ -66462,9 +66635,9 @@ pHU etN rvq rvq -rvq -rvq -rvq +naN +naN +vHZ sRh sRh ewQ @@ -66718,8 +66891,8 @@ meJ pHU gBb rvq -rvq -rvq +naN +vHZ asA asA sRh @@ -66974,8 +67147,8 @@ meJ meJ fXF gBb -rvq -rvq +naN +vHZ asA asA mqy @@ -67230,8 +67403,8 @@ meJ meJ meJ fXF -gBb -rvq +qWx +vHZ asA asA elt @@ -69751,7 +69924,7 @@ avv wYe dLY uzC -uOF +hpU gMi ybu pgJ @@ -70571,7 +70744,7 @@ aah aah meJ fXF -gBb +bFY iRT asA asA @@ -70829,7 +71002,7 @@ aah meJ fXF gBb -rvq +vHZ iRT asA asA @@ -71087,7 +71260,7 @@ meJ pHU gBb rvq -rvq +vHZ iRT asA asA @@ -71289,7 +71462,7 @@ gTr wCH vUo gct -gct +rzA vUo esa uOF @@ -71304,7 +71477,7 @@ xCU uVK bva twr -vPZ +iKF kND meJ meJ @@ -71345,8 +71518,8 @@ pHU etN rvq rvq -rvq -rvq +vHZ +fCx iRT pla pla @@ -71604,7 +71777,7 @@ meJ rvq rvq rvq -rvq +vHZ iRT pla euG @@ -72119,7 +72292,7 @@ meJ meJ meJ rvq -rvq +vHZ fCx iRT pla @@ -72378,7 +72551,7 @@ meJ rvq rvq rvq -rvq +vHZ iRT pla pla @@ -72636,7 +72809,7 @@ meJ meJ rvq rvq -rvq +vHZ iRT pla pla @@ -73652,9 +73825,9 @@ jDJ jDJ uCz kND -csW +wlA heN -rvq +vXo gBb meJ meJ @@ -73877,7 +74050,7 @@ tMK dyB dyB dyB -csW +jOH kND ske ske @@ -74141,7 +74314,7 @@ dyB dyB dyB dyB -csW +jOH ske ske meJ @@ -74399,7 +74572,7 @@ qTR bva rUd tMK -csW +jOH kND kND kND @@ -74407,7 +74580,7 @@ gmQ qgs ske kND -xCU +ndA xzf xzf xzf @@ -77222,7 +77395,7 @@ fvN bBP gmj mwr -mwr +fel mwr mwr mwr @@ -78008,14 +78181,14 @@ lqw xcy lae vna -sqk +lgB sqk sqk sqk jls itM sqk -sqk +lgB itM wRg itM @@ -78749,12 +78922,12 @@ rOK rVh eFQ oja -pGv +iLS mOh mSi noG hPb -hPb +uOM hPb hPb hPb @@ -78782,10 +78955,10 @@ gdp fBZ fBZ gdp -gdp +iTH cQO poE -hLn +aZD mGg vvj xqC @@ -79531,7 +79704,7 @@ xNg xNg xNg xNg -xNg +qrD xNg gvB lfh @@ -80358,7 +80531,7 @@ wrG sWi sWi xhD -oBr +nSA kEj kDS mHQ diff --git a/monkestation/code/modules/liquids/ocean_flora.dm b/monkestation/code/modules/liquids/ocean_flora.dm index 22c88dce3878..08fa3ff9b644 100644 --- a/monkestation/code/modules/liquids/ocean_flora.dm +++ b/monkestation/code/modules/liquids/ocean_flora.dm @@ -32,7 +32,7 @@ icon_state = "coral" desc = "Beautiful coral." random_variants = 3 - density = TRUE + density = FALSE #define SCRAP_WELD_LOW 7 #define SCRAP_WELD_HIGH 12 diff --git a/monkestation/code/modules/liquids/ocean_generator.dm b/monkestation/code/modules/liquids/ocean_generator.dm index ca563b1f86b3..7302d62ce8ef 100644 --- a/monkestation/code/modules/liquids/ocean_generator.dm +++ b/monkestation/code/modules/liquids/ocean_generator.dm @@ -89,7 +89,20 @@ weighted_closed_turf_types = list(/turf/closed/mineral/random/ocean = 1) feature_spawn_list = null - mob_spawn_list = null + weighted_mob_spawn_list = list( + SPAWN_MEGAFAUNA = 2, + /obj/effect/spawner/random/lavaland_mob/goliath = 50, + /obj/effect/spawner/random/lavaland_mob/legion = 30, + /obj/effect/spawner/random/lavaland_mob/watcher = 40, + /mob/living/basic/mining/bileworm = 20, + /mob/living/basic/mining/lobstrosity/lava = 20, + /mob/living/simple_animal/hostile/asteroid/brimdemon = 20, + /mob/living/basic/mining/goldgrub = 10, + /obj/structure/spawner/lavaland = 2, + /obj/structure/spawner/lavaland/goliath = 3, + /obj/structure/spawner/lavaland/legion = 3, + ) + flora_spawn_list = null ///2D list of all biomes based on heat and humidity combos. diff --git a/monkestation/code/modules/ocean_content/hotspot_machines/stomper.dm b/monkestation/code/modules/ocean_content/hotspot_machines/stomper.dm index f834105678d8..895b7f518f19 100644 --- a/monkestation/code/modules/ocean_content/hotspot_machines/stomper.dm +++ b/monkestation/code/modules/ocean_content/hotspot_machines/stomper.dm @@ -32,6 +32,18 @@ /obj/machinery/power/stomper/Initialize(mapload) . = ..() installed_cell = new(src) + register_context() + +/obj/machinery/power/stomper/add_context(atom/source, list/context, obj/item/held_item, mob/user) + . = ..() + if(held_item) + if(held_item.tool_behaviour == TOOL_WRENCH) + context[SCREENTIP_CONTEXT_LMB] = anchored ? "Unsecure" : "Secure" + if(held_item.tool_behaviour == TOOL_SCREWDRIVER) + context[SCREENTIP_CONTEXT_LMB] = opened ? "Open Panel" : "Close Panel" + + if(!held_item && anchored) + context[SCREENTIP_CONTEXT_LMB] = on ? "Turn On" : "Turn Off" /obj/machinery/power/stomper/should_have_node() return anchored @@ -41,12 +53,12 @@ opened = !opened to_chat(user, span_notice("You [opened ? "Open" : "Close"] the access panel on the [src].")) toggle_power(FALSE) - return TOOL_ACT_TOOLTYPE_SUCCESS + return TRUE /obj/machinery/power/stomper/wrench_act(mob/living/user, obj/item/tool) . = ..() set_anchored(!anchored) - return TOOL_ACT_TOOLTYPE_SUCCESS + return TRUE /obj/machinery/power/stomper/proc/toggle_power(state) on = state From 0596c8ba288aabdd339d2eb9971b3accce0c06d4 Mon Sep 17 00:00:00 2001 From: dwasint <82520990+dwasint@users.noreply.github.com> Date: Thu, 14 Sep 2023 04:29:12 -0400 Subject: [PATCH 5/6] god --- _maps/map_files/Mining/Oshan.dmm | 116 ++++++++++-------- _maps/map_files/Oshan/oshan.dmm | 43 +++++-- .../code/modules/liquids/liquid_ocean.dm | 40 +++++- .../code/modules/liquids/ocean_generator.dm | 70 ++++++++++- .../particle_weathers/_particle_weather.dm | 2 +- 5 files changed, 206 insertions(+), 65 deletions(-) diff --git a/_maps/map_files/Mining/Oshan.dmm b/_maps/map_files/Mining/Oshan.dmm index c607a27c012b..44afb00c2a86 100644 --- a/_maps/map_files/Mining/Oshan.dmm +++ b/_maps/map_files/Mining/Oshan.dmm @@ -117,6 +117,7 @@ /obj/machinery/atmospherics/components/tank/air{ dir = 1 }, +/obj/structure/cable, /turf/open/floor/plating, /area/station/security/prison/visit) "hC" = ( @@ -263,6 +264,7 @@ /obj/item/clothing/glasses/meson, /obj/effect/decal/cleanable/dirt, /obj/item/tank/internals/oxygen, +/obj/item/shovel, /turf/open/floor/iron, /area/station/security/prison/mess) "lH" = ( @@ -316,6 +318,7 @@ /obj/item/clothing/glasses/meson, /obj/effect/decal/cleanable/dirt, /obj/item/tank/internals/oxygen, +/obj/item/shovel, /turf/open/floor/iron, /area/station/security/prison/mess) "nU" = ( @@ -599,6 +602,9 @@ }, /turf/open/floor/iron/white, /area/station/security/prison) +"AB" = ( +/turf/closed/mineral/random/regrowth/underwater, +/area/ocean/dark) "Bb" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, @@ -841,6 +847,7 @@ id = "mining_internal" }, /obj/structure/fans/tiny/forcefield, +/obj/structure/plasticflaps, /turf/open/floor/iron/dark, /area/station/security/prison) "LF" = ( @@ -893,6 +900,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/north, /obj/item/tank/internals/oxygen, +/obj/item/shovel, /turf/open/floor/iron, /area/station/security/prison/mess) "OD" = ( @@ -18779,11 +18787,11 @@ qu qu ab qu -Hh -Hh -Hh -Hh -Hh +AB +AB +AB +AB +AB ke qu Yw @@ -19035,12 +19043,12 @@ wE qu qu ab -Hh -Hh -Hh -Hh -Hh -Hh +AB +AB +AB +AB +AB +AB ke qu Yw @@ -19292,12 +19300,12 @@ Wa qu qu ab -Hh -Hh -Hh -Hh -Hh -Hh +AB +AB +AB +AB +AB +AB ke qu Yw @@ -19549,12 +19557,12 @@ Wa qu qu ab -Hh -Hh -Hh -Hh -Hh -Hh +AB +AB +AB +AB +AB +AB ke Yw Yw @@ -19806,11 +19814,11 @@ Wa qu qu ab -Hh -Hh -Hh -Hh -Hh +AB +AB +AB +AB +AB qu ke Yw @@ -21091,10 +21099,10 @@ Wa qu qu qu -Hh -Hh -Hh -Hh +AB +AB +AB +AB qu qu qu @@ -21348,10 +21356,10 @@ Wa qu qu qu -Hh -Hh -Hh -Hh +AB +AB +AB +AB qu qu qu @@ -21606,10 +21614,10 @@ qu qu qu qu -Hh -Hh -Hh -Hh +AB +AB +AB +AB qu qu qu @@ -21864,9 +21872,9 @@ qu qu qu qu -Hh -Hh -Hh +AB +AB +AB qu qu qu @@ -22381,8 +22389,8 @@ qu qu qu qu -Hh -Hh +AB +AB qu qu Yw @@ -22637,9 +22645,9 @@ qu qu qu qu -Hh -Hh -Hh +AB +AB +AB qu qu Yw @@ -22893,11 +22901,11 @@ qu qu qu qu -Hh -Hh -Hh -Hh -Hh +AB +AB +AB +AB +AB qu qu Yw @@ -23153,7 +23161,7 @@ qu qu qu qu -Hh +AB qu qu qu diff --git a/_maps/map_files/Oshan/oshan.dmm b/_maps/map_files/Oshan/oshan.dmm index 48c404acabfb..7eaaf26c02ce 100644 --- a/_maps/map_files/Oshan/oshan.dmm +++ b/_maps/map_files/Oshan/oshan.dmm @@ -1319,6 +1319,10 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/cargo/storage) +"aRb" = ( +/obj/machinery/announcement_system, +/turf/open/floor/circuit, +/area/station/tcommsat/server) "aRd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, @@ -7618,6 +7622,7 @@ /obj/effect/turf_decal/stripes{ dir = 1 }, +/obj/structure/weightmachine/weightlifter, /turf/open/floor/iron, /area/station/commons/fitness) "exZ" = ( @@ -9768,6 +9773,7 @@ "fJF" = ( /obj/effect/turf_decal/stripes, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/weightmachine/stacklifter, /turf/open/floor/iron, /area/station/commons/fitness) "fKl" = ( @@ -11432,6 +11438,7 @@ }, /obj/machinery/porta_turret/ai, /obj/effect/turf_decal/bot_red, +/obj/machinery/light/directional/south, /turf/open/floor/iron/dark, /area/station/ai_monitored/turret_protected/ai_upload) "gMi" = ( @@ -22019,6 +22026,7 @@ dir = 1 }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/structure/weightmachine/weightlifter, /turf/open/floor/iron, /area/station/commons/fitness) "nck" = ( @@ -34998,6 +35006,7 @@ dir = 4; color = "#486091" }, +/obj/machinery/light/directional/south, /turf/open/floor/carpet/cyan, /area/station/ai_monitored/turret_protected/ai_upload) "uPb" = ( @@ -35079,6 +35088,12 @@ }, /turf/open/floor/iron/dark/textured, /area/station/security/office) +"uRq" = ( +/obj/structure/toilet/secret{ + dir = 8 + }, +/turf/open/floor/iron/showroomfloor, +/area/station/commons/dorms) "uRv" = ( /obj/effect/turf_decal/tile/blue/opposingcorners, /obj/effect/turf_decal/tile/dark_blue/opposingcorners{ @@ -37463,6 +37478,11 @@ "wqs" = ( /turf/open/floor/holofloor/beach/water, /area/station/maintenance/starboard/aft) +"wqA" = ( +/obj/effect/turf_decal/stripes, +/obj/structure/weightmachine/stacklifter, +/turf/open/floor/iron, +/area/station/commons/fitness) "wqB" = ( /obj/machinery/vending/security, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -39545,6 +39565,13 @@ /obj/machinery/conveyor/auto, /turf/open/floor/plating, /area/station/maintenance/port/central) +"xzg" = ( +/obj/effect/turf_decal/stripes, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/weightmachine/stacklifter, +/turf/open/floor/iron, +/area/station/commons/fitness) "xzj" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/structure/sign/poster/quirk/festive{ @@ -56550,7 +56577,7 @@ pVn vwP bmW bmW -bmW +uRq vwP rnM rnM @@ -56864,7 +56891,7 @@ aKV pug qGs lqa -dik +xzg rYQ rYQ dwx @@ -57378,7 +57405,7 @@ aKV kmY exP lqa -ekZ +wqA vtb rYQ dwx @@ -61261,7 +61288,7 @@ xhY aXp dfM ctS -ctS +aRb bNX ctS hCB @@ -84619,7 +84646,7 @@ meJ meJ meJ meJ -meJ +pSy meJ meJ meJ @@ -84875,9 +84902,9 @@ aah meJ meJ meJ -meJ -meJ -meJ +pSy +pSy +pSy meJ aah aah diff --git a/monkestation/code/modules/liquids/liquid_ocean.dm b/monkestation/code/modules/liquids/liquid_ocean.dm index 50a58b067ee7..75fb0a880c9d 100644 --- a/monkestation/code/modules/liquids/liquid_ocean.dm +++ b/monkestation/code/modules/liquids/liquid_ocean.dm @@ -89,6 +89,11 @@ GLOBAL_LIST_INIT(initalized_ocean_areas, list()) var/rand_variants = 0 var/rand_chance = 30 + /// Itemstack to drop when dug by a shovel + var/obj/item/stack/dig_result = /obj/item/stack/ore/glass + /// Whether the turf has been dug or not + var/dug = FALSE + /turf/open/floor/plating/ocean/dark has_starlight = FALSE @@ -118,6 +123,19 @@ GLOBAL_LIST_INIT(initalized_ocean_areas, list()) for(var/turf/open/floor/plating/ocean/listed_ocean as anything in ocean_turfs) listed_ocean.rebuild_adjacent() +/// Drops itemstack when dug and changes icon +/turf/open/floor/plating/ocean/proc/getDug() + dug = TRUE + new dig_result(src, 5) + +/// If the user can dig the turf +/turf/open/floor/plating/ocean/proc/can_dig(mob/user) + if(!dug) + return TRUE + if(user) + to_chat(user, span_warning("Looks like someone has dug here already!")) + + /// Updates starlight. Called when we're unsure of a turf's starlight state /// Returns TRUE if we succeed, FALSE otherwise /turf/open/floor/plating/ocean/proc/update_starlight() @@ -213,6 +231,22 @@ GLOBAL_LIST_INIT(initalized_ocean_areas, list()) var/obj/item/dousing_rod/attacking_rod = C attacking_rod.deploy(src) + if(C.tool_behaviour == TOOL_SHOVEL || C.tool_behaviour == TOOL_MINING) + if(!can_dig(user)) + return TRUE + + if(!isturf(user.loc)) + return + + balloon_alert(user, "digging...") + + if(C.use_tool(src, user, 40, volume=50)) + if(!can_dig(user)) + return TRUE + getDug() + SSblackbox.record_feedback("tally", "pick_used_mining", 1, C.type) + return TRUE + if(istype(C, /obj/item/vent_package)) if(captured) return @@ -536,7 +570,7 @@ GLOBAL_VAR_INIT(lavaland_points_generated, 0) baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface initial_gas_mix = LAVALAND_DEFAULT_ATMOS defer_change = TRUE - + /turf/closed/mineral/random/regrowth/New(loc, _mineral_increase) mineralChance += _mineral_increase @@ -552,3 +586,7 @@ GLOBAL_VAR_INIT(lavaland_points_generated, 0) if(GLOB.lavaland_points_generated > 55000) mineral_increase = min(87, (GLOB.lavaland_points_generated - 55000) / 1000) new /turf/closed/mineral/random/regrowth(location , mineral_increase) + +/turf/closed/mineral/random/regrowth/underwater + turf_type = /turf/open/floor/plating/ocean/dark + baseturfs = /turf/open/floor/plating/ocean/dark diff --git a/monkestation/code/modules/liquids/ocean_generator.dm b/monkestation/code/modules/liquids/ocean_generator.dm index 7302d62ce8ef..50fe0397b96d 100644 --- a/monkestation/code/modules/liquids/ocean_generator.dm +++ b/monkestation/code/modules/liquids/ocean_generator.dm @@ -89,7 +89,7 @@ weighted_closed_turf_types = list(/turf/closed/mineral/random/ocean = 1) feature_spawn_list = null - weighted_mob_spawn_list = list( + weighted_mob_spawn_list = list( SPAWN_MEGAFAUNA = 2, /obj/effect/spawner/random/lavaland_mob/goliath = 50, /obj/effect/spawner/random/lavaland_mob/legion = 30, @@ -183,6 +183,11 @@ string_gen = rustg_cnoise_generate("[initial_closed_chance]", "[smoothing_iterations]", "[birth_limit]", "[death_limit]", "[world.maxx]", "[world.maxy]") //Generate the raw CA data + // Area var pullouts to make accessing in the loop faster + var/flora_allowed = (generate_in.area_flags & FLORA_ALLOWED) && length(flora_spawn_list) + var/feature_allowed = (generate_in.area_flags & FLORA_ALLOWED) && length(feature_spawn_list) + var/mobs_allowed = (generate_in.area_flags & MOB_SPAWN_ALLOWED) && length(mob_spawn_list) + var/megas_allowed = (generate_in.area_flags & MEGAFAUNA_SPAWN_ALLOWED) && length(megafauna_spawn_list) for(var/i in turfs) //Go through all the turfs and generate them var/turf/gen_turf = i @@ -199,6 +204,69 @@ if(gen_turf.turf_flags & NO_RUINS) new_turf.turf_flags |= NO_RUINS + // If we've spawned something yet + var/spawned_something = FALSE + + ///Spawning isn't done in procs to save on overhead on the 60k turfs we're going through. + //FLORA SPAWNING HERE + if(flora_allowed && prob(flora_spawn_chance)) + var/flora_type = pick(flora_spawn_list) + new flora_type(new_turf) + spawned_something = TRUE + + //FEATURE SPAWNING HERE + if(feature_allowed && prob(feature_spawn_chance)) + var/can_spawn = TRUE + + var/atom/picked_feature = pick(feature_spawn_list) + + for(var/obj/structure/existing_feature in range(7, new_turf)) + if(istype(existing_feature, picked_feature)) + can_spawn = FALSE + break + + if(can_spawn) + new picked_feature(new_turf) + spawned_something = TRUE + + //MOB SPAWNING HERE + if(mobs_allowed && !spawned_something && prob(mob_spawn_chance)) + var/atom/picked_mob = pick(mob_spawn_list) + + if(picked_mob == SPAWN_MEGAFAUNA) + if(megas_allowed) //this is danger. it's boss time. + picked_mob = pick(megafauna_spawn_list) + else //this is not danger, don't spawn a boss, spawn something else + picked_mob = pick(mob_spawn_no_mega_list) //What if we used 100% of the brain...and did something (slightly) less shit than a while loop? + + var/can_spawn = TRUE + + // prevents tendrils spawning in each other's collapse range + if(ispath(picked_mob, /obj/structure/spawner/lavaland)) + for(var/obj/structure/spawner/lavaland/spawn_blocker in range(2, new_turf)) + can_spawn = FALSE + break + // if the random is not a tendril (hopefully meaning it is a mob), avoid spawning if there's another one within 12 tiles + else + var/list/things_in_range = range(12, new_turf) + for(var/mob/living/mob_blocker in things_in_range) + if(ismining(mob_blocker)) + can_spawn = FALSE + break + //if there's a megafauna within standard view don't spawn anything at all (This isn't really consistent, I don't know why we do this. you do you tho) + if(can_spawn) + for(var/mob/living/simple_animal/hostile/megafauna/found_fauna in range(7, new_turf)) + can_spawn = FALSE + break + + if(can_spawn) + if(ispath(picked_mob, /mob/living/simple_animal/hostile/megafauna/bubblegum)) //there can be only one bubblegum, so don't waste spawns on it + weighted_megafauna_spawn_list.Remove(picked_mob) + megafauna_spawn_list = expand_weights(weighted_megafauna_spawn_list) + megas_allowed = megas_allowed && length(megafauna_spawn_list) + new picked_mob(new_turf) + spawned_something = TRUE + CHECK_TICK diff --git a/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm b/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm index 3792365f802b..9a36b8d2be60 100644 --- a/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm +++ b/monkestation/code/modules/outdoors/code/datum/particle_weathers/_particle_weather.dm @@ -62,7 +62,7 @@ GLOBAL_LIST_EMPTY(siren_objects) color_animating = pick(affecting_value) animate_flags = ELASTIC_EASING | EASE_IN | EASE_OUT spawn(duration - rand(0, duration*10)/10) - playsound_z(SSmapping.levels_by_trait(ZTRAIT_STATION), pick(sound_effects), 50, mixer_channel = CHANNEL_WEATHER) + playsound_z(SSmapping.levels_by_trait(ZTRAIT_STATION), pick(sound_effects), 50, _mixer_channel = CHANNEL_WEATHER) if(GLE_STAGE_THIRD) color_animating = SSoutdoor_effects.current_color animate_flags = CIRCULAR_EASING | EASE_IN From 099475f2600b1dd43c407337ca5d485e3921a233 Mon Sep 17 00:00:00 2001 From: dwasint <82520990+dwasint@users.noreply.github.com> Date: Thu, 14 Sep 2023 04:31:14 -0400 Subject: [PATCH 6/6] Update ocean_generator.dm --- monkestation/code/modules/liquids/ocean_generator.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/monkestation/code/modules/liquids/ocean_generator.dm b/monkestation/code/modules/liquids/ocean_generator.dm index 50fe0397b96d..ff55a4cae88c 100644 --- a/monkestation/code/modules/liquids/ocean_generator.dm +++ b/monkestation/code/modules/liquids/ocean_generator.dm @@ -33,7 +33,7 @@ var/perlin_zoom = 65 ///Seeds the rust-g perlin noise with a random number. -/datum/map_generator/ocean_generator/generate_terrain(list/turfs) +/datum/map_generator/ocean_generator/generate_terrain(list/turfs, area/generate_in) . = ..() var/height_seed = rand(0, 50000) var/humidity_seed = rand(0, 50000) @@ -136,7 +136,7 @@ var/perlin_zoom = 65 -/datum/map_generator/cave_generator/trench/generate_terrain(list/turfs) +/datum/map_generator/cave_generator/trench/generate_terrain(list/turfs, area/generate_in) var/humidity_seed = rand(0, 50000) var/heat_seed = rand(0, 50000)