Files
Polaris/code/game/gamemodes/technomancer/spells/projectile/overload.dm
Neerti 0d140349b3 Technomancer Bug Fixes & Tweaks
Cores can now be locked and unlocked by a verb.  Locked cores cannot be removed by anyone.  Cores automatically unlock if the wearer dies or otherwise stops existing for some reason.
Healing spells now induce a flat instability cost on the healer instead of it being split between healer and healed.  The amount healed is greatly increased if used on someone besides the healer.
Mend Organs is now called Great Mend Wounds, and now heals broken bones, IB, eye damage, and blood loss in addition to internal organs.
Radiating instability (the purple glow) now gives a warning to people afflicted.
Instability discounts should start applying correctly for specific cores.
Instability now affects all living mobs and not just humans.  This includes borgs and simple animals.
Phase shift now adds ongoing instability while hiding inside the rift.
Projectile spells should be logged now.
Wards last forever, and should not die in vacuum now.
Restoration aura is now green colored and not blue.
Simple mobs and cyborgs are now harmed by lightning.
2016-10-04 21:09:15 -04:00

45 lines
1.5 KiB
Plaintext

/datum/technomancer/spell/overload
name = "Overload"
desc = "Fires a bolt of highly unstable energy, that does damaged equal to 1.5% of the technomancer's current reserve of energy. \
This energy pierces all known armor."
cost = 100
obj_path = /obj/item/weapon/spell/projectile/overload
category = OFFENSIVE_SPELLS
/obj/item/weapon/spell/projectile/overload
name = "overload"
icon_state = "overload"
desc = "Hope your Core's full."
cast_methods = CAST_RANGED
aspect = ASPECT_UNSTABLE
spell_projectile = /obj/item/projectile/overload
energy_cost_per_shot = 0 // Handled later
instability_per_shot = 12
cooldown = 10
pre_shot_delay = 4
fire_sound = 'sound/effects/supermatter.ogg'
/obj/item/projectile/overload
name = "overloaded bolt"
icon_state = "bluespace"
// nodamage = 1
damage_type = BURN
armor_penetration = 100
/obj/item/weapon/spell/projectile/overload/on_ranged_cast(atom/hit_atom, mob/living/user)
energy_cost_per_shot = round(core.max_energy * 0.10)
var/energy_before_firing = core.energy
if(set_up(hit_atom, user))
var/obj/item/projectile/overload/P = new spell_projectile(get_turf(user))
P.launch(hit_atom)
if(check_for_scepter())
P.damage = round(energy_before_firing * 0.004) // 4% of their current energy pool.
else
P.damage = round(energy_before_firing * 0.003) // 3% of their current energy pool.
adjust_instability(instability_per_shot)
return 1
// muzzle_type = /obj/effect/projectile/lightning/muzzle
// tracer_type = /obj/effect/projectile/lightning/tracer
// impact_type = /obj/effect/projectile/lightning/impact