diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 424e94eee07..63b3da76ec6 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -93,6 +93,7 @@ Airlock index -> wire color are { 9, 4, 6, 7, 5, 8, 1, 2, 3 }. normalspeed = 1 var/obj/item/weapon/airlock_electronics/electronics = null var/hasShocked = 0 //Prevents multiple shocks from happening + var/maintAccessReqRevoked = 0 // Used in the procs to revoke maint access/give maint access to all maint doors. Boolean. /obj/machinery/door/airlock/command name = "Airlock" diff --git a/code/modules/events/radiation_storm.dm b/code/modules/events/radiation_storm.dm index 99e2d69e0ea..ad79eed5164 100644 --- a/code/modules/events/radiation_storm.dm +++ b/code/modules/events/radiation_storm.dm @@ -10,10 +10,14 @@ spawn() world << sound('sound/AI/radiation.ogg') command_alert("High levels of radiation detected near the station. Please evacuate into one of the shielded maintenance tunnels.", "Anomaly Alert") + make_maint_all_access() + sleep(600) + command_alert("The station has entered the radiation belt. Please remain in a sheltered area until we have passed the radiation belt.", "Anomaly Alert") + for(var/i = 0, i < 10, i++) for(var/mob/living/carbon/human/H in living_mob_list) var/turf/T = get_turf(H) @@ -23,16 +27,19 @@ continue if(istype(T.loc, /area/maintenance) || istype(T.loc, /area/crew_quarters)) continue + if(istype(H,/mob/living/carbon/human)) - H.apply_effect((rand(2,15)),IRRADIATE,0) + H.apply_effect((rand(15,35)),IRRADIATE,0) if(prob(5)) - H.apply_effect((rand(10,30)),IRRADIATE,0) + H.apply_effect((rand(40,70)),IRRADIATE,0) if (prob(75)) - randmutb(H) + randmutb(H) // Applies bad mutation domutcheck(H,null,1) else - randmutg(H) + randmutg(H) // Applies good mutation domutcheck(H,null,1) + + for(var/mob/living/carbon/monkey/M in living_mob_list) var/turf/T = get_turf(M) if(!T) @@ -43,4 +50,10 @@ sleep(100) - command_alert("The station has passed the radiation belt. Please report to medbay if you experience any unusual symptoms.", "Anomaly Alert") + command_alert("The station has passed the radiation belt. Please report to medbay if you experience any unusual symptoms. Maintenance will lose all access again shortly.", "Anomaly Alert") + + + sleep(600) // Want to give them time to get out of maintenance. + + + revoke_maint_all_access() diff --git a/code/modules/security levels/keycard authentication.dm b/code/modules/security levels/keycard authentication.dm index ae66ba5f5d1..d21ecae33c1 100644 --- a/code/modules/security levels/keycard authentication.dm +++ b/code/modules/security levels/keycard authentication.dm @@ -70,7 +70,8 @@ dat += "Select an event to trigger: