Probably the easier way is to mark that certain angle criteria has been met. I wouldnt say is the best way, but probably easiest. Even if some one `cheats` it would be less effective than just doing a circle.
key anlges. There are the angles that when you analog stick is between. Then trigger a check so it doesn`t need to be done again.
-10 - +10 : right
-80 - -100 : up
-170- +170 : left
+80 - +100 : down
* I might be mistaken with up and down :P
I believe your also looking for
angle(0, 0, Gamepad.Axis(0,0), gamepad.axis(0,1))
the first xy in angle represents the center of position to determine the angle. Where the second XY represents the angle. So you want your gamepad as the second values. Since your using your controller, and not world space. The first XY would be 0/0(center of the world)
good luck :)