59 lines
1.4 KiB
Plaintext
59 lines
1.4 KiB
Plaintext
|
|
||
|
void main()
|
||
|
{
|
||
|
|
||
|
object oTarget;
|
||
|
object oSpawn;
|
||
|
location lTarget;
|
||
|
|
||
|
// Get the creature who triggered this event.
|
||
|
object oPC = GetEnteringObject();
|
||
|
|
||
|
// Only fire for (real) PCs.
|
||
|
if ( !GetIsPC(oPC) || GetIsDMPossessed(oPC) )
|
||
|
return;
|
||
|
|
||
|
// Only fire once.
|
||
|
if ( GetLocalInt(GetModule(), "DO_ONCE__" + GetTag(OBJECT_SELF)) )
|
||
|
return;
|
||
|
SetLocalInt(GetModule(), "DO_ONCE__" + GetTag(OBJECT_SELF), TRUE);
|
||
|
|
||
|
ClearAllActions();
|
||
|
|
||
|
FadeToBlack(oPC);
|
||
|
|
||
|
// Have the PC perform a sequence of actions.
|
||
|
AssignCommand(oPC, ActionJumpToObject(GetObjectByTag("WP_Spn_rnsh1b")));
|
||
|
|
||
|
FadeFromBlack(oPC);
|
||
|
|
||
|
// Open "inrshdr1".
|
||
|
oTarget = GetObjectByTag("inrshdr1");
|
||
|
AssignCommand(oTarget, ActionOpenDoor(oTarget));
|
||
|
|
||
|
// Open "inrshdr2".
|
||
|
oTarget = GetObjectByTag("inrshdr2");
|
||
|
AssignCommand(oTarget, ActionOpenDoor(oTarget));
|
||
|
|
||
|
// Have text appear over the PC's head.
|
||
|
FloatingTextStringOnCreature("After waiting for a while, Lady Rannarsh arrives.", oPC);
|
||
|
|
||
|
oTarget = GetWaypointByTag("WP_Spn_ulat01");
|
||
|
lTarget = GetLocation(oTarget);
|
||
|
oSpawn = CreateObject(OBJECT_TYPE_CREATURE, "ulat1", lTarget);
|
||
|
|
||
|
oTarget = GetWaypointByTag("WP_Spn_rnsh1");
|
||
|
lTarget = GetLocation(oTarget);
|
||
|
oSpawn = CreateObject(OBJECT_TYPE_CREATURE, "rannarsh1", lTarget);
|
||
|
oTarget = oSpawn;
|
||
|
|
||
|
// Cutscene functions:
|
||
|
SetCutsceneMode(oPC, TRUE);
|
||
|
|
||
|
DelayCommand(3.0, AssignCommand(oTarget, ActionStartConversation(oPC, "")));
|
||
|
|
||
|
DelayCommand(4.5, SetCutsceneMode(oPC, FALSE));
|
||
|
|
||
|
}
|
||
|
|