support MultiPlayer

This commit is contained in:
Chris Danford
2007-10-27 01:49:18 +00:00
parent 4dba7b9bbe
commit 41fda46bfd
2 changed files with 12 additions and 3 deletions
+11 -3
View File
@@ -7,6 +7,7 @@
#include "StatsManager.h"
#include "ActorUtil.h"
#include "LuaManager.h"
#include "RageLog.h"
REGISTER_ACTOR_CLASS( ScoreDisplayAliveTime )
@@ -14,6 +15,7 @@ REGISTER_ACTOR_CLASS( ScoreDisplayAliveTime )
ScoreDisplayAliveTime::ScoreDisplayAliveTime()
{
m_PlayerNumber = PLAYER_INVALID;
m_MultiPlayer = MultiPlayer_Invalid;
}
ScoreDisplayAliveTime::~ScoreDisplayAliveTime()
@@ -27,8 +29,10 @@ void ScoreDisplayAliveTime::LoadFromNode( const XNode* pNode )
{
Lua *L = LUA->Get();
bool b = pNode->PushAttrValue( L, "PlayerNumber" );
ASSERT( b );
LuaHelpers::Pop( L, m_PlayerNumber );
bool b2 = pNode->PushAttrValue( L, "MultiPlayer" );
LuaHelpers::Pop( L, m_MultiPlayer );
ASSERT( b || b2 );
LUA->Release( L );
}
}
@@ -50,11 +54,15 @@ void ScoreDisplayAliveTime::HandleMessage( const Message &msg )
void ScoreDisplayAliveTime::UpdateNumber()
{
float fSecsIntoPlay = 0;
ASSERT( m_PlayerNumber != PLAYER_INVALID );
if( GAMESTATE->IsPlayerEnabled(m_PlayerNumber) )
ASSERT( m_PlayerNumber != PLAYER_INVALID || m_MultiPlayer != MultiPlayer_Invalid );
if( m_PlayerNumber != PLAYER_INVALID && GAMESTATE->IsPlayerEnabled(m_PlayerNumber) )
fSecsIntoPlay =
STATSMAN->GetAccumPlayedStageStats().m_player[m_PlayerNumber].m_fAliveSeconds +
STATSMAN->m_CurStageStats.m_player[m_PlayerNumber].m_fAliveSeconds;
if( m_MultiPlayer != MultiPlayer_Invalid && GAMESTATE->IsMultiPlayerEnabled(m_MultiPlayer) )
fSecsIntoPlay =
STATSMAN->GetAccumPlayedStageStats().m_fGameplaySeconds +
STATSMAN->m_CurStageStats.m_fGameplaySeconds;
SetText( SecondsToMMSSMsMs(fSecsIntoPlay) );
}
+1
View File
@@ -30,6 +30,7 @@ public:
private:
PlayerNumber m_PlayerNumber;
MultiPlayer m_MultiPlayer;
};
#endif