void main()
{
    // The exiting object
    object oExit = GetExitingObject();

    // Remove all temporary effects from the exiting object
    RemoveTemporaryEffects(oExit);
}

void RemoveTemporaryEffects(object oTarget)
{
    effect eEffect = GetFirstEffect(oTarget);

    while (GetIsEffectValid(eEffect))
    {
        if (GetEffectDurationType(eEffect) == DURATION_TYPE_TEMPORARY)
        {
            RemoveEffect(oTarget, eEffect);
        }
        eEffect = GetNextEffect(oTarget);
    }
}
