/datum/game_mode/meteor name = "meteor" config_tag = "meteor" var/meteordelay = 2000 var/nometeors = 0 var/rampupdelta = 5 required_players = 0 announce_span = "danger" announce_text = "A major meteor shower is bombarding the station! The crew needs to evacuate or survive the onslaught." /datum/game_mode/meteor/process() if(nometeors || meteordelay > world.time - SSticker.round_start_time) return var/list/wavetype = GLOB.meteors_normal var/meteorminutes = (world.time - SSticker.round_start_time - meteordelay) / 10 / 60 if (prob(meteorminutes)) wavetype = GLOB.meteors_threatening if (prob(meteorminutes/2)) wavetype = GLOB.meteors_catastrophic var/ramp_up_final = Clamp(round(meteorminutes/rampupdelta), 1, 10) spawn_meteors(ramp_up_final, wavetype) /datum/game_mode/meteor/declare_completion() var/text var/survivors = 0 for(var/mob/living/player in GLOB.player_list) if(player.stat != DEAD) ++survivors if(player.onCentcom()) text += "
[player.real_name] escaped to the safety of Centcom." else if(player.onSyndieBase()) text += "
[player.real_name] escaped to the (relative) safety of Syndicate Space." else text += "
[player.real_name] survived but is stranded without any hope of rescue." if(survivors) to_chat(world, "The following survived the meteor storm:[text]") else to_chat(world, "Nobody survived the meteor storm!") feedback_set_details("round_end_result","end - evacuation") feedback_set("round_end_result",survivors) ..() return 1