How to start animation after object is destroyed ?

So I have a dialogue and when it is finished it is destroyed. I want to start an animation after the dialogue is destroyed. So basically it is character that player talks to and when the dialogue is finished the character runs away. This running away is an animation that I want to play after the dialogue is destroyed and that it would be once.

I have tried and failed, I dont understand why. Example:
//the player enters a 2dcollider on which the dialogue is activated
//here I am trying to start animation when object is destroyed. Instead of it the animation plays on a loop when I enter the collider

void OnTriggerEnter2D(Collider2D other)
{
    if(other.name =="Player")
    {
        theTextBox.ReloadScript(theText);
        theTextBox.currentLine = startLine;
        theTextBox.endAtLine = endLine;
        theTextBox.EnableTextBox();
            if (destroyWhenActivated)
        {
            Destroy(gameObject);
        }
    }
}
void OnDestroy()     
{
        animator2.SetBool("PlayRun", true);
}

void OnTriggerExit2D(Collider2D other)
{
            theTextBox.DisableTextBox();
}

first of all your telling the script to destroy the object if (destroyWhenActivated) is true as soon as the player triggers it which means if the bool was true it will destroy the object immediately causing OnDestroy to trigger the animator2 as for the looping, check if the “loop” checkbox is set to true on your animation.
depending on how your game works you might want to launch the Destroy(gameObject) whenever the play press “continue” on your dialog or if the player do not control the text as soon as the last sentence is finished.