いくつかのコードを古いバージョンのプログラムから新しいバージョンに移植しようとしていますが、いくつかのものが移動しました。'Game'というクラスがあり、ButtonNameToIndexというメソッドを含めるために使用されますが、新しいバージョンでは、Gameクラス内に'InputScheme'というクラスがあり、ButtonNameToIndexはInputSchemeで宣言されています。
Game.h:
class Game
{
public:
const char * m_szName;
const Style * const* m_apStyles;
bool m_bCountNotesSeparately;
bool m_bAllowHopos;
InputScheme m_InputScheme;
}
InputScheme.h:
class InputScheme
{
public:
const char *m_szName;
int m_iButtonsPerController;
struct GameButtonInfo
{
const char *m_szName;
GameButton m_SecondaryMenuButton;
};
GameButtonInfo m_GameButtonInfo[NUM_GameButton];
const InputMapping *m_Maps;
GameButton ButtonNameToIndex( const RString &sButtonName ) const;
}
移植しようとしているコードは次のようになります。
FOREACH_ENUM( GameButton, pGame->ButtonNameToIndex("Operator"), gb )
ini.SetValue( sPlayerKey, GameButtonToString(pGame, gb),
FromMapping(mapping.m_iGameLights[gc][gb]) );
ButtonNameToIndexが新しいクラスに移動したため、ButtonNameToIndexにアクセスする方法がわかりません。