Further file organization
Further file organization
This commit is contained in:
70
nwn/nwnprc/trunk/newspellbook/tob_irnh_adamhr.nss
Normal file
70
nwn/nwnprc/trunk/newspellbook/tob_irnh_adamhr.nss
Normal file
@@ -0,0 +1,70 @@
|
||||
//////////////////////////////////////////////////
|
||||
// Adamantine Hurricane
|
||||
// tob_irnh_adamhr.nss
|
||||
// Tenjac 9/20/07
|
||||
//////////////////////////////////////////////////
|
||||
/** @file Adamantine Hurrican
|
||||
Iron Heart(Strike)
|
||||
Level: Warblade 8
|
||||
Prerequisite: Three Iron Heart Maneuvers
|
||||
Initiation Action: 1 standard action
|
||||
Range: Melee attack
|
||||
Targets: One or more adjacent creatures you threaten
|
||||
|
||||
In a blur of motion, you make a short, twisting leap in the air. As you turn, your
|
||||
weapon flashes through the enemies around you like a blazing comet. As you drop
|
||||
back to the ground in your fighting stance, your enemies crumple to the ground
|
||||
around you.
|
||||
|
||||
You sweep your weapon in a circle around you, striking out at nearby enemies. You
|
||||
strike with the speed and ferocity of a lightning bolt, forcing your enemies to
|
||||
rely on their relexes for protection rather than their armor and shields.
|
||||
|
||||
You make two melee attacks against each adjacent oppoenent you threaten when you
|
||||
initiate this maneuver. You receive a +4 bonus on each of these attacks, which are
|
||||
otherwise made with your highest attack bonus.
|
||||
|
||||
*/
|
||||
|
||||
#include "tob_inc_move"
|
||||
#include "tob_movehook"
|
||||
////#include "prc_alterations"
|
||||
|
||||
void main()
|
||||
{
|
||||
if (!PreManeuverCastCode())
|
||||
{
|
||||
// If code within the PreManeuverCastCode (i.e. UMD) reports FALSE, do not run this spell
|
||||
return;
|
||||
}
|
||||
// End of Spell Cast Hook
|
||||
|
||||
object oInitiator = OBJECT_SELF;
|
||||
object oTarget = PRCGetSpellTargetObject();
|
||||
struct maneuver move = EvaluateManeuver(oInitiator, oTarget);
|
||||
|
||||
if(move.bCanManeuver)
|
||||
{
|
||||
effect eNone;
|
||||
|
||||
oTarget = MyFirstObjectInShape(SHAPE_SPHERE, FeetToMeters(10.0), GetLocation(oInitiator), TRUE, OBJECT_TYPE_CREATURE);
|
||||
while(GetIsObjectValid(oTarget))
|
||||
{
|
||||
// No hitting yourself or your friends, and they need to be within hitting range.
|
||||
if(oTarget != oInitiator && GetIsEnemy(oTarget, oInitiator) && GetIsInMeleeRange(oTarget, oInitiator))
|
||||
{
|
||||
//Attack
|
||||
DelayCommand(0.0, PerformAttack(oTarget, oInitiator, eNone, 0.0, 4, 0, 0,"Adamantine Hurricane Hit", "Adamantine Hurricane Miss"));
|
||||
|
||||
//Do it again :D
|
||||
DelayCommand(0.0, PerformAttack(oTarget, oInitiator, eNone, 0.0, 4, 0, 0,"Adamantine Hurricane Hit", "Adamantine Hurricane Miss"));
|
||||
|
||||
}// end if - Target validity check
|
||||
|
||||
// Get next target
|
||||
oTarget = MyNextObjectInShape(SHAPE_SPHERE, FeetToMeters(10.0), GetLocation(oInitiator), TRUE, OBJECT_TYPE_CREATURE);
|
||||
}// end while - Target loop
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user