mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2026-07-20 12:42:43 +01:00
f473ed9717
* Sweating Reagents * Hot & Cold * Faraday * Electric Snakebite * Blast shielding * Knock out all the other trivial/already-existing-artifact-effect types * Extinguisher * 2fort * Sprinting * This artifact qualifies as a member of the police. * Noxious gases * Necromancy! * Necromancy 2! * Delete blob chunk
38 lines
980 B
Plaintext
38 lines
980 B
Plaintext
/datum/artifact_effect/extreme/tesla
|
|
name = "tesla"
|
|
effect_color = "#f5f231"
|
|
effect_type = EFFECT_ELECTRO
|
|
effect_state = "sparks"
|
|
|
|
|
|
/datum/artifact_effect/extreme/tesla/New()
|
|
. = ..()
|
|
effect = pick(EFFECT_TOUCH, EFFECT_PULSE)
|
|
|
|
|
|
/datum/artifact_effect/extreme/tesla/proc/arc(var/list/exempt = list())
|
|
var/atom/A = get_master_holder()
|
|
A.visible_message("<span class='danger'>\The [get_master_holder()] discharges energy wildly in all directions!</span>")
|
|
for(var/mob/living/L in oview(world.view, get_turf(get_master_holder())))
|
|
if(chargelevel < 3)
|
|
break
|
|
|
|
if(L in exempt)
|
|
continue
|
|
|
|
var/obj/item/projectile/P = new /obj/item/projectile/beam/shock(get_turf(get_master_holder()))
|
|
P.launch_projectile(L, BP_TORSO, get_master_holder())
|
|
chargelevel -= 3
|
|
|
|
|
|
/datum/artifact_effect/extreme/tesla/DoEffectTouch(mob/living/user)
|
|
if(chargelevel < 3)
|
|
return
|
|
arc(list(user))
|
|
|
|
|
|
/datum/artifact_effect/extreme/tesla/DoEffectPulse()
|
|
if(chargelevel < 3)
|
|
return
|
|
arc()
|