Initial commit
Adding all of the current content for Anphillia Unlimited.
This commit is contained in:
66
_module/nss/spell_hook.nss
Normal file
66
_module/nss/spell_hook.nss
Normal file
@@ -0,0 +1,66 @@
|
||||
#include "x2_inc_spellhook"
|
||||
#include "x2_inc_switches"
|
||||
#include "spell_inc"
|
||||
#include "nwnx_creature"
|
||||
#include "nwnx_deprecated"
|
||||
|
||||
void main()
|
||||
{
|
||||
// eyesolated spell macros script
|
||||
ExecuteScript("esm_spuserdef", OBJECT_SELF);
|
||||
|
||||
int nSpellID = GetSpellId();
|
||||
object oCaster = OBJECT_SELF;
|
||||
int nCasterLvl = GetCasterLevel(oCaster);
|
||||
int nMetaMagic = GetMetaMagicFeat();
|
||||
|
||||
|
||||
|
||||
|
||||
if (spell_GetLevel(nSpellID, GetLastSpellCastClass()) == 0)
|
||||
NWNX_Creature_RestoreSpells(oCaster, 0);
|
||||
|
||||
// Special spell failure conditions
|
||||
/*
|
||||
switch (nSpellID)
|
||||
{
|
||||
case SPELL_CALL_LIGHTNING:
|
||||
if (GetIsAreaInterior(GetArea(oCaster)))
|
||||
{
|
||||
FloatingTextStringOnCreature("You cannot cast this spell indoors.", oCaster);
|
||||
SetModuleOverrideSpellScriptFinished();
|
||||
return;
|
||||
}
|
||||
break;
|
||||
}
|
||||
*/
|
||||
|
||||
// Custom spells not using Bioware implementation
|
||||
switch (nSpellID)
|
||||
{
|
||||
case SPELL_MAGIC_WEAPON:
|
||||
case SPELL_GREATER_MAGIC_WEAPON:
|
||||
case SPELL_DARKFIRE:
|
||||
case SPELL_BLADE_THIRST:
|
||||
case SPELL_FLAME_WEAPON:
|
||||
case SPELL_KEEN_EDGE:
|
||||
case SPELL_BLESS_WEAPON:
|
||||
case SPELL_HOLY_SWORD:
|
||||
ExecuteScript("spell_weapon", OBJECT_SELF);
|
||||
SetModuleOverrideSpellScriptFinished();
|
||||
break;
|
||||
case SPELL_MAGIC_MISSILE:
|
||||
case SPELL_SHADOW_CONJURATION_MAGIC_MISSILE:
|
||||
case SPELL_ISAACS_LESSER_MISSILE_STORM:
|
||||
case SPELL_ISAACS_GREATER_MISSILE_STORM:
|
||||
case SPELL_BALL_LIGHTNING:
|
||||
case SPELL_FLAME_ARROW:
|
||||
case SPELL_FIREBRAND:
|
||||
// case SPELL_MELFS_ACID_ARROW:
|
||||
// case SPELL_GREATER_SHADOW_CONJURATION_ACID_ARROW:
|
||||
ExecuteScript("spell_missile", OBJECT_SELF);
|
||||
SetModuleOverrideSpellScriptFinished();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user