mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 20:43:10 +01:00
New wizard fixes and tweak (#1741)
-fix familiars being hungry and having wrong attack verbs -add some extra mechanical differences to familiars -fix some issues with buckling when it comes to jaunt and polymorph -fix siphon life not working Fixes #1737
This commit is contained in:
@@ -18,7 +18,8 @@
|
||||
/spell/targeted/ethereal_jaunt/cast(list/targets) //magnets, so mostly hardcoded
|
||||
for(var/mob/living/target in targets)
|
||||
target.transforming = 1 //protects the mob from being transformed (replaced) midjaunt and getting stuck in bluespace
|
||||
if(target.buckled) target.buckled = null
|
||||
if(target.buckled)
|
||||
target.buckled.unbuckle_mob()
|
||||
spawn(0)
|
||||
var/mobloc = get_turf(target.loc)
|
||||
var/obj/effect/dummy/spell_jaunt/holder = new /obj/effect/dummy/spell_jaunt( mobloc )
|
||||
|
||||
@@ -47,25 +47,25 @@
|
||||
|
||||
hud_state = "wiz_vampire"
|
||||
cast_sound = 'sound/magic/enter_blood.ogg'
|
||||
|
||||
amt_dam_brute = 15
|
||||
amt_dam_fire = 15
|
||||
|
||||
message = "You feel a sickening feeling as your body weakens."
|
||||
|
||||
/spell/targeted/life_steal/cast(var/list/targets, var/mob/living/carbon/human/caster)
|
||||
for(var/mob/M in targets)
|
||||
if(!(M.stat == DEAD))
|
||||
amt_dam_brute = 15
|
||||
amt_dam_fire = 15
|
||||
|
||||
/spell/targeted/life_steal/cast(list/targets, mob/living/user)
|
||||
for(var/mob/living/M in targets)
|
||||
if(M.stat == DEAD)
|
||||
user << "There is no left life to steal."
|
||||
return
|
||||
if(isipc(target))
|
||||
if(isipc(M))
|
||||
user << "There is no life to steal."
|
||||
return
|
||||
M.visible_message("<span class='danger'>Blood flows from \the [M] into \the [caster]!</span>")
|
||||
caster.adjustBruteLoss(-15)
|
||||
caster.adjustFireLoss(-15)
|
||||
M.visible_message("<span class='danger'>Blood flows from \the [M] into \the [user]!</span>")
|
||||
gibs(M.loc)
|
||||
user.adjustBruteLoss(-15)
|
||||
user.adjustFireLoss(-15)
|
||||
|
||||
..()
|
||||
..()
|
||||
|
||||
/spell/targeted/raise_dead
|
||||
name = "Raise Dead"
|
||||
@@ -139,16 +139,17 @@
|
||||
invocation_type = SpI_EMOTE
|
||||
invocation = "entones an obscure chant..."
|
||||
max_targets = 1
|
||||
level_max = list(Sp_TOTAL = 0, Sp_SPEED = 0, Sp_POWER = 0)
|
||||
|
||||
hud_state = "wiz_lich"
|
||||
|
||||
/spell/targeted/lichdom/cast(mob/target,var/mob/living/carbon/human/user as mob)
|
||||
if(isskeleton(target))
|
||||
if(isskeleton(user))
|
||||
user << "You have no soul or life to offer."
|
||||
return
|
||||
|
||||
user.visible_message("<span class='cult'>\The [user]'s skin sloughs off bone, their blood boils and guts turn to dust!</span>")
|
||||
new /obj/effect/gibspawner/human
|
||||
gibs(user.loc)
|
||||
user.verbs += /mob/living/carbon/proc/immortality
|
||||
user.set_species("Skeleton")
|
||||
user.unEquip(user.wear_suit)
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
amt_stunned = 3
|
||||
|
||||
amt_dam_fire = 10
|
||||
cast_prox_range = 0
|
||||
|
||||
/spell/targeted/projectile/magic_missile/prox_cast(var/list/targets, atom/spell_holder)
|
||||
spell_holder.visible_message("<span class='danger'>\The [spell_holder] pops with a flash!</span>")
|
||||
|
||||
@@ -24,6 +24,10 @@
|
||||
if(M.stat == DEAD)
|
||||
user << "[name] can only transform living targets."
|
||||
continue
|
||||
|
||||
if(M.buckled)
|
||||
M.buckled.unbuckle_mob()
|
||||
|
||||
var/new_mob = pick(possible_transformations)
|
||||
|
||||
var/mob/living/trans = new new_mob(get_turf(M))
|
||||
@@ -76,7 +80,7 @@
|
||||
feedback = "BP"
|
||||
possible_transformations = list(/mob/living/simple_animal/lizard,/mob/living/simple_animal/mouse,/mob/living/simple_animal/corgi)
|
||||
|
||||
|
||||
share_damage = 0
|
||||
invocation = "Yo'balada!"
|
||||
invocation_type = SpI_SHOUT
|
||||
spell_flags = NEEDSCLOTHES | SELECTABLE
|
||||
@@ -86,6 +90,8 @@
|
||||
|
||||
level_max = list(Sp_TOTAL = 2, Sp_SPEED = 2, Sp_POWER = 2)
|
||||
|
||||
newVars = list("health" = 50, "maxHealth" = 50)
|
||||
|
||||
hud_state = "wiz_poly"
|
||||
|
||||
|
||||
@@ -98,13 +104,15 @@
|
||||
return "Your target will now stay in their polymorphed form for [duration/10] seconds."
|
||||
|
||||
/spell/targeted/shapeshift/avian
|
||||
name = "Avian Form"
|
||||
name = "Polymorph"
|
||||
desc = "This spell transforms the wizard into the common parrot."
|
||||
feedback = "AV"
|
||||
possible_transformations = list(/mob/living/simple_animal/parrot)
|
||||
|
||||
invocation = "Poli'crakata!"
|
||||
invocation_type = SpI_SHOUT
|
||||
drop_items = 0
|
||||
share_damage = 0
|
||||
spell_flags = INCLUDEUSER
|
||||
range = -1
|
||||
duration = 150
|
||||
@@ -143,9 +151,9 @@
|
||||
return "You will now stay corrupted for [duration/10] seconds."
|
||||
if(2)
|
||||
newVars = list("name" = "\proper corruption incarnate",
|
||||
"melee_damage_upper" = 25,
|
||||
"melee_damage_upper" = 35,
|
||||
"resistance" = 6,
|
||||
"health" = 125,
|
||||
"maxHealth" = 125)
|
||||
"health" = 250,
|
||||
"maxHealth" = 250)
|
||||
duration = 0
|
||||
return "You revel in the corruption. There is no turning back."
|
||||
|
||||
Reference in New Issue
Block a user