PoA_PRC8/_module/nss/port_pc_2_lokidg.nss

36 lines
966 B
Plaintext
Raw Permalink Normal View History

2022-10-07 14:20:31 -04:00
//Put this on action taken in the conversation editor
void main()
{
object oPC = GetPCSpeaker();
object oTarget;
oTarget = oPC;
DelayCommand(5.0, ActionCastSpellAtObject(SPELL_BANISHMENT, oTarget, METAMAGIC_ANY, TRUE, 0, PROJECTILE_PATH_TYPE_DEFAULT, FALSE));
location lTarget;
oTarget = GetWaypointByTag("lokis_way");
lTarget = GetLocation(oTarget);
//only do the jump if the location is valid.
//though not flawless, we just check if it is in a valid area.
//the script will stop if the location isn't valid - meaning that
//nothing put after the teleport will fire either.
//the current location won't be stored, either
if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
DelayCommand(7.0, AssignCommand(oPC, ClearAllActions()));
DelayCommand(10.0, AssignCommand(oPC, ActionJumpToLocation(lTarget)));
effect eEffect;
eEffect = EffectVisualEffect(VFX_IMP_UNSUMMON);
DelayCommand(7.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oPC));
}