From de46c572642bea2fa837f9cab04898a022e8dd37 Mon Sep 17 00:00:00 2001 From: lessthanthree <83487515+lessthnthree@users.noreply.github.com> Date: Sun, 5 Feb 2023 19:47:26 -0800 Subject: [PATCH] Tram Mk. IV hotfixes [NO GBP] (#73243) ## About The Pull Request Fixes some little issues in https://github.com/tgstation/tgstation/pull/73057 - tram doors only crush people if either emagged (100%) or malfunctioning (15%) - emag works on tram doors - crossing signals use correct amount of power, increased brightness - crossing signals and destination signs consume power when idle - green static crossing signal shuts off when power lost - left/right emag icons are swapped - tram bench override shouldn't override all benches | Fixes https://github.com/tgstation/tgstation/issues/73250 - reduced damage from tram door crushing (60 > 45) ## Changelog :cl: LT3 fix: Fixed motion sensors on tram doors, they will now crush you much less often! balance: Reduced damage from being crushed by tram doors code: Un-nested emag blacklist code: emag works properly on tram doors fix: Backwards tram door sparks animation fix: Tram displays power consumption fix: Tram crossing signals power consumption balance: Increased brightness on tram crossing signals fix: West Wing NW/SW and East Wing NE/SE crossing signals now shut off when power is lost fix: Tram benches don't override standard benches fix: Reduced saturation and brightness of standard bench /:cl: --------- Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com> --- _maps/map_files/tramstation/tramstation.dmm | 30 +++--- code/game/objects/items/emags.dm | 2 +- .../objects/structures/beds_chairs/sofa.dm | 6 +- code/modules/events/tram_malfunction.dm | 11 +- .../industrial_lift/tram/tram_machinery.dm | 100 ++++++++++++------ .../industrial_lift/tram/tram_structures.dm | 22 ++++ icons/obj/doors/tramdoor.dmi | Bin 27099 -> 26456 bytes icons/obj/machines/crossing_signal.dmi | Bin 3709 -> 3836 bytes tgstation.dme | 1 + 9 files changed, 115 insertions(+), 57 deletions(-) create mode 100644 code/modules/industrial_lift/tram/tram_structures.dm diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index 9befe46a5bc..abe12325c19 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -793,7 +793,7 @@ dir = 1 }, /obj/structure/industrial_lift/tram, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 8 }, /turf/open/openspace, @@ -8095,7 +8095,7 @@ dir = 1 }, /obj/effect/landmark/start/hangover, -/obj/structure/chair/sofa/bench/left{ +/obj/structure/chair/sofa/bench/tram/left{ dir = 4 }, /turf/open/openspace, @@ -13400,7 +13400,7 @@ "eOi" = ( /obj/structure/industrial_lift/tram, /obj/structure/window/reinforced/tram/left/directional/north, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 8 }, /turf/open/openspace, @@ -13490,7 +13490,7 @@ /obj/machinery/destination_sign/north{ pixel_y = 10 }, -/obj/structure/chair/sofa/bench/left{ +/obj/structure/chair/sofa/bench/tram/left{ dir = 4 }, /turf/open/openspace, @@ -16828,7 +16828,7 @@ pixel_y = 10 }, /obj/structure/window/reinforced/tram/left/directional/north, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 8 }, /turf/open/openspace, @@ -28761,7 +28761,7 @@ }, /obj/structure/window/reinforced/tram/left/directional/south, /obj/effect/landmark/start/hangover, -/obj/structure/chair/sofa/bench/left{ +/obj/structure/chair/sofa/bench/tram/left{ dir = 8 }, /turf/open/openspace, @@ -29057,7 +29057,7 @@ "kBX" = ( /obj/structure/industrial_lift/tram, /obj/structure/window/reinforced/tram/left/directional/south, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 4 }, /turf/open/openspace, @@ -44212,7 +44212,7 @@ "pWK" = ( /obj/structure/industrial_lift/tram, /obj/structure/window/reinforced/tram/right/directional/north, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 8 }, /turf/open/openspace, @@ -49044,7 +49044,7 @@ /obj/structure/fluff/tram_rail, /obj/structure/industrial_lift/tram, /obj/effect/landmark/start/hangover, -/obj/structure/chair/sofa/bench/left{ +/obj/structure/chair/sofa/bench/tram/left{ dir = 8 }, /turf/open/openspace, @@ -49850,7 +49850,7 @@ "rPU" = ( /obj/structure/industrial_lift/tram, /obj/structure/fluff/tram_rail, -/obj/structure/chair/sofa/bench/left{ +/obj/structure/chair/sofa/bench/tram/left{ dir = 8 }, /turf/open/openspace, @@ -51044,7 +51044,7 @@ pixel_y = -11 }, /obj/effect/landmark/start/hangover, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 4 }, /turf/open/openspace, @@ -55109,7 +55109,7 @@ /obj/structure/fluff/tram_rail, /obj/effect/landmark/start/hangover, /obj/structure/industrial_lift/tram, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 4 }, /turf/open/openspace, @@ -59304,7 +59304,7 @@ /obj/structure/fluff/tram_rail{ dir = 1 }, -/obj/structure/chair/sofa/bench/left{ +/obj/structure/chair/sofa/bench/tram/left{ dir = 4 }, /turf/open/openspace, @@ -61298,7 +61298,7 @@ /obj/structure/industrial_lift/tram, /obj/structure/fluff/tram_rail, /obj/effect/landmark/start/hangover, -/obj/structure/chair/sofa/bench/left{ +/obj/structure/chair/sofa/bench/tram/left{ dir = 8 }, /turf/open/openspace, @@ -62974,7 +62974,7 @@ "wHs" = ( /obj/structure/industrial_lift/tram, /obj/structure/window/reinforced/tram/right/directional/south, -/obj/structure/chair/sofa/bench/right{ +/obj/structure/chair/sofa/bench/tram/right{ dir = 4 }, /turf/open/openspace, diff --git a/code/game/objects/items/emags.dm b/code/game/objects/items/emags.dm index a3d0176ca68..84eb1d50139 100644 --- a/code/game/objects/items/emags.dm +++ b/code/game/objects/items/emags.dm @@ -60,7 +60,7 @@ /obj/item/card/emag/Initialize(mapload) . = ..() - type_blacklist = list(typesof(/obj/machinery/door/airlock), typesof(/obj/machinery/door/window/), typesof(/obj/machinery/door/firedoor)) //list of all typepaths that require a specialized emag to hack. + type_blacklist = list(typesof(/obj/machinery/door/airlock) + typesof(/obj/machinery/door/window/) + typesof(/obj/machinery/door/firedoor) - typesof(/obj/machinery/door/window/tram/)) //list of all typepaths that require a specialized emag to hack. /obj/item/card/emag/attack() return diff --git a/code/game/objects/structures/beds_chairs/sofa.dm b/code/game/objects/structures/beds_chairs/sofa.dm index 0c2e84b6d0d..0dc90f72acd 100644 --- a/code/game/objects/structures/beds_chairs/sofa.dm +++ b/code/game/objects/structures/beds_chairs/sofa.dm @@ -100,27 +100,23 @@ COLORED_SOFA(/obj/structure/chair/sofa, maroon, SOFA_MAROON) desc = "Perfectly designed to be comfortable to sit on, and hellish to sleep on." icon_state = "bench_middle" greyscale_config = /datum/greyscale_config/bench_middle - greyscale_colors = "#00CCFF" + greyscale_colors = "#2E668A" /obj/structure/chair/sofa/bench/left icon_state = "bench_left" greyscale_config = /datum/greyscale_config/bench_left - greyscale_colors = "#00CCFF" /obj/structure/chair/sofa/bench/right icon_state = "bench_right" greyscale_config = /datum/greyscale_config/bench_right - greyscale_colors = "#00CCFF" /obj/structure/chair/sofa/bench/corner icon_state = "bench_corner" greyscale_config = /datum/greyscale_config/bench_corner - greyscale_colors = "#00CCFF" /obj/structure/chair/sofa/bench/solo icon_state = "bench_solo" greyscale_config = /datum/greyscale_config/bench_solo - greyscale_colors = "#00CCFF" /obj/structure/chair/sofa/bench/post_buckle_mob(mob/living/Mob) if(src.dir == EAST || WEST) diff --git a/code/modules/events/tram_malfunction.dm b/code/modules/events/tram_malfunction.dm index b6bc575c360..afb2e62970e 100644 --- a/code/modules/events/tram_malfunction.dm +++ b/code/modules/events/tram_malfunction.dm @@ -37,19 +37,22 @@ /datum/round_event/tram_malfunction/start() for(var/obj/machinery/crossing_signal/signal as anything in GLOB.tram_signals) - if(signal.obj_flags & EMAGGED) - return - signal.start_malfunction() + for(var/obj/machinery/door/window/tram/door as anything in GLOB.tram_doors) + door.start_malfunction() + for(var/obj/structure/industrial_lift/tram as anything in GLOB.lifts) original_lethality = tram.collision_lethality tram.collision_lethality = 2 /datum/round_event/tram_malfunction/end() - for(var/obj/machinery/crossing_signal/signal in GLOB.tram_signals) + for(var/obj/machinery/crossing_signal/signal as anything in GLOB.tram_signals) signal.end_malfunction() + for(var/obj/machinery/door/window/tram/door as anything in GLOB.tram_doors) + door.end_malfunction() + for(var/obj/structure/industrial_lift/tram as anything in GLOB.lifts) tram.collision_lethality = original_lethality diff --git a/code/modules/industrial_lift/tram/tram_machinery.dm b/code/modules/industrial_lift/tram/tram_machinery.dm index 36bec4ef62d..9071aaf5e0d 100644 --- a/code/modules/industrial_lift/tram/tram_machinery.dm +++ b/code/modules/industrial_lift/tram/tram_machinery.dm @@ -1,5 +1,6 @@ GLOBAL_LIST_EMPTY(tram_signals) GLOBAL_LIST_EMPTY(tram_signs) +GLOBAL_LIST_EMPTY(tram_doors) /obj/machinery/computer/tram_controls name = "tram controls" @@ -13,7 +14,7 @@ GLOBAL_LIST_EMPTY(tram_signs) circuit = /obj/item/circuitboard/computer/tram_controls flags_1 = NODECONSTRUCT_1 | SUPERMATTER_IGNORES_1 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - + light_color = COLOR_BLUE_LIGHT light_range = 0 //we dont want to spam SSlighting with source updates every movement ///Weakref to the tram piece we control @@ -238,15 +239,14 @@ GLOBAL_LIST_EMPTY(tram_signs) plane = GAME_PLANE_UPPER max_integrity = 250 integrity_failure = 0.25 - idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION * 0.05 - active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 0.02 + idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION * 2.4 + active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 0.74 anchored = TRUE density = FALSE // pointless if it only takes 2 seconds to cross but updates every 2 seconds subsystem_type = /datum/controller/subsystem/processing/fastprocess - light_range = 1.5 - light_power = 1 + light_power = 3 light_color = COLOR_VIBRANT_LIME luminosity = 1 @@ -273,17 +273,17 @@ GLOBAL_LIST_EMPTY(tram_signs) name = "crossing signal" desc = "Indicates to pedestrians if it's safe to cross the tracks." icon = 'icons/obj/machines/crossing_signal.dmi' - icon_state = "static-base-left" - base_icon_state = "static-" + icon_state = "static-left-on" + base_icon_state = "static-left-" plane = GAME_PLANE_UPPER max_integrity = 250 integrity_failure = 0.25 - idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION * 0.05 - active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 0.02 + idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION * 2.4 + active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 0.74 anchored = TRUE density = FALSE light_range = 1.5 - light_power = 1 + light_power = 3 light_color = COLOR_VIBRANT_LIME luminosity = 1 @@ -359,6 +359,9 @@ GLOBAL_LIST_EMPTY(tram_signs) * Returns whether we are still processing. */ /obj/machinery/crossing_signal/proc/update_operating() + + use_power(idle_power_usage) + // Emagged crossing signals don't update if(obj_flags & EMAGGED) return @@ -481,6 +484,16 @@ GLOBAL_LIST_EMPTY(tram_signs) . += mutable_appearance(icon, lights_overlay) . += emissive_appearance(icon, "[lights_overlay]e", offset_spokesman = src, alpha = src.alpha) +/obj/machinery/static_signal/power_change() + ..() + if(!is_operational) + icon_state = "[base_icon_state]off" + set_light(l_on = FALSE) + return + + icon_state = "[base_icon_state]on" + set_light(l_on = TRUE) + /// Shifted to NE corner for east side of northern passage. /obj/machinery/crossing_signal/northeast icon_state = "crossing-base-left" @@ -512,25 +525,27 @@ GLOBAL_LIST_EMPTY(tram_signs) pixel_y = 20 /obj/machinery/static_signal/northeast - icon_state = "static-base-left" + icon_state = "static-left-on" pixel_x = -2 pixel_y = -1 /// Shifted to NW corner for west side of northern passage. /obj/machinery/static_signal/northwest - icon_state = "static-base-right" + icon_state = "static-right-on" + base_icon_state = "static-right-" pixel_x = -32 pixel_y = -1 /// Shifted to SE corner for east side of northern passage. /obj/machinery/static_signal/southeast - icon_state = "static-base-left" + icon_state = "static-left-on" pixel_x = -2 pixel_y = 20 /// Shifted to SW corner for west side of northern passage. /obj/machinery/static_signal/southwest - icon_state = "static-base-right" + icon_state = "static-right-on" + base_icon_state = "static-right-" pixel_x = -32 pixel_y = 20 @@ -540,8 +555,8 @@ GLOBAL_LIST_EMPTY(tram_signs) icon = 'icons/obj/machines/tram_sign.dmi' icon_state = "desto_off" base_icon_state = "desto_" - idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION * 0.05 - active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 0.02 + idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION * 1.2 + active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 0.47 anchored = TRUE density = FALSE subsystem_type = /datum/controller/subsystem/processing/fastprocess @@ -660,7 +675,7 @@ GLOBAL_LIST_EMPTY(tram_signs) var/datum/weakref/tram_ref /// Directions the tram door can be forced open in an emergency var/space_dir = null - safe = FALSE + var/malfunctioning = FALSE /obj/machinery/door/window/tram/left icon_state = "left" @@ -679,6 +694,26 @@ GLOBAL_LIST_EMPTY(tram_signs) icon_state = "windoor" base_state = "windoor" +/obj/machinery/door/window/tram/emag_act(mob/living/user) + if(obj_flags & EMAGGED) + return + balloon_alert(user, "disabled motion sensors") + obj_flags |= EMAGGED + +/obj/machinery/door/window/tram/proc/start_malfunction() + if(obj_flags & EMAGGED) + return + + malfunctioning = TRUE + process() + +/obj/machinery/door/window/tram/proc/end_malfunction() + if(obj_flags & EMAGGED) + return + + malfunctioning = FALSE + process() + /obj/machinery/door/window/tram/proc/cycle_doors(command, forced=FALSE) if(command == "open" && icon_state == "[base_state]open") if(!forced) @@ -687,13 +722,6 @@ GLOBAL_LIST_EMPTY(tram_signs) return 1 if(command == "close" && icon_state == base_state) return 1 - if(operating) //doors can still function when emag-disabled - return 0 - if(forced < 2) - if(obj_flags & EMAGGED) - return 0 - if(!operating) //in case of emag - operating = TRUE playsound(src, 'sound/machines/windowdoor.ogg', 100, TRUE) switch(command) if("open") @@ -702,22 +730,25 @@ GLOBAL_LIST_EMPTY(tram_signs) sleep(7 DECISECONDS) set_density(FALSE) air_update_turf(TRUE, FALSE) - if(operating == 1) //emag again - operating = FALSE if("close") + if(obj_flags & EMAGGED | malfunctioning) + flick("[base_state]spark", src) + playsound(src, SFX_SPARKS, 75, TRUE, SHORT_RANGE_SOUND_EXTRARANGE) + sleep(6 DECISECONDS) do_animate("closing") icon_state = base_state sleep(19 DECISECONDS) - for(var/i=1 to 4) - for(var/mob/living/crushee in get_turf(src)) - if(crushee.dir == NORTH && dir == SOUTH) + if(obj_flags & EMAGGED | malfunctioning) + if(malfunctioning && prob(85)) + return + for(var/i=1 to 3) + for(var/mob/living/crushee in get_turf(src)) crush() - if(crushee.dir == SOUTH && dir == NORTH) - crush() - sleep(1 DECISECONDS) + sleep(2 DECISECONDS) air_update_turf(TRUE, TRUE) operating = FALSE set_density(TRUE) + update_freelook_sight() return 1 @@ -740,8 +771,13 @@ GLOBAL_LIST_EMPTY(tram_signs) . = ..() RemoveElement(/datum/element/atmos_sensitive, mapload) INVOKE_ASYNC(src, PROC_REF(open)) + GLOB.tram_doors += src find_tram() +/obj/machinery/door/window/tram/Destroy() + GLOB.tram_doors -= src + return ..() + /obj/machinery/door/window/tram/examine(mob/user) . = ..() . += span_notice("It has labels indicating that it has an emergency mechanism to open from the inside using just your hands in the event of an emergency.") diff --git a/code/modules/industrial_lift/tram/tram_structures.dm b/code/modules/industrial_lift/tram/tram_structures.dm new file mode 100644 index 00000000000..81c80e135ae --- /dev/null +++ b/code/modules/industrial_lift/tram/tram_structures.dm @@ -0,0 +1,22 @@ +/obj/structure/chair/sofa/bench/tram + name = "bench" + desc = "Perfectly designed to be comfortable to sit on, and hellish to sleep on." + icon_state = "bench_middle" + greyscale_config = /datum/greyscale_config/bench_middle + greyscale_colors = "#00CCFF" + +/obj/structure/chair/sofa/bench/tram/left + icon_state = "bench_left" + greyscale_config = /datum/greyscale_config/bench_left + +/obj/structure/chair/sofa/bench/tram/right + icon_state = "bench_right" + greyscale_config = /datum/greyscale_config/bench_right + +/obj/structure/chair/sofa/bench/tram/corner + icon_state = "bench_corner" + greyscale_config = /datum/greyscale_config/bench_corner + +/obj/structure/chair/sofa/bench/tram/solo + icon_state = "bench_solo" + greyscale_config = /datum/greyscale_config/bench_solo diff --git a/icons/obj/doors/tramdoor.dmi b/icons/obj/doors/tramdoor.dmi index d96b2e1fe301d2a3b4ceace24b999384dc7cb246..8ca8c9aee499e3d01d0005962c3a1d7d4a6db32d 100644 GIT binary patch literal 26456 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 literal 27099 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 diff --git a/icons/obj/machines/crossing_signal.dmi b/icons/obj/machines/crossing_signal.dmi index 172f202dd66a9136c76fa25c6d64863eb301374a..4e31966f7e43d78a4489b3f7e342d52db1765666 100644 GIT binary patch literal 3836 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 a<@o2^Yc=sd`GLQ)fTfv@Y2|kw5B>#?q{)H+ literal 3709 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 diff --git a/tgstation.dme b/tgstation.dme index 123e1a43827..925fcb53462 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3423,6 +3423,7 @@ #include "code\modules\industrial_lift\tram\tram_lift_master.dm" #include "code\modules\industrial_lift\tram\tram_machinery.dm" #include "code\modules\industrial_lift\tram\tram_override_objects.dm" +#include "code\modules\industrial_lift\tram\tram_structures.dm" #include "code\modules\industrial_lift\tram\tram_walls.dm" #include "code\modules\industrial_lift\tram\tram_windows.dm" #include "code\modules\instruments\items.dm"