void main()
{
if(GetIsInCombat(OBJECT_SELF))
  {
  //Make sure attack target is within range of a touch melee attack
  object oPC = GetAttackTarget(OBJECT_SELF);
  if ((GetIsPC(oPC))&&(GetDistanceToObject(oPC) < 2.0))
   {
   //Attempt to swallow PC whole
   if(TouchAttackMelee(oPC) > 0)
    {
    //Swallow PC Whole on Critical Hit
    object oTarget = GetWaypointByTag("WP_Stomach");
    location lTarget = GetLocation(oTarget);
    if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
    SetLocalLocation(oPC, "ls_stored_loc", GetLocation(oPC));
    AssignCommand(oPC, ClearAllActions());
    AssignCommand(oPC, ActionJumpToLocation(lTarget));
    }
   }
  }
}
