16 lines
771 B
Plaintext
16 lines
771 B
Plaintext
void ExplodeAtLocation(location lTarget, int nDamage, int nSaveDC = 15, float fRadius = 5.) {
|
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_FIREBALL), lTarget);
|
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_SUMMON_UNDEAD), lTarget);
|
|
|
|
object oObject = GetFirstObjectInShape(SHAPE_SPHERE, fRadius, lTarget);
|
|
do {
|
|
int nDamageAfterSave = GetReflexAdjustedDamage(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(GetObjectByTag("HolyAltar"));
|
|
DelayCommand(0.5, ExplodeAtLocation(lSource, d12(12)));
|
|
}
|