How about Player#getTarget().getTarget() == Players.getLocal() ?
(Just a thought)
If the players' target's target is the player then they are in combat with eachother, right?
The plane is working for Circular and Polygonal, but not for Normal/Rectangle, not that much of a problem as it's only 2 coordinates to change in the generated code ;)