PRC8_fork/trunk/newspellbook/inv_dra_dractgh.nss
Jaysyn904 1662218bb4 Initial upload.
Adding base PRC 4.19a files to repository.
2022-10-07 13:51:24 -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);
}