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.
59 lines
2.5 KiB
Plaintext
59 lines
2.5 KiB
Plaintext
#include "prc_inc_spells"
|
|
#include "prc_add_spell_dc"
|
|
//School: Illusion
|
|
//Area of Effect / Target: Small
|
|
//Save: Fortitude negates
|
|
//Spell Resistance: Yes
|
|
//You cause a multitude of ribbonlike shadows to explode outward in the
|
|
//target area. Creatures in the area take 2 points of strength
|
|
//damage, are dazed for 1 round, and suffer a -2 penalty to saves vs.
|
|
//fear effects. The fear penalty lasts for 1 round / level.
|
|
void main()
|
|
{
|
|
// If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell
|
|
if (!X2PreSpellCastCode()) return;
|
|
|
|
PRCSetSchool(SPELL_SCHOOL_ILLUSION);
|
|
|
|
// Apply a burst visual effect at the target location.
|
|
location lTarget = PRCGetSpellTargetLocation();
|
|
//TODO: NEED VFX
|
|
effect eImpact = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_GREASE);
|
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eImpact, lTarget);
|
|
|
|
// Determine the spell's duration.
|
|
int nCasterLvl = PRCGetCasterLevel(OBJECT_SELF);
|
|
float fDuration = PRCGetMetaMagicDuration(RoundsToSeconds(nCasterLvl));
|
|
|
|
// Build all of the detrimental effectsd, any target that fails its save takes
|
|
// 2 points of strength damage, is dazed for 1 round, and has it's save against
|
|
// fear effects lowered by 2.
|
|
//effect eDamage = EffectAbilityDecrease(ABILITY_STRENGTH, 2);
|
|
effect eDaze = EffectDazed();
|
|
effect eFear = EffectSavingThrowDecrease(SAVING_THROW_ALL, 2, SAVING_THROW_TYPE_FEAR);
|
|
|
|
object oTarget = MyFirstObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_SMALL, lTarget);
|
|
while(GetIsObjectValid(oTarget))
|
|
{
|
|
if(spellsIsTarget(oTarget, SPELL_TARGET_STANDARDHOSTILE, OBJECT_SELF))
|
|
{
|
|
PRCSignalSpellEvent(oTarget);
|
|
|
|
// Let the creature make a fort save, if it fails it's apply the
|
|
// detrimental effects.
|
|
if (!PRCMySavingThrow(SAVING_THROW_FORT, oTarget, PRCGetSaveDC(oTarget,OBJECT_SELF)))
|
|
{
|
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DAZED_S), oTarget);
|
|
//SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDamage, oTarget);
|
|
ApplyAbilityDamage(oTarget, ABILITY_STRENGTH, 2, DURATION_TYPE_PERMANENT, TRUE);
|
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDaze, oTarget, RoundsToSeconds(1),TRUE,-1,nCasterLvl);
|
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eFear, oTarget, fDuration,TRUE,-1,nCasterLvl);
|
|
}
|
|
}
|
|
|
|
oTarget = MyNextObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_SMALL, lTarget);
|
|
}
|
|
|
|
PRCSetSchool();
|
|
}
|