Jaysyn904 6ec137a24e Updated AMS marker feats
Updated AMS marker feats.  Removed arcane & divine marker feats.  Updated Dread Necromancer for epic progression. Updated weapon baseitem models.  Updated new weapons for crafting & npc equip.
 Updated prefix.  Updated release archive.
2024-02-11 14:01:05 -05:00

91 lines
3.2 KiB
Plaintext

/*:://////////////////////////////////////////////
//:: Spell Name Transmute Blood to Water
//:: Spell FileName XXX_S_TransBlood
//:://////////////////////////////////////////////
//:: In Game Spell desctiption
//:://////////////////////////////////////////////
Transmutation
Level: Sor/Wiz 7
Components: V, S
Casting Time: 1 standard action
Range: Touch
Target: 1 living creature
Duration: Instantaneous
Saving Throw: Fortitude partial
Spell Resistance: Yes
Source: Various (Andvaranaut)
An adaptation of Finger of Death, this diabolical spell actually transforms
the very life-blood of a victim into ordinary water, causing them to
collapse in a lifeless heap. If you succeed at a melee touch attack, the
intended victim is slain. However, if they make a successful Fortitude
saving throw, they somehow managed to survive the transformation, and
instead suffer 5d6 points of damage and are dazed for one round.
//:://////////////////////////////////////////////
//:: Spell Effects Applied / Notes
//:://////////////////////////////////////////////
This is an adaptation:
Its Transmutation (not necromancy) and doesn't have the [Death] Descriptor.
Means many spells which protect against Instant Death will not help here!
Note: The death will be made in damage (HP * 2 + 20)
BUT: It adds a touch attack, at touch range (the most dangerous for a caster)
and still has the fortitude save and SR applied.
//:://////////////////////////////////////////////
//:: Created By: Jasperre
//::////////////////////////////////////////////*/
#include "SMP_INC_SPELLS"
void main()
{
// Spell Hook Check.
if(!SMP_SpellHookCheck(SMP_SPELL_TRANSMUTE_BLOOD_TO_WATER)) return;
// Declare Major Variables
object oCaster = OBJECT_SELF;
object oTarget = GetSpellTargetObject();
int nCasterLevel = SMP_GetCasterLevel();
int nSpellSaveDC = SMP_GetSpellSaveDC();
int nMetaMagic = SMP_GetMetaMagicFeat();
// Touch attack
int nTouch = SMP_SpellTouchAttack(SMP_TOUCH_MELEE, oTarget);
// Damage is 5d6.
int nDamage = SMP_MaximizeOrEmpower(6, 5, nMetaMagic);
// Delcare effects
effect eVis = EffectVisualEffect(VFX_IMP_NEGATIVE_ENERGY);
// Dazed for one round
effect eDaze = EffectDazed();
float fDuration = 6.0;
// Signal Spell cast at
SMP_SignalSpellCastAt(oTarget, SMP_SPELL_TRANSMUTE_BLOOD_TO_WATER);
// PvP Check and touch check. Must also be living!
if(!GetIsReactionTypeFriendly(oTarget) && nTouch &&
SMP_GetIsAliveCreature(oTarget, "*Non-alive creatures have no blood*"))
{
// Spell Resistance + Immunity check
if(!SMP_SpellResistanceCheck(oCaster, oTarget))
{
// Fortitude Saving throw
if(!SMP_SavingThrow(SAVING_THROW_FORT, oTarget, nSpellSaveDC))
{
// Fail and we apply death
SMP_ApplyDeathByDamageAndVFX(oTarget, eVis);
}
else
{
// Even if they pass, we do damage.
SMP_ApplyDamageVFXToObject(oTarget, eVis, nDamage);
// And daze for one round
SMP_ApplyDuration(oTarget, eDaze, fDuration);
}
}
}
}