PoA_PRC8/_module/nss/ac_teleportation.nss

49 lines
1.1 KiB
Plaintext
Raw Permalink Normal View History

2022-10-07 14:20:31 -04:00
void main()
{
object oPC;
object oTarget;
oPC = GetItemActivator();
int nInt;
nInt = GetObjectType(oPC);
effect eEffect;
eEffect = EffectVisualEffect(VFX_FNF_SUMMON_CELESTIAL);
if (nInt != OBJECT_TYPE_WAYPOINT)
DelayCommand(4.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oPC));
else
DelayCommand(4.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eEffect, GetLocation(oPC)));
nInt = GetObjectType(oPC);
eEffect = EffectVisualEffect(VFX_IMP_TORNADO);
if (nInt != OBJECT_TYPE_WAYPOINT)
DelayCommand(8.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oPC));
else
DelayCommand(9.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eEffect, GetLocation(oPC)));
location lTarget;
oTarget = GetWaypointByTag("startpoint");
lTarget = GetLocation(oTarget);
if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
SetLocalLocation(oPC, "ls_stored_loc", GetLocation(oPC));
DelayCommand(10.0, AssignCommand(oPC, ClearAllActions()));
DelayCommand(13.0, AssignCommand(oPC, ActionJumpToLocation(lTarget)));
eEffect = EffectVisualEffect(VFX_IMP_UNSUMMON);
DelayCommand(10.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oPC));
}