Button Mapping

Out of curiosity can someone post the button mappings for a playstation controller as they are used in jmonkey engine.

Code:
package test;

import com.jme3.app.SimpleApplication;
import com.jme3.input.InputManager;
import com.jme3.input.JoyInput;
import com.jme3.input.Joystick;
import com.jme3.input.controls.ActionListener;
import com.jme3.input.controls.AnalogListener;
import com.jme3.input.controls.JoyAxisTrigger;
import com.jme3.input.controls.JoyButtonTrigger;
import com.jme3.input.controls.Trigger;
import com.jme3.system.AppSettings;

public class TestXbox360Remote extends SimpleApplication implements AnalogListener, ActionListener {

public static void main(String[] args) {
    TestXbox360Remote app = new TestXbox360Remote();
    AppSettings settings = new AppSettings(true);
    settings.setUseJoysticks(true);
    app.setSettings(settings);
    app.start();
}

@Override
public void simpleInitApp() {
    Joystick[] joysticks = inputManager.getJoysticks();
    if (joysticks == null) {
        throw new IllegalStateException("Cannot find any joysticks!");
    }

    String[] temp = new String[xbox360.values().length];
    for(int i=0;i<temp.length;i++){
        xbox360 t = xbox360.values()[i];
        temp[i]=t.toString();
        inputManager.addMapping(t.toString(), t.getTrigger());
    }
    xbox360.set360AxisDeadZone(inputManager);
    inputManager.addListener(this, temp);
}

public void onAnalog(String name, float isPressed, float tpf) {
    // System.out.println(name + " = " + isPressed / tpf);
}

public void onAction(String name, boolean isPressed, float tpf) {
    if (isPressed) {
        System.out.println(name);
    }
}

enum xbox360 {

    A(new JoyButtonTrigger(0, 0)),
    B(new JoyButtonTrigger(0, 1)),
    X(new JoyButtonTrigger(0, 2)),
    Y(new JoyButtonTrigger(0, 3)),
    LeftShoulder(new JoyButtonTrigger(0, 4)),
    LeftTrigger(new JoyAxisTrigger(0, 4, false)),
    RightShoulder(new JoyButtonTrigger(0, 5)),
    RightTrigger(new JoyAxisTrigger(0, 4, true)),
    Back(new JoyButtonTrigger(0, 6)),
    Start(new JoyButtonTrigger(0, 7)),
    LeftStick(new JoyButtonTrigger(0, 8 )),
    LeftThumbstickUp(new JoyAxisTrigger(0, 0, true)),
    LeftThumbstickDown(new JoyAxisTrigger(0, 0, false)),
    LeftThumbstickLeft(new JoyAxisTrigger(0, 1, true)),
    LeftThumbstickRight(new JoyAxisTrigger(0, 1, false)),
    RightStick(new JoyButtonTrigger(0, 9)),
    RightThumbstickUp(new JoyAxisTrigger(0, 2, true)),
    RightThumbstickDown(new JoyAxisTrigger(0, 2, false)),
    RightThumbstickLeft(new JoyAxisTrigger(0, 3, true)),
    RightThumbstickRight(new JoyAxisTrigger(0, 3, false)),
    DPadLeft(new JoyAxisTrigger(0, JoyInput.AXIS_POV_X, true)),
    DpadRight(new JoyAxisTrigger(0, JoyInput.AXIS_POV_X, false)),
    DPadDown(new JoyAxisTrigger(0, JoyInput.AXIS_POV_Y, true)),
    DPadUp(new JoyAxisTrigger(0, JoyInput.AXIS_POV_Y, false));
    private final Trigger trigger;

    xbox360(Trigger trig) {
        this.trigger = trig;

    }

    public Trigger getTrigger() {
        return trigger;
    }

    public static void set360AxisDeadZone(InputManager manager) {
        manager.setAxisDeadZone(0.2f);
    }
}

}

hmm should have probably of used joystick instead either way works. Also is the Deadaxis of roughly 0.2f common?

Code:
package test;

import com.jme3.app.SimpleApplication;
import com.jme3.input.InputManager;
import com.jme3.input.JoyInput;
import com.jme3.input.Joystick;
import com.jme3.input.controls.ActionListener;
import com.jme3.system.AppSettings;

public class TestXbox360Remote extends SimpleApplication implements ActionListener {

public static void main(String[] args) {
    TestXbox360Remote app = new TestXbox360Remote();
    AppSettings settings = new AppSettings(true);
    settings.setUseJoysticks(true);
    app.setSettings(settings);
    app.start();
}

@Override
public void simpleInitApp() {
    Joystick[] joysticks = inputManager.getJoysticks();
    if (joysticks == null) {
        throw new IllegalStateException("Cannot find any joysticks!");
    }

    xbox360.setUpRemote(inputManager.getJoysticks()[0], inputManager);
    inputManager.addListener(this, xbox360.getButtons());
    inputManager.addListener(this, xbox360.getAxis());
}

public void onAction(String name, boolean isPressed, float tpf) {
    if (isPressed) {
        System.out.println(name);
    }
}

enum xbox360 {

    A(0),
    B(1),
    X(2),
    Y(3),
    LeftShoulder(4),
    RightShoulder(5),
    LeftRightTriggerAxis(4),
    Back(6),
    Start(7),
    LeftStick(8),
    LeftThumbstickUpDownAxis(0),
    LeftThumbstickLeftRightAxis(1),
    RightStick(9),
    RightThumbstickUpDownAxis(2),
    RightThumbstickLeftRightAxis(3),
    DPadRightLeftAxis(JoyInput.AXIS_POV_X),
    DPadUpDownAxis(JoyInput.AXIS_POV_Y);
    private final int i;

    xbox360(Integer i) {
        this.i = i;

    }

    private int getID() {
        return i;
    }

    public static void setUpRemote(Joystick js, InputManager manager) {
        for (xbox360 b : xbox360.values()) {
            if (!b.toString().contains("Axis")) {
                js.assignButton(b.toString(), b.getID());
            }
        }

        js.assignAxis("LeftThumbstickDown", "LeftThumbstickUp", js.getYAxisIndex());
        js.assignAxis("LeftThumbstickRight", "LeftThumbstickLeft", js.getXAxisIndex());
        js.assignAxis("RightThumbstickDown", "RightThumbstickUp", RightThumbstickUpDownAxis.getID());
        js.assignAxis("RightThumbstickRight", "RightThumbstickLeft", RightThumbstickLeftRightAxis.getID());
        js.assignAxis("LeftTrigger", "RightTrigger", LeftRightTriggerAxis.getID());
        js.assignAxis("DPadRight", "DPadLeft", JoyInput.AXIS_POV_X);
        js.assignAxis("DPadUp", "DPadDown", JoyInput.AXIS_POV_Y);

        manager.setAxisDeadZone(0.2f);
    }

    public static String[] getButtons() {
        return new String[]{"A", "B", "X", "Y", "LeftShoulder", "RightShoulder", "Back", "Start", "LeftStick", "RightStick"};
    }

    public static String[] getAxis() {
        return new String[]{"LeftThumbstickUp", "LeftThumbstickDown", "LeftThumbstickLeft", "LeftThumbstickRight", "RightThumbstickUp", "RightThumbstickDown",
                    "RightThumbstickLeft", "RightThumbstickRight", "LeftTrigger", "RightTrigger", "DPadLeft", "DPadRight", "DPadUp", "DPadDown"};
    }
}

}