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.
This commit is contained in:
67
nwn/trunk/smp/phs_s_dimenlocka.nss
Normal file
67
nwn/trunk/smp/phs_s_dimenlocka.nss
Normal file
@@ -0,0 +1,67 @@
|
||||
/*:://////////////////////////////////////////////
|
||||
//:: Spell Name Dimensional Lock : On Enter
|
||||
//:: Spell FileName PHS_S_Dimenlocka
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Spell Effects Applied / Notes
|
||||
//:://////////////////////////////////////////////
|
||||
Visual effect only applied.
|
||||
|
||||
It is for 1 day/level...but this might not be wise. It can stay that way
|
||||
for now - it is a level 8 spell!!!
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Jasperre
|
||||
//::////////////////////////////////////////////*/
|
||||
|
||||
#include "PHS_INC_SPELLS"
|
||||
|
||||
void main()
|
||||
{
|
||||
// Check caster
|
||||
if(PHS_CheckAOECreator()) return;
|
||||
|
||||
// Declare major variables
|
||||
object oCaster = GetAreaOfEffectCreator();
|
||||
object oTarget = GetEnteringObject();
|
||||
object oSelf = OBJECT_SELF;
|
||||
string sId = "PHS_DIMEN_LOCK_SR" + ObjectToString(oTarget);
|
||||
int nSR;
|
||||
|
||||
// Delcare effects
|
||||
effect eDur = EffectVisualEffect(VFX_DUR_FREEDOM_OF_MOVEMENT);
|
||||
|
||||
// Signal event spell cast at
|
||||
PHS_SignalSpellCastAt(oTarget, PHS_SPELL_DIMENSIONAL_LOCK);
|
||||
|
||||
// Because this AOE allows SR checks, we must store the result somehow.
|
||||
// * Local integer, also used On Exit to not remove if there are 2 locks
|
||||
// overlapping.
|
||||
int nPrevious = GetLocalInt(oSelf, sId);
|
||||
|
||||
// If nPrevious is 1, it is resisted. If 0, not taken. If 2, it failed.
|
||||
if(nPrevious == 0)
|
||||
{
|
||||
// Check SR
|
||||
nSR = PHS_SpellResistanceCheck(oCaster, oTarget);
|
||||
|
||||
if(nSR == FALSE)
|
||||
{
|
||||
nPrevious = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
nPrevious = 1;
|
||||
}
|
||||
}
|
||||
// Failed...
|
||||
if(nPrevious == 2)
|
||||
{
|
||||
// Apply On Enter effects
|
||||
PHS_AOE_OnEnterEffects(eDur, oTarget, PHS_SPELL_DIMENSIONAL_LOCK);
|
||||
}
|
||||
//else
|
||||
//{
|
||||
// Nothing. Passed.
|
||||
//}
|
||||
// Set it for later use
|
||||
SetLocalInt(oSelf, sId, nPrevious);
|
||||
}
|
Reference in New Issue
Block a user