generated from Jaysyn/ModuleTemplate
49 lines
1.3 KiB
Plaintext
49 lines
1.3 KiB
Plaintext
void ClearCell(object oWP, float fDelay)
|
|
{ int iLoop = 1;
|
|
object oCreature = GetNearestCreature(CREATURE_TYPE_IS_ALIVE, TRUE, oWP, iLoop);
|
|
|
|
while (GetIsObjectValid(oCreature) && (GetDistanceBetween(oWP, oCreature) < 8.0))
|
|
{ DelayCommand(fDelay, DestroyObject(oCreature));
|
|
iLoop++;
|
|
oCreature = GetNearestCreature(CREATURE_TYPE_IS_ALIVE, TRUE, oWP, iLoop);
|
|
}
|
|
}
|
|
|
|
|
|
void main()
|
|
{
|
|
object oSword = OBJECT_SELF;
|
|
string sCellGroup = GetStringRight(GetTag(oSword), 1);
|
|
object oSwordWP = GetWaypointByTag("WP_ENC_SWORD_" + sCellGroup);
|
|
string sWPTag = "";
|
|
string sSignTag = "";
|
|
object oWP;
|
|
object oSign;
|
|
location lWP;
|
|
effect eHolyStrike = EffectVisualEffect(VFX_FNF_STRIKE_HOLY);
|
|
effect eDisjunction = EffectVisualEffect(VFX_FNF_DISPEL_DISJUNCTION);
|
|
|
|
|
|
int iEnc = 1;
|
|
|
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eDisjunction, GetLocation(oSwordWP));
|
|
|
|
while (iEnc < 13)
|
|
{ sWPTag = "WP_ENC_" + IntToString(iEnc) + sCellGroup;
|
|
oWP = GetWaypointByTag(sWPTag);
|
|
sSignTag = "SIGN_ENC_" + IntToString(iEnc) + sCellGroup;
|
|
oSign = GetObjectByTag(sSignTag);
|
|
lWP = GetLocation(oWP);
|
|
|
|
SetName(oSign);
|
|
|
|
DelayCommand(1.0f, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eHolyStrike, lWP));
|
|
|
|
ClearCell(oWP, 1.5f);
|
|
DelayCommand(3.0f, ClearCell(oWP, 0.0f));
|
|
|
|
iEnc++;
|
|
}
|
|
}
|
|
|