/////////////////////////////////////////////////////////
// Brittlebone On-death
// prc_evnt_brtbn.nss
/////////////////////////////////////////////////////////
/*Brittlebone: This unguent must be spread over a set of
bones before animation as a skeleton. The ointment reduces
the skeleton’s natural armor by 2 points (to a minimum of 0),
but when the skeleton is destroyed, its bones splinter and fl y
apart, sending shards in all directions. Any creature within
the skeleton’s reach takes 1 point of piercing damage per HD
of the skeleton (Reflex DC 15 half; minimum 1 point).
*/

#include "prc_inc_spells"

void main()
{
        object oSkell = GetLastBeingDied();
        object oTarget = MyFirstObjectInShape(SHAPE_SPHERE, FeetToMeters(10.0), GetLocation(oSkell), TRUE, OBJECT_TYPE_CREATURE | OBJECT_TYPE_PLACEABLE | OBJECT_TYPE_DOOR);
        int nDam = GetHitDice(oSkell);
        
        while(GetIsObjectValid(oTarget))
        {
                if(PRCMySavingThrow(SAVING_THROW_REFLEX, oTarget, 15, SAVING_THROW_TYPE_NONE))
                {
                        nDam = nDam / 2;
                }
                
                ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(nDam, DAMAGE_TYPE_PIERCING), oTarget);
                
                oTarget = MyNextObjectInShape(SHAPE_SPHERE, FeetToMeters(10.0), GetLocation(oSkell), TRUE, OBJECT_TYPE_CREATURE | OBJECT_TYPE_PLACEABLE | OBJECT_TYPE_DOOR);
        }
}