Updated AMS marker feats. Removed arcane & divine marker feats. Updated Dread Necromancer for epic progression. Updated weapon baseitem models. Updated new weapons for crafting & npc equip. Updated prefix. Updated release archive.
53 lines
1.5 KiB
Plaintext
53 lines
1.5 KiB
Plaintext
/*
|
|
Warlock epic feat
|
|
Shadowmaster - Shades spells
|
|
*/
|
|
#include "prc_inc_racial"
|
|
|
|
#include "inv_inc_invfunc"
|
|
|
|
void DoSLA(int nSpellID, int nCasterlevel = 0, int nTotalDC = 0)
|
|
{
|
|
if(DEBUG) DoDebug("Spell DC passed to DoRacialSLA: " + IntToString(nTotalDC));
|
|
if(nTotalDC == 0)
|
|
nTotalDC = 10
|
|
+StringToInt(Get2DACache("spells", "Innate", nSpellID))
|
|
+GetAbilityModifier(ABILITY_CHARISMA);
|
|
|
|
ActionDoCommand(SetLocalInt(OBJECT_SELF, "SpellIsSLA", TRUE));
|
|
if(DEBUG) DoDebug("Spell DC entered in ActionCastSpell: " + IntToString(nTotalDC));
|
|
ActionCastSpell(nSpellID, nCasterlevel, 0, nTotalDC, METAMAGIC_NONE, CLASS_TYPE_INVALID, FALSE, FALSE, OBJECT_INVALID, FALSE);
|
|
ActionDoCommand(DeleteLocalInt(OBJECT_SELF, "SpellIsSLA"));
|
|
}
|
|
|
|
void main()
|
|
{
|
|
int CasterLvl = GetInvokerLevel(OBJECT_SELF, CLASS_TYPE_WARLOCK);
|
|
int nSpellID = GetSpellId();
|
|
|
|
if(nSpellID == INVOKE_SHADOWMASTER_SUMMON_SHADOW)
|
|
{
|
|
DoSLA(SPELL_SHADES_SUMMON_SHADOW, CasterLvl);
|
|
}
|
|
|
|
if(nSpellID == INVOKE_SHADOWMASTER_CONE_OF_COLD)
|
|
{
|
|
DoSLA(SPELL_SHADES_CONE_OF_COLD, CasterLvl);
|
|
}
|
|
|
|
if(nSpellID == INVOKE_SHADOWMASTER_FIREBALL)
|
|
{
|
|
DoSLA(SPELL_SHADES_FIREBALL, CasterLvl);
|
|
}
|
|
|
|
if(nSpellID == INVOKE_SHADOWMASTER_STONESKIN)
|
|
{
|
|
DoSLA(SPELL_SHADES_STONESKIN, CasterLvl);
|
|
}
|
|
|
|
if(nSpellID == INVOKE_SHADOWMASTER_WALL_OF_FIRE)
|
|
{
|
|
DoSLA(SPELL_SHADES_WALL_OF_FIRE, CasterLvl);
|
|
}
|
|
}
|