Fixed accelerometer joystick, added on-screen keyboard DPAD acting as a joystick
This commit is contained in:
@@ -22,21 +22,17 @@ class AccelerometerReader implements SensorEventListener {
|
||||
private SensorManager _manager = null;
|
||||
|
||||
public AccelerometerReader(Activity context) {
|
||||
_manager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
|
||||
if( _manager != null )
|
||||
System.out.println("libSDL: accelerometer start required: " + String.valueOf(Globals.UseAccelerometerAsArrowKeys));
|
||||
if( Globals.UseAccelerometerAsArrowKeys )
|
||||
{
|
||||
if( Globals.UseAccelerometerAsArrowKeys )
|
||||
_manager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
|
||||
if( _manager != null )
|
||||
{
|
||||
System.out.println("libSDL: starting accelerometer");
|
||||
// TODO: orientation allows for 3rd axis - azimuth, but it will be way too hard to the user
|
||||
// if( ! _manager.registerListener(this, _manager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_GAME) )
|
||||
_manager.registerListener(this, _manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_GAME);
|
||||
}
|
||||
else
|
||||
{
|
||||
if( Globals.AppUsesJoystick )
|
||||
{
|
||||
if( ! _manager.registerListener(this, _manager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_GAME) )
|
||||
_manager.registerListener(this, _manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_GAME);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,9 +51,9 @@ class AccelerometerReader implements SensorEventListener {
|
||||
// TODO: it feels better for me to use tilt as X value instead of intuitive horizontal phone orientation
|
||||
// because then I can hold device comfortably, we need another user-configurable option for that
|
||||
// nativeOrientation(event.values[1], -event.values[2], event.values[0]); // Comfortable setting
|
||||
nativeAccelerometer(event.values[1], -event.values[0], event.values[2]); // Intuitive setting
|
||||
nativeAccelerometer(-event.values[1], -event.values[0], event.values[2]); // Intuitive setting
|
||||
else
|
||||
nativeAccelerometer(event.values[0], event.values[1], event.values[2]);
|
||||
nativeAccelerometer(event.values[0], event.values[1], event.values[2]); // TODO: not tested!
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user