Files
CHOMPStation2/code/game/gamemodes/meteor/meteor.dm
elly1989@rocketmail.com 40c2238c24 Minds part 3
Removed mob/var/original_name. Totally replaced by datum/mind/var/name now.

Fixed round-end reports. They're now sort of follow the same format as each-other. Not sure how the ew format will work out on high-pop servers. if it's too spammy I'll tone it down a bit.

Fixed pais. Their life.dm got unticked. Resolves issue 759

Known issues: 
Borgs keep their human objectives when borged. I'll try playing with the way minds work for silicon mobs whe the freeze is over.
No way to edit minds when they are not attached to a mob. Need some sort of debugging tool.
datum/mind/var/mob/living/original isn't realy used for much. I could probably replace it with something more useful.
Changeling stuff is messy. The changeling object should be referenced by the mind not the mob (or something)

Part 4 on hold will try to address some of these known issues. Taking a break from minds to fix some issues on the tracker now (like lighting)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4355 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-09 23:41:01 +00:00

65 lines
2.0 KiB
Plaintext

/datum/game_mode/meteor
name = "meteor"
config_tag = "meteor"
var/const/waittime_l = 600 //lower bound on time before intercept arrives (in tenths of seconds)
var/const/waittime_h = 1800 //upper bound on time before intercept arrives (in tenths of seconds)
var/const/meteordelay = 2000
var/nometeors = 1
required_players = 0
uplink_welcome = "EVIL METEOR Uplink Console:"
uplink_uses = 10
/datum/game_mode/meteor/announce()
world << "<B>The current game mode is - Meteor!</B>"
world << "<B>The space station has been stuck in a major meteor shower. You must escape from the station or at least live.</B>"
/datum/game_mode/meteor/post_setup()
defer_powernet_rebuild = 2//Might help with the lag
spawn (rand(waittime_l, waittime_h))
send_intercept()
spawn(meteordelay)
nometeors = 0
..()
/datum/game_mode/meteor/process()
if(nometeors) return
/*if(prob(80))
spawn()
dust_swarm("norm")
else
spawn()
dust_swarm("strong")*/
spawn() spawn_meteors(6)
/datum/game_mode/meteor/declare_completion()
var/text
var/survivors = 0
for(var/mob/living/player in player_list)
if(player.stat != DEAD)
var/turf/location = get_turf(player.loc)
if(!location) continue
switch(location.loc.type)
if( /area/shuttle/escape/centcom )
text += "<br><b><font size=2>[player.real_name] escaped on the emergency shuttle</font></b>"
if( /area/shuttle/escape_pod1/centcom, /area/shuttle/escape_pod2/centcom, /area/shuttle/escape_pod3/centcom, /area/shuttle/escape_pod5/centcom )
text += "<br><font size=2>[player.real_name] escaped in a life pod.</font>"
else
text += "<br><font size=1>[player.real_name] survived but is stranded without any hope of rescue.</font>"
survivors++
if(survivors)
world << "\blue <B>The following survived the meteor storm</B>:[text]"
else
world << "\blue <B>Nobody survived the meteor storm!</B>"
feedback_set_details("round_end_result","end - evacuation")
feedback_set("round_end_result",survivors)
..()
return 1