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.
63 lines
2.3 KiB
Plaintext
63 lines
2.3 KiB
Plaintext
/*:://////////////////////////////////////////////
|
|
//:: Spell Name Sanctuary
|
|
//:: Spell FileName PHS_S_Sanctuary
|
|
//:://////////////////////////////////////////////
|
|
//:: In Game Spell desctiption
|
|
//:://////////////////////////////////////////////
|
|
Range: Touch
|
|
Target: Creature touched
|
|
Duration: 1 round/level
|
|
Saving Throw: Will negates
|
|
Spell Resistance: No
|
|
|
|
All creatures who percieve the touched creature must attempt a Will save. If
|
|
the save succeeds, the opponent can see the target normally and is unaffected
|
|
by that casting of the spell. If the save fails, the opponent cannot see the
|
|
creature as if they were under the effect of invisibility. This spell does
|
|
not prevent the warded creature from being attacked or affected by area or
|
|
effect spells. The subject cannot attack without breaking the spell but may
|
|
use nonattack spells or otherwise act.
|
|
//:://////////////////////////////////////////////
|
|
//:: Spell Effects Applied / Notes
|
|
//:://////////////////////////////////////////////
|
|
As above - uses the default Bioware Sancuary, so its not exactly to D&D at all.
|
|
|
|
Sancuary, as far as I am aware, is a better invisiblity - as it is used
|
|
as a basis for the Bioware Etherealness.
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Jasperre
|
|
//::////////////////////////////////////////////*/
|
|
|
|
#include "PHS_INC_SPELLS"
|
|
|
|
void main()
|
|
{
|
|
// Spell hook check
|
|
if(!PHS_SpellHookCheck(PHS_SPELL_SANCTUARY)) return;
|
|
|
|
// Declare major variables
|
|
object oCaster = OBJECT_SELF;
|
|
object oTarget = GetSpellTargetObject();
|
|
int nSpellSaveDC = PHS_GetSpellSaveDC();
|
|
int nCasterLevel = PHS_GetCasterLevel();
|
|
int nMetaMagic = PHS_GetMetaMagicFeat();
|
|
|
|
// Get duration in rounds
|
|
float fDuration = PHS_GetDuration(PHS_ROUNDS, nCasterLevel, nMetaMagic);
|
|
|
|
// Declare effects
|
|
effect eSanctuary = EffectSanctuary(nSpellSaveDC);
|
|
effect eDur = EffectVisualEffect(VFX_DUR_SANCTUARY);
|
|
effect eCessate = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
|
|
|
|
// Link effects
|
|
effect eLink = EffectLinkEffects(eSanctuary, eDur);
|
|
eLink = EffectLinkEffects(eLink, eCessate);
|
|
|
|
// Signal spell cast at event
|
|
PHS_SignalSpellCastAt(oTarget, PHS_SPELL_SANCTUARY, FALSE);
|
|
|
|
// Apply duration effects
|
|
PHS_ApplyDuration(oTarget, eLink, fDuration);
|
|
}
|