Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
78 lines
3.1 KiB
Plaintext
78 lines
3.1 KiB
Plaintext
//////////////////////////////////////////////////
|
|
// Earthstrike Quake
|
|
// tob_stdr_erthstq.nss
|
|
// Tenjac 9/11/07
|
|
//////////////////////////////////////////////////
|
|
/** @file Earthstrike Quake
|
|
Stone Dragon (Strike)
|
|
Level: Crusader 8, swordsage 8, warblade 8
|
|
Prerequisite: Two Stone Dragon maneuvers
|
|
Initiation Action: 1 standard action
|
|
Range: 20ft
|
|
Area: 20 ft radius burst, centered on you
|
|
Duration: Instantaneous
|
|
Saving Throw: Reflex negates
|
|
|
|
You swind your weapon in a wild arc, slamming it into the ground at your feet. Energy
|
|
surges out from you, causing the ground to shudder with a sharp tremor.
|
|
|
|
You channel ki into the earth with your mighty strike, causing the ground to rumble
|
|
and shake briefly. Anyone standing on the ground in this maneuver's area must make
|
|
a successful Reflex save (DC 18 + your Str modifier) or be knocked prone. Any creature
|
|
in this area that is currently casting a spell must succeed on a Concentration check
|
|
(DC 20 + spell level) or lose the spell.
|
|
|
|
You are immune to the effect of the earthstrike quake maneuver. Your allies must still
|
|
save as normal against its effect.
|
|
|
|
Walls and similar barriers don't block the line of effect of an earth-strike quake.
|
|
|
|
*/
|
|
|
|
#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)
|
|
{
|
|
//Animation
|
|
PlayAnimation(ANIMATION_FIREFORGET_VICTORY1);
|
|
|
|
location lLoc = GetLocation(oInitiator);
|
|
int nDC = 18 + (GetAbilityModifier(ABILITY_STRENGTH, oInitiator));
|
|
|
|
//Shaking
|
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_SCREEN_SHAKE), lLoc);
|
|
|
|
object oTarget = MyFirstObjectInShape(SHAPE_SPHERE, FeetToMeters(20.0), lLoc, FALSE, OBJECT_TYPE_CREATURE);
|
|
|
|
while(GetIsObjectValid(oTarget))
|
|
{
|
|
if(oTarget != oInitiator)
|
|
{
|
|
if(!PRCMySavingThrow(SAVING_THROW_REFLEX, oTarget, nDC, SAVING_THROW_TYPE_NONE, oInitiator, 1.0))
|
|
{
|
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectKnockdown(), oTarget, RoundsToSeconds(1));
|
|
}
|
|
}
|
|
oTarget = MyNextObjectInShape(SHAPE_SPHERE, FeetToMeters(20.0), lLoc, FALSE, OBJECT_TYPE_CREATURE);
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|