Battledale_PRC8/_module/nss/fr_iwd_spiritsum.nss

39 lines
1.7 KiB
Plaintext
Raw Permalink Normal View History

void main()
{
float fSpeed=1.0;
location llocation = GetLocation(GetObjectByTag("fr_iwd_spirit_inv"));
object oTarget = GetObjectByTag("fr_iwd_spirit_inv");
object oAltar = GetObjectByTag("fr_iwd_darkaltar");
object oSumm = GetObjectByTag("fr_iwd_spirit_summ");
effect eBoom = EffectVisualEffect(VFX_IMP_DEATH_WARD, FALSE);
effect eBeam = EffectBeam(VFX_BEAM_SILENT_COLD, OBJECT_SELF, BODY_NODE_CHEST);
if((GetLocalInt(oTarget, "Chk")==0))
{
if ((GetItemPossessedBy(oAltar, "tri_manticoreheart") != OBJECT_INVALID) &&
(GetItemPossessedBy(oAltar, "fr_iwd_goat") != OBJECT_INVALID) &&
(GetItemPossessedBy(oAltar, "fr_iwd_snake") != OBJECT_INVALID))
{
object oD1 = GetItemPossessedBy(oAltar, "tri_manticoreheart");
object oD2 = GetItemPossessedBy(oAltar, "fr_iwd_goat");
object oD3 = GetItemPossessedBy(oAltar, "fr_iwd_snake");
DestroyObject(oD1);
DestroyObject(oD2);
DestroyObject(oD3);
SetLocalInt(oTarget,"Chk", 1);
DelayCommand(1.0, SoundObjectPlay(GetNearestObjectByTag("Ghosts")));
DelayCommand(1.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBeam, oTarget, 4.0));
DelayCommand(2.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBoom, oTarget, 5.0));
AssignCommand(oSumm, DelayCommand(2.0,ActionPlayAnimation(ANIMATION_PLACEABLE_ACTIVATE)));
DelayCommand(5.0, ActionInteractObject(CreateObject(OBJECT_TYPE_CREATURE, "fr_iwd_spirit", llocation, TRUE)));
DelayCommand(5.0, AssignCommand(GetObjectByTag("fr_iwd_spirit"), SpeakString("Speak to me, summoner.", TALKVOLUME_TALK)));
DelayCommand(6.0, PlaySound("vs_nx0headm_hi"));
}
}
}