PRC8/nwn/trunk/newspellbook/inv_dra_dractgh.nss
Jaysyn904 5914ed2ab5 Updated Release Archive
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.
2023-08-22 10:00:21 -04:00

42 lines
1.3 KiB
Plaintext

//::///////////////////////////////////////////////
//:: Name Draconic Toughness
//:: FileName inv_dra_dractgh.nss
//::///////////////////////////////////////////////
/*
Greater Invocation
5th Level Spell
You gain temporary hit points equal to your caster
level. These hit points last for 24 hours or until
the invocation is cast again, in which case the new
effect replaces the old.
*/
//::///////////////////////////////////////////////
#include "inv_inc_invfunc"
#include "inv_invokehook"
void main()
{
if(!PreInvocationCastCode()) return;
object oCaster = OBJECT_SELF;
object oTarget = PRCGetSpellTargetObject();
int nCasterLevel = GetInvokerLevel(oCaster, GetInvokingClass());
// Spell does not stack with itself
if(GetHasSpellEffect(INVOKE_DRACONIC_TOUGHNESS,oTarget))
PRCRemoveSpellEffects(INVOKE_DRACONIC_TOUGHNESS, oCaster, oTarget);
effect eHP = EffectTemporaryHitpoints(nCasterLevel);
effect eVis = EffectVisualEffect(VFX_IMP_HOLY_AID);
//Fire cast spell at event for the specified target
SignalEvent(oTarget, EventSpellCastAt(oCaster, INVOKE_DRACONIC_TOUGHNESS, FALSE));
//Apply the VFX impact and effects
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHP, oTarget, HoursToSeconds(24),TRUE,-1,nCasterLevel);
}