26 lines
997 B
Plaintext
26 lines
997 B
Plaintext
///Script: cal_explode
|
|
//Author: Albert Shih (Calidarien)
|
|
//Version: v1.0, 2002-06-25
|
|
//Usage: Caller explodes after a delay and damages nearby objects for 2d6 fire
|
|
// damage (Reflex save DC 15)
|
|
//Notes:
|
|
// v1.0: Release version
|
|
// tdh - I changed reflex to 18 and damage to 2d10
|
|
#include "prc_inc_spells"
|
|
|
|
void ExplodeAtLocation(location lTarget, int nDamage, int nSaveDC = 18, float fRadius = 3.) {
|
|
ApplyEffectAtLocation( DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_FIREBALL), lTarget);
|
|
object oObject = GetFirstObjectInShape(SHAPE_SPHERE, fRadius, lTarget);
|
|
do {
|
|
int nDamageAfterSave = PRCGetReflexAdjustedDamage(nDamage, oObject, nSaveDC);
|
|
ApplyEffectToObject( DURATION_TYPE_INSTANT, EffectDamage(nDamageAfterSave, DAMAGE_TYPE_FIRE), oObject);
|
|
} while ((oObject = GetNextObjectInShape(SHAPE_SPHERE, fRadius, lTarget)) != OBJECT_INVALID);
|
|
}
|
|
//
|
|
void main()
|
|
{
|
|
location lSource = GetLocation(OBJECT_SELF);
|
|
DelayCommand(3., ExplodeAtLocation(lSource, d10(2)));
|
|
}
|
|
|