Files
itgmania212121/stepmania/src/PlayerNumber.h
T

46 lines
1.4 KiB
C
Raw Normal View History

#ifndef PlayerNumber_H
#define PlayerNumber_H
/*
-----------------------------------------------------------------------------
File: PlayerNumber.h
Desc: Things that are used in many places and don't change often.
Copyright (c) 2001-2003 by the person(s) listed below. All rights reserved.
Chris Danford
Chris Gomez
-----------------------------------------------------------------------------
*/
#include "RageTypes.h" // for RageColor
2004-03-29 09:44:00 +00:00
#include "EnumHelper.h"
//
// Player number stuff
//
enum PlayerNumber {
PLAYER_1 = 0,
PLAYER_2,
NUM_PLAYERS, // leave this at the end
PLAYER_INVALID
};
2004-02-10 09:42:01 +00:00
#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) )
#define FOREACH_EnabledPlayer( pn ) for( PlayerNumber pn=GetNextEnabledPlayer((PlayerNumber)-1); pn!=PLAYER_INVALID; pn=GetNextEnabledPlayer(pn) )
2004-05-16 03:01:41 +00:00
#define FOREACH_CpuPlayer( pn ) for( PlayerNumber pn=GetNextCpuPlayer((PlayerNumber)-1); pn!=PLAYER_INVALID; pn=GetNextCpuPlayer(pn) )
PlayerNumber GetNextHumanPlayer( PlayerNumber pn );
PlayerNumber GetNextEnabledPlayer( PlayerNumber pn );
2004-05-16 02:51:55 +00:00
PlayerNumber GetNextCpuPlayer( PlayerNumber pn );
const PlayerNumber OPPOSITE_PLAYER[NUM_PLAYERS] = { PLAYER_2, PLAYER_1 };
RageColor PlayerToColor( PlayerNumber pn );
RageColor PlayerToColor( int p );
#endif