Player capture point

Hello all!
So, I have a flag on the map, on begin play its Status is set to Neutral, at least one player must stay in the collision box area (which is a component of the flag mesh) for Xsecs to start Capturing it, if one or more players of a different team overlaps the collision box area the flag stat is set to Contested.
As soon as one or more players of the same team are inside the collision box area, the flag gets into “capturing state” and after Xsecs its state changes to “captured”.

I’m failing b-r-u-t-a-l-l-y try to achieve this and I feel very retarded or probably I am.

I would like to link the blueprint, but actually is such a big mess, commented in my own language, with also dynamic materials change and some parallel useless failed try.
I’ve an enumerate variable FlagStatus with four states: Neutral, Contested, Captured by Player and Captured by AI (changed initial scope for easier debug I thought).
Flag starts neutral state, I populate an array with SET overlapping Actors from Get Overlapping Actors with Class filter to Actor.
I check if there is only one overlapping actor, check if his class is MyCharacter if true capture it and write captured by player.
If there are 2 overlapping an actor, check if array contains MyCharacter actor if so, contested, else captured by AI, so far seems good.
At this point I become retarded, for these steps I have a tons of items in my blue print and if there are 2 player it stays contested.

Can you please suggest me a better way? I would like to reset everything and restart.
Also, to check if at least an object of type MyCaraters in my overlapping actors array (which may contain also Bot type actor), is it correct to use get all actor of class MyCharacter → foreachloop array element → contains (which his first pin is pinned to the set overlapping actors) then use Branch?

Actually squad variables are not implemented (Swag & Yolo teams lol) or it will cause me more trouble understanding\try to proceed, I just print strings like captured by player, captured by AI or contested. (flag starts neutral).

It should be an easy mini game to play with my brother but I am not able to solve this thing.
A semplify BP screenshot and especially some comments would be veery appreciated, I will print on A3 paper and bow against every morning for a month before going to work.

Sorry for my English and thank you for your time reading the whole wall of text!

bump, still failing :frowning: Can someone help me?