adds domain expansion

- adds domain expansion, final spell for void heretics
- makes clap1 into an emote
- makes cleave a little more enticing with two guaranteed critical wounds and brute damage
- buffs void mark
This commit is contained in:
kiwedespars
2021-03-11 21:26:58 -08:00
parent e14741d248
commit e145bdafe8
10 changed files with 243 additions and 12 deletions
@@ -250,7 +250,8 @@
var/obj/item/bodypart/bodypart = pick(target.bodyparts)
var/datum/wound/slash/critical/crit_wound = new
crit_wound.apply_wound(bodypart)
target.adjustFireLoss(20)
crit_wound.apply_wound(bodypart)
target.adjustBruteLoss(20)
new /obj/effect/temp_visual/cleave(target.drop_location())
/obj/effect/proc_holder/spell/pointed/cleave/can_target(atom/target, mob/user, silent)
@@ -897,7 +898,7 @@
/obj/effect/proc_holder/spell/pointed/boogie_woogie/cast(list/targets, mob/user)
. = ..()
var/target = targets[1]
playsound(user, 'sound/magic/voidclap.ogg', 75, TRUE)
user.emote("clap1")
playsound(user, 'sound/magic/voidblink.ogg', 75, TRUE)
var/turf/targeted_turf = get_turf(target)
var/turf/user_turf = get_turf(user)
@@ -936,3 +937,31 @@
/obj/effect/proc_holder/spell/aoe_turf/repulse/eldritch/cast(list/targets,mob/user = usr)
user.emote("snap")
..(targets, user, 60)
/obj/effect/proc_holder/spell/aoe_turf/domain_expansion
name = "Infinite Void"
desc = "Create a domain that will slow down and mark all opponents with a void mark."
charge_max = 1200
clothes_req = FALSE
invocation = "RYO'IKI TEN'KAI"
invocation_type = "none"
range = 0
action_icon_state = "time"
action_background_icon_state = "bg_ecult"
var/timestop_range = 7
var/timestop_duration = 200
var/static/mutable_appearance/halo
var/sound/Snd // shamelessly ripped from lightning.
/obj/effect/proc_holder/spell/aoe_turf/domain_expansion/cast(list/targets, mob/user = usr)
user.add_movespeed_modifier(/datum/movespeed_modifier/status_effect/domain)
Snd = new/sound('sound/magic/clockwork/ratvar_attack.ogg',channel = 7)
halo = halo || mutable_appearance('icons/effects/effects.dmi', "shield-flash", EFFECTS_LAYER)
user.add_overlay(halo)
playsound(get_turf(user), Snd, 50, 0)
if(do_mob(user,user,50,1))
playsound(user, 'sound/magic/domain.ogg', 125, TRUE)
user.say("DOM'ENO ISPLET'IMAS")
user.emote("clap1")
user.remove_movespeed_modifier(/datum/movespeed_modifier/status_effect/domain)
new /obj/effect/domain_expansion(get_turf(user), timestop_range, timestop_duration, list(user))
@@ -127,8 +127,6 @@
/datum/eldritch_knowledge/void_blade_upgrade/on_ranged_attack_eldritch_blade(atom/target, mob/user, click_parameters)
. = ..()
if(!ishuman(target) || !iscarbon(user))
return
var/mob/living/carbon/carbon_human = user
var/mob/living/carbon/human/human_target = target
var/datum/status_effect/eldritch/effect = human_target.has_status_effect(/datum/status_effect/eldritch/rust) || human_target.has_status_effect(/datum/status_effect/eldritch/ash) || human_target.has_status_effect(/datum/status_effect/eldritch/flesh) || human_target.has_status_effect(/datum/status_effect/eldritch/void)
@@ -137,7 +135,7 @@
var/dir = angle2dir(dir2angle(get_dir(user,human_target))+180)
carbon_human.forceMove(get_step(human_target,dir))
var/obj/item/melee/sickly_blade/blade = carbon_human.get_active_held_item()
blade.melee_attack_chain(carbon_human,human_target)
blade.melee_attack_chain(carbon_human,human_target,attackchain_flags = ATTACK_IGNORE_CLICKDELAY)
/datum/eldritch_knowledge/spell/voidpull
name = "Void Pull"
@@ -154,15 +152,15 @@
desc = "With the clap of your hands, you can swap your position with someone within your vision."
cost = 2
spell_to_add = /obj/effect/proc_holder/spell/pointed/boogie_woogie
next_knowledge = list(/datum/eldritch_knowledge/spell/infinity)
next_knowledge = list(/datum/eldritch_knowledge/spell/domain_expansion)
route = PATH_VOID
/datum/eldritch_knowledge/spell/infinity
name = "Void's Push"
gain_text = "With the snap of my fingers, they do as I please."
desc = "With the snap of your fingers, send your enemies away."
/datum/eldritch_knowledge/spell/domain_expansion
name = "Infinite Void"
gain_text = "This world will be my stage, and nothing will be out of my reach."
desc = "Gain the ability to mark a 7x7 area as your domain after a short delay. Creatures in your domain are slowed and branded with a void mark, allowing you to quickly teleport to them and slash them, further inhibiting their ability to move."
cost = 2
spell_to_add = /obj/effect/proc_holder/spell/aoe_turf/repulse/eldritch
spell_to_add = /obj/effect/proc_holder/spell/aoe_turf/domain_expansion
next_knowledge = list(/datum/eldritch_knowledge/final/void_final)
route = PATH_VOID
@@ -180,6 +178,7 @@
/datum/eldritch_knowledge/final/void_final/on_finished_recipe(mob/living/user, list/atoms, loc)
var/mob/living/carbon/human/H = user
user.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/repulse/eldritch)
H.physiology.brute_mod *= 0.5
H.physiology.burn_mod *= 0.5
ADD_TRAIT(H, TRAIT_RESISTLOWPRESSURE, MAGIC_TRAIT)