private Buttons GetVirtualButtons () {
var result = Buttons.buttons;
var sticks = ThumbSticks;
if (sticks.Left.X < 0)
result |= Microsoft.Xna.Framework.Input.Buttons.LeftThumbstickLeft;
else if (sticks.Left.X > 0)
result |= Microsoft.Xna.Framework.Input.Buttons.LeftThumbstickRight;
if (sticks.Left.Y < 0)
result |= Microsoft.Xna.Framework.Input.Buttons.LeftThumbstickDown;
else if (sticks.Left.Y > 0)
result |= Microsoft.Xna.Framework.Input.Buttons.LeftThumbstickUp;
if (sticks.Right.X < 0)
result |= Microsoft.Xna.Framework.Input.Buttons.RightThumbstickLeft;
else if (sticks.Right.X > 0)
result |= Microsoft.Xna.Framework.Input.Buttons.RightThumbstickRight;
if (sticks.Right.Y < 0)
result |= Microsoft.Xna.Framework.Input.Buttons.RightThumbstickDown;
else if (sticks.Right.Y > 0)
result |= Microsoft.Xna.Framework.Input.Buttons.RightThumbstickUp;
return result;
}