diff --git a/code/modules/events/aurora_caelus.dm b/code/modules/events/aurora_caelus.dm new file mode 100644 index 0000000000..7208f40db4 --- /dev/null +++ b/code/modules/events/aurora_caelus.dm @@ -0,0 +1,36 @@ +/datum/event/aurora_caelus + has_skybox_image = TRUE + announceWhen = 1 + startWhen = 60 + endWhen = 126 + +/datum/event/aurora_caelus/announce() + command_announcement.Announce("[station_name()]: A harmless cloud of ions is approaching your station, and will exhaust their energy battering the hull. \ + Nanotrasen has approved a short break for all employees to relax and observe this very rare event. \ + During this time, starlight will be bright but gentle, shifting between quiet green and blue colors. \ + Any staff who would like to view these lights for themselves may proceed to the area nearest to them with viewing ports to open space. \ + You will have approximately two minutes before the ions begin to reach the hull. \ + We hope you enjoy the lights.", "Nanotrasen Meteorology Division", new_sound = 'sound/misc/notice2.ogg') + +/datum/event/aurora_caelus/start() + affecting_z -= global.using_map.sealed_levels // Space levels only please! + for(var/mob/M in player_list) + if(M.z in affecting_z) + M.playsound_local(null, 'sound/ambience/space/aurora_caelus.ogg', 40, FALSE, pressure_affected = FALSE) + ..() + +/datum/event/aurora_caelus/get_skybox_image() + var/image/res = image('icons/skybox/caelus.dmi', "aurora") + res.appearance_flags = RESET_COLOR + res.blend_mode = BLEND_ADD + return res + +/datum/event/aurora_caelus/end() + command_announcement.Announce("The Aurora Caelus event is now ending. Starlight conditions have returned to normal, and the cloud has dissipated. \ +Please return to your workplace and continue work as normal. \ +Have a pleasant shift, [station_name()], and thank you for watching with us.", +"Nanotrasen Meteorology Division", new_sound = 'sound/misc/notice2.ogg') + ..() + +/datum/event/aurora_caelus/overmap/announce() + return \ No newline at end of file diff --git a/code/modules/events/event_container.dm b/code/modules/events/event_container.dm index 458fe9fb56..5df114c8f4 100644 --- a/code/modules/events/event_container.dm +++ b/code/modules/events/event_container.dm @@ -145,6 +145,7 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lore News", /datum/event/lore_news, 400), new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Vermin Infestation",/datum/event/infestation, 100, list(ASSIGNMENT_JANITOR = 100)), new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Wallrot", /datum/event/wallrot, 0, list(ASSIGNMENT_ENGINEER = 30, ASSIGNMENT_GARDENER = 50)), + new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Aurora Caelus", /datum/event/aurora_caelus, 2, list(), 1), ) /datum/event_container/moderate diff --git a/icons/skybox/caelus.dmi b/icons/skybox/caelus.dmi new file mode 100644 index 0000000000..91fd251bdc Binary files /dev/null and b/icons/skybox/caelus.dmi differ diff --git a/polaris.dme b/polaris.dme index aea3e1f5df..3661f64e79 100644 --- a/polaris.dme +++ b/polaris.dme @@ -1690,6 +1690,7 @@ #include "code\modules\error_handler\~defines.dm" #include "code\modules\events\apc_damage.dm" #include "code\modules\events\atmos_leak.dm" +#include "code\modules\events\aurora_caelus.dm" #include "code\modules\events\blob.dm" #include "code\modules\events\brand_intelligence.dm" #include "code\modules\events\camera_damage.dm" diff --git a/sound/ambience/space/aurora_caelus.ogg b/sound/ambience/space/aurora_caelus.ogg new file mode 100644 index 0000000000..655e47fc3b Binary files /dev/null and b/sound/ambience/space/aurora_caelus.ogg differ