From d95f641895d72d0508fa96b624d6ce020315eb8e Mon Sep 17 00:00:00 2001 From: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com> Date: Tue, 15 Nov 2022 12:53:36 -0600 Subject: [PATCH] Makes the arrival shuttle completely protected from solar flares (#19676) * make arrival shuttle protected from solar flares * Update code/datums/weather/weather_types/solar_flare.dm Co-authored-by: Farie82 Co-authored-by: Farie82 --- code/datums/weather/weather_types/solar_flare.dm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/code/datums/weather/weather_types/solar_flare.dm b/code/datums/weather/weather_types/solar_flare.dm index 8d6b4a1bed6..93aa9426618 100644 --- a/code/datums/weather/weather_types/solar_flare.dm +++ b/code/datums/weather/weather_types/solar_flare.dm @@ -15,10 +15,12 @@ end_duration = 10 // wind_down() does not do anything for this event, so we just trigger end() semi-immediately end_message = null area_type = /area/space // read generate_area_list() as well below - protected_areas = list(/area/shuttle/arrival/station, /area/hallway/secondary/entry) + protected_areas = list(/area/shuttle/arrival/station) target_trait = STATION_LEVEL immunity_type = "burn" var/damage = 4 + /// Areas which are "semi-protected". Mobs inside these areas take reduced burn damage from the solar flare. + var/list/semi_protected_areas = list(/area/hallway/secondary/entry) /datum/weather/solar_flare/generate_area_list() ..() @@ -50,8 +52,11 @@ return FALSE /datum/weather/solar_flare/weather_act(mob/living/L) + var/target_area = get_area(L) + if(target_area in protected_areas) // We do wanna protect new arrivals from horrible death. + return var/adjusted_damage = damage - if(get_area(L) in protected_areas) //we do wanna protect new arrivals from horrible death + if(target_area in semi_protected_areas) adjusted_damage = 1 L.adjustFireLoss(adjusted_damage) L.flash_eyes()