Files
siliconsGitHubVM_USER <VM_USER>silicons
fd5e67ff71 runtime maploading: fifth time is the charm (#5524)
Co-authored-by: VM_USER <VM_USER>
Co-authored-by: silicons <no@you.cat>
2023-06-15 19:21:14 +02:00

37 lines
1.2 KiB
Plaintext

/datum/gm_action/gravity
name = "gravity failure"
departments = list(DEPARTMENT_EVERYONE)
length = 600
var/list/zLevels
/datum/gm_action/gravity/set_up()
length = rand(length, length * 5)
// Setup which levels we will disrupt gravit on.
zLevels = (LEGACY_MAP_DATUM).station_levels.Copy()
for(var/datum/planet/P in SSplanets.planets)
zLevels -= P.expected_z_levels
/datum/gm_action/gravity/announce()
command_announcement.Announce("Feedback surge detected in mass-distributions systems. Artificial gravity has been disabled whilst the system \
reinitializes. Please stand by while the gravity system reinitializes.", "Gravity Failure")
/datum/gm_action/gravity/start()
..()
gravity_is_on = 0
for(var/area/A in GLOB.sortedAreas)
if(A.z in zLevels)
A.gravitychange(gravity_is_on, A)
/datum/gm_action/gravity/end()
if(!gravity_is_on)
gravity_is_on = 1
for(var/area/A in GLOB.sortedAreas)
if(A.z in zLevels)
A.gravitychange(gravity_is_on, A)
command_announcement.Announce("Gravity generators are again functioning within normal parameters. Sorry for any inconvenience.", "Gravity Restored")
/datum/gm_action/gravity/get_weight()
return 30 + (metric.count_people_in_department(DEPARTMENT_EVERYONE) * 20)