29 lines
1.3 KiB
Plaintext
29 lines
1.3 KiB
Plaintext
|
void main()
|
||
|
{
|
||
|
object oCaster = OBJECT_SELF;
|
||
|
float fDelay;
|
||
|
effect eExplode = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_NATURE);
|
||
|
effect eVis = EffectVisualEffect(VFX_IMP_FLAME_M);
|
||
|
effect eShk = EffectVisualEffect(VFX_FNF_SCREEN_SHAKE);
|
||
|
effect eDam;
|
||
|
location lTarget = GetLocation(OBJECT_SELF);
|
||
|
int bdam = d20(4) + 50;
|
||
|
int pdam = d10(4) + 50;
|
||
|
|
||
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eExplode, lTarget);
|
||
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eShk, lTarget);
|
||
|
object oTarget = GetFirstObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_MEDIUM, lTarget, TRUE, OBJECT_TYPE_CREATURE);
|
||
|
|
||
|
while (GetIsObjectValid(oTarget))
|
||
|
{
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(pdam, DAMAGE_TYPE_PIERCING), oTarget, 0.0f);
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(bdam, DAMAGE_TYPE_FIRE), oTarget, 0.0f);
|
||
|
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
||
|
oTarget = GetNextObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_MEDIUM, lTarget, TRUE, OBJECT_TYPE_CREATURE);
|
||
|
}
|
||
|
ActionCastSpellAtObject(SPELL_CLOUDKILL, OBJECT_SELF, 0);
|
||
|
ActionCastSpellAtObject(SPELL_ACID_FOG, OBJECT_SELF, 0);
|
||
|
CreateObject(OBJECT_TYPE_CREATURE, "LilEye", GetLocation(OBJECT_SELF));
|
||
|
CreateObject(OBJECT_TYPE_CREATURE, "LilEye", GetLocation(OBJECT_SELF));
|
||
|
}
|