Ports Bay's EMP meteor

This commit is contained in:
Anewbe
2017-01-14 19:28:18 -06:00
parent 93a630e2e8
commit e848c8e8fc
2 changed files with 30 additions and 13 deletions

View File

@@ -5,11 +5,11 @@
/var/list/meteors_normal = list(/obj/effect/meteor/dust=3, /obj/effect/meteor/medium=8, /obj/effect/meteor/big=3, \
/obj/effect/meteor/flaming=1, /obj/effect/meteor/irradiated=3) //for normal meteor event
/var/list/meteors_threatening = list(/obj/effect/meteor/medium=4, /obj/effect/meteor/big=8, \
/obj/effect/meteor/flaming=3, /obj/effect/meteor/irradiated=3) //for threatening meteor event
/var/list/meteors_threatening = list(/obj/effect/meteor/medium=5, /obj/effect/meteor/big=10, \
/obj/effect/meteor/flaming=3, /obj/effect/meteor/irradiated=3, /obj/effect/meteor/emp=3) //for threatening meteor event
/var/list/meteors_catastrophic = list(/obj/effect/meteor/medium=5, /obj/effect/meteor/big=75, \
/obj/effect/meteor/flaming=10, /obj/effect/meteor/irradiated=10, /obj/effect/meteor/tunguska = 1) //for catastrophic meteor event
/obj/effect/meteor/flaming=10, /obj/effect/meteor/irradiated=10, /obj/effect/meteor/emp=10, /obj/effect/meteor/tunguska = 1) //for catastrophic meteor event
/var/list/meteors_dust = list(/obj/effect/meteor/dust) //for space dust event
@@ -38,7 +38,6 @@
var/Me = pickweight(meteortypes)
var/obj/effect/meteor/M = new Me(pickedstart)
M.dest = pickedgoal
M.z_original = startLevel
spawn(0)
walk_towards(M, M.dest, 1)
return
@@ -97,11 +96,16 @@
var/dest
pass_flags = PASSTABLE
var/heavy = 0
var/z_original = 1
var/z_original
var/meteordrop = /obj/item/weapon/ore/iron
var/dropamt = 2
/obj/effect/meteor/New()
..()
z_original = z
/obj/effect/meteor/Move()
if(z != z_original || loc == dest)
qdel(src)
@@ -151,7 +155,7 @@
hits--
if(hits <= 0)
make_debris()
meteor_effect(heavy)
meteor_effect()
qdel(src)
/obj/effect/meteor/ex_act()
@@ -168,8 +172,8 @@
var/obj/item/O = new meteordrop(get_turf(src))
O.throw_at(dest, 5, 10)
/obj/effect/meteor/proc/meteor_effect(var/effect=1)
if(effect)
/obj/effect/meteor/proc/meteor_effect()
if(heavy)
for(var/mob/M in player_list)
var/turf/T = get_turf(M)
if(!T || T.z != src.z)
@@ -197,7 +201,7 @@
dropamt = 3
/obj/effect/meteor/medium/meteor_effect()
..(heavy)
..()
explosion(src.loc, 0, 1, 2, 3, 0)
//Large-sized
@@ -209,7 +213,7 @@
dropamt = 4
/obj/effect/meteor/big/meteor_effect()
..(heavy)
..()
explosion(src.loc, 1, 2, 3, 4, 0)
//Flaming meteor
@@ -221,7 +225,7 @@
meteordrop = /obj/item/weapon/ore/phoron
/obj/effect/meteor/flaming/meteor_effect()
..(heavy)
..()
explosion(src.loc, 1, 2, 3, 4, 0, 0, 5)
//Radiation meteor
@@ -233,12 +237,25 @@
/obj/effect/meteor/irradiated/meteor_effect()
..(heavy)
..()
explosion(src.loc, 0, 0, 4, 3, 0)
new /obj/effect/decal/cleanable/greenglow(get_turf(src))
for(var/mob/living/L in view(5, src))
L.apply_effect(40, IRRADIATE)
/obj/effect/meteor/emp
name = "conducting meteor"
icon_state = "glowing_blue"
desc = "Hide your floppies!"
meteordrop = /obj/item/weapon/ore/osmium
dropamt = 3
/obj/effect/meteor/emp/meteor_effect()
..()
// Best case scenario: Comparable to a low-yield EMP grenade.
// Worst case scenario: Comparable to a standard yield EMP grenade.
empulse(src, rand(2, 4), rand(4, 10))
//Station buster Tunguska
/obj/effect/meteor/tunguska
name = "tunguska meteor"
@@ -250,7 +267,7 @@
meteordrop = /obj/item/weapon/ore/phoron
/obj/effect/meteor/tunguska/meteor_effect()
..(heavy)
..()
explosion(src.loc, 5, 10, 15, 20, 0)
/obj/effect/meteor/tunguska/Bump()

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB