forked from Jaysyn/PRC8
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.
64 lines
2.3 KiB
Plaintext
64 lines
2.3 KiB
Plaintext
/*
|
|
sp_sequester
|
|
|
|
Sequester
|
|
|
|
Abjuration
|
|
Level: Sor/Wiz 7
|
|
Components: V, S, M
|
|
Casting Time: 1 standard action
|
|
Range: Touch
|
|
Target: One willing creature or object (up to a 2-ft. cube/level) touched
|
|
Duration: One day/level (D)
|
|
Saving Throw: None or Will negates (object)
|
|
Spell Resistance: No or Yes (object)
|
|
|
|
When cast, this spell not only prevents divination spells from working to detect or
|
|
locate the creature or object affected by sequester, it also renders the affected
|
|
creature or object invisible to any form of sight or seeing (as the invisibility spell).
|
|
The spell does not prevent the subject from being discovered through tactile means or
|
|
through the use of devices. Creatures affected by sequester become comatose and are effectively
|
|
in a state of suspended animation until the spell wears off or is dispelled.
|
|
|
|
Note: The Will save prevents an attended or magical object from being sequestered.
|
|
There is no save to see the sequestered creature or object or to detect it with a divination spell.
|
|
|
|
Material Component: A basilisk eyelash, gum arabic, and a dram of whitewash.
|
|
|
|
Stratovarius
|
|
*/
|
|
|
|
#include "prc_sp_func"
|
|
|
|
void main()
|
|
{
|
|
object oCaster = OBJECT_SELF;
|
|
int nCasterLevel = PRCGetCasterLevel(oCaster);
|
|
int nSpellID = PRCGetSpellId();
|
|
PRCSetSchool(GetSpellSchool(nSpellID));
|
|
if (!X2PreSpellCastCode()) return;
|
|
object oTarget = PRCGetSpellTargetObject();
|
|
int nMetaMagic = PRCGetMetaMagicFeat();
|
|
// Effects (Invis)
|
|
effect eVis = EffectVisualEffect(VFX_DUR_INVISIBILITY);
|
|
effect eInvis = EffectInvisibility(INVISIBILITY_TYPE_IMPROVED);
|
|
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
|
|
effect eCover = EffectConcealment(50);
|
|
effect eLink = EffectLinkEffects(eDur, eCover);
|
|
eLink = EffectLinkEffects(eLink, eVis);
|
|
eLink = EffectLinkEffects(eLink, eInvis);
|
|
// Target also is in suspended animation
|
|
eLink = EffectLinkEffects(eLink, EffectCutsceneParalyze());
|
|
// 24 hours per caster level
|
|
float fDuration = HoursToSeconds(24) * nCasterLevel;
|
|
if(PRCGetMetaMagicFeat() & METAMAGIC_EXTEND)
|
|
fDuration *= 2.0;
|
|
// Make sure the target is friendly
|
|
if (GetIsFriend(oTarget))
|
|
{
|
|
//apply the effect
|
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, fDuration);
|
|
}
|
|
|
|
PRCSetSchool();
|
|
} |