Files
itgmania212121/stepmania/src/GameManager.cpp
T

399 lines
15 KiB
C++
Raw Normal View History

#include "stdafx.h"
/*
-----------------------------------------------------------------------------
Class: GameManager
Desc: See Header.
2002-05-19 01:59:48 +00:00
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
Chris Danford
-----------------------------------------------------------------------------
*/
#include "GameManager.h"
2002-04-28 20:42:32 +00:00
#include "ErrorCatcher/ErrorCatcher.h"
2002-05-27 08:23:27 +00:00
GameManager* GAMEMAN = NULL; // global and accessable from anywhere in our program
2002-05-27 08:23:27 +00:00
InstrumentButton DANCE_BUTTON_LEFT = (InstrumentButton)0;
InstrumentButton DANCE_BUTTON_RIGHT = (InstrumentButton)1;
InstrumentButton DANCE_BUTTON_UP = (InstrumentButton)2;
InstrumentButton DANCE_BUTTON_DOWN = (InstrumentButton)3;
InstrumentButton DANCE_BUTTON_UPLEFT = (InstrumentButton)4;
InstrumentButton DANCE_BUTTON_UPRIGHT = (InstrumentButton)5;
InstrumentButton DANCE_BUTTON_SELECT = (InstrumentButton)6;
InstrumentButton DANCE_BUTTON_START = (InstrumentButton)7;
int NUM_DANCE_BUTTONS = 8;
2002-04-16 17:31:00 +00:00
2002-05-27 08:23:27 +00:00
InstrumentButton PUMP_BUTTON_UPLEFT = (InstrumentButton)0;
InstrumentButton PUMP_BUTTON_UPRIGHT = (InstrumentButton)1;
InstrumentButton PUMP_BUTTON_CENTER = (InstrumentButton)2;
InstrumentButton PUMP_BUTTON_DOWNLEFT = (InstrumentButton)3;
InstrumentButton PUMP_BUTTON_DOWNRIGHT = (InstrumentButton)4;
InstrumentButton PUMP_BUTTON_SELECT = (InstrumentButton)5;
int NUM_PUMP_BUTTONS = 6;
2002-04-16 17:31:00 +00:00
2002-05-27 08:23:27 +00:00
const int DANCE_COL_SPACING = 64;
const int DANCE_6PANEL_VERSUS_COL_SPACING = 54;
const int PUMP_COL_SPACING = 60;
2002-04-28 20:42:32 +00:00
2002-05-27 08:23:27 +00:00
GameDef g_GameDefs[NUM_GAMES] =
2002-04-28 20:42:32 +00:00
{
2002-05-27 08:23:27 +00:00
{ // GAME_DANCE
"dance", // m_szName
"Dance Dance Revolution", // m_szDescription
2, // m_iNumInstruments
NUM_DANCE_BUTTONS, // m_iButtonsPerInstrument
{ // m_szButtonNames
"Left",
"Right",
"Up",
"Down",
"UpLeft",
"UpRight",
"Back",
"Start"
},
{ // m_iMenuButtons[NUM_MENU_BUTTONS]; // map from MenuButton to m_szButtonNames
DANCE_BUTTON_LEFT, // MENU_BUTTON_LEFT
DANCE_BUTTON_RIGHT, // MENU_BUTTON_RIGHT
DANCE_BUTTON_UP, // MENU_BUTTON_UP
DANCE_BUTTON_DOWN, // MENU_BUTTON_DOWN
DANCE_BUTTON_START, // MENU_BUTTON_START
DANCE_BUTTON_SELECT, // MENU_BUTTON_BACK
},
},
{ // GAME_DANCE
"pump", // m_szName
"Pump It Up", // m_szDescription
2, // m_iNumInstruments
NUM_DANCE_BUTTONS, // m_iButtonsPerInstrument
{ // m_szButtonNames
"UpLeft",
"UpRight",
"Center",
"DownLeft",
"DownRight",
"Back"
},
{ // m_iMenuButtons[NUM_MENU_BUTTONS]; // map from MenuButton to m_szButtonNames
PUMP_BUTTON_UPLEFT, // MENU_BUTTON_LEFT
PUMP_BUTTON_UPRIGHT, // MENU_BUTTON_RIGHT
PUMP_BUTTON_DOWNRIGHT, // MENU_BUTTON_UP
PUMP_BUTTON_DOWNLEFT, // MENU_BUTTON_DOWN
PUMP_BUTTON_CENTER, // MENU_BUTTON_START
PUMP_BUTTON_SELECT, // MENU_BUTTON_BACK
},
},
};
2002-04-28 20:42:32 +00:00
2002-04-16 17:31:00 +00:00
2002-05-27 08:23:27 +00:00
StyleDef g_StyleDefSingle =
{ // STYLE_DANCE_SINGLE
"dance-single", // m_szName
NOTES_TYPE_DANCE_SINGLE, // m_NotesType
StyleDef::ONE_PLAYER_USES_ONE_SIDE, // m_StyleType
{ 160, 480 }, // m_iCenterX
4, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_2, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3
},
};
StyleDef g_StyleDefs[NUM_STYLES] =
{
2002-05-27 08:23:27 +00:00
{ // STYLE_DANCE_SINGLE
"dance-single", // m_szName
NOTES_TYPE_DANCE_SINGLE, // m_NotesType
StyleDef::ONE_PLAYER_USES_ONE_SIDE, // m_StyleType
{ 160, 480 }, // m_iCenterX
4, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_2, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3
},
},
{ // STYLE_DANCE_VERSUS
"dance-versus", // m_szName
NOTES_TYPE_DANCE_SINGLE, // m_NotesType
StyleDef::TWO_PLAYERS_USE_TWO_SIDES, // m_StyleType
{ 160, 480 }, // m_iCenterX
4, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_2, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3
},
},
{ // STYLE_DANCE_DOUBLE
"dance-double", // m_szName
NOTES_TYPE_DANCE_DOUBLE, // m_NotesType
StyleDef::ONE_PLAYER_USES_TWO_SIDES, // m_StyleType
{ 320, 320 }, // m_iCenterX
8, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*3.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*2.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_UP, -DANCE_COL_SPACING*1.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_RIGHT, -DANCE_COL_SPACING*0.5f },
{ TRACK_5, INSTRUMENT_2, DANCE_BUTTON_LEFT, +DANCE_COL_SPACING*0.5f },
{ TRACK_6, INSTRUMENT_2, DANCE_BUTTON_DOWN, +DANCE_COL_SPACING*1.5f },
{ TRACK_7, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_COL_SPACING*2.5f },
{ TRACK_8, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*3.5f },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*3.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*2.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_UP, -DANCE_COL_SPACING*1.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_RIGHT, -DANCE_COL_SPACING*0.5f },
{ TRACK_5, INSTRUMENT_2, DANCE_BUTTON_LEFT, +DANCE_COL_SPACING*0.5f },
{ TRACK_6, INSTRUMENT_2, DANCE_BUTTON_DOWN, +DANCE_COL_SPACING*1.5f },
{ TRACK_7, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_COL_SPACING*2.5f },
{ TRACK_8, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*3.5f },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0,1,2,3,4,5,6,7
},
},
{ // StyleDef
"dance-couple", // m_szName
NOTES_TYPE_DANCE_SINGLE, // m_NotesType
StyleDef::TWO_PLAYERS_USE_TWO_SIDES, // m_StyleType
{ 160, 480 }, // m_iCenterX
4, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_2, INSTRUMENT_2, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_3, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*1.5f },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0,1,2,3
},
},
{ // STYLE_DANCE_SOLO
"dance-solo", // m_szName
NOTES_TYPE_DANCE_SOLO, // m_NotesType
StyleDef::ONE_PLAYER_USES_ONE_SIDE, // m_StyleType
{ 240, 400 }, // m_iCenterX
6, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*2.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_UPLEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_5, INSTRUMENT_1, DANCE_BUTTON_UPRIGHT, +DANCE_COL_SPACING*1.5f },
{ TRACK_6, INSTRUMENT_1, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*2.5f },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, DANCE_BUTTON_LEFT, -DANCE_COL_SPACING*2.5f },
{ TRACK_2, INSTRUMENT_2, DANCE_BUTTON_UPLEFT, -DANCE_COL_SPACING*1.5f },
{ TRACK_3, INSTRUMENT_2, DANCE_BUTTON_DOWN, -DANCE_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_COL_SPACING*0.5f },
{ TRACK_5, INSTRUMENT_2, DANCE_BUTTON_UPRIGHT, +DANCE_COL_SPACING*1.5f },
{ TRACK_6, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_COL_SPACING*2.5f },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0,1,2,3,4,5
},
},
{ // STYLE_DANCE_SOLO_VERSUS
"dance-solo-versus", // m_szName
NOTES_TYPE_DANCE_SOLO, // m_NotesType
StyleDef::ONE_PLAYER_USES_ONE_SIDE, // m_StyleType
{ 160, 480 }, // m_iCenterX
6, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, DANCE_BUTTON_LEFT, -DANCE_6PANEL_VERSUS_COL_SPACING*2.5f },
{ TRACK_2, INSTRUMENT_1, DANCE_BUTTON_UPLEFT, -DANCE_6PANEL_VERSUS_COL_SPACING*1.5f },
{ TRACK_3, INSTRUMENT_1, DANCE_BUTTON_DOWN, -DANCE_6PANEL_VERSUS_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_1, DANCE_BUTTON_UP, +DANCE_6PANEL_VERSUS_COL_SPACING*0.5f },
{ TRACK_5, INSTRUMENT_1, DANCE_BUTTON_UPRIGHT, +DANCE_6PANEL_VERSUS_COL_SPACING*1.5f },
{ TRACK_6, INSTRUMENT_1, DANCE_BUTTON_RIGHT, +DANCE_6PANEL_VERSUS_COL_SPACING*2.5f },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, DANCE_BUTTON_LEFT, -DANCE_6PANEL_VERSUS_COL_SPACING*2.5f },
{ TRACK_2, INSTRUMENT_2, DANCE_BUTTON_UPLEFT, -DANCE_6PANEL_VERSUS_COL_SPACING*1.5f },
{ TRACK_3, INSTRUMENT_2, DANCE_BUTTON_DOWN, -DANCE_6PANEL_VERSUS_COL_SPACING*0.5f },
{ TRACK_4, INSTRUMENT_2, DANCE_BUTTON_UP, +DANCE_6PANEL_VERSUS_COL_SPACING*0.5f },
{ TRACK_5, INSTRUMENT_2, DANCE_BUTTON_UPRIGHT, +DANCE_6PANEL_VERSUS_COL_SPACING*1.5f },
{ TRACK_6, INSTRUMENT_2, DANCE_BUTTON_RIGHT, +DANCE_6PANEL_VERSUS_COL_SPACING*2.5f },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0,5,1,4,2,3 // outside in
},
},
{ // PUMP_STYLE_SINGLE
"single", // m_szName
NOTES_TYPE_PUMP_SINGLE, // m_NotesType
StyleDef::ONE_PLAYER_USES_ONE_SIDE, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, PUMP_BUTTON_DOWNLEFT, -PUMP_COL_SPACING*2 },
{ TRACK_2, INSTRUMENT_1, PUMP_BUTTON_UPLEFT, -PUMP_COL_SPACING*1 },
{ TRACK_3, INSTRUMENT_1, PUMP_BUTTON_CENTER, +PUMP_COL_SPACING*0 },
{ TRACK_4, INSTRUMENT_1, PUMP_BUTTON_UPRIGHT, +PUMP_COL_SPACING*1 },
{ TRACK_5, INSTRUMENT_1, PUMP_BUTTON_DOWNRIGHT, +PUMP_COL_SPACING*2 },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, PUMP_BUTTON_DOWNLEFT, -PUMP_COL_SPACING*2 },
{ TRACK_2, INSTRUMENT_2, PUMP_BUTTON_UPLEFT, -PUMP_COL_SPACING*1 },
{ TRACK_3, INSTRUMENT_2, PUMP_BUTTON_CENTER, +PUMP_COL_SPACING*0 },
{ TRACK_4, INSTRUMENT_2, PUMP_BUTTON_UPRIGHT, +PUMP_COL_SPACING*1 },
{ TRACK_5, INSTRUMENT_2, PUMP_BUTTON_DOWNRIGHT, +PUMP_COL_SPACING*2 },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0,2,4,1,3
},
},
{ // PUMP_STYLE_VERSUS
"pump-versus", // m_szName
NOTES_TYPE_PUMP_SINGLE, // m_NotesType
StyleDef::TWO_PLAYERS_USE_TWO_SIDES, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, INSTRUMENT_1, PUMP_BUTTON_DOWNLEFT, -PUMP_COL_SPACING*2 },
{ TRACK_2, INSTRUMENT_1, PUMP_BUTTON_UPLEFT, -PUMP_COL_SPACING*1 },
{ TRACK_3, INSTRUMENT_1, PUMP_BUTTON_CENTER, +PUMP_COL_SPACING*0 },
{ TRACK_4, INSTRUMENT_1, PUMP_BUTTON_UPRIGHT, +PUMP_COL_SPACING*1 },
{ TRACK_5, INSTRUMENT_1, PUMP_BUTTON_DOWNRIGHT, +PUMP_COL_SPACING*2 },
},
{ // PLAYER_2
{ TRACK_1, INSTRUMENT_2, PUMP_BUTTON_DOWNLEFT, -PUMP_COL_SPACING*2 },
{ TRACK_2, INSTRUMENT_2, PUMP_BUTTON_UPLEFT, -PUMP_COL_SPACING*1 },
{ TRACK_3, INSTRUMENT_2, PUMP_BUTTON_CENTER, +PUMP_COL_SPACING*0 },
{ TRACK_4, INSTRUMENT_2, PUMP_BUTTON_UPRIGHT, +PUMP_COL_SPACING*1 },
{ TRACK_5, INSTRUMENT_2, PUMP_BUTTON_DOWNRIGHT, +PUMP_COL_SPACING*2 },
},
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0,2,4,1,3
},
},
};
2002-05-27 08:23:27 +00:00
GameManager::GameManager()
{
2002-05-27 08:23:27 +00:00
m_CurStyle = STYLE_DANCE_SINGLE;
2002-04-28 20:42:32 +00:00
2002-05-27 08:23:27 +00:00
CStringArray asSkinNames;
GetSkinNames( asSkinNames );
for( int p=0; p<NUM_PLAYERS; ++p )
m_sCurrentSkin[p] = asSkinNames[0];
m_sMasterPlayerNumber = PLAYER_1;
2002-04-28 20:42:32 +00:00
}
2002-05-01 19:14:55 +00:00
2002-05-27 08:23:27 +00:00
Game GameManager::GetCurrentGame()
2002-05-01 19:14:55 +00:00
{
2002-05-27 08:23:27 +00:00
return StyleToGame( m_CurStyle );
}
2002-05-01 19:14:55 +00:00
2002-05-27 08:23:27 +00:00
GameDef* GameManager::GetCurrentGameDef()
2002-05-01 19:14:55 +00:00
{
2002-05-27 08:23:27 +00:00
return &g_GameDefs[ GetCurrentGame() ];
2002-05-01 19:14:55 +00:00
}
2002-04-28 20:42:32 +00:00
2002-05-27 08:23:27 +00:00
StyleDef* GameManager::GetCurrentStyleDef()
2002-04-28 20:42:32 +00:00
{
2002-05-27 08:23:27 +00:00
return &g_StyleDefs[ m_CurStyle ];
2002-04-28 20:42:32 +00:00
}
2002-05-27 08:23:27 +00:00
void GameManager::GetGameNames( CStringArray &AddTo )
2002-04-28 20:42:32 +00:00
{
2002-05-27 08:23:27 +00:00
for( int i=0; i<NUM_GAMES; i++ )
AddTo.Add( g_GameDefs[i].m_szName );
2002-04-28 20:42:32 +00:00
}
2002-04-16 17:31:00 +00:00
2002-05-27 08:23:27 +00:00
void GameManager::GetSkinNames( CStringArray &AddTo )
2002-04-28 20:42:32 +00:00
{
2002-05-27 08:23:27 +00:00
GetCurrentGameDef()->GetSkinNames( AddTo );
2002-04-28 20:42:32 +00:00
}
2002-05-27 08:23:27 +00:00
bool GameManager::IsPlayerEnabled( PlayerNumber pn )
{
2002-05-27 08:23:27 +00:00
return ( pn == m_sMasterPlayerNumber ) ||
( GetCurrentStyleDef()->m_StyleType == StyleDef::TWO_PLAYERS_USE_TWO_SIDES );
};
CString GameManager::GetPathToGraphic( const PlayerNumber p, const int col, const GameButtonGraphic gbg )
{
StyleInput si( p, col );
GameInput gi = GetCurrentStyleDef()->StyleInputToGameInput( si );
InstrumentButton b = gi.button;
return GetCurrentGameDef()->GetPathToGraphic( m_sCurrentSkin[p], b, gbg );
2002-04-16 17:31:00 +00:00
}
2002-05-27 08:23:27 +00:00
void GameManager::GetTweenColors( const PlayerNumber p, const int col, CArray<D3DXCOLOR,D3DXCOLOR> &aTweenColorsAddTo )
2002-05-19 01:59:48 +00:00
{
StyleInput StyleI( p, col );
2002-05-27 08:23:27 +00:00
GameInput GameI = GetCurrentStyleDef()->StyleInputToGameInput( StyleI );
GetCurrentGameDef()->GetTweenColors( m_sCurrentSkin[p], GameI.button, aTweenColorsAddTo );
2002-05-19 01:59:48 +00:00
}