Further file organization
Further file organization
This commit is contained in:
73
nwn/nwnprc/trunk/smp/phs_s_mindblank.nss
Normal file
73
nwn/nwnprc/trunk/smp/phs_s_mindblank.nss
Normal file
@@ -0,0 +1,73 @@
|
||||
/*:://////////////////////////////////////////////
|
||||
//:: Spell Name Mind Blank
|
||||
//:: Spell FileName PHS_S_MindBlank
|
||||
//:://////////////////////////////////////////////
|
||||
//:: In Game Spell desctiption
|
||||
//:://////////////////////////////////////////////
|
||||
Abjuration
|
||||
Level: Protection 8, Sor/Wiz 8
|
||||
Components: V, S
|
||||
Casting Time: 1 standard action
|
||||
Range: Close (8M)
|
||||
Target: One creature
|
||||
Duration: 24 hours
|
||||
Saving Throw: Will negates (harmless)
|
||||
Spell Resistance: Yes (harmless)
|
||||
|
||||
The subject is protected from all devices and spells that detect, influence,
|
||||
or read emotions or thoughts. This spell protects against all mind-affecting
|
||||
spells and effects as well as information gathering by divination spells or
|
||||
effects. Mind blank even foils limited wish, miracle, and wish spells when
|
||||
they are used in such a way as to affect the subject<63>s mind or to gain
|
||||
information about it. In the case of scrying that scans an area the creature
|
||||
is in, such as arcane eye, the spell works but the creature simply isn<73>t
|
||||
detected. Scrying attempts that are targeted specifically at the subject do
|
||||
not work at all.
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Spell Effects Applied / Notes
|
||||
//:://////////////////////////////////////////////
|
||||
Immunity: Mind spells applied.
|
||||
|
||||
Pretty simple, eh?
|
||||
|
||||
OK, Ok, we'll also add in, just in case, any of the other mind-effecting
|
||||
effects, as immunities.
|
||||
|
||||
Only protection - it doesn't cure anything.
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Jasperre
|
||||
//::////////////////////////////////////////////*/
|
||||
|
||||
#include "PHS_INC_SPELLS"
|
||||
|
||||
void main()
|
||||
{
|
||||
// Spell Hook Check.
|
||||
if(!PHS_SpellHookCheck(PHS_SPELL_MIND_BLANK)) return;
|
||||
|
||||
// Declare major variables
|
||||
object oCaster = OBJECT_SELF;
|
||||
object oTarget = GetSpellTargetObject();
|
||||
int nMetaMagic = PHS_GetMetaMagicFeat();
|
||||
|
||||
// Duration is 24 hours
|
||||
float fDuration = PHS_GetDuration(PHS_HOURS, 24, nMetaMagic);
|
||||
|
||||
// Declare effects
|
||||
effect eImmuneMind = EffectImmunity(IMMUNITY_TYPE_MIND_SPELLS);
|
||||
effect eDur = EffectVisualEffect(VFX_DUR_MIND_AFFECTING_POSITIVE);
|
||||
effect eCessate = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
|
||||
|
||||
// Link effects
|
||||
effect eLink = EffectLinkEffects(eImmuneMind, eDur);
|
||||
eLink = EffectLinkEffects(eLink, eCessate);
|
||||
|
||||
// Remove previous effects
|
||||
PHS_RemoveSpellEffectsFromTarget(PHS_SPELL_MIND_BLANK, oTarget);
|
||||
|
||||
// Signal spell cast at
|
||||
PHS_SignalSpellCastAt(oTarget, PHS_SPELL_MIND_BLANK, FALSE);
|
||||
|
||||
// Apply effects to the target
|
||||
PHS_ApplyDuration(oTarget, eLink, fDuration);
|
||||
}
|
Reference in New Issue
Block a user