void main()
{
    object oPC = GetLastUsedBy();
    if (GetIsPC(oPC))
        {
        object oToken = GetItemPossessedBy(oPC, "NK_FIREPITTOKEN");
        if (GetIsObjectValid(oToken))
            {
            DestroyObject(oToken, 0.0);
            object oWaypoint = GetWaypointByTag("NK_FIREPITLVL1");
            DelayCommand(0.0, ApplyEffectAtLocation (DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_HEAD_FIRE), GetLocation(oPC)));
            DelayCommand(1.0, AssignCommand(oPC, ActionJumpToObject(oWaypoint)));
            }
        }
}