/tg/ Station 13 - Modules - Types — Var Details - Proc Details

self_destruct_sequence

Runs for as long as the station self-destruct terminal is counting down. Owns the announcement, the point of no return, and the secondary detonations after it. The detonation itself belongs to the terminal's own timer, which is pinned to SELF_DESTRUCT_DURATION.

Vars

announcement_channelReserved sound channel, so an abort can silence the announcement mid-sentence.
past_no_returnTRUE once the announcement has stated that cancellation is off the table.
reddened_areasStation areas we put into their fire alarm state, so an abort can put them back.
servedClients already hearing the announcement, so we never restart it under one that has it.
start_timeworld.time the sequence began. Every other time here is an offset from this.
terminalThe terminal counting down. We do not outlive it.

Procs

broadcast_announcementSends the announcement out. Defaults to everyone in the round, which is what the first broadcast wants.
build_announcementThe announcement, seeked to however far into the sequence we already are.
detonateFires the terminal one cinematic intro before the announcement ends, so the 3-2-1 counts onto zero and the blast lands on the end of the track instead of after it.
elapsedDeciseconds since the sequence began.
on_client_goneA client that leaves takes its sound channels with it, so let a reconnect be served fresh.
on_player_loginDrops anyone entering the round mid-sequence in at the right point in the track.
on_terminal_deletedNo terminal means no bomb left to detonate.
pass_point_of_no_returnThe announcement has just said cancellation has expired, so make that true.
pick_blast_siteWeighted towards somebody who will actually witness it, since a blast nobody saw may as well not have happened.
pick_site_near_crewA turf a room or two from somebody still aboard. Null if there is nobody left to play to.
quiet_blastAn explosion sound built to lose. Nothing else sets priority, so these sit below every other sound.
redden_lightingFlips every station area into its fire alarm state, which is what turns the lights red.
schedule_next_blastQueues the next secondary detonation, tightening the interval as the terminal counts down.
secondary_detonationOne of the station's own systems letting go. Light impact only, so it hurts without reliably killing.
silence_announcementCuts the announcement off everywhere.

Var Details

announcement_channel

Reserved sound channel, so an abort can silence the announcement mid-sentence.

past_no_return

TRUE once the announcement has stated that cancellation is off the table.

reddened_areas

Station areas we put into their fire alarm state, so an abort can put them back.

served

Clients already hearing the announcement, so we never restart it under one that has it.

start_time

world.time the sequence began. Every other time here is an offset from this.

terminal

The terminal counting down. We do not outlive it.

Proc Details

broadcast_announcement

Sends the announcement out. Defaults to everyone in the round, which is what the first broadcast wants.

Skips anyone already hearing it. Sound channels belong to the client rather than the mob, so changing bodies does not interrupt playback - re-sending would only re-seek the track, which is audible, and dying to a secondary detonation is a very common way to change bodies in here.

build_announcement

The announcement, seeked to however far into the sequence we already are.

detonate

Fires the terminal one cinematic intro before the announcement ends, so the 3-2-1 counts onto zero and the blast lands on the end of the track instead of after it.

elapsed

Deciseconds since the sequence began.

on_client_gone

A client that leaves takes its sound channels with it, so let a reconnect be served fresh.

on_player_login

Drops anyone entering the round mid-sequence in at the right point in the track.

on_terminal_deleted

No terminal means no bomb left to detonate.

pass_point_of_no_return

The announcement has just said cancellation has expired, so make that true.

pick_blast_site

Weighted towards somebody who will actually witness it, since a blast nobody saw may as well not have happened.

pick_site_near_crew

A turf a room or two from somebody still aboard. Null if there is nobody left to play to.

quiet_blast

An explosion sound built to lose. Nothing else sets priority, so these sit below every other sound.

redden_lighting

Flips every station area into its fire alarm state, which is what turns the lights red.

schedule_next_blast

Queues the next secondary detonation, tightening the interval as the terminal counts down.

secondary_detonation

One of the station's own systems letting go. Light impact only, so it hurts without reliably killing.

silence_announcement

Cuts the announcement off everywhere.