What is a good way to have an AI character damage a level object?

I’m trying to do this in blueprint right now. To be clear, functionally it works but it doesn’t look great. Imagine you want a an AI character to chop down a tree, I have an overlap on the tree and on begin overlap, we’ll check to see if the thing we overlapped with is the tree, and I stop the active movement, and play an animation to damage the object. As of right now, I’m checking to see if the Axe is overlapping the tree blueprint and if it is, I call a damage tree function within the tree itself with a delay in between each damage to sync with the animation.

My question is, what is a better way to do this without doing it on overlap of the bounding box around the object?