Add Aurora Caelus Event!

Adds the Aurora Caelus, a rare event that occurs on the station space z-levels~!

During this event a .ogg will play to all clients, and you will see the outside appear almost like a storm (this is a placeholder, I need assistance from spriters to make something like an aurora or help edit the ion-storm placeholder I'm using) no longer placeholder! - consider it a fun little break and a rare/silly event.

The event announces as soon as it fires, and assuming time dilation isn't horrible, starts 10 seconds after (5 "ticks" of the event subsystem being fired by the MC).

Current event weight (frequency) can be tweaked according to admin liking, and it's currently a MUNDANE level event. This can be changed to MODERATE or otherwise as determined by admins, or given a higher weight - during testing, stuff like PDA spam or news or etc very often went over it and it took giving it a lot of weight for it to fire - but it is supposed to be a "rare" cosmic thing, not something that happens every shift.

This also resets the commit history for one clean commit.
This commit is contained in:
Rykka
2020-06-05 22:52:28 -04:00
parent 499b9b51f4
commit ad7ad8dbf5
7 changed files with 38 additions and 0 deletions

View File

@@ -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/AI/aurora.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/AI/aurora_end.ogg')
..()
/datum/event/aurora_caelus/overmap/announce()
return

View File

@@ -48,6 +48,7 @@
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Vermin Infestation",/datum/event/infestation, 100, list(ASSIGNMENT_JANITOR = 100), 1),
// Rot only weakens walls, not destroy them
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Wallrot", /datum/event/wallrot, 0, list(ASSIGNMENT_ENGINEER = 30, ASSIGNMENT_GARDENER = 50), 1),
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Aurora Caelus", /datum/event/aurora_caelus, 5, list(ASSIGNMENT_ANY = 2), 1),
)
add_disabled_events(list(
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Ian Storm", /datum/event/ianstorm, 1, list(), 1),

BIN
icons/skybox/caelus.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 MiB

BIN
sound/AI/aurora.ogg Normal file

Binary file not shown.

BIN
sound/AI/aurora_end.ogg Normal file

Binary file not shown.

Binary file not shown.

View File

@@ -1977,6 +1977,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"