mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Fixes borg shocks
This commit is contained in:
@@ -166,7 +166,7 @@
|
|||||||
src << "<span class='warning'>We require more chemicals to electrocute [S]!</span>"
|
src << "<span class='warning'>We require more chemicals to electrocute [S]!</span>"
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
S.electrocute_act(60 * siemens,src,1.0) //If only they had surge protectors.
|
S.electrocute_act(60,src,0.75) //If only they had surge protectors.
|
||||||
if(siemens)
|
if(siemens)
|
||||||
visible_message("<span class='warning'>Arcs of electricity strike [S]!</span>",
|
visible_message("<span class='warning'>Arcs of electricity strike [S]!</span>",
|
||||||
"<span class='warning'>Our hand channels raw electricity into [S]</span>",
|
"<span class='warning'>Our hand channels raw electricity into [S]</span>",
|
||||||
|
|||||||
@@ -115,7 +115,7 @@
|
|||||||
rng = rand(0,4)
|
rng = rand(0,4)
|
||||||
switch(rng)
|
switch(rng)
|
||||||
if(0)
|
if(0)
|
||||||
electrocute_act(instability * 0.3, "unstable energies")
|
electrocute_act(instability * 0.3, "unstable energies", 0.75)
|
||||||
if(1)
|
if(1)
|
||||||
adjustFireLoss(instability * 0.15) //7.5 burn @ 50 instability
|
adjustFireLoss(instability * 0.15) //7.5 burn @ 50 instability
|
||||||
src << "<span class='danger'>Your chassis alerts you to overheating from an unknown external force!</span>"
|
src << "<span class='danger'>Your chassis alerts you to overheating from an unknown external force!</span>"
|
||||||
@@ -132,7 +132,7 @@
|
|||||||
rng = rand(0,3)
|
rng = rand(0,3)
|
||||||
switch(rng)
|
switch(rng)
|
||||||
if(0)
|
if(0)
|
||||||
electrocute_act(instability * 0.5, "extremely unstable energies")
|
electrocute_act(instability * 0.5, "extremely unstable energies", 0.75)
|
||||||
if(1)
|
if(1)
|
||||||
emp_act(2)
|
emp_act(2)
|
||||||
if(2)
|
if(2)
|
||||||
@@ -146,7 +146,7 @@
|
|||||||
rng = rand(0,4)
|
rng = rand(0,4)
|
||||||
switch(rng)
|
switch(rng)
|
||||||
if(0)
|
if(0)
|
||||||
electrocute_act(instability, "extremely unstable energies")
|
electrocute_act(instability, "extremely unstable energies", 0.75)
|
||||||
if(1)
|
if(1)
|
||||||
emp_act(1)
|
emp_act(1)
|
||||||
if(2)
|
if(2)
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
||||||
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
||||||
else
|
else
|
||||||
L.electrocute_act(power, src, 1.0, BP_TORSO)
|
L.electrocute_act(power, src, 0.75, BP_TORSO)
|
||||||
|
|
||||||
|
|
||||||
adjust_instability(3)
|
adjust_instability(3)
|
||||||
@@ -195,7 +195,7 @@
|
|||||||
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
||||||
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
||||||
else
|
else
|
||||||
target_mob.electrocute_act(power, src, 1.0, BP_TORSO)
|
target_mob.electrocute_act(power, src, 0.75, BP_TORSO)
|
||||||
return 0 // Since this is a continous beam, it needs to keep flying until it hits the Technomancer.
|
return 0 // Since this is a continous beam, it needs to keep flying until it hits the Technomancer.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
||||||
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
||||||
else
|
else
|
||||||
target_mob.electrocute_act(power, src, 1.0, BP_TORSO)
|
target_mob.electrocute_act(power, src, 0.75, BP_TORSO)
|
||||||
hit_mobs |= target_mob
|
hit_mobs |= target_mob
|
||||||
|
|
||||||
//Each bounce reduces the damage of the bolt.
|
//Each bounce reduces the damage of the bolt.
|
||||||
|
|||||||
@@ -38,5 +38,5 @@
|
|||||||
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
var/obj/item/organ/external/affected = H.get_organ(check_zone(BP_TORSO))
|
||||||
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
H.electrocute_act(power, src, H.get_siemens_coefficient_organ(affected), affected)
|
||||||
else
|
else
|
||||||
target_mob.electrocute_act(power, src, 1.0, BP_TORSO)
|
target_mob.electrocute_act(power, src, 0.75, BP_TORSO)
|
||||||
return 1
|
return 1
|
||||||
@@ -75,13 +75,13 @@
|
|||||||
/mob/living/silicon/stun_effect_act(var/stun_amount, var/agony_amount)
|
/mob/living/silicon/stun_effect_act(var/stun_amount, var/agony_amount)
|
||||||
return //immune
|
return //immune
|
||||||
|
|
||||||
/mob/living/silicon/electrocute_act(var/shock_damage, var/obj/source, var/siemens_coeff = 1.0)
|
/mob/living/silicon/electrocute_act(var/shock_damage, var/obj/source, var/siemens_coeff = 0.0)
|
||||||
if(shock_damage > 0)
|
if(shock_damage > 0)
|
||||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||||
s.set_up(5, 1, loc)
|
s.set_up(5, 1, loc)
|
||||||
s.start()
|
s.start()
|
||||||
|
|
||||||
shock_damage *= 0.75 //take reduced damage
|
shock_damage *= siemens_coeff //take reduced damage
|
||||||
take_overall_damage(0, shock_damage)
|
take_overall_damage(0, shock_damage)
|
||||||
visible_message("<span class='warning'>[src] was shocked by \the [source]!</span>", \
|
visible_message("<span class='warning'>[src] was shocked by \the [source]!</span>", \
|
||||||
"<span class='danger'>Energy pulse detected, system damaged!</span>", \
|
"<span class='danger'>Energy pulse detected, system damaged!</span>", \
|
||||||
|
|||||||
Reference in New Issue
Block a user