62 lines
1.5 KiB
Plaintext
62 lines
1.5 KiB
Plaintext
|
|
#include "in_g_cutscene"
|
|
#include "nw_i0_plot"
|
|
|
|
void main()
|
|
|
|
{
|
|
|
|
object oPC = GetPCSpeaker();
|
|
|
|
object oTarget;
|
|
object oSpawn;
|
|
location lTarget;
|
|
object oItemToTake;
|
|
int nInt;
|
|
|
|
oTarget = GetWaypointByTag("WP_Gol");
|
|
lTarget = GetLocation(oTarget);
|
|
oSpawn = CreateObject(OBJECT_TYPE_CREATURE, "golsas4", lTarget);
|
|
|
|
oTarget = oSpawn;
|
|
|
|
//Visual effects can't be applied to waypoints, so if it is a WP
|
|
//the VFX will be applied to the WP's location instead
|
|
|
|
nInt = GetObjectType(oTarget);
|
|
|
|
if (nInt != OBJECT_TYPE_WAYPOINT) DelayCommand(0.5, ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DEATH_WARD), oTarget));
|
|
else DelayCommand(0.5, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DEATH_WARD), GetLocation(oTarget)));
|
|
|
|
oTarget = GetObjectByTag("golsas1");
|
|
DestroyObject(oTarget, 0.0);
|
|
|
|
oTarget = GetObjectByTag("golsas2");
|
|
DestroyObject(oTarget, 0.0);
|
|
|
|
oTarget = GetObjectByTag("golsas3");
|
|
DestroyObject(oTarget, 0.0);
|
|
|
|
oTarget = GetObjectByTag("sas28");
|
|
DestroyObject(oTarget, 10.0);
|
|
|
|
oTarget = GetObjectByTag("goldoor");
|
|
AssignCommand(oTarget, ActionCloseDoor(oTarget));
|
|
|
|
SetLocked(oTarget, TRUE);
|
|
|
|
// Remove items from the player's inventory
|
|
oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "sociallevel");
|
|
if(GetIsObjectValid(oItemToTake) != 0)
|
|
ActionTakeItem(oItemToTake, GetPCSpeaker());
|
|
|
|
PlayOldTheme();
|
|
|
|
object oMUS = GetNearestObject(OBJECT_TYPE_CREATURE, oPC);
|
|
GestaltCameraFade(0.0, oPC, FADE_IN, FADE_SPEED_MEDIUM, 1.0, 0);
|
|
GestaltClearFX(oPC);
|
|
GestaltCameraTrack(0.0, oMUS, 15.0, 45.0, 20.0, 50.0, 1.0, 20.0, oPC, 1, 0);
|
|
|
|
}
|
|
|