23 lines
1.3 KiB
Plaintext
23 lines
1.3 KiB
Plaintext
void main()
|
|
{
|
|
object oPc = GetLastDamager(OBJECT_SELF);
|
|
if(GetLocalInt(OBJECT_SELF, "Hitted") == 0)
|
|
{
|
|
SpeakString("*Red Dragon's skin starts to burn you!*", TALKVOLUME_TALK);
|
|
effect eVisual = EffectVisualEffect(VFX_DUR_GLOW_RED, FALSE);
|
|
effect eVisual2 = EffectVisualEffect(VFX_COM_HIT_FIRE, FALSE);
|
|
effect eBurn = EffectDamage(30, DAMAGE_TYPE_FIRE, DAMAGE_POWER_NORMAL);
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eVisual, oPc, 10.0f);
|
|
AssignCommand(OBJECT_SELF, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eVisual2, GetLocation(oPc), 0.0f));
|
|
DelayCommand(4.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVisual2, oPc, 0.0f));
|
|
DelayCommand(4.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eBurn, oPc, 0.0f));
|
|
DelayCommand(7.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVisual2, oPc, 0.0f));
|
|
DelayCommand(7.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eBurn, oPc, 0.0f));
|
|
DelayCommand(10.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVisual2, oPc, 0.0f));
|
|
DelayCommand(10.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eBurn, oPc, 0.0f));
|
|
SetLocalInt(OBJECT_SELF, "Hitted", 1);
|
|
|
|
DelayCommand(20.0f, SetLocalInt(OBJECT_SELF, "Hitted", 0));
|
|
}
|
|
}
|