/**
 * ***************************************************************************** Copyright 2011 See
 * AUTHORS file.
 *
 * <p>Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
 * except in compliance with the License. You may obtain a copy of the License at
 *
 * <p>http://www.apache.org/licenses/LICENSE-2.0
 *
 * <p>Unless required by applicable law or agreed to in writing, software distributed under the
 * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing permissions and
 * limitations under the License.
 * ****************************************************************************
 */
package codes.brick.common.controllers;

import com.badlogic.gdx.controllers.Controller;
import com.badlogic.gdx.utils.SharedLibraryLoader;

/**
 * Mappings for the Xbox series of controllers. Works only on desktop so far. See <a
 * href="https://upload.wikimedia.org/wikipedia/commons/thumb/2/2c/360_controller.svg/450px-360_controller.svg.png">this
 * image</a> which describes each button and axes. All codes are for buttons expect the L_STICK_XXX,
 * R_STICK_XXX, L_TRIGGER and R_TRIGGER codes, which are axes.
 *
 * @author badlogic
 */
public class Xbox {
  // Buttons
  public static final int A;
  public static final int B;
  public static final int X;
  public static final int Y;
  public static final int GUIDE;
  public static final int L_BUMPER;
  public static final int R_BUMPER;
  public static final int BACK;
  public static final int START;
  public static final int DPAD_UP;
  public static final int DPAD_DOWN;
  public static final int DPAD_LEFT;
  public static final int DPAD_RIGHT;
  public static final int L_STICK;
  public static final int R_STICK;

  // Axes
  /** left trigger, -1 if not pressed, 1 if pressed. * */
  public static final int L_TRIGGER;
  /** right trigger, -1 if not pressed, 1 if pressed. * */
  public static final int R_TRIGGER;
  /** left stick vertical axis, -1 if up, 1 if down. * */
  public static final int L_STICK_VERTICAL_AXIS;
  /** left stick horizontal axis, -1 if left, 1 if right. * */
  public static final int L_STICK_HORIZONTAL_AXIS;
  /** right stick vertical axis, -1 if up, 1 if down. * */
  public static final int R_STICK_VERTICAL_AXIS;
  /** right stick horizontal axis, -1 if left, 1 if right. * */
  public static final int R_STICK_HORIZONTAL_AXIS;

  static {
    if (SharedLibraryLoader.isWindows) {
      A = 0;
      B = -1;
      X = 3;
      Y = 2;
      GUIDE = -1;
      L_BUMPER = -1;
      R_BUMPER = -1;
      BACK = -1;
      START = 7;
      DPAD_UP = -1;
      DPAD_DOWN = -1;
      DPAD_LEFT = -1;
      DPAD_RIGHT = -1;
      L_TRIGGER = -1;
      R_TRIGGER = -1;
      L_STICK_VERTICAL_AXIS = -1;
      L_STICK_HORIZONTAL_AXIS = 0;
      L_STICK = -1;
      R_STICK_VERTICAL_AXIS = -1;
      R_STICK_HORIZONTAL_AXIS = -1;
      R_STICK = -1;
    } else if (SharedLibraryLoader.isLinux) {
      A = 0;
      B = 1;
      X = 2;
      Y = 3;
      GUIDE = 8;
      L_BUMPER = 4;
      R_BUMPER = 5;
      BACK = 6;
      START = 7;
      DPAD_UP = -1;
      DPAD_DOWN = -1;
      DPAD_LEFT = -1;
      DPAD_RIGHT = -1;
      L_TRIGGER = 2;
      R_TRIGGER = 5;
      L_STICK_VERTICAL_AXIS = 1;
      L_STICK_HORIZONTAL_AXIS = 0;
      L_STICK = 9;
      R_STICK_VERTICAL_AXIS = 4;
      R_STICK_HORIZONTAL_AXIS = 3;
      R_STICK = 10;
    } else if (SharedLibraryLoader.isMac) {
      A = 11;
      B = 12;
      X = 13;
      Y = 14;
      GUIDE = 10;
      L_BUMPER = 8;
      R_BUMPER = 9;
      BACK = 5;
      START = 4;
      DPAD_UP = 0;
      DPAD_DOWN = 1;
      DPAD_LEFT = 2;
      DPAD_RIGHT = 3;
      L_TRIGGER = 0;
      R_TRIGGER = 1;
      L_STICK_VERTICAL_AXIS = 3;
      L_STICK_HORIZONTAL_AXIS = 2;
      L_STICK = -1;
      R_STICK_VERTICAL_AXIS = 5;
      R_STICK_HORIZONTAL_AXIS = 4;
      R_STICK = -1;
    } else {
      A = -1;
      B = -1;
      X = -1;
      Y = -1;
      GUIDE = -1;
      L_BUMPER = -1;
      R_BUMPER = -1;
      L_TRIGGER = -1;
      R_TRIGGER = -1;
      BACK = -1;
      START = -1;
      DPAD_UP = -1;
      DPAD_DOWN = -1;
      DPAD_LEFT = -1;
      DPAD_RIGHT = -1;
      L_STICK_VERTICAL_AXIS = -1;
      L_STICK_HORIZONTAL_AXIS = -1;
      L_STICK = -1;
      R_STICK_VERTICAL_AXIS = -1;
      R_STICK_HORIZONTAL_AXIS = -1;
      R_STICK = -1;
    }
  }

  /**
   * Determines if a controller is an Xbox controller (based on name.)
   *
   * @return whether the {@link Controller} is an Xbox controller
   */
  public static boolean isXboxController(Controller controller) {
    return (controller.getName().contains("Xbox") || controller.getName().contains("X-box"));
  }
}

@@ -755,16 +755,17 @@
 ***%0A */%0A
+%0A
 package 

Fix style