void main()
{

object oPC = GetPCSpeaker();

object oHench1 = GetHenchman(oPC, 1);
object oHench2 = GetHenchman(oPC, 2);
object oFamiliar = GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oPC);
object oCompanion = GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION, oPC);
object oSummoned = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPC);
object oDominated = GetAssociate(ASSOCIATE_TYPE_DOMINATED, oPC);

if (GetIsObjectValid(oHench1))
 {
 SetLocalInt(oPC, "HenchRope", 1);
 RemoveHenchman(oPC, oHench1);
 }
if (GetIsObjectValid(oHench2))
 {
 SetLocalInt(oPC, "HenchRope", 1);
 RemoveHenchman(oPC, oHench2);
 }
if (GetIsObjectValid(oFamiliar)) ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectDeath(), oFamiliar);
if (GetIsObjectValid(oCompanion)) ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectDeath(), oCompanion);
if (GetIsObjectValid(oSummoned)) RemoveSummonedAssociate(oPC, oSummoned);
if (GetIsObjectValid(oDominated)) ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectDeath(), oDominated);

object oTarget;
location lTarget;
oTarget = GetWaypointByTag("WP_DeepPit");

lTarget = GetLocation(oTarget);

if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;

AssignCommand(oPC, ClearAllActions());

FadeToBlack(oPC, FADE_SPEED_FAST);

DelayCommand(2.0, AssignCommand(oPC, ActionJumpToLocation(lTarget)));

}

