Further file organization
Further file organization
This commit is contained in:
48
nwn/nwnprc/trunk/smp/phs_s_mindfogb.nss
Normal file
48
nwn/nwnprc/trunk/smp/phs_s_mindfogb.nss
Normal file
@@ -0,0 +1,48 @@
|
||||
/*:://////////////////////////////////////////////
|
||||
//:: Spell Name Mind Fog: On Exit
|
||||
//:: Spell FileName PHS_S_MindFogB
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Spell Effects Applied / Notes
|
||||
//:://////////////////////////////////////////////
|
||||
Mind fog, similar to Biowares.
|
||||
|
||||
Ok, On Enter, we save against the spell and if fail, will take -10 on
|
||||
will saves.
|
||||
|
||||
On Exit, if they still have the spells effects, will have the permament
|
||||
effects removed and have tempoary ones added.
|
||||
|
||||
If, On Enter, they have tempoary (not permament) effects only, of this spell,
|
||||
they will make a new save and if failed, put permament effects on and remove
|
||||
the tempoary ones.
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Jasperre
|
||||
//::////////////////////////////////////////////*/
|
||||
|
||||
#include "PHS_INC_SPELLS"
|
||||
|
||||
void main()
|
||||
{
|
||||
// Declare major variables
|
||||
object oTarget = GetExitingObject();
|
||||
object oCaster = GetAreaOfEffectCreator();
|
||||
int nMetaMagic = PHS_GetAOEMetaMagic();
|
||||
|
||||
// Declare effects
|
||||
effect eMind = EffectSavingThrowDecrease(SAVING_THROW_WILL, 10);
|
||||
effect eDur = EffectVisualEffect(VFX_DUR_MIND_AFFECTING_NEGATIVE);
|
||||
effect eLink = EffectLinkEffects(eMind, eDur);
|
||||
|
||||
// Get duration
|
||||
float fDuration = PHS_GetRandomDuration(PHS_MINUTES, 6, 2, nMetaMagic);
|
||||
|
||||
// Check if they have the permament effects
|
||||
if(PHS_GetHasSpellEffectDurationType(PHS_SPELL_MIND_FOG, oTarget, DURATION_TYPE_PERMANENT))
|
||||
{
|
||||
// Apply effects after removing permanent ones.
|
||||
PHS_RemoveSpellEffectsFromTarget(PHS_SPELL_MIND_FOG, oTarget);
|
||||
|
||||
// Apply new permament state.
|
||||
PHS_ApplyDuration(oTarget, eLink, fDuration);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user