themable player number

This commit is contained in:
Chris Danford
2005-12-27 17:16:02 +00:00
parent 17e3661755
commit f99b179a5b
5 changed files with 18 additions and 14 deletions
+3 -2
View File
@@ -79,7 +79,7 @@ LuaFunction( X##ToString, X##ToString( (X) IArg(1) ) );
#define LuaStringToX(X) \
LuaFunction( StringTo##X, (X) StringTo##X( SArg(1) ) );
#define LuaXType(X, CNT, Prefix) \
#define LuaXType(X, CNT, Prefix, bCapitalize) \
static void Lua##X(lua_State* L) \
{ \
FOREACH_ENUM( X, CNT, i ) \
@@ -89,7 +89,8 @@ static void Lua##X(lua_State* L) \
LUA->SetGlobal( Prefix+s, i ); \
} \
CString sType = "NUM" #X "S" ; \
sType.MakeUpper(); \
if( bCapitalize ) \
sType.MakeUpper(); \
LUA->SetGlobal( sType, CNT ); \
LUA->SetGlobal( Prefix "INVALID", CNT+1 ); \
} \
+1 -1
View File
@@ -69,7 +69,7 @@ XToThemedString( PlayMode, NUM_PLAY_MODES );
StringToX( PlayMode );
LuaXToString( PlayMode );
LuaFunction( PlayModeToThemedString, PlayModeToThemedString((PlayMode) IArg(1)) );
LuaXType( PlayMode, NUM_PLAY_MODES, "PLAY_MODE_" )
LuaXType( PlayMode, NUM_PLAY_MODES, "PLAY_MODE_", true )
RankingCategory AverageMeterToRankingCategory( int iAverageMeter )
{
+1 -1
View File
@@ -28,7 +28,7 @@ static const CString NoteTypeNames[] = {
};
XToString( NoteType, NUM_NOTE_TYPES );
LuaXToString( NoteType )
LuaXType( NoteType, NUM_NOTE_TYPES , "NOTE_TYPE_" )
LuaXType( NoteType, NUM_NOTE_TYPES , "NOTE_TYPE_", true )
float NoteTypeToBeat( NoteType nt )
{
+11 -10
View File
@@ -2,12 +2,22 @@
#include "PlayerNumber.h"
#include "GameState.h"
#include "LuaManager.h"
#include "ThemeMetric.h"
static const CString PlayerNumberNames[] = {
"P1",
"P2",
};
XToString( PlayerNumber, NUM_PLAYERS );
XToThemedString( PlayerNumber, NUM_PLAYERS );
void LuaPlayerNumber(lua_State* L)
{
FOREACH_PlayerNumber( pn )
LUA->SetGlobal( ssprintf("PLAYER_%d",pn+1), pn );
LUA->SetGlobal( "NUM_PLAYERS", NUM_PLAYERS );
}
REGISTER_WITH_LUA_FUNCTION( LuaPlayerNumber );
static const CString MultiPlayerNames[] = {
@@ -21,6 +31,7 @@ static const CString MultiPlayerNames[] = {
"P8",
};
XToString( MultiPlayer, NUM_MultiPlayer );
XToThemedString( MultiPlayer, NUM_MultiPlayer );
PlayerNumber GetNextHumanPlayer( PlayerNumber pn )
@@ -73,16 +84,6 @@ MultiPlayer GetNextEnabledMultiPlayer( MultiPlayer mp )
return MultiPlayer_INVALID;
}
void LuaPlayerNumber(lua_State* L)
{
FOREACH_PlayerNumber( pn )
LUA->SetGlobal( ssprintf("PLAYER_%d",pn+1), pn );
LUA->SetGlobal( "NUM_PLAYERS", NUM_PLAYERS );
}
REGISTER_WITH_LUA_FUNCTION( LuaPlayerNumber );
/*
* (c) 2001-2004 Chris Danford, Chris Gomez
* All rights reserved.
+2
View File
@@ -17,6 +17,7 @@ enum PlayerNumber
PLAYER_INVALID
};
const CString& PlayerNumberToString( PlayerNumber pn );
const CString& PlayerNumberToThemedString( PlayerNumber pn );
#define FOREACH_PlayerNumber( pn ) FOREACH_ENUM( PlayerNumber, NUM_PLAYERS, pn )
#define FOREACH_HumanPlayer( pn ) for( PlayerNumber pn=GetNextHumanPlayer((PlayerNumber)-1); pn!=PLAYER_INVALID; pn=GetNextHumanPlayer(pn) )
@@ -46,6 +47,7 @@ enum MultiPlayer
MultiPlayer_INVALID
};
const CString& MultiPlayerToString( MultiPlayer mp );
const CString& MultiPlayerToThemedString( MultiPlayer mp );
#define FOREACH_MultiPlayer( pn ) FOREACH_ENUM( MultiPlayer, NUM_MultiPlayer, pn )