Further file organization
Further file organization
This commit is contained in:
61
nwn/nwnprc/trunk/spells/x2_s0_batttide.nss
Normal file
61
nwn/nwnprc/trunk/spells/x2_s0_batttide.nss
Normal file
@@ -0,0 +1,61 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Battletide
|
||||
//:: X2_S0_BattTide
|
||||
//:: Copyright (c) 2001 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
You create an aura that steals energy from your
|
||||
enemies. Your enemies suffer a -2 circumstance
|
||||
penalty on saves, attack rolls, and damage rolls,
|
||||
once entering the aura. On casting, you gain a
|
||||
+2 circumstance bonus to your saves, attack rolls,
|
||||
and damage rolls.
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Andrew Nobbs
|
||||
//:: Created On: Dec 04, 2002
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Last Updated By: Andrew Nobbs 06/06/03
|
||||
//:: modified by mr_bumpkin Dec 4, 2003 for prc stuff
|
||||
#include "prc_inc_spells"
|
||||
#include "prc_add_spell_dc"
|
||||
|
||||
void main()
|
||||
{
|
||||
if (!X2PreSpellCastCode()) return;
|
||||
|
||||
PRCSetSchool(SPELL_SCHOOL_TRANSMUTATION);
|
||||
|
||||
//Declare major variables
|
||||
object oCaster = OBJECT_SELF;
|
||||
int nCasterLvl = PRCGetCasterLevel(oCaster);
|
||||
int nMetaMagic = PRCGetMetaMagicFeat();
|
||||
int nAOE = AOE_MOB_TIDE_OF_BATTLE;
|
||||
|
||||
//Make nDuration at least 1 round.
|
||||
if (nCasterLvl < 1)
|
||||
nCasterLvl = 1;
|
||||
float fDuration = RoundsToSeconds(nCasterLvl);
|
||||
|
||||
//Make metamagic check for extend
|
||||
if(nMetaMagic & METAMAGIC_EXTEND)
|
||||
fDuration *= 2; //Duration is +100%
|
||||
|
||||
effect eVis = EffectVisualEffect(VFX_IMP_HOLY_AID);
|
||||
effect eLink = EffectSavingThrowIncrease(SAVING_THROW_ALL, 2);
|
||||
eLink = EffectLinkEffects(eLink, EffectDamageIncrease(2));
|
||||
eLink = EffectLinkEffects(eLink, EffectAttackIncrease(2));
|
||||
eLink = EffectLinkEffects(eLink, EffectAreaOfEffect(nAOE));
|
||||
eLink = EffectLinkEffects(eLink, EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE));
|
||||
|
||||
SignalEvent(oCaster, EventSpellCastAt(oCaster, SPELL_BATTLETIDE, FALSE));
|
||||
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oCaster, fDuration, TRUE, SPELL_BATTLETIDE, nCasterLvl);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oCaster);
|
||||
|
||||
//Setup Area Of Effect object
|
||||
object oAoE = GetAreaOfEffectObject(GetLocation(oCaster), "VFX_MOB_BATTLETIDE");
|
||||
SetAllAoEInts(SPELL_BATTLETIDE, oAoE, PRCGetSpellSaveDC(SPELL_BATTLETIDE, SPELL_SCHOOL_TRANSMUTATION), 0, nCasterLvl);
|
||||
|
||||
PRCSetSchool();
|
||||
}
|
Reference in New Issue
Block a user