Full text of the script:
void main()
{
float fLength = 100.0;
object oPC = GetEnteringObject();
if(GetIsPC(oPC))
{
SetCameraMode(oPC, CAMERA_MODE_TOP_DOWN);
GestaltCameraTrack (GetObjectByTag("LordPaladinson2"),
20.0, 20.0,
11.0, 50.0,
6.0, 20.0,
oPC, 0);
}
if( (!(GetLocalInt(OBJECT_SELF, "fired") == 1)) && (GetIsPC(GetEnteringObject()) == TRUE) )
{
SetLocalInt(OBJECT_SELF, "fired", 1);
object oPC = GetEnteringObject();
object oLord = GetObjectByTag("LordPaladinson2");
object oJordan = GetObjectByTag("Jordan");
object oArchmage = GetObjectByTag("Archmage");
AssignCommand(oJordan, ActionForceMoveToObject(oLord, TRUE));
DelayCommand(5.0, AssignCommand(oLord, SpeakString("Jordan, report!")));
DelayCommand(10.0, AssignCommand(oJordan, SpeakString("It's bad, my Lord. Much of the city is burning.")));
AssignCommand(oArchmage, ActionForceMoveToObject(GetObjectByTag("wp_archmage_near")));
DelayCommand(15.0, AssignCommand(oArchmage, SpeakString("Lord Peirgieron, this meteor shower was no accident.")));
DelayCommand(20.0, AssignCommand(oLord, SpeakString("What is it Eärind? What do you know?")));
DelayCommand(28.0, AssignCommand(oArchmage, SpeakString("Some force has pulled down these rocks from the sky, and I believe I know why.")));
DelayCommand(36.0, AssignCommand(oLord, SpeakString("Who? Some enemy of ours? Waterdeep burns this night!")));
DelayCommand(42.0, AssignCommand(oArchmage, SpeakString("I believe the devastation was merely a byproduct.")));
DelayCommand(48.0, AssignCommand(oArchmage, SpeakString("Rather it is something within one of the rocks they desired.")));
DelayCommand(54.0, AssignCommand(oLord, SpeakString("What is this thing they seek?")));
DelayCommand(60.0, AssignCommand(oArchmage, SpeakString("I believe it is called the Tear of Selūne, a jewel of great power.")));
DelayCommand(66.0, AssignCommand(oArchmage, SpeakString("We must recover it from its resting place, the heart of Lizard Marsh.")));
DelayCommand(72.0, AssignCommand(oJordan, SpeakString("My Lord, all hands are busy putting out fires and controlling looters.")));
DelayCommand(77.0, AssignCommand(oLord, ActionMoveToObject(oJordan)));
DelayCommand(90.0, AssignCommand(oLord, PlayAnimation(ANIMATION_LOOPING_TALK_FORCEFUL, 1.0, 6.0)));
DelayCommand(78.0, AssignCommand(oLord, SpeakString("Then put out the call, to all who seek fame and fortune.")));
DelayCommand(84.0, AssignCommand(oLord, SpeakString("Offer a great reward for the recovery of this gem.")));
DelayCommand(90.0, AssignCommand(oLord, SpeakString("Whoever seeks it has made a great enemy this day.")));
DelayCommand(96.0, AssignCommand(oJordan, SpeakString("Yes, my Lord.")));
DelayCommand(98.0, AssignCommand(oJordan, ActionForceMoveToObject(GetObjectByTag("wp_inter2_2"), TRUE)));
DelayCommand(fLength + 1.0, ExecuteScript("dc1_inter2_2", oJordan));
}
if((!(GetTag(GetEnteringObject()) == "Jordan")) &&
(!(GetTag(GetEnteringObject()) == "Archmage")) )
{
effect ePolymorph;
object oPC = GetEnteringObject();
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(100), oPC);
ePolymorph = EffectPolymorph(POLYMORPH_TYPE_INVISIBLE);
AssignCommand(GetEnteringObject(), SetCameraFacing(DIRECTION_NORTH));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, ePolymorph, GetEnteringObject(), fLength);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectCutsceneDominated(), GetEnteringObject(), fLength - 1.0);
// object oMember = GetFirstFactionMember(oPC, FALSE);
// while (GetIsObjectValid(oMember))
// {
// ApplyEffectToObject(DURATION_TYPE_TEMPORARY, ePolymorph, oMember, fLength);
// ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectCutsceneDominated(), oMember, fLength);
// oMember = GetNextFactionMember(oPC);
// }
}
}