Further file organization
Further file organization
This commit is contained in:
34
nwn/nwnprc/trunk/scripts/prc_shdwbn_brlgt.nss
Normal file
34
nwn/nwnprc/trunk/scripts/prc_shdwbn_brlgt.nss
Normal file
@@ -0,0 +1,34 @@
|
||||
#include "prc_alterations"
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPC = OBJECT_SELF;
|
||||
if (!GetLocalInt(oPC, "PierceShadows")) return;
|
||||
|
||||
if (!GetHasFeat(FEAT_TURN_UNDEAD,oPC)) return;
|
||||
DecrementRemainingFeatUses(oPC,FEAT_TURN_UNDEAD);
|
||||
|
||||
location lTarget = GetLocation(oPC);
|
||||
int nClass = GetLevelByClass(CLASS_TYPE_SHADOWBANE_INQUISITOR);
|
||||
float fRad = FeetToMeters(20.0 + 5.0 * nClass);
|
||||
|
||||
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_LOS_HOLY_30), lTarget);
|
||||
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DEATH_WARD), lTarget);
|
||||
|
||||
effect eVis = EffectVisualEffect(VFX_IMP_DEATH);
|
||||
int nDamage;
|
||||
|
||||
object oTarget = GetFirstObjectInShape(SHAPE_SPHERE, fRad, lTarget, TRUE, OBJECT_TYPE_CREATURE );
|
||||
//Cycle through the targets within the spell shape until an invalid object is captured.
|
||||
while (GetIsObjectValid(oTarget))
|
||||
{
|
||||
if (oTarget != oPC)
|
||||
{
|
||||
effect eDeath = EffectDamage(d6(4), DAMAGE_TYPE_DIVINE, DAMAGE_POWER_ENERGY);
|
||||
effect eLink = EffectLinkEffects(eDeath, eVis);
|
||||
DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT,eLink,oTarget));
|
||||
}
|
||||
//Select the next target within the spell shape.
|
||||
oTarget = GetNextObjectInShape(SHAPE_SPHERE, fRad, lTarget, TRUE, OBJECT_TYPE_CREATURE );
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user