Merge pull request #1342 from dylanstrategie/Meteor

Meteor Fixes
This commit is contained in:
d3athrow
2014-08-23 22:06:20 -05:00
2 changed files with 17 additions and 5 deletions

View File

@@ -20,6 +20,17 @@
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/universal_state/meteor_storm
name = "Meteor Storm"
desc = "Meteors are currently running havoc around this sector. Better get out of here quickly"
decay_rate = 0 // Just to make sure
/datum/universal_state/meteor_storm/OnShuttleCall(var/mob/user)
if(user)
user << "<span class='notice'>You hear an automatic dispatch from Nanostraten. It states that Centcomm is being shielded due to the incoming meteor storm and regular shuttle service has been interrupted.</span>"
return 0
/datum/game_mode/meteor/post_setup()
defer_powernet_rebuild = 2//Might help with the lag
@@ -38,6 +49,7 @@
emergency_shuttle.incall(meteorshuttlemultiplier)
captain_announce("A backup emergency shuttle has been called. It will arrive in [round((emergency_shuttle.timeleft())/60)] minutes.")
world << sound('sound/AI/shuttlecalled.ogg')
SetUniversalState(/datum/universal_state/meteor_storm)
spawn(supplydelay)

View File

@@ -56,7 +56,7 @@
max_i--
if(max_i<=0) return
while(!istype(pickedstart, /turf/space) || pickedstart.loc.name != "Space" || (pickedstart.loc.name == "Emergency Shuttle Transit" && emergency_shuttle.direction != -1))
while(!istype(pickedstart, /turf/space) || pickedstart.loc.name != "Space")
var/obj/effect/meteor/M
switch(rand(1, 100))
@@ -101,7 +101,7 @@
if(A)
A.meteorhit(src)
playsound(get_turf(src), "explosion", 40, 1) //Medium boom
explosion(src.loc, 1, 2, 4, 8) //Medium meteor, medium boom
explosion(src.loc, 1, 2, 4, 8, 0) //Medium meteor, medium boom
qdel(src)
/obj/effect/meteor/ex_act(severity)
@@ -123,7 +123,7 @@
if(A)
A.meteorhit(src)
playsound(get_turf(src), 'sound/effects/meteorimpact.ogg', 30, 1)
explosion(src.loc, -1, 1, 2, 4) //Tiny meteor doesn't cause too much damage
explosion(src.loc, -1, 1, 2, 4, 0) //Tiny meteor doesn't cause too much damage
qdel(src)
@@ -141,11 +141,11 @@
if(!M.stat && !istype(M, /mob/living/silicon/ai)) //bad idea to shake an ai's view
shake_camera(M, 7, 3) //Massive shellshock
if(A)
explosion(src.loc, 4, 6, 8, 8) //You have been visited by the nuclear meteor
explosion(src.loc, 4, 6, 8, 8, 0) //You have been visited by the nuclear meteor
playsound(get_turf(src), "explosion", 100, 1) //Deafening boom, default is 50
qdel(src)
/obj/effect/meteor/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/pickaxe))
qdel(src)
..()
..()