make GameButton an enum
This commit is contained in:
+111
-131
@@ -16,24 +16,7 @@ enum GameController
|
||||
};
|
||||
#define FOREACH_GameController( gc ) FOREACH_ENUM( GameController, gc )
|
||||
|
||||
typedef int GameButton;
|
||||
RString GameButtonToString( const InputScheme* pInputs, GameButton i );
|
||||
RString GameButtonToLocalizedString( const InputScheme* pInputs, GameButton i );
|
||||
GameButton StringToGameButton( const InputScheme* pInputs, const RString& s );
|
||||
|
||||
enum GameButtonType
|
||||
{
|
||||
GameButtonType_Step,
|
||||
GameButtonType_Fret,
|
||||
GameButtonType_Strum,
|
||||
GameButtonType_INVALID
|
||||
};
|
||||
|
||||
const GameButton NUM_GameButton = 20;
|
||||
const GameButton GameButton_Invalid = NUM_GameButton+1;
|
||||
#define FOREACH_GameButton( gb ) FOREACH_ENUM( GameButton, gb )
|
||||
|
||||
enum // common GameButtons
|
||||
enum GameButton
|
||||
{
|
||||
GAME_BUTTON_MENULEFT,
|
||||
GAME_BUTTON_MENURIGHT,
|
||||
@@ -44,130 +27,127 @@ enum // common GameButtons
|
||||
GAME_BUTTON_BACK,
|
||||
GAME_BUTTON_COIN,
|
||||
GAME_BUTTON_OPERATOR,
|
||||
GAME_BUTTON_NEXT
|
||||
GAME_BUTTON_CUSTOM_01,
|
||||
GAME_BUTTON_CUSTOM_02,
|
||||
GAME_BUTTON_CUSTOM_03,
|
||||
GAME_BUTTON_CUSTOM_04,
|
||||
GAME_BUTTON_CUSTOM_05,
|
||||
GAME_BUTTON_CUSTOM_06,
|
||||
GAME_BUTTON_CUSTOM_07,
|
||||
GAME_BUTTON_CUSTOM_08,
|
||||
GAME_BUTTON_CUSTOM_09,
|
||||
GAME_BUTTON_CUSTOM_10,
|
||||
GAME_BUTTON_CUSTOM_11,
|
||||
GAME_BUTTON_CUSTOM_12,
|
||||
GAME_BUTTON_CUSTOM_13,
|
||||
GAME_BUTTON_CUSTOM_14,
|
||||
GAME_BUTTON_CUSTOM_15,
|
||||
GAME_BUTTON_CUSTOM_16,
|
||||
GAME_BUTTON_CUSTOM_17,
|
||||
GAME_BUTTON_CUSTOM_18,
|
||||
GAME_BUTTON_CUSTOM_19,
|
||||
|
||||
NUM_GameButton,
|
||||
GameButton_Invalid
|
||||
};
|
||||
|
||||
enum // DanceButtons
|
||||
{
|
||||
DANCE_BUTTON_LEFT = GAME_BUTTON_NEXT,
|
||||
DANCE_BUTTON_RIGHT,
|
||||
DANCE_BUTTON_UP,
|
||||
DANCE_BUTTON_DOWN,
|
||||
DANCE_BUTTON_UPLEFT,
|
||||
DANCE_BUTTON_UPRIGHT,
|
||||
NUM_DANCE_BUTTONS, // leave this at the end
|
||||
};
|
||||
RString GameButtonToString( const InputScheme* pInputs, GameButton i );
|
||||
RString GameButtonToLocalizedString( const InputScheme* pInputs, GameButton i );
|
||||
GameButton StringToGameButton( const InputScheme* pInputs, const RString& s );
|
||||
|
||||
enum // PumpButtons
|
||||
{
|
||||
PUMP_BUTTON_UPLEFT = GAME_BUTTON_NEXT,
|
||||
PUMP_BUTTON_UPRIGHT,
|
||||
PUMP_BUTTON_CENTER,
|
||||
PUMP_BUTTON_DOWNLEFT,
|
||||
PUMP_BUTTON_DOWNRIGHT,
|
||||
NUM_PUMP_BUTTONS, // leave this at the end
|
||||
};
|
||||
#define FOREACH_GameButton( gb ) FOREACH_ENUM( GameButton, gb )
|
||||
|
||||
enum // EZ2Buttons
|
||||
{
|
||||
EZ2_BUTTON_FOOTUPLEFT = GAME_BUTTON_NEXT,
|
||||
EZ2_BUTTON_FOOTUPRIGHT,
|
||||
EZ2_BUTTON_FOOTDOWN,
|
||||
EZ2_BUTTON_HANDUPLEFT,
|
||||
EZ2_BUTTON_HANDUPRIGHT,
|
||||
EZ2_BUTTON_HANDLRLEFT,
|
||||
EZ2_BUTTON_HANDLRRIGHT,
|
||||
NUM_EZ2_BUTTONS, // leave this at the end
|
||||
};
|
||||
#define GAME_BUTTON_NEXT GAME_BUTTON_CUSTOM_01
|
||||
|
||||
enum // ParaButtons
|
||||
{
|
||||
PARA_BUTTON_LEFT = GAME_BUTTON_NEXT,
|
||||
PARA_BUTTON_UPLEFT,
|
||||
PARA_BUTTON_UP,
|
||||
PARA_BUTTON_UPRIGHT,
|
||||
PARA_BUTTON_RIGHT,
|
||||
NUM_PARA_BUTTONS, // leave this at the end
|
||||
};
|
||||
#define DANCE_BUTTON_LEFT GAME_BUTTON_CUSTOM_01
|
||||
#define DANCE_BUTTON_RIGHT GAME_BUTTON_CUSTOM_02
|
||||
#define DANCE_BUTTON_UP GAME_BUTTON_CUSTOM_03
|
||||
#define DANCE_BUTTON_DOWN GAME_BUTTON_CUSTOM_04
|
||||
#define DANCE_BUTTON_UPLEFT GAME_BUTTON_CUSTOM_05
|
||||
#define DANCE_BUTTON_UPRIGHT GAME_BUTTON_CUSTOM_06
|
||||
#define NUM_DANCE_BUTTONS GAME_BUTTON_CUSTOM_07
|
||||
|
||||
enum // 3DDX Buttons
|
||||
{
|
||||
DS3DDX_BUTTON_HANDLEFT = GAME_BUTTON_NEXT,
|
||||
DS3DDX_BUTTON_FOOTDOWNLEFT,
|
||||
DS3DDX_BUTTON_FOOTUPLEFT,
|
||||
DS3DDX_BUTTON_HANDUP,
|
||||
DS3DDX_BUTTON_HANDDOWN,
|
||||
DS3DDX_BUTTON_FOOTUPRIGHT,
|
||||
DS3DDX_BUTTON_FOOTDOWNRIGHT,
|
||||
DS3DDX_BUTTON_HANDRIGHT,
|
||||
NUM_DS3DDX_BUTTONS, // leave this at the end.
|
||||
};
|
||||
#define PUMP_BUTTON_UPLEFT GAME_BUTTON_CUSTOM_01
|
||||
#define PUMP_BUTTON_UPRIGHT GAME_BUTTON_CUSTOM_02
|
||||
#define PUMP_BUTTON_CENTER GAME_BUTTON_CUSTOM_03
|
||||
#define PUMP_BUTTON_DOWNLEFT GAME_BUTTON_CUSTOM_04
|
||||
#define PUMP_BUTTON_DOWNRIGHT GAME_BUTTON_CUSTOM_05
|
||||
#define NUM_PUMP_BUTTONS GAME_BUTTON_CUSTOM_06
|
||||
|
||||
enum // BEAT Buttons
|
||||
{
|
||||
BEAT_BUTTON_KEY1 = GAME_BUTTON_NEXT,
|
||||
BEAT_BUTTON_KEY2,
|
||||
BEAT_BUTTON_KEY3,
|
||||
BEAT_BUTTON_KEY4,
|
||||
BEAT_BUTTON_KEY5,
|
||||
BEAT_BUTTON_KEY6,
|
||||
BEAT_BUTTON_KEY7,
|
||||
BEAT_BUTTON_SCRATCHUP,
|
||||
/* XXX special case: this button is an alias of BEAT_BUTTON_SCRATCHUP for track
|
||||
* matching. */
|
||||
BEAT_BUTTON_SCRATCHDOWN,
|
||||
NUM_BEAT_BUTTONS, // leave this at the end.
|
||||
};
|
||||
#define EZ2_BUTTON_FOOTUPLEFT GAME_BUTTON_CUSTOM_01
|
||||
#define EZ2_BUTTON_FOOTUPRIGHT GAME_BUTTON_CUSTOM_02
|
||||
#define EZ2_BUTTON_FOOTDOWN GAME_BUTTON_CUSTOM_03
|
||||
#define EZ2_BUTTON_HANDUPLEFT GAME_BUTTON_CUSTOM_04
|
||||
#define EZ2_BUTTON_HANDUPRIGHT GAME_BUTTON_CUSTOM_05
|
||||
#define EZ2_BUTTON_HANDLRLEFT GAME_BUTTON_CUSTOM_06
|
||||
#define EZ2_BUTTON_HANDLRRIGHT GAME_BUTTON_CUSTOM_07
|
||||
#define NUM_EZ2_BUTTONS GAME_BUTTON_CUSTOM_08
|
||||
|
||||
enum // ManiaxButtons
|
||||
{
|
||||
MANIAX_BUTTON_HANDUPLEFT = GAME_BUTTON_NEXT,
|
||||
MANIAX_BUTTON_HANDUPRIGHT,
|
||||
MANIAX_BUTTON_HANDLRLEFT,
|
||||
MANIAX_BUTTON_HANDLRRIGHT,
|
||||
NUM_MANIAX_BUTTONS, // leave this at the end
|
||||
};
|
||||
#define PARA_BUTTON_LEFT GAME_BUTTON_CUSTOM_01
|
||||
#define PARA_BUTTON_UPLEFT GAME_BUTTON_CUSTOM_02
|
||||
#define PARA_BUTTON_UP GAME_BUTTON_CUSTOM_03
|
||||
#define PARA_BUTTON_UPRIGHT GAME_BUTTON_CUSTOM_04
|
||||
#define PARA_BUTTON_RIGHT GAME_BUTTON_CUSTOM_05
|
||||
#define NUM_PARA_BUTTONS GAME_BUTTON_CUSTOM_06
|
||||
|
||||
enum // TechnoButtons
|
||||
{
|
||||
TECHNO_BUTTON_LEFT = GAME_BUTTON_NEXT,
|
||||
TECHNO_BUTTON_RIGHT,
|
||||
TECHNO_BUTTON_UP,
|
||||
TECHNO_BUTTON_DOWN,
|
||||
TECHNO_BUTTON_UPLEFT,
|
||||
TECHNO_BUTTON_UPRIGHT,
|
||||
TECHNO_BUTTON_CENTER,
|
||||
TECHNO_BUTTON_DOWNLEFT,
|
||||
TECHNO_BUTTON_DOWNRIGHT,
|
||||
NUM_TECHNO_BUTTONS, // leave this at the end
|
||||
};
|
||||
#define DS3DDX_BUTTON_HANDLEFT GAME_BUTTON_CUSTOM_01
|
||||
#define DS3DDX_BUTTON_FOOTDOWNLEFT GAME_BUTTON_CUSTOM_02
|
||||
#define DS3DDX_BUTTON_FOOTUPLEFT GAME_BUTTON_CUSTOM_03
|
||||
#define DS3DDX_BUTTON_HANDUP GAME_BUTTON_CUSTOM_04
|
||||
#define DS3DDX_BUTTON_HANDDOWN GAME_BUTTON_CUSTOM_05
|
||||
#define DS3DDX_BUTTON_FOOTUPRIGHT GAME_BUTTON_CUSTOM_06
|
||||
#define DS3DDX_BUTTON_FOOTDOWNRIGHT GAME_BUTTON_CUSTOM_07
|
||||
#define DS3DDX_BUTTON_HANDRIGHT GAME_BUTTON_CUSTOM_08
|
||||
#define NUM_DS3DDX_BUTTONS GAME_BUTTON_CUSTOM_09
|
||||
|
||||
enum // PnM Buttons
|
||||
{
|
||||
POPN_BUTTON_LEFT_WHITE = GAME_BUTTON_NEXT,
|
||||
POPN_BUTTON_LEFT_YELLOW,
|
||||
POPN_BUTTON_LEFT_GREEN,
|
||||
POPN_BUTTON_LEFT_BLUE,
|
||||
POPN_BUTTON_RED,
|
||||
POPN_BUTTON_RIGHT_BLUE,
|
||||
POPN_BUTTON_RIGHT_GREEN,
|
||||
POPN_BUTTON_RIGHT_YELLOW,
|
||||
POPN_BUTTON_RIGHT_WHITE,
|
||||
NUM_POPN_BUTTONS, // leave this at the end
|
||||
};
|
||||
#define BEAT_BUTTON_KEY1 GAME_BUTTON_CUSTOM_01
|
||||
#define BEAT_BUTTON_KEY2 GAME_BUTTON_CUSTOM_02
|
||||
#define BEAT_BUTTON_KEY3 GAME_BUTTON_CUSTOM_03
|
||||
#define BEAT_BUTTON_KEY4 GAME_BUTTON_CUSTOM_04
|
||||
#define BEAT_BUTTON_KEY5 GAME_BUTTON_CUSTOM_05
|
||||
#define BEAT_BUTTON_KEY6 GAME_BUTTON_CUSTOM_06
|
||||
#define BEAT_BUTTON_KEY7 GAME_BUTTON_CUSTOM_07
|
||||
#define BEAT_BUTTON_SCRATCHUP GAME_BUTTON_CUSTOM_08
|
||||
#define BEAT_BUTTON_SCRATCHDOWN GAME_BUTTON_CUSTOM_09
|
||||
#define NUM_BEAT_BUTTONS GAME_BUTTON_CUSTOM_10
|
||||
|
||||
enum // LightsButtons
|
||||
{
|
||||
LIGHTS_BUTTON_MARQUEE_UP_LEFT = GAME_BUTTON_NEXT,
|
||||
LIGHTS_BUTTON_MARQUEE_UP_RIGHT,
|
||||
LIGHTS_BUTTON_MARQUEE_LR_LEFT,
|
||||
LIGHTS_BUTTON_MARQUEE_LR_RIGHT,
|
||||
LIGHTS_BUTTON_BUTTONS_LEFT,
|
||||
LIGHTS_BUTTON_BUTTONS_RIGHT,
|
||||
LIGHTS_BUTTON_BASS_LEFT,
|
||||
LIGHTS_BUTTON_BASS_RIGHT,
|
||||
NUM_LIGHTS_BUTTONS, // leave this at the end
|
||||
};
|
||||
#define MANIAX_BUTTON_HANDUPLEFT GAME_BUTTON_CUSTOM_01
|
||||
#define MANIAX_BUTTON_HANDUPRIGHT GAME_BUTTON_CUSTOM_02
|
||||
#define MANIAX_BUTTON_HANDLRLEFT GAME_BUTTON_CUSTOM_03
|
||||
#define MANIAX_BUTTON_HANDLRRIGHT GAME_BUTTON_CUSTOM_04
|
||||
#define NUM_MANIAX_BUTTONS GAME_BUTTON_CUSTOM_05
|
||||
|
||||
#define TECHNO_BUTTON_LEFT GAME_BUTTON_CUSTOM_01
|
||||
#define TECHNO_BUTTON_RIGHT GAME_BUTTON_CUSTOM_02
|
||||
#define TECHNO_BUTTON_UP GAME_BUTTON_CUSTOM_03
|
||||
#define TECHNO_BUTTON_DOWN GAME_BUTTON_CUSTOM_04
|
||||
#define TECHNO_BUTTON_UPLEFT GAME_BUTTON_CUSTOM_05
|
||||
#define TECHNO_BUTTON_UPRIGHT GAME_BUTTON_CUSTOM_06
|
||||
#define TECHNO_BUTTON_CENTER GAME_BUTTON_CUSTOM_07
|
||||
#define TECHNO_BUTTON_DOWNLEFT GAME_BUTTON_CUSTOM_08
|
||||
#define TECHNO_BUTTON_DOWNRIGHT GAME_BUTTON_CUSTOM_09
|
||||
#define NUM_TECHNO_BUTTONS GAME_BUTTON_CUSTOM_10
|
||||
|
||||
#define POPN_BUTTON_LEFT_WHITE GAME_BUTTON_CUSTOM_01
|
||||
#define POPN_BUTTON_LEFT_YELLOW GAME_BUTTON_CUSTOM_02
|
||||
#define POPN_BUTTON_LEFT_GREEN GAME_BUTTON_CUSTOM_03
|
||||
#define POPN_BUTTON_LEFT_BLUE GAME_BUTTON_CUSTOM_04
|
||||
#define POPN_BUTTON_RED GAME_BUTTON_CUSTOM_05
|
||||
#define POPN_BUTTON_RIGHT_BLUE GAME_BUTTON_CUSTOM_06
|
||||
#define POPN_BUTTON_RIGHT_GREEN GAME_BUTTON_CUSTOM_07
|
||||
#define POPN_BUTTON_RIGHT_YELLOW GAME_BUTTON_CUSTOM_08
|
||||
#define POPN_BUTTON_RIGHT_WHITE GAME_BUTTON_CUSTOM_09
|
||||
#define NUM_POPN_BUTTONS GAME_BUTTON_CUSTOM_10
|
||||
|
||||
#define LIGHTS_BUTTON_MARQUEE_UP_LEFT GAME_BUTTON_CUSTOM_01
|
||||
#define LIGHTS_BUTTON_MARQUEE_UP_RIGHT GAME_BUTTON_CUSTOM_02
|
||||
#define LIGHTS_BUTTON_MARQUEE_LR_LEFT GAME_BUTTON_CUSTOM_03
|
||||
#define LIGHTS_BUTTON_MARQUEE_LR_RIGHT GAME_BUTTON_CUSTOM_04
|
||||
#define LIGHTS_BUTTON_BUTTONS_LEFT GAME_BUTTON_CUSTOM_05
|
||||
#define LIGHTS_BUTTON_BUTTONS_RIGHT GAME_BUTTON_CUSTOM_06
|
||||
#define LIGHTS_BUTTON_BASS_LEFT GAME_BUTTON_CUSTOM_07
|
||||
#define LIGHTS_BUTTON_BASS_RIGHT GAME_BUTTON_CUSTOM_08
|
||||
#define NUM_LIGHTS_BUTTONS GAME_BUTTON_CUSTOM_09
|
||||
|
||||
|
||||
struct GameInput
|
||||
|
||||
@@ -952,9 +952,9 @@ MultiPlayer InputMapper::InputDeviceToMultiPlayer( InputDevice id )
|
||||
|
||||
GameButton InputScheme::ButtonNameToIndex( const RString &sButtonName ) const
|
||||
{
|
||||
for( int i=0; i<m_iButtonsPerController; i++ )
|
||||
if( stricmp(GetGameButtonName(i), sButtonName) == 0 )
|
||||
return i;
|
||||
for( GameButton gb=(GameButton) 0; gb<m_iButtonsPerController; gb=(GameButton)(gb+1) )
|
||||
if( stricmp(GetGameButtonName(gb), sButtonName) == 0 )
|
||||
return gb;
|
||||
|
||||
return GameButton_Invalid;
|
||||
}
|
||||
@@ -991,11 +991,11 @@ void InputScheme::MenuButtonToGameInputs( MenuButton MenuI, PlayerNumber pn, Gam
|
||||
}
|
||||
|
||||
GameButton SecondaryGameButton = GameButton_Invalid;
|
||||
for( int i = GAME_BUTTON_NEXT; i < m_iButtonsPerController; ++i )
|
||||
for( GameButton gb=GAME_BUTTON_NEXT; gb<m_iButtonsPerController; gb=(GameButton)(gb+1) )
|
||||
{
|
||||
if( m_GameButtonInfo[i-GAME_BUTTON_NEXT].m_SecondaryMenuButton == MenuI )
|
||||
if( m_GameButtonInfo[gb-GAME_BUTTON_NEXT].m_SecondaryMenuButton == MenuI )
|
||||
{
|
||||
SecondaryGameButton = i;
|
||||
SecondaryGameButton = gb;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,10 +46,10 @@ GameInput Style::StyleInputToGameInput( int iCol, PlayerNumber pn ) const
|
||||
if( bUsingOneSide && gc != (int) pn )
|
||||
continue;
|
||||
|
||||
for( int i = GAME_BUTTON_NEXT; i < INPUTMAPPER->GetInputScheme()->m_iButtonsPerController && m_iInputColumn[gc][i-GAME_BUTTON_NEXT] != END_MAPPING; ++i )
|
||||
for( GameButton gb=GAME_BUTTON_NEXT; gb < INPUTMAPPER->GetInputScheme()->m_iButtonsPerController && m_iInputColumn[gc][gb-GAME_BUTTON_NEXT] != END_MAPPING; gb=(GameButton)(gb+1) )
|
||||
{
|
||||
if( m_iInputColumn[gc][i-GAME_BUTTON_NEXT] == iCol )
|
||||
return GameInput( gc, i );
|
||||
if( m_iInputColumn[gc][gb-GAME_BUTTON_NEXT] == iCol )
|
||||
return GameInput( gc, gb );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user