Merge pull request #3052 from Anewbe/emp_things

Reworks empulse and emp_act
This commit is contained in:
Neerti
2017-03-14 21:39:01 -04:00
committed by GitHub
42 changed files with 274 additions and 83 deletions
+1 -1
View File
@@ -998,7 +998,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
M.apply_damage( rand(30,60) , BURN)
message += "You feel a searing heat! Your [P] is burning!"
if(i>=20 && i<=25) //EMP
empulse(P.loc, 3, 6, 1)
empulse(P.loc, 1, 2, 4, 6, 1)
message += "Your [P] emits a wave of electromagnetic energy!"
if(i>=25 && i<=40) //Smoke
var/datum/effect/effect/system/smoke_spread/chem/S = new /datum/effect/effect/system/smoke_spread/chem
@@ -3,12 +3,14 @@
icon_state = "emp"
item_state = "empgrenade"
origin_tech = list(TECH_MATERIAL = 2, TECH_MAGNET = 3)
var/emp_heavy = 4
var/emp_light = 10
var/emp_heavy = 2
var/emp_med = 4
var/emp_light = 7
var/emp_long = 10
prime()
..()
if(empulse(src, emp_heavy, emp_light))
if(empulse(src, emp_heavy, emp_med, emp_light, emp_long))
qdel(src)
return
@@ -18,4 +20,6 @@
icon_state = "lyemp"
origin_tech = list(TECH_MATERIAL = 2, TECH_MAGNET = 3)
emp_heavy = 1
emp_light = 4
emp_med = 2
emp_light = 3
emp_long = 4
@@ -101,6 +101,10 @@ Implant Specifics:<BR>"}
meltdown()
if(2)
delay = rand(5*60*10,15*60*10) //from 5 to 15 minutes of free time
if(3)
delay = rand(2*60*10,5*60*10) //from 2 to 5 minutes of free time
if(4)
delay = rand(0.5*60*10,1*60*10) //from .5 to 1 minutes of free time
spawn(delay)
malfunction--
@@ -227,10 +231,22 @@ Implant Specifics:<BR>"}
return
malfunction = MALFUNCTION_TEMPORARY
switch (severity)
if (2.0) //Weak EMP will make implant tear limbs off.
if (4) //Weak EMP will make implant tear limbs off.
if (prob(25))
small_boom()
if (3) //Weak EMP will make implant tear limbs off.
if (prob(50))
small_boom()
if (1.0) //strong EMP will melt implant either making it go off, or disarming it
if (2) //strong EMP will melt implant either making it go off, or disarming it
if (prob(70))
if (prob(75))
small_boom()
else
if (prob(13))
activate() //chance of bye bye
else
meltdown() //chance of implant disarming
if (1) //strong EMP will melt implant either making it go off, or disarming it
if (prob(70))
if (prob(50))
small_boom()
@@ -320,7 +336,13 @@ the implant may become unstable and either pre-maturely inject the subject or si
if(prob(60))
activate(20)
if(2)
if(prob(30))
if(prob(40))
activate(20)
if(3)
if(prob(40))
activate(5)
if(4)
if(prob(20))
activate(5)
spawn(20)