Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
91 lines
3.2 KiB
Plaintext
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);
|
|
}
|
|
}
|
|
}
|
|
}
|