Further file organization
Further file organization
This commit is contained in:
47
nwn/nwnprc/trunk/scripts/prc_lasher_death.nss
Normal file
47
nwn/nwnprc/trunk/scripts/prc_lasher_death.nss
Normal file
@@ -0,0 +1,47 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Lasher - Death Spiral
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Flaming_Sword
|
||||
//:: Created On: Sept 27, 2005
|
||||
//:: Modified: Nov 5, 2005
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "prc_inc_combat"
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPC = OBJECT_SELF;
|
||||
object oWeapon = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
|
||||
int nDC;
|
||||
int nDC2 = 18;
|
||||
int nSpellId = GetSpellId();
|
||||
float fRange = 4.5;
|
||||
location lLoc = GetLocation(oPC);
|
||||
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_SILENCE), lLoc);
|
||||
|
||||
object oTarget = MyFirstObjectInShape(SHAPE_SPHERE, fRange, lLoc, OBJECT_TYPE_CREATURE);
|
||||
while(GetIsObjectValid(oTarget))
|
||||
{
|
||||
if(spellsIsTarget(oTarget, SPELL_TARGET_SELECTIVEHOSTILE, oPC) && oTarget != oPC)
|
||||
{
|
||||
SignalEvent(oTarget, EventSpellCastAt(oPC, nSpellId));
|
||||
nDC = GetAttackBonus(oTarget, OBJECT_SELF, oWeapon) + d20();
|
||||
if(!PRCMySavingThrow(SAVING_THROW_REFLEX, oTarget, nDC))
|
||||
{
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectStunned(), oTarget, RoundsToSeconds(d4() + 1));
|
||||
if(!PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC2))
|
||||
{
|
||||
int nDur = d4() - 1;
|
||||
nDur = nDur ? nDur : 1;
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectParalyze(), oTarget, RoundsToSeconds(nDur));
|
||||
}
|
||||
}
|
||||
}
|
||||
oTarget = MyNextObjectInShape(SHAPE_SPHERE, fRange, lLoc, OBJECT_TYPE_CREATURE);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user