PRC8/nwn/trunk/spells/sp_otiluke_rsB.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

59 lines
2.0 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//::///////////////////////////////////////////////
//:: Name Otiluke's Resilient Sphere On Exit
//:: FileName sp_otiluke_rsB.nss
//:://////////////////////////////////////////////
/**@file Otiluke's Resilient Sphere
Evocation [Force]
Level: Sor/Wiz 4
Components: V, S, M
Range: Short
Effect: Sphere, centered around a creature
Duration: 1 min./level (D)
Saving Throw: Reflex negates
Spell Resistance: Yes
A globe of shimmering force encloses a creature within
the diameter of the sphere. The sphere contains its
subject for the spells duration. The sphere is not
subject to damage of any sort except from a rod of
cancellation, a rod of negation, a disintegrate spell,
or a targeted dispel magic spell. These effects destroy
the sphere without harm to the subject. Nothing can
pass through the sphere, inside or out, though the
subject can breathe normally.
Author: Tenjac
Created: 7/6/07
*/
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
#include "prc_inc_spells"
#include "prc_add_spell_dc"
void main()
{
object oCaster = GetAreaOfEffectCreator();
object oTarget = GetExitingObject();
if(GetLocalInt(oTarget, "PRC_OTILUKES_RS_TARGET"))
{
//Delete it
DeleteLocalInt(oTarget, "PRC_OTILUKES_RS_TARGET");
if(!GetLocalInt(oTarget, "PRC_OTILUKES_RS_ALREADYPLOT"))
{
SetPlotFlag(oTarget, 0);
}
effect eToDispel = GetFirstEffect(oTarget);
while(GetIsEffectValid(eToDispel))
{
if(GetEffectSpellId(eToDispel) == SPELL_OTILUKES_RESILIENT_SPHERE)
{
RemoveEffect(oTarget, eToDispel);
}
eToDispel = GetNextEffect(oTarget);
}
}
}