add ScoreDisplayAliveTime
This commit is contained in:
@@ -0,0 +1,84 @@
|
|||||||
|
#include "global.h"
|
||||||
|
#include "ScoreDisplayAliveTime.h"
|
||||||
|
#include "RageUtil.h"
|
||||||
|
#include "StageStats.h"
|
||||||
|
#include "XmlFile.h"
|
||||||
|
#include "GameState.h"
|
||||||
|
#include "StatsManager.h"
|
||||||
|
#include "ActorUtil.h"
|
||||||
|
|
||||||
|
// lua start
|
||||||
|
LUA_REGISTER_CLASS( ScoreDisplayAliveTime )
|
||||||
|
// lua end
|
||||||
|
REGISTER_ACTOR_CLASS( ScoreDisplayAliveTime )
|
||||||
|
|
||||||
|
|
||||||
|
ScoreDisplayAliveTime::ScoreDisplayAliveTime()
|
||||||
|
{
|
||||||
|
m_PlayerNumber = PLAYER_INVALID;
|
||||||
|
}
|
||||||
|
|
||||||
|
ScoreDisplayAliveTime::~ScoreDisplayAliveTime()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void ScoreDisplayAliveTime::LoadFromNode( const CString& sDir, const XNode* pNode )
|
||||||
|
{
|
||||||
|
BitmapText::LoadFromNode( sDir, pNode );
|
||||||
|
|
||||||
|
{
|
||||||
|
CString sPlayerNumber;
|
||||||
|
bool b = pNode->GetAttrValue( "PlayerNumber", sPlayerNumber );
|
||||||
|
ASSERT( b );
|
||||||
|
m_PlayerNumber = (PlayerNumber)LUA->RunExpressionI(sPlayerNumber);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ScoreDisplayAliveTime::Update( float fDelta )
|
||||||
|
{
|
||||||
|
UpdateNumber();
|
||||||
|
|
||||||
|
BitmapText::Update( fDelta );
|
||||||
|
}
|
||||||
|
|
||||||
|
void ScoreDisplayAliveTime::PlayCommand( const CString &sCommandName )
|
||||||
|
{
|
||||||
|
// TODO: Add handling of GoalComplete message
|
||||||
|
|
||||||
|
BitmapText::PlayCommand( sCommandName );
|
||||||
|
}
|
||||||
|
|
||||||
|
void ScoreDisplayAliveTime::UpdateNumber()
|
||||||
|
{
|
||||||
|
float fSecsIntoPlay = 0;
|
||||||
|
ASSERT( m_PlayerNumber != PLAYER_INVALID );
|
||||||
|
if( GAMESTATE->IsPlayerEnabled(m_PlayerNumber) )
|
||||||
|
fSecsIntoPlay = STATSMAN->m_CurStageStats.m_player[m_PlayerNumber].fAliveSeconds;
|
||||||
|
|
||||||
|
SetText( SecondsToMMSSMsMs(fSecsIntoPlay) );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (c) 2001-2004 Chris Danford
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, and/or sell copies of the Software, and to permit persons to
|
||||||
|
* whom the Software is furnished to do so, provided that the above
|
||||||
|
* copyright notice(s) and this permission notice appear in all copies of
|
||||||
|
* the Software and that both the above copyright notice(s) and this
|
||||||
|
* permission notice appear in supporting documentation.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
|
||||||
|
* THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS
|
||||||
|
* INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT
|
||||||
|
* OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||||
|
* OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
||||||
|
* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
/* ScoreDisplayAliveTime - Display a constantly updating figure of time the player is alive. */
|
||||||
|
// TODO: Merge this with ScoreDisplayOni
|
||||||
|
|
||||||
|
#ifndef ScoreDisplayAliveTime_H
|
||||||
|
#define ScoreDisplayAliveTime_H
|
||||||
|
|
||||||
|
#include "BitmapText.h"
|
||||||
|
#include "PlayerNumber.h"
|
||||||
|
|
||||||
|
|
||||||
|
template<class T>
|
||||||
|
class LunaScoreDisplayAliveTime : public LunaBitmapText<T>
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
LunaScoreDisplayAliveTime() { LUA->Register( Register ); }
|
||||||
|
|
||||||
|
static void Register(lua_State *L)
|
||||||
|
{
|
||||||
|
LunaBitmapText<T>::Register( L );
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
class ScoreDisplayAliveTime : public BitmapText
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
ScoreDisplayAliveTime();
|
||||||
|
~ScoreDisplayAliveTime();
|
||||||
|
|
||||||
|
virtual void Update( float fDelta );
|
||||||
|
|
||||||
|
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||||
|
|
||||||
|
void PlayCommand( const CString &sCommandName );
|
||||||
|
|
||||||
|
void UpdateNumber();
|
||||||
|
|
||||||
|
//
|
||||||
|
// Commands
|
||||||
|
//
|
||||||
|
virtual void PushSelf( lua_State *L );
|
||||||
|
|
||||||
|
private:
|
||||||
|
PlayerNumber m_PlayerNumber;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (c) 2001-2004 Chris Danford
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, and/or sell copies of the Software, and to permit persons to
|
||||||
|
* whom the Software is furnished to do so, provided that the above
|
||||||
|
* copyright notice(s) and this permission notice appear in all copies of
|
||||||
|
* the Software and that both the above copyright notice(s) and this
|
||||||
|
* permission notice appear in supporting documentation.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
|
||||||
|
* THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS
|
||||||
|
* INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT
|
||||||
|
* OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||||
|
* OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
||||||
|
* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
# Microsoft Developer Studio Project File - Name="StepMania" - Package Owner=<4>
|
# Microsoft Developer Studio Project File - Name="StepMania" - Package Owner=<4>
|
||||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
# Microsoft Developer Studio Generated Build File, Format Version 60000
|
||||||
# ** DO NOT EDIT **
|
# ** DO NOT EDIT **
|
||||||
|
|
||||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||||
@@ -62,7 +62,7 @@ IntDir=.\../Debug6
|
|||||||
TargetDir=\stepmania\stepmania\Program
|
TargetDir=\stepmania\stepmania\Program
|
||||||
TargetName=StepMania-debug
|
TargetName=StepMania-debug
|
||||||
SOURCE="$(InputPath)"
|
SOURCE="$(InputPath)"
|
||||||
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||||
PostBuild_Cmds=archutils\Win32\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi
|
PostBuild_Cmds=archutils\Win32\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi
|
||||||
# End Special Build Tool
|
# End Special Build Tool
|
||||||
|
|
||||||
@@ -99,7 +99,7 @@ IntDir=.\../Release6
|
|||||||
TargetDir=\stepmania\stepmania\Program
|
TargetDir=\stepmania\stepmania\Program
|
||||||
TargetName=StepMania
|
TargetName=StepMania
|
||||||
SOURCE="$(InputPath)"
|
SOURCE="$(InputPath)"
|
||||||
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||||
PostBuild_Cmds=archutils\Win32\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi
|
PostBuild_Cmds=archutils\Win32\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi
|
||||||
# End Special Build Tool
|
# End Special Build Tool
|
||||||
|
|
||||||
@@ -2082,6 +2082,14 @@ SOURCE=.\ScoreDisplay.h
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
|
SOURCE=.\ScoreDisplayAliveTime.cpp
|
||||||
|
# End Source File
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
|
SOURCE=.\ScoreDisplayAliveTime.h
|
||||||
|
# End Source File
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=.\ScoreDisplayBattle.cpp
|
SOURCE=.\ScoreDisplayBattle.cpp
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|||||||
@@ -1864,6 +1864,12 @@ cl /Zl /nologo /c verstub.cpp /Fo"$(IntDir)"\
|
|||||||
<File
|
<File
|
||||||
RelativePath="ScoreDisplay.h">
|
RelativePath="ScoreDisplay.h">
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="ScoreDisplayAliveTime.cpp">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="ScoreDisplayAliveTime.h">
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="ScoreDisplayBattle.cpp">
|
RelativePath="ScoreDisplayBattle.cpp">
|
||||||
</File>
|
</File>
|
||||||
|
|||||||
Reference in New Issue
Block a user