2012-02-19 11:26:27 +00:00
|
|
|
using ANX.Framework;
|
2012-08-09 09:45:04 +00:00
|
|
|
using ANX.Framework.Input;
|
|
|
|
using ANX.Framework.NonXNA;
|
2012-01-20 15:17:50 +00:00
|
|
|
|
2012-08-09 09:45:04 +00:00
|
|
|
// This file is part of the ANX.Framework created by the
|
|
|
|
// "ANX.Framework developer group" and released under the Ms-PL license.
|
|
|
|
// For details see: http://anxframework.codeplex.com/license
|
2012-01-20 15:17:50 +00:00
|
|
|
|
|
|
|
namespace ANX.InputDevices.Test
|
|
|
|
{
|
2012-08-09 09:45:04 +00:00
|
|
|
public class GamePad : IGamePad
|
|
|
|
{
|
|
|
|
public GamePadCapabilities GetCapabilities(PlayerIndex playerIndex)
|
|
|
|
{
|
|
|
|
return new GamePadCapabilities();
|
|
|
|
}
|
|
|
|
|
|
|
|
public GamePadState GetState(PlayerIndex playerIndex, out bool isConnected,
|
|
|
|
out int packetNumber)
|
|
|
|
{
|
|
|
|
GamePadState gamepad;
|
|
|
|
switch (playerIndex)
|
|
|
|
{
|
|
|
|
case PlayerIndex.One:
|
|
|
|
isConnected = true;
|
|
|
|
packetNumber = 0;
|
|
|
|
gamepad = new GamePadState(new Vector2(100, 100), new Vector2(100, 100),
|
|
|
|
0.5f, 0.5f, Buttons.A, Buttons.B);
|
|
|
|
break;
|
|
|
|
|
|
|
|
case PlayerIndex.Two:
|
|
|
|
isConnected = true;
|
|
|
|
packetNumber = 0;
|
|
|
|
gamepad = new GamePadState(new Vector2(200, 200), new Vector2(100, 100),
|
|
|
|
0.5f, 0.5f, Buttons.A, Buttons.BigButton);
|
|
|
|
break;
|
|
|
|
|
|
|
|
case PlayerIndex.Three:
|
|
|
|
isConnected = true;
|
|
|
|
packetNumber = 0;
|
|
|
|
gamepad = new GamePadState(new Vector2(100, 100), new Vector2(100, 100),
|
|
|
|
0.5f, 0.5f, Buttons.A, Buttons.X);
|
|
|
|
break;
|
|
|
|
|
|
|
|
case PlayerIndex.Four:
|
|
|
|
default:
|
|
|
|
isConnected = false;
|
|
|
|
packetNumber = 0;
|
|
|
|
gamepad = new GamePadState();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
return gamepad;
|
|
|
|
}
|
|
|
|
|
|
|
|
public GamePadState GetState(PlayerIndex playerIndex, GamePadDeadZone deadZoneMode,
|
|
|
|
out bool isConnected, out int packetNumber)
|
|
|
|
{
|
|
|
|
return this.GetState(playerIndex, out isConnected, out packetNumber);
|
|
|
|
}
|
2012-02-19 11:26:27 +00:00
|
|
|
|
2012-08-09 09:45:04 +00:00
|
|
|
public bool SetVibration(PlayerIndex playerIndex, float leftMotor, float rightMotor)
|
|
|
|
{
|
|
|
|
switch (playerIndex)
|
|
|
|
{
|
|
|
|
case PlayerIndex.One:
|
|
|
|
return (leftMotor == 0.5f && rightMotor == 0.5f);
|
2012-01-20 15:17:50 +00:00
|
|
|
|
2012-08-09 09:45:04 +00:00
|
|
|
case PlayerIndex.Two:
|
|
|
|
return (leftMotor == 0.7f && rightMotor == 0.5f);
|
2012-01-20 15:17:50 +00:00
|
|
|
|
2012-08-09 09:45:04 +00:00
|
|
|
case PlayerIndex.Three:
|
|
|
|
return (leftMotor == -0.5f && rightMotor == 0.7f);
|
2012-01-20 15:17:50 +00:00
|
|
|
|
2012-08-09 09:45:04 +00:00
|
|
|
case PlayerIndex.Four:
|
|
|
|
return (leftMotor == 0.5f && rightMotor == 0.5f);
|
|
|
|
}
|
2012-02-19 11:26:27 +00:00
|
|
|
|
2012-08-09 09:45:04 +00:00
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
2012-01-20 15:17:50 +00:00
|
|
|
}
|