Further file organization
Further file organization
This commit is contained in:
57
nwn/nwnprc/trunk/spells/sp_orb_force.nss
Normal file
57
nwn/nwnprc/trunk/spells/sp_orb_force.nss
Normal file
@@ -0,0 +1,57 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Name
|
||||
//:: FileName sp_.nss
|
||||
//:://////////////////////////////////////////////
|
||||
/**@file Orb of Force
|
||||
Conjuration (Creation) [Force]
|
||||
Level: Sorcerer/wizard 4
|
||||
Components: V, S
|
||||
Casting Time: 1 standard action
|
||||
Range: Medium (100 ft. + 10 ft./level)
|
||||
Effect: One orb of force
|
||||
Duration: Instantaneous
|
||||
Saving Throw: None
|
||||
Spell Resistance: No
|
||||
|
||||
You create a globe of force 3 inches
|
||||
across, which streaks from your palm
|
||||
toward your target. You must succeed on
|
||||
a ranged touch attack to hit the target.
|
||||
The orb deals 1d6 points of damage per
|
||||
caster level (maximum 10d6).
|
||||
|
||||
Author: Tenjac
|
||||
Created: 7/6/07
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "prc_inc_sp_tch"
|
||||
|
||||
void main()
|
||||
{
|
||||
if(!X2PreSpellCastCode()) return;
|
||||
|
||||
PRCSetSchool(SPELL_SCHOOL_CONJURATION);
|
||||
|
||||
object oPC = OBJECT_SELF;
|
||||
object oTarget = PRCGetSpellTargetObject();
|
||||
int nCasterLvl = PRCGetCasterLevel(oPC);
|
||||
int nDice = min(10, nCasterLvl);
|
||||
int nDam = d6(nDice);
|
||||
int nTouch = PRCDoRangedTouchAttack(oTarget);
|
||||
int nMetaMagic = PRCGetMetaMagicFeat();
|
||||
|
||||
if(nMetaMagic & METAMAGIC_MAXIMIZE) nDam = 6 * nDice;
|
||||
|
||||
if(nMetaMagic & METAMAGIC_EMPOWER) nDam += (nDam/2);
|
||||
nDam += SpellDamagePerDice(oPC, nDice);
|
||||
PRCSignalSpellEvent(oTarget, TRUE, SPELL_ORB_OF_FORCE);
|
||||
|
||||
if(nTouch)
|
||||
{
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_PULSE_BOMB), oTarget);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, PRCEffectDamage(oTarget, nDam, DAMAGE_TYPE_MAGICAL), oTarget);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user