PRC8_fork/nwn/nwnprc/trunk/psionics/prc_wild_surge.nss
Jaysyn904 6ec137a24e Updated AMS marker feats
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.
2024-02-11 14:01:05 -05:00

47 lines
1.5 KiB
Plaintext

//::///////////////////////////////////////////////
//:: Wild Surge
//:: prc_wild_surge
//::///////////////////////////////////////////////
/** @file
Turns Wild Surge to a setting determined by
SpellID.
@author Ornedan
@date Created - 2005.11.28
*/
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
#include "psi_inc_psifunc"
const int SPELLID_WILD_SURGE_1 = 2380;
const int SPELLID_WILD_SURGE_11 = 2390;
void main()
{
object oPC = OBJECT_SELF;
int nSpellID = GetSpellId();
int nWilderLvl = GetLevelByClass(CLASS_TYPE_WILDER, oPC);
int nWildSurge = nSpellID - SPELLID_WILD_SURGE_1 + 1;
int nMaxSurge;
if(nWilderLvl < 3)
nMaxSurge = 1;
else
nMaxSurge = ((nWilderLvl + 1) / 4) + 1;
if(DEBUG) if(nWildSurge < 1 || nWildSurge > 11) DoDebug("prc_wild_surge: ERROR: Unsupported spellID: " + IntToString(nSpellID));
if(nWildSurge <= nMaxSurge)
{
if(!GetLocalInt(oPC, PRC_OVERCHANNEL))
{
SetLocalInt(oPC, PRC_WILD_SURGE, nWildSurge);
FloatingTextStringOnCreature(GetStringByStrRef(StringToInt(Get2DACache("spells", "Name", nSpellID))), oPC, FALSE);
}
else
FloatingTextStrRefOnCreature(16824026, oPC, FALSE); // "You cannot have Wild Surge and Overchannel active at the same time"
}
else
FloatingTextStrRefOnCreature(16824027, oPC, FALSE); // "Your Wilder level is not high enough to use this level of Wild Surge"
}